## 1.2.10 - 2024-07-03

### Features

- `useSnackbar`
  - Support `persistent` prop to allow user to make the snackbar persistent
  - Support `spinner` prop to allow user to show spinner in the snackbar
  - Support `position` prop to allow user to customize the position of the snackbar
    - default: `top-right`
    - in `xs` breakpoint it will always be `bottom-center`
  - expose `updateSnackbar` method to allow user to update the snackbar

- `FmTable`
  - Emit `sort-change` event when the user clicks the header to sort the column

## 1.2.10-rc.1 - 2024-07-02

### Fixes

- `FmDialog`

  - Fix the modelValue not working issue

- `FmPinField`

  - Fix the inputmode

- `FmPie`
  - fix where the data is empty will throw error causing the chart not able to render

## 1.2.9 - 2024-07-01

### Features

- `FmTabs`
  - New UI for tabs

## 1.2.9-rc.4 - 2024-07-01

### Features

- `FmTimeRangePicker`
  - Add `disableTimeCheck` prop to allow user to assign the end time to be the same/before the start time

## 1.2.9-rc.2 - 2024-06-26

### Fixes

- `FmDialog`

  - Fix the issue that the dialog will not close when the user clicks the overlay(dismissAway)

- `FmPopover`
  - Fix the issue that the clicks on popover content will propagate to the parent component

## 1.2.6 - 2024-06-24

### Features

- `FmDynamicDialog`
  - Allow `contentComponent` to emit `action` event that corresponds to the action button

## 1.2.6-rc.6 - 2024-06-21

- `FmDynamicDyalog`
  - ActionButton accept `disabled` and `isLoading` props

## 1.2.6-rc.5 - 2024-06-21

### Features

- `FmSnackbar`
  - Add `z-index` prop to allow user to customize the z-index of the snackbar

## 1.2.6-rc.4 - 2024-06-21

### Features

- `FmDynamicDyalog`
  - Add `sub-title` prop to allow user to add sub-title

## 1.2.6-rc.3 - 2024-06-21

### Features

- `FmMenu`
  - Assign `max-height` attribute to `menu-wrapper` slot
- `FmSelect`
  - Assign `max-height` attribute to `menu-wrapper` slot

## 1.2.6-rc.2 - 2024-06-21

### Features

- `FmSideSheet`
  - Add `is-component` and `is-component-props` props to allow user to use component as the content

## 1.2.6-rc.1 - 2024-06-19

### Features

- `FmMenu`
  - Give user `shift` and `min-height` attribute for control the menu should do shift or overflow if it closes to the edge

## 1.2.5 - 2024-06-18

### Features

- `FmPhoneNumber`
  - Support flag by `vue-country-flag-next` library
  - Support Indonesia by default
  - Add `extra-country-codes` prop to allow user to add extra country codes

## 1.2.4 - 2024-06-10

### Features

- `useDialog`
  - Accept concurrent dialog

## 1.2.3 - 2024-06-10

### Features

- `FmCollapsibleTabs`
  - Add `action` prop to allow user to assign action to the tab

## 1.2.3-rc.7 - 2024-06-06

### Features

- `FmDialog`
  - Add `content-class` prop to allow user to customize the content class

## 1.2.3-rc.6 - 2024-06-06

### Features

- `FmDialog`
  - Add `content-scrollable` prop to allow user to make the content scrollable

## 1.2.3-rc.5 - 2024-06-06

### Features

- `Calendar`
  - Use popover mode for YearMonthPicker

## 1.2.3-rc.4 - 2024-06-05

### Features

- `FmTooltip`

  - Add `content-class` prop to allow user to customize the content class

- `FmScorecard`
  - Truncate the title if it is too long

## 1.2.3-rc.2 - 2024-05-29

### Fixes

- `FmTimeRangePicker`
  - Fixed the time comparison calculation issue

## 1.2.3-rc.1 - 2024-05-29

### Features

- `FmPageHead`
  - Update the slot's name to `title` and `description` to make it more intuitive
  - Fix the title not show when the slot is not provided

## 1.2.2 - 2024-05-29

### Features

- `FmMenu`
  - Add resize the max-height of the menu if the spacings are not enough both top and bottom

## 1.2.2-rc.1 - 2024-05-28

### Features

- `FmDialog`
  - Hide footer if no footer slot is provided

## 1.2.1 - 2024-05-27

### Features

- `FmTable`
  - Add custom `page-size` to items per page options if it is provided and not in the list.
- `FmPinField`
  - Add `isError` prop to show error state

## 1.2.1-rc.3 - 2024-05-24

### Features

- `FmBottomSheet`
  - Users can decide whether to show the header or not

## 1.2.1-rc.2 - 2024-05-24

### Features

- `FmPageHeader`
  - Accept slot `title-slot` and `description-slot` to allow user to customize the title and description

## 1.2.1-rc.1 - 2024-05-24

### Feature

- `FmOverlay`
  - Export `FmOverlay` component

## 1.2.0 - 2024-05-23

### Feature

- `Foundation`
  - Separate font styles by locale
  - Redesign the font system

## 1.1.20 - 2024-05-23

### Feature

- `FmTextField`
  - Support `password` input mode
- `FmMenu`
  - Support `offset` prop to adjust the position of the menu
- `FmTooltip`
  - Support `zIndex` prop to adjust the z-index of the tooltip
- `FmDialog`
  - Hide `dialog-button` when the slot is `undefined`

## 1.1.19 - 2024-05-22

### Feature

- `FmPopover`
  - Export `FmPopover` component

## 1.1.18 - 2024-05-21

- `FmAvatar`
  - Add `sm2` size
  - Add `rounded` prop

## 1.1.17 - 2024-05-20

### Feature

- `FmBottomSheet`
  - Support pointer swipe to close the bottom sheet
- `FmScorecard`
  - New component for displaying a scorecard
- `FmSimpleCalendar`
  - Update the order of comparison quick select

## 1.1.16 - 2024-05-19

## Bug fixes

- `Calendar`
  - Fixed the issue that Calendar related component doesn't refer the `disable` status from fromProvider

## 1.1.15 - 2024-05-11

### Feature

- `FmButton`
  - Set the default size to `md`
  - If the button is just an icon, make it square
- `ToolTip`
  - Now tooltip supports touch devices

## 1.1.14 - 2024-05-10

### Feature

- `FmSimpleDateRangePicker`

  - Added emit `selected-comparison` to get the current compareType when you select the type
  - Added `No Comparison` and tweak some compare type

- `FmBar`/`FmLine`/`FmPie`
  - Added `legend` props for better customization more info refer to chart js legend documentation for additional
    options

## 1.1.13 - 2024-05-09

### Feature

- `FmIcon`
  - Upgrade Material Icons version(Fill)

## 1.1.12 - 2024-05-09

### Bug fixes

- `FmButton`
  - Fix the icon will be missing when it is clicked because there is no fill variant for the icon

## 1.1.11 - 2024-05-09

### Feature

- `FmTable`
  - Add prop `forceMobileFooter` for Allow user to force the table footer to persist on mobile layout

### Bug fixes

- `FmStepperField`
  - Fix the issue that the stepper field will not be disabled when it is set to disabled

## 1.1.10 - 2024-05-08

### Feature

- `FmSimpleCalendar`
  - Now it will forward the calendar to the endDate of the month when the user uses quick select
- `FmTable`
  - Allow user to assign className for row

## 1.1.9 - 2024-05-06

### Feature

- `FmChip`
  - Now support right side icon
- `FmSimpleCalendar`
  - revert value when the calendar closes that due to user click outside
  - Allow user to specify the default compare type

## 1.1.6

### Feature

- `FmTable`
  - `shrink-at` accept false as a value to prevent the table from shrinking in any breakpoint
  - adjust the footer to display well on mobile where the table is not allowed to shrink.
- `FmPopover`/`FmOverlay` related components
  - Add `zIndex` prop to allow user to customize the z-index of the overlay
- `FmSimpleDatePicker`/`FmSimpleDateRangePicker`
  - New component for handling date comparison separately.
- `FmSelect`
  - Now select item accepts `sublabel`
- `FmSwitch`
  - Remove `min-height`
  - Update `sublabel` color
- `FmBar`/`FmLine`
  - Add `hideXAxis`/`hideYAxis`/`hideLegend` props to hide the axis and legend

## 1.1.5

- `FmPopover`
  - v-click-outside is missing its functionality

### Feature

- `FmCollapsibleTabs`
  - new UI
  - Ellipsis for tab label if it's over 2 lines
- `FmButton`
  - Reduce the size of the button
- `FmButtonGroup`
  - Reduce the size of the button
- `FmTooltip`
  - Reduce the size of the tooltip
- `FmTimePicker`/`FmDateTimePicker`
  - allow user use customize `#trigger-button`

### Bug fixes

- `FmBoottomSheet`
  - Click the `arrow-back` button not trigger close;

## 1.1.4

### Feature

- `FmTable`
  - when on viewport `xs` or `sm`, renders table row into `FmList` with padding: 0
    - specify different breakpoints with prop `<FmTable shrink-at="xs | sm | ..."`
    - disable behavior with prop `<FmTable shrink-at="0"`
  - add `<template #table-row` to render custom table row
  - add `<template #list-row` to render custom list row
- `useDialog`
  - add `dismissAway` to close dialog on clicking overlay (`overlay` must be `true`)
  - add `onClose` handler
- `FmMenu`
  - add `stop-click-propagation` to avoid click to be propagated to a parent component
- `FmPageHead`
  - add `prepend` and `append` slot

### Bug fixes

- `FmPopover`
  - use `fixed` position strategy to avoid scrollbar by parent component
- `useSnackbar`
  - render toast with z-index 10
- `FmTable`
  - render pinned table header component after `<tbody>` to avoid using z-index
  - show the pointer as cursor if `@row-click` is defined
- `FmTableToolbar`
  - fix search button width
  - fix extra spacing on action buttons
- `FmTable`
  - stop propagation on row click
- `FmPageHead`
  - fix padding
- `FmMenuItem`
  - set max length to 240px
- `useDialog`
  - use tertiary button variant on secondary action on default

## 1.1.3

- `FmDatePicker` and `FmDateRangePicker`
  - Add slot for calendar trigger button
- `FmSelect`
  - Ellipsis displayValue when it's line over 2
- `FmSideSheet`
  - accept `maxWidth` prop
- `FmCheckbox`, `FmRadio` and `FmSwitch`
  - Reduce the gap between the label and the action box
- `FmMenuHeader`
  - Reduce the spacing
- `FmBreadcrumb`
  - Reduce the font size from 16px to 14px
- `FmStepperField`
  - Reduce the size of the increment and decrement button
- `FmTable`
  - Allow devs to decide whether to show the footer(pagination) or not
  - Reduce the footer size and add a top border
- `FmForm`
  - Add global disable props to disable all the fields in the form
  - expose isSubmitting from ref

## 1.1.2

- Export `FmTableToolbar`
- `FmTable`
  - Reduce ceil height from 72px to 52px
  - font size from 16px to 14px(Header and Cell)
  - Background color of the header from #FFFFFF to #F9F9F9
  - Allow row click event
- `Input`
  - Reduce Y padding from 12px to 8px
- `FmMenuItem`
  - reduce font size:
    - label: 16px -> 14px
    - `sublabel`: 14px -> 12px

## 1.1.1

- Standardized `FmDialogContent` and use it for `FmDialog` and `useDialog`
- Highlighted the scroll behavior in `FmDialog` and `useDialog`
- Fixed `FmDatePicker` will off-screen when the boundary is closed to bottom but there is no enough space for top to
  show the picker.
- Fixed the click propagation issue in `FmChip`
- Fixed the selection box in `FmTable` being re-rendered when the table is updated
- Now, the `FmRadio` can self-control its disable status even if the parent component changes the `disable` status
- Upgrade the version for `Material Symbols` for supporting more icons

## 1.1.0

### Bug Fixes

- `FmStepperField` now truncates text when reaching max fraction digits specified
- Added icons to `FmDatePicker` and `FmDateRangePicker` fields
- Fixed `FmLabel` not showing tooltips when `info` prop is specified
- Fixed `FmFormGroup` and `FmLabel` not showing specified slots
- Fixed UI issues on `FmDynamicDialog` when content or footer is not specified
- Fixed focus issues on collapsible `FmSearch`
- Fixed disabled `FmMenu` from behaving incorrectly
- The Color system is now updated with the latest colors from design
- Fixed `FmSelect` extra spacing issues when label or helper is not specified
- Fixed missing flags on `FmPhoneNumber`
- Fixed `FmTable` not reflecting new column definitions changes
- Fixed `FmTable` item counts when manual pagination is used
- `FmTabs` will now always show selected item on the main bar (to improve visibility on selected item in the `More`
  tabs)
- `FmPageHead` now correctly hides action button in mobile when no action is specified
- Fixed extra gaps for undefined slots/props including:
  - Content and footer slots in `FmDialog` & `useDialog`
  - Label and helper text slots in form fields
- Fixed fade in animation in `useDialog`
- Fixed dialog spacing when it occupies the whole width on mobile
- Fixed "More" button in `FmTab` to render children tab as submenu
- Fixed `label` and `helper` template not rendering in form field components
- Fixed country flags not rendering in `FmPhoneNumber`
- Fixed import statements in UI library package for better code editor integration
- Fixed collapsible `FmSearch` not focusing on text field on expanding
- Fixed full-screen heights in all sheets
- Fixed closing popover when opening another popover

### Features

- `FmBadge` now supports custom class
- `FmTable` now supports loading state
- Added `FmTableToolbar` and `useTableFilter` utilities for table operations
- New component `FmCardActionArea` is added
- Updated dependencies
  - UI Library is now running Vue `v3.4.21`
  - Vite has been correctly updated to `v5.1.4` to align with Vue version requirement
- `FmDatePicker` and `FmDateRangePicker` now allows user to define `min` and `max` dates shown on matrices
- Added `pin-top` slot in `FmTable`
- Added ability to do nested rows in `FmTable`
- Active selected child in `FmTabs` will be made visible even if the child has been collapsed in the "More" tab
- `useProxiedModel` now use generics for better TS integration on selecting prop name to proxy

## 1.0.1

### Bug Fixes

- Fix `FmSelect` overflowing when list gets too long

### Features

- Added ability to define `minFractionDigits` and `maxFractionDigits` to `FmStepperField` to define the max and min
  number of fraction digits when user inputs

## 1.0.0

- FeedMe UI Library released!
