@fluentui/react-datepicker-compat 0.0.0 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (109) hide show
  1. package/CHANGELOG.json +126 -5
  2. package/CHANGELOG.md +33 -6
  3. package/README.md +1 -1
  4. package/dist/index.d.ts +13 -8
  5. package/lib/components/Calendar/Calendar.js +1 -1
  6. package/lib/components/Calendar/Calendar.js.map +1 -1
  7. package/lib/components/Calendar/index.js +1 -1
  8. package/lib/components/Calendar/index.js.map +1 -1
  9. package/lib/components/Calendar/{useCalendarStyles.js → useCalendarStyles.styles.js} +1 -1
  10. package/lib/components/Calendar/useCalendarStyles.styles.js.map +1 -0
  11. package/lib/components/CalendarDay/CalendarDay.js +1 -1
  12. package/lib/components/CalendarDay/CalendarDay.js.map +1 -1
  13. package/lib/components/CalendarDay/index.js +1 -1
  14. package/lib/components/CalendarDay/index.js.map +1 -1
  15. package/lib/components/CalendarDay/{useCalendarDayStyles.js → useCalendarDayStyles.styles.js} +1 -1
  16. package/lib/components/CalendarDay/useCalendarDayStyles.styles.js.map +1 -0
  17. package/lib/components/CalendarDayGrid/CalendarDayGrid.js +2 -2
  18. package/lib/components/CalendarDayGrid/CalendarDayGrid.js.map +1 -1
  19. package/lib/components/CalendarDayGrid/CalendarGridDayCell.js +2 -2
  20. package/lib/components/CalendarDayGrid/CalendarGridDayCell.js.map +1 -1
  21. package/lib/components/CalendarDayGrid/CalendarGridRow.js.map +1 -1
  22. package/lib/components/CalendarDayGrid/index.js +2 -2
  23. package/lib/components/CalendarDayGrid/index.js.map +1 -1
  24. package/lib/components/CalendarDayGrid/{useCalendarDayGridStyles.js → useCalendarDayGridStyles.styles.js} +2 -2
  25. package/lib/components/CalendarDayGrid/useCalendarDayGridStyles.styles.js.map +1 -0
  26. package/lib/components/CalendarDayGrid/{useWeekCornerStyles.js → useWeekCornerStyles.styles.js} +1 -1
  27. package/lib/components/CalendarDayGrid/useWeekCornerStyles.styles.js.map +1 -0
  28. package/lib/components/CalendarMonth/useCalendarMonthStyles.js +1 -1
  29. package/lib/components/CalendarMonth/useCalendarMonthStyles.js.map +1 -1
  30. package/lib/components/CalendarPicker/index.js +1 -1
  31. package/lib/components/CalendarPicker/index.js.map +1 -1
  32. package/lib/components/CalendarPicker/{useCalendarPickerStyles.js → useCalendarPickerStyles.styles.js} +1 -1
  33. package/lib/components/CalendarPicker/useCalendarPickerStyles.styles.js.map +1 -0
  34. package/lib/components/CalendarYear/CalendarYear.js +1 -1
  35. package/lib/components/CalendarYear/CalendarYear.js.map +1 -1
  36. package/lib/components/CalendarYear/index.js +1 -1
  37. package/lib/components/CalendarYear/index.js.map +1 -1
  38. package/lib/components/CalendarYear/{useCalendarYearStyles.js → useCalendarYearStyles.styles.js} +2 -2
  39. package/lib/components/CalendarYear/useCalendarYearStyles.styles.js.map +1 -0
  40. package/lib/components/DatePicker/DatePicker.js +1 -1
  41. package/lib/components/DatePicker/DatePicker.js.map +1 -1
  42. package/lib/components/DatePicker/DatePicker.types.js.map +1 -1
  43. package/lib/components/DatePicker/defaults.js.map +1 -1
  44. package/lib/components/DatePicker/index.js +1 -1
  45. package/lib/components/DatePicker/index.js.map +1 -1
  46. package/lib/components/DatePicker/useDatePicker.js +10 -14
  47. package/lib/components/DatePicker/useDatePicker.js.map +1 -1
  48. package/lib/components/DatePicker/{useDatePickerStyles.js → useDatePickerStyles.styles.js} +1 -1
  49. package/lib/components/DatePicker/useDatePickerStyles.styles.js.map +1 -0
  50. package/lib/index.js.map +1 -1
  51. package/lib-commonjs/components/Calendar/Calendar.js +2 -2
  52. package/lib-commonjs/components/Calendar/Calendar.js.map +1 -1
  53. package/lib-commonjs/components/Calendar/index.js +1 -1
  54. package/lib-commonjs/components/Calendar/index.js.map +1 -1
  55. package/lib-commonjs/components/Calendar/{useCalendarStyles.js → useCalendarStyles.styles.js} +2 -2
  56. package/lib-commonjs/components/Calendar/useCalendarStyles.styles.js.map +1 -0
  57. package/lib-commonjs/components/CalendarDay/CalendarDay.js +2 -2
  58. package/lib-commonjs/components/CalendarDay/CalendarDay.js.map +1 -1
  59. package/lib-commonjs/components/CalendarDay/index.js +1 -1
  60. package/lib-commonjs/components/CalendarDay/index.js.map +1 -1
  61. package/lib-commonjs/components/CalendarDay/{useCalendarDayStyles.js → useCalendarDayStyles.styles.js} +2 -2
  62. package/lib-commonjs/components/CalendarDay/useCalendarDayStyles.styles.js.map +1 -0
  63. package/lib-commonjs/components/CalendarDayGrid/CalendarDayGrid.js +4 -4
  64. package/lib-commonjs/components/CalendarDayGrid/CalendarDayGrid.js.map +1 -1
  65. package/lib-commonjs/components/CalendarDayGrid/CalendarGridDayCell.js +8 -8
  66. package/lib-commonjs/components/CalendarDayGrid/CalendarGridDayCell.js.map +1 -1
  67. package/lib-commonjs/components/CalendarDayGrid/index.js +3 -3
  68. package/lib-commonjs/components/CalendarDayGrid/index.js.map +1 -1
  69. package/lib-commonjs/components/CalendarDayGrid/{useCalendarDayGridStyles.js → useCalendarDayGridStyles.styles.js} +2 -2
  70. package/lib-commonjs/components/CalendarDayGrid/useCalendarDayGridStyles.styles.js.map +1 -0
  71. package/lib-commonjs/components/CalendarDayGrid/{useWeekCornerStyles.js → useWeekCornerStyles.styles.js} +2 -2
  72. package/lib-commonjs/components/CalendarDayGrid/useWeekCornerStyles.styles.js.map +1 -0
  73. package/lib-commonjs/components/CalendarMonth/useCalendarMonthStyles.js +2 -2
  74. package/lib-commonjs/components/CalendarMonth/useCalendarMonthStyles.js.map +1 -1
  75. package/lib-commonjs/components/CalendarPicker/index.js +1 -1
  76. package/lib-commonjs/components/CalendarPicker/index.js.map +1 -1
  77. package/lib-commonjs/components/CalendarPicker/{useCalendarPickerStyles.js → useCalendarPickerStyles.styles.js} +2 -2
  78. package/lib-commonjs/components/CalendarPicker/useCalendarPickerStyles.styles.js.map +1 -0
  79. package/lib-commonjs/components/CalendarYear/CalendarYear.js +8 -8
  80. package/lib-commonjs/components/CalendarYear/CalendarYear.js.map +1 -1
  81. package/lib-commonjs/components/CalendarYear/index.js +1 -1
  82. package/lib-commonjs/components/CalendarYear/index.js.map +1 -1
  83. package/lib-commonjs/components/CalendarYear/useCalendarYearStyles.styles.js +14 -0
  84. package/lib-commonjs/components/CalendarYear/useCalendarYearStyles.styles.js.map +1 -0
  85. package/lib-commonjs/components/DatePicker/DatePicker.js +2 -2
  86. package/lib-commonjs/components/DatePicker/DatePicker.js.map +1 -1
  87. package/lib-commonjs/components/DatePicker/index.js +1 -1
  88. package/lib-commonjs/components/DatePicker/index.js.map +1 -1
  89. package/lib-commonjs/components/DatePicker/useDatePicker.js +10 -14
  90. package/lib-commonjs/components/DatePicker/useDatePicker.js.map +1 -1
  91. package/lib-commonjs/components/DatePicker/{useDatePickerStyles.js → useDatePickerStyles.styles.js} +2 -2
  92. package/lib-commonjs/components/DatePicker/useDatePickerStyles.styles.js.map +1 -0
  93. package/package.json +13 -13
  94. package/.swcrc +0 -30
  95. package/lib/components/Calendar/useCalendarStyles.js.map +0 -1
  96. package/lib/components/CalendarDay/useCalendarDayStyles.js.map +0 -1
  97. package/lib/components/CalendarDayGrid/useCalendarDayGridStyles.js.map +0 -1
  98. package/lib/components/CalendarDayGrid/useWeekCornerStyles.js.map +0 -1
  99. package/lib/components/CalendarPicker/useCalendarPickerStyles.js.map +0 -1
  100. package/lib/components/CalendarYear/useCalendarYearStyles.js.map +0 -1
  101. package/lib/components/DatePicker/useDatePickerStyles.js.map +0 -1
  102. package/lib-commonjs/components/Calendar/useCalendarStyles.js.map +0 -1
  103. package/lib-commonjs/components/CalendarDay/useCalendarDayStyles.js.map +0 -1
  104. package/lib-commonjs/components/CalendarDayGrid/useCalendarDayGridStyles.js.map +0 -1
  105. package/lib-commonjs/components/CalendarDayGrid/useWeekCornerStyles.js.map +0 -1
  106. package/lib-commonjs/components/CalendarPicker/useCalendarPickerStyles.js.map +0 -1
  107. package/lib-commonjs/components/CalendarYear/useCalendarYearStyles.js +0 -14
  108. package/lib-commonjs/components/CalendarYear/useCalendarYearStyles.js.map +0 -1
  109. package/lib-commonjs/components/DatePicker/useDatePickerStyles.js.map +0 -1
@@ -1,7 +1,7 @@
1
1
  import * as React from 'react';
2
2
  import { renderDatePicker_unstable } from './renderDatePicker';
3
3
  import { useDatePicker_unstable } from './useDatePicker';
4
- import { useDatePickerStyles_unstable } from './useDatePickerStyles';
4
+ import { useDatePickerStyles_unstable } from './useDatePickerStyles.styles';
5
5
  export const DatePicker = /*#__PURE__*/React.forwardRef((props, ref) => {
6
6
  const state = useDatePicker_unstable(props, ref);
7
7
  useDatePickerStyles_unstable(state);
@@ -1 +1 @@
1
- {"version":3,"names":["React","renderDatePicker_unstable","useDatePicker_unstable","useDatePickerStyles_unstable","DatePicker","forwardRef","props","ref","state","displayName"],"sources":["../../../src/components/DatePicker/DatePicker.tsx"],"sourcesContent":["import * as React from 'react';\nimport { renderDatePicker_unstable } from './renderDatePicker';\nimport { useDatePicker_unstable } from './useDatePicker';\nimport { useDatePickerStyles_unstable } from './useDatePickerStyles';\nimport type { ForwardRefComponent } from '@fluentui/react-utilities';\nimport type { DatePickerProps } from './DatePicker.types';\n\nexport const DatePicker: ForwardRefComponent<DatePickerProps> = React.forwardRef((props, ref) => {\n const state = useDatePicker_unstable(props, ref);\n\n useDatePickerStyles_unstable(state);\n return renderDatePicker_unstable(state);\n}) as ForwardRefComponent<DatePickerProps>;\nDatePicker.displayName = 'DatePicker';\n"],"mappings":"AAAA,YAAYA,KAAA,MAAW;AACvB,SAASC,yBAAyB,QAAQ;AAC1C,SAASC,sBAAsB,QAAQ;AACvC,SAASC,4BAA4B,QAAQ;AAI7C,OAAO,MAAMC,UAAA,gBAAmDJ,KAAA,CAAMK,UAAU,CAAC,CAACC,KAAA,EAAOC,GAAA,KAAQ;EAC/F,MAAMC,KAAA,GAAQN,sBAAA,CAAuBI,KAAA,EAAOC,GAAA;EAE5CJ,4BAAA,CAA6BK,KAAA;EAC7B,OAAOP,yBAAA,CAA0BO,KAAA;AACnC;AACAJ,UAAA,CAAWK,WAAW,GAAG"}
1
+ {"version":3,"names":["React","renderDatePicker_unstable","useDatePicker_unstable","useDatePickerStyles_unstable","DatePicker","forwardRef","props","ref","state","displayName"],"sources":["../../../src/components/DatePicker/DatePicker.tsx"],"sourcesContent":["import * as React from 'react';\nimport { renderDatePicker_unstable } from './renderDatePicker';\nimport { useDatePicker_unstable } from './useDatePicker';\nimport { useDatePickerStyles_unstable } from './useDatePickerStyles.styles';\nimport type { ForwardRefComponent } from '@fluentui/react-utilities';\nimport type { DatePickerProps } from './DatePicker.types';\n\nexport const DatePicker: ForwardRefComponent<DatePickerProps> = React.forwardRef((props, ref) => {\n const state = useDatePicker_unstable(props, ref);\n\n useDatePickerStyles_unstable(state);\n return renderDatePicker_unstable(state);\n}) as ForwardRefComponent<DatePickerProps>;\nDatePicker.displayName = 'DatePicker';\n"],"mappings":"AAAA,YAAYA,KAAA,MAAW;AACvB,SAASC,yBAAyB,QAAQ;AAC1C,SAASC,sBAAsB,QAAQ;AACvC,SAASC,4BAA4B,QAAQ;AAI7C,OAAO,MAAMC,UAAA,gBAAmDJ,KAAA,CAAMK,UAAU,CAAC,CAACC,KAAA,EAAOC,GAAA,KAAQ;EAC/F,MAAMC,KAAA,GAAQN,sBAAA,CAAuBI,KAAA,EAAOC,GAAA;EAE5CJ,4BAAA,CAA6BK,KAAA;EAC7B,OAAOP,yBAAA,CAA0BO,KAAA;AACnC;AACAJ,UAAA,CAAWK,WAAW,GAAG"}
@@ -1 +1 @@
1
- {"version":3,"names":["React"],"sources":["../../../src/components/DatePicker/DatePicker.types.ts"],"sourcesContent":["import * as React from 'react';\nimport { DayOfWeek, FirstWeekOfYear } from '../../utils';\nimport { Input } from '@fluentui/react-input';\nimport type { ComponentProps, ComponentState, Slot } from '@fluentui/react-utilities';\nimport type { CalendarProps } from '../Calendar/Calendar.types';\nimport type { CalendarStrings, DateFormatting } from '../../utils';\nimport type { PositioningProps } from '@fluentui/react-positioning';\n\nexport type DatePickerSlots = {\n root: NonNullable<Slot<typeof Input>>;\n calendar: NonNullable<Slot<Partial<CalendarProps>>>;\n popupSurface?: Slot<'div'>;\n};\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport interface IDatePicker {\n /** Sets focus to the input */\n focus(): void;\n\n /** Reset the state of the picker to the default */\n reset(): void;\n\n /** Open the datepicker popup */\n showDatePickerPopup(): void;\n}\n\nexport type DatePickerProps = Omit<ComponentProps<Partial<DatePickerSlots>>, 'defaultValue' | 'value'> & {\n /**\n * Optional callback to access the IDatePicker interface. Use this instead of ref for accessing\n * the public methods and properties of the component.\n */\n componentRef?: React.RefObject<IDatePicker>;\n\n /**\n * Callback issued when a date is selected\n */\n onSelectDate?: (date: Date | null | undefined) => void;\n\n /**\n * Whether the DatePicker is a required field or not. When using `<Field>`, this prop is automatically set.\n * @default false\n */\n required?: boolean;\n\n /**\n * Disabled state of the DatePicker.\n * @default false\n */\n disabled?: boolean;\n\n /**\n * Whether or not the Input of the DatePicker is underlined.\n * @default false\n */\n underlined?: boolean;\n\n /**\n * Whether the month picker is shown beside the day picker or hidden.\n * @default true\n */\n isMonthPickerVisible?: boolean;\n\n /**\n * Show month picker on top of date picker when visible.\n * @default false\n */\n showMonthPickerAsOverlay?: boolean;\n\n /**\n * Whether the DatePicker allows input a date string directly or not\n * @default false\n */\n allowTextInput?: boolean;\n\n /**\n * Whether the DatePicker should open automatically when the control is focused\n * WARNING: setting this to false creates an accessibility violation and is not recommended\n * @default true\n */\n disableAutoFocus?: boolean;\n\n /**\n * Whether the DatePicker should open when the input is clicked\n * @default true\n */\n openOnClick?: boolean;\n\n /**\n * Whether the DatePicker should be open by default\n *\n * @default false\n */\n defaultOpen?: boolean;\n\n /**\n * Whether the DatePicker is open or not\n *\n * @default false\n */\n open?: boolean;\n\n /**\n * Callback to run when the DatePicker's open state changes\n */\n onOpenChange?: (open: boolean) => void;\n\n /**\n * Callback to run when the DatePicker encounters an error when validating the input\n */\n onValidationError?: (data: DatePickerErrorData) => void;\n\n /**\n * Whether the DatePicker should render the popup as inline or in a portal\n *\n * @default false\n */\n inlinePopup?: boolean;\n\n /**\n * Configure the positioning of the DatePicker dialog\n *\n * @default below\n */\n positioning?: PositioningProps;\n\n /**\n * Placeholder text for the DatePicker\n */\n placeholder?: string;\n\n /**\n * Value of today. If unspecified, current time in client machine will be used.\n */\n today?: Date;\n\n /**\n * Default value of the DatePicker, if any\n */\n value?: Date;\n\n /**\n * Optional method to format the chosen date to a string to display in the DatePicker\n * @default date.toString()\n */\n formatDate?: (date?: Date) => string;\n\n /**\n * Optional method to parse the text input value to date, it is only useful when allowTextInput is set to true\n * @default new Date(Date.parse(dateStr))\n */\n parseDateFromString?: (dateStr: string) => Date | null;\n\n /**\n * The first day of the week for your locale.\n * @default DayOfWeek.Sunday\n */\n firstDayOfWeek?: DayOfWeek;\n\n /**\n * Localized strings to use in the Calendar\n */\n strings?: CalendarStrings;\n\n /**\n * Whether the month picker should highlight the current month\n * @default false\n */\n highlightCurrentMonth?: boolean;\n\n /**\n * Whether the month picker should highlight the selected month\n * @default false\n */\n highlightSelectedMonth?: boolean;\n\n /**\n * Whether the calendar should show the week number (weeks 1 to 53) before each week row\n * @default false\n */\n showWeekNumbers?: boolean;\n\n /**\n * Defines when the first week of the year should start, FirstWeekOfYear.FirstDay,\n * FirstWeekOfYear.FirstFullWeek or FirstWeekOfYear.FirstFourDayWeek are the possible values\n * @default FirstWeekOfYear.FirstFullWeek\n */\n firstWeekOfYear?: FirstWeekOfYear;\n\n /**\n * Whether the \"Go to today\" link should be shown or not\n */\n showGoToToday?: boolean;\n\n /**\n * Determines if the DatePicker has a border.\n * @default false\n */\n borderless?: boolean;\n\n /**\n * Apply additional formatting to dates, for example localized date formatting.\n */\n dateTimeFormatter?: DateFormatting;\n\n /**\n * The minimum allowable date.\n */\n minDate?: Date;\n\n /**\n * The maximum allowable date.\n */\n maxDate?: Date;\n\n /**\n * The initially highlighted date.\n */\n initialPickerDate?: Date;\n\n /**\n * Allows all elements to be focused, including disabled ones\n * @default false\n */\n allFocusable?: boolean;\n\n /**\n * Whether the CalendarDay close button should be shown or not.\n */\n showCloseButton?: boolean;\n};\n\n/**\n * State used in rendering DatePicker.\n */\nexport type DatePickerState = ComponentState<DatePickerSlots> & {\n disabled: boolean;\n inlinePopup: boolean;\n};\n\n/**\n * Data passed to the `onValidationError` callback.\n */\nexport type DatePickerErrorData = {\n /** The error found when validating the input. */\n error: 'invalid-input' | 'out-of-bounds' | 'required-input';\n};\n"],"mappings":"AAAA,YAAYA,KAAA,MAAW"}
1
+ {"version":3,"names":["React"],"sources":["../../../src/components/DatePicker/DatePicker.types.ts"],"sourcesContent":["import * as React from 'react';\nimport { DayOfWeek, FirstWeekOfYear } from '../../utils';\nimport { Input } from '@fluentui/react-input';\nimport type { ComponentProps, ComponentState, Slot } from '@fluentui/react-utilities';\nimport type { CalendarProps } from '../Calendar/Calendar.types';\nimport type { CalendarStrings, DateFormatting } from '../../utils';\nimport type { PositioningProps } from '@fluentui/react-positioning';\n\nexport type DatePickerSlots = {\n root: NonNullable<Slot<typeof Input>>;\n calendar: NonNullable<Slot<Partial<CalendarProps>>>;\n popupSurface?: Slot<'div'>;\n};\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport interface IDatePicker {\n /** Sets focus to the input */\n focus(): void;\n\n /** Reset the state of the picker to the default */\n reset(): void;\n\n /** Open the datepicker popup */\n showDatePickerPopup(): void;\n}\n\nexport type DatePickerProps = Omit<ComponentProps<Partial<DatePickerSlots>>, 'defaultValue' | 'value'> & {\n /**\n * Optional callback to access the IDatePicker interface. Use this instead of ref for accessing\n * the public methods and properties of the component.\n */\n componentRef?: React.RefObject<IDatePicker>;\n\n /**\n * Callback issued when a date is selected\n */\n onSelectDate?: (date: Date | null | undefined) => void;\n\n /**\n * Whether the DatePicker is a required field or not. When using `<Field>`, this prop is automatically set.\n * @default false\n */\n required?: boolean;\n\n /**\n * Disabled state of the DatePicker.\n * @default false\n */\n disabled?: boolean;\n\n /**\n * Whether or not the Input of the DatePicker is underlined.\n * @default false\n */\n underlined?: boolean;\n\n /**\n * Whether the month picker is shown beside the day picker or hidden.\n * @default true\n */\n isMonthPickerVisible?: boolean;\n\n /**\n * Show month picker on top of date picker when visible.\n * @default false\n */\n showMonthPickerAsOverlay?: boolean;\n\n /**\n * Whether the DatePicker allows input a date string directly or not\n * @default false\n */\n allowTextInput?: boolean;\n\n /**\n * Whether the DatePicker should open automatically when the control is focused\n * WARNING: setting this to false creates an accessibility violation and is not recommended\n * @default true\n */\n disableAutoFocus?: boolean;\n\n /**\n * Whether the DatePicker should open when the input is clicked\n * @default true\n */\n openOnClick?: boolean;\n\n /**\n * Whether the DatePicker should be open by default\n *\n * @default false\n */\n defaultOpen?: boolean;\n\n /**\n * Whether the DatePicker is open or not\n *\n * @default false\n */\n open?: boolean;\n\n /**\n * Callback to run when the DatePicker's open state changes\n */\n onOpenChange?: (open: boolean) => void;\n\n /**\n * Callback to run after the DatePicker's input has been validated\n */\n onValidationResult?: (data: DatePickerValidationResultData) => void;\n\n /**\n * Whether the DatePicker should render the popup as inline or in a portal\n *\n * @default false\n */\n inlinePopup?: boolean;\n\n /**\n * Configure the positioning of the DatePicker dialog\n *\n * @default below\n */\n positioning?: PositioningProps;\n\n /**\n * Placeholder text for the DatePicker\n */\n placeholder?: string;\n\n /**\n * Value of today. If unspecified, current time in client machine will be used.\n */\n today?: Date;\n\n /**\n * Default value of the DatePicker, if any\n */\n value?: Date;\n\n /**\n * Optional method to format the chosen date to a string to display in the DatePicker\n * @default date.toString()\n */\n formatDate?: (date?: Date) => string;\n\n /**\n * Optional method to parse the text input value to date, it is only useful when allowTextInput is set to true\n * @default new Date(Date.parse(dateStr))\n */\n parseDateFromString?: (dateStr: string) => Date | null;\n\n /**\n * The first day of the week for your locale.\n * @default DayOfWeek.Sunday\n */\n firstDayOfWeek?: DayOfWeek;\n\n /**\n * Localized strings to use in the Calendar\n */\n strings?: CalendarStrings;\n\n /**\n * Whether the month picker should highlight the current month\n * @default false\n */\n highlightCurrentMonth?: boolean;\n\n /**\n * Whether the month picker should highlight the selected month\n * @default false\n */\n highlightSelectedMonth?: boolean;\n\n /**\n * Whether the calendar should show the week number (weeks 1 to 53) before each week row\n * @default false\n */\n showWeekNumbers?: boolean;\n\n /**\n * Defines when the first week of the year should start, FirstWeekOfYear.FirstDay,\n * FirstWeekOfYear.FirstFullWeek or FirstWeekOfYear.FirstFourDayWeek are the possible values\n * @default FirstWeekOfYear.FirstFullWeek\n */\n firstWeekOfYear?: FirstWeekOfYear;\n\n /**\n * Whether the \"Go to today\" link should be shown or not\n */\n showGoToToday?: boolean;\n\n /**\n * Determines if the DatePicker has a border.\n * @default false\n */\n borderless?: boolean;\n\n /**\n * Apply additional formatting to dates, for example localized date formatting.\n */\n dateTimeFormatter?: DateFormatting;\n\n /**\n * The minimum allowable date.\n */\n minDate?: Date;\n\n /**\n * The maximum allowable date.\n */\n maxDate?: Date;\n\n /**\n * The initially highlighted date.\n */\n initialPickerDate?: Date;\n\n /**\n * Allows all elements to be focused, including disabled ones\n * @default false\n */\n allFocusable?: boolean;\n\n /**\n * Whether the CalendarDay close button should be shown or not.\n */\n showCloseButton?: boolean;\n};\n\n/**\n * State used in rendering DatePicker.\n */\nexport type DatePickerState = ComponentState<DatePickerSlots> & {\n disabled: boolean;\n inlinePopup: boolean;\n};\n\n/**\n * Data passed to the `onValidationResult` callback.\n */\nexport type DatePickerValidationResultData = {\n /** The error found when validating the input. */\n error?: DatePickerErrorType;\n};\n\n/**\n * Error types returned by the `onValidationResult` callback.\n */\nexport type DatePickerErrorType = 'invalid-input' | 'out-of-bounds' | 'required-input';\n"],"mappings":"AAAA,YAAYA,KAAA,MAAW"}
@@ -1 +1 @@
1
- {"version":3,"names":["defaultCalendarStrings","defaultDatePickerStrings","prevMonthAriaLabel","nextMonthAriaLabel","prevYearAriaLabel","nextYearAriaLabel","closeButtonAriaLabel","defaultDatePickerErrorStrings"],"sources":["../../../src/components/DatePicker/defaults.ts"],"sourcesContent":["import { defaultCalendarStrings } from '../Calendar/defaults';\nimport type { CalendarStrings } from '../../utils/index';\nimport type { DatePickerErrorData } from './DatePicker.types';\n\nexport const defaultDatePickerStrings: CalendarStrings = {\n ...defaultCalendarStrings,\n prevMonthAriaLabel: 'Go to previous month',\n nextMonthAriaLabel: 'Go to next month',\n prevYearAriaLabel: 'Go to previous year',\n nextYearAriaLabel: 'Go to next year',\n closeButtonAriaLabel: 'Close date picker',\n};\n\nexport const defaultDatePickerErrorStrings: Record<DatePickerErrorData['error'], string> = {\n 'invalid-input': 'Invalid date format',\n 'out-of-bounds': 'Date is out of bounds',\n 'required-input': 'Field is required',\n};\n"],"mappings":"AAAA,SAASA,sBAAsB,QAAQ;AAIvC,OAAO,MAAMC,wBAAA,GAA4C;EACvD,GAAGD,sBAAsB;EACzBE,kBAAA,EAAoB;EACpBC,kBAAA,EAAoB;EACpBC,iBAAA,EAAmB;EACnBC,iBAAA,EAAmB;EACnBC,oBAAA,EAAsB;AACxB;AAEA,OAAO,MAAMC,6BAAA,GAA8E;EACzF,iBAAiB;EACjB,iBAAiB;EACjB,kBAAkB;AACpB"}
1
+ {"version":3,"names":["defaultCalendarStrings","defaultDatePickerStrings","prevMonthAriaLabel","nextMonthAriaLabel","prevYearAriaLabel","nextYearAriaLabel","closeButtonAriaLabel","defaultDatePickerErrorStrings"],"sources":["../../../src/components/DatePicker/defaults.ts"],"sourcesContent":["import { defaultCalendarStrings } from '../Calendar/defaults';\nimport type { CalendarStrings } from '../../utils/index';\nimport type { DatePickerErrorType } from './DatePicker.types';\n\nexport const defaultDatePickerStrings: CalendarStrings = {\n ...defaultCalendarStrings,\n prevMonthAriaLabel: 'Go to previous month',\n nextMonthAriaLabel: 'Go to next month',\n prevYearAriaLabel: 'Go to previous year',\n nextYearAriaLabel: 'Go to next year',\n closeButtonAriaLabel: 'Close date picker',\n};\n\nexport const defaultDatePickerErrorStrings: Record<DatePickerErrorType, string> = {\n 'invalid-input': 'Invalid date format',\n 'out-of-bounds': 'Date is out of bounds',\n 'required-input': 'Field is required',\n};\n"],"mappings":"AAAA,SAASA,sBAAsB,QAAQ;AAIvC,OAAO,MAAMC,wBAAA,GAA4C;EACvD,GAAGD,sBAAsB;EACzBE,kBAAA,EAAoB;EACpBC,kBAAA,EAAoB;EACpBC,iBAAA,EAAmB;EACnBC,iBAAA,EAAmB;EACnBC,oBAAA,EAAsB;AACxB;AAEA,OAAO,MAAMC,6BAAA,GAAqE;EAChF,iBAAiB;EACjB,iBAAiB;EACjB,kBAAkB;AACpB"}
@@ -3,5 +3,5 @@ export * from './DatePicker';
3
3
  export * from './DatePicker.types';
4
4
  export * from './renderDatePicker';
5
5
  export * from './useDatePicker';
6
- export * from './useDatePickerStyles';
6
+ export * from './useDatePickerStyles.styles';
7
7
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["../../../src/components/DatePicker/index.ts"],"sourcesContent":["export * from './defaults';\nexport * from './DatePicker';\nexport * from './DatePicker.types';\nexport * from './renderDatePicker';\nexport * from './useDatePicker';\nexport * from './useDatePickerStyles';\n"],"mappings":"AAAA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc"}
1
+ {"version":3,"names":[],"sources":["../../../src/components/DatePicker/index.ts"],"sourcesContent":["export * from './defaults';\nexport * from './DatePicker';\nexport * from './DatePicker.types';\nexport * from './renderDatePicker';\nexport * from './useDatePicker';\nexport * from './useDatePickerStyles.styles';\n"],"mappings":"AAAA,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc;AACd,cAAc"}
@@ -103,7 +103,7 @@ export const useDatePicker_unstable = (props, ref) => {
103
103
  onOpenChange,
104
104
  onSelectDate: onUserSelectDate,
105
105
  openOnClick = true,
106
- onValidationError,
106
+ onValidationResult,
107
107
  parseDateFromString = defaultParseDateFromString,
108
108
  showCloseButton = false,
109
109
  showGoToToday = true,
@@ -128,6 +128,7 @@ export const useDatePicker_unstable = (props, ref) => {
128
128
  const required = (_fieldContext_required = fieldContext === null || fieldContext === void 0 ? void 0 : fieldContext.required) !== null && _fieldContext_required !== void 0 ? _fieldContext_required : props.required;
129
129
  const popupSurfaceId = useId('datePicker-popoverSurface');
130
130
  const validateTextInput = React.useCallback((date = null) => {
131
+ let error;
131
132
  if (allowTextInput) {
132
133
  if (formattedDate || date) {
133
134
  // Don't parse if the selected date has the same formatted string as what we're about to parse.
@@ -141,32 +142,27 @@ export const useDatePicker_unstable = (props, ref) => {
141
142
  if (!date || isNaN(date.getTime())) {
142
143
  // Reset input if formatting is available
143
144
  setSelectedDate(selectedDate);
144
- onValidationError === null || onValidationError === void 0 ? void 0 : onValidationError({
145
- error: 'invalid-input'
146
- });
145
+ error = 'invalid-input';
147
146
  } else {
148
147
  if (isDateOutOfBounds(date, minDate, maxDate)) {
149
- onValidationError === null || onValidationError === void 0 ? void 0 : onValidationError({
150
- error: 'out-of-bounds'
151
- });
148
+ error = 'out-of-bounds';
152
149
  } else {
153
150
  setSelectedDate(date);
154
151
  }
155
152
  }
156
153
  } else {
157
154
  if (required) {
158
- onValidationError === null || onValidationError === void 0 ? void 0 : onValidationError({
159
- error: 'required-input'
160
- });
155
+ error = 'required-input';
161
156
  }
162
157
  onUserSelectDate === null || onUserSelectDate === void 0 ? void 0 : onUserSelectDate(date);
163
158
  }
164
159
  } else if (required && !formattedDate) {
165
- onValidationError === null || onValidationError === void 0 ? void 0 : onValidationError({
166
- error: 'required-input'
167
- });
160
+ error = 'required-input';
168
161
  }
169
- }, [allowTextInput, formatDate, formattedDate, maxDate, minDate, onUserSelectDate, onValidationError, parseDateFromString, required, selectedDate, setSelectedDate]);
162
+ onValidationResult === null || onValidationResult === void 0 ? void 0 : onValidationResult({
163
+ error
164
+ });
165
+ }, [allowTextInput, formatDate, formattedDate, maxDate, minDate, onUserSelectDate, onValidationResult, parseDateFromString, required, selectedDate, setSelectedDate]);
170
166
  const setOpen = React.useCallback(newState => {
171
167
  onOpenChange === null || onOpenChange === void 0 ? void 0 : onOpenChange(newState);
172
168
  setOpenState(newState);
@@ -1 +1 @@
1
- {"version":3,"names":["React","ArrowDown","Enter","Escape","Calendar","CalendarMonthRegular","compareDatePart","DayOfWeek","FirstWeekOfYear","defaultDatePickerStrings","Input","mergeCallbacks","resolveShorthand","useControllableState","useEventCallback","useId","useMergedRefs","useOnClickOutside","useOnScrollOutside","useFieldContext_unstable","useFieldContext","useFluent_unstable","useFluent","useFocusFinders","useModalAttributes","usePopupPositioning","isDateOutOfBounds","date","minDate","maxDate","useFocusLogic","inputRef","useRef","preventFocusOpeningPicker","focus","_inputRef_current","_inputRef_current_focus","current","call","preventNextFocusOpeningPicker","usePopupVisibility","props","open","setOpen","initialState","defaultState","defaultOpen","state","isMounted","useEffect","_props_onOpenChange","onOpenChange","allowTextInput","useSelectedDate","formatDate","onSelectDate","value","selectedDate","setSelectedDateState","undefined","formattedDate","setFormattedDate","useState","setSelectedDate","newDate","defaultFormatDate","toDateString","defaultParseDateFromString","dateStr","Date","parse","useDatePicker_unstable","ref","allFocusable","borderless","dateTimeFormatter","disableAutoFocus","firstDayOfWeek","Sunday","firstWeekOfYear","FirstDay","highlightCurrentMonth","highlightSelectedMonth","initialPickerDate","inlinePopup","isMonthPickerVisible","onUserSelectDate","openOnClick","onValidationError","parseDateFromString","showCloseButton","showGoToToday","showMonthPickerAsOverlay","showWeekNumbers","strings","today","underlined","restOfProps","calendar","rootRef","setOpenState","fieldContext","_fieldContext_required","required","popupSurfaceId","validateTextInput","useCallback","isNaN","getTime","error","newState","dismissDatePickerPopup","newlySelectedDate","showDatePickerPopup","calendarDismissed","onInputChange","ev","data","newValue","onInputBlur","onInputKeyDown","key","preventDefault","stopPropagation","altKey","onInputFocus","onInputClick","disabled","onIconClick","inputAppearance","triggerWrapperRef","popupRef","rootShorthand","defaultProps","appearance","contentAfter","createElement","onClick","readOnly","role","root","input","onChange","onBlur","onKeyDown","onFocus","modalAttributes","trapFocus","alwaysFocusable","legacyTrapFocus","popupSurfaceShorthand","popupSurface","id","targetDocument","element","callback","refs","findFirstFocusable","firstFocusable","popupOnClick","_rootRef_current","calendarShorthand","componentRef","onDismiss","useImperativeHandle","reset","components"],"sources":["../../../src/components/DatePicker/useDatePicker.tsx"],"sourcesContent":["import * as React from 'react';\nimport { ArrowDown, Enter, Escape } from '@fluentui/keyboard-keys';\nimport { Calendar } from '../Calendar/Calendar';\nimport { CalendarMonthRegular } from '@fluentui/react-icons';\nimport { compareDatePart, DayOfWeek, FirstWeekOfYear } from '../../utils';\nimport { defaultDatePickerStrings } from './defaults';\nimport { Input } from '@fluentui/react-input';\nimport {\n mergeCallbacks,\n resolveShorthand,\n useControllableState,\n useEventCallback,\n useId,\n useMergedRefs,\n useOnClickOutside,\n useOnScrollOutside,\n} from '@fluentui/react-utilities';\nimport { useFieldContext_unstable as useFieldContext } from '@fluentui/react-field';\nimport { useFluent_unstable as useFluent } from '@fluentui/react-shared-contexts';\nimport { useFocusFinders, useModalAttributes } from '@fluentui/react-tabster';\nimport { usePopupPositioning } from '../../utils/usePopupPositioning';\nimport type { CalendarProps, ICalendar } from '../Calendar/Calendar.types';\nimport type { DatePickerProps, DatePickerState } from './DatePicker.types';\nimport type { InputProps, InputOnChangeData } from '@fluentui/react-input';\n\nfunction isDateOutOfBounds(date: Date, minDate?: Date, maxDate?: Date): boolean {\n return (!!minDate && compareDatePart(minDate!, date) > 0) || (!!maxDate && compareDatePart(maxDate!, date) < 0);\n}\n\nfunction useFocusLogic() {\n const inputRef = React.useRef<HTMLInputElement>(null);\n const preventFocusOpeningPicker = React.useRef(false);\n\n const focus = () => {\n inputRef.current?.focus?.();\n };\n\n const preventNextFocusOpeningPicker = () => {\n preventFocusOpeningPicker.current = true;\n };\n\n return [focus, inputRef, preventFocusOpeningPicker, preventNextFocusOpeningPicker] as const;\n}\n\nfunction usePopupVisibility(props: DatePickerProps) {\n const [open, setOpen] = useControllableState({\n initialState: false,\n defaultState: props.defaultOpen,\n state: props.open,\n });\n const isMounted = React.useRef(false);\n\n React.useEffect(\n () => {\n if (isMounted.current && !open) {\n // If DatePicker's menu (Calendar) is closed, run onAfterMenuDismiss\n props.onOpenChange?.(false);\n }\n isMounted.current = true;\n },\n // Should only run on allowTextInput or open change\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [props.allowTextInput, open],\n );\n\n return [open, setOpen] as const;\n}\n\nfunction useSelectedDate({ formatDate, onSelectDate, value }: DatePickerProps) {\n const [selectedDate, setSelectedDateState] = useControllableState({\n initialState: undefined,\n state: value,\n });\n const [formattedDate, setFormattedDate] = React.useState(() => (value && formatDate ? formatDate(value) : ''));\n\n const setSelectedDate = (newDate: Date | undefined) => {\n if (\n (selectedDate === undefined && newDate !== undefined) ||\n (selectedDate !== undefined && newDate === undefined) ||\n (newDate && selectedDate && (newDate > selectedDate || newDate < selectedDate))\n ) {\n onSelectDate?.(newDate);\n }\n\n setSelectedDateState(newDate);\n setFormattedDate(newDate && formatDate ? formatDate(newDate) : '');\n };\n\n React.useEffect(() => {\n setFormattedDate(value && formatDate ? formatDate(value) : '');\n }, [formatDate, value]);\n\n return [selectedDate, formattedDate, setSelectedDate, setFormattedDate] as const;\n}\n\nconst defaultFormatDate = (date?: Date) => (date ? date.toDateString() : '');\nconst defaultParseDateFromString = (dateStr: string) => {\n const date = Date.parse(dateStr);\n return date ? new Date(date) : null;\n};\n\n/**\n * Create the state required to render DatePicker.\n *\n * The returned state can be modified with hooks such as useDatePickerStyles_unstable,\n * before being passed to renderDatePicker_unstable.\n *\n * @param props - props from this instance of DatePicker\n * @param ref - reference to root Input slot\n */\nexport const useDatePicker_unstable = (props: DatePickerProps, ref: React.Ref<HTMLElement>): DatePickerState => {\n const {\n allowTextInput = false,\n allFocusable = false,\n borderless = false,\n dateTimeFormatter,\n defaultOpen = false,\n disableAutoFocus = true,\n firstDayOfWeek = DayOfWeek.Sunday,\n firstWeekOfYear = FirstWeekOfYear.FirstDay,\n formatDate = defaultFormatDate,\n highlightCurrentMonth = false,\n highlightSelectedMonth = false,\n initialPickerDate = new Date(),\n inlinePopup = false,\n isMonthPickerVisible = true,\n maxDate,\n minDate,\n onOpenChange,\n onSelectDate: onUserSelectDate,\n openOnClick = true,\n onValidationError,\n parseDateFromString = defaultParseDateFromString,\n showCloseButton = false,\n showGoToToday = true,\n showMonthPickerAsOverlay = false,\n showWeekNumbers = false,\n strings = defaultDatePickerStrings,\n today,\n underlined = false,\n value,\n ...restOfProps\n } = props;\n const calendar = React.useRef<ICalendar>(null);\n const [focus, rootRef, preventFocusOpeningPicker, preventNextFocusOpeningPicker] = useFocusLogic();\n const [selectedDate, formattedDate, setSelectedDate, setFormattedDate] = useSelectedDate({\n formatDate,\n onSelectDate: onUserSelectDate,\n value,\n });\n const [open, setOpenState] = usePopupVisibility(props);\n const fieldContext = useFieldContext();\n const required = fieldContext?.required ?? props.required;\n const popupSurfaceId = useId('datePicker-popoverSurface');\n\n const validateTextInput = React.useCallback(\n (date: Date | null = null): void => {\n if (allowTextInput) {\n if (formattedDate || date) {\n // Don't parse if the selected date has the same formatted string as what we're about to parse.\n // The formatted string might be ambiguous (ex: \"1/2/3\" or \"New Year Eve\") and the parser might\n // not be able to come up with the exact same date.\n if (selectedDate && formatDate && formatDate(date ?? selectedDate) === formattedDate) {\n return;\n }\n date = date || parseDateFromString!(formattedDate);\n\n // Check if date is null or date is an invalid date\n if (!date || isNaN(date.getTime())) {\n // Reset input if formatting is available\n setSelectedDate(selectedDate);\n onValidationError?.({ error: 'invalid-input' });\n } else {\n if (isDateOutOfBounds(date, minDate, maxDate)) {\n onValidationError?.({ error: 'out-of-bounds' });\n } else {\n setSelectedDate(date);\n }\n }\n } else {\n if (required) {\n onValidationError?.({ error: 'required-input' });\n }\n\n onUserSelectDate?.(date);\n }\n } else if (required && !formattedDate) {\n onValidationError?.({ error: 'required-input' });\n }\n },\n [\n allowTextInput,\n formatDate,\n formattedDate,\n maxDate,\n minDate,\n onUserSelectDate,\n onValidationError,\n parseDateFromString,\n required,\n selectedDate,\n setSelectedDate,\n ],\n );\n\n const setOpen = React.useCallback(\n (newState: boolean) => {\n onOpenChange?.(newState);\n setOpenState(newState);\n },\n [onOpenChange, setOpenState],\n );\n\n const dismissDatePickerPopup = React.useCallback(\n (newlySelectedDate?: Date): void => {\n if (open) {\n setOpen(false);\n\n validateTextInput(newlySelectedDate);\n if (!allowTextInput && newlySelectedDate) {\n setSelectedDate(newlySelectedDate);\n }\n }\n },\n [allowTextInput, open, setOpen, setSelectedDate, validateTextInput],\n );\n\n const showDatePickerPopup = React.useCallback((): void => {\n if (!open) {\n preventNextFocusOpeningPicker();\n setOpen(true);\n }\n }, [open, preventNextFocusOpeningPicker, setOpen]);\n\n /**\n * Callback for closing the calendar callout\n */\n const calendarDismissed = React.useCallback(\n (newlySelectedDate?: Date): void => {\n preventNextFocusOpeningPicker();\n dismissDatePickerPopup(newlySelectedDate);\n },\n [dismissDatePickerPopup, preventNextFocusOpeningPicker],\n );\n\n const onInputChange = React.useCallback(\n (ev: React.ChangeEvent<HTMLInputElement>, data: InputOnChangeData) => {\n const { value: newValue } = data;\n\n if (allowTextInput) {\n if (open) {\n dismissDatePickerPopup();\n }\n\n setFormattedDate(newValue);\n }\n },\n [allowTextInput, dismissDatePickerPopup, open, setFormattedDate],\n );\n\n const onInputBlur: React.FocusEventHandler<HTMLInputElement> = React.useCallback((): void => {\n validateTextInput();\n }, [validateTextInput]);\n\n const onInputKeyDown = React.useCallback(\n (ev: React.KeyboardEvent<HTMLElement>): void => {\n switch (ev.key) {\n case Enter:\n ev.preventDefault();\n ev.stopPropagation();\n if (!open) {\n validateTextInput();\n showDatePickerPopup();\n } else {\n // When DatePicker allows input date string directly,\n // it is expected to hit another enter to close the popup\n if (props.allowTextInput) {\n dismissDatePickerPopup();\n }\n }\n break;\n\n case Escape:\n ev.stopPropagation();\n ev.preventDefault();\n if (open) {\n calendarDismissed();\n }\n break;\n\n case ArrowDown:\n ev.preventDefault();\n if (ev.altKey && !open) {\n showDatePickerPopup();\n }\n break;\n\n default:\n break;\n }\n },\n [calendarDismissed, dismissDatePickerPopup, open, props.allowTextInput, showDatePickerPopup, validateTextInput],\n );\n\n const onInputFocus: React.FocusEventHandler<HTMLInputElement> = React.useCallback((): void => {\n if (disableAutoFocus) {\n return;\n }\n\n if (!allowTextInput) {\n if (!preventFocusOpeningPicker.current) {\n showDatePickerPopup();\n }\n preventFocusOpeningPicker.current = false;\n }\n }, [allowTextInput, disableAutoFocus, preventFocusOpeningPicker, showDatePickerPopup]);\n\n const onInputClick: React.MouseEventHandler<HTMLInputElement> = React.useCallback((): void => {\n // default openOnClick to !props.disableAutoFocus for legacy support of disableAutoFocus behavior\n if ((openOnClick || !disableAutoFocus) && !open && !props.disabled) {\n showDatePickerPopup();\n return;\n }\n\n if (allowTextInput) {\n dismissDatePickerPopup();\n }\n }, [\n allowTextInput,\n disableAutoFocus,\n dismissDatePickerPopup,\n openOnClick,\n open,\n props.disabled,\n showDatePickerPopup,\n ]);\n\n const onIconClick = (ev: React.MouseEvent<HTMLElement>): void => {\n ev.stopPropagation();\n if (!open && !props.disabled) {\n showDatePickerPopup();\n } else if (props.allowTextInput) {\n dismissDatePickerPopup();\n }\n };\n\n const inputAppearance: InputProps['appearance'] = underlined\n ? 'underline'\n : borderless\n ? 'filled-lighter'\n : 'outline';\n\n const [triggerWrapperRef, popupRef] = usePopupPositioning(props);\n const rootShorthand = resolveShorthand(restOfProps, {\n required: true,\n defaultProps: {\n appearance: inputAppearance,\n 'aria-controls': open ? popupSurfaceId : undefined,\n 'aria-expanded': open,\n 'aria-haspopup': 'dialog',\n contentAfter: <CalendarMonthRegular onClick={onIconClick as unknown as React.MouseEventHandler<SVGElement>} />,\n readOnly: !allowTextInput,\n role: 'combobox',\n root: {\n ref: useMergedRefs(triggerWrapperRef, ref),\n 'aria-owns': popupSurfaceId,\n },\n input: {\n ref: rootRef,\n },\n },\n });\n rootShorthand.onChange = mergeCallbacks(rootShorthand.onChange, onInputChange);\n rootShorthand.onBlur = mergeCallbacks(rootShorthand.onBlur, onInputBlur);\n rootShorthand.onKeyDown = mergeCallbacks(rootShorthand.onKeyDown, onInputKeyDown);\n rootShorthand.onFocus = mergeCallbacks(rootShorthand.onFocus, onInputFocus);\n rootShorthand.onClick = mergeCallbacks(rootShorthand.onClick, onInputClick);\n\n const { modalAttributes } = useModalAttributes({ trapFocus: true, alwaysFocusable: true, legacyTrapFocus: false });\n const popupSurfaceShorthand = open\n ? resolveShorthand(props.popupSurface, {\n required: true,\n defaultProps: {\n 'aria-label': 'Calendar',\n 'aria-modal': true,\n id: popupSurfaceId,\n role: 'dialog',\n ref: popupRef,\n ...modalAttributes,\n },\n })\n : undefined;\n\n const { targetDocument } = useFluent();\n useOnClickOutside({\n element: targetDocument,\n callback: ev => dismissDatePickerPopup(),\n refs: [triggerWrapperRef, popupRef],\n disabled: !open,\n });\n\n useOnScrollOutside({\n element: targetDocument,\n callback: ev => dismissDatePickerPopup(),\n refs: [triggerWrapperRef, popupRef],\n disabled: !open,\n });\n\n const { findFirstFocusable } = useFocusFinders();\n React.useEffect(() => {\n if (disableAutoFocus) {\n return;\n }\n\n if (open && popupRef.current) {\n const firstFocusable = findFirstFocusable(popupRef.current);\n firstFocusable?.focus();\n }\n }, [disableAutoFocus, findFirstFocusable, open, popupRef]);\n\n const popupOnClick = useEventCallback(\n mergeCallbacks((ev: React.MouseEvent<HTMLDivElement>) => {\n rootRef.current?.focus();\n }, popupSurfaceShorthand?.onClick),\n );\n\n if (popupSurfaceShorthand) {\n popupSurfaceShorthand.onClick = popupOnClick;\n }\n\n const calendarShorthand = resolveShorthand(props.calendar, {\n required: true,\n defaultProps: {\n allFocusable,\n componentRef: calendar,\n dateTimeFormatter,\n firstDayOfWeek,\n firstWeekOfYear,\n highlightCurrentMonth,\n highlightSelectedMonth,\n isMonthPickerVisible,\n maxDate,\n minDate,\n onDismiss: calendarDismissed,\n showCloseButton,\n showGoToToday,\n showMonthPickerAsOverlay,\n showWeekNumbers,\n strings,\n today,\n value: selectedDate || initialPickerDate,\n },\n });\n\n React.useImperativeHandle(\n props.componentRef,\n () => ({\n focus,\n reset() {\n setOpen(false);\n setSelectedDate(undefined);\n },\n showDatePickerPopup,\n }),\n [focus, setOpen, setSelectedDate, showDatePickerPopup],\n );\n\n const state: DatePickerState = {\n disabled: !!props.disabled,\n inlinePopup,\n\n components: {\n root: Input,\n calendar: Calendar as React.FC<Partial<CalendarProps>>,\n popupSurface: 'div',\n },\n\n calendar: calendarShorthand,\n root: rootShorthand,\n popupSurface: popupSurfaceShorthand,\n };\n\n state.root.value = formattedDate;\n state.calendar.onSelectDate = mergeCallbacks(state.calendar.onSelectDate, calendarDismissed);\n\n return state;\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["React","ArrowDown","Enter","Escape","Calendar","CalendarMonthRegular","compareDatePart","DayOfWeek","FirstWeekOfYear","defaultDatePickerStrings","Input","mergeCallbacks","resolveShorthand","useControllableState","useEventCallback","useId","useMergedRefs","useOnClickOutside","useOnScrollOutside","useFieldContext_unstable","useFieldContext","useFluent_unstable","useFluent","useFocusFinders","useModalAttributes","usePopupPositioning","isDateOutOfBounds","date","minDate","maxDate","useFocusLogic","inputRef","useRef","preventFocusOpeningPicker","focus","_inputRef_current","_inputRef_current_focus","current","call","preventNextFocusOpeningPicker","usePopupVisibility","props","open","setOpen","initialState","defaultState","defaultOpen","state","isMounted","useEffect","_props_onOpenChange","onOpenChange","allowTextInput","useSelectedDate","formatDate","onSelectDate","value","selectedDate","setSelectedDateState","undefined","formattedDate","setFormattedDate","useState","setSelectedDate","newDate","defaultFormatDate","toDateString","defaultParseDateFromString","dateStr","Date","parse","useDatePicker_unstable","ref","allFocusable","borderless","dateTimeFormatter","disableAutoFocus","firstDayOfWeek","Sunday","firstWeekOfYear","FirstDay","highlightCurrentMonth","highlightSelectedMonth","initialPickerDate","inlinePopup","isMonthPickerVisible","onUserSelectDate","openOnClick","onValidationResult","parseDateFromString","showCloseButton","showGoToToday","showMonthPickerAsOverlay","showWeekNumbers","strings","today","underlined","restOfProps","calendar","rootRef","setOpenState","fieldContext","_fieldContext_required","required","popupSurfaceId","validateTextInput","useCallback","error","isNaN","getTime","newState","dismissDatePickerPopup","newlySelectedDate","showDatePickerPopup","calendarDismissed","onInputChange","ev","data","newValue","onInputBlur","onInputKeyDown","key","preventDefault","stopPropagation","altKey","onInputFocus","onInputClick","disabled","onIconClick","inputAppearance","triggerWrapperRef","popupRef","rootShorthand","defaultProps","appearance","contentAfter","createElement","onClick","readOnly","role","root","input","onChange","onBlur","onKeyDown","onFocus","modalAttributes","trapFocus","alwaysFocusable","legacyTrapFocus","popupSurfaceShorthand","popupSurface","id","targetDocument","element","callback","refs","findFirstFocusable","firstFocusable","popupOnClick","_rootRef_current","calendarShorthand","componentRef","onDismiss","useImperativeHandle","reset","components"],"sources":["../../../src/components/DatePicker/useDatePicker.tsx"],"sourcesContent":["import * as React from 'react';\nimport { ArrowDown, Enter, Escape } from '@fluentui/keyboard-keys';\nimport { Calendar } from '../Calendar/Calendar';\nimport { CalendarMonthRegular } from '@fluentui/react-icons';\nimport { compareDatePart, DayOfWeek, FirstWeekOfYear } from '../../utils';\nimport { defaultDatePickerStrings } from './defaults';\nimport { Input } from '@fluentui/react-input';\nimport {\n mergeCallbacks,\n resolveShorthand,\n useControllableState,\n useEventCallback,\n useId,\n useMergedRefs,\n useOnClickOutside,\n useOnScrollOutside,\n} from '@fluentui/react-utilities';\nimport { useFieldContext_unstable as useFieldContext } from '@fluentui/react-field';\nimport { useFluent_unstable as useFluent } from '@fluentui/react-shared-contexts';\nimport { useFocusFinders, useModalAttributes } from '@fluentui/react-tabster';\nimport { usePopupPositioning } from '../../utils/usePopupPositioning';\nimport type { CalendarProps, ICalendar } from '../Calendar/Calendar.types';\nimport type { DatePickerProps, DatePickerState, DatePickerValidationResultData } from './DatePicker.types';\nimport type { InputProps, InputOnChangeData } from '@fluentui/react-input';\n\nfunction isDateOutOfBounds(date: Date, minDate?: Date, maxDate?: Date): boolean {\n return (!!minDate && compareDatePart(minDate!, date) > 0) || (!!maxDate && compareDatePart(maxDate!, date) < 0);\n}\n\nfunction useFocusLogic() {\n const inputRef = React.useRef<HTMLInputElement>(null);\n const preventFocusOpeningPicker = React.useRef(false);\n\n const focus = () => {\n inputRef.current?.focus?.();\n };\n\n const preventNextFocusOpeningPicker = () => {\n preventFocusOpeningPicker.current = true;\n };\n\n return [focus, inputRef, preventFocusOpeningPicker, preventNextFocusOpeningPicker] as const;\n}\n\nfunction usePopupVisibility(props: DatePickerProps) {\n const [open, setOpen] = useControllableState({\n initialState: false,\n defaultState: props.defaultOpen,\n state: props.open,\n });\n const isMounted = React.useRef(false);\n\n React.useEffect(\n () => {\n if (isMounted.current && !open) {\n // If DatePicker's menu (Calendar) is closed, run onAfterMenuDismiss\n props.onOpenChange?.(false);\n }\n isMounted.current = true;\n },\n // Should only run on allowTextInput or open change\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [props.allowTextInput, open],\n );\n\n return [open, setOpen] as const;\n}\n\nfunction useSelectedDate({ formatDate, onSelectDate, value }: DatePickerProps) {\n const [selectedDate, setSelectedDateState] = useControllableState({\n initialState: undefined,\n state: value,\n });\n const [formattedDate, setFormattedDate] = React.useState(() => (value && formatDate ? formatDate(value) : ''));\n\n const setSelectedDate = (newDate: Date | undefined) => {\n if (\n (selectedDate === undefined && newDate !== undefined) ||\n (selectedDate !== undefined && newDate === undefined) ||\n (newDate && selectedDate && (newDate > selectedDate || newDate < selectedDate))\n ) {\n onSelectDate?.(newDate);\n }\n\n setSelectedDateState(newDate);\n setFormattedDate(newDate && formatDate ? formatDate(newDate) : '');\n };\n\n React.useEffect(() => {\n setFormattedDate(value && formatDate ? formatDate(value) : '');\n }, [formatDate, value]);\n\n return [selectedDate, formattedDate, setSelectedDate, setFormattedDate] as const;\n}\n\nconst defaultFormatDate = (date?: Date) => (date ? date.toDateString() : '');\nconst defaultParseDateFromString = (dateStr: string) => {\n const date = Date.parse(dateStr);\n return date ? new Date(date) : null;\n};\n\n/**\n * Create the state required to render DatePicker.\n *\n * The returned state can be modified with hooks such as useDatePickerStyles_unstable,\n * before being passed to renderDatePicker_unstable.\n *\n * @param props - props from this instance of DatePicker\n * @param ref - reference to root Input slot\n */\nexport const useDatePicker_unstable = (props: DatePickerProps, ref: React.Ref<HTMLElement>): DatePickerState => {\n const {\n allowTextInput = false,\n allFocusable = false,\n borderless = false,\n dateTimeFormatter,\n defaultOpen = false,\n disableAutoFocus = true,\n firstDayOfWeek = DayOfWeek.Sunday,\n firstWeekOfYear = FirstWeekOfYear.FirstDay,\n formatDate = defaultFormatDate,\n highlightCurrentMonth = false,\n highlightSelectedMonth = false,\n initialPickerDate = new Date(),\n inlinePopup = false,\n isMonthPickerVisible = true,\n maxDate,\n minDate,\n onOpenChange,\n onSelectDate: onUserSelectDate,\n openOnClick = true,\n onValidationResult,\n parseDateFromString = defaultParseDateFromString,\n showCloseButton = false,\n showGoToToday = true,\n showMonthPickerAsOverlay = false,\n showWeekNumbers = false,\n strings = defaultDatePickerStrings,\n today,\n underlined = false,\n value,\n ...restOfProps\n } = props;\n const calendar = React.useRef<ICalendar>(null);\n const [focus, rootRef, preventFocusOpeningPicker, preventNextFocusOpeningPicker] = useFocusLogic();\n const [selectedDate, formattedDate, setSelectedDate, setFormattedDate] = useSelectedDate({\n formatDate,\n onSelectDate: onUserSelectDate,\n value,\n });\n const [open, setOpenState] = usePopupVisibility(props);\n const fieldContext = useFieldContext();\n const required = fieldContext?.required ?? props.required;\n const popupSurfaceId = useId('datePicker-popoverSurface');\n\n const validateTextInput = React.useCallback(\n (date: Date | null = null): void => {\n let error: DatePickerValidationResultData['error'] | undefined;\n\n if (allowTextInput) {\n if (formattedDate || date) {\n // Don't parse if the selected date has the same formatted string as what we're about to parse.\n // The formatted string might be ambiguous (ex: \"1/2/3\" or \"New Year Eve\") and the parser might\n // not be able to come up with the exact same date.\n if (selectedDate && formatDate && formatDate(date ?? selectedDate) === formattedDate) {\n return;\n }\n date = date || parseDateFromString!(formattedDate);\n\n // Check if date is null or date is an invalid date\n if (!date || isNaN(date.getTime())) {\n // Reset input if formatting is available\n setSelectedDate(selectedDate);\n error = 'invalid-input';\n } else {\n if (isDateOutOfBounds(date, minDate, maxDate)) {\n error = 'out-of-bounds';\n } else {\n setSelectedDate(date);\n }\n }\n } else {\n if (required) {\n error = 'required-input';\n }\n\n onUserSelectDate?.(date);\n }\n } else if (required && !formattedDate) {\n error = 'required-input';\n }\n\n onValidationResult?.({ error });\n },\n [\n allowTextInput,\n formatDate,\n formattedDate,\n maxDate,\n minDate,\n onUserSelectDate,\n onValidationResult,\n parseDateFromString,\n required,\n selectedDate,\n setSelectedDate,\n ],\n );\n\n const setOpen = React.useCallback(\n (newState: boolean) => {\n onOpenChange?.(newState);\n setOpenState(newState);\n },\n [onOpenChange, setOpenState],\n );\n\n const dismissDatePickerPopup = React.useCallback(\n (newlySelectedDate?: Date): void => {\n if (open) {\n setOpen(false);\n\n validateTextInput(newlySelectedDate);\n if (!allowTextInput && newlySelectedDate) {\n setSelectedDate(newlySelectedDate);\n }\n }\n },\n [allowTextInput, open, setOpen, setSelectedDate, validateTextInput],\n );\n\n const showDatePickerPopup = React.useCallback((): void => {\n if (!open) {\n preventNextFocusOpeningPicker();\n setOpen(true);\n }\n }, [open, preventNextFocusOpeningPicker, setOpen]);\n\n /**\n * Callback for closing the calendar callout\n */\n const calendarDismissed = React.useCallback(\n (newlySelectedDate?: Date): void => {\n preventNextFocusOpeningPicker();\n dismissDatePickerPopup(newlySelectedDate);\n },\n [dismissDatePickerPopup, preventNextFocusOpeningPicker],\n );\n\n const onInputChange = React.useCallback(\n (ev: React.ChangeEvent<HTMLInputElement>, data: InputOnChangeData) => {\n const { value: newValue } = data;\n\n if (allowTextInput) {\n if (open) {\n dismissDatePickerPopup();\n }\n\n setFormattedDate(newValue);\n }\n },\n [allowTextInput, dismissDatePickerPopup, open, setFormattedDate],\n );\n\n const onInputBlur: React.FocusEventHandler<HTMLInputElement> = React.useCallback((): void => {\n validateTextInput();\n }, [validateTextInput]);\n\n const onInputKeyDown = React.useCallback(\n (ev: React.KeyboardEvent<HTMLElement>): void => {\n switch (ev.key) {\n case Enter:\n ev.preventDefault();\n ev.stopPropagation();\n if (!open) {\n validateTextInput();\n showDatePickerPopup();\n } else {\n // When DatePicker allows input date string directly,\n // it is expected to hit another enter to close the popup\n if (props.allowTextInput) {\n dismissDatePickerPopup();\n }\n }\n break;\n\n case Escape:\n ev.stopPropagation();\n ev.preventDefault();\n if (open) {\n calendarDismissed();\n }\n break;\n\n case ArrowDown:\n ev.preventDefault();\n if (ev.altKey && !open) {\n showDatePickerPopup();\n }\n break;\n\n default:\n break;\n }\n },\n [calendarDismissed, dismissDatePickerPopup, open, props.allowTextInput, showDatePickerPopup, validateTextInput],\n );\n\n const onInputFocus: React.FocusEventHandler<HTMLInputElement> = React.useCallback((): void => {\n if (disableAutoFocus) {\n return;\n }\n\n if (!allowTextInput) {\n if (!preventFocusOpeningPicker.current) {\n showDatePickerPopup();\n }\n preventFocusOpeningPicker.current = false;\n }\n }, [allowTextInput, disableAutoFocus, preventFocusOpeningPicker, showDatePickerPopup]);\n\n const onInputClick: React.MouseEventHandler<HTMLInputElement> = React.useCallback((): void => {\n // default openOnClick to !props.disableAutoFocus for legacy support of disableAutoFocus behavior\n if ((openOnClick || !disableAutoFocus) && !open && !props.disabled) {\n showDatePickerPopup();\n return;\n }\n\n if (allowTextInput) {\n dismissDatePickerPopup();\n }\n }, [\n allowTextInput,\n disableAutoFocus,\n dismissDatePickerPopup,\n openOnClick,\n open,\n props.disabled,\n showDatePickerPopup,\n ]);\n\n const onIconClick = (ev: React.MouseEvent<HTMLElement>): void => {\n ev.stopPropagation();\n if (!open && !props.disabled) {\n showDatePickerPopup();\n } else if (props.allowTextInput) {\n dismissDatePickerPopup();\n }\n };\n\n const inputAppearance: InputProps['appearance'] = underlined\n ? 'underline'\n : borderless\n ? 'filled-lighter'\n : 'outline';\n\n const [triggerWrapperRef, popupRef] = usePopupPositioning(props);\n const rootShorthand = resolveShorthand(restOfProps, {\n required: true,\n defaultProps: {\n appearance: inputAppearance,\n 'aria-controls': open ? popupSurfaceId : undefined,\n 'aria-expanded': open,\n 'aria-haspopup': 'dialog',\n contentAfter: <CalendarMonthRegular onClick={onIconClick as unknown as React.MouseEventHandler<SVGElement>} />,\n readOnly: !allowTextInput,\n role: 'combobox',\n root: {\n ref: useMergedRefs(triggerWrapperRef, ref),\n 'aria-owns': popupSurfaceId,\n },\n input: {\n ref: rootRef,\n },\n },\n });\n rootShorthand.onChange = mergeCallbacks(rootShorthand.onChange, onInputChange);\n rootShorthand.onBlur = mergeCallbacks(rootShorthand.onBlur, onInputBlur);\n rootShorthand.onKeyDown = mergeCallbacks(rootShorthand.onKeyDown, onInputKeyDown);\n rootShorthand.onFocus = mergeCallbacks(rootShorthand.onFocus, onInputFocus);\n rootShorthand.onClick = mergeCallbacks(rootShorthand.onClick, onInputClick);\n\n const { modalAttributes } = useModalAttributes({ trapFocus: true, alwaysFocusable: true, legacyTrapFocus: false });\n const popupSurfaceShorthand = open\n ? resolveShorthand(props.popupSurface, {\n required: true,\n defaultProps: {\n 'aria-label': 'Calendar',\n 'aria-modal': true,\n id: popupSurfaceId,\n role: 'dialog',\n ref: popupRef,\n ...modalAttributes,\n },\n })\n : undefined;\n\n const { targetDocument } = useFluent();\n useOnClickOutside({\n element: targetDocument,\n callback: ev => dismissDatePickerPopup(),\n refs: [triggerWrapperRef, popupRef],\n disabled: !open,\n });\n\n useOnScrollOutside({\n element: targetDocument,\n callback: ev => dismissDatePickerPopup(),\n refs: [triggerWrapperRef, popupRef],\n disabled: !open,\n });\n\n const { findFirstFocusable } = useFocusFinders();\n React.useEffect(() => {\n if (disableAutoFocus) {\n return;\n }\n\n if (open && popupRef.current) {\n const firstFocusable = findFirstFocusable(popupRef.current);\n firstFocusable?.focus();\n }\n }, [disableAutoFocus, findFirstFocusable, open, popupRef]);\n\n const popupOnClick = useEventCallback(\n mergeCallbacks((ev: React.MouseEvent<HTMLDivElement>) => {\n rootRef.current?.focus();\n }, popupSurfaceShorthand?.onClick),\n );\n\n if (popupSurfaceShorthand) {\n popupSurfaceShorthand.onClick = popupOnClick;\n }\n\n const calendarShorthand = resolveShorthand(props.calendar, {\n required: true,\n defaultProps: {\n allFocusable,\n componentRef: calendar,\n dateTimeFormatter,\n firstDayOfWeek,\n firstWeekOfYear,\n highlightCurrentMonth,\n highlightSelectedMonth,\n isMonthPickerVisible,\n maxDate,\n minDate,\n onDismiss: calendarDismissed,\n showCloseButton,\n showGoToToday,\n showMonthPickerAsOverlay,\n showWeekNumbers,\n strings,\n today,\n value: selectedDate || initialPickerDate,\n },\n });\n\n React.useImperativeHandle(\n props.componentRef,\n () => ({\n focus,\n reset() {\n setOpen(false);\n setSelectedDate(undefined);\n },\n showDatePickerPopup,\n }),\n [focus, setOpen, setSelectedDate, showDatePickerPopup],\n );\n\n const state: DatePickerState = {\n disabled: !!props.disabled,\n inlinePopup,\n\n components: {\n root: Input,\n calendar: Calendar as React.FC<Partial<CalendarProps>>,\n popupSurface: 'div',\n },\n\n calendar: calendarShorthand,\n root: rootShorthand,\n popupSurface: popupSurfaceShorthand,\n };\n\n state.root.value = formattedDate;\n state.calendar.onSelectDate = mergeCallbacks(state.calendar.onSelectDate, calendarDismissed);\n\n return state;\n};\n"],"mappings":"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"}
@@ -35,4 +35,4 @@ export const useDatePickerStyles_unstable = state => {
35
35
  state.calendar.className = mergeClasses(datePickerClassNames.calendar, state.calendar.className);
36
36
  return state;
37
37
  };
38
- //# sourceMappingURL=useDatePickerStyles.js.map
38
+ //# sourceMappingURL=useDatePickerStyles.styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["__resetStyles","__styles","mergeClasses","tokens","typographyStyles","datePickerClassNames","root","calendar","popupSurface","useStyles","base","qhf8xq","Bceei9c","xfaavh","disabled","d","usePopupSurfaceClassName","useDatePickerStyles_unstable","state","styles","popupSurfaceClassName","className"],"sources":["../../../src/components/DatePicker/useDatePickerStyles.styles.ts"],"sourcesContent":["import { makeResetStyles, makeStyles, mergeClasses } from '@griffel/react';\nimport { tokens, typographyStyles } from '@fluentui/react-theme';\nimport type { SlotClassNames } from '@fluentui/react-utilities';\nimport type { DatePickerSlots, DatePickerState } from './DatePicker.types';\n\nexport const datePickerClassNames: SlotClassNames<DatePickerSlots> = {\n root: 'fui-DatePicker',\n calendar: 'fui-DatePicker__calendar',\n popupSurface: 'fui-DatePicker__popupSurface',\n};\n\nconst useStyles = makeStyles({\n base: {\n position: 'relative',\n cursor: 'pointer',\n '& input': {\n cursor: 'pointer',\n },\n },\n disabled: {\n cursor: 'default',\n '& input': {\n cursor: 'default',\n },\n },\n});\n\nconst usePopupSurfaceClassName = makeResetStyles({\n backgroundColor: tokens.colorNeutralBackground1,\n boxShadow: tokens.shadow16,\n borderRadius: tokens.borderRadiusMedium,\n borderWidth: '1px',\n borderStyle: 'solid',\n borderColor: tokens.colorTransparentStroke,\n display: 'inline-flex',\n color: tokens.colorNeutralForeground1,\n ...typographyStyles.body1,\n});\n\n/**\n * Apply styling to the DatePicker slots based on the state\n */\nexport const useDatePickerStyles_unstable = (state: DatePickerState): DatePickerState => {\n const styles = useStyles();\n const popupSurfaceClassName = usePopupSurfaceClassName();\n const { disabled } = state;\n\n state.root.className = mergeClasses(\n datePickerClassNames.root,\n styles.base,\n disabled && styles.disabled,\n state.root.className,\n );\n\n if (state.popupSurface) {\n state.popupSurface.className = mergeClasses(\n datePickerClassNames.popupSurface,\n popupSurfaceClassName,\n state.popupSurface.className,\n );\n }\n\n state.calendar.className = mergeClasses(datePickerClassNames.calendar, state.calendar.className);\n\n return state;\n};\n"],"mappings":"AAAA,SAAAA,aAAA,EAAAC,QAAA,EAAsCC,YAAY,QAAQ;AAC1D,SAASC,MAAM,EAAEC,gBAAgB,QAAQ;AAIzC,OAAO,MAAMC,oBAAA,GAAwD;EACnEC,IAAA,EAAM;EACNC,QAAA,EAAU;EACVC,YAAA,EAAc;AAChB;AAEA,MAAMC,SAAA,gBAAYR,QAAA;EAAAS,IAAA;IAAAC,MAAA;IAAAC,OAAA;IAAAC,MAAA;EAAA;EAAAC,QAAA;IAAAF,OAAA;IAAAC,MAAA;EAAA;AAAA;EAAAE,CAAA;AAAA,EAclB;AAEA,MAAMC,wBAAA,gBAA2BhB,aAAA,6fAUjC;AAEA;;;AAGA,OAAO,MAAMiB,4BAAA,GAAgCC,KAAA,IAA4C;EACvF,MAAMC,MAAA,GAASV,SAAA;EACf,MAAMW,qBAAA,GAAwBJ,wBAAA;EAC9B,MAAM;IAAEF;EAAQ,CAAE,GAAGI,KAAA;EAErBA,KAAA,CAAMZ,IAAI,CAACe,SAAS,GAAGnB,YAAA,CACrBG,oBAAA,CAAqBC,IAAI,EACzBa,MAAA,CAAOT,IAAI,EACXI,QAAA,IAAYK,MAAA,CAAOL,QAAQ,EAC3BI,KAAA,CAAMZ,IAAI,CAACe,SAAS;EAGtB,IAAIH,KAAA,CAAMV,YAAY,EAAE;IACtBU,KAAA,CAAMV,YAAY,CAACa,SAAS,GAAGnB,YAAA,CAC7BG,oBAAA,CAAqBG,YAAY,EACjCY,qBAAA,EACAF,KAAA,CAAMV,YAAY,CAACa,SAAS;EAEhC;EAEAH,KAAA,CAAMX,QAAQ,CAACc,SAAS,GAAGnB,YAAA,CAAaG,oBAAA,CAAqBE,QAAQ,EAAEW,KAAA,CAAMX,QAAQ,CAACc,SAAS;EAE/F,OAAOH,KAAA;AACT"}
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"names":["AnimationDirection","DatePicker","datePickerClassNames","defaultDatePickerErrorStrings","defaultDatePickerStrings","renderDatePicker_unstable","useDatePicker_unstable","useDatePickerStyles_unstable","DAYS_IN_WEEK","DateRangeType","DayOfWeek","FirstWeekOfYear","MonthOfYear","TimeConstants","addDays","addMonths","addWeeks","addYears","compareDatePart","compareDates","getDatePartHashValue","getDateRangeArray","getEndDateOfWeek","getMonthEnd","getMonthStart","getStartDateOfWeek","getWeekNumber","getWeekNumbersInMonth","getYearEnd","getYearStart","isInDateRangeArray","setMonth"],"sources":["../src/index.ts"],"sourcesContent":["export { AnimationDirection } from './Calendar';\nexport type { CalendarProps, ICalendar } from './Calendar';\n\nexport type { CalendarDayProps, ICalendarDay } from './CalendarDay';\n\nexport type { CalendarMonthProps, ICalendarMonth } from './CalendarMonth';\n\nexport {\n DatePicker,\n datePickerClassNames,\n defaultDatePickerErrorStrings,\n defaultDatePickerStrings,\n renderDatePicker_unstable,\n useDatePicker_unstable,\n useDatePickerStyles_unstable,\n} from './DatePicker';\nexport type { DatePickerErrorData, DatePickerProps, IDatePicker } from './DatePicker';\n\nexport {\n DAYS_IN_WEEK,\n DateRangeType,\n DayOfWeek,\n FirstWeekOfYear,\n MonthOfYear,\n TimeConstants,\n addDays,\n addMonths,\n addWeeks,\n addYears,\n compareDatePart,\n compareDates,\n getDatePartHashValue,\n getDateRangeArray,\n getEndDateOfWeek,\n getMonthEnd,\n getMonthStart,\n getStartDateOfWeek,\n getWeekNumber,\n getWeekNumbersInMonth,\n getYearEnd,\n getYearStart,\n isInDateRangeArray,\n setMonth,\n} from './utils';\nexport type { CalendarStrings, DateFormatting, DateGridStrings } from './utils';\n"],"mappings":"AAAA,SAASA,kBAAkB,QAAQ;AAOnC,SACEC,UAAU,EACVC,oBAAoB,EACpBC,6BAA6B,EAC7BC,wBAAwB,EACxBC,yBAAyB,EACzBC,sBAAsB,EACtBC,4BAA4B,QACvB;AAGP,SACEC,YAAY,EACZC,aAAa,EACbC,SAAS,EACTC,eAAe,EACfC,WAAW,EACXC,aAAa,EACbC,OAAO,EACPC,SAAS,EACTC,QAAQ,EACRC,QAAQ,EACRC,eAAe,EACfC,YAAY,EACZC,oBAAoB,EACpBC,iBAAiB,EACjBC,gBAAgB,EAChBC,WAAW,EACXC,aAAa,EACbC,kBAAkB,EAClBC,aAAa,EACbC,qBAAqB,EACrBC,UAAU,EACVC,YAAY,EACZC,kBAAkB,EAClBC,QAAQ,QACH"}
1
+ {"version":3,"names":["AnimationDirection","DatePicker","datePickerClassNames","defaultDatePickerErrorStrings","defaultDatePickerStrings","renderDatePicker_unstable","useDatePicker_unstable","useDatePickerStyles_unstable","DAYS_IN_WEEK","DateRangeType","DayOfWeek","FirstWeekOfYear","MonthOfYear","TimeConstants","addDays","addMonths","addWeeks","addYears","compareDatePart","compareDates","getDatePartHashValue","getDateRangeArray","getEndDateOfWeek","getMonthEnd","getMonthStart","getStartDateOfWeek","getWeekNumber","getWeekNumbersInMonth","getYearEnd","getYearStart","isInDateRangeArray","setMonth"],"sources":["../src/index.ts"],"sourcesContent":["export { AnimationDirection } from './Calendar';\nexport type { CalendarProps, ICalendar } from './Calendar';\n\nexport type { CalendarDayProps, ICalendarDay } from './CalendarDay';\n\nexport type { CalendarMonthProps, ICalendarMonth } from './CalendarMonth';\n\nexport {\n DatePicker,\n datePickerClassNames,\n defaultDatePickerErrorStrings,\n defaultDatePickerStrings,\n renderDatePicker_unstable,\n useDatePicker_unstable,\n useDatePickerStyles_unstable,\n} from './DatePicker';\nexport type { DatePickerErrorType, DatePickerProps, DatePickerValidationResultData, IDatePicker } from './DatePicker';\n\nexport {\n DAYS_IN_WEEK,\n DateRangeType,\n DayOfWeek,\n FirstWeekOfYear,\n MonthOfYear,\n TimeConstants,\n addDays,\n addMonths,\n addWeeks,\n addYears,\n compareDatePart,\n compareDates,\n getDatePartHashValue,\n getDateRangeArray,\n getEndDateOfWeek,\n getMonthEnd,\n getMonthStart,\n getStartDateOfWeek,\n getWeekNumber,\n getWeekNumbersInMonth,\n getYearEnd,\n getYearStart,\n isInDateRangeArray,\n setMonth,\n} from './utils';\nexport type { CalendarStrings, DateFormatting, DateGridStrings } from './utils';\n"],"mappings":"AAAA,SAASA,kBAAkB,QAAQ;AAOnC,SACEC,UAAU,EACVC,oBAAoB,EACpBC,6BAA6B,EAC7BC,wBAAwB,EACxBC,yBAAyB,EACzBC,sBAAsB,EACtBC,4BAA4B,QACvB;AAGP,SACEC,YAAY,EACZC,aAAa,EACbC,SAAS,EACTC,eAAe,EACfC,WAAW,EACXC,aAAa,EACbC,OAAO,EACPC,SAAS,EACTC,QAAQ,EACRC,QAAQ,EACRC,eAAe,EACfC,YAAY,EACZC,oBAAoB,EACpBC,iBAAiB,EACjBC,gBAAgB,EAChBC,WAAW,EACXC,aAAa,EACbC,kBAAkB,EAClBC,aAAa,EACbC,qBAAqB,EACrBC,UAAU,EACVC,YAAY,EACZC,kBAAkB,EAClBC,QAAQ,QACH"}
@@ -13,7 +13,7 @@ const _reactUtilities = require("@fluentui/react-utilities");
13
13
  const _utils = require("../../utils");
14
14
  const _calendarDay = require("../CalendarDay/CalendarDay");
15
15
  const _calendarMonth = require("../CalendarMonth/CalendarMonth");
16
- const _useCalendarStyles = require("./useCalendarStyles");
16
+ const _useCalendarStylesStyles = require("./useCalendarStyles.styles");
17
17
  const MIN_SIZE_FORCE_OVERLAY = 440;
18
18
  const defaultWorkWeekDays = [
19
19
  _utils.DayOfWeek.Monday,
@@ -224,7 +224,7 @@ const Calendar = /*#__PURE__*/ _react.forwardRef((props, forwardedRef)=>{
224
224
  };
225
225
  const showMonthPickerAsOverlay = getShowMonthPickerAsOverlay(props);
226
226
  const monthPickerOnly = !showMonthPickerAsOverlay && !isDayPickerVisible;
227
- const classes = (0, _useCalendarStyles.useCalendarStyles_unstable)({
227
+ const classes = (0, _useCalendarStylesStyles.useCalendarStyles_unstable)({
228
228
  className,
229
229
  isDayPickerVisible,
230
230
  isMonthPickerVisible,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/components/Calendar/Calendar.js"],"sourcesContent":["import * as React from 'react';\nimport { Backspace, Enter, Escape, PageDown, PageUp, Space } from '@fluentui/keyboard-keys';\nimport { useControllableState } from '@fluentui/react-utilities';\nimport { addMonths, addYears, DateRangeType, DayOfWeek, DEFAULT_CALENDAR_STRINGS, DEFAULT_DATE_FORMATTING, FirstWeekOfYear, focusAsync, getWindow } from '../../utils';\nimport { CalendarDay } from '../CalendarDay/CalendarDay';\nimport { CalendarMonth } from '../CalendarMonth/CalendarMonth';\nimport { useCalendarStyles_unstable } from './useCalendarStyles';\nconst MIN_SIZE_FORCE_OVERLAY = 440;\nconst defaultWorkWeekDays = [DayOfWeek.Monday, DayOfWeek.Tuesday, DayOfWeek.Wednesday, DayOfWeek.Thursday, DayOfWeek.Friday];\nfunction useDateState({\n value,\n today = new Date(),\n onSelectDate\n}) {\n /** The currently selected date in the calendar */const [selectedDate, setSelectedDate] = useControllableState({\n defaultState: today,\n initialState: today,\n state: value\n });\n /** The currently focused date in the day picker, but not necessarily selected */\n const [navigatedDay = today, setNavigatedDay] = React.useState(value);\n /** The currently focused date in the month picker, but not necessarily selected */\n const [navigatedMonth = today, setNavigatedMonth] = React.useState(value);\n /** If using a controlled value, when that value changes, navigate to that date */\n const [lastSelectedDate = today, setLastSelectedDate] = React.useState(value);\n if (value && lastSelectedDate.valueOf() !== value.valueOf()) {\n setNavigatedDay(value);\n setNavigatedMonth(value);\n setLastSelectedDate(value);\n }\n const navigateMonth = date => {\n setNavigatedMonth(date);\n };\n const navigateDay = date => {\n setNavigatedMonth(date);\n setNavigatedDay(date);\n };\n const onDateSelected = (date, selectedDateRangeArray) => {\n setNavigatedMonth(date);\n setNavigatedDay(date);\n setSelectedDate(date);\n onSelectDate === null || onSelectDate === void 0 ? void 0 : onSelectDate(date, selectedDateRangeArray);\n };\n return [selectedDate, navigatedDay, navigatedMonth, onDateSelected, navigateDay, navigateMonth];\n}\nfunction useVisibilityState({\n isDayPickerVisible: isDayPickerVisibleProp,\n isMonthPickerVisible: isMonthPickerVisibleProp,\n showMonthPickerAsOverlay\n}) {\n /** State used to show/hide month picker */const [isMonthPickerVisible, setIsMonthPickerVisible] = useControllableState({\n defaultState: false,\n initialState: true,\n state: getShowMonthPickerAsOverlay({\n isDayPickerVisible: isDayPickerVisibleProp,\n showMonthPickerAsOverlay\n }) ? undefined : isMonthPickerVisibleProp\n });\n /** State used to show/hide day picker */\n const [isDayPickerVisible, setIsDayPickerVisible] = useControllableState({\n defaultState: true,\n initialState: true,\n state: getShowMonthPickerAsOverlay({\n isDayPickerVisible: isDayPickerVisibleProp,\n showMonthPickerAsOverlay\n }) ? undefined : isDayPickerVisibleProp\n });\n const toggleDayMonthPickerVisibility = () => {\n setIsMonthPickerVisible(!isMonthPickerVisible);\n setIsDayPickerVisible(!isDayPickerVisible);\n };\n return [isMonthPickerVisible, isDayPickerVisible, toggleDayMonthPickerVisibility];\n}\nfunction useFocusLogic({\n componentRef\n}, isDayPickerVisible, isMonthPickerVisible) {\n const dayPicker = React.useRef(null);\n const monthPicker = React.useRef(null);\n const focusOnUpdate = React.useRef(false);\n const focus = React.useCallback(() => {\n if (isDayPickerVisible && dayPicker.current) {\n focusAsync(dayPicker.current);\n } else if (isMonthPickerVisible && monthPicker.current) {\n focusAsync(monthPicker.current);\n }\n }, [isDayPickerVisible, isMonthPickerVisible]);\n React.useImperativeHandle(componentRef, () => ({\n focus\n }), [focus]);\n React.useEffect(() => {\n if (focusOnUpdate.current) {\n focus();\n focusOnUpdate.current = false;\n }\n });\n const focusOnNextUpdate = () => {\n focusOnUpdate.current = true;\n };\n return [dayPicker, monthPicker, focusOnNextUpdate];\n}\n/**\n * @internal\n */\nexport const Calendar = /*#__PURE__*/React.forwardRef((props, forwardedRef) => {\n const {\n allFocusable = false,\n calendarDayProps,\n calendarMonthProps,\n className,\n componentRef,\n dateRangeType = DateRangeType.Day,\n dateTimeFormatter = DEFAULT_DATE_FORMATTING,\n firstDayOfWeek = DayOfWeek.Sunday,\n firstWeekOfYear = FirstWeekOfYear.FirstDay,\n highlightCurrentMonth = false,\n highlightSelectedMonth = false,\n id,\n isDayPickerVisible: isDayPickerVisibleProp = true,\n isMonthPickerVisible: isMonthPickerVisibleProp = true,\n maxDate,\n minDate,\n onDismiss,\n onSelectDate,\n restrictedDates,\n showCloseButton = false,\n showGoToToday = true,\n showMonthPickerAsOverlay: showMonthPickerAsOverlayProp = false,\n showSixWeeksByDefault = false,\n showWeekNumbers = false,\n strings = DEFAULT_CALENDAR_STRINGS,\n today = new Date(),\n value,\n workWeekDays = defaultWorkWeekDays\n } = props;\n const [selectedDate, navigatedDay, navigatedMonth, onDateSelected, navigateDay, navigateMonth] = useDateState({\n onSelectDate,\n value,\n today\n });\n const [isMonthPickerVisible, isDayPickerVisible, toggleDayMonthPickerVisibility] = useVisibilityState({\n isDayPickerVisible: isDayPickerVisibleProp,\n isMonthPickerVisible: isMonthPickerVisibleProp,\n showMonthPickerAsOverlay: showMonthPickerAsOverlayProp\n });\n const [dayPicker, monthPicker, focusOnNextUpdate] = useFocusLogic({\n componentRef\n }, isDayPickerVisible, isMonthPickerVisible);\n const renderGoToTodayButton = () => {\n let goTodayEnabled = showGoToToday;\n if (goTodayEnabled && today) {\n goTodayEnabled = navigatedDay.getFullYear() !== today.getFullYear() || navigatedDay.getMonth() !== today.getMonth() || navigatedMonth.getFullYear() !== today.getFullYear() || navigatedMonth.getMonth() !== today.getMonth();\n }\n return showGoToToday && /*#__PURE__*/React.createElement(\"button\", {\n className: classes.goTodayButton,\n onClick: onGotoToday,\n onKeyDown: onButtonKeyDown(onGotoToday),\n type: \"button\",\n disabled: !goTodayEnabled\n }, strings.goToToday);\n };\n const onNavigateDayDate = (date, focusOnNavigatedDay) => {\n navigateDay(date);\n if (focusOnNavigatedDay) {\n focusOnNextUpdate();\n }\n };\n const onNavigateMonthDate = (date, focusOnNavigatedDay) => {\n if (focusOnNavigatedDay) {\n focusOnNextUpdate();\n }\n if (!focusOnNavigatedDay) {\n navigateMonth(date);\n return;\n }\n if (monthPickerOnly) {\n onDateSelected(date);\n }\n navigateDay(date);\n };\n const onHeaderSelect = getShowMonthPickerAsOverlay({\n isDayPickerVisible: isDayPickerVisibleProp,\n showMonthPickerAsOverlay: showMonthPickerAsOverlayProp\n }) ? () => {\n toggleDayMonthPickerVisibility();\n focusOnNextUpdate();\n } : undefined;\n const onGotoToday = () => {\n navigateDay(today);\n focusOnNextUpdate();\n };\n const onButtonKeyDown = callback => {\n return ev => {\n switch (ev.key) {\n case Enter:\n case Space:\n callback();\n break;\n }\n };\n };\n const onDatePickerPopupKeyDown = ev => {\n switch (ev.key) {\n case Enter:\n ev.preventDefault();\n break;\n case Backspace:\n ev.preventDefault();\n break;\n case Escape:\n onDismiss === null || onDismiss === void 0 ? void 0 : onDismiss();\n break;\n case PageUp:\n if (ev.ctrlKey) {\n // go to next year\n navigateDay(addYears(navigatedDay, 1));\n } else {\n // go to next month\n navigateDay(addMonths(navigatedDay, 1));\n }\n ev.preventDefault();\n break;\n case PageDown:\n if (ev.ctrlKey) {\n // go to previous year\n navigateDay(addYears(navigatedDay, -1));\n } else {\n // go to previous month\n navigateDay(addMonths(navigatedDay, -1));\n }\n ev.preventDefault();\n break;\n default:\n break;\n }\n };\n const showMonthPickerAsOverlay = getShowMonthPickerAsOverlay(props);\n const monthPickerOnly = !showMonthPickerAsOverlay && !isDayPickerVisible;\n const classes = useCalendarStyles_unstable({\n className,\n isDayPickerVisible,\n isMonthPickerVisible,\n showWeekNumbers\n });\n let todayDateString = '';\n let selectedDateString = '';\n if (dateTimeFormatter && strings.todayDateFormatString) {\n todayDateString = strings.todayDateFormatString.replace('{0}', dateTimeFormatter.formatMonthDayYear(today, strings));\n }\n if (dateTimeFormatter && strings.selectedDateFormatString) {\n selectedDateString = strings.selectedDateFormatString.replace('{0}', dateTimeFormatter.formatMonthDayYear(selectedDate, strings));\n }\n const selectionAndTodayString = selectedDateString + ', ' + todayDateString;\n return /*#__PURE__*/React.createElement(\"div\", {\n id: id,\n ref: forwardedRef,\n role: \"group\",\n \"aria-label\": selectionAndTodayString,\n className: classes.root,\n onKeyDown: onDatePickerPopupKeyDown\n }, /*#__PURE__*/React.createElement(\"div\", {\n className: classes.liveRegion,\n \"aria-live\": \"polite\",\n \"aria-atomic\": \"true\"\n }, /*#__PURE__*/React.createElement(\"span\", null, selectedDateString)), isDayPickerVisible && /*#__PURE__*/React.createElement(CalendarDay, {\n selectedDate: selectedDate,\n navigatedDate: navigatedDay,\n today: today,\n onSelectDate: onDateSelected,\n // eslint-disable-next-line react/jsx-no-bind\n onNavigateDate: onNavigateDayDate,\n onDismiss: onDismiss,\n firstDayOfWeek: firstDayOfWeek,\n dateRangeType: dateRangeType,\n strings: strings,\n // eslint-disable-next-line react/jsx-no-bind\n onHeaderSelect: onHeaderSelect,\n showWeekNumbers: showWeekNumbers,\n firstWeekOfYear: firstWeekOfYear,\n dateTimeFormatter: dateTimeFormatter,\n showSixWeeksByDefault: showSixWeeksByDefault,\n minDate: minDate,\n maxDate: maxDate,\n restrictedDates: restrictedDates,\n workWeekDays: workWeekDays,\n componentRef: dayPicker,\n showCloseButton: showCloseButton,\n allFocusable: allFocusable,\n ...calendarDayProps\n }), isDayPickerVisible && isMonthPickerVisible && /*#__PURE__*/React.createElement(\"div\", {\n className: classes.divider\n }), isMonthPickerVisible ? /*#__PURE__*/React.createElement(\"div\", {\n className: classes.monthPickerWrapper\n }, /*#__PURE__*/React.createElement(CalendarMonth, {\n navigatedDate: navigatedMonth,\n selectedDate: navigatedDay,\n strings: strings,\n // eslint-disable-next-line react/jsx-no-bind\n onNavigateDate: onNavigateMonthDate,\n today: today,\n highlightCurrentMonth: highlightCurrentMonth,\n highlightSelectedMonth: highlightSelectedMonth,\n // eslint-disable-next-line react/jsx-no-bind\n onHeaderSelect: onHeaderSelect,\n dateTimeFormatter: dateTimeFormatter,\n minDate: minDate,\n maxDate: maxDate,\n componentRef: monthPicker,\n ...calendarMonthProps\n }), renderGoToTodayButton()) : renderGoToTodayButton());\n});\nCalendar.displayName = 'Calendar';\nfunction getShowMonthPickerAsOverlay({\n isDayPickerVisible,\n showMonthPickerAsOverlay\n}) {\n const win = getWindow();\n return showMonthPickerAsOverlay || isDayPickerVisible && win && win.innerWidth <= MIN_SIZE_FORCE_OVERLAY;\n}\n//# sourceMappingURL=Calendar.js.map"],"names":["Calendar","MIN_SIZE_FORCE_OVERLAY","defaultWorkWeekDays","DayOfWeek","Monday","Tuesday","Wednesday","Thursday","Friday","useDateState","value","today","Date","onSelectDate","selectedDate","setSelectedDate","useControllableState","defaultState","initialState","state","navigatedDay","setNavigatedDay","React","useState","navigatedMonth","setNavigatedMonth","lastSelectedDate","setLastSelectedDate","valueOf","navigateMonth","date","navigateDay","onDateSelected","selectedDateRangeArray","useVisibilityState","isDayPickerVisible","isDayPickerVisibleProp","isMonthPickerVisible","isMonthPickerVisibleProp","showMonthPickerAsOverlay","setIsMonthPickerVisible","getShowMonthPickerAsOverlay","undefined","setIsDayPickerVisible","toggleDayMonthPickerVisibility","useFocusLogic","componentRef","dayPicker","useRef","monthPicker","focusOnUpdate","focus","useCallback","current","focusAsync","useImperativeHandle","useEffect","focusOnNextUpdate","forwardRef","props","forwardedRef","allFocusable","calendarDayProps","calendarMonthProps","className","dateRangeType","DateRangeType","Day","dateTimeFormatter","DEFAULT_DATE_FORMATTING","firstDayOfWeek","Sunday","firstWeekOfYear","FirstWeekOfYear","FirstDay","highlightCurrentMonth","highlightSelectedMonth","id","maxDate","minDate","onDismiss","restrictedDates","showCloseButton","showGoToToday","showMonthPickerAsOverlayProp","showSixWeeksByDefault","showWeekNumbers","strings","DEFAULT_CALENDAR_STRINGS","workWeekDays","renderGoToTodayButton","goTodayEnabled","getFullYear","getMonth","createElement","classes","goTodayButton","onClick","onGotoToday","onKeyDown","onButtonKeyDown","type","disabled","goToToday","onNavigateDayDate","focusOnNavigatedDay","onNavigateMonthDate","monthPickerOnly","onHeaderSelect","callback","ev","key","Enter","Space","onDatePickerPopupKeyDown","preventDefault","Backspace","Escape","PageUp","ctrlKey","addYears","addMonths","PageDown","useCalendarStyles_unstable","todayDateString","selectedDateString","todayDateFormatString","replace","formatMonthDayYear","selectedDateFormatString","selectionAndTodayString","ref","role","root","liveRegion","CalendarDay","navigatedDate","onNavigateDate","divider","monthPickerWrapper","CalendarMonth","displayName","win","getWindow","innerWidth"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../lib/components/Calendar/Calendar.js"],"sourcesContent":["import * as React from 'react';\nimport { Backspace, Enter, Escape, PageDown, PageUp, Space } from '@fluentui/keyboard-keys';\nimport { useControllableState } from '@fluentui/react-utilities';\nimport { addMonths, addYears, DateRangeType, DayOfWeek, DEFAULT_CALENDAR_STRINGS, DEFAULT_DATE_FORMATTING, FirstWeekOfYear, focusAsync, getWindow } from '../../utils';\nimport { CalendarDay } from '../CalendarDay/CalendarDay';\nimport { CalendarMonth } from '../CalendarMonth/CalendarMonth';\nimport { useCalendarStyles_unstable } from './useCalendarStyles.styles';\nconst MIN_SIZE_FORCE_OVERLAY = 440;\nconst defaultWorkWeekDays = [DayOfWeek.Monday, DayOfWeek.Tuesday, DayOfWeek.Wednesday, DayOfWeek.Thursday, DayOfWeek.Friday];\nfunction useDateState({\n value,\n today = new Date(),\n onSelectDate\n}) {\n /** The currently selected date in the calendar */const [selectedDate, setSelectedDate] = useControllableState({\n defaultState: today,\n initialState: today,\n state: value\n });\n /** The currently focused date in the day picker, but not necessarily selected */\n const [navigatedDay = today, setNavigatedDay] = React.useState(value);\n /** The currently focused date in the month picker, but not necessarily selected */\n const [navigatedMonth = today, setNavigatedMonth] = React.useState(value);\n /** If using a controlled value, when that value changes, navigate to that date */\n const [lastSelectedDate = today, setLastSelectedDate] = React.useState(value);\n if (value && lastSelectedDate.valueOf() !== value.valueOf()) {\n setNavigatedDay(value);\n setNavigatedMonth(value);\n setLastSelectedDate(value);\n }\n const navigateMonth = date => {\n setNavigatedMonth(date);\n };\n const navigateDay = date => {\n setNavigatedMonth(date);\n setNavigatedDay(date);\n };\n const onDateSelected = (date, selectedDateRangeArray) => {\n setNavigatedMonth(date);\n setNavigatedDay(date);\n setSelectedDate(date);\n onSelectDate === null || onSelectDate === void 0 ? void 0 : onSelectDate(date, selectedDateRangeArray);\n };\n return [selectedDate, navigatedDay, navigatedMonth, onDateSelected, navigateDay, navigateMonth];\n}\nfunction useVisibilityState({\n isDayPickerVisible: isDayPickerVisibleProp,\n isMonthPickerVisible: isMonthPickerVisibleProp,\n showMonthPickerAsOverlay\n}) {\n /** State used to show/hide month picker */const [isMonthPickerVisible, setIsMonthPickerVisible] = useControllableState({\n defaultState: false,\n initialState: true,\n state: getShowMonthPickerAsOverlay({\n isDayPickerVisible: isDayPickerVisibleProp,\n showMonthPickerAsOverlay\n }) ? undefined : isMonthPickerVisibleProp\n });\n /** State used to show/hide day picker */\n const [isDayPickerVisible, setIsDayPickerVisible] = useControllableState({\n defaultState: true,\n initialState: true,\n state: getShowMonthPickerAsOverlay({\n isDayPickerVisible: isDayPickerVisibleProp,\n showMonthPickerAsOverlay\n }) ? undefined : isDayPickerVisibleProp\n });\n const toggleDayMonthPickerVisibility = () => {\n setIsMonthPickerVisible(!isMonthPickerVisible);\n setIsDayPickerVisible(!isDayPickerVisible);\n };\n return [isMonthPickerVisible, isDayPickerVisible, toggleDayMonthPickerVisibility];\n}\nfunction useFocusLogic({\n componentRef\n}, isDayPickerVisible, isMonthPickerVisible) {\n const dayPicker = React.useRef(null);\n const monthPicker = React.useRef(null);\n const focusOnUpdate = React.useRef(false);\n const focus = React.useCallback(() => {\n if (isDayPickerVisible && dayPicker.current) {\n focusAsync(dayPicker.current);\n } else if (isMonthPickerVisible && monthPicker.current) {\n focusAsync(monthPicker.current);\n }\n }, [isDayPickerVisible, isMonthPickerVisible]);\n React.useImperativeHandle(componentRef, () => ({\n focus\n }), [focus]);\n React.useEffect(() => {\n if (focusOnUpdate.current) {\n focus();\n focusOnUpdate.current = false;\n }\n });\n const focusOnNextUpdate = () => {\n focusOnUpdate.current = true;\n };\n return [dayPicker, monthPicker, focusOnNextUpdate];\n}\n/**\n * @internal\n */\nexport const Calendar = /*#__PURE__*/React.forwardRef((props, forwardedRef) => {\n const {\n allFocusable = false,\n calendarDayProps,\n calendarMonthProps,\n className,\n componentRef,\n dateRangeType = DateRangeType.Day,\n dateTimeFormatter = DEFAULT_DATE_FORMATTING,\n firstDayOfWeek = DayOfWeek.Sunday,\n firstWeekOfYear = FirstWeekOfYear.FirstDay,\n highlightCurrentMonth = false,\n highlightSelectedMonth = false,\n id,\n isDayPickerVisible: isDayPickerVisibleProp = true,\n isMonthPickerVisible: isMonthPickerVisibleProp = true,\n maxDate,\n minDate,\n onDismiss,\n onSelectDate,\n restrictedDates,\n showCloseButton = false,\n showGoToToday = true,\n showMonthPickerAsOverlay: showMonthPickerAsOverlayProp = false,\n showSixWeeksByDefault = false,\n showWeekNumbers = false,\n strings = DEFAULT_CALENDAR_STRINGS,\n today = new Date(),\n value,\n workWeekDays = defaultWorkWeekDays\n } = props;\n const [selectedDate, navigatedDay, navigatedMonth, onDateSelected, navigateDay, navigateMonth] = useDateState({\n onSelectDate,\n value,\n today\n });\n const [isMonthPickerVisible, isDayPickerVisible, toggleDayMonthPickerVisibility] = useVisibilityState({\n isDayPickerVisible: isDayPickerVisibleProp,\n isMonthPickerVisible: isMonthPickerVisibleProp,\n showMonthPickerAsOverlay: showMonthPickerAsOverlayProp\n });\n const [dayPicker, monthPicker, focusOnNextUpdate] = useFocusLogic({\n componentRef\n }, isDayPickerVisible, isMonthPickerVisible);\n const renderGoToTodayButton = () => {\n let goTodayEnabled = showGoToToday;\n if (goTodayEnabled && today) {\n goTodayEnabled = navigatedDay.getFullYear() !== today.getFullYear() || navigatedDay.getMonth() !== today.getMonth() || navigatedMonth.getFullYear() !== today.getFullYear() || navigatedMonth.getMonth() !== today.getMonth();\n }\n return showGoToToday && /*#__PURE__*/React.createElement(\"button\", {\n className: classes.goTodayButton,\n onClick: onGotoToday,\n onKeyDown: onButtonKeyDown(onGotoToday),\n type: \"button\",\n disabled: !goTodayEnabled\n }, strings.goToToday);\n };\n const onNavigateDayDate = (date, focusOnNavigatedDay) => {\n navigateDay(date);\n if (focusOnNavigatedDay) {\n focusOnNextUpdate();\n }\n };\n const onNavigateMonthDate = (date, focusOnNavigatedDay) => {\n if (focusOnNavigatedDay) {\n focusOnNextUpdate();\n }\n if (!focusOnNavigatedDay) {\n navigateMonth(date);\n return;\n }\n if (monthPickerOnly) {\n onDateSelected(date);\n }\n navigateDay(date);\n };\n const onHeaderSelect = getShowMonthPickerAsOverlay({\n isDayPickerVisible: isDayPickerVisibleProp,\n showMonthPickerAsOverlay: showMonthPickerAsOverlayProp\n }) ? () => {\n toggleDayMonthPickerVisibility();\n focusOnNextUpdate();\n } : undefined;\n const onGotoToday = () => {\n navigateDay(today);\n focusOnNextUpdate();\n };\n const onButtonKeyDown = callback => {\n return ev => {\n switch (ev.key) {\n case Enter:\n case Space:\n callback();\n break;\n }\n };\n };\n const onDatePickerPopupKeyDown = ev => {\n switch (ev.key) {\n case Enter:\n ev.preventDefault();\n break;\n case Backspace:\n ev.preventDefault();\n break;\n case Escape:\n onDismiss === null || onDismiss === void 0 ? void 0 : onDismiss();\n break;\n case PageUp:\n if (ev.ctrlKey) {\n // go to next year\n navigateDay(addYears(navigatedDay, 1));\n } else {\n // go to next month\n navigateDay(addMonths(navigatedDay, 1));\n }\n ev.preventDefault();\n break;\n case PageDown:\n if (ev.ctrlKey) {\n // go to previous year\n navigateDay(addYears(navigatedDay, -1));\n } else {\n // go to previous month\n navigateDay(addMonths(navigatedDay, -1));\n }\n ev.preventDefault();\n break;\n default:\n break;\n }\n };\n const showMonthPickerAsOverlay = getShowMonthPickerAsOverlay(props);\n const monthPickerOnly = !showMonthPickerAsOverlay && !isDayPickerVisible;\n const classes = useCalendarStyles_unstable({\n className,\n isDayPickerVisible,\n isMonthPickerVisible,\n showWeekNumbers\n });\n let todayDateString = '';\n let selectedDateString = '';\n if (dateTimeFormatter && strings.todayDateFormatString) {\n todayDateString = strings.todayDateFormatString.replace('{0}', dateTimeFormatter.formatMonthDayYear(today, strings));\n }\n if (dateTimeFormatter && strings.selectedDateFormatString) {\n selectedDateString = strings.selectedDateFormatString.replace('{0}', dateTimeFormatter.formatMonthDayYear(selectedDate, strings));\n }\n const selectionAndTodayString = selectedDateString + ', ' + todayDateString;\n return /*#__PURE__*/React.createElement(\"div\", {\n id: id,\n ref: forwardedRef,\n role: \"group\",\n \"aria-label\": selectionAndTodayString,\n className: classes.root,\n onKeyDown: onDatePickerPopupKeyDown\n }, /*#__PURE__*/React.createElement(\"div\", {\n className: classes.liveRegion,\n \"aria-live\": \"polite\",\n \"aria-atomic\": \"true\"\n }, /*#__PURE__*/React.createElement(\"span\", null, selectedDateString)), isDayPickerVisible && /*#__PURE__*/React.createElement(CalendarDay, {\n selectedDate: selectedDate,\n navigatedDate: navigatedDay,\n today: today,\n onSelectDate: onDateSelected,\n // eslint-disable-next-line react/jsx-no-bind\n onNavigateDate: onNavigateDayDate,\n onDismiss: onDismiss,\n firstDayOfWeek: firstDayOfWeek,\n dateRangeType: dateRangeType,\n strings: strings,\n // eslint-disable-next-line react/jsx-no-bind\n onHeaderSelect: onHeaderSelect,\n showWeekNumbers: showWeekNumbers,\n firstWeekOfYear: firstWeekOfYear,\n dateTimeFormatter: dateTimeFormatter,\n showSixWeeksByDefault: showSixWeeksByDefault,\n minDate: minDate,\n maxDate: maxDate,\n restrictedDates: restrictedDates,\n workWeekDays: workWeekDays,\n componentRef: dayPicker,\n showCloseButton: showCloseButton,\n allFocusable: allFocusable,\n ...calendarDayProps\n }), isDayPickerVisible && isMonthPickerVisible && /*#__PURE__*/React.createElement(\"div\", {\n className: classes.divider\n }), isMonthPickerVisible ? /*#__PURE__*/React.createElement(\"div\", {\n className: classes.monthPickerWrapper\n }, /*#__PURE__*/React.createElement(CalendarMonth, {\n navigatedDate: navigatedMonth,\n selectedDate: navigatedDay,\n strings: strings,\n // eslint-disable-next-line react/jsx-no-bind\n onNavigateDate: onNavigateMonthDate,\n today: today,\n highlightCurrentMonth: highlightCurrentMonth,\n highlightSelectedMonth: highlightSelectedMonth,\n // eslint-disable-next-line react/jsx-no-bind\n onHeaderSelect: onHeaderSelect,\n dateTimeFormatter: dateTimeFormatter,\n minDate: minDate,\n maxDate: maxDate,\n componentRef: monthPicker,\n ...calendarMonthProps\n }), renderGoToTodayButton()) : renderGoToTodayButton());\n});\nCalendar.displayName = 'Calendar';\nfunction getShowMonthPickerAsOverlay({\n isDayPickerVisible,\n showMonthPickerAsOverlay\n}) {\n const win = getWindow();\n return showMonthPickerAsOverlay || isDayPickerVisible && win && win.innerWidth <= MIN_SIZE_FORCE_OVERLAY;\n}\n//# sourceMappingURL=Calendar.js.map"],"names":["Calendar","MIN_SIZE_FORCE_OVERLAY","defaultWorkWeekDays","DayOfWeek","Monday","Tuesday","Wednesday","Thursday","Friday","useDateState","value","today","Date","onSelectDate","selectedDate","setSelectedDate","useControllableState","defaultState","initialState","state","navigatedDay","setNavigatedDay","React","useState","navigatedMonth","setNavigatedMonth","lastSelectedDate","setLastSelectedDate","valueOf","navigateMonth","date","navigateDay","onDateSelected","selectedDateRangeArray","useVisibilityState","isDayPickerVisible","isDayPickerVisibleProp","isMonthPickerVisible","isMonthPickerVisibleProp","showMonthPickerAsOverlay","setIsMonthPickerVisible","getShowMonthPickerAsOverlay","undefined","setIsDayPickerVisible","toggleDayMonthPickerVisibility","useFocusLogic","componentRef","dayPicker","useRef","monthPicker","focusOnUpdate","focus","useCallback","current","focusAsync","useImperativeHandle","useEffect","focusOnNextUpdate","forwardRef","props","forwardedRef","allFocusable","calendarDayProps","calendarMonthProps","className","dateRangeType","DateRangeType","Day","dateTimeFormatter","DEFAULT_DATE_FORMATTING","firstDayOfWeek","Sunday","firstWeekOfYear","FirstWeekOfYear","FirstDay","highlightCurrentMonth","highlightSelectedMonth","id","maxDate","minDate","onDismiss","restrictedDates","showCloseButton","showGoToToday","showMonthPickerAsOverlayProp","showSixWeeksByDefault","showWeekNumbers","strings","DEFAULT_CALENDAR_STRINGS","workWeekDays","renderGoToTodayButton","goTodayEnabled","getFullYear","getMonth","createElement","classes","goTodayButton","onClick","onGotoToday","onKeyDown","onButtonKeyDown","type","disabled","goToToday","onNavigateDayDate","focusOnNavigatedDay","onNavigateMonthDate","monthPickerOnly","onHeaderSelect","callback","ev","key","Enter","Space","onDatePickerPopupKeyDown","preventDefault","Backspace","Escape","PageUp","ctrlKey","addYears","addMonths","PageDown","useCalendarStyles_unstable","todayDateString","selectedDateString","todayDateFormatString","replace","formatMonthDayYear","selectedDateFormatString","selectionAndTodayString","ref","role","root","liveRegion","CalendarDay","navigatedDate","onNavigateDate","divider","monthPickerWrapper","CalendarMonth","displayName","win","getWindow","innerWidth"],"mappings":"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"}
@@ -9,7 +9,7 @@ Object.defineProperty(exports, "defaultCalendarStrings", {
9
9
  const _exportStar = require("@swc/helpers/lib/_export_star.js").default;
10
10
  _exportStar(require("./Calendar"), exports);
11
11
  _exportStar(require("./Calendar.types"), exports);
12
- _exportStar(require("./useCalendarStyles"), exports);
12
+ _exportStar(require("./useCalendarStyles.styles"), exports);
13
13
  const _defaults = require("./defaults");
14
14
  //# sourceMappingURL=index.js.map
15
15
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/components/Calendar/index.js"],"sourcesContent":["export * from './Calendar';\nexport * from './Calendar.types';\nexport * from './useCalendarStyles';\nexport { defaultCalendarStrings } from './defaults';\n//# sourceMappingURL=index.js.map"],"names":["defaultCalendarStrings"],"mappings":";;;;+BAGSA;;aAAAA,gCAAsB;;;oBAHjB;oBACA;oBACA;0BACyB;CACvC,iCAAiC"}
1
+ {"version":3,"sources":["../../../lib/components/Calendar/index.js"],"sourcesContent":["export * from './Calendar';\nexport * from './Calendar.types';\nexport * from './useCalendarStyles.styles';\nexport { defaultCalendarStrings } from './defaults';\n//# sourceMappingURL=index.js.map"],"names":["defaultCalendarStrings"],"mappings":";;;;+BAGSA;;aAAAA,gCAAsB;;;oBAHjB;oBACA;oBACA;0BACyB;CACvC,iCAAiC"}
@@ -281,6 +281,6 @@ const useCalendarStyles_unstable = (props)=>{
281
281
  goTodayButton: (0, _react.mergeClasses)(calendarClassNames.goTodayButton, goTodayButtonStyles.base),
282
282
  liveRegion: (0, _react.mergeClasses)(calendarClassNames.liveRegion, liveRegionStyles.base)
283
283
  };
284
- }; //# sourceMappingURL=useCalendarStyles.js.map
284
+ }; //# sourceMappingURL=useCalendarStyles.styles.js.map
285
285
 
286
- //# sourceMappingURL=useCalendarStyles.js.map
286
+ //# sourceMappingURL=useCalendarStyles.styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../lib/components/Calendar/useCalendarStyles.styles.js"],"sourcesContent":["import { tokens } from '@fluentui/react-theme';\nimport { __styles, mergeClasses, shorthands } from '@griffel/react';\n/**\n * @internal\n */\nexport const calendarClassNames = {\n root: 'fui-Calendar',\n divider: 'fui-Calendar__divider',\n goTodayButton: 'fui-Calendar__goTodayButton',\n monthPickerWrapper: 'fui-Calendar__monthPickerWrapper',\n liveRegion: 'fui-Calendar__liveRegion'\n};\nconst useRootStyles = /*#__PURE__*/__styles({\n base: {\n mc9l5x: \"f22iagw\",\n a9b677: \"f13dwy2t\"\n },\n normalize: {\n E5pizo: \"f1couhl3\",\n B7ck84d: \"f1ewtqcl\",\n B6of3ja: \"f1hu3pq6\",\n t21cq0: [\"f11qmguv\", \"f1tyq0we\"],\n jrapky: \"f19f4twv\",\n Frg6f3: [\"f1tyq0we\", \"f11qmguv\"],\n z8tnut: \"f1g0x7ka\",\n z189sj: [\"fhxju0i\", \"f1cnd47f\"],\n Byoj8tv: \"f1qch9an\",\n uwmqm3: [\"f1cnd47f\", \"fhxju0i\"]\n },\n monthPickerNotVisible: {\n Beiy3e4: \"f1vx9l62\"\n },\n dayAndMonthPickersVisible: {\n a9b677: \"fcy5b15\"\n },\n dayPickerVisibleAndWeekNumbersShown: {\n a9b677: \"fhsg0in\"\n },\n dayAndMonthPickersVisibleAndWeekNumbersShown: {\n a9b677: \"fcarq7f\"\n }\n}, {\n d: [\".f22iagw{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}\", \".f13dwy2t{width:220px;}\", \".f1couhl3{box-shadow:none;}\", \".f1ewtqcl{box-sizing:border-box;}\", \".f1hu3pq6{margin-top:0;}\", \".f11qmguv{margin-right:0;}\", \".f1tyq0we{margin-left:0;}\", \".f19f4twv{margin-bottom:0;}\", \".f1g0x7ka{padding-top:0;}\", \".fhxju0i{padding-right:0;}\", \".f1cnd47f{padding-left:0;}\", \".f1qch9an{padding-bottom:0;}\", \".f1vx9l62{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}\", \".fcy5b15{width:440px;}\", \".fhsg0in{width:250px;}\", \".fcarq7f{width:470px;}\"]\n});\nconst useDividerStyles = /*#__PURE__*/__styles({\n base: {\n g2u3we: \"f68mrw8\",\n h3c5rm: [\"f7pw515\", \"fw35ms5\"],\n B9xav0g: \"frpde29\",\n zhjwy3: [\"fw35ms5\", \"f7pw515\"],\n Bekrc4i: [\"f1hqa2wf\", \"finvdd3\"],\n vrafjx: [\"fcdblym\", \"fjik90z\"],\n Bhzewxz: \"f15twtuk\"\n }\n}, {\n d: [\".f68mrw8{border-top-color:var(--colorNeutralStroke2);}\", \".f7pw515{border-right-color:var(--colorNeutralStroke2);}\", \".fw35ms5{border-left-color:var(--colorNeutralStroke2);}\", \".frpde29{border-bottom-color:var(--colorNeutralStroke2);}\", \".f1hqa2wf{border-right-width:1px;}\", \".finvdd3{border-left-width:1px;}\", \".fcdblym{border-right-style:solid;}\", \".fjik90z{border-left-style:solid;}\", \".f15twtuk{top:0;}\"]\n});\nconst useMonthPickerWrapperStyles = /*#__PURE__*/__styles({\n base: {\n mc9l5x: \"f22iagw\",\n Beiy3e4: \"f1vx9l62\"\n }\n}, {\n d: [\".f22iagw{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}\", \".f1vx9l62{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}\"]\n});\nconst useGoTodayButtonStyles = /*#__PURE__*/__styles({\n base: {\n qb2dma: \"fpydfdc\",\n De3pzq: \"f1c21dwh\",\n icvyot: \"f1ern45e\",\n vrafjx: [\"f1n71otn\", \"f1deefiw\"],\n oivjwe: \"f1h8hb77\",\n wvpqe5: [\"f1deefiw\", \"f1n71otn\"],\n B5kzvoi: \"f1yab3r1\",\n B7ck84d: \"f1e4lqlz\",\n sj55zd: \"f19n0e5\",\n Bahqtrf: \"f1mo0ibp\",\n Be2twd7: \"fy9rknc\",\n Bqenvij: \"f1tvdnth\",\n Bg96gwp: \"fpfng1i\",\n t21cq0: [\"f17vyym1\", \"fb5scp\"],\n B6of3ja: \"f4gg0ds\",\n B68tc82: \"f1mtd64y\",\n Bmxbyg5: \"f1y7q3j9\",\n z8tnut: \"f1g0x7ka\",\n z189sj: [\"f8wuabp\", \"fycuoez\"],\n Byoj8tv: \"f1qch9an\",\n uwmqm3: [\"fycuoez\", \"f8wuabp\"],\n seuwu7: \"fvy6vk6\",\n Jwef8y: \"f9ql6rf\",\n Bi91k9c: \"f1f1pb61\",\n eoavqd: \"f8491dx\",\n B2d53fq: \"fc9d3oc\",\n Dyrjrp: \"f1cqwcg4\",\n Be90el1: \"fmjaa5u\"\n }\n}, {\n d: [\".fpydfdc{-webkit-align-self:flex-end;-ms-flex-item-align:flex-end;align-self:flex-end;}\", \".f1c21dwh{background-color:var(--colorTransparentBackground);}\", \".f1ern45e{border-top-style:none;}\", \".f1n71otn{border-right-style:none;}\", \".f1deefiw{border-left-style:none;}\", \".f1h8hb77{border-bottom-style:none;}\", \".f1yab3r1{bottom:0;}\", \".f1e4lqlz{box-sizing:content-box;}\", \".f19n0e5{color:var(--colorNeutralForeground1);}\", \".f1mo0ibp{font-family:inherit;}\", \".fy9rknc{font-size:var(--fontSizeBase200);}\", \".f1tvdnth{height:30px;}\", \".fpfng1i{line-height:30px;}\", \".f17vyym1{margin-right:16px;}\", \".fb5scp{margin-left:16px;}\", \".f4gg0ds{margin-top:3px;}\", \".f1mtd64y{overflow-x:visible;}\", \".f1y7q3j9{overflow-y:visible;}\", \".f1g0x7ka{padding-top:0;}\", \".f8wuabp{padding-right:4px;}\", \".fycuoez{padding-left:4px;}\", \".f1qch9an{padding-bottom:0;}\", \".fvy6vk6 div{font-size:var(--fontSizeBase200);}\", \".f1cqwcg4:disabled{color:var(--colorNeutralForegroundDisabled);}\", \".fmjaa5u:disabled{pointer-events:none;}\"],\n h: [\".f9ql6rf:hover{background-color:var(--colorTransparentBackground);}\", \".f1f1pb61:hover{color:var(--colorBrandForeground1);}\", \".f8491dx:hover{cursor:pointer;}\", \".fc9d3oc:hover:active{color:var(--colorBrandForeground2);}\"]\n});\nconst useLiveRegionStyles = /*#__PURE__*/__styles({\n base: {\n B4j52fo: \"fre7gi1\",\n Bekrc4i: [\"f1358rze\", \"f1rvrf73\"],\n Bn0qgzm: \"fqdk4by\",\n ibv6hh: [\"f1rvrf73\", \"f1358rze\"],\n Bqenvij: \"f1mpe4l3\",\n B6of3ja: \"fkrn0sh\",\n t21cq0: [\"f179hvsh\", \"f1538868\"],\n jrapky: \"fmxx68s\",\n Frg6f3: [\"f1538868\", \"f179hvsh\"],\n B68tc82: \"f1p9o1ba\",\n Bmxbyg5: \"f1sil6mw\",\n z8tnut: \"f1g0x7ka\",\n z189sj: [\"fhxju0i\", \"f1cnd47f\"],\n Byoj8tv: \"f1qch9an\",\n uwmqm3: [\"f1cnd47f\", \"fhxju0i\"],\n qhf8xq: \"f1euv43f\",\n a9b677: \"frkrog8\"\n }\n}, {\n d: [\".fre7gi1{border-top-width:0;}\", \".f1358rze{border-right-width:0;}\", \".f1rvrf73{border-left-width:0;}\", \".fqdk4by{border-bottom-width:0;}\", \".f1mpe4l3{height:1px;}\", \".fkrn0sh{margin-top:-1px;}\", \".f179hvsh{margin-right:-1px;}\", \".f1538868{margin-left:-1px;}\", \".fmxx68s{margin-bottom:-1px;}\", \".f1p9o1ba{overflow-x:hidden;}\", \".f1sil6mw{overflow-y:hidden;}\", \".f1g0x7ka{padding-top:0;}\", \".fhxju0i{padding-right:0;}\", \".f1cnd47f{padding-left:0;}\", \".f1qch9an{padding-bottom:0;}\", \".f1euv43f{position:absolute;}\", \".frkrog8{width:1px;}\"]\n});\n/**\n * @internal\n *\n * Apply styling to the Calendar slots based on the state\n */\nexport const useCalendarStyles_unstable = props => {\n const rootStyles = useRootStyles();\n const dividerStyles = useDividerStyles();\n const monthPickerWrapperStyles = useMonthPickerWrapperStyles();\n const goTodayButtonStyles = useGoTodayButtonStyles();\n const liveRegionStyles = useLiveRegionStyles();\n const {\n className,\n isDayPickerVisible,\n isMonthPickerVisible,\n showWeekNumbers\n } = props;\n return {\n root: mergeClasses(calendarClassNames.root, rootStyles.base, rootStyles.normalize, !isMonthPickerVisible && rootStyles.monthPickerNotVisible, isDayPickerVisible && isMonthPickerVisible && !showWeekNumbers && rootStyles.dayAndMonthPickersVisible, isDayPickerVisible && !isMonthPickerVisible && showWeekNumbers && rootStyles.dayPickerVisibleAndWeekNumbersShown, isDayPickerVisible && isMonthPickerVisible && showWeekNumbers && rootStyles.dayAndMonthPickersVisibleAndWeekNumbersShown, className),\n divider: mergeClasses(calendarClassNames.divider, dividerStyles.base),\n monthPickerWrapper: mergeClasses(calendarClassNames.monthPickerWrapper, monthPickerWrapperStyles.base),\n goTodayButton: mergeClasses(calendarClassNames.goTodayButton, goTodayButtonStyles.base),\n liveRegion: mergeClasses(calendarClassNames.liveRegion, liveRegionStyles.base)\n };\n};\n//# sourceMappingURL=useCalendarStyles.styles.js.map"],"names":["calendarClassNames","useCalendarStyles_unstable","root","divider","goTodayButton","monthPickerWrapper","liveRegion","useRootStyles","__styles","base","mc9l5x","a9b677","normalize","E5pizo","B7ck84d","B6of3ja","t21cq0","jrapky","Frg6f3","z8tnut","z189sj","Byoj8tv","uwmqm3","monthPickerNotVisible","Beiy3e4","dayAndMonthPickersVisible","dayPickerVisibleAndWeekNumbersShown","dayAndMonthPickersVisibleAndWeekNumbersShown","d","useDividerStyles","g2u3we","h3c5rm","B9xav0g","zhjwy3","Bekrc4i","vrafjx","Bhzewxz","useMonthPickerWrapperStyles","useGoTodayButtonStyles","qb2dma","De3pzq","icvyot","oivjwe","wvpqe5","B5kzvoi","sj55zd","Bahqtrf","Be2twd7","Bqenvij","Bg96gwp","B68tc82","Bmxbyg5","seuwu7","Jwef8y","Bi91k9c","eoavqd","B2d53fq","Dyrjrp","Be90el1","h","useLiveRegionStyles","B4j52fo","Bn0qgzm","ibv6hh","qhf8xq","props","rootStyles","dividerStyles","monthPickerWrapperStyles","goTodayButtonStyles","liveRegionStyles","className","isDayPickerVisible","isMonthPickerVisible","showWeekNumbers","mergeClasses"],"mappings":"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"}
@@ -14,7 +14,7 @@ const _reactUtilities = require("@fluentui/react-utilities");
14
14
  const _react1 = require("@griffel/react");
15
15
  const _utils = require("../../utils");
16
16
  const _calendarDayGrid = require("../CalendarDayGrid/CalendarDayGrid");
17
- const _useCalendarDayStyles = require("./useCalendarDayStyles");
17
+ const _useCalendarDayStylesStyles = require("./useCalendarDayStyles.styles");
18
18
  const CalendarDay = (props)=>{
19
19
  const dayGrid = _react.useRef(null);
20
20
  _react.useImperativeHandle(props.componentRef, ()=>{
@@ -27,7 +27,7 @@ const CalendarDay = (props)=>{
27
27
  }, []);
28
28
  const { strings , navigatedDate , dateTimeFormatter , className , onHeaderSelect , showSixWeeksByDefault , minDate , maxDate , restrictedDates , onNavigateDate , showWeekNumbers , dateRangeType , animationDirection } = props;
29
29
  const monthAndYearId = (0, _reactUtilities.useId)();
30
- const classNames = (0, _useCalendarDayStyles.useCalendarDayStyles_unstable)({
30
+ const classNames = (0, _useCalendarDayStylesStyles.useCalendarDayStyles_unstable)({
31
31
  className,
32
32
  headerIsClickable: !!onHeaderSelect,
33
33
  showWeekNumbers,