@frontify/fondue-components 28.0.0 → 29.0.1

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 (306) hide show
  1. package/dist/fondue-components.js +60 -56
  2. package/dist/fondue-components.js.map +1 -1
  3. package/dist/fondue-components10.js +1 -1
  4. package/dist/fondue-components100.js +22 -16
  5. package/dist/fondue-components100.js.map +1 -1
  6. package/dist/fondue-components101.js +34 -151
  7. package/dist/fondue-components101.js.map +1 -1
  8. package/dist/fondue-components102.js +10 -44
  9. package/dist/fondue-components102.js.map +1 -1
  10. package/dist/fondue-components103.js +67 -13
  11. package/dist/fondue-components103.js.map +1 -1
  12. package/dist/fondue-components104.js +13 -13
  13. package/dist/fondue-components105.js +26 -111
  14. package/dist/fondue-components105.js.map +1 -1
  15. package/dist/fondue-components106.js +18 -12
  16. package/dist/fondue-components106.js.map +1 -1
  17. package/dist/fondue-components107.js +25 -17
  18. package/dist/fondue-components107.js.map +1 -1
  19. package/dist/fondue-components108.js +8 -12
  20. package/dist/fondue-components108.js.map +1 -1
  21. package/dist/fondue-components109.js +30 -16
  22. package/dist/fondue-components109.js.map +1 -1
  23. package/dist/fondue-components11.js +3 -3
  24. package/dist/fondue-components110.js +7 -6
  25. package/dist/fondue-components110.js.map +1 -1
  26. package/dist/fondue-components111.js +16 -11
  27. package/dist/fondue-components111.js.map +1 -1
  28. package/dist/fondue-components112.js +125 -69
  29. package/dist/fondue-components112.js.map +1 -1
  30. package/dist/fondue-components113.js +11 -15
  31. package/dist/fondue-components113.js.map +1 -1
  32. package/dist/fondue-components114.js +36 -7
  33. package/dist/fondue-components114.js.map +1 -1
  34. package/dist/fondue-components115.js +14 -89
  35. package/dist/fondue-components115.js.map +1 -1
  36. package/dist/fondue-components116.js +14 -80
  37. package/dist/fondue-components116.js.map +1 -1
  38. package/dist/fondue-components117.js +109 -29
  39. package/dist/fondue-components117.js.map +1 -1
  40. package/dist/fondue-components118.js +12 -28
  41. package/dist/fondue-components118.js.map +1 -1
  42. package/dist/fondue-components119.js +20 -0
  43. package/dist/fondue-components119.js.map +1 -0
  44. package/dist/fondue-components12.js +3 -3
  45. package/dist/fondue-components120.js +12 -40
  46. package/dist/fondue-components120.js.map +1 -1
  47. package/dist/fondue-components121.js +216 -18
  48. package/dist/fondue-components121.js.map +1 -1
  49. package/dist/fondue-components122.js +17 -19
  50. package/dist/fondue-components122.js.map +1 -1
  51. package/dist/fondue-components123.js +15 -38
  52. package/dist/fondue-components123.js.map +1 -1
  53. package/dist/fondue-components124.js +150 -67
  54. package/dist/fondue-components124.js.map +1 -1
  55. package/dist/fondue-components125.js +44 -30
  56. package/dist/fondue-components125.js.map +1 -1
  57. package/dist/fondue-components126.js +5 -9
  58. package/dist/fondue-components126.js.map +1 -1
  59. package/dist/fondue-components127.js +4 -152
  60. package/dist/fondue-components127.js.map +1 -1
  61. package/dist/fondue-components128.js +28 -107
  62. package/dist/fondue-components128.js.map +1 -1
  63. package/dist/fondue-components13.js +61 -35
  64. package/dist/fondue-components13.js.map +1 -1
  65. package/dist/fondue-components130.js +41 -16
  66. package/dist/fondue-components130.js.map +1 -1
  67. package/dist/fondue-components131.js +6 -29
  68. package/dist/fondue-components131.js.map +1 -1
  69. package/dist/fondue-components132.js +12 -13
  70. package/dist/fondue-components132.js.map +1 -1
  71. package/dist/fondue-components133.js +70 -6
  72. package/dist/fondue-components133.js.map +1 -1
  73. package/dist/fondue-components134.js +18 -0
  74. package/dist/fondue-components134.js.map +1 -0
  75. package/dist/fondue-components135.js +10 -0
  76. package/dist/fondue-components135.js.map +1 -0
  77. package/dist/fondue-components136.js +92 -0
  78. package/dist/fondue-components136.js.map +1 -0
  79. package/dist/fondue-components137.js +84 -0
  80. package/dist/fondue-components137.js.map +1 -0
  81. package/dist/fondue-components138.js +34 -0
  82. package/dist/fondue-components138.js.map +1 -0
  83. package/dist/fondue-components139.js +173 -0
  84. package/dist/fondue-components139.js.map +1 -0
  85. package/dist/fondue-components14.js +36 -121
  86. package/dist/fondue-components14.js.map +1 -1
  87. package/dist/fondue-components140.js +63 -0
  88. package/dist/fondue-components140.js.map +1 -0
  89. package/dist/fondue-components141.js +12 -0
  90. package/dist/fondue-components141.js.map +1 -0
  91. package/dist/fondue-components142.js +259 -0
  92. package/dist/fondue-components142.js.map +1 -0
  93. package/dist/fondue-components143.js +22 -0
  94. package/dist/fondue-components143.js.map +1 -0
  95. package/dist/fondue-components144.js +73 -0
  96. package/dist/fondue-components144.js.map +1 -0
  97. package/dist/fondue-components145.js +1355 -0
  98. package/dist/fondue-components145.js.map +1 -0
  99. package/dist/fondue-components146.js +944 -0
  100. package/dist/fondue-components146.js.map +1 -0
  101. package/dist/fondue-components147.js +201 -0
  102. package/dist/fondue-components147.js.map +1 -0
  103. package/dist/fondue-components148.js +24 -0
  104. package/dist/fondue-components148.js.map +1 -0
  105. package/dist/fondue-components149.js +43 -0
  106. package/dist/fondue-components149.js.map +1 -0
  107. package/dist/fondue-components15.js +121 -36
  108. package/dist/fondue-components15.js.map +1 -1
  109. package/dist/fondue-components150.js +71 -0
  110. package/dist/fondue-components150.js.map +1 -0
  111. package/dist/fondue-components151.js +34 -0
  112. package/dist/fondue-components151.js.map +1 -0
  113. package/dist/fondue-components152.js +12 -0
  114. package/dist/fondue-components152.js.map +1 -0
  115. package/dist/fondue-components153.js +156 -0
  116. package/dist/fondue-components153.js.map +1 -0
  117. package/dist/fondue-components154.js +111 -0
  118. package/dist/fondue-components154.js.map +1 -0
  119. package/dist/{fondue-components129.js → fondue-components155.js} +1 -1
  120. package/dist/{fondue-components129.js.map → fondue-components155.js.map} +1 -1
  121. package/dist/fondue-components156.js +19 -0
  122. package/dist/fondue-components156.js.map +1 -0
  123. package/dist/fondue-components157.js +32 -0
  124. package/dist/fondue-components157.js.map +1 -0
  125. package/dist/fondue-components158.js +16 -0
  126. package/dist/fondue-components158.js.map +1 -0
  127. package/dist/fondue-components159.js +10 -0
  128. package/dist/fondue-components159.js.map +1 -0
  129. package/dist/fondue-components16.js +30 -39
  130. package/dist/fondue-components16.js.map +1 -1
  131. package/dist/fondue-components17.js +44 -41
  132. package/dist/fondue-components17.js.map +1 -1
  133. package/dist/fondue-components18.js +42 -57
  134. package/dist/fondue-components18.js.map +1 -1
  135. package/dist/fondue-components19.js +55 -41
  136. package/dist/fondue-components19.js.map +1 -1
  137. package/dist/fondue-components20.js +39 -16
  138. package/dist/fondue-components20.js.map +1 -1
  139. package/dist/fondue-components21.js +17 -43
  140. package/dist/fondue-components21.js.map +1 -1
  141. package/dist/fondue-components22.js +42 -69
  142. package/dist/fondue-components22.js.map +1 -1
  143. package/dist/fondue-components23.js +69 -17
  144. package/dist/fondue-components23.js.map +1 -1
  145. package/dist/fondue-components24.js +71 -74
  146. package/dist/fondue-components24.js.map +1 -1
  147. package/dist/fondue-components25.js +18 -36
  148. package/dist/fondue-components25.js.map +1 -1
  149. package/dist/fondue-components26.js +72 -50
  150. package/dist/fondue-components26.js.map +1 -1
  151. package/dist/fondue-components27.js +36 -23
  152. package/dist/fondue-components27.js.map +1 -1
  153. package/dist/fondue-components28.js +50 -50
  154. package/dist/fondue-components28.js.map +1 -1
  155. package/dist/fondue-components29.js +23 -100
  156. package/dist/fondue-components29.js.map +1 -1
  157. package/dist/fondue-components3.js +1 -1
  158. package/dist/fondue-components30.js +50 -28
  159. package/dist/fondue-components30.js.map +1 -1
  160. package/dist/fondue-components31.js +92 -188
  161. package/dist/fondue-components31.js.map +1 -1
  162. package/dist/fondue-components32.js +31 -144
  163. package/dist/fondue-components32.js.map +1 -1
  164. package/dist/fondue-components33.js +192 -129
  165. package/dist/fondue-components33.js.map +1 -1
  166. package/dist/fondue-components34.js +141 -27
  167. package/dist/fondue-components34.js.map +1 -1
  168. package/dist/fondue-components35.js +123 -71
  169. package/dist/fondue-components35.js.map +1 -1
  170. package/dist/fondue-components36.js +28 -120
  171. package/dist/fondue-components36.js.map +1 -1
  172. package/dist/fondue-components37.js +80 -35
  173. package/dist/fondue-components37.js.map +1 -1
  174. package/dist/fondue-components38.js +119 -52
  175. package/dist/fondue-components38.js.map +1 -1
  176. package/dist/fondue-components39.js +36 -20
  177. package/dist/fondue-components39.js.map +1 -1
  178. package/dist/fondue-components4.js +3 -3
  179. package/dist/fondue-components40.js +56 -25
  180. package/dist/fondue-components40.js.map +1 -1
  181. package/dist/fondue-components41.js +20 -7
  182. package/dist/fondue-components41.js.map +1 -1
  183. package/dist/fondue-components42.js +25 -8
  184. package/dist/fondue-components42.js.map +1 -1
  185. package/dist/fondue-components43.js +8 -41
  186. package/dist/fondue-components43.js.map +1 -1
  187. package/dist/fondue-components44.js +8 -4
  188. package/dist/fondue-components44.js.map +1 -1
  189. package/dist/fondue-components45.js +41 -5
  190. package/dist/fondue-components45.js.map +1 -1
  191. package/dist/fondue-components46.js +3 -11
  192. package/dist/fondue-components46.js.map +1 -1
  193. package/dist/fondue-components47.js +5 -32
  194. package/dist/fondue-components47.js.map +1 -1
  195. package/dist/fondue-components48.js +12 -53
  196. package/dist/fondue-components48.js.map +1 -1
  197. package/dist/fondue-components49.js +32 -131
  198. package/dist/fondue-components49.js.map +1 -1
  199. package/dist/fondue-components5.js +2 -2
  200. package/dist/fondue-components50.js +53 -20
  201. package/dist/fondue-components50.js.map +1 -1
  202. package/dist/fondue-components51.js +131 -53
  203. package/dist/fondue-components51.js.map +1 -1
  204. package/dist/fondue-components52.js +20 -7
  205. package/dist/fondue-components52.js.map +1 -1
  206. package/dist/fondue-components53.js +53 -13
  207. package/dist/fondue-components53.js.map +1 -1
  208. package/dist/fondue-components54.js +7 -16
  209. package/dist/fondue-components54.js.map +1 -1
  210. package/dist/fondue-components55.js +13 -5
  211. package/dist/fondue-components55.js.map +1 -1
  212. package/dist/fondue-components56.js +17 -18
  213. package/dist/fondue-components56.js.map +1 -1
  214. package/dist/fondue-components57.js +4 -18
  215. package/dist/fondue-components57.js.map +1 -1
  216. package/dist/fondue-components58.js +18 -44
  217. package/dist/fondue-components58.js.map +1 -1
  218. package/dist/fondue-components59.js +18 -24
  219. package/dist/fondue-components59.js.map +1 -1
  220. package/dist/fondue-components6.js +1 -1
  221. package/dist/fondue-components60.js +43 -22
  222. package/dist/fondue-components60.js.map +1 -1
  223. package/dist/fondue-components61.js +24 -4
  224. package/dist/fondue-components61.js.map +1 -1
  225. package/dist/fondue-components62.js +22 -12
  226. package/dist/fondue-components62.js.map +1 -1
  227. package/dist/fondue-components63.js +6 -4
  228. package/dist/fondue-components63.js.map +1 -1
  229. package/dist/fondue-components64.js +4 -17
  230. package/dist/fondue-components64.js.map +1 -1
  231. package/dist/fondue-components65.js +12 -10
  232. package/dist/fondue-components65.js.map +1 -1
  233. package/dist/fondue-components66.js +4 -36
  234. package/dist/fondue-components66.js.map +1 -1
  235. package/dist/fondue-components67.js +17 -6
  236. package/dist/fondue-components67.js.map +1 -1
  237. package/dist/fondue-components68.js +10 -4
  238. package/dist/fondue-components68.js.map +1 -1
  239. package/dist/fondue-components69.js +34 -10
  240. package/dist/fondue-components69.js.map +1 -1
  241. package/dist/fondue-components7.js +1 -1
  242. package/dist/fondue-components70.js +6 -8
  243. package/dist/fondue-components70.js.map +1 -1
  244. package/dist/fondue-components71.js +4 -12
  245. package/dist/fondue-components71.js.map +1 -1
  246. package/dist/fondue-components72.js +11 -3
  247. package/dist/fondue-components72.js.map +1 -1
  248. package/dist/fondue-components73.js +50 -23
  249. package/dist/fondue-components73.js.map +1 -1
  250. package/dist/fondue-components74.js +44 -17
  251. package/dist/fondue-components74.js.map +1 -1
  252. package/dist/fondue-components75.js +6 -20
  253. package/dist/fondue-components75.js.map +1 -1
  254. package/dist/fondue-components76.js +6 -20
  255. package/dist/fondue-components76.js.map +1 -1
  256. package/dist/fondue-components77.js +12 -19
  257. package/dist/fondue-components77.js.map +1 -1
  258. package/dist/fondue-components78.js +24 -16
  259. package/dist/fondue-components78.js.map +1 -1
  260. package/dist/fondue-components79.js +13 -19
  261. package/dist/fondue-components79.js.map +1 -1
  262. package/dist/fondue-components8.js +5 -5
  263. package/dist/fondue-components80.js +5 -8
  264. package/dist/fondue-components80.js.map +1 -1
  265. package/dist/fondue-components81.js +12 -10
  266. package/dist/fondue-components81.js.map +1 -1
  267. package/dist/fondue-components82.js +47 -10
  268. package/dist/fondue-components82.js.map +1 -1
  269. package/dist/fondue-components83.js +20 -4
  270. package/dist/fondue-components83.js.map +1 -1
  271. package/dist/fondue-components84.js +628 -12
  272. package/dist/fondue-components84.js.map +1 -1
  273. package/dist/fondue-components85.js +8 -22
  274. package/dist/fondue-components85.js.map +1 -1
  275. package/dist/fondue-components86.js +13 -34
  276. package/dist/fondue-components86.js.map +1 -1
  277. package/dist/fondue-components87.js +4 -10
  278. package/dist/fondue-components87.js.map +1 -1
  279. package/dist/fondue-components88.js +23 -66
  280. package/dist/fondue-components88.js.map +1 -1
  281. package/dist/fondue-components89.js +14 -12
  282. package/dist/fondue-components89.js.map +1 -1
  283. package/dist/fondue-components9.js +5 -5
  284. package/dist/fondue-components90.js +20 -25
  285. package/dist/fondue-components90.js.map +1 -1
  286. package/dist/fondue-components91.js +20 -19
  287. package/dist/fondue-components91.js.map +1 -1
  288. package/dist/fondue-components92.js +20 -25
  289. package/dist/fondue-components92.js.map +1 -1
  290. package/dist/fondue-components93.js +20 -9
  291. package/dist/fondue-components93.js.map +1 -1
  292. package/dist/fondue-components94.js +19 -31
  293. package/dist/fondue-components94.js.map +1 -1
  294. package/dist/fondue-components95.js +8 -7
  295. package/dist/fondue-components95.js.map +1 -1
  296. package/dist/fondue-components96.js +10 -4
  297. package/dist/fondue-components96.js.map +1 -1
  298. package/dist/fondue-components97.js +10 -4
  299. package/dist/fondue-components97.js.map +1 -1
  300. package/dist/fondue-components98.js +6 -216
  301. package/dist/fondue-components98.js.map +1 -1
  302. package/dist/fondue-components99.js +12 -18
  303. package/dist/fondue-components99.js.map +1 -1
  304. package/dist/index.d.ts +102 -4
  305. package/dist/style.css +1 -1
  306. package/package.json +6 -4
@@ -1 +1 @@
1
- {"version":3,"file":"fondue-components116.js","sources":["../src/components/Select/components/SelectMenu.tsx"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport * as RadixPopover from '@radix-ui/react-popover';\nimport { Slot as RadixSlot } from '@radix-ui/react-slot';\nimport { type UseComboboxPropGetters, type UseSelectPropGetters } from 'downshift';\nimport { isValidElement, type ForwardedRef, type MouseEvent, type ReactElement, type ReactNode } from 'react';\n\nimport { ThemeProvider, useFondueTheme } from '#/components/ThemeProvider/ThemeProvider';\n\nimport styles from '../styles/select.module.scss';\nimport { getSelectOptionValue, recursiveMap } from '../utils';\n\nimport { type SelectItemProps } from './SelectItem';\n\nexport type SelectMenuViewportCollisionPadding = 'compact' | 'spacious';\n\nexport type SelectMenuProps = {\n /**\n * @internal\n * The index of the highlighted item in the menu.\n */\n highlightedIndex: number;\n /**\n * @internal\n * Callback function to retrieve the props for a menu element.\n */\n getMenuProps: UseSelectPropGetters<unknown>['getMenuProps'] | UseComboboxPropGetters<unknown>['getMenuProps'];\n /**\n * @internal\n * Callback function to retrieve the props for a item element.\n */\n getItemProps: UseSelectPropGetters<unknown>['getItemProps'] | UseComboboxPropGetters<unknown>['getItemProps'];\n /**\n * @internal\n * The children of the menu component. This can contain multiple `Select.Item` or `Select.Group` components.\n */\n children: ReactNode;\n /**\n * @internal\n * The filter text shown in the combobox input element.\n */\n filterText?: string;\n /**\n * @internal\n * The alignment of the menu.\n */\n align: 'start' | 'center' | 'end';\n /**\n * @internal\n * Defines the preferred side of the select. It will not be respected if there are collisions with the viewport.\n * @default \"bottom\"\n */\n side: 'left' | 'right' | 'bottom' | 'top';\n /**\n * @internal\n * The type of the menu.\n */\n selectedItemValues?: string[];\n /**\n * @internal\n * A boolean to indicate if highlighted item was changed since opening the menu.\n * This is used to determine the style of the selected/highlighted item.\n */\n hasInteractedSinceOpening?: boolean;\n /**\n * Define the minimum distance between the select menu and the viewport edge\n * @default 'compact'\n */\n viewportCollisionPadding?: SelectMenuViewportCollisionPadding;\n /**\n * @internal\n * Event handler called when the escape key is pressed.\n */\n onEscapeKeyDown?: (event: KeyboardEvent) => void;\n};\n\nexport const SelectMenu = ({\n highlightedIndex,\n getMenuProps,\n getItemProps,\n children,\n filterText,\n align,\n side,\n selectedItemValues,\n hasInteractedSinceOpening,\n viewportCollisionPadding = 'compact',\n onEscapeKeyDown,\n}: SelectMenuProps) => {\n const handleOnOpenAutoFocus = (event: Event) => {\n event.preventDefault();\n };\n\n const VIEWPORT_COLLISION_PADDING_MAP: Record<SelectMenuViewportCollisionPadding, number> = {\n compact: 8,\n spacious: 24,\n };\n\n const { theme, dir } = useFondueTheme();\n\n const getAdjustedSide = (side: 'left' | 'right' | 'bottom' | 'top') => {\n if (dir === 'ltr') {\n return side;\n }\n\n if (side === 'left') {\n return 'right';\n }\n if (side === 'right') {\n return 'left';\n }\n\n return side;\n };\n\n return (\n <RadixPopover.Portal>\n <ThemeProvider theme={theme} dir={dir}>\n <RadixPopover.Content\n dir={dir}\n align={align}\n side={getAdjustedSide(side)}\n collisionPadding={VIEWPORT_COLLISION_PADDING_MAP[viewportCollisionPadding] + 8}\n onOpenAutoFocus={handleOnOpenAutoFocus}\n onEscapeKeyDown={onEscapeKeyDown}\n className={styles.portal}\n >\n <ul\n className={styles.menu}\n // TODO: fix this accessibility issue\n // We are mounting/unmounting the menu on open/close\n // We should instead toggle its visibility for accessibility reasons\n // https://github.com/downshift-js/downshift?tab=readme-ov-file#getmenuprops\n {...getMenuProps({}, { suppressRefError: true })}\n data-has-interacted={hasInteractedSinceOpening ? 'true' : 'false'}\n data-test-id=\"fondue-select-menu\"\n >\n {\n recursiveMap(\n children,\n (child, index) => {\n const isValid = <TProps,>(\n child: ReactNode,\n ): child is ReactElement<TProps> & { ref: ForwardedRef<HTMLElement> } =>\n // @ts-expect-error - We are explicitly checking for ref\n isValidElement<TProps>(child) && child.ref !== undefined;\n\n if (isValid<SelectItemProps>(child)) {\n const optionData = getSelectOptionValue(child.props);\n const itemProps = getItemProps({\n item: optionData,\n index,\n ...(child.ref ? { ref: child.ref } : {}),\n });\n\n const isSelected = selectedItemValues?.includes(optionData.value);\n\n return (\n <RadixSlot\n className={styles.item}\n data-highlighted={highlightedIndex === index}\n data-selected={isSelected}\n key={child.props.value}\n // Workaround for the issue where the onClick event is not fired on touch devices because of portal usage\n onTouchStart={(event) => {\n if (itemProps.onClick) {\n itemProps.onClick(event as unknown as MouseEvent<HTMLElement>);\n }\n }}\n {...itemProps}\n aria-selected={isSelected}\n >\n {child}\n </RadixSlot>\n );\n }\n },\n filterText,\n ).parsedChildren\n }\n </ul>\n </RadixPopover.Content>\n </ThemeProvider>\n </RadixPopover.Portal>\n );\n};\nSelectMenu.displayName = 'Select.Menu';\n"],"names":["SelectMenu","highlightedIndex","getMenuProps","getItemProps","children","filterText","align","side","selectedItemValues","hasInteractedSinceOpening","viewportCollisionPadding","onEscapeKeyDown","handleOnOpenAutoFocus","event","VIEWPORT_COLLISION_PADDING_MAP","theme","dir","useFondueTheme","getAdjustedSide","RadixPopover","jsx","ThemeProvider","styles","recursiveMap","child","index","isValidElement","optionData","getSelectOptionValue","itemProps","isSelected","RadixSlot"],"mappings":";;;;;;;AA4EO,MAAMA,IAAa,CAAC;AAAA,EACvB,kBAAAC;AAAA,EACA,cAAAC;AAAA,EACA,cAAAC;AAAA,EACA,UAAAC;AAAA,EACA,YAAAC;AAAA,EACA,OAAAC;AAAA,EACA,MAAAC;AAAA,EACA,oBAAAC;AAAA,EACA,2BAAAC;AAAA,EACA,0BAAAC,IAA2B;AAAA,EAC3B,iBAAAC;AACJ,MAAuB;AACnB,QAAMC,IAAwB,CAACC,MAAiB;AAC5C,IAAAA,EAAM,eAAA;AAAA,EACV,GAEMC,IAAqF;AAAA,IACvF,SAAS;AAAA,IACT,UAAU;AAAA,EAAA,GAGR,EAAE,OAAAC,GAAO,KAAAC,EAAA,IAAQC,EAAA,GAEjBC,IAAkB,CAACX,MACjBS,MAAQ,QACDT,IAGPA,MAAS,SACF,UAEPA,MAAS,UACF,SAGJA;AAGX,2BACKY,EAAa,QAAb,EACG,UAAA,gBAAAC,EAACC,GAAA,EAAc,OAAAN,GAAc,KAAAC,GACzB,UAAA,gBAAAI;AAAA,IAACD,EAAa;AAAA,IAAb;AAAA,MACG,KAAAH;AAAA,MACA,OAAAV;AAAA,MACA,MAAMY,EAAgBX,CAAI;AAAA,MAC1B,kBAAkBO,EAA+BJ,CAAwB,IAAI;AAAA,MAC7E,iBAAiBE;AAAA,MACjB,iBAAAD;AAAA,MACA,WAAWW,EAAO;AAAA,MAElB,UAAA,gBAAAF;AAAA,QAAC;AAAA,QAAA;AAAA,UACG,WAAWE,EAAO;AAAA,UAKjB,GAAGpB,EAAa,CAAA,GAAI,EAAE,kBAAkB,IAAM;AAAA,UAC/C,uBAAqBO,IAA4B,SAAS;AAAA,UAC1D,gBAAa;AAAA,UAGT,UAAAc;AAAA,YACInB;AAAA,YACA,CAACoB,GAAOC,MAAU;AAOd,mBANgB,CACZD;AAAAA;AAAAA,gBAGAE,EAAuBF,CAAK,KAAKA,EAAM,QAAQ;AAAA,iBAEtBA,CAAK,GAAG;AACjC,sBAAMG,IAAaC,EAAqBJ,EAAM,KAAK,GAC7CK,IAAY1B,EAAa;AAAA,kBAC3B,MAAMwB;AAAA,kBACN,OAAAF;AAAA,kBACA,GAAID,EAAM,MAAM,EAAE,KAAKA,EAAM,IAAA,IAAQ,CAAA;AAAA,gBAAC,CACzC,GAEKM,IAAatB,KAAA,gBAAAA,EAAoB,SAASmB,EAAW;AAE3D,uBACI,gBAAAP;AAAA,kBAACW;AAAAA,kBAAA;AAAA,oBACG,WAAWT,EAAO;AAAA,oBAClB,oBAAkBrB,MAAqBwB;AAAA,oBACvC,iBAAeK;AAAA,oBAGf,cAAc,CAACjB,MAAU;AACrB,sBAAIgB,EAAU,WACVA,EAAU,QAAQhB,CAA2C;AAAA,oBAErE;AAAA,oBACC,GAAGgB;AAAA,oBACJ,iBAAeC;AAAA,oBAEd,UAAAN;AAAA,kBAAA;AAAA,kBAVIA,EAAM,MAAM;AAAA,gBAAA;AAAA,cAa7B;AAAA,YACJ;AAAA,YACAnB;AAAA,UAAA,EACF;AAAA,QAAA;AAAA,MAAA;AAAA,IAEV;AAAA,EAAA,GAER,EAAA,CACJ;AAER;AACAL,EAAW,cAAc;"}
1
+ {"version":3,"file":"fondue-components116.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;"}
@@ -1,34 +1,114 @@
1
- import { jsxs as c, Fragment as n, jsx as r } from "react/jsx-runtime";
2
- import { IconCheckMark as i, IconExclamationMarkTriangle as l } from "@frontify/fondue-icons";
3
- import { useTranslation as m } from "./fondue-components40.js";
4
- import s from "./fondue-components102.js";
5
- const f = ({ status: o, hasError: a, dataTestId: e }) => {
6
- const { t } = m();
7
- return /* @__PURE__ */ c(n, { children: [
8
- o === "success" ? /* @__PURE__ */ r(
9
- i,
1
+ import { jsx as r } from "react/jsx-runtime";
2
+ import { IconArrowRight as m, IconArrowLeft as f } from "@frontify/fondue-icons";
3
+ import { forwardRef as h, useMemo as $, useRef as p, useEffect as y } from "react";
4
+ import { getDefaultClassNames as b, DayPicker as w } from "react-day-picker";
5
+ /* empty css */
6
+ import { Button as c } from "./fondue-components6.js";
7
+ import { useFondueTheme as g } from "./fondue-components39.js";
8
+ import e from "./fondue-components130.js";
9
+ const N = h(
10
+ ({ "data-test-id": t = "fondue-date-picker-calendar", disabledDates: o, ...a }, s) => {
11
+ const d = b(), {
12
+ dir: l,
13
+ translations: { dateLocale: n }
14
+ } = g(), i = $(() => {
15
+ var u;
16
+ return a.mode === "single" ? a.selected : (u = a.selected) == null ? void 0 : u.from;
17
+ }, [a]);
18
+ return /* @__PURE__ */ r("div", { ref: s, "data-test-id": t, className: e.wrapper, children: /* @__PURE__ */ r(
19
+ w,
10
20
  {
11
- size: 16,
12
- className: s.iconSuccess,
13
- "data-test-id": `${e}-success-icon`,
14
- "aria-hidden": "true"
15
- }
16
- ) : null,
17
- a ? /* @__PURE__ */ c(n, { children: [
18
- /* @__PURE__ */ r(
19
- l,
20
- {
21
- size: 16,
22
- className: s.iconError,
23
- "data-test-id": `${e}-error-icon`,
24
- "aria-hidden": "true"
21
+ navLayout: "around",
22
+ "data-test-id": t,
23
+ locale: n,
24
+ components: v(),
25
+ showOutsideDays: !0,
26
+ disabled: o,
27
+ defaultMonth: i,
28
+ dir: l,
29
+ timeZone: "UTC",
30
+ classNames: {
31
+ root: `${d.root} ${e.root}`,
32
+ day: `${e.day}`,
33
+ selected: `${e.selected}`,
34
+ week: `${d.week} ${e.week}`,
35
+ weekday: `${e.weekday}`,
36
+ weekdays: `${d.weekdays} ${e.weekdays}`,
37
+ range_start: `${e.selectedStart}`,
38
+ range_end: `${e.selectedEnd}`,
39
+ range_middle: `${e.selectedMiddle}`,
40
+ disabled: `${e.disabled}`,
41
+ outside: `${e.outside}`
42
+ },
43
+ ...a,
44
+ modifiersClassNames: {
45
+ hoverAfter: `${e.hoverAfter}`,
46
+ hoverBefore: `${e.hoverBefore}`,
47
+ hoverSelected: `${e.hoverSelected}`
25
48
  }
26
- ),
27
- /* @__PURE__ */ r("span", { className: s.srOnly, role: "alert", children: t("Select_error") })
28
- ] }) : null
29
- ] });
30
- };
49
+ }
50
+ ) });
51
+ }
52
+ );
53
+ N.displayName = "DatePickerCalendar";
54
+ const v = () => ({
55
+ DayButton: ({ day: t, modifiers: o, onClick: a, onMouseEnter: s, onMouseLeave: d, ...l }) => {
56
+ const n = p(null);
57
+ return y(() => {
58
+ var i;
59
+ o.focused && ((i = n.current) == null || i.focus());
60
+ }, [o.focused]), /* @__PURE__ */ r(
61
+ "button",
62
+ {
63
+ ...l,
64
+ ref: n,
65
+ className: e.dayButton,
66
+ onClick: a,
67
+ onMouseEnter: s,
68
+ onMouseLeave: d,
69
+ type: "button",
70
+ children: /* @__PURE__ */ r("div", { className: `${e.dayContent} ${e.button}`, children: t.date.getDate() })
71
+ }
72
+ );
73
+ },
74
+ PreviousMonthButton: ({
75
+ onClick: t,
76
+ "aria-label": o,
77
+ "aria-disabled": a
78
+ }) => /* @__PURE__ */ r("div", { className: `${e.toggleMonthButtonContainer} `, children: /* @__PURE__ */ r(
79
+ c,
80
+ {
81
+ emphasis: "weak",
82
+ size: "small",
83
+ aspect: "square",
84
+ "aria-label": o,
85
+ "aria-disabled": a,
86
+ onPress: (s) => {
87
+ s && (t == null || t(s));
88
+ },
89
+ children: /* @__PURE__ */ r(f, { size: 16 })
90
+ }
91
+ ) }),
92
+ NextMonthButton: ({
93
+ onClick: t,
94
+ "aria-label": o,
95
+ "aria-disabled": a
96
+ }) => /* @__PURE__ */ r("div", { className: `${e.toggleMonthButtonContainer} ${e.nextMonthButtonContainer}`, children: /* @__PURE__ */ r(
97
+ c,
98
+ {
99
+ emphasis: "weak",
100
+ size: "small",
101
+ aspect: "square",
102
+ "aria-label": o,
103
+ "aria-disabled": a,
104
+ onPress: (s) => {
105
+ s && (t == null || t(s));
106
+ },
107
+ children: /* @__PURE__ */ r(m, { size: 16 })
108
+ }
109
+ ) })
110
+ });
31
111
  export {
32
- f as StatusIcons
112
+ N as DatePickerCalendar
33
113
  };
34
114
  //# sourceMappingURL=fondue-components117.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fondue-components117.js","sources":["../src/components/Select/components/StatusIcons.tsx"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport { IconCheckMark, IconExclamationMarkTriangle } from '@frontify/fondue-icons';\nimport { type ReactNode } from 'react';\n\nimport { useTranslation } from '#/hooks/useTranslation';\n\nimport styles from '../styles/select.module.scss';\n\ntype StatusIconsProps = {\n /** The current status of the component. */\n status: 'neutral' | 'success' | 'error';\n /** Whether the component is in an error state (may differ from status when validation is involved). */\n hasError: boolean;\n /** The data-test-id prefix for the icons. */\n dataTestId: string;\n};\n\nexport const StatusIcons = ({ status, hasError, dataTestId }: StatusIconsProps): ReactNode => {\n const { t } = useTranslation();\n return (\n <>\n {status === 'success' ? (\n <IconCheckMark\n size={16}\n className={styles.iconSuccess}\n data-test-id={`${dataTestId}-success-icon`}\n aria-hidden=\"true\"\n />\n ) : null}\n {hasError ? (\n <>\n <IconExclamationMarkTriangle\n size={16}\n className={styles.iconError}\n data-test-id={`${dataTestId}-error-icon`}\n aria-hidden=\"true\"\n />\n <span className={styles.srOnly} role=\"alert\">\n {t('Select_error')}\n </span>\n </>\n ) : null}\n </>\n );\n};\n"],"names":["StatusIcons","status","hasError","dataTestId","useTranslation","jsxs","Fragment","jsx","IconCheckMark","styles","IconExclamationMarkTriangle"],"mappings":";;;;AAkBO,MAAMA,IAAc,CAAC,EAAE,QAAAC,GAAQ,UAAAC,GAAU,YAAAC,QAA8C;AAC1F,QAAM,EAAE,EAAA,IAAMC,EAAA;AACd,SACI,gBAAAC,EAAAC,GAAA,EACK,UAAA;AAAA,IAAAL,MAAW,YACR,gBAAAM;AAAA,MAACC;AAAA,MAAA;AAAA,QACG,MAAM;AAAA,QACN,WAAWC,EAAO;AAAA,QAClB,gBAAc,GAAGN,CAAU;AAAA,QAC3B,eAAY;AAAA,MAAA;AAAA,IAAA,IAEhB;AAAA,IACHD,IACG,gBAAAG,EAAAC,GAAA,EACI,UAAA;AAAA,MAAA,gBAAAC;AAAA,QAACG;AAAA,QAAA;AAAA,UACG,MAAM;AAAA,UACN,WAAWD,EAAO;AAAA,UAClB,gBAAc,GAAGN,CAAU;AAAA,UAC3B,eAAY;AAAA,QAAA;AAAA,MAAA;AAAA,MAEhB,gBAAAI,EAAC,UAAK,WAAWE,EAAO,QAAQ,MAAK,SAChC,UAAA,EAAE,cAAc,EAAA,CACrB;AAAA,IAAA,EAAA,CACJ,IACA;AAAA,EAAA,GACR;AAER;"}
1
+ {"version":3,"file":"fondue-components117.js","sources":["../src/components/DatePicker/DatePickerCalendar.tsx"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport { IconArrowLeft, IconArrowRight } from '@frontify/fondue-icons';\nimport { forwardRef, useEffect, useMemo, useRef } from 'react';\nimport {\n getDefaultClassNames,\n DayPicker,\n type PreviousMonthButtonProps,\n type NextMonthButtonProps,\n type OnSelectHandler,\n type DateRange as InternalDayPickerDateRange,\n type CustomComponents,\n type Matcher,\n type DayButtonProps,\n} from 'react-day-picker';\nimport 'react-day-picker/style.css';\n\nimport { Button } from '../Button/Button';\nimport { useFondueTheme } from '../ThemeProvider/ThemeProvider';\n\nimport styles from './styles/datePickerCalendar.module.scss';\n\ntype DatePickerCalendarSingleModeProps = {\n mode: 'single';\n required: true;\n selected: Date | undefined;\n onSelect: OnSelectHandler<Date>;\n};\ntype DatePickerCalendarRangeModeProps = {\n mode: 'range';\n required: true;\n selected: InternalDayPickerDateRange | undefined;\n onSelect: OnSelectHandler<InternalDayPickerDateRange>;\n modifiers?: Record<string, Matcher>;\n onDayMouseEnter?: (day: Date) => void;\n onDayMouseLeave?: (day: Date) => void;\n};\n\ntype DatePickerCalendarModeProps = DatePickerCalendarSingleModeProps | DatePickerCalendarRangeModeProps;\n\ntype DisabledDates = { before: Date } | { after: Date };\n\nexport type DatePickerBaseProps = {\n /** The days to be disabled. */\n disabledDates?: DisabledDates | DisabledDates[];\n /** The test id applied to the wrapper and forwarded to DayPicker. */\n 'data-test-id'?: string;\n};\n\ntype DatePickerCalendarProps = DatePickerBaseProps & DatePickerCalendarModeProps;\n\nexport const DatePickerCalendar = forwardRef<HTMLDivElement, DatePickerCalendarProps>(\n ({ 'data-test-id': dataTestId = 'fondue-date-picker-calendar', disabledDates, ...modeProps }, ref): JSX.Element => {\n const defaultClassNames = getDefaultClassNames();\n const {\n dir,\n translations: { dateLocale },\n } = useFondueTheme();\n\n const defaultMonth = useMemo(() => {\n if (modeProps.mode === 'single') {\n return modeProps.selected;\n }\n return modeProps.selected?.from;\n }, [modeProps]);\n\n return (\n <div ref={ref} data-test-id={dataTestId} className={styles.wrapper}>\n <DayPicker\n navLayout=\"around\"\n data-test-id={dataTestId}\n locale={dateLocale}\n components={getCustomComponents()}\n showOutsideDays\n disabled={disabledDates}\n defaultMonth={defaultMonth}\n dir={dir}\n timeZone=\"UTC\"\n classNames={{\n root: `${defaultClassNames.root} ${styles.root}`,\n day: `${styles.day}`,\n selected: `${styles.selected}`,\n week: `${defaultClassNames.week} ${styles.week}`,\n weekday: `${styles.weekday}`,\n weekdays: `${defaultClassNames.weekdays} ${styles.weekdays}`,\n range_start: `${styles.selectedStart}`,\n range_end: `${styles.selectedEnd}`,\n range_middle: `${styles.selectedMiddle}`,\n disabled: `${styles.disabled}`,\n outside: `${styles.outside}`,\n }}\n {...modeProps}\n modifiersClassNames={{\n hoverAfter: `${styles.hoverAfter}`,\n hoverBefore: `${styles.hoverBefore}`,\n hoverSelected: `${styles.hoverSelected}`,\n }}\n />\n </div>\n );\n },\n);\nDatePickerCalendar.displayName = 'DatePickerCalendar';\n\nconst getCustomComponents = (): Partial<CustomComponents> => ({\n DayButton: ({ day, modifiers, onClick, onMouseEnter, onMouseLeave, ...props }: DayButtonProps): JSX.Element => {\n const buttonRef = useRef<HTMLButtonElement>(null);\n\n useEffect(() => {\n if (modifiers.focused) {\n buttonRef.current?.focus();\n }\n }, [modifiers.focused]);\n\n return (\n <button\n {...props}\n ref={buttonRef}\n className={styles.dayButton}\n onClick={onClick}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n type=\"button\"\n >\n <div className={`${styles.dayContent} ${styles.button}`}>{day.date.getDate()}</div>\n </button>\n );\n },\n PreviousMonthButton: ({\n onClick,\n 'aria-label': ariaLabel,\n 'aria-disabled': ariaDisabled,\n }: PreviousMonthButtonProps): JSX.Element => {\n return (\n <div className={`${styles.toggleMonthButtonContainer} `}>\n <Button\n emphasis=\"weak\"\n size=\"small\"\n aspect=\"square\"\n aria-label={ariaLabel}\n aria-disabled={ariaDisabled}\n onPress={(event) => {\n if (event) {\n onClick?.(event);\n }\n }}\n >\n <IconArrowLeft size={16} />\n </Button>\n </div>\n );\n },\n NextMonthButton: ({\n onClick,\n 'aria-label': ariaLabel,\n 'aria-disabled': ariaDisabled,\n }: NextMonthButtonProps): JSX.Element => {\n return (\n <div className={`${styles.toggleMonthButtonContainer} ${styles.nextMonthButtonContainer}`}>\n <Button\n emphasis=\"weak\"\n size=\"small\"\n aspect=\"square\"\n aria-label={ariaLabel}\n aria-disabled={ariaDisabled}\n onPress={(event) => {\n if (event) {\n onClick?.(event);\n }\n }}\n >\n <IconArrowRight size={16} />\n </Button>\n </div>\n );\n },\n});\n"],"names":["DatePickerCalendar","forwardRef","dataTestId","disabledDates","modeProps","ref","defaultClassNames","getDefaultClassNames","dir","dateLocale","useFondueTheme","defaultMonth","useMemo","_a","styles","jsx","DayPicker","getCustomComponents","day","modifiers","onClick","onMouseEnter","onMouseLeave","props","buttonRef","useRef","useEffect","ariaLabel","ariaDisabled","Button","event","IconArrowLeft","IconArrowRight"],"mappings":"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"}
@@ -1,32 +1,16 @@
1
- const n = (r) => {
2
- if (r)
3
- return {
4
- year: r.getUTCFullYear(),
5
- // Month is 0-indexed in JavaScript, so we add 1 to get the correct month
6
- month: r.getUTCMonth() + 1,
7
- day: r.getUTCDate()
8
- };
9
- }, f = (r) => {
10
- if (r)
11
- return new Date(Date.UTC(r.year, r.month - 1, r.day));
12
- }, D = (r) => {
13
- const o = n(r == null ? void 0 : r.from), t = n(r == null ? void 0 : r.to);
14
- if (!(!o || !t))
15
- return {
16
- from: o,
17
- to: t
18
- };
19
- }, m = (r) => {
20
- if (r)
21
- return {
22
- from: f(r.from),
23
- to: f(r.to)
24
- };
1
+ import { useState as o, useMemo as D } from "react";
2
+ import { transformDateRangeToPickerDateRange as c, transformPickerDateRangeToDateRange as i } from "./fondue-components128.js";
3
+ const l = (e, t) => {
4
+ const [n, r] = o(e), [s, g] = o(e);
5
+ return s !== e && (g(e), r(e)), {
6
+ selectedDateRange: D(() => c(n), [n]),
7
+ handleSelect: (R) => {
8
+ const a = i(R);
9
+ a && (t == null || t(a), r(a));
10
+ }
11
+ };
25
12
  };
26
13
  export {
27
- f as transformDatePickerDateToDate,
28
- m as transformDateRangeToPickerDateRange,
29
- n as transformDateToDatePickerDate,
30
- D as transformPickerDateRangeToDateRange
14
+ l as useDateRange
31
15
  };
32
16
  //# sourceMappingURL=fondue-components118.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fondue-components118.js","sources":["../src/components/DatePicker/helpers/dateTransformer.ts"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport { type DateRange as InternalDayPickerDateRange } from 'react-day-picker';\n\nimport { type DatePickerDate, type DatePickerDateRange } from '../types';\n\nexport const transformDateToDatePickerDate = (date?: Date): DatePickerDate | undefined => {\n if (!date) {\n return undefined;\n }\n return {\n year: date.getUTCFullYear(),\n // Month is 0-indexed in JavaScript, so we add 1 to get the correct month\n month: date.getUTCMonth() + 1,\n day: date.getUTCDate(),\n };\n};\n\nexport const transformDatePickerDateToDate = (datePickerDate?: DatePickerDate): Date | undefined => {\n if (!datePickerDate) {\n return undefined;\n }\n // Month is 0-indexed in JavaScript, so we subtract 1 to get the correct month\n return new Date(Date.UTC(datePickerDate.year, datePickerDate.month - 1, datePickerDate.day));\n};\n\nexport const transformPickerDateRangeToDateRange = (dateRange?: InternalDayPickerDateRange): DatePickerDateRange => {\n const fromDate = transformDateToDatePickerDate(dateRange?.from);\n const toDate = transformDateToDatePickerDate(dateRange?.to);\n if (!fromDate || !toDate) {\n return undefined;\n }\n\n return {\n from: fromDate,\n to: toDate,\n };\n};\n\nexport const transformDateRangeToPickerDateRange = (\n dateRange?: DatePickerDateRange,\n): InternalDayPickerDateRange | undefined => {\n if (!dateRange) {\n return undefined;\n }\n\n return {\n from: transformDatePickerDateToDate(dateRange.from),\n to: transformDatePickerDateToDate(dateRange.to),\n };\n};\n"],"names":["transformDateToDatePickerDate","date","transformDatePickerDateToDate","datePickerDate","transformPickerDateRangeToDateRange","dateRange","fromDate","toDate","transformDateRangeToPickerDateRange"],"mappings":"AAMO,MAAMA,IAAgC,CAACC,MAA4C;AACtF,MAAKA;AAGL,WAAO;AAAA,MACH,MAAMA,EAAK,eAAA;AAAA;AAAA,MAEX,OAAOA,EAAK,YAAA,IAAgB;AAAA,MAC5B,KAAKA,EAAK,WAAA;AAAA,IAAW;AAE7B,GAEaC,IAAgC,CAACC,MAAsD;AAChG,MAAKA;AAIL,WAAO,IAAI,KAAK,KAAK,IAAIA,EAAe,MAAMA,EAAe,QAAQ,GAAGA,EAAe,GAAG,CAAC;AAC/F,GAEaC,IAAsC,CAACC,MAAgE;AAChH,QAAMC,IAAWN,EAA8BK,KAAA,gBAAAA,EAAW,IAAI,GACxDE,IAASP,EAA8BK,KAAA,gBAAAA,EAAW,EAAE;AAC1D,MAAI,GAACC,KAAY,CAACC;AAIlB,WAAO;AAAA,MACH,MAAMD;AAAA,MACN,IAAIC;AAAA,IAAA;AAEZ,GAEaC,IAAsC,CAC/CH,MACyC;AACzC,MAAKA;AAIL,WAAO;AAAA,MACH,MAAMH,EAA8BG,EAAU,IAAI;AAAA,MAClD,IAAIH,EAA8BG,EAAU,EAAE;AAAA,IAAA;AAEtD;"}
1
+ {"version":3,"file":"fondue-components118.js","sources":["../src/components/DatePicker/hooks/useDateRange.ts"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport { useMemo, useState } from 'react';\nimport { type DateRange as InternalDayPickerDateRange, type OnSelectHandler } from 'react-day-picker';\n\nimport { transformDateRangeToPickerDateRange, transformPickerDateRangeToDateRange } from '../helpers/dateTransformer';\nimport { type DatePickerDateRange } from '../types';\n\nexport const useDateRange = (selected: DatePickerDateRange, onSelect?: (dateRange: DatePickerDateRange) => void) => {\n const [internalSelectedDateRange, setInternalSelectedDateRange] = useState<DatePickerDateRange>(selected);\n const [prevSelected, setPrevSelected] = useState<DatePickerDateRange | undefined>(selected);\n\n if (prevSelected !== selected) {\n setPrevSelected(selected);\n setInternalSelectedDateRange(selected);\n }\n\n const selectedDateRange = useMemo(() => {\n return transformDateRangeToPickerDateRange(internalSelectedDateRange);\n }, [internalSelectedDateRange]);\n\n const handleSelect: OnSelectHandler<InternalDayPickerDateRange> = (pickerDateRange) => {\n const dateRange = transformPickerDateRangeToDateRange(pickerDateRange);\n\n if (dateRange) {\n onSelect?.(dateRange);\n setInternalSelectedDateRange(dateRange);\n }\n };\n\n return {\n selectedDateRange,\n handleSelect,\n };\n};\n"],"names":["useDateRange","selected","onSelect","internalSelectedDateRange","setInternalSelectedDateRange","useState","prevSelected","setPrevSelected","useMemo","transformDateRangeToPickerDateRange","pickerDateRange","dateRange","transformPickerDateRangeToDateRange"],"mappings":";;AAQO,MAAMA,IAAe,CAACC,GAA+BC,MAAwD;AAChH,QAAM,CAACC,GAA2BC,CAA4B,IAAIC,EAA8BJ,CAAQ,GAClG,CAACK,GAAcC,CAAe,IAAIF,EAA0CJ,CAAQ;AAE1F,SAAIK,MAAiBL,MACjBM,EAAgBN,CAAQ,GACxBG,EAA6BH,CAAQ,IAgBlC;AAAA,IACH,mBAdsBO,EAAQ,MACvBC,EAAoCN,CAAyB,GACrE,CAACA,CAAyB,CAAC;AAAA,IAa1B,cAX8D,CAACO,MAAoB;AACnF,YAAMC,IAAYC,EAAoCF,CAAe;AAErE,MAAIC,MACAT,KAAA,QAAAA,EAAWS,IACXP,EAA6BO,CAAS;AAAA,IAE9C;AAAA,EAII;AAER;"}
@@ -0,0 +1,20 @@
1
+ import { useMemo as o } from "react";
2
+ const f = {
3
+ hoverBefore: !1,
4
+ hoverAfter: !1,
5
+ hoverSelected: !1
6
+ }, h = (r) => ({
7
+ hoverModifiers: o(() => !(r != null && r.from) || !(r != null && r.to) || (r == null ? void 0 : r.to.getTime()) > (r == null ? void 0 : r.from.getTime()) ? f : {
8
+ hoverBefore: {
9
+ before: r == null ? void 0 : r.from
10
+ },
11
+ hoverAfter: {
12
+ after: r == null ? void 0 : r.to
13
+ },
14
+ hoverSelected: r == null ? void 0 : r.from
15
+ }, [r])
16
+ });
17
+ export {
18
+ h as useRangeHover
19
+ };
20
+ //# sourceMappingURL=fondue-components119.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fondue-components119.js","sources":["../src/components/DatePicker/hooks/useRangeHover.ts"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport { useMemo } from 'react';\nimport { type DateRange as InternalDayPickerDateRange } from 'react-day-picker';\n\ntype RangeHoverModifiers = {\n hoverBefore:\n | {\n before: Date;\n }\n | false;\n hoverAfter:\n | {\n after: Date;\n }\n | false;\n hoverSelected: Date | false;\n};\n\nconst DISABLED_MODIFIERS: RangeHoverModifiers = {\n hoverBefore: false,\n hoverAfter: false,\n hoverSelected: false,\n};\n\nexport const useRangeHover = (selectedDateRange?: InternalDayPickerDateRange) => {\n const hoverModifiers = useMemo(() => {\n if (\n !selectedDateRange?.from ||\n !selectedDateRange?.to ||\n selectedDateRange?.to.getTime() > selectedDateRange?.from.getTime()\n ) {\n return DISABLED_MODIFIERS;\n }\n return {\n hoverBefore: {\n before: selectedDateRange?.from,\n },\n hoverAfter: {\n after: selectedDateRange?.to,\n },\n hoverSelected: selectedDateRange?.from,\n };\n }, [selectedDateRange]);\n\n return {\n hoverModifiers,\n };\n};\n"],"names":["DISABLED_MODIFIERS","useRangeHover","selectedDateRange","useMemo"],"mappings":";AAmBA,MAAMA,IAA0C;AAAA,EAC5C,aAAa;AAAA,EACb,YAAY;AAAA,EACZ,eAAe;AACnB,GAEaC,IAAgB,CAACC,OAoBnB;AAAA,EACH,gBApBmBC,EAAQ,MAEvB,EAACD,KAAA,QAAAA,EAAmB,SACpB,EAACA,KAAA,QAAAA,EAAmB,QACpBA,KAAA,gBAAAA,EAAmB,GAAG,cAAYA,KAAA,gBAAAA,EAAmB,KAAK,aAEnDF,IAEJ;AAAA,IACH,aAAa;AAAA,MACT,QAAQE,KAAA,gBAAAA,EAAmB;AAAA,IAAA;AAAA,IAE/B,YAAY;AAAA,MACR,OAAOA,KAAA,gBAAAA,EAAmB;AAAA,IAAA;AAAA,IAE9B,eAAeA,KAAA,gBAAAA,EAAmB;AAAA,EAAA,GAEvC,CAACA,CAAiB,CAAC;AAGlB;"}
@@ -1,6 +1,6 @@
1
- import { ForwardedRefDatePickerInput as r } from "./fondue-components58.js";
2
- import { ForwardedRefRangeDatePicker as o } from "./fondue-components59.js";
3
- import { ForwardedRefSingleDatePicker as t } from "./fondue-components60.js";
1
+ import { ForwardedRefDatePickerInput as r } from "./fondue-components60.js";
2
+ import { ForwardedRefRangeDatePicker as o } from "./fondue-components61.js";
3
+ import { ForwardedRefSingleDatePicker as t } from "./fondue-components62.js";
4
4
  const e = t;
5
5
  e.Range = o;
6
6
  e.Input = r;
@@ -1,44 +1,16 @@
1
- const e = "_wrapper_ejipv_4", t = "_root_ejipv_8", o = "_toggleMonthButtonContainer_ejipv_8", n = "_nextMonthButtonContainer_ejipv_22", _ = "_weekday_ejipv_27", d = "_weekdays_ejipv_39", s = "_week_ejipv_27", c = "_day_ejipv_49", i = "_disabled_ejipv_69", r = "_dayContent_ejipv_72", a = "_outside_ejipv_76", v = "_dayButton_ejipv_89", l = "_selected_ejipv_123", p = "_selectedMiddle_ejipv_133", j = "_selectedStart_ejipv_146", y = "_selectedEnd_ejipv_146", h = "_hoverAfter_ejipv_179", u = "_hoverSelected_ejipv_192", w = "_hoverBefore_ejipv_253", B = {
2
- wrapper: e,
3
- root: t,
4
- toggleMonthButtonContainer: o,
5
- nextMonthButtonContainer: n,
6
- weekday: _,
7
- weekdays: d,
8
- week: s,
9
- day: c,
10
- disabled: i,
11
- dayContent: r,
12
- outside: a,
13
- dayButton: v,
14
- selected: l,
15
- selectedMiddle: p,
16
- selectedStart: j,
17
- selectedEnd: y,
18
- hoverAfter: h,
19
- hoverSelected: u,
20
- hoverBefore: w
1
+ import { useState as o, useMemo as i } from "react";
2
+ import { transformDatePickerDateToDate as m, transformDateToDatePickerDate as d } from "./fondue-components128.js";
3
+ const P = (e, t) => {
4
+ const [a, r] = o(e), [D, s] = o(e);
5
+ return D !== e && (s(e), r(e)), {
6
+ selectedDate: i(() => m(a), [a]),
7
+ handleSelect: (c) => {
8
+ const n = d(c);
9
+ r(n), t == null || t(n);
10
+ }
11
+ };
21
12
  };
22
13
  export {
23
- c as day,
24
- v as dayButton,
25
- r as dayContent,
26
- B as default,
27
- i as disabled,
28
- h as hoverAfter,
29
- w as hoverBefore,
30
- u as hoverSelected,
31
- n as nextMonthButtonContainer,
32
- a as outside,
33
- t as root,
34
- l as selected,
35
- y as selectedEnd,
36
- p as selectedMiddle,
37
- j as selectedStart,
38
- o as toggleMonthButtonContainer,
39
- s as week,
40
- _ as weekday,
41
- d as weekdays,
42
- e as wrapper
14
+ P as useSingleDate
43
15
  };
44
16
  //# sourceMappingURL=fondue-components120.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fondue-components120.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"fondue-components120.js","sources":["../src/components/DatePicker/hooks/useSingleDate.ts"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport { useMemo, useState } from 'react';\nimport { type OnSelectHandler } from 'react-day-picker';\n\nimport { transformDatePickerDateToDate, transformDateToDatePickerDate } from '../helpers/dateTransformer';\nimport { type DatePickerDate } from '../types';\n\nexport const useSingleDate = (selected?: DatePickerDate, onSelect?: (date?: DatePickerDate) => void) => {\n const [internalSelectedDate, setInternalSelectedDate] = useState<DatePickerDate | undefined>(selected);\n const [prevSelected, setPrevSelected] = useState<DatePickerDate | undefined>(selected);\n\n if (prevSelected !== selected) {\n setPrevSelected(selected);\n setInternalSelectedDate(selected);\n }\n\n const selectedDate = useMemo(() => {\n return transformDatePickerDateToDate(internalSelectedDate);\n }, [internalSelectedDate]);\n\n const handleSelect: OnSelectHandler<Date> = (date) => {\n const datePickerDate = transformDateToDatePickerDate(date);\n\n setInternalSelectedDate(datePickerDate);\n onSelect?.(datePickerDate);\n };\n\n return {\n selectedDate,\n handleSelect,\n };\n};\n"],"names":["useSingleDate","selected","onSelect","internalSelectedDate","setInternalSelectedDate","useState","prevSelected","setPrevSelected","useMemo","transformDatePickerDateToDate","date","datePickerDate","transformDateToDatePickerDate"],"mappings":";;AAQO,MAAMA,IAAgB,CAACC,GAA2BC,MAA+C;AACpG,QAAM,CAACC,GAAsBC,CAAuB,IAAIC,EAAqCJ,CAAQ,GAC/F,CAACK,GAAcC,CAAe,IAAIF,EAAqCJ,CAAQ;AAErF,SAAIK,MAAiBL,MACjBM,EAAgBN,CAAQ,GACxBG,EAAwBH,CAAQ,IAc7B;AAAA,IACH,cAZiBO,EAAQ,MAClBC,EAA8BN,CAAoB,GAC1D,CAACA,CAAoB,CAAC;AAAA,IAWrB,cATwC,CAACO,MAAS;AAClD,YAAMC,IAAiBC,EAA8BF,CAAI;AAEzD,MAAAN,EAAwBO,CAAc,GACtCT,KAAA,QAAAA,EAAWS;AAAA,IACf;AAAA,EAII;AAER;"}
@@ -1,22 +1,220 @@
1
- import { formatDistance as o } from "./fondue-components124.js";
2
- import { formatLong as t } from "./fondue-components125.js";
3
- import { formatRelative as a } from "./fondue-components126.js";
4
- import { localize as r } from "./fondue-components127.js";
5
- import { match as e } from "./fondue-components128.js";
6
- const s = {
7
- code: "en-US",
8
- formatDistance: o,
9
- formatLong: t,
10
- formatRelative: a,
11
- localize: r,
12
- match: e,
13
- options: {
14
- weekStartsOn: 0,
15
- firstWeekContainsDate: 1
16
- }
1
+ import { jsxs as g, jsx as n, Fragment as ue } from "react/jsx-runtime";
2
+ import { IconCaretDown as me } from "@frontify/fondue-icons";
3
+ import * as H from "@radix-ui/react-popover";
4
+ import { useMultipleSelection as K, useCombobox as s } from "downshift";
5
+ import { forwardRef as be, useRef as he, useCallback as fe, useState as ge, useMemo as j } from "react";
6
+ import { LoadingCircle as pe } from "./fondue-components21.js";
7
+ import { useTranslation as Ce } from "./fondue-components42.js";
8
+ import { useBadgeItems as ye } from "./fondue-components131.js";
9
+ import { useFocusRing as Ie } from "./fondue-components132.js";
10
+ import { useSelectData as ve } from "./fondue-components133.js";
11
+ import { useSelectionDescription as Be } from "./fondue-components134.js";
12
+ import c from "./fondue-components125.js";
13
+ import { ClearButton as xe } from "./fondue-components135.js";
14
+ import { CollapsibleBadges as Se } from "./fondue-components136.js";
15
+ import { SelectMenu as we } from "./fondue-components137.js";
16
+ import { ForwardedRefSelectSlot as De } from "./fondue-components95.js";
17
+ import { StatusIcons as Re } from "./fondue-components138.js";
18
+ const z = ({
19
+ children: E,
20
+ selectedItemValues: i,
21
+ onItemSelect: m,
22
+ onClear: $,
23
+ placeholder: x = "",
24
+ status: p = "neutral",
25
+ disabled: b,
26
+ "data-test-id": d = "fondue-select-combobox",
27
+ alignMenu: _ = "start",
28
+ side: q = "bottom",
29
+ id: G,
30
+ viewportCollisionPadding: J = "compact",
31
+ getAsyncItems: C,
32
+ onEscapeKeyDown: Q,
33
+ multiple: o,
34
+ ...a
35
+ }, U) => {
36
+ const h = he(null), W = fe((e) => {
37
+ h.current = e;
38
+ }, []), { t: X } = Ce(), { inputSlots: Y, menuSlots: Z, items: y, filterText: A, clearButton: S, getItemByValue: r, setFilterText: I, asyncItemStatus: w } = ve(E, C), { wasClickedRef: V, onMouseDown: D, onFocus: R, onBlur: ee } = Ie(), { selectionDescriptionId: L, selectionDescription: O } = Be(
39
+ o,
40
+ i,
41
+ r
42
+ ), te = ye(i, r), [ae, k] = ge(!1), M = j(() => i.map((e) => r(e)).filter((e) => e !== void 0 && "value" in e && "label" in e), [i, r]), ne = K(
43
+ o ? {
44
+ selectedItems: M,
45
+ onStateChange({ selectedItems: e, type: l }) {
46
+ if (l === K.stateChangeTypes.SelectedItemKeyDownBackspace) {
47
+ const t = M.find((u) => !(e != null && e.includes(u)));
48
+ t && m(t.value);
49
+ }
50
+ }
51
+ } : { selectedItems: [] }
52
+ ), oe = o ? ne.removeSelectedItem : () => {
53
+ }, {
54
+ getInputProps: f,
55
+ getToggleButtonProps: ie,
56
+ getMenuProps: le,
57
+ getItemProps: re,
58
+ reset: N,
59
+ selectedItem: v,
60
+ isOpen: T,
61
+ highlightedIndex: se,
62
+ inputValue: B
63
+ } = s({
64
+ items: y,
65
+ selectedItem: o ? null : r(i[0]),
66
+ defaultHighlightedIndex: 0,
67
+ toggleButtonId: G,
68
+ // Only set labelId if aria-labelledby is explicitly provided, otherwise downshift generates an orphan ID
69
+ ..."aria-labelledby" in a && a["aria-labelledby"] ? { labelId: a["aria-labelledby"] } : {},
70
+ onSelectedItemChange: ({ selectedItem: e }) => {
71
+ e && m(e.value), o && I("");
72
+ },
73
+ onInputValueChange: ({ inputValue: e }) => {
74
+ I(e);
75
+ },
76
+ onIsOpenChange: () => {
77
+ k(!1), I("");
78
+ },
79
+ onHighlightedIndexChange: () => {
80
+ k(!0);
81
+ },
82
+ itemToString: (e) => e ? e.label : "",
83
+ stateReducer: (e, l) => {
84
+ const { changes: t, type: u } = l;
85
+ if (o)
86
+ switch (u) {
87
+ case s.stateChangeTypes.InputKeyDownEnter:
88
+ case s.stateChangeTypes.ItemClick:
89
+ return {
90
+ ...t,
91
+ isOpen: !0,
92
+ highlightedIndex: e.highlightedIndex,
93
+ inputValue: ""
94
+ };
95
+ case s.stateChangeTypes.InputBlur:
96
+ return {
97
+ ...t,
98
+ inputValue: ""
99
+ };
100
+ }
101
+ else
102
+ switch (u) {
103
+ case s.stateChangeTypes.InputKeyDownEnter:
104
+ case s.stateChangeTypes.ItemClick:
105
+ t.selectedItem && e.selectedItem && t.selectedItem.value === e.selectedItem.value && m(t.selectedItem.value);
106
+ break;
107
+ }
108
+ return t;
109
+ }
110
+ }), F = j(() => o ? !1 : !C && !y.find((e) => e.label.toLowerCase().includes(B.toLowerCase())), [B, y, C, o]) || !!w.error || p === "error", ce = (e, l) => {
111
+ const t = r(e);
112
+ t && (oe(t), m(e), h.current && (h.current.focus(), l && (h.current.dataset.showFocusRing = "false")));
113
+ }, de = () => {
114
+ $(), N();
115
+ }, P = (e) => {
116
+ var l, t;
117
+ ee(e), o || ((v == null ? void 0 : v.label) ?? "").toLocaleLowerCase() !== B.toLocaleLowerCase() && N(), f().onBlur && ((t = (l = f()).onBlur) == null || t.call(l, e));
118
+ };
119
+ return /* @__PURE__ */ g(H.Root, { open: T, children: [
120
+ /* @__PURE__ */ n(H.Anchor, { asChild: !0, children: /* @__PURE__ */ g(
121
+ "div",
122
+ {
123
+ ref: U,
124
+ className: c.root,
125
+ "data-status": F ? "error" : p,
126
+ "data-disabled": b,
127
+ "data-empty": i.length === 0,
128
+ children: [
129
+ o ? /* @__PURE__ */ g(ue, { children: [
130
+ /* @__PURE__ */ n("span", { id: L, className: c.srOnly, children: O }),
131
+ /* @__PURE__ */ n(
132
+ Se,
133
+ {
134
+ items: te,
135
+ onDismiss: ce,
136
+ selectedCount: i.length,
137
+ children: /* @__PURE__ */ n(
138
+ "input",
139
+ {
140
+ ...f({
141
+ ref: W,
142
+ "aria-label": "aria-label" in a ? a["aria-label"] : void 0,
143
+ // Remove auto-generated aria-labelledby if not explicitly provided
144
+ "aria-labelledby": "aria-labelledby" in a && a["aria-labelledby"] ? a["aria-labelledby"] : void 0,
145
+ "aria-describedby": O ? L : void 0
146
+ }),
147
+ "data-test-id": d,
148
+ placeholder: i.length === 0 ? x : "",
149
+ className: c.multiSelectInput,
150
+ disabled: b,
151
+ onMouseDown: D,
152
+ onFocus: R,
153
+ onBlur: P
154
+ }
155
+ )
156
+ }
157
+ )
158
+ ] }) : /* @__PURE__ */ n(
159
+ "input",
160
+ {
161
+ ...f({
162
+ "aria-label": "aria-label" in a ? a["aria-label"] : void 0,
163
+ // Remove auto-generated aria-labelledby if not explicitly provided
164
+ "aria-labelledby": "aria-labelledby" in a && a["aria-labelledby"] ? a["aria-labelledby"] : void 0
165
+ }),
166
+ "data-test-id": d,
167
+ placeholder: x,
168
+ className: c.input,
169
+ disabled: b,
170
+ onMouseDown: D,
171
+ onFocus: R,
172
+ onBlur: P
173
+ }
174
+ ),
175
+ Y,
176
+ S ? /* @__PURE__ */ n(xe, { onClear: de, children: S }) : null,
177
+ w.isLoading && T ? /* @__PURE__ */ n(De, { name: "right", "data-test-id": `${d}-right-slot`, children: /* @__PURE__ */ n(pe, { size: "x-small", "data-test-id": `${d}-loading-circle` }) }) : null,
178
+ /* @__PURE__ */ g("div", { className: c.icons, children: [
179
+ /* @__PURE__ */ n(
180
+ "button",
181
+ {
182
+ "aria-label": X("Select_toggleMenu"),
183
+ ...ie(),
184
+ type: "button",
185
+ disabled: b,
186
+ onMouseDown: () => {
187
+ V.current = !0;
188
+ },
189
+ children: /* @__PURE__ */ n(me, { size: 16, className: c.caret })
190
+ }
191
+ ),
192
+ /* @__PURE__ */ n(Re, { status: p, hasError: F, dataTestId: d })
193
+ ] })
194
+ ]
195
+ }
196
+ ) }),
197
+ /* @__PURE__ */ n(
198
+ we,
199
+ {
200
+ align: _,
201
+ side: q,
202
+ highlightedIndex: se,
203
+ filterText: A,
204
+ getMenuProps: le,
205
+ getItemProps: re,
206
+ selectedItemValues: i,
207
+ hasInteractedSinceOpening: ae,
208
+ viewportCollisionPadding: J,
209
+ onEscapeKeyDown: Q,
210
+ children: Z
211
+ }
212
+ )
213
+ ] });
17
214
  };
215
+ z.displayName = "Select.Combobox";
216
+ const Qe = be(z);
18
217
  export {
19
- s as default,
20
- s as enUS
218
+ Qe as ComboboxBase
21
219
  };
22
220
  //# sourceMappingURL=fondue-components121.js.map