# Changelog

All notable changes to Fluid Design System will be documented in this file.

The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).

## 📦 6.2.0 - 2026-05-11

### ⚠️ Breaking changes

###### [GLOBAL]

- Replace `.material-icons` CSS selectors with `.nj-icon-material` in component stylesheets. Consumers using `.material-icons` as a selector for nested icons must update to `.nj-icon-material`.

### 🛠️ Maintained

- Updated dependencies
  - @engie-group/fluid-design-tokens@6.2.0

## 📦 6.1.2 - 2026-04-30

### 🐛 Fixed

###### [SIDEBAR-DEPRECATED]

- Fix logo not being properly centered in the brand section

## 📦 6.1.1 - 2026-04-29

### 🐛 Fixed

###### [CARD]

- Replace undefined `--nj-semantic-color-text-body` CSS token with valid `--nj-semantic-color-text-neutral-primary-default` token

###### [SELECT, MULTI-SELECT]

- Fix label color on hover: label now stays at its default color instead of switching to secondary.
- Fix label color when focused (closed): label correctly turns secondary.
- Fix label and border color when open: label and border now use the brand color for floating labels.

### 🛠️ Maintained

- Updated dependencies
  - @engie-group/fluid-design-tokens@6.1.1

## 📦 6.1.0 - 2026-04-01

### ⚠️ Breaking changes

###### [AVATAR-LIST]

- Update avatar list item structure to use a dedicated `nj-avatar-list__avatar` class.

```html
<!-- Before -->
<div class="nj-avatar-list">
  <div class="nj-avatar">AL</div>
  <div class="nj-avatar">BM</div>
  <div class="nj-avatar">CD</div>
</div>

<!-- After -->
<div class="nj-avatar-list">
  <div class="nj-avatar-list__avatar nj-avatar">AL</div>
  <div class="nj-avatar-list__avatar nj-avatar">BM</div>
  <div class="nj-avatar-list__avatar nj-avatar">CD</div>
</div>
```

###### [BREADCRUMB]

- Separate breadcrumb item style class (`nj-breadcrumb-item`) in two classes:
  - `nj-breadcrumb__item` for positioning and breadcrumb specific styles (e.g., separator)
  - `nj-breadcrumb-item` for the breadcrumb item itself, which is used to apply styles to both the root and link elements of the breadcrumb item
- Rename breadcrumb item link CSS class from `nj-breadcrumb__link` to `nj-breadcrumb-item__link`
- Split breadcrumb root and breadcrumb item styles into dedicated style modules

Migration:

```html
<!-- Before -->
<li class="nj-breadcrumb__item">
  <a class="nj-breadcrumb__link">...</a>
</li>

<!-- After -->
<li class="nj-breadcrumb__item nj-breadcrumb-item">
  <a class="nj-breadcrumb-item__link">...</a>
</li>
```

###### [PROGRESS]

- The DOM structure of the progress component has changed. The `nj-progress__bar` and `nj-progress__description` elements must now be wrapped in a new `nj-progress__container` element. The description element also changed from `<div>` to `<p>`.
- The bottom description is no longer centered below the bar — it is now left-aligned.

```html
<!-- Before -->
<div
  class="nj-progress"
  role="progressbar"
  aria-label="Progress"
  aria-valuenow="50"
  aria-valuemin="0"
  aria-valuemax="100"
>
  <div class="nj-progress__bar">
    <div class="nj-progress__indicator" style="width: 50%"></div>
  </div>
  <div class="nj-progress__description">50%</div>
</div>

<!-- After -->
<div
  class="nj-progress"
  role="progressbar"
  aria-label="Progress"
  aria-valuenow="50"
  aria-valuemin="0"
  aria-valuemax="100"
  aria-valuetext="50%"
>
  <div class="nj-progress__container">
    <div class="nj-progress__bar">
      <div class="nj-progress__indicator" style="width: 50%"></div>
    </div>
    <p aria-hidden="true" class="nj-progress__description">50%</p>
  </div>
</div>
```

### 🚀 Added

###### [PROGRESS]

- Add `nj-progress__header` element containing a `nj-progress__label` (`<label>`) and an optional `nj-progress__subscript` (`<p>`) to display a visible label and status text above the progress bar
- Add `nj-progress--{variant}` modifier to set the bar color (`information`, `success`, `error`)
- Add `nj-progress--subscript-{variant}` modifier to set the subscript color and icon (`information`, `success`, `error`)

```html
<div class="nj-progress nj-progress--success nj-progress--subscript-success" role="progressbar" ...>
  <div class="nj-progress__header">
    <label class="nj-progress__label">Upload complete</label>
    <p class="nj-progress__subscript">
      <span class="material-icons nj-icon-material nj-icon-material--sm" aria-hidden="true">check</span>
      File uploaded successfully
    </p>
  </div>
  <div class="nj-progress__container">
    <div class="nj-progress__bar">
      <div class="nj-progress__indicator" style="width: 100%"></div>
    </div>
  </div>
</div>
```

###### [RADIO]

- Apply correct spacing for error message in `.nj-radio-group` component.
- Add `scale` support to radio groups with `md`, `lg`, and `xl` values.
- Update spacing for radio groups based on the selected `scale` value.
- Change border color of radio component from strong to moderate

## 📦 6.0.1 - 2026-02-05

### 🚀 Added

###### [BADGE]

- Add icon to breadcrumb component item when active

###### [BREADCRUMB]

- A `nj-breadcrumb__link` CSS class has been added to style the breadcrumb item link. Link scale and variant CSS class still work but prefer using this class insteed.

```html
//Before
<ol class="nj-breadcrumb">
  <li class="nj-breadcrumb__item">
    <a href="#" class="nj-link nj-link--sm nj-link--grayed nj-link-icon">
      <span aria-hidden="true" class="nj-icon-material">home</span>
      <span class="nj-sr-only">Home</span>
    </a>
  </li>
</ol>

//After
<ol class="nj-breadcrumb">
  <li class="nj-breadcrumb__item">
    <a href="#" class="nj-link nj-link-icon nj-breadcrumb__link">
      <span aria-hidden="true" class="nj-icon-material">home</span>
      <span class="nj-sr-only">Home</span>
    </a>
  </li>
</ol>
```

###### [ICON]

- Add variant `yellow-tertiary`
- Add `engie_ai_filled` icon

###### [STATUS-INDICATOR]

- Component now uses material icons instead of custom SVGs.
- Component `ai` status now uses `engie_ai_filled` icon for better visibility and constistency.

### 🐛 Fixed

###### [NAVIGATION, TAB]

- Fix tabs incorrectly displaying selected state when `aria-selected="false"`
- Fix disabled styles incorrectly applied when `aria-disabled="false"`

### 🛠️ Maintained

- Updated dependencies
  - @engie-group/fluid-design-tokens@6.1.0

## 📦 6.0.0 - 2025-12-10

Major release of `Fluid 6`.

All changes since `5.18.2` can be found above in details and are summarized in [the migration guide](https://fluid.design.digital.engie.com/fluid-design-system/storybook/vanilla/index.html?path=/docs/docs-migrations-v5-to-v6--documentation).

### ⚠️ Breaking changes

###### [GLOBAL]

- Remove `Fluid 4` deprecated components:
  - Remove `.nj-alert` component.
  - Remove `.nj-dropdown` component.
  - Remove all `nj-form-*` component, except `nj-form-item` which is a `Fluid 5` component.
  - Remove `.nj-icon` component.
  - Remove `.nj-switch` component.

### 🛠️ Maintained

- Updated dependencies
  - @engie-group/fluid-design-tokens@6.0.0

## 📦 6.0.0-rc.0 - 2025-12-09

### ⚠️ Breaking changes

###### [GLOBAL]

- All icons in Fluid no longer needs the class `material-icons` use the `nj-icon-material` class instead.
  Make sure to replace all occurrences of `material-icons` by `nj-icon-material` in your codebase.

```html
<!-- Before -->
<span aria-hidden="true" class="material-icons nj-icon-material">home</span>
<!-- After -->
<span aria-hidden="true" class="nj-icon-material">home</span>
```

### 🚀 Added

###### [BADGE]

- Change badge icon color when it has `warning` variant and `minimal` emphasis to `--nj-semantic-color-icon-status-warning-contrast-default` design token for a better contrast.
- Change badge vertical spacing:
  - `6px` to `4px` for `md` scale
  - `9px` to `6px` for `lg` scale

###### [SEGMENTED_CONTROL]

- Add a new modifier class `nj-segmented-control-btn--icon-only` for `nj-segmented-control-btn` which reduce padding to icon-only buttons.

### 🐛 Fixed

###### [BADGE]

- Fix badge border-radius to ensure a correct pill shape regardless of the badge scale.

###### [FORM-ITEM]

- Form item trailing icons are now vertically centered

###### [TOAST]

- Fixed icon alignment in Toast component. Ensured that the icon is properly centered vertically within the Toast with respect to the text content.

### 🛠️ Maintained

- Updated dependencies
  - @engie-group/fluid-design-tokens@5.13.1-rc.0

## 📦 6.0.0-next.11 - 2025-11-13

### ⚠️ Breaking changes

###### [AVATAR]

- Remove `nj-avatar` background for picture avatars.

###### [BADGE]

- The badge component no longer controls custom icon sizes. Custom icon sizes must now be defined directly in the custom icon definition itself.
  Use the `--nj-material-icon-size` CSS custom property to set the icon size.
  Example of setting a custom icon size using this CSS custom property:

```html
<svg
  aria-hidden="true"
  focusable="false"
  width="20"
  height="20"
  viewBox="0 0 20 20"
  xmlns="http://www.w3.org/2000/svg"
  style={{
    width: 'var(--nj-material-icon-size)',
    height: 'var(--nj-material-icon-size)',
    stroke: 'var(--nj-material-icon-color)',
    fill: 'none'
  }}
>
  <path d="M10.5 5.5V6.5H9.5V5.5H10.5ZM10.5 9.5V14.5H9.5V9.5H10.5ZM0.5 10C0.5 4.75614 4.75614 0.5 10 0.5C15.2439 0.5 19.5 4.75614 19.5 10C19.5 15.2439 15.2439 19.5 10 19.5C4.75614 19.5 0.5 15.2439 0.5 10ZM1.5 10C1.5 14.6861 5.31386 18.5 10 18.5C14.6861 18.5 18.5 14.6861 18.5 10C18.5 5.31386 14.6861 1.5 10 1.5C5.31386 1.5 1.5 5.31386 1.5 10Z" />
</svg>
```

###### [MODAL]

- The `.nj-modal` CSS class has been deprecated.
  - Consider using the new `nj-modal` web component instead.
  - Change the `.nj-modal` CSS class (and sub classes) to `.nj-modal-deprecated` to continue using the deprecated styles.
    For example, change:

    ```html
    <div class="nj-modal" id="completeModal" role="alertDialog" aria-labelledby="completeModalLabel">
      <div class="nj-modal__dialog" role="document">
        <div class="nj-modal__content">
          <div class="nj-modal__header">
            <h1 class="nj-modal__title" id="completeModalLabel">Confirm these settings?</h1>
            <button
              type="button"
              class="nj-icon-btn nj-icon-btn--sm nj-icon-btn--secondary nj-modal__close"
              data-dismiss="modal"
              aria-label="Close"
            >
              <span class="nj-sr-only">Close the modal</span>
              <span aria-hidden="true" class="nj-icon-btn__icon material-icons">close</span>
            </button>
          </div>
          <div class="nj-modal__body">
            <p>
              Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed non risus. Suspendisse lectus tortor,
              dignissim sit amet, adipiscing nec, ultricies sed, dolor. Cras elementum ultrices diam.
            </p>
          </div>
          <div class="nj-modal__footer">
            <button type="button" class="nj-btn nj-btn--subtle" data-dismiss="modal">Cancel</button>
            <button type="button" class="nj-btn">Confirm</button>
          </div>
        </div>
      </div>
    </div>
    ```

    to:

    ```html
    <div class="nj-modal-deprecated" id="completeModal" role="alertDialog" aria-labelledby="completeModalLabel">
      <div class="nj-modal-deprecated__dialog" role="document">
        <div class="nj-modal-deprecated__content">
          <div class="nj-modal-deprecated__header">
            <h1 class="nj-modal-deprecated__title" id="completeModalLabel">Confirm these settings?</h1>
            <button
              type="button"
              class="nj-icon-btn nj-icon-btn--sm nj-icon-btn--secondary nj-modal-deprecated__close"
              data-dismiss="modal"
              aria-label="Close"
            >
              <span class="nj-sr-only">Close the modal</span>
              <span aria-hidden="true" class="nj-icon-btn__icon material-icons">close</span>
            </button>
          </div>
          <div class="nj-modal-deprecated__body">
            <p>
              Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed non risus. Suspendisse lectus tortor,
              dignissim sit amet, adipiscing nec, ultricies sed, dolor. Cras elementum ultrices diam.
            </p>
          </div>
          <div class="nj-modal-deprecated__footer">
            <button type="button" class="nj-btn nj-btn--subtle" data-dismiss="modal">Cancel</button>
            <button type="button" class="nj-btn">Confirm</button>
          </div>
        </div>
      </div>
    </div>
    ```

###### [TAG]

- `nj-tag__link` and `nj-tag__button` classes have been changed to `nj-tag__action` to standardize styling for interactive elements within `nj-tag`.

```html
<!-- Before -->
<div class="nj-tag">
  <a href="#" class="nj-tag__link">lime</a>
</div>
<!-- or -->
<div class="nj-tag">
  <button onclick="#" class="nj-tag__button">lime</button>
</div>
<!-- Now -->
<div class="nj-tag">
  <a href="#" class="nj-tag__action">lime</a>
</div>
<!-- or -->
<div class="nj-tag">
  <button onclick="#" class="nj-tag__action">lime</button>
</div>
```

### 🚀 Added

###### [GLOBAL]

- Font used in components are now embedded directly in CSS file (Lato, Material Icons, Roboto Mono). They should no longer be imported externally.

###### [AVATAR-LIST]

- Avatar list's scale now propagates to the children avatars by CSS.
  If you set a scale to avatar list, all avatars will be scaled accordingly.
  You can still set a specific scale to an avatar to override the inherited one.

###### [ICON]

- Refactor icon style to use CSS custom properties for style override by parent components

###### [SKELETON]

- Add skeleton circle scales `2xl` and `3xl`
- Update skeleton circle scale :
  - `sm`: 32px
  - `md`: 40px
  - `lg`: 48px
  - `xl`: 56px
  - `2xl`: 64px
  - `3xl`: 96px
- Default skeleton circle scale is now `lg`

###### [TAG]

- Add `xl` scale to tag component

## 📦 6.0.0-next.10 - 2025-07-12

### ⚠️ Breaking changes

###### [MENU-GROUP]

- A parent container with `nj-menu-group` class is now required to define a menu group.
  The `nj-menu-group` class should be applied to a parent element that contains the menu items and the menu group header.
- Use `nj-menu-group__header` class to define the header of a menu group.

### 🐛 Fixed

###### [LIST]

- Update list item content font size design token, from `--nj-semantic-font-size-text-sm` to `--nj-semantic-font-size-text-md`

## 📦 6.0.0-next.9 - 2025-06-23

### ⚠️ Breaking changes

###### [HEADER]

- Deprecate `nj-header` component which has been deprecated in design.
  - Please rename all CSS classes from `nj-header*` to `nj-header-deprecated*` to handle change.

###### [LIST-ITEM]

- The list item DOM structure has changed, please refer to the documentation for more details.
  - Main change is that the list item is no longer a BEM block, but a BEM element of the `list` component.

```html
<!-- Before -->
<ul class="nj-list">
  <li class="nj-list-item nj-list__item">
    <button class="nj-list__item-wrapper">
      <span aria-hidden="true" class="material-icons nj-icon-material nj-list-item__leading">navigation</span>
      <span class="nj-list-item__content">Simple list item</span>
      <p class="nj-badge nj-list-item__trailing">1</p>
    </button>
  </li>
</ul>

<!-- Now -->
<ul class="nj-list">
  <li class="nj-list__item">
    <button class="nj-list__item-wrapper">
      <span aria-hidden="true" class="material-icons nj-icon-material nj-list__item-leading">settings</span>
      <div class="nj-list__item-content">
        <span class="nj-list__item-primary">Simple list item</span>
      </div>
      <p class="nj-badge nj-list__item-trailing">1</p>
    </button>
  </li>
</ul>
```

### 🚀 Added

###### [LIST-ITEM]

- List item can now have a secondary content. It must be in a `nj-list__item-secondary` container in the `nj-list__item-content` container

## 📦 6.0.0-next.8 - 2025-04-16

### 🐛 Fixed

###### [AVATAR]

- Fix badge default variant, from `neutral` to `information`

###### [INLINE-MESSAGE]

- Fix `information` variant not working properly

## 📦 6.0.0-next.7 - 2025-04-09

### ⚠️ Breaking changes

###### [HEADING]

- Reduce font size of scales `lg` and `xl`. To keep previous sizes, use instead, respectively: heading `xl` and display `md`
- Remove `2xl` scale property value. Use new display component instead

```html
<!-- Before -->
<h1 class="nj-heading nj-heading--2xl">Previous heading 2xl ➡️ doesn't exist anymore</h1>
<h1 class="nj-heading nj-heading--xl">Previous heading xl ➡️ font size reduced</h1>
<h1 class="nj-heading nj-heading--lg">Previous heading lg ➡️ font size reduced</h1>

<!--Now-->
<h1 class="nj-display nj-display--xl">Previous heading 2xl ➡️ Now display xl</h1>
<h1 class="nj-display nj-display--md">Previous heading xl ➡️ Now display md</h1>
<h1 class="nj-heading nj-heading--xl">Previous heading lg ➡️ Now heading xl</h1>
```

### 🚀 Added

###### [DISPLAY]

- Implement display component

###### [HEADING]

- Add `ai` variant which colors the text with Engie's `ai` gradient

### 🐛 Fixed

###### [CHECKBOX]

- Fix checkbox scale `xl` displaying in `md`

###### [SKELETON]

- Fix missing styles used in skeleton component after token update

## 📦 6.0.0-next.6 - 2025-03-21

### ⚠️ Breaking changes

###### [FOOTER]

- Deprecate component which has been deprecated in design.

###### [ICON-BUTTON]

- The default size of the icon button has been changed from `xs` to `sm`.

## 📦 6.0.0-next.5 - 2025-03-04

### 🐛 Fixed

###### [TOGGLE]

- Removed necessity to use `.nj-toggle__track`. Toggle style are now applied directly to the input.
- Fixed toggle not changing state on click when no label in parents

## 📦 6.0.0-next.4 - 2025-02-12

### ⚠️ Breaking changes

###### [AVATAR]

- Updated size midifiers:
  - `nj-avatar--md` = `48px` -> `40px`
  - `nj-avatar--lg` = `64px` -> `48px`
  - `nj-avatar--xl` = `96px` -> `56px`
- New size modifiers:
  - `nj-avatar--2xl` -> `64px`
  - `nj-avatar--3xl` -> `96px`

###### [LIST]

- List item component has been simplified `nj-list-item--navigation` and `nj-list-item--selection` has been deleted. `nj-list-item__icon` has been deleted, please use `nj-list-item__leading` instead.

###### [SIDEBAR]

- Sidebar component has been deprecated. You can switch all occurences of `nj-sidebar*` classes to `nj-sidebar-deprecated*` to limit impact. We highly recommend to switch to the updated `nj-sidebar` component.

###### [SIDEPANEL-LAYOUT]

- `nj-sidepanel-layout` class has been deleted as it was not aligned with the library philosophy. Fluid doesn't aim to provide layout components.

```html
<!-- Before -->
<div class="nj-sidepanel-layout">
  Lorem ipsum dolor sit amet, consectetur adipiscing elit.
  <div class="nj-sidepanel-layout__sidepanel">Panel</div>
</div>

<!-- After (example) -->
<div style="display: flex;">
  Lorem ipsum dolor sit amet, consectetur adipiscing elit.
  <div>Panel</div>
</div>
```

### 🚀 Added

###### [GLOBAL]

- Added new responsive token for typescale: `--nj-semantic-font-size-text-xx`, `--nj-semantic-font-size-heading-xx`, `--nj-semantic-line-height-text-xx` & `--nj-semantic-line-height-heading-xx` tokens. They replace usage of specific desktop and mobile versions. They value change depending on the screen size.

###### [INLINE-MESSAGE]

- Add new `scale` modifier `nj-inline-message--{scale}`
  - `nj-inline-message--sm`
  - `nj-inline-message--md (default)`

###### [SIDEBAR]

- Sidebar component has been revamped to facilitate usage. Please check the documentation

## 📦 6.0.0-next.3 - 2024-12-09

### ⚠️ Breaking changes

###### [SPINNER]

- Update `scale` value from `xxs` to `2xs`

```html
<!-- Before -->
<div aria-live="polite" aria-atomic="true" class="nj-spinner nj-spinner--xxs">
  <p class="nj-sr-only">Loading...</p>
</div>

<!-- Now -->
<div aria-live="polite" aria-atomic="true" class="nj-spinner nj-spinner--2xs">
  <p class="nj-sr-only">Loading...</p>
</div>
```

### 🚀 Added

###### [BADGE]

- Add new `ai` modifier for generative AI context.

###### [BUTTON]

- Add new `ai` modifier for generative AI context.

###### [ICON]

- Add new color values for the `variant` prop: `ai`, `*-contrast`. See component doc for an exhaustive list.
- Update icon sizes for a better consistency with design.
- Add a new icon `engie_ai` in the icon library. This icon is Engie specific and is used to represent the Gen AI. To use it, you need to add a specific class to the icon element (`nj-icon-material--engie`).

```html
<span aria-hidden="true" class="material-icons nj-icon-material nj-icon-material--engie">engie_ai</span>
```

###### [SPINNER]

- Add new `ai` modifier for generative AI context.

###### [STATUS-INDICATOR]

- Add new `ai` modifier for generative AI context.

###### [TOGGLE]

- Add new `ai` modifier for generative AI context.

## 📦 6.0.0-next.2 - 2024-11-06

### ⚠️ Breaking changes

###### [INLINE-MESSAGE]

- Replace the `<p>` by a `<div>` for the `nj-inline-message__body` element:

  ```html
  <!-- OLD -->
  <p class="nj-inline-message__body">Message description</p>

  <!-- NEW -->
  <div class="nj-inline-message__body">Message description</div>
  ```

- Remove the title, the inline-message now only accepts a content (can be multiline, with some bold elements etc ...). You can use the new `nj-heading` and `nj-text` components to style it however you want.

  ```html
  <!-- OLD -->
  <div class="nj-inline-message__content">
    <h4 class="nj-inline-message__title">Title <b>error</b> Message</h4>
    <p class="nj-inline-message__body">Message description</p>
  </div>

  <!-- NEW: remove the `nj-inline-message__title` element like so: -->
  <div class="nj-inline-message__content">
    <div class="nj-inline-message__body">
      <p class="nj-text">Message description</p>
    </div>
  </div>
  ```

### 🚀 Added

###### [INLINE-MESSAGE]

- Add a new `action` element, in which you can specify an action (for example, a link "Learn more" or "Undo action"):

  ```html
  <div class="nj-inline-message__content">
    <div class="nj-inline-message__body">...</div>
    <!-- New action slot: -->
    <div class="nj-inline-message__action">
      <a class="nj-link nj-link--high-contrast">Undo action</a>
    </div>
  </div>
  ```

- You can also specify the action placement through the `nj-inline-message--action-placement-right` modifier:

  ```html
  <div class="nj-inline-message nj-inline-message--action-placement-right">
    ...
    <div class="nj-inline-message__content">
      <div class="nj-inline-message__body">...</div>
      <div class="nj-inline-message__action">
        <a class="nj-link nj-link--high-contrast">Undo action</a>
      </div>
    </div>
  </div>
  ```

### 🐛 Fixed

###### [STATUS-INDICATOR]

- Update status indicator sizes to account for borders. Status indicators sizes are now 2px smaller:
  - `sm`: 14px -> 12px,
  - `md`: 18px -> 16px,
  - `lg`: 26px -> 24px

## 📦 6.0.0-next.1 - 2024-10-07

### 🛠️ Maintained

- Update codebase with last current version

## 📦 6.0.0-next.0 - 2024-10-04

### 🚀 Added

###### [HEADING]

- Added a new `nj-heading` component to the design system
  `nj-heading` are used for page titles or subheadings to introduce content.
  They are designed to contrast with body content, enhancing visual hierarchy and helping readers easily understand the content structure.

  ```html
  <h4 class="nj-heading nj-heading--md nj-heading--primary">Hello World</h4>
  ```

###### [TEXT]

- Added a new `nj-text` component to the design system
  `nj-text` component is used for the main content, typically following headings. It serves as detailed descriptions and messages but can also stand alone in components.
  It comes with different sizes and variants to adapt to the context.

  ```html
  <p class="nj-text nj-text--md nj-text--primary">Hello World</p>
  ```

## 📦 5.18.2 - 2025-11-13

### 🐛 Fixed

###### [TAB]

- Fix `font-family` for `Tab` component to match the design specifications.

### 🛠️ Maintained

- Updated dependencies
  - @engie-group/fluid-design-tokens@5.13.0

## 📦 5.18.1 - 2025-07-11

### 🐛 Fixed

###### [PAGINATION]

- Current item is not interactive anymore. It was not intended to be interactive.

## 📦 5.18.0 - 2025-06-23

### ⚠️ Breaking changes

###### [ICON]

- Change the `xxl` size modifier to `2xl` to match the design system's naming convention.
  - Update your code accordingly if you are using the `xxl` size modifier.

```html
<!-- From -->
<span class="nj-icon-material nj-icon-material--xxl">...</span>

<!-- To -->
<span class="nj-icon-material nj-icon-material--2xl">...</span>
```

## 📦 5.17.2 - 2025-04-07

### 🐛 Fixed

###### [SKELETON]

- Fix styles used in skeleton components after token update

### 🛠️ Maintained

- Updated dependencies
  - @engie-group/fluid-design-tokens@5.12.0

## 📦 5.17.1 - 2025-02-12

### 🐛 Fixed

###### [SEGMENTED-CONTROL]

- Animation has been removed to be aligned with design directions

### 🛠️ Maintained

- Updated dependencies
  - @engie-group/fluid-design-tokens@5.11.0

## 📦 5.17.0 - 2024-12-06

### ⚠️ Breaking changes

###### [SELECT]

- Implement the new list for the select options update your select occurrences.
  `SelectInput.init()` will no longer work with a deprecated list.

```html
<!-- Before -->
<div class="nj-form-item nj-form-item--select nj-form-item--custom-list">
  <div class="nj-form-item__field-wrapper">
    ...
    <ul
      class="nj-form-item__list nj-list-deprecated nj-list-deprecated--no-border nj-list-deprecated--sm"
      role="listbox"
      hidden
      aria-label="Example"
      tabindex="-1"
    >
      <li
        class="nj-list-deprecated__item nj-list-deprecated__item--clickable"
        role="option"
        tabindex="-1"
        aria-selected="false"
        data-value="option-1"
      >
        Option 1
      </li>
      ...
    </ul>
  </div>
</div>

<!-- Now -->
<div class="nj-form-item nj-form-item--select nj-form-item--custom-list">
  <div class="nj-form-item__field-wrapper">
    ...
    <ul class="nj-form-item__list nj-list" role="listbox" hidden aria-label="Example" tabindex="-1">
      <li
        class="nj-list__item nj-list__item--interactive"
        role="option"
        tabindex="-1"
        aria-selected="false"
        data-value="option-1"
      >
        Option 1
      </li>
      ...
    </ul>
  </div>
</div>
```

### 🐛 Fixed

###### [SEARCH]

- Add background color to search input

###### [SELECT]

- Fix select options focus not working properly on webkit browsers (Safari).

### 🛠️ Maintained

- Remove engine property from package.json file which was causing install warning.
- Updated dependency
  - @engie-group/fluid-design-tokens@5.10.0

## 📦 5.16.2 - 2024-10-07

### 🐛 Fixed

###### [ALERT & TAG]

- Update font size with the new font size tokens

## 📦 5.16.1 - 2024-10-03

### 🚀 Added

###### [GLOBAL]

- Update font family to `Roboto Mono` for monospace. Please import this font in your project

  ```diff
  - href="https://fonts.googleapis.com/css?family=Material+Icons|Lato:300,400,700,900&display=swap"
  + href="https://fonts.googleapis.com/css?family=Material+Icons|Lato:300,400,700,900|Roboto+Mono:300,400,700,900&display=swap"
  ```

### 🛠️ Maintained

- Updated dependencies
  - @engie-group/fluid-design-tokens@5.9.0

## 📦 5.16.0 - 2024-10-02

### ⚠️ Breaking changes

###### [PROGRESS]

- Renamed `nj-progress` to `nj-progress-deprecated` and create a new component `nj-progress` instead

  ```html
  <!--From -->
  <div class="nj-progress">
    <div
      class="nj-progress__bar"
      role="progressbar"
      aria-label="Label of progressbar"
      style="width: 25%"
      aria-valuenow="25"
      aria-valuemin="0"
      aria-valuemax="100"
    >
      <span class="nj-sr-only">25%</span>
    </div>
  </div>

  <!--To-->
  <div class="nj-progress-deprecated">
    <div
      class="nj-progress-deprecated__bar"
      role="progressbar"
      aria-label="Label of progressbar"
      style="width: 25%"
      aria-valuenow="25"
      aria-valuemin="0"
      aria-valuemax="100"
    >
      <span class="nj-sr-only">25%</span>
    </div>
  </div>

  <!--Or with new progress component-->
  <div
    class="nj-progress"
    role="progressbar"
    aria-label="Label of progressbar"
    aria-valuenow="25"
    aria-valuemin="0"
    aria-valuemax="100"
  >
    <div class="nj-progress__bar">
      <div class="nj-progress__indicator" style="width: 25%"></div>
    </div>
  </div>
  ```

### 🚀 Added

###### [BUTTON]

- Add a new modifier for loading state `nj-btn--is-loading` to display the button with a spinner.
  Make sure to add the spinner component inside the button.

  ```html
  <button class="nj-btn nj-btn--is-loading" type="button">
    <div class="nj-spinner " aria-live="polite" aria-atomic="true">
      <p class="nj-sr-only">Loading...</p>
    </div>
  </button>
  ```

### 🛠️ Maintained

- Updated dependencies
  - @engie-group/fluid-design-tokens@5.8.2

## 📦 5.15.4 - 2024-09-13

### 🐛 Fixed

###### [FORM-CONTROL]

- Update styles of all form controls due to rendering issue.

###### [SPINNER]

- Update styles of the spinner component to fix a rendering bug.

### 🛠️ Maintained

- Updated dependencies
  - @engie-group/fluid-design-tokens@5.8.1

## 📦 5.15.3 - 2024-09-11

### 🐛 Fixed

###### [FOOTER]

- Footer style is now displayed correctly

## 📦 5.15.2 - 2024-09-08

### 🐛 Fixed

###### [AVATAR]

- Avatar default icon is now correctly rendered.

###### [STATUS-INDICATOR]

- Status indicator badge is now correctly rendered

### 🛠️ Maintained

- Updated dependencies
  - @engie-group/fluid-design-tokens@5.8.0

## 📦 5.15.1 - 2024-09-06

### 🛠️ Maintained

- Remove unpublished dependency
- Update URLs in README.md

## 📦 5.15.0 - 2024-09-06

### ⚠️ Breaking changes

###### [GLOBAL]

- Build has been reworked to fix some major issues and facilitate future development.
  We strongly recommend consulting the Getting started documentation to update your project.
- The main changes are based on how you will have to import CSS in your project. If you encounter any issues, please come back to us.

  ```html
  <!-- tokens.css = Styles to import tokens needed by components -->
  <link
    href="<your-relative-path-to-node_modules>/@engie-group/fluid-design-tokens/lib/css/tokens.css"
    rel="stylesheet"
  />
  <!-- fluid-design-system.css = Styles of all components -->
  <link
    href="<your-relative-path-to-node_modules>/@engie-group/fluid-design-system/lib/fluid-design-system.css"
    rel="stylesheet"
  />
  ```

  or in your JavaScript entry file :

  ```javascript
  import '@engie-group/fluid-design-tokens/css';
  import '@engie-group/fluid-design-system/css';
  ```

###### [TAG]

- Tag's icon's style is now applied to the class `nj-icon-material` instead of `material-icons`.
  Make sur that the `nj-icon-material` class is correctly applied to your icon.

  ```html
  <div class="nj-tag">
    <a href="#" class="nj-tag__link">tag</a>
    <span aria-hidden="true" class="nj-tag__icon material-icons">check</span>
    <button type="button" class="nj-tag__close nj-icon-btn nj-icon-btn--2xs">
      <span class="nj-sr-only">Remove tag XXX</span>
      <span aria-hidden="true" class="nj-icon-btn__icon material-icons">close</span>
    </button>
  </div>

  <!-- Becomes -->
  <div class="nj-tag">
    <a href="#" class="nj-tag__link">tag</a>
    <span aria-hidden="true" class="nj-tag__icon nj-icon-material material-icons">check</span>
    <button type="button" class="nj-tag__close nj-icon-btn nj-icon-btn--2xs">
      <span class="nj-sr-only">Remove tag XXX</span>
      <span aria-hidden="true" class="nj-icon-btn__icon nj-icon-material material-icons">close</span>
    </button>
  </div>
  ```

### 🐛 Fixed

###### [TAG]

- Fix the display of the focus ring when `nj-tag` is clickable

## 📦 5.14.0 - 2024-08-23

### ⚠️ Breaking changes

###### [BREADCRUMB]

- Remove default margin (32px) and padding (4px). Your layout can be affected by this change, you can add them back if needed (values provided at the start).

## 📦 5.13.0 - 2024-07-16

### 🚀 Added

###### [MENU]

- Add separator to `nj-menu` component with hr HTML element.
- Add a `nj-menu--full-width` modifier to take parent full-width.

###### [MENU-GROUP]

- Add a `nj-menu-group` component to group menu items.

### 🐛 Fixed

###### [LIST]

- Solves accessibility issues regarding the focus state

## 📦 5.12.1 - 2024-07-09

### 🐛 Fixed

###### [FORM-ITEM]

- Ensure the `nj-form-item--textarea` uses the correct font (sans-serif)

### 🛠️ Maintained

- Updated dependencies
  - @engie-group/fluid-design-tokens@5.7.2

## 📦 5.12.0 - 2024-06-04

### ⚠️ Breaking changes

###### [FOOTER]

- Update footer styles and html structure.

###### [ICON-BUTTON]

- We added new sizes and update existing ones:
  - `2xs`: height `16px`
  - `xs`: height `24px` (new default)
  - `sm`: height `32px` (old 16px)
  - `md`: height `40px` (old default, 24px)
  - `lg`: height `48px` (old 32px)
  - `xl`: height `56px`

```html
<!-- To apply those changes, search and replace the following: -->

<button class="... nj-icon-button--sm">...</button> -> <button class="... nj-icon-button--2xs">...</button>
<button class="... nj-icon-button--lg">...</button> -> <button class="... nj-icon-button--sm"></button>
```

###### [RADIO-GROUP]

- Remove the `has-danger` class (used to force error styles). Instead, use the new `nj-radio-group--has-error` modifier.

### 🚀 Added

###### [ACCORDION]

- Implement a new `nj-accordion` component

```html
<div class="nj-accordion">
  <details class="nj-accordion-item">
    <summary>
      <span class="nj-accordion-item__label">Header</span>
      <span aria-hidden="true" class="material-icons nj-icon-material nj-accordion-item__toggle">expand_more</span>
    </summary>
    <p class="nj-accordion-item__content">Fatalis advena absolute promissios rumor est.</p>
  </details>
</div>
```

###### [AUTOCOMPLETE]

- Add a `success` variant

###### [CHECKBOX]

- Add a `success` variant:
  use the `nj-checkbox--success` modifier and add the `nj-checkbox__subscript` element with an `id` linking to the input through a
  `aria-describedby`.
- Add a `subcript` variant to pass a hint message. Use the `nj-checkbox__subscript` element with an `id` linking to the input through a
  `aria-describedby`.

###### [FORM-ITEM]

- Add a `success` variant

###### [RADIO]

- Add two new `nj-radio` sizes:
  - `nj-radio--lg` 24px
  - `nj-radio--xl` 32px
- Add a `required` radio-group example.
- Add a `.nj-radio--no-animation` modifier to remove the transition animation.

###### [SELECT]

- Add a `success` variant

###### [TEXTAREA]

- Add a `success` variant

###### [CHECKBOX]

- Add a simple structure for a checkbox without label

```html
<!-- only checkbox, without label -->
<input type="checkbox" id="checkbox-id" class="nj-checkbox" checked />

<!-- or with label -->
<div class="nj-checkbox">
  <label for="checkbox-id">
    <input type="checkbox" id="checkbox-id" checked />
    <span class="nj-checkbox__label">Basic checkbox</span>
  </label>
</div>
```

### 🖍 Changed

###### [CHECKBOX]

- We updated how the `nj-checkbox` error state can be implemented. Use the `nj-checkbox--error` modifier and replace the
  `nj-checkbox__error` element by a `nj-checkbox__subscript`.

###### [RADIO]

- Update default `nj-radio` size from 20px to 16px.
- Improve `nj-radio-group` error message

## 📦 5.11.0 - 2024-05-07

### ⚠️ Breaking changes

###### [TOOLTIP]

- Rework of the tooltip to be based on a `Tooltip` class exposing methods to update tooltip state.
  - `updateTooltipContent()`, `updateTooltipModifiers()` functions have been deleted in favor of the new `setContent()`and `updateOptions()` class methods
  - `createTooltipElement()` function has been deleted
  - Signatures of `njTooltip` and `initAllTooltips` functions have been updated to return `Tooltip` instances.
    Read documentation for further information.

### 🚀 Added

###### [BADGE]

- Add a new `small` size variation (18px) with the `nj-badge--sm` modifier.

###### [MENU]

- Add a `nj-menu` component.
- Implements `openMenu()` function to open a floating menu

```javascript
openMenu(anchor, content, document.body, { placement: 'bottom-end' });
```

###### [TOOLTIP]

- Implement [#1052](https://github.com/FluidDesignSystem/fluid-design-system/issues/1052) feature,
  You can now show or hide a tooltip with its corresponding `Tooltip` methods.
- Implement function `displayTooltipOnHoverAndFocus` to attach listeners to focus and hover events to display a tooltip.

```javascript
const tooltip = njTooltip(anchor, content, options);
// If you want to manually display and hide the tooltip
tooltip.show();
tooltip.hide();
// If you want the tooltip to be displayed automatically on hover and focus
const unmount = displayTooltipOnHoverAndFocus(tooltip);
// Call the returned function when you want to remove event listeners
unmount();
```

### 🖍 Changed

###### [BADGE]

- Increase the size of the default badge size, from `20px` to `24px`.

###### [TOGGLE]

- Update default `nj-toggle` label font size from 14px to 16px

## 📦 5.10.2 - 2024-04-18

### 🐛 Fixed

###### [BUTTON]

- Fix button variants not rendering correctly

###### [CHECKBOX]

- Prevent checkboxes from initializing more than one checkbox

###### [FORM ITEM]

- Enforce text alignment to the start

## 📦 5.10.1 - 2024-04-12

### ⚠️ Breaking changes

###### [LIST]

- Rename variant `.nj-list__item--clickable` to `.nj-list__item--interactive`

### 🐛 Fixed

###### [GLOBAL]

- Fix border colors on `nj-inline-message`s, `nj-badge`s and `nj-tag`s color variants

## 📦 5.10.0 - 2024-04-12

### ⚠️ Breaking changes

###### [BUTTON]

- Add new `nj-btn--lg` size modifier. Previous `nj-btn--lg` size is now `nj-btn--xl`. Please update your base code to reflect this change if needed.

```html
<button type="button" class="nj-btn nj-btn--lg "></button> ==> <button type="button" class="nj-btn nj-btn--xl"></button>
```

###### [CHECKBOX]

- To standardize our component sizes and for consistency with the design, we had to make modifications to the checkbox sizes:
  - ❌ REMOVED small (14px, `nj-checkbox--sm`), use the normal size instead (16px).
  - 🖍 UPDATED default (20px) to 16 px.
  - 🖍 UPDATED large (30px, `nj-checkbox--lg`) to 24px.
  - 🚀 ADDED new extra-large (`nj-checkbox--xl`) with a size of 32px.
- We also removed the animation, and therefor removed the `.nj-checkbox--no-animation` modifier.

### 🚀 Added

###### [INPUT SEARCH]

- Add an `input-search` component with 2 'variations' :
  - basic (only the field)
  - with button

###### [LIST]

- Add a `nj-list` up to date with new design changes.

### 🖍 Changed

###### [LIST GROUP]

- `nj-list-group` is now deprecated and renamed to `nj-list-deprecated` classes, prefer using the `nj-list` up to date with the new design changes.

## 📦 5.9.0 - 2024-03-20

### ⚠️ Breaking changes

###### [GLOBAL]

- To accommodate the changes made to the **border radius tokens**, all components border radiuses have been set to the token `--nj-semantic-size-border-radius-none` (in order to not change their appearance).
- Following the changes made to the **border color tokens**, all components border color tokens have been updated to their new nomenclature (adding the `-default` suffix).

###### [FORM ITEM PASSWORD]

- Replaced the password icon variant: from `nj-icon-btn--secondary` modifier to `nj-icon-btn--tertiary` modifier.

```html
<div class="nj-form-item nj-form-item--password">
  <div class="nj-form-item__field-wrapper">
    <input />
    <label />
    <button type="button" aria-pressed="false" class="nj-form-item__password-button nj-icon-btn nj-icon-btn--lg ">
      <!-- swap secondary for tertiary here -->
      <span />
      <span />
    </button>
    <p />
  </div>
</div>
```

###### [TOOLTIP]

- Refactor of the tooltip component:
  - Migrating from popper.js to FloatingUI library
  - Reword of HTML attributes for a better contextualization.
  - Better handling of the remaining space to display the tooltip where it fit best (remove placement `auto`).
  - Remove the auto initialization of all tooltips on `DOMContentLoaded`, you can now use the built-in `initAllTooltips` function to replicate the behavior.

### 🚀 Added

###### [TAB]

- Add the possibility to include a `nj-badge` inside a `nj-tab__item`.

### 🖍 Changed

###### [FORM ITEM]

- Replaced icon variant from `secondary` to `tertiary`

###### [LINK]

- Update the `hovered`, `focused` and `pressed` colors for the `grayed` and `contextual` link variants.

###### [TAG]

- Update the icon color of the neutral tag to use the new `tertiary` token.

## 📦 5.8.0 - 2024-03-05

### 🚀 Added

###### [CHECKBOX]

- Add new size modifiers
  - small: `nj-checkbox--sm`
  - large: `nj-checkbox--lg`
- Add new optional asterisk element when input is required: `<span aria-hidden="true" class="nj-checkbox__required">*</span>` (check out the storybooks for a detailed example)

### 🖍 Changed

###### [GLOBAL]

- Update dependencies to support Node >= 20

###### [CHECKBOX]

- Update the way we handle `required` and `error` state.

#### ⚠️ Breaking changes

###### [CHECKBOX]

- Remove `.nj-checkbox--inline` modifier. You can inline elements with the `display: flexbox` CSS property on the parent.
- Remove `.has-danger` class (it was previously used to force errors). Use the `aria-invalid="true"` attribute instead.
- Update the Html structure for the label: we now wrap the text of the label with `.nj-checkbox__label`. We updated the documentation with new examples and explanations, make sure to check it out.

```html
<div class="nj-checkbox">
  <label for="checkbox-changelog-example">
    <input type="checkbox" id="checkbox-changelog-example" />
    <span class="nj-checkbox__label">Checkbox label</span>
    <!-- New wrapper for the label text -->
  </label>
</div>
```

## 📦 5.7.0 - 2024-01-31

### 🖍 Changed

###### [FAB]

- Replace `nj-fab` scss variables by component css variables (`$fab-size` -> `--nj-component-fab-size-base` and `$fab-size-sm` -> `--nj-component-fab-size-sm`)

###### [SEGMENTED-CONTROL]

- Change events suffix to match with the component, now `*.nj.segmented-control`.
- Better types for `select` method signature, now `select(index: number)`.

### 🚀 Added

###### [BADGE]

- Add `nj-badge__icon` element to add icon in the badge:

  ```html
  <p class="nj-badge">
    <span aria-hidden="true" class="nj-badge__icon material-icons">outlined_flag</span>
    badge with icon
  </p>
  ```

###### [ICON]

- Add new size `nj-icon-material--xs`

### 🐛 Fixed

###### [AUTOCOMPLETE]

- Fix issue [#900](https://github.com/FluidDesignSystem/fluid-design-system/issues/900),
  Rework component to be more accessible, and shows keyboard on mobile.

## 📦 5.6.0 - 2023-12-15

### 🚀 Added

###### [BADGE]

- Add new `nj-badge--planet` semantic color variation

###### [INLINE MESSAGE]

- Add new `nj-inline-message--planet` and `nj-inline-message--discovery` semantic colors variations

###### [SIDEPANEL]

- Add new `.nj-sidepanel` component
- Add new `.nj-sidepanel-layout` wrapper component to attach a sidepanel aside of a content

###### [STATUS INDICATOR]

- Add new `nj-status-indicator--planet` and `nj-status-indicator--discovery` semantic colors variations

### 🖍 Changed

###### [FORM ITEM]

- Change label color when input is filled from `text-neutral-tertiary` to `text-neutral-secondary`

#### ⚠️ Breaking changes

###### [HEADER]

- Update `nj-header` to use latest Fluid components. This component will be updated in the near future to cover a wider scope of usages.
  - The `nj-header` now uses contextual `nj-link`s, `nj-icon-button`s and has some basic keyboard accessibility.
  - ⚠️ Breaking changes: Make sure to use the updated html structure, some elements changed / were replaced by Fluid components.

###### [ICON]

- Split `.nj-icon-material--inherit` to its color (`.nj-icon-material--color-inherit`) and size (`.nj-icon-material--size-inherit`) variants.
- Update material icons default color.
  Icons no longer inherit color from its context by default.
  To keep previous behaviour, add modifier `.nj-icon-material--color-inherit`.
- To inherit icon size from context, use `.nj-icon-material--size-inherit`.

###### [INLINE MESSAGE]

- Rename `nj-inline-message--info` to `nj-inline-message--information` to homogenize with the new token names.

###### [STATUS INDICATOR]

- Rename `nj-status-indicator--info` to `nj-status-indicator--information` to homogenize with the new token names.

## 📦 5.5.3 - 2023-10-27

### 🐛 Fixed

###### [STATUS INDICATOR]

- Fix offline status indicator color

## 📦 5.5.2 - 2023-10-23

### 🖍 Changed

- Update tokens dependencies

## 📦 5.5.1 - 2023-10-23

### 🖍 Changed

- Update tokens dependencies

## 📦 5.5.0 - 2023-10-20

### 🖍 Changed

###### [GLOBAL]

- Update tokens to their new nomenclature. It should not affect they way you use Fluid components.
- ⚠️ Breaking changes: If you are using Fluid tokens (for overrides on Fluid components or for custom components), please check out the `fluid-design-tokens`'s changelog. We provide a script to automatically update all tokens.

### 🐛 Fixed

###### [LIST ITEM]

- Fix issue [#368](https://github.com/FluidDesignSystem/fluid-design-system/issues/368),
  focus state display the correct colors and focus ring when used with `role='option'` (autocomplete input, select custom, multi-select).

## 📦 5.4.0 - 2023-09-06

### 🚀 Added

###### [MODAL]

- Add new `.nj-modal--fit-viewport` variant, to fix the modal to the viewport area.

### 🖍 Changed

#### ⚠️ Breaking changes

###### [ICON]

- `--nj-material-icon-color` CSS variable is no longer used to set icon color.

###### [MODAL]

- Change of the default modal behaviour: The modal is now attached to its parent container by default, where it was
  attached to the viewport area before.
  If you want to keep the old behaviour: please add `.nj-modal--fit-viewport` class to the `.nj-modal` element.
- The default modal position is now `absolute` instead of `fixed`.
- Your modal parent anchor should be **positioned** (position `relative`, `absolute`, `fixed` or `sticky`) in order to
  the modal to be attached to it.
- The modal parent anchor is the `.nj-modal` parent container if `data-appendto` is not set, or the selected element if
  set.
  `data-appendto` can take any valid `querySelector` as it uses `element.querySelector`(
  see. [Doc](https://developer.mozilla.org/en-US/docs/Web/API/Document/querySelector)) under the hood
  e.g: `data-appendto="body"` or `data-appendto="#element_id"`

### 🐛 Fixed

###### [GLOBAL]

- Correctly export the input number component

###### [AUTOCOMPLETE INPUT]

- Fix issue [#791](https://github.com/FluidDesignSystem/fluid-design-system/issues/791),
  add possibility to load suggestion dynamically after component loaded

###### [CARD]

- Fix issue [#875](https://github.com/FluidDesignSystem/fluid-design-system/issues/875).
  Card gradient bottom border is now visible again.

###### [FORM ITEM]

- Fix issue [#873](https://github.com/FluidDesignSystem/fluid-design-system/issues/873).
  The placeholder in the form item is now correctly hidden in Firefox.

###### [ICON]

- Fix issue [#846](https://github.com/FluidDesignSystem/fluid-design-system/issues/846).
  Remove the default `color: inherit` and the `--nj-material-icon-color` variable on material icon, so the correct color
  is displayed properly.

###### [MODAL]

- Fix issue [#870](https://github.com/FluidDesignSystem/fluid-design-system/issues/870),
  storybook's canvas on Firefox behave now like in Chrome browsers.
  The backdrop remains in the same container as the modal, even when the modal is attached to another container.

## 📦 5.3.0 - 2023-07-06

### 🚀 Added

###### [ICON]

- Add new `nj-icon-material--tertiary` variant (grey 500).

###### [MULTI SELECT]

- Add styles for multi select component

###### [SKELETON]

- Add new `nj-skeleton` component with 3 available children to mock your data as you need:
  - `nj-skeleton__rectangle`
  - `nj-skeleton__circle`
  - `nj-skeleton__area`
  - This component is highly customizable:
    - pass a custom width and size:
      - Css property: style="max-width: 200px;"
      - Css variables: style="--nj-skeleton-width: 24px;"
    - pass a custom svg in `nj-skeleton__area`
  - ⚠️ Make sure to read the documentation provided, as this component needs a bit of work to fulfill accessibility
    standards!

###### [TAG]

- Add size `xs` for tags

### 🐛 Fixed

###### [SELECT]

- Fix issue [#843](https://github.com/FluidDesignSystem/fluid-design-system/issues/843).
  When using Windows, the `option` and `otpgroup` elements should behave properly in dark mode (this bug is related to
  OS-dependent styling).

###### [MODAL]

- Fix issue [#809](https://github.com/FluidDesignSystem/fluid-design-system/issues/809).
  Buttons in the modal now have the correct focus-visible behaviour in React and Angular.
- Fix issue [#824](https://github.com/FluidDesignSystem/fluid-design-system/issues/824).
  We now check if the event.target has the [data-toggle="modal"] attribute, if not find the closest element to trigger
  the modal properly.

###### [SELECT INPUT]

- Fix issue [#800](https://github.com/FluidDesignSystem/fluid-design-system/issues/800),
  add function `updateOptionsAndListeners()` that you can access
  via `window.NJ.SelectInput.getInstance(SELECT_INPUT_ELEMENT).updateOptionsAndListeners()`

### 🖍 Changed

###### [TOOLTIP]

- We now expose the fixTitle() method that allows easier on the flight change to a tooltip title.

#### ⚠️ Breaking changes

###### [AVATAR]

- Rename root tokens for avatar sizes:
  - `--nj-avatar-size--sm` -> `--nj-component-avatar-size-sm`
  - `--nj-avatar-size--base` -> `--nj-component-avatar-size-base`
  - `--nj-avatar-size--lg` -> `--nj-component-avatar-size-lg`
  - `--nj-avatar-size--xl` -> `--nj-component-avatar-size-xl`

## 📦 5.2.0 - 2023-05-04

### 🚀 Added

###### [INPUT NUMBER]

- Add the `nj-input-number` component

### 🐛 Fixed

###### [SLIDER]

- Fix some cases where slider track doesn't go all the way

### 🖍 Changed

###### [ICON]

- Add new `.nj-material-icon--secondary` modifier (grey-600)
- Add new `.nj-material-icon--grey` modifier (grey-600)

#### ⚠️ Breaking changes

###### [BADGE]

- ⚠ Change default `nj-badge` color to `neutral` (grey)
- Add new badge emphasis variations:
  - Bold: default
  - Subtle: `nj-badge--subtle`
  - Minimal: `nj-badge--minimal`
- Add new badge color variants according to the latest design
  changes: [Figma Badge component](https://www.figma.com/file/uQOeVZTYvOFlGkIpwpffLE/Fluid-5?node-id=50852%3A54647&t=Z7ix3zX2g5qSm7VX-1)
  - Neutral: default
  - Information: `nj-badge--information`,
  - Danger: `nj-badge--danger`,
  - Warning: `nj-badge--warning`,
  - Success:`nj-badge--success`,
  - Discovery: `nj-badge--discovery`

###### [LIST GROUP]

- Change clickable items markup

```html
<ul class="nj-list-group">
  <!--
      Interactive list items should have the nj-list-group__item--clickable
      class and contain only an anchor or a button element.
    -->
  <li class="nj-list-group__item nj-list-group__item--clickable">
    <a href="#"> Lorem ipsum dolor sit amet </a>
  </li>
</ul>
```

###### [LIST ITEM]

- [A11Y] `nj-list-item` : fix markup when list item is a button or a link

###### [SIDEBAR]

- Update `nj-sidebar` to match the latest design
- Change `nj-sidebar` html structure to add some modularity
  - the `nj-sidebar` element that acts as an outer shell (modifiers : `nj-sidebar--folded` to fold
    it, `nj-sidebar--no-motion` to remove animation)
  - the `nj-sidebar__brand` element to house the brand logo and act as a return to home button
  - a `nj-sidebar__navigation` div to add a nav (multiple nav allowed), with a `sidebar__navigation--footer` variation
    that anchors it at the bottom
  - a `nj-sidebar__collapse` element to house the button that folds / expands the sidebar if needed
  - the `nj-sidebar-content` is the element used for all the content outside the sidebar. You can wrap your content so
    that it automatically has the correct margin on the left

Example:

```html
<div class="nj-sidebar">
  <div class="nj-sidebar__brand">
    <!-- Your logo-->
  </div>
  <div class="nj-sidebar__navigation">
    <!-- Your sidebar nav items-->
  </div>
</div>
<div class="nj-sidebar-content">
  <!-- Your content goes here-->
</div>
```

- Remove the `.nj-sidebar--sm` modifier
- Removed the `.nj-sidebar--navbar` modifier
  - If you need to use the sidebar with a navbar up top, you can override the `--nj-sidebar-top`
    and `--nj-sidebar-height` css variables

Example:

```css
.nj-sidebar.nj-sidebar--custom-height {
  --nj-sidebar-top: var(--height-of-your-navbar);
  --nj-sidebar-height: calc(100% - var(--height-of-your-navbar));
}
```

###### [CHECKBOX]

- Remove `align-self: flex-start;` forced behavior

## 📦 5.1.1 - 2023-04-07

### 🐛 Fixed

###### [TOAST]

- Fix issue on toast content not being aligned

## 📦 5.1.0 - 2023-04-04

### 🚀 Added

###### [ICON BUTTON]

- Add variants tertiary and brand

### 🖍 Changed

##### ⚠️ Breaking changes

###### [ICON BUTTON]

- Change default value from (blue icon) to primary (black icon)
- Primary takes now the color of old secondary, and current variant secondary use `var(--nj-color-icon-secondary)`
- All components using icon buttons have been updated to use correct variant

### 🐛 Fixed

###### [GLOBAL]

- Fix issue [#792](https://github.com/FluidDesignSystem/fluid-design-system/issues/792),
  screenreader not imported in global scss file

###### [CHECKBOX]

- Fix hover & pressed on checked checkbox

###### [FORM ITEM]

- Fix form item in error state label color when input is focused
- Fix issue [#767](https://github.com/FluidDesignSystem/fluid-design-system/issues/767)
  when input is autofilled background color doesn't go all the way

###### [Radio]

- Remove hover state on checked radio since we can not uncheck them

## 📦 v5.0.1 - 2023-03-09

### 🐛 Fixed

###### [CHECKBOX]

- Remove `.nj-form-group` deprecated class from parent wrapper of checkbox, and place `.has-danger` directly
  on `.nj-checkbox`

###### [SEGMENTED CONTROL]

- Fix occurences where hover and focus not working on `.nj-segmented-control-btn`

###### [SELECT]

- Fix option click not work and select not showing active selected item

## 📦 v5.0.0 - 2023-03-02

### 🚀 Added

###### [GLOBAL]

- Added single component export in Javascript, we now have two ways to import

```javascript
// ====>  Present before
import NJ from '@engie-group/fluid-design-system';

// If we want to use Alert for e.g
NJ.Alert.init();

// ====> Added
import { Alert } from '@engie-group/fluid-design-system';

// If we want to use Alert for e.g
Alert.init();
```

- Disabled elements now use opacity instead of specific disabled colors

###### [AVATAR GROUP]

- Add new `nj-avatar-group` density (compact)

###### [BUTTON]

- Add new buttons
- Buttons have now 4 variants: `primary` (default), `secondary`, `destructive` (previously danger) and `inverse`. For
  each variant it is possible to have 3 alternate buttons `bold` (default), `subtle` (previously outline)
  and `minimal` (previously ghost)

###### [CHECKBOX]

- Add new `.nj-checkbox--no-animation` class to `.nj-checkbox` to toggle animation on and off

###### [FORMS]

- Add new forms `nj-form-item`
- Add new `password` component
- Add new `select-input` with native and custom variants
- Add new `autocomplete-input`

###### [HIGHLIGHT]

- Add highlight component to highlight text for e.g in search

###### [ICON BUTTON]

- Add component icon button

###### [ICON MATERIAL]

- Add size `inherit` `nj-icon-material--inherit` for icons that inherits font-size from parent

###### [INLINE MESSAGE]

- Add new component `nj-inline-message`

###### [LINK]

- Add variant `inverse` `.nj-link--inverse` and `high-contrast` `.nj-link--high-contrast` to `nj-link`

###### [LIST]

- Add options and improve `nj-list`
  - Add new `nj-list-group__item--right-border` modifier to display the hover/active border of a list item on the
    right
  - Add new `nj-list-group__item-right-content`class to display an element on the right side of the list item (icon,
    badge, link, ...)
  - Add new border animation

###### [PROGRESS]

- Add the `nj-progress--has-transition` modifier

###### [SEGMENTED CONTROL]

- Add new components `nj-segmented-control` and `nj-segmented-control-btn`

###### [SPINNER]

- Add new size `xxs` for `nj-spinner`

###### [STATUS INDICATOR]

- Add new component `nj-status-indicator`

###### [TABS]

- Add new `density` to `nj-tabs`

###### [TAG]

- Add possibility to pass icon to tags
- Add different sizes `sm, md(default), lg`

###### [TOAST]

- Add component `nj-toast`
- Add component `nj-toast__container` (default with a 480px width and its full-width variation)

###### [TOGGLE]

- `nj-toggle` add new size: `nj-toggle--lg`
- Add class `nj-toggle--inherit` to make toggle label color inherit from parent, fixes
  issue [#688](<https://github.com/FluidDesignSystem/fluid-design-system/issues/688>

###### [TOOLTIP]

- Add new variant `.nj-tooltip--inverse` for `.nj-tooltip` usable by adding attribute `data-variant='inverse'`

### 🖍 Changed

##### ⚠️ Breaking changes

###### [GLOBAL]

- Update colors to comply with new Engie Global Guidelines
- Update sass and fix breaking changes accordingly
- Update components to be Accessible
- Update dependencies to work with Node latest LTS v16.16 and npm 8.15
- lib/fluid-design-system.js automatically initiate components
- lib/auto-init is included to lib/fluid-design-system.js
- replace web-animation-js dependency for global file
- Replace all radius to use tokens and be compliant with new UI guidelines (no radius)
- Replace all sass variables with tokens
- When installing the package via npm or importing it via CDN we recommend fixing the version with the exact package
  version to avoid breaking change affecting your live website. With never-ending topics like Accessibility and BRAND
  GUIDELINES we also have to include some minor breaking changes in some minor versions

###### [AVATAR]

- Replace `nj-bullet` by `nj-status-indicator` in the `nj-avatar` component
- Add new `nj-avatar--xl` size
- `nj-avatar` with pictures should now have modifier `.nj-avatar--picture` like so

```html
<a href="#" class="nj-avatar nj-avatar--picture">
  <img class="nj-avatar__picture" src="source" alt="Customer" />
</a>
```

###### [BADGE]

- [A11Y] Change `nj-badge` semantic from `div` to `p`

###### [BUTTON]

- Replace all previous variants `light`, `primary`, `danger`, `success`, `warning` variants with new system listed in
  section Added

###### [BULLET]

- `nj-bullet` doesn't take same variants as before,

```html
Before:

<div class="nj-bullet nj-bullet--white"></div>
<div class="nj-bullet nj-bullet--blue-corporate"></div>
<div class="nj-bullet nj-bullet--blue-allports"></div>
<div class="nj-bullet nj-bullet--blue-venice"></div>
<div class="nj-bullet nj-bullet--green-java"></div>
<div class="nj-bullet nj-bullet--green-pine"></div>
<div class="nj-bullet nj-bullet--green"></div>
<div class="nj-bullet nj-bullet--orange-crusta"></div>
<div class="nj-bullet nj-bullet--orange"></div>
<div class="nj-bullet nj-bullet--red-mandy"></div>
<div class="nj-bullet nj-bullet--red"></div>
<div class="nj-bullet nj-bullet--blue-bigstone"></div>
<div class="nj-bullet nj-bullet--blue-rhino"></div>
<div class="nj-bullet nj-bullet--green-fun"></div>
<div class="nj-bullet nj-bullet--green-riogrande"></div>
<div class="nj-bullet nj-bullet--yellow"></div>
<div class="nj-bullet nj-bullet--yellow-bright-sun"></div>
<div class="nj-bullet nj-bullet--purple"></div>
<div class="nj-bullet nj-bullet--violet"></div>
<div class="nj-bullet nj-bullet--violet-eggplant"></div>
<div class="nj-bullet nj-bullet--cerise"></div>

After :

<div class="nj-bullet nj-bullet--brand"></div>
<div class="nj-bullet nj-bullet--teal"></div>
<div class="nj-bullet nj-bullet--pink"></div>
<div class="nj-bullet nj-bullet--orange"></div>
<div class="nj-bullet nj-bullet--red"></div>
<div class="nj-bullet nj-bullet--green"></div>
<div class="nj-bullet nj-bullet--ultramarine"></div>
<div class="nj-bullet nj-bullet--yellow"></div>
<div class="nj-bullet nj-bullet--purple"></div>
<div class="nj-bullet nj-bullet--blue"></div>
<div class="nj-bullet nj-bullet--lime"></div>
```

###### [CARD]

- `nj-card` image `nj-card__img` should now be wrapped in div `nj-card__img-wrapper`

###### [FOOTER]

- `nj-footer` : remove `.nj-footer__link` class it should be replaced by `nj-link nj-link--contextual`
- Remove all utils from `nj-footer`,

Before:

```html
<div class="row mt-5 mb-3">
  <div class="col-sm-6 col-md mb-3 mb-md-0">
    <h2 class="nj-footer__links-list-title">Title 1</h2>
    <ul class="list-unstyled">
      <li><a href="#" class="nj-link nj-link--contextual">Link 1</a></li>
      <li><a href="#" class="nj-link nj-link--contextual">Link 2</a></li>
      <li><a href="#" class="nj-link nj-link--contextual">Link 3</a></li>
    </ul>
  </div>
  <div class="col-sm-6 col-md mb-3 mb-md-0">
    <h2 class="nj-footer__links-list-title">Title 2</h2>
    <ul class="list-unstyled">
      <li><a href="#" class="nj-link nj-link--contextual">Link 1</a></li>
      <li><a href="#" class="nj-link nj-link--contextual">Link 2</a></li>
      <li><a href="#" class="nj-link nj-link--contextual">Link 3</a></li>
    </ul>
  </div>
  <div class="col-sm-12 col-md">
    <h2 class="nj-footer__links-list-title">Title 3</h2>
    <ul class="list-unstyled">
      <li><a href="#" class="nj-link nj-link--contextual">Link 1</a></li>
      <li><a href="#" class="nj-link nj-link--contextual">Link 2</a></li>
      <li><a href="#" class="nj-link nj-link--contextual">Link 3</a></li>
    </ul>
  </div>
</div>
```

After:

```html
<div class="nj-footer__menu">
  <div class="nj-footer__menu-section">
    <h2 class="nj-footer__links-list-title">Title 1</h2>
    <ul class="nj-footer__links-list">
      <li><a href="#" class="nj-link nj-link--contextual">Link 1</a></li>
      <li><a href="#" class="nj-link nj-link--contextual">Link 2</a></li>
      <li><a href="#" class="nj-link nj-link--contextual">Link 3</a></li>
    </ul>
  </div>
  <div class="nj-footer__menu-section">
    <h2 class="nj-footer__links-list-title">Title 2</h2>
    <ul class="nj-footer__links-list">
      <li><a href="#" class="nj-link nj-link--contextual">Link 1</a></li>
      <li><a href="#" class="nj-link nj-link--contextual">Link 2</a></li>
      <li><a href="#" class="nj-link nj-link--contextual">Link 3</a></li>
    </ul>
  </div>
  <div class="nj-footer__menu-section">
    <h2 class="nj-footer__links-list-title">Title 3</h2>
    <ul class="nj-footer__links-list">
      <li><a href="#" class="nj-link nj-link--contextual">Link 1</a></li>
      <li><a href="#" class="nj-link nj-link--contextual">Link 2</a></li>
      <li><a href="#" class="nj-link nj-link--contextual">Link 3</a></li>
    </ul>
  </div>
</div>
```

###### [HEADER]

- Remove all utils from `nj-header`, you now have to add classes `nj-header__search-input` on search input
  and `nj-header__search-button` on search button as well as `nj-header__sub-nav` instead of `list-unstyled`

###### [ICON MATERIAL]

- `.material-icons` now inherits color by default
- Remove material icon `link` usage.
- To use material icons variations, use the `nj-icon-material` class and its modifiers:
  - `md--{color}` is now `nj-icon-material--{color}`
    - ⚠️Breaking change: reworked colors: primary (grey-800), inverse (grey-0), brand (ex blue-corporate), grey,
      teal,
      pink, orange, red, green, ultramarine, yellow, purple,
  - `md--{size}` is now `nj-icon-material--{size}`

###### [LINK]

- `nj-link` now inherits its parent font-size
- `nj-link` rename class `.nj-link--no-text-decoration` to `.nj-link--contextual`. Links are all
  underlined except for link variant`contextual`
- Make link easier to interact with by adding some padding

###### [MODAL]

- Update `nj-modal`:
  - now uses the `nj-icon-button`
  - new html structure
  - remove old `.nj-close` icon, replace it with the new `nj-icon-button` with the `.nj-modal__close`

###### [NAVBAR]

- Remove all utils from `nj-navbar`, you know have to add classes `nj-navbar__search-input` on search input
  and `nj-navbar__search-button` on search button

###### [PAGINATION]

- `nj-pagination` : remove `.nj-pagination__link--next`, `.nj-pagination__link--prev`, `.nj-pagination__link__nav` class
  it should be replaced by an `nj-icon-btn`

###### [SPINNER]

- `nj-spinner`
  - `light` variant has been renamed `inverse` icon
  - `gray` variant has been renamed `grey` icon

###### [TAB]

- [A11Y] add `aria-label` on tablist element and `tabindex` and `role` on tabpanel elements

###### [TAG]

- Update `nj-tag` with new UI:
  - Replace `nj-tag__icon` with component `nj-icon-btn` with class `nj-tag__close`
  - Class `nj-tag__icon` is now set to the tag's icon
  - Variants have been replaced with new colors, here are the new tokens:

    ```
      .nj-tag (grey default),
      .nj-tag--brand,
      .nj-tag--teal,
      .nj-tag--pink,
      .nj-tag--orange,
      .nj-tag--red,
      .nj-tag--green,
      .nj-tag--blue,
      .nj-tag--ultramarine,
      .nj-tag--yellow,
      .nj-tag--purple
      .nj-tag--lime
    ```

  - All tags are now filled, remove classes `.nj-tag--filled-VARIANT`
  - Remove margin on tags

- [A11Y] change structure of `nj-tag` and order of its children

###### [TOGGLE]

- `nj-toggle` minor changes: animation
- Rename toggle icon class `.nj-toggle__icon-dm` to `.nj-toggle__icon`
- To correctly disable a `nj-toggle` you will need to add class `.nj-toggle--disabled` in addition of having property
  on child input

### 🐛 Fixed

###### [AVATAR]

- [A11Y] Add text alternatives to `nj-avatar` (user name, status, number of notifications)

###### [AVATAR LIST]

- [A11Y] Make avatar list "show more" a `button`

###### [BUTTON]

- Fix button disabled state not applied on click

###### [CHECKBOX]

- [A11Y] Add `aria-invalid` and `aria-describedby` when needed on `nj-checkbox` to link error messages

###### [MODAL]

- [A11Y] Fix `nj-modal` focus management (trap focus inside the modal and refocus trigger element when the modal is
  closed)

###### [PAGINATION]

- [A11Y] Fix semantic of `nj-pagination` and display focus ring on active item

###### [PROGRESS]

- update `nj-progress` markup to include accessible label

###### [RADIO]

- [A11Y] Update markup structure of `nj-radio-group` with `fieldset`, `legend` and `span` for error message if needed
- [A11Y] Link label and input with `for` and `id` attributes on `nj-radio`

###### [TAB]

- [A11Y] Fix keyboard events and semantic on `nj-tab`

###### [TAG]

- [A11Y] Fix keyboard events and semantic on `nj-tab`

###### [TOGGLE]

- [A11Y] Link label to input in `nj-toggle`, add `switch` role and better handle icons.

###### [TOOLTIP]

- [A11Y] Describe `nj-tooltip` host element with `aria-describedby`

### 👎 Deprecated

###### [REBOOT.CSS]

- Deprecate `reboot.css`,reboot imported tokens and added a cleanslate for css. You should now import tokens as shown in
  the `README.md` Unfortunately this is not a good practice for a component library. In our case some of our components
  were relying on some global styles when each component should be responsible for its own styles. It can also cause
  some website to have some side effects when importing `reboot.css` in order for fluid components to work properly.
  From now on components rely on their own styles and `reboot.css` is removed from this package and moving it to
  package `@engie-group/fluid-4-deprecated` in case you website was relying on some rules present in `reboot.css`, you
  should import if from `@engie-group/fluid-4-deprecated` or replace the rules in your styles. We are also adding an
  optional `base.css` file that you can import and which sets the correct font-family and color to the html and body

###### [ALERT]

- `nj-alert` is deprecated. You should use `nj-inline-message` or `nj-toast` instead

###### [FORMS]

- All underlined forms are deprecated, you should use new `nj-form-item`

###### [SWITCH]

- `nj-switch` is deprecated. You should use `nj-segmented-control` instead

###### [UTILS]

- Deprecate component `utils`, utils will no longer be maintained and are available in
  package `@engie-group/fluid-4-deprecated`
  - Remove deprecated `globals` from `globals/scss`, move them to `@engie-group/fluid-4-deprecated` and replace all
    usages in code with tokens from `@engie-group/fluid-design-tokens`
    - Remove `_color-dark.scss`
    - Remove `_spacing.scss`
    - Remove `_typography.scss`
    - Remove `_motion.scss`
    - Remove `_colors.scss`
    - Remove unused utils from `_util.scss`
  - Remove `tokens/color.scss`

### ❌ Removed

##### ⚠️ Breaking changes

###### [GLOBAL]

- remove webComponent initialization

###### [REBOOT.CSS]

- Reboot.css has been moved to another package
- remove `<a>` styles from `reboot.css`

###### [AVATAR]

-`nj-avatar`:

- Remove `nj-avatar--xs` size
- Remove right margin on `avatar`

###### [BADGE]

- `nj-badge`: remove color variants
- Remove right margin on not only child `nj-badge`

###### [BUTTON]

- remove classes `.nj-btn--outline`, `.nj-btn--ghost`,`.nj-btn--warning`, `.nj-btn--success`
  , `.nj-btn--error`, `.nj-btn--block`, `.nj-btn--alone`, `.nj-btn--icon-before` and `.nj-btn--icon-after` (It is
  recommended to place icons
  before text)

###### [CHECKBOX]

- `nj-checkbox`: remove variants `.has-warning` and `.has-success`

###### [FAB]

- Remove variants `.nj-fab--success` and `.nj-fab--warning`, `.nj-fab--danger`

###### [RADIO]

- `nj-radio` Remove variants `.has-warning` and `.has-success`
- ⚠️ Breaking changes `nj-radio`: remove variants `.has-warning` and `.has-success`
- ⚠️ Breaking changes `nj-toggle` :
  - Rename toggle icon class `.nj-toggle__icon-dm` to `.nj-toggle__icon`
  - Remove possibility to have one label before and one after the toggle. Toggles now only have one label which is
    placed after the toggle
  - To correctly disable a `nj-toggle` you will need to add class `.nj-toggle--disabled` in addition of having
    property
    on child input

###### [TOGGLE]

- `nj-toggle` theme colors removed (`nj-toggle--primary`, `nj-toggle--success`, `nj-toggle--warning`
  , `nj-toggle--danger`, `nj-toggle--light`)
- `nj-toggle` deprecation of the utility classes (`mr-1`, `ml-1`) on label. Replaced with flex and gap behaviour.
- Remove possibility to have one label before and one after the toggle. Toggles now only have one label which is
  placed after the toggle

## 📦 v5.0.0 FOR THOSE MOVING FROM RC2 - 2023-03-02

### 🚀 Added

- Added single component export in Javascript, we now have two ways to import

```javascript
// ====>  Present before
import NJ from '@engie-group/fluid-design-system';

// If we want to use Alert for e.g
NJ.Alert.init();

// ====> Added
import { Alert } from '@engie-group/fluid-design-system';

// If we want to use Alert for e.g
Alert.init();
```

- [A11Y] `nj-form-item` Warning icon is now added on subscript labels for forms in error state

### 🖍 Changed

- Remove focus ring on all elements on click since accessibility guidelines requires it only on keyboard navigation
- Disabled elements now use opacity instead of specific disabled colors
- Apply new transparent tokens for components needing transparency
  E.g: icon-button, button etc..
- Apply radius tokens to all components
- Make link easier to interact with by adding some padding
- Always display all options when not filtering field in `nj-autocomplete-input`

##### ⚠️ Breaking changes

- When installing the package via npm or importing it via CDN we recommend fixing the version with the exact package
  version to avoid breaking change affecting your live website. With never-ending topics like Accessibility and BRAND
  GUIDELINES we also have to include some minor breaking changes in some minor versions
- `nj-card` image `nj-card__img` should now be wrapped in div `nj-card__img-wrapper`
- `nj-avatar` with pictures should now have modifier `.nj-avatar--picture` like so

```html
<a href="#" class="nj-avatar nj-avatar--picture">
  <img class="nj-avatar__picture" src="source" alt="Customer" />
</a>
```

- `nj-bullet` doesn't take same variants as before,

```html
Before:

<div class="nj-bullet nj-bullet--white"></div>
<div class="nj-bullet nj-bullet--blue-corporate"></div>
<div class="nj-bullet nj-bullet--blue-allports"></div>
<div class="nj-bullet nj-bullet--blue-venice"></div>
<div class="nj-bullet nj-bullet--green-java"></div>
<div class="nj-bullet nj-bullet--green-pine"></div>
<div class="nj-bullet nj-bullet--green"></div>
<div class="nj-bullet nj-bullet--orange-crusta"></div>
<div class="nj-bullet nj-bullet--orange"></div>
<div class="nj-bullet nj-bullet--red-mandy"></div>
<div class="nj-bullet nj-bullet--red"></div>
<div class="nj-bullet nj-bullet--blue-bigstone"></div>
<div class="nj-bullet nj-bullet--blue-rhino"></div>
<div class="nj-bullet nj-bullet--green-fun"></div>
<div class="nj-bullet nj-bullet--green-riogrande"></div>
<div class="nj-bullet nj-bullet--yellow"></div>
<div class="nj-bullet nj-bullet--yellow-bright-sun"></div>
<div class="nj-bullet nj-bullet--purple"></div>
<div class="nj-bullet nj-bullet--violet"></div>
<div class="nj-bullet nj-bullet--violet-eggplant"></div>
<div class="nj-bullet nj-bullet--cerise"></div>

After :

<div class="nj-bullet nj-bullet--brand"></div>
<div class="nj-bullet nj-bullet--teal"></div>
<div class="nj-bullet nj-bullet--pink"></div>
<div class="nj-bullet nj-bullet--orange"></div>
<div class="nj-bullet nj-bullet--red"></div>
<div class="nj-bullet nj-bullet--green"></div>
<div class="nj-bullet nj-bullet--ultramarine"></div>
<div class="nj-bullet nj-bullet--yellow"></div>
<div class="nj-bullet nj-bullet--purple"></div>
<div class="nj-bullet nj-bullet--blue"></div>
<div class="nj-bullet nj-bullet--lime"></div>
```

- Deprecate component `utils`, utils will no longer be maintained and are available in
  package `@engie-group/fluid-4-deprecated`
- Deprecate `reboot.css`,reboot imported tokens and added a cleanslate for css. You should now import tokens as shown in
  the `README.md` Unfortunately this is not a good practice for a component library. In our case some of our components
  were relying on some global styles when each component should be responsible for its own styles. It can also cause
  some website to have some side effects when importing `reboot.css` in order for fluid components to work properly.
  From now on components rely on their own styles and `reboot.css` is removed from this package and moving it to
  package `@engie-group/fluid-4-deprecated` in case you website was relying on some rules present in `reboot.css`, you
  should import if from `@engie-group/fluid-4-deprecated` or replace the rules in your styles. We are also adding an
  optional `base.css` file that you can import and which sets the correct font-family and color to the html and body
- Rename `v5-autocomplete` to `autocomplete-input`
- Rename `v5-select` to `select-input`
- Remove deprecated `globals` from `globals/scss`, move them to `@engie-group/fluid-4-deprecated` and replace all usages
  in code with tokens from `@engie-group/fluid-design-tokens`
  - Remove `_color-dark.scss`
  - Remove `_spacing.scss`
  - Remove `_typography.scss`
  - Remove `_motion.scss`
  - Remove `_colors.scss`
  - Remove unused utils from `_util.scss`
- Remove `tokens/color.scss`
- Remove all utils from `nj-navbar`, you know have to add classes `nj-navbar__search-input` on search input
  and `nj-navbar__search-button` on search button
- Remove all utils from `nj-footer`,

Before:

```html
<div class="row mt-5 mb-3">
  <div class="col-sm-6 col-md mb-3 mb-md-0">
    <h2 class="nj-footer__links-list-title">Title 1</h2>
    <ul class="list-unstyled">
      <li><a href="#" class="nj-link nj-link--contextual">Link 1</a></li>
      <li><a href="#" class="nj-link nj-link--contextual">Link 2</a></li>
      <li><a href="#" class="nj-link nj-link--contextual">Link 3</a></li>
    </ul>
  </div>
  <div class="col-sm-6 col-md mb-3 mb-md-0">
    <h2 class="nj-footer__links-list-title">Title 2</h2>
    <ul class="list-unstyled">
      <li><a href="#" class="nj-link nj-link--contextual">Link 1</a></li>
      <li><a href="#" class="nj-link nj-link--contextual">Link 2</a></li>
      <li><a href="#" class="nj-link nj-link--contextual">Link 3</a></li>
    </ul>
  </div>
  <div class="col-sm-12 col-md">
    <h2 class="nj-footer__links-list-title">Title 3</h2>
    <ul class="list-unstyled">
      <li><a href="#" class="nj-link nj-link--contextual">Link 1</a></li>
      <li><a href="#" class="nj-link nj-link--contextual">Link 2</a></li>
      <li><a href="#" class="nj-link nj-link--contextual">Link 3</a></li>
    </ul>
  </div>
</div>
```

After:

```html
<div class="nj-footer__menu">
  <div class="nj-footer__menu-section">
    <h2 class="nj-footer__links-list-title">Title 1</h2>
    <ul class="nj-footer__links-list">
      <li><a href="#" class="nj-link nj-link--contextual">Link 1</a></li>
      <li><a href="#" class="nj-link nj-link--contextual">Link 2</a></li>
      <li><a href="#" class="nj-link nj-link--contextual">Link 3</a></li>
    </ul>
  </div>
  <div class="nj-footer__menu-section">
    <h2 class="nj-footer__links-list-title">Title 2</h2>
    <ul class="nj-footer__links-list">
      <li><a href="#" class="nj-link nj-link--contextual">Link 1</a></li>
      <li><a href="#" class="nj-link nj-link--contextual">Link 2</a></li>
      <li><a href="#" class="nj-link nj-link--contextual">Link 3</a></li>
    </ul>
  </div>
  <div class="nj-footer__menu-section">
    <h2 class="nj-footer__links-list-title">Title 3</h2>
    <ul class="nj-footer__links-list">
      <li><a href="#" class="nj-link nj-link--contextual">Link 1</a></li>
      <li><a href="#" class="nj-link nj-link--contextual">Link 2</a></li>
      <li><a href="#" class="nj-link nj-link--contextual">Link 3</a></li>
    </ul>
  </div>
</div>
```

- Remove all utils from `nj-header`, you know have to add classes `nj-header__search-input` on search input
  and `nj-header__search-button` on search button as well as `nj-header__sub-nav` instead of `list-unstyled`

### 🐛 Fixed

- Fix issue where checkbox without label doesn't have correct
  outline [#731](https://github.com/FluidDesignSystem/fluid-design-system/issues/731)
- Fix segmented control not having correct active background positionner whene first element is selected
- Fix missing export of Segmented Control in `fluid-design-system.ts`
- [A11Y] Remove `aria-label` on close button in `nj-modal`
- [A11Y] Use semantic `<p>` tags for hidden content in `nj-avatar`
- [A11Y] Make ellipsis icon accessible in `nj-pagination`
- [A11Y] Add space before external notice in `nj-link`
- [A11Y] Add labels to buttons in icon-only version of `nj-segmented-control`
- Fix issue on cards
  cover [#735](https://github.com/FluidDesignSystem/fluid-design-system/issues/735)
- [A11Y] Add `required` attribute on fields in `nj-form`
- [A11Y] Separators don't use `content` CSS property anymore in `nj-breadcrumb`
- [A11Y] Use `span` for `nj-spinner` when inside a button
- [A11Y] Improve `nj-card` stories markup: empty `alt` on decorative images, remove unnecessary `role` attributes and
  use semantic `p` tags for content.
- Display option's label instead of value inside input in `nj-custom-select`
- [A11Y] Improve accessibility of `nj-autocomplete-input`

### 🖍 Changed

- ⚠️Breaking change `icon-engie`:
  - Change `nj-icon` default color from Engie's gradient to ultramarine-900
  - Change `nj-icon--blue-corporate` name to `nj-icon--brand`
  - Change `nj-icon--white` name to `nj-icon--inverse`

## 📦 v5.0.0-rc.2 - 2022-12-08

### 🚀 Added

- Add size `inherit` for icon that inherit font-size from parent
- Add options and improve `nj-list`
  - Add new `nj-list-group__item--right-border` modifier to display the hover/active border of a list item on the
    right
  - Add new `nj-list-group__item-right-content`class to display an element on the right side of the list item (icon,
    badge, link, ...)
  - Add new border animation
- Add class `nj-toggle--inherit` to make toggle label color inherit from parent, fixes
  issue [#688](<https://github.com/FluidDesignSystem/fluid-design-system/issues/688>
- Add new `onchange` event on `nj-autocomplete` and return an object containing name and
  value: `{ name: string, value: string }`
- [A11Y] Add `data-*` attributes on `nj-form-item--password` for visibility button label and notice
- [A11Y] Dynamically toggle visibility button label and `aria-pressed` attribute and live region message

### 🖍 Changed

- Fix card cover overlay width
- Update `list` item icon color based on state (neutral -> gray, hover | active -> brand)
- [A11Y] Required form items asterisk are not handle by CSS anymore. It should be added inside the label
- [A11Y] Change `nj-badge` semantic from `div` to `p`
- [A11Y] Use `nj-icon-btn` for password button and add live region notice in `nj-form-item--password`
- [A11Y] Remove unnecessary `tabindex` on `nj-segmented-control` buttons and force visible focus

##### ⚠️ Breaking changes

- ⚠️Breaking change `icon`:
  - `.material-icons` now inherits color by default
  - Removed material icon `link` usage.
  - To use material icons variations, use the `nj-icon-material` class and its modifiers:
    - `md--{color}` is now `nj-icon-material--{color}`
      - ⚠️Breaking change: reworked colors: primary (grey-800), inverse (grey-0), brand (ex blue-corporate), grey,
        teal,
        pink, orange, red, green, ultramarine, yellow, purple,
    - `md--{size}` is now `nj-icon-material--{size}`
- ⚠️Breaking change: icons used in the `list` now need the `nj-list-group__item-icon` class to behave with the right
  color.
- [A11Y] ⚠️Breaking change: add `aria-label` on tablist element and `tabindex` and `role` on tabpanel elements
- [A11Y] ⚠️Breaking change: change structure of `nj-tag` and order of its children

### 🐛 Fixed

- [A11Y] Add `aria-invalid` and `aria-describedby` when needed on `select` element in `nj-form-item` and `id` on
  error/hint messages
- [A11Y] Add `aria-invalid` and `aria-describedby` when needed on `nj-checkbox` to link error messages
- [A11Y] Add `aria-expanded` to `nj-fab` and accessibly hide sub buttons when menu is closed
- [A11Y] Fix `nj-status-indicator` semantic structure
- [A11Y] Link label to input in `nj-toggle`, add `switch` role and better handle icons.
- [A11Y] Fix `nj-modal` focus management (trap focus inside the modal and refocus trigger element when the modal is
  closed)
- [A11Y] Link label and input with `for` and `id` attributes on `nj-radio`
- [A11Y] Update markup structure of `nj-radio-group` with `fieldset`, `legend` and `span` for error message if needed
- [A11Y] Add text alternatives to `nj-avatar` (user name, status, number of notifications)
- [A11Y] Make avatar list "show more" a `button`
- [A11Y] Fix semantic of `nj-pagination` and display focus ring on active item
- [A11Y] Fix semantic in `nj-footer` with `contentinfo` role for wrapper element, `p` tag for slogan and `h2` tag for
  headings
- [A11Y] Add `aria-live` and `aria-atomic` to `nj-spinner` wrapper element and update semantic of inner element
- [A11Y] Change DOM order and add description to close button in `nj-toast` and make `nj-toast-container` a live region
- [A11Y] Fix keyboard events and semantic on `nj-tab`
- [A11Y] Fix `nj-tag` semantic structure
- [A11Y] Describe `nj-tooltip` host element with `aria-describedby`
- [A11Y] ⚠️Breaking change: fix `nj-autocomplete` semantic structure and keyboard navigation.

##### ⚠️ Breaking changes

- [A11Y] ⚠️Breaking change: update `nj-progress` markup to include accessible label
- [A11Y] ⚠️Breaking change: fix `nj-custom-select` semantic structure and keyboard navigation.

## 📦 v5.0.0-rc.1 - 2022-10-18

### 🚀 Added

- Add new status `info` `.nj-status-indicator--info` for `.nj-status-indicator`
- Add new component `nj-inline-message`
- Add variant `inverse` `.nj-link--inverse` and `high-contrast` `.nj-link--high-contrast` to `nj-link`
- Add new size `xxs` for `nj-spinner`
- Add new components `nj-segmented-control` and `nj-segmented-control-btn`
- Add new `density` to `nj-tabs`

### 🖍 Changed

- Use new spacing tokens
- Update `nj-modal`:
  - new color tokens
  - now uses the `nj-icon-button`
  - new html structure
  - ⚠️Breaking change: remove old `.nj-close` icon, replace it with the new `nj-icon-button` with
    the `.nj-modal__close`
    div
- Update `nj-tag` with new UI:
  - Add possibility to pass icon to tag
  - Add different sizes `sm, md(default), lg`
  - Replace `nj-tag__icon` with button icon with class `nj-tag__close`
  - Class `nj-tag__icon` is now set to the tag icon
  - Variants have been replaced with new colors, here are the new tokens:

    ```
      .nj-tag (grey default),
      .nj-tag--brand,
      .nj-tag--teal,
      .nj-tag--pink,
      .nj-tag--orange,
      .nj-tag--red,
      .nj-tag--green,
      .nj-tag--ultramarine,
      .nj-tag--yellow,
      .nj-tag--purple
    ```

  - All tags are now filled, remove classes `.nj-tag--filled-VARIANT`
  - Remove margin on tags

- Update `nj-progress`
  - v5 color tokens
  - Add the `nj-progress--has-transition` modifier
- Update `nj-card` with new colors and ui
- Update `nj-spinner`:
  - new color tokens
  - ⚠️Breaking change:
    - `light` variant has been renamed `inverse` icon
    - `gray` variant has been renamed `grey` icon
- Update `nj-tabs` with new colors and ui
- Update `nj-footer` with new colors and ui
- Update `nj-header` with new background colors
- Update `nj-table` with new colors
- Update `nj-pagination` with new colors and ui
- Update `nj-fab` with new colors and ui
- Update `nj-slider` with new colors and ui
- Update `nj-sidebar` with new color tokens
- Update `nj-navbar` with new color tokens

### 👎 Deprecated

- ⚠️Deprecation: `nj-switch` is deprecated. You should use `nj-segmentedControl` instead

### ❌ Removed

- ⚠️Breaking changes: remove `nj-progress` color variants classes
- ⚠️Breaking changes: remove `<a>` styles from `reboot.css`
- ⚠️Breaking changes `nj-footer` : remove `.nj-footer__link` class it should be replaced
  by `nj-link nj-link--contextual`
- ⚠️Breaking changes `nj-pagination` :
  remove `.nj-pagination__link--next`, `.nj-pagination__link--prev`, `.nj-pagination__link__nav` class it should be
  replaced by an `nj-icon-btn`
- ⚠️ Breaking changes `nj-fab`: remove variants `.nj-fab--success` and `.nj-fab--warning`, `.nj-fab--danger`

## 📦 v5.0.0-beta.1 - 2022-09-30

### 🚀 Added

- Add new buttons
  - Buttons have now 4 variants: `primary` (default), `secondary`, `destructive` (previously danger) and `inverse`.
    For
    each variant it is possible to have 3 alternate buttons `bold` (default), `subtle` (previously outline)
    and `minimal` (previously ghost)
- Add icon button
- Add new `nj-avatar--xl` size and `nj-avatar--initials`, `nj-avatar--picture` modifiers
- Add new `.nj-checkbox--no-animation` class to `.nj-checkbox` to toggle animation on and off
- Add new variant `.nj-tooltip--inverse` for `.nj-tooltip` usable by adding attribute `data-variant='inverse'`

### 🖍 Changed

- Update `nj-avatar` :
  -### -� Changed
  - Update html structure (see below the removed section - avatar breaking changes)
  - To pass an image, add `<img class="nj-avatar__picture" src="">`

- Update `nj-status-indicator` color tokens
- Update `nj-toast` color tokens
- Apply new tokens to reboot.scss and remove some resets for links
- Apply new color tokens and refresh UI for `nj-link` and `nj-breadcrumb`
- Rename `nj-toast--white` to `nj-toast--inverse`
- Update `nj-checkbox` with new color tokens
- Update `nj-radio` with new color tokens
- Update `nj-toggle` with new color tokens
- Update `nj-tooltip` with new color tokens

### ❌ Removed

- ⚠️ Breaking changes remove classes `.nj-btn--outline`, `.nj-btn--ghost`,`.nj-btn--warning`, `.nj-btn--success`
  , `.nj-btn--error`, `.nj-btn--block`, `.nj-btn--alone`, `.nj-btn--icon-before` and `.nj-btn--icon-after` (It is
  recommended to place icons
  before text)
- ⚠️ Breaking changes `nj-link` rename class `.nj-link--no-text-decoration` to `.nj-link--contextual`. Links are all
  underlined except for link variant`contextual`
- ⚠️ Breaking changes `nj-badge`: remove color variants
- ⚠️ Breaking changes `nj-avatar`:
  - Remove `nj-avatar--xs` size
  - Remove class `nj-avatar__initials` (replaced by the `nj-avatar--initials` modifier)
  - Remove the `<div class="nj-avatar__picture">` and `<div class="nj-avatar__initials">` elements from the structure
    to
    simplify it
- ⚠️ Breaking changes `nj-checkbox`: remove variants `.has-warning` and `.has-success`
- ⚠️ Breaking changes `nj-radio`: remove variants `.has-warning` and `.has-success`
- ⚠️ Breaking changes `nj-toggle` :
  - Rename toggle icon class `.nj-toggle__icon-dm` to `.nj-toggle__icon`
  - Remove possibility to have one label before and one after the toggle. Toggles now only have one label which is
    placed after the toggle
  - To correctly disable a `nj-toggle` you will need to add class `.nj-toggle--disabled` in addition of having
    property
    on child input

## 📦 v5.0.0-beta.0 - 2022-09-13

### 🚀 Added

- Add new `nj-avatar-group` density (compact)
- Add new `nj-status-indicator` component (in replacement of `bullet`)

### 🖍 Changed

- Apply new color tokens and refresh UI for `nj-form-item` and `nj-list`
- Replace `nj-bullet` by `nj-status-indicator` in the `nj-avatar` component
- Replace all radius to use tokens and be compliant with new UI guidelines
- Replace all colors to use new primary
- Replace $spacer sass variable with css variables

### ❌ Removed

- Remove right margin on `avatar`
- Remove right margin on not only child `nj-badge`
- ⚠️ Breaking changes remove utils classes `.rounded`
  - Remove classes:
    `.rounded`, `.rounded--sm`, `.rounded--lg`, `.rounded-top`, `.rounded-bottom`, `.rounded-left`, `.rounded-right`
- ⚠️ Breaking changes remove variants from link `.nj-link`
  - Remove classes:
    `.nj-link--primary`,`.nj-link--success`,`.nj-link--danger`,`.nj-link--warning`, `.nj-link--light`

## 📦 v5.0.0-alpha.5 - 2022-08-03

### 🚀 Added

- Add toast scss import to `fluid-design-system.scss`
- Add highlight css class

### 🖍 Changed

- Update sass and fix breaking changes accordingly
- Update dependencies to work with Node latest LTS v16.16 and npm 8.15
- Update form-item to support custom list appended anywhere on the dom

### 🐛 Fixed

- Fix floating form labels being misplaced
- Fix deprecated select css overriding all selects
- Fix deprecated textarea default selector to only select `textarea` with `.nj-form-control` class as
  follows `textarea.nj-form-control`

## 📦 v5.0.0-alpha.4 - 2022-07-19

### 🚀 Added

- Add new `nj-toast`
- Add new `nj-toast__container` (default with a 480px width and its full-width variation)
- Add new `nj-link--md`
- Add new autocomplete

### 🖍 Changed

- `nj-link` now inherits its parent font-size
- `btn--lg` is now applying `var(--nj-font-weight-bold)`
- Change CSS variables naming conventions from `--var-margin` and `--var-padding` to `--var-mar` and `--var-pad` for all
  components

## 📦 v4.10.1 - 2022-07-06

### 🚀 Added

- New Nuclear icon

## 📦 v5.0.0-alpha.3 - 2022-05-17

### 🚀 Added

- Add new select with native and custom variants

### 🖍 Changed

- Rename form-control folder and class to form-item
- `nj-toggle` new size: `nj-toggle--lg`
- `nj-toggle` minor changes: animation

### ❌ Removed

- ⚠️ Breaking changes `nj-toggle`
  - `nj-toggle` theme colors removed (`nj-toggle--primary`, `nj-toggle--success`, `nj-toggle--warning`
    , `nj-toggle--danger`, `nj-toggle--light`)
  - `nj-toggle` deprecation of the utility classes (`mr-1`, `ml-1`) on label. Replaced with flex and gap behaviour.

## 📦 v4.10.0 - 2022-05-16

### 🖍 Changed

- Remove class `.nj-radio--inline`, `.nj-radio-group` now handles display of radios, it is by default set to column you
  can toggle row display by adding class `.nj-radio-group--row`
- Remove margin from `.nj-radio` spacing is now handled by parent class `.nj-radio-group`

### 🐛 Fixed

- Fix radio not working properly with custom content
- Fix radio focus not showing

## 📦 v5.0.0-alpha.2 - 2022-04-22

### 🐛 Fixed

- Add dark theme for ghost button for button
- Set correct font-size and line-height for form-item

## 📦 v5.0.0-alpha.1 - 2022-04-15

### 🚀 Added

- Add new `nj-form-item`
- Add new `password` component

### 🐛 Fixed

- Fix button disabled state not applied on click

## 📦 v4.9.1 - 2022-04-15

### 🐛 Fixed

- Changed Badge margins to be used only when multiple badges are used together

## 📦 v4.9.0 - 2022-02-25

### 🐛 Fixed

- Fix checkbox styles not allowing custom content as label
- Add z-index property on the Autocomplete component

### 🖍 Changed

- Add support for fab menu with size sm fab
- Add `data-appendTo` option to modal to allow rendering the modal in another element. `data-appendTo` takes a string
  value which is a selector.

Ex:

```html
<div class="nj-modal fade" tabindex="-1" id="exampleModalAppendTo" role="dialog" data-appendTo="body"></div>
```

## 📦 v4.8.1 - 2022-02-16

### 🐛 Fixed

- Fix issue [#523](https://github.com/FluidDesignSystem/fluid-design-system/issues/523),
  add robustness to modal methods by checking if element is defined before doing any action

## 📦 v5.0.0-alpha.0 - 2022-02-04

- Update button
  ⚠️ Breaking changes
  - `light` variant (`.nj-btn--light` `.nj-btn--ouline-light`) has been removed and is now replaced
    by `.nj-btn--inverse` class
  - `.nj-btn--tertiary` has been renamed `.nj-btn--ghost`
  - Variants are now `danger`, `warning`, `success`. `light` and `primary` are deprecated, `primary` being now default
  - Variants have now classes of their own `nj-btn--danger`, `nj-btn--warning` and `nj-btn--success` and can be set
    for
    default and outline buttons only
    ex: `.nj-btn nj-btn--danger`, `.nj-btn-outline nj-btn--danger`
- remove webComponent initialization
- replace web-animation-js dependency for global file
- lib/auto-init is included to lib/fluid-design-system.js
- lib/fluid-design-system.js automatically initiate components

## 📦 v4.8.0 - 2022-02-03

### 🚀 Changed

- Breadcrumb update

## 📦 v4.7.0 - 2021-12-16

### 🐛 Fixed

- Input in error keep the border colored focused or not

### 🚀 Added

- Bullet component
- Add a parameter data-close-on-link-click="true" in Header component to close the menu after clicking a nav-link or
  menu-link
- Fire events: show, shown, hide, hidden for modal. Can be used like this: EVENT_NAME.nj.modal

```typescript
document.querySelector('exampleModal').addEventListener('shown.nj.modal', () => {
  console.log('shown');
});
```

### 🖍 Changed

- Rework modal component : confirmation modal and information modal, modified padding
- Avatar update : new size (xs) and integration with badge and bullet components, avatar group basic layout
- Build: Fix linting scripts not working on windows
- Update to webpack 5 and Typescipt 4
- Update link component and add new options
- Badge update

## 📦 v4.6.3 - 2021-10-05

### 🚀 Added

- Fix packages version
- Fix issue with abstract forms accessing undefined element

## 📦 v4.6.2 - 2021-09-01

### 🚀 Added

- Tag differentiate close adding closeAndDestroy

### 🖍 Changed

- Alert close and closeAndDestroy function

## 📦 v4.6.1 - 2021-07-12

### 🐛 Fixed

- Test snapshot persistence

## 📦 v4.6.0 - 2021-06-03

### 🚀 Added

- Button focus line update
- Tertiary button
- Icon link hover and active background

### 🖍 Changed

- Engie Icons update

### 🐛 Fixed

- Autocomplete dispose improvement
- Autocomplete add padding top for form-group
- Padding update for checkbox and radio

## 📦 v4.5.0 - 2021-05-04

### 🚀 Added

- classes for responsive font: t-base-sm t-tera-lg... t-{font-size}-{breakpoint}

### 🐛 Fixed

- svg color inside buttons

## 📦 v4.4.2 - 2021-04-08

### 🐛 Fixed

- Fix ts config to copy JS imports to lib-esm
- add animation.js ts module definition to lib

## 📦 v4.4.1 - 2021-04-02

### 🐛 Fixed

- Navbar javascript

## 📦 v4.4.0 - 2021-03-22

### 🚀 Added

- nj-radio-group\_\_row class
- auto-init.js do not need root id (but it still works)
- window.NJ.config.rootElementId global variable to configure auto-init root id
- Sidebar close on click out and escape
- Sidebar prop data-close-on-interact-out default to true

### 🐛 Fixed

- auto-init improvements
- data-toggle events duplication

## 📦 v4.3.3 - 2021-03-03

### 🐛 Fixed

- revert reboot token path

## 📦 v4.3.2 - 2021-03-01

### 🐛 Fixed

- reboot token path to avoid red underline
- material icons color to css var
- Tag dispose function
- header z-index and mobile bug

## 📦 v4.3.1 - 2021-02-15

### 🖍 Changed

- Modal css adjustments
- Modal has centered css modifier .nj-modal--vertical-centered

### 🐛 Fixed

- auto-init bug

## 📦 v4.3.0 - 2021-02-02

### 🚀 Added

- auto-init.js handles component destroy on removal
- Possible to add placeholder attribute with input label floating
- Components unit test available from tests folder

### 🐛 Fixed

- auto-init.js init all components including tooltips and bug
- Placeholder input focus color changed to `--nj-color-text-body`

## 📦 v4.2.2 - 2020-12-04

### 🚀 Changed

- Alert dispose function removes events

## 📦 v4.2.1 - 2020-11-10

### 🐛 Fixed

- Slider dispose function removes events
- Dropdown arrow visibility
- auto-init.js destroys components on remove

## 📦 v4.2.0 - 2020.11.10

### 🚀 Added

- new tokens: space, font weight, icon size, button height
- fluid-design-tokens package dependency

### 🖍 Changed

- `reboot.scss` import `tokens.scss` (sass) from fluid-design-tokens package
- css 4 variable `--nj-size-navbar-height*` renamed to `--nj-size-height-navbar-*`

### ❌ Removed

- remove `/tokens`folder

## 📦 v4.1.1 - 2020.11.03

### 🐛 Fixed

- Add Toggle disabled
- Navbar search focusing and closing
- Card Cover touch hover / link overlap

## 📦 v4.1.0 - 2020.10.19

### 🚀 Added

- Tab component

### 🐛 Fixed

- Fix underline effect on multiline for the link component
- Change `red-mandy`,`violet`, `violet-eggplant` color token value
- reset `a` tag outline to default behavior

## 📦 v4.0.3 - 2020.09.28

### 🐛 Fixed

- restore `a` tag outline focus for accessibility

## 📦 v4.0.2 - 2020.08.27

### 🐛 Fixed

- Change `yellow` and `yellow-bright-sun` color token value
- Fix auto init for autocomplete web component version 4.0.1

## 📦 v4.0.1 - 2020.08.13

### 🐛 Fixed

- add `tokens` folder to fluid node package

## 📦 v4.0.0 - 2020.08.12

### 🚀 Added

- add Old Browser Support build `lib/fluid-design-system-obs.js` to support IE11 browser
- Input autocomplete search and filter
- `reboot.scss` now import `tokens.css` variables instead of `_vars.scss`
- `Header` and `Sidebar` single component javascript
- add `auto-init.js`: automatic initialization of components regardless framework

### 🖍 Changed

- renamed global css4 variables to CTI
  tokens [See our dedicated page](https://www.engie.design/fluid-design-system/getting-started/dev-lib-migration/)
- `_vars.scss` does not exist anymore, replaced by `tokens.css`

### 🐛 Fixed

- Slider float value create a gap between track line and track point

## 📦 v4.0.0-beta.3 - 2020.07.30

### 🚀 Added

- Input autocomplete search and filter

### 🖍 Changed

- Prefix all css4 variables with `nj`
- Renamed global variables from css4 to css4
  token [See our dedicated page](https://www.engie.design/fluid-design-system/getting-started/dev-lib-migration/)

### ❌ Removed

- `_shadow-dark.scss` `$shadows` `$shadows-X-dp`

### 🐛 Fixed

- Add missing `px` in shadows value for dark mode

## 📦 v4.0.0-beta.2 - 2020.06.30

### 🚀 Added

- `--disabled-background` variable
- Lib update: Form component offers access to its sub components PasswordInput, TextInput...

### 🖍 Changed

- Tag: Wired hover color
- Checkbox Radio Tag Disabled color
- move `$prefix: "nj"` variable from `_token.scss` to `_color.scss`
- remove `@nj-form-color` mixin third parameter
- renamed global variables from sass to css4:
  - `$zindex-dropdown` to `--zindex-dropdown`
  - `$zindex-sticky` to `--zindex-sticky`
  - `$zindex-fixed` to `--zindex-fixed`
  - `$zindex-modal-backdrop` to `--zindex-modal-backdrop`
  - `$zindex-modal` to `--zindex-modal`
  - `$zindex-popover` to `--zindex-popover`
  - `$zindex-tooltip` to `--zindex-tooltip`
  - `$border-width` to `--border-width`
  - `$border-radius` to `--border-radius`
  - `$navbar-height` to `--navbar-height`
  - `$navbar-height-sm` to `--navbar-height-sm`

### 🐛 Fixed

- Fab: dial light mode background color
- Slider: edge 18 now works properly light and dark

### ❌ Removed

- `_token.scss`
- Remove token global
  variables [See our dedicated page](https://www.engie.design/fluid-design-system/getting-started/dev-lib-migration/)

## 📦 v4.0.0-beta.1 - 2020.06.15

### 🚀 Added

- Header component

### 🖍 Changed

- Progress: Change css (no more before selector)

### 🐛 Fixed

- Sidebar: fix border disappears for non dark mode users

## 📦 v4.0.0-beta.0 - 2020.06.04

### 🚀 Added

- Add `--text-on-gradient-primary` variable
- Background color css util class
  _`.bg-gray-light`
  _`.bg-gray-dark`
- Text color css util class
  _`.text-on-x` (x=color name or theme name)
  _`.text-gray-light` \*`.text-gray-dark`
- Opacity of black
  `--black-400` and `$black-400`
  `--black-600` and `$black-600`
  `--black-700` and `$black-700`
  `--black-900` and `$black-800`
- Opacity of white
  `--white-200` and `$white-200`
  `--white-400` and `$white-400`
  `--white-600` and `$white-600`
  `--white-800` and `$white-800`
  `--white-900` and `$white-900`
- Toggle : A specific version for dark mode toggle has been added

### 🖍 Changed

- `--input-placeholder-color-hover` `--input-placeholder-color` color update
- disabled: udpate disabled color for light and dark
- Card: update .nj-card--border with gradient border of 7 pixels height
- Tag: update cross color for dark and light and remove unnecessary background
- Toggle: New design and css, no more JS.
- Add `vars.scss` variables: `--color-gradient-primary`

### ❌ Removed

- Material icons: remove opacity on white version

### 🐛 Fixed

- Card cover: fix arrow color
- Button: fix icon color on button with icon only

## 📦 v4.0.0-alpha.0 - 2020.05.15

### 🚀 Added

We introduce CSS4 variables and a specific attribute to handle the dark mode.

- Add `data-theme="dark"` to use on the body tag, or on a parent tag to switch to the css4 dark variables
- Add `color-dark.scss` for the dark palette color
- Add `vars.scss` containing all css4 variables and tokens
  - `--body-text-color`
  - `--body-text-color-inverted`
  - `--body-background-color`
  - `--text-on-background`
  - `--text-on-light`
  - `--text-on-x` (x=color name or theme name)
  - `--components-background-color`
  - `--components-background-color-active`
  - `--label-color`
  - `--label-color-focus`
  - `--label-color-inner-focus`
  - `--input-border-color`
  - `--input-border-color-disabled`
  - `--input-placeholder-color`
  - `--input-placeholder-color-hover`
  - `--input-placeholder-color-focus`
  - `--input-placeholder-color-disabled`
  - `--input-icon-color`
  - `--hr-color`
  - `--text-on-disabled`
  - `--disabled-color`
  - `--modal-backdrop-color`
- Add alpha black & white variables `--black-x` and `--white-x` (x=100-900)
- Fab, DropDown, Checkbox, Modal, Slider, List, Form, NavBar, Button, SideBar, Footer: add local dark mode css variable
- New lib build to endorse browser requirement
- New lib-esm modules installation needed web-animations-js
- add classes undependable from dark/light mode
  _`.text-gray-light-x` (x=100-900)
  _`.text-gray-dark-x`
  _`.bg-gray-dark-x`
  _`.bg-gray-light-x`
- Background color css util class `.bg-primary` `.bg-success` `.bg-warning` `.bg-light`
- Text color css util class `.text-primary` `.text-success` `.text-warning` `.text-light`
  and `.text-on-primary` `.text-on-success` `.text-on-warning` `.text-on-light`

### 🖍 Changed

Components are now using CSS4 variables while it is necessary for the dark mode. Classes color react to dark mode:
background utils, text utils.

- Alert: remove round border and reset color toggle for cross
- Avatar: corrections to comply with guidelines
- Badges: add black border, resolve font color problem
- Breadcrumb: remove transition when switching to dark mode
- Card: update title and paragraph color
- Tag: fix style and conform to guidelines

### ❌ Removed

- List of SCSS variables removed
  - `$white-corporate`
  - `$dark`
  - `$caret-with`
- Remove yiq function for Badge and Tag components
- Navbar: remove the blue version
- Tooltip: remove `$tooltip-bg` and `$tooltip-arrow-color`
- Switch: remove `$switch-slider-bg` `$switch-slider-bg-disabled` `$switch-checked-part-color`

### 🐛 Fixed

- fix browser requirement version

## 📦 v3.4.0 - 2020.04.23

### 🚀 Added

- New component: Stamp (Act with ENGIE)
- Button: you can add an icon before the text now
- Fluid icons: new white and blue-corporate color variation
- Pagination: add `.nj-pagination__link--prev` and `.nj-pagination__link--next` css class on previous and next link
- Tag: add a new filled version
- Spinner: new gray color variation
- Css util class `.bg-gray-x` (x=100-900) is now available

### 🖍 Changed

- Avatar: add status, change colors of default avatar, better badge position
- Badge: add 1px white border
- Button:
  - Update size of buttons and font-size
  - Update `.nj-btn--outline-light` button hover and focus status
- Card: Two new versions
  - Horizontal card
  - Cover card
- Fluid icons: ENGIE gradient is now the default version
- **Footer has been refactored to match with engie.com**
- Pagination: no more background on previous and next items
- Sidebar: fix css selector when `nj-sidebar` tag is used
- Switch: update disabled background and color
- Tag: remove hover effect on a not clickable tag

### ❌ Removed

- **Divider component has been removed**
- Avatar: remove `.nj-avatar-bordered` and `.nj-avatar-bordered-x` class for color variation
- Components variation color won't use `blue-engie` anymore. **`blue-engie` should be only used for ENGIE logo**
- Several CSS classes have been automatically deleted due to the removal of `blue-engie` in the color palette
  - `.nj-avatar--bordered-blue-engie`
  - `.nj-badge--blue-engie`
  - `.md--blue-engie`
  - `.nj-progress--blue-engie`
  - `.nj-tag--blue-engie`
  - `.text-blue-engie`
  - `.bg-blue-engie`
- Fluid icons: remove border, circle and color variation

## 📦 3.3.2 - 2020.04.02

### 🐛 Fixed

- Fix npm package publication

## 📦 3.3.1 - 2020.04.02

### 🐛 Fixed

- Import sidebar component in fluid-design-system TS and SCSS file
- Minor the z-index of the sidebar component

## 📦 3.3.0 - 2020.03.30

### 🚀 Added

- New component: Sidebar

### 🖍 Changed

- Add 1px transparent to plain buttons to be vertically aligned with outline buttons

### ❌ Removed

- Remove margin top and bot on `.nj-list-group`

## 📦 3.2.0 - 2020.03.11

### 🚀 Added

- Icon has a new modifier `.nj-icon--gradient`

### 🖍 Changed

- The ENGIE gradient has an angle of 135 degree
- Alert has no more border-radius
- Button has no more border-radius
- Card has no more border-radius
- Dropdown has no more border-radius
- Modal has no more border-radius
- Pagination has no more border-radius
- Tooltip has no more border-radius

## 📦 3.1.0 - 2019.12.20

### 🚀 Added

- **Components can be dynamically injected into the DOM with Web Component approach, making it easier to use the library
  within popular frameworks and libraries, such as Angular, React or Vue.js**
- Share SCSS color variables with JavaScript (**Design Tokens**)

### 🐛 Fixed

- Compatibility with browsers that do not support the `:scope` CSS4 selector
- Remove background when form elements are focused
- [Dropdown] Missing `onchange` event to retrieve the selected value

## 📦 3.0.1 - 2019.12.13

### 🚀 Added

- ENGIE Design System website to the package metadata

### 🐛 Fixed

- [Toggle] Wrong css property value (uncompiled SASS function)

## 📦 3.0.0 - 2019.12.04

### 🐛 Fixed

- The components did not have their public API when the entire library was imported
- The Modal component was not initialized when using the `Autoinit()` method of the library

## 📦 3.0.0-beta.0 - 2019.12.04

### 🚀 Added

- Engagement message once the package has been installed

### 🖍 Changed

- Popper.js is no more required to use the Tooltip component
- Rename body-and-reset.scss file to reboot.scss

### 🐛 Fixed

- Add vendor prefixes to CSS rules on build
- Missing `code`, `pre` and `kbd` styles (import into `body-and-reset.scss`)

### ❌ Removed

Several classes, SCSS mixins and variables have been removed:

- Class
  - .nj-img-fluid
- Mixin
  - size()
  - shadow()
  - border-radius()
- Variable
  - Table component variables
  - Tag component variables

## 📦 3.0.0-alpha.4 - 2019.12.02

### 🚀 Added

- Reusable components with an easily unique import:
  - Floating Action Button
  - Progress
- Add three new colors (`orange-crusta`, `red-mandy` and `yellow-bright-sun`) for the Progress component
- TypeScript declaration files (\*.d.ts)

### 🖍 Changed

- Standardized SCSS variable names, by removing the `nj-` prefix
- Switch back to webpack for building scripts (instead of Rollup)

### 🐛 Fixed

- Single import of the Modal component
- Missing TypeScript definition file
- Style conflicts of icon colour between Alert component and material

## 📦 3.0.0-alpha.3 - 2019.11.25

### 🖍 Changed

- Update README: update URLs, emphasis the npm installation step

## 📦 3.0.0-alpha.2 - 2019.11.22

### 🚀 Added

- Reusable components with an easily unique import:
  - Card
  - Icon
  - Slider
  - Spinner
- Add three new colors (`orange-crusta`, `red-mandy` and `yellow-bright-sun`) for these components:
  - Avatar
  - Badge
  - Icon
  - Progress
  - Tag
  - Util `text-*` and `bg-*`
- Improve backward compatibility .scss file import
- Components assets (fonts, images…) are build with Gulp

### 🖍 Changed

- Update the colors according to the new ENGIE identity
- Improve package description
- Cleanup of .scss files
- Update dependencies

### 🐛 Fixed

- TypeScript build directory
- Missing linters

## 📦 3.0.0-alpha.1 - 2019.11.20

### Added

- Add Storybook to document and test UI components
- Add Contribution guide
- Add linters :
  - ESLint for TypeScript component files and Vanilla JS stories
  - StyleLint for SASS files
  - Conventional commit for readable meaning to commit messages

### 🖍 Changed

- Replace Webpack with Rollup for TypeScript files and Gulp for style files
- Components are now written in TypeScript instead of plain JavaScript
- Refact into reusable components with an easily unique import:
  - Alert
  - Avatar
  - Badge
  - Breadcrumb
  - Button
  - Checkbox
  - Collapse
  - Divider
  - Dropdown
  - Floating Action Button (FAB)
  - Footer
  - Form
  - Grid
  - Link
  - List group
  - Modal
  - Navbar
  - Pagination
  - Progress
  - Radio
  - Select
  - Switch
  - Table
  - Tag
  - Toggle
  - Tooltip
  - Util

### ❌ Removed

- $gradient-secondary and $gradient-tertiary
- Several components will be added in a future version (reusable and unique import):
  - Card
  - Floating Action Button
  - Icon
  - Progress
  - Slider
  - Spinner

## 📦 2.4.4 - 2019-XX-XX

### 🐛 Fixed

- Input label color now have the correct gray
- Remove v2 folder in scss folder

## 📦 2.4.3 - 2019-11-12

### 🐛 Fixed

- Click event for password (visible icon) and search input (erase icon)

## 📦 2.4.2 - 2019-10-29

### 🚀 Added

- Add decoration text css class utility
- Add hover behavior for the card component

## 📦 2.4.1 - 2019-10-16

### 🐛 Fixed

- Inconsistency between the source and compiled assets of the NPM library.

## 📦 2.4.0 - 2019-10-11

### 🚀 Added

- Single dropdown component
- New Modal component
- Spinner component

### 🖍 Changed

- Pagination buttons now have small rounded corners, instead of being entirely round
- Navbar can now be displayed as small

### 🐛 Fixed

- Fix icon color in the button component
- Fix progress bar in slider component

## 📦 2.3.0 - 2019-06-28

### 🚀 Added

- Inputs with icon on the left and right
- Input with a search icon and a clear icon to reset the input value
- Input type password with an eye icon to reveal the password
- Components test with the Jest library

### 🖍 Changed

- The Lato font is removed as NPM dependency, now called from the HTML header
- Fix amperstand selector in form component

## 📦 2.2.0 - 2019-06-06

### 🚀 Added

- Library is now available trough CDN assets.design.digital.engie.com
- Overflow classes utilities

### 🖍 Changed

- SCSS variables components have been prefixed with 'nj'
- Change horizontal padding value from 3rem to 2 rem for Navbar component
- Alert component width a new style
- Lato fonts is now imported as a package

## 📦 2.1.2 - 2019-05-21

### 🐛 Fixed

- fix missing `src/js` folder and files in published package

## 📦 2.1.1 - 2019-05-21

### 🐛 Fixed

- Fix export of stylesheets filename

## 📦 2.1.0 - 2019-05-21

### 🚀 Added

- FAB (Floating Action Button) component with menu interaction

### 🖍 Changed

- Disabled state of input and select
- Change order of tag for the select component
- Fix a regression on the link component
- Npm setup guide (new artifactory url)

### Deprecated

- `nj-label-floating` should be replace by `nj-label-static` for the select label tag

## 📦 2.0.3 - 2019-05-06

### 🖍 Changed

- Update footer component by adding hr tag

## 📦 2.0.2 - 2019-04-30

### 🚀 Added

- Stretched link utility
- Add color theme to Toggle component

### 🖍 Changed

- Fix background button of list group item
- Renamed range component as slider component
- Reduce the padding of navbar on mobile

## 📦 2.0.1 - 2019-04-18

### 🖍 Changed

- Exclude js folder when package is installed as a dependency

## 📦 2.0.0 - 2019-04-17

### 🚀 Added

- AbstractComponent as a base component to extends for all components
- Components are now globally or individually instanciated at the bottom of the page
- Pagination component
- Gradient utility class modifier for horizontal gradient
- Text gradient mixin
- Fix blue-bigstone color value
- Progress Bar component
- List group
- Switch (new) component
- Range component
- Tooltip component

### 🖍 Changed

- Webpack export `NJ` as an umd, window, and global var
- The js components are no longer self-initialized. You must do it manually
- Fix the color in the navbar navbar
- Increase logo size in the navbar
- Change gardient variables and mixin
- New palette of colors (21 > 19)
- Gradients colors and variables updated
- Rewrite old remaining components to apply our javascript component model: Alert, Checkbox, CollapseSearchBar, Radio,
  Select, Switch, Tag, Text, Textarea
- Buttons radius and focus style updated
- Footer style updated
- Switch renamed to toggle

### 🐛 Fixed

- Fix the font link by adding a scss variable $fonts-path

### ❌ Removed

- enable-gradient variable and condition
- Flux bar component

### 📦 1.5.6 - 2019-02-27

### 🖍 Changed

- Fix shadow issue on showcase navigation
- Fix background size on showcase homepage

### 📦 1.5.5 - 2019-02-26

### 🚀 Added

- Mobile navigation on design system pages

### 🖍 Changed

- Images on showcase
- Navigation on showcase
- Form refactored
- Collapse refactored
- Prefix collapse class
- Fix transparent navbar
- Update sketch file

### ❌ Removed

- Css nano rule for zindexing
- Remove useless scss file (variables, components, mixins)

### 📦 1.5.4 - 2019-02-07

### 🖍 Changed

- Update node and npm version to fix of linters that's does not works as expected

### 📦 1.5.3 - 2019-02-07

### 🖍 Changed

- Start algolia search only on documentation

### 📦 1.5.2 - 2019-02-07

### 🚀 Added

- Search for the documentation
- Card component
- Table component
- New template page named Articles
- Add a dedicated Jenkinsfile to tests all the buids actions during development

### 🖍 Changed

- Fix sketch color palette url
- Change jenkins file to publish npm package on expose repository

### ❌ Removed

- Unnecessary css file in documentation folder

### 📦 1.5.1 - 2019-01-22

### 🚀 Added

- Page for user testing

### 🖍 Changed

- New version of sketch
- Getting started page for designers

### ❌ Removed

- Remove jQuery from the showcase pages

### 📦 1.5.0 - 2019-01-18

### 🚀 Added

- Js polyfills
- Xml rss file to add sketch as a library

### 🖍 Changed

- Translate checkbox, radio and switch components in vanilla js

### ❌ Removed

- Remove bootstrap from package.json
- Remove legacy js components
- Remove nj-components-old.js generation

### 📦 1.4.2 - 2019-01-08

### 🚀 Added

- Add checkout template
- Add sigin template
- Add cover template

### 🖍 Changed

- Change content in several pages
- Make spelling corrections
- Reduce the sketch file size (26mo -> 8mo)
- Change our core size (mega to giga and giga to tera)

### ❌ Removed

- Remove useless screenshots for the thumbnails in page examples

### 📦 1.4.1 - 2018-12-21

### 🖍 Changed

- Change application.min.css by application.css for prod build

### 📦 1.4.0 - 2018-12-21

### 🚀 Added

- Add slider section in the homepage
- Add ux principles section in the experience page
- Add accessibility page
- Add methodology pdf
- Add new sketch file
- Add engie font icons
- Add alert component

### 🖍 Changed

- Change showcase pages style and pictures
- Change the form from jQuery to vanilla JS
- Change the collapse utility from jQuery to vanilla JS
- Review the documentation content pages

### ❌ Removed

- Remove progress bar page
- Remove cards page

### 📦 1.3.2 - 2018-12-20

### 🖍 Changed

- Fix npm version in package-lock.json

### 📦 1.3.1 - 2018-12-20

### 🖍 Changed

- Change name of the artifact by adding the version for prod build

### 📦 1.3.0 - 2018-12-18

### 🚀 Added

- Add webpack
- Add the tag component
- Add the navbar component
- Add the footer component
- Create showcase pages with content
- Add content into design system

### 🖍 Changed

- Change the name of font-map (based on metric now)
- Change the CI workflow thanks to Jenkinsfile

### 📦 1.2.0 - 2018-11-26

### 🚀 Added

- Add build folder
- Add showcase pages in Jekyll
- Add commands to publish on NPM
- Add component status page
- Add Google Analytics tracking

### 🖍 Changed

- Change the build commands in package.json
- Change tree structure
- Update breadcrumb component
- Update badge component
- Update link component
- Add source files to zip file

### ❌ Removed

- Remove the version folder for documentation
- Remove operation/customer themes

### 📦 1.1.0 - 2018-09-28

### 🚀 Added

- Add card component
- Add navbar component
- Add a navigation to the documentation
- New examples pages with pictures
- Add sketch palette to download
- Add shades of black and white

### 🖍 Changed

- Change the tree documentation
- Rename b2c to customer
- Rename b2b to operation
- Move the assets directory to assets in site/
- Review the whole colors page documentation

### ❌ Removed

- Remove assets/img (use base64 for svg)
- Remove assets task in package.json

### 📦 1.0.0 - 2018-08-23

First launch of ENGIE design system and documentation
