@nordhealth/components 4.26.2 → 5.0.0-alpha.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 (545) hide show
  1. package/custom-elements.json +53898 -21499
  2. package/lib/Accordion.js +2 -0
  3. package/lib/Accordion.js.map +1 -0
  4. package/lib/AccordionHeader.js +2 -0
  5. package/lib/AccordionHeader.js.map +1 -0
  6. package/lib/AccordionItem.js +2 -0
  7. package/lib/AccordionItem.js.map +1 -0
  8. package/lib/AccordionPanel.js +2 -0
  9. package/lib/AccordionPanel.js.map +1 -0
  10. package/lib/AccordionTrigger.js +2 -0
  11. package/lib/AccordionTrigger.js.map +1 -0
  12. package/lib/ActiveDescendantController-BnMqM79O.js +2 -0
  13. package/lib/ActiveDescendantController-BnMqM79O.js.map +1 -0
  14. package/lib/Aside.js +5 -7
  15. package/lib/Aside.js.map +1 -1
  16. package/lib/AsideDrawer.js +7 -11
  17. package/lib/AsideDrawer.js.map +1 -1
  18. package/lib/AsideTrigger.js +3 -4
  19. package/lib/AsideTrigger.js.map +1 -1
  20. package/lib/Autocomplete.js +2 -0
  21. package/lib/Autocomplete.js.map +1 -0
  22. package/lib/Avatar.js +1 -1
  23. package/lib/Avatar.js.map +1 -1
  24. package/lib/Badge.js +1 -1
  25. package/lib/Badge.js.map +1 -1
  26. package/lib/Banner.js +1 -1
  27. package/lib/Banner.js.map +1 -1
  28. package/lib/Button.js +7 -12
  29. package/lib/Button.js.map +1 -1
  30. package/lib/ButtonGroup.js +1 -1
  31. package/lib/ButtonGroup.js.map +1 -1
  32. package/lib/Calendar-C1SxrlzN.js +2 -0
  33. package/lib/Calendar-C1SxrlzN.js.map +1 -0
  34. package/lib/Calendar.js +1 -1
  35. package/lib/Card.js +1 -1
  36. package/lib/Card.js.map +1 -1
  37. package/lib/Checkbox.js +1 -1
  38. package/lib/Checkbox.js.map +1 -1
  39. package/lib/CollapseController-BtKNFNyJ.js +2 -0
  40. package/lib/CollapseController-BtKNFNyJ.js.map +1 -0
  41. package/lib/Collapsible.js +2 -0
  42. package/lib/Collapsible.js.map +1 -0
  43. package/lib/CollapsiblePanel.js +2 -0
  44. package/lib/CollapsiblePanel.js.map +1 -0
  45. package/lib/CollapsibleTrigger.js +2 -0
  46. package/lib/CollapsibleTrigger.js.map +1 -0
  47. package/lib/Combobox-By4h1Sp-.js +2 -0
  48. package/lib/Combobox-By4h1Sp-.js.map +1 -0
  49. package/lib/Combobox.js +2 -0
  50. package/lib/Combobox.js.map +1 -0
  51. package/lib/ComboboxBase.js +2 -0
  52. package/lib/ComboboxBase.js.map +1 -0
  53. package/lib/ComboboxEvents.js +2 -0
  54. package/lib/ComboboxEvents.js.map +1 -0
  55. package/lib/ComboboxGroup.js +2 -0
  56. package/lib/ComboboxGroup.js.map +1 -0
  57. package/lib/ComboboxOption.js +2 -0
  58. package/lib/ComboboxOption.js.map +1 -0
  59. package/lib/CommandMenu.js +1 -1
  60. package/lib/CommandMenu.js.map +1 -1
  61. package/lib/CommandMenuAction.js +1 -1
  62. package/lib/CommandMenuAction.js.map +1 -1
  63. package/lib/Component-BJ5O5n8k.js +2 -0
  64. package/lib/Component-BJ5O5n8k.js.map +1 -0
  65. package/lib/DatePicker.js +1 -1
  66. package/lib/DatePicker.js.map +1 -1
  67. package/lib/DateRangeChangeEvent.js +2 -0
  68. package/lib/DateRangeChangeEvent.js.map +1 -0
  69. package/lib/DateRangePicker.js +2 -0
  70. package/lib/DateRangePicker.js.map +1 -0
  71. package/lib/DateRangeSelectEvent.js +2 -0
  72. package/lib/DateRangeSelectEvent.js.map +1 -0
  73. package/lib/Divider.js +1 -1
  74. package/lib/Divider.js.map +1 -1
  75. package/lib/DraftComponentMixin-4qug5Rky.js +2 -0
  76. package/lib/DraftComponentMixin-4qug5Rky.js.map +1 -0
  77. package/lib/Drawer.js +1 -1
  78. package/lib/Drawer.js.map +1 -1
  79. package/lib/Dropdown.js +1 -1
  80. package/lib/Dropdown.js.map +1 -1
  81. package/lib/DropdownGroup.js +1 -1
  82. package/lib/DropdownGroup.js.map +1 -1
  83. package/lib/DropdownItem-BYbOLth6.js +2 -0
  84. package/lib/DropdownItem-BYbOLth6.js.map +1 -0
  85. package/lib/DropdownItem.js +1 -1
  86. package/lib/DropdownItem.js.map +1 -1
  87. package/lib/DropdownSubmenu.js +1 -1
  88. package/lib/DropdownSubmenu.js.map +1 -1
  89. package/lib/EmptyState.js +1 -1
  90. package/lib/EmptyState.js.map +1 -1
  91. package/lib/Field.js +2 -0
  92. package/lib/Field.js.map +1 -0
  93. package/lib/FieldContent.js +2 -0
  94. package/lib/FieldContent.js.map +1 -0
  95. package/lib/FieldControlMixin-BXNZJXu9.js +2 -0
  96. package/lib/FieldControlMixin-BXNZJXu9.js.map +1 -0
  97. package/lib/FieldDescription.js +2 -0
  98. package/lib/FieldDescription.js.map +1 -0
  99. package/lib/FieldError.js +2 -0
  100. package/lib/FieldError.js.map +1 -0
  101. package/lib/FieldGroup.js +2 -0
  102. package/lib/FieldGroup.js.map +1 -0
  103. package/lib/FieldLabel.js +2 -0
  104. package/lib/FieldLabel.js.map +1 -0
  105. package/lib/FieldLegend.js +2 -0
  106. package/lib/FieldLegend.js.map +1 -0
  107. package/lib/FieldSeparator.js +2 -0
  108. package/lib/FieldSeparator.js.map +1 -0
  109. package/lib/FieldSet.js +2 -0
  110. package/lib/FieldSet.js.map +1 -0
  111. package/lib/FieldTitle.js +2 -0
  112. package/lib/FieldTitle.js.map +1 -0
  113. package/lib/Fieldset2.js +2 -0
  114. package/lib/Fieldset2.js.map +1 -0
  115. package/lib/FilterAddButton.js +2 -0
  116. package/lib/FilterAddButton.js.map +1 -0
  117. package/lib/FilterAddButtonEvents.js +2 -0
  118. package/lib/FilterAddButtonEvents.js.map +1 -0
  119. package/lib/FilterBar.js +2 -0
  120. package/lib/FilterBar.js.map +1 -0
  121. package/lib/FilterDateRange.js +2 -0
  122. package/lib/FilterDateRange.js.map +1 -0
  123. package/lib/FilterDateRangeEvents.js +2 -0
  124. package/lib/FilterDateRangeEvents.js.map +1 -0
  125. package/lib/FilterDropdown.js +2 -0
  126. package/lib/FilterDropdown.js.map +1 -0
  127. package/lib/FilterDropdownEvents.js +2 -0
  128. package/lib/FilterDropdownEvents.js.map +1 -0
  129. package/lib/FilterField.js +2 -0
  130. package/lib/FilterField.js.map +1 -0
  131. package/lib/FilterFieldEvents.js +2 -0
  132. package/lib/FilterFieldEvents.js.map +1 -0
  133. package/lib/FilterInput.js +2 -0
  134. package/lib/FilterInput.js.map +1 -0
  135. package/lib/FilterResetButton.js +2 -0
  136. package/lib/FilterResetButton.js.map +1 -0
  137. package/lib/FocusableWhenDisabledController-C_Mn1mfN.js +2 -0
  138. package/lib/FocusableWhenDisabledController-C_Mn1mfN.js.map +1 -0
  139. package/lib/Footer.js +1 -1
  140. package/lib/Footer.js.map +1 -1
  141. package/lib/FormAssociatedMixin-D9aPREgv.js +2 -0
  142. package/lib/FormAssociatedMixin-D9aPREgv.js.map +1 -0
  143. package/lib/FormField-CMgEFZCK.js +2 -0
  144. package/lib/FormField-CMgEFZCK.js.map +1 -0
  145. package/lib/Header.js +1 -1
  146. package/lib/Header.js.map +1 -1
  147. package/lib/Icon.js +1 -1
  148. package/lib/Icon.js.map +1 -1
  149. package/lib/Input.js +1 -1
  150. package/lib/Input.js.map +1 -1
  151. package/lib/Item.js +2 -0
  152. package/lib/Item.js.map +1 -0
  153. package/lib/ItemActions.js +2 -0
  154. package/lib/ItemActions.js.map +1 -0
  155. package/lib/ItemContent.js +2 -0
  156. package/lib/ItemContent.js.map +1 -0
  157. package/lib/ItemDescription.js +2 -0
  158. package/lib/ItemDescription.js.map +1 -0
  159. package/lib/ItemFooter.js +2 -0
  160. package/lib/ItemFooter.js.map +1 -0
  161. package/lib/ItemGroup.js +2 -0
  162. package/lib/ItemGroup.js.map +1 -0
  163. package/lib/ItemHeader.js +2 -0
  164. package/lib/ItemHeader.js.map +1 -0
  165. package/lib/ItemMedia.js +2 -0
  166. package/lib/ItemMedia.js.map +1 -0
  167. package/lib/ItemSeparator.js +2 -0
  168. package/lib/ItemSeparator.js.map +1 -0
  169. package/lib/ItemTitle.js +2 -0
  170. package/lib/ItemTitle.js.map +1 -0
  171. package/lib/Kbd.js +2 -0
  172. package/lib/Kbd.js.map +1 -0
  173. package/lib/KbdGroup.js +2 -0
  174. package/lib/KbdGroup.js.map +1 -0
  175. package/lib/Layout.js +1 -3
  176. package/lib/Layout.js.map +1 -1
  177. package/lib/LocalizeController.js +1 -1
  178. package/lib/LocalizeController.js.map +1 -1
  179. package/lib/Message.js +1 -1
  180. package/lib/Message.js.map +1 -1
  181. package/lib/Meter.js +2 -0
  182. package/lib/Meter.js.map +1 -0
  183. package/lib/Modal.js +1 -1
  184. package/lib/Modal.js.map +1 -1
  185. package/lib/ModalController.js +1 -1
  186. package/lib/ModalController.js.map +1 -1
  187. package/lib/NavGroup.js +1 -1
  188. package/lib/NavGroup.js.map +1 -1
  189. package/lib/NavItem.js +1 -1
  190. package/lib/NavItem.js.map +1 -1
  191. package/lib/NavToggle-BY83xpx0.js +2 -0
  192. package/lib/NavToggle-BY83xpx0.js.map +1 -0
  193. package/lib/NavToggle.js +1 -1
  194. package/lib/Navigation.js +1 -1
  195. package/lib/Navigation.js.map +1 -1
  196. package/lib/Notification.js +1 -1
  197. package/lib/Notification.js.map +1 -1
  198. package/lib/NotificationGroup.js +1 -1
  199. package/lib/NotificationGroup.js.map +1 -1
  200. package/lib/NumberField.js +2 -0
  201. package/lib/NumberField.js.map +1 -0
  202. package/lib/NumberFieldEvents.js +2 -0
  203. package/lib/NumberFieldEvents.js.map +1 -0
  204. package/lib/OpenStateController-CCnZ7up6.js +2 -0
  205. package/lib/OpenStateController-CCnZ7up6.js.map +1 -0
  206. package/lib/OtpField.js +2 -0
  207. package/lib/OtpField.js.map +1 -0
  208. package/lib/OtpFieldEvents.js +2 -0
  209. package/lib/OtpFieldEvents.js.map +1 -0
  210. package/lib/Pagination.js +2 -0
  211. package/lib/Pagination.js.map +1 -0
  212. package/lib/PaginationContent.js +2 -0
  213. package/lib/PaginationContent.js.map +1 -0
  214. package/lib/PaginationEllipsis.js +2 -0
  215. package/lib/PaginationEllipsis.js.map +1 -0
  216. package/lib/PaginationItem.js +2 -0
  217. package/lib/PaginationItem.js.map +1 -0
  218. package/lib/PaginationLink.js +2 -0
  219. package/lib/PaginationLink.js.map +1 -0
  220. package/lib/PaginationNext.js +2 -0
  221. package/lib/PaginationNext.js.map +1 -0
  222. package/lib/PaginationPrevious.js +2 -0
  223. package/lib/PaginationPrevious.js.map +1 -0
  224. package/lib/Popout-DpN7PP9h.js +2 -0
  225. package/lib/Popout-DpN7PP9h.js.map +1 -0
  226. package/lib/Popout.js +1 -1
  227. package/lib/Progress.js +1 -1
  228. package/lib/Progress.js.map +1 -1
  229. package/lib/ProgressBar.js +1 -1
  230. package/lib/ProgressBar.js.map +1 -1
  231. package/lib/Qrcode.js +2 -2
  232. package/lib/Radio.js +1 -1
  233. package/lib/Radio.js.map +1 -1
  234. package/lib/Range.js +1 -1
  235. package/lib/Range.js.map +1 -1
  236. package/lib/ReadonlyMixin-BdJPGtQ3.js +2 -0
  237. package/lib/ReadonlyMixin-BdJPGtQ3.js.map +1 -0
  238. package/lib/ResizeController-14PUwRQy.js +2 -0
  239. package/lib/ResizeController-14PUwRQy.js.map +1 -0
  240. package/lib/ScrollArea.js +2 -0
  241. package/lib/ScrollArea.js.map +1 -0
  242. package/lib/SegmentedControl.js +1 -1
  243. package/lib/SegmentedControl.js.map +1 -1
  244. package/lib/SegmentedControlItem.js +23 -40
  245. package/lib/SegmentedControlItem.js.map +1 -1
  246. package/lib/Select.js +1 -1
  247. package/lib/Select.js.map +1 -1
  248. package/lib/Skeleton.js +1 -1
  249. package/lib/Skeleton.js.map +1 -1
  250. package/lib/Spinner.js +1 -1
  251. package/lib/Spinner.js.map +1 -1
  252. package/lib/Stack.js +1 -1
  253. package/lib/Stack.js.map +1 -1
  254. package/lib/StateAttributesController-BIh96sXZ.js +2 -0
  255. package/lib/StateAttributesController-BIh96sXZ.js.map +1 -0
  256. package/lib/Sticky-CZImMrGj.js +2 -0
  257. package/lib/Sticky-CZImMrGj.js.map +1 -0
  258. package/lib/Tab.js +1 -1
  259. package/lib/Tab.js.map +1 -1
  260. package/lib/TabGroup.js +1 -1
  261. package/lib/TabGroup.js.map +1 -1
  262. package/lib/TabPanel.js +1 -1
  263. package/lib/TabPanel.js.map +1 -1
  264. package/lib/Table.js +1 -1
  265. package/lib/Table.js.map +1 -1
  266. package/lib/Tag.js +1 -1
  267. package/lib/Tag.js.map +1 -1
  268. package/lib/TagGroup.js +1 -1
  269. package/lib/TagGroup.js.map +1 -1
  270. package/lib/TextField-CSKvieoG.js +2 -0
  271. package/lib/TextField-CSKvieoG.js.map +1 -0
  272. package/lib/TextSelectableMixin-Cfv__lHS.js.map +1 -1
  273. package/lib/Textarea.js +1 -1
  274. package/lib/Textarea.js.map +1 -1
  275. package/lib/TimePicker.js +2 -0
  276. package/lib/TimePicker.js.map +1 -0
  277. package/lib/Toast.js +1 -1
  278. package/lib/Toast.js.map +1 -1
  279. package/lib/ToastGroup.js +1 -1
  280. package/lib/ToastGroup.js.map +1 -1
  281. package/lib/Toggle.js +1 -1
  282. package/lib/Toggle.js.map +1 -1
  283. package/lib/Tooltip.js +1 -1
  284. package/lib/Tooltip.js.map +1 -1
  285. package/lib/TopBar.js +1 -1
  286. package/lib/TopBar.js.map +1 -1
  287. package/lib/Truncate.js +1 -1
  288. package/lib/Truncate.js.map +1 -1
  289. package/lib/VisuallyHidden.js +1 -1
  290. package/lib/bundle.js +91 -91
  291. package/lib/bundle.js.map +1 -1
  292. package/lib/combobox-context.js +2 -0
  293. package/lib/combobox-context.js.map +1 -0
  294. package/lib/context-consumer-BJVUulGf.js +7 -0
  295. package/lib/context-consumer-BJVUulGf.js.map +1 -0
  296. package/lib/context-provider-D8lrPLVi.js +12 -0
  297. package/lib/context-provider-D8lrPLVi.js.map +1 -0
  298. package/lib/context-request-event-CCRlXoeR.js +7 -0
  299. package/lib/context-request-event-CCRlXoeR.js.map +1 -0
  300. package/lib/create-context-CJ69ntlY.js +7 -0
  301. package/lib/create-context-CJ69ntlY.js.map +1 -0
  302. package/lib/currency.js +2 -0
  303. package/lib/currency.js.map +1 -0
  304. package/lib/date-adapter.js +1 -1
  305. package/lib/dates-C-ZvzXaC.js +2 -0
  306. package/lib/dates-C-ZvzXaC.js.map +1 -0
  307. package/lib/dates.js +2 -0
  308. package/lib/dates.js.map +1 -0
  309. package/lib/dismiss.js +2 -0
  310. package/lib/dismiss.js.map +1 -0
  311. package/lib/en-us.js +1 -1
  312. package/lib/en-us.js.map +1 -1
  313. package/lib/fi-fi.js +1 -1
  314. package/lib/fi-fi.js.map +1 -1
  315. package/lib/field-context.js +2 -0
  316. package/lib/field-context.js.map +1 -0
  317. package/lib/filter-chip-C97zd4PT.js +2 -0
  318. package/lib/filter-chip-C97zd4PT.js.map +1 -0
  319. package/lib/format.js +2 -0
  320. package/lib/format.js.map +1 -0
  321. package/lib/index.js +1 -1
  322. package/lib/interface-add-small-B-hv2v9J.js +2 -0
  323. package/lib/interface-add-small-B-hv2v9J.js.map +1 -0
  324. package/lib/interface-calendar-Cw2bJfbS.js +2 -0
  325. package/lib/interface-calendar-Cw2bJfbS.js.map +1 -0
  326. package/lib/interface-close-BvKnv9eh.js +2 -0
  327. package/lib/interface-close-BvKnv9eh.js.map +1 -0
  328. package/lib/interface-dropdown-small-CYvgxudU.js +2 -0
  329. package/lib/interface-dropdown-small-CYvgxudU.js.map +1 -0
  330. package/lib/interface-filter-CCsx9-u6.js +2 -0
  331. package/lib/interface-filter-CCsx9-u6.js.map +1 -0
  332. package/lib/interface-remove-small-DUaWSs90.js +2 -0
  333. package/lib/interface-remove-small-DUaWSs90.js.map +1 -0
  334. package/lib/light-dom-styles-DXsbiKU9.js +2 -0
  335. package/lib/light-dom-styles-DXsbiKU9.js.map +1 -0
  336. package/lib/localization.js +1 -1
  337. package/lib/localization.js.map +1 -1
  338. package/lib/localization10.js +2 -0
  339. package/lib/localization10.js.map +1 -0
  340. package/lib/localization11.js +2 -0
  341. package/lib/localization11.js.map +1 -0
  342. package/lib/localization12.js +2 -0
  343. package/lib/localization12.js.map +1 -0
  344. package/lib/localization13.js +2 -0
  345. package/lib/localization13.js.map +1 -0
  346. package/lib/localization14.js +2 -0
  347. package/lib/localization14.js.map +1 -0
  348. package/lib/localization15.js +2 -0
  349. package/lib/localization15.js.map +1 -0
  350. package/lib/localization16.js +2 -0
  351. package/lib/localization16.js.map +1 -0
  352. package/lib/localization17.js +2 -0
  353. package/lib/localization17.js.map +1 -0
  354. package/lib/localization18.js +2 -0
  355. package/lib/localization18.js.map +1 -0
  356. package/lib/localization19.js +2 -0
  357. package/lib/localization19.js.map +1 -0
  358. package/lib/localization2.js +1 -1
  359. package/lib/localization2.js.map +1 -1
  360. package/lib/localization20.js +2 -0
  361. package/lib/localization20.js.map +1 -0
  362. package/lib/localization21.js +2 -0
  363. package/lib/localization21.js.map +1 -0
  364. package/lib/localization22.js +2 -0
  365. package/lib/localization22.js.map +1 -0
  366. package/lib/localization3.js +1 -1
  367. package/lib/localization3.js.map +1 -1
  368. package/lib/localization4.js +1 -1
  369. package/lib/localization4.js.map +1 -1
  370. package/lib/localization5.js +1 -1
  371. package/lib/localization5.js.map +1 -1
  372. package/lib/localization6.js +1 -1
  373. package/lib/localization6.js.map +1 -1
  374. package/lib/localization7.js +1 -1
  375. package/lib/localization7.js.map +1 -1
  376. package/lib/localization8.js +1 -1
  377. package/lib/localization8.js.map +1 -1
  378. package/lib/localization9.js +1 -1
  379. package/lib/localization9.js.map +1 -1
  380. package/lib/navigation-search-CBbIGzo2.js +2 -0
  381. package/lib/navigation-search-CBbIGzo2.js.map +1 -0
  382. package/lib/paginate.js +2 -0
  383. package/lib/paginate.js.map +1 -0
  384. package/lib/parse.js +2 -0
  385. package/lib/parse.js.map +1 -0
  386. package/lib/primitives-Dj0vyf1-.js +2 -0
  387. package/lib/primitives-Dj0vyf1-.js.map +1 -0
  388. package/lib/react.d.ts +505 -0
  389. package/lib/src/accordion/Accordion.d.ts +121 -0
  390. package/lib/src/accordion/AccordionHeader.d.ts +28 -0
  391. package/lib/src/accordion/AccordionItem.d.ts +68 -0
  392. package/lib/src/accordion/AccordionPanel.d.ts +35 -0
  393. package/lib/src/accordion/AccordionTrigger.d.ts +47 -0
  394. package/lib/src/aside-drawer/AsideDrawer.d.ts +2 -0
  395. package/lib/src/aside-trigger/AsideTrigger.d.ts +2 -0
  396. package/lib/src/autocomplete/Autocomplete.d.ts +190 -0
  397. package/lib/src/autocomplete/localization.d.ts +5 -0
  398. package/lib/src/badge/Badge.d.ts +1 -1
  399. package/lib/src/banner/Banner.d.ts +3 -0
  400. package/lib/src/button-group/ButtonGroup.d.ts +1 -1
  401. package/lib/src/calendar/Calendar.d.ts +44 -0
  402. package/lib/src/calendar/DateRangeSelectEvent.d.ts +16 -0
  403. package/lib/src/collapsible/Collapsible.d.ts +69 -0
  404. package/lib/src/collapsible/CollapsiblePanel.d.ts +35 -0
  405. package/lib/src/collapsible/CollapsibleTrigger.d.ts +38 -0
  406. package/lib/src/combobox/Combobox.d.ts +131 -0
  407. package/lib/src/combobox/ComboboxBase.d.ts +421 -0
  408. package/lib/src/combobox/ComboboxEvents.d.ts +25 -0
  409. package/lib/src/combobox/ComboboxGroup.d.ts +34 -0
  410. package/lib/src/combobox/ComboboxOption.d.ts +47 -0
  411. package/lib/src/combobox/combobox-context.d.ts +18 -0
  412. package/lib/src/combobox/localization.d.ts +6 -0
  413. package/lib/src/common/controllers/ActiveDescendantController.d.ts +45 -0
  414. package/lib/src/common/controllers/CollapseController.d.ts +50 -0
  415. package/lib/src/common/controllers/FocusableWhenDisabledController.d.ts +29 -0
  416. package/lib/src/common/controllers/OpenStateController.d.ts +58 -0
  417. package/lib/src/common/controllers/RovingFocusController.d.ts +40 -0
  418. package/lib/src/common/controllers/StateAttributesController.d.ts +47 -0
  419. package/lib/src/common/controllers/TransitionStatusController.d.ts +48 -0
  420. package/lib/src/common/dates.d.ts +13 -0
  421. package/lib/src/common/light-dom-styles.d.ts +17 -0
  422. package/lib/src/common/mixins/FieldControlMixin.d.ts +60 -0
  423. package/lib/src/common/mixins/FormAssociatedMixin.d.ts +8 -25
  424. package/lib/src/common/mixins/TextSelectableMixin.d.ts +1 -0
  425. package/lib/src/common/prefers-reduced-motion.d.ts +7 -0
  426. package/lib/src/date-picker/DatePicker.d.ts +2 -0
  427. package/lib/src/date-range-picker/DateRangeChangeEvent.d.ts +27 -0
  428. package/lib/src/date-range-picker/DateRangePicker.d.ts +307 -0
  429. package/lib/src/date-range-picker/localization.d.ts +42 -0
  430. package/lib/src/dropdown/Dropdown.d.ts +1 -1
  431. package/lib/src/dropdown-group/DropdownGroup.d.ts +3 -1
  432. package/lib/src/dropdown-item/DropdownItem.d.ts +3 -1
  433. package/lib/src/dropdown-submenu/DropdownSubmenu.d.ts +2 -0
  434. package/lib/src/field/Field.d.ts +102 -0
  435. package/lib/src/field/FieldContent.d.ts +22 -0
  436. package/lib/src/field/FieldDescription.d.ts +21 -0
  437. package/lib/src/field/FieldError.d.ts +25 -0
  438. package/lib/src/field/FieldGroup.d.ts +25 -0
  439. package/lib/src/field/FieldLabel.d.ts +41 -0
  440. package/lib/src/field/FieldLegend.d.ts +20 -0
  441. package/lib/src/field/FieldSeparator.d.ts +21 -0
  442. package/lib/src/field/FieldSet.d.ts +28 -0
  443. package/lib/src/field/FieldTitle.d.ts +21 -0
  444. package/lib/src/field/field-context.d.ts +47 -0
  445. package/lib/src/fieldset/Fieldset.d.ts +12 -4
  446. package/lib/src/filter-add-button/FilterAddButton.d.ts +91 -0
  447. package/lib/src/filter-add-button/FilterAddButtonEvents.d.ts +17 -0
  448. package/lib/src/filter-add-button/localization.d.ts +4 -0
  449. package/lib/src/filter-bar/FilterBar.d.ts +37 -0
  450. package/lib/src/filter-date-range/FilterDateRange.d.ts +96 -0
  451. package/lib/src/filter-date-range/FilterDateRangeEvents.d.ts +37 -0
  452. package/lib/src/filter-date-range/localization.d.ts +11 -0
  453. package/lib/src/filter-dropdown/FilterDropdown.d.ts +247 -0
  454. package/lib/src/filter-dropdown/FilterDropdownEvents.d.ts +57 -0
  455. package/lib/src/filter-dropdown/localization.d.ts +14 -0
  456. package/lib/src/filter-field/FilterField.d.ts +89 -0
  457. package/lib/src/filter-field/FilterFieldEvents.d.ts +18 -0
  458. package/lib/src/filter-field/localization.d.ts +8 -0
  459. package/lib/src/filter-input/FilterInput.d.ts +102 -0
  460. package/lib/src/filter-input/localization.d.ts +5 -0
  461. package/lib/src/filter-reset-button/FilterResetButton.d.ts +50 -0
  462. package/lib/src/filter-reset-button/localization.d.ts +4 -0
  463. package/lib/src/index.d.ts +59 -0
  464. package/lib/src/input/Input.d.ts +2 -1
  465. package/lib/src/item/Item.d.ts +44 -0
  466. package/lib/src/item/ItemActions.d.ts +20 -0
  467. package/lib/src/item/ItemContent.d.ts +22 -0
  468. package/lib/src/item/ItemDescription.d.ts +20 -0
  469. package/lib/src/item/ItemFooter.d.ts +20 -0
  470. package/lib/src/item/ItemGroup.d.ts +22 -0
  471. package/lib/src/item/ItemHeader.d.ts +20 -0
  472. package/lib/src/item/ItemMedia.d.ts +28 -0
  473. package/lib/src/item/ItemSeparator.d.ts +21 -0
  474. package/lib/src/item/ItemTitle.d.ts +19 -0
  475. package/lib/src/kbd/Kbd.d.ts +54 -0
  476. package/lib/src/kbd/KbdGroup.d.ts +22 -0
  477. package/lib/src/layout/Layout.d.ts +2 -2
  478. package/lib/src/localization/en-us.d.ts +85 -0
  479. package/lib/src/localization/translation.d.ts +85 -0
  480. package/lib/src/meter/Meter.d.ts +76 -0
  481. package/lib/src/nav-group/NavGroup.d.ts +2 -0
  482. package/lib/src/nav-item/NavItem.d.ts +2 -0
  483. package/lib/src/nav-toggle/NavToggle.d.ts +3 -1
  484. package/lib/src/notification-group/NotificationGroup.d.ts +2 -0
  485. package/lib/src/number-field/NumberField.d.ts +377 -0
  486. package/lib/src/number-field/NumberFieldEvents.d.ts +37 -0
  487. package/lib/src/number-field/currency.d.ts +24 -0
  488. package/lib/src/number-field/format.d.ts +8 -0
  489. package/lib/src/number-field/localization.d.ts +6 -0
  490. package/lib/src/number-field/parse.d.ts +44 -0
  491. package/lib/src/number-field/validate.d.ts +24 -0
  492. package/lib/src/otp-field/OtpField.d.ts +177 -0
  493. package/lib/src/otp-field/OtpFieldEvents.d.ts +38 -0
  494. package/lib/src/otp-field/localization.d.ts +4 -0
  495. package/lib/src/pagination/Pagination.d.ts +51 -0
  496. package/lib/src/pagination/PaginationContent.d.ts +27 -0
  497. package/lib/src/pagination/PaginationEllipsis.d.ts +27 -0
  498. package/lib/src/pagination/PaginationItem.d.ts +24 -0
  499. package/lib/src/pagination/PaginationLink.d.ts +30 -0
  500. package/lib/src/pagination/PaginationNext.d.ts +24 -0
  501. package/lib/src/pagination/PaginationPrevious.d.ts +24 -0
  502. package/lib/src/pagination/localization.d.ts +4 -0
  503. package/lib/src/pagination/paginate.d.ts +20 -0
  504. package/lib/src/popout/Popout.d.ts +9 -0
  505. package/lib/src/scroll-area/ScrollArea.d.ts +101 -0
  506. package/lib/src/segmented-control-item/SegmentedControlItem.d.ts +2 -0
  507. package/lib/src/storybook-utils/dates.d.ts +2 -0
  508. package/lib/src/storybook-utils/dismiss.d.ts +1 -0
  509. package/lib/src/storybook-utils/story-descriptions.d.ts +2 -0
  510. package/lib/src/tab-group/TabGroup.d.ts +2 -0
  511. package/lib/src/tab-panel/TabPanel.d.ts +2 -0
  512. package/lib/src/tag-group/TagGroup.d.ts +2 -0
  513. package/lib/src/time-picker/TimePicker.d.ts +105 -0
  514. package/lib/src/time-picker/localization.d.ts +4 -0
  515. package/lib/src/toast-group/ToastGroup.d.ts +11 -0
  516. package/lib/story-descriptions.js +2 -0
  517. package/lib/story-descriptions.js.map +1 -0
  518. package/lib/translation.js +1 -1
  519. package/lib/translation.js.map +1 -1
  520. package/lib/validate.js +2 -0
  521. package/lib/validate.js.map +1 -0
  522. package/lib/vue.d.ts +407 -0
  523. package/package.json +9 -12
  524. package/lib/Calendar-ChNZdVRO.js +0 -2
  525. package/lib/Calendar-ChNZdVRO.js.map +0 -1
  526. package/lib/Component-DSU3Qp0O.js +0 -2
  527. package/lib/Component-DSU3Qp0O.js.map +0 -1
  528. package/lib/DropdownItem-Cb-7cHMg.js +0 -2
  529. package/lib/DropdownItem-Cb-7cHMg.js.map +0 -1
  530. package/lib/Fieldset.js +0 -2
  531. package/lib/Fieldset.js.map +0 -1
  532. package/lib/FormAssociatedMixin-B4Qj-CQN.js +0 -2
  533. package/lib/FormAssociatedMixin-B4Qj-CQN.js.map +0 -1
  534. package/lib/FormField-BFaVzUjk.js +0 -2
  535. package/lib/FormField-BFaVzUjk.js.map +0 -1
  536. package/lib/NavToggle-DzKbd-El.js +0 -2
  537. package/lib/NavToggle-DzKbd-El.js.map +0 -1
  538. package/lib/Popout-CYqn_dZu.js +0 -2
  539. package/lib/Popout-CYqn_dZu.js.map +0 -1
  540. package/lib/Sticky-DqnqENYN.js +0 -2
  541. package/lib/Sticky-DqnqENYN.js.map +0 -1
  542. package/lib/TextField-B955GOhe.js +0 -2
  543. package/lib/TextField-B955GOhe.js.map +0 -1
  544. package/lib/dates-CAAlPKZi.js +0 -2
  545. package/lib/dates-CAAlPKZi.js.map +0 -1
package/lib/vue.d.ts CHANGED
@@ -18,6 +18,31 @@ type WCProps<TWebComponent extends HTMLElement> = Partial<
18
18
  >;
19
19
 
20
20
  interface NordComponents {
21
+ "nord-accordion": DefineComponent<
22
+ WCProps<Components.Accordion> & {
23
+ /**
24
+ * Dispatched when an item is expanded or collapsed. The event includes a `value` array of the currently open item values.
25
+ */
26
+ onChange?: (event: Event) => void;
27
+ }
28
+ >;
29
+
30
+ "nord-accordion-header": DefineComponent<
31
+ WCProps<Components.AccordionHeader> & {}
32
+ >;
33
+
34
+ "nord-accordion-item": DefineComponent<
35
+ WCProps<Components.AccordionItem> & {}
36
+ >;
37
+
38
+ "nord-accordion-panel": DefineComponent<
39
+ WCProps<Components.AccordionPanel> & {}
40
+ >;
41
+
42
+ "nord-accordion-trigger": DefineComponent<
43
+ WCProps<Components.AccordionTrigger> & {}
44
+ >;
45
+
21
46
  "nord-aside": DefineComponent<
22
47
  WCProps<Components.Aside> & {
23
48
  /**
@@ -58,6 +83,35 @@ interface NordComponents {
58
83
 
59
84
  "nord-aside-trigger": DefineComponent<WCProps<Components.AsideTrigger> & {}>;
60
85
 
86
+ "nord-autocomplete": DefineComponent<
87
+ WCProps<Components.Autocomplete> & {
88
+ /**
89
+ * Dispatched when the committed value changes via user interaction.
90
+ */
91
+ onChange?: (event: Event) => void;
92
+
93
+ /**
94
+ * Dispatched when the value is cleared via the clear button or `clear()`.
95
+ */
96
+ onClear?: (event: Event) => void;
97
+
98
+ /**
99
+ * Dispatched when the listbox is closed.
100
+ */
101
+ onClose?: (event: Event) => void;
102
+
103
+ /**
104
+ * Dispatched as the user types into the input.
105
+ */
106
+ onInput?: (event: Event) => void;
107
+
108
+ /**
109
+ * Dispatched when the listbox is opened.
110
+ */
111
+ onOpen?: (event: Event) => void;
112
+ }
113
+ >;
114
+
61
115
  "nord-avatar": DefineComponent<WCProps<Components.Avatar> & {}>;
62
116
 
63
117
  "nord-badge": DefineComponent<WCProps<Components.Badge> & {}>;
@@ -79,6 +133,11 @@ interface NordComponents {
79
133
  * Dispatched when the calendar's focused date changes.
80
134
  */
81
135
  onNordFocusDate?: (event: Event) => void;
136
+
137
+ /**
138
+ * Dispatched in `range` mode when a complete range (start and end) has been selected.
139
+ */
140
+ onRangeChange?: (event: Event) => void;
82
141
  }
83
142
  >;
84
143
 
@@ -98,6 +157,65 @@ interface NordComponents {
98
157
  }
99
158
  >;
100
159
 
160
+ "nord-collapsible": DefineComponent<
161
+ WCProps<Components.Collapsible> & {
162
+ /**
163
+ * Dispatched when the collapsible is opened or closed. The event includes an `open` property reflecting the new state.
164
+ */
165
+ onToggle?: (event: Event) => void;
166
+ }
167
+ >;
168
+
169
+ "nord-collapsible-panel": DefineComponent<
170
+ WCProps<Components.CollapsiblePanel> & {}
171
+ >;
172
+
173
+ "nord-collapsible-trigger": DefineComponent<
174
+ WCProps<Components.CollapsibleTrigger> & {}
175
+ >;
176
+
177
+ "nord-combobox": DefineComponent<
178
+ WCProps<Components.Combobox> & {
179
+ /**
180
+ * Dispatched when the committed value changes via user interaction.
181
+ */
182
+ onChange?: (event: Event) => void;
183
+
184
+ /**
185
+ * Dispatched when the value is cleared via the clear button or `clear()`.
186
+ */
187
+ onClear?: (event: Event) => void;
188
+
189
+ /**
190
+ * Dispatched when the listbox is closed.
191
+ */
192
+ onClose?: (event: Event) => void;
193
+
194
+ /**
195
+ * Dispatched when the user chooses the "Create" affordance in a `creatable` combobox.
196
+ */
197
+ onCreate?: (event: Event) => void;
198
+
199
+ /**
200
+ * Dispatched as the user types into the search input.
201
+ */
202
+ onInput?: (event: Event) => void;
203
+
204
+ /**
205
+ * Dispatched when the listbox is opened.
206
+ */
207
+ onOpen?: (event: Event) => void;
208
+ }
209
+ >;
210
+
211
+ "nord-combobox-group": DefineComponent<
212
+ WCProps<Components.ComboboxGroup> & {}
213
+ >;
214
+
215
+ "nord-combobox-option": DefineComponent<
216
+ WCProps<Components.ComboboxOption> & {}
217
+ >;
218
+
101
219
  "nord-command-menu": DefineComponent<
102
220
  WCProps<Components.CommandMenu> & {
103
221
  /**
@@ -151,6 +269,30 @@ interface NordComponents {
151
269
  }
152
270
  >;
153
271
 
272
+ "nord-date-range-picker": DefineComponent<
273
+ WCProps<Components.DateRangePicker> & {
274
+ /**
275
+ * Dispatched when the committed range changes (Apply or Clear).
276
+ */
277
+ onChange?: (event: Event) => void;
278
+
279
+ /**
280
+ * Dispatched when the popout is closed.
281
+ */
282
+ onClose?: (event: Event) => void;
283
+
284
+ /**
285
+ * Dispatched live as the pending range changes inside the popout.
286
+ */
287
+ onInput?: (event: Event) => void;
288
+
289
+ /**
290
+ * Dispatched when the popout is opened.
291
+ */
292
+ onOpen?: (event: Event) => void;
293
+ }
294
+ >;
295
+
154
296
  "nord-divider": DefineComponent<WCProps<Components.Divider> & {}>;
155
297
 
156
298
  "nord-drawer": DefineComponent<WCProps<Components.Drawer> & {}>;
@@ -196,8 +338,168 @@ interface NordComponents {
196
338
 
197
339
  "nord-empty-state": DefineComponent<WCProps<Components.EmptyState> & {}>;
198
340
 
341
+ "nord-field": DefineComponent<WCProps<Components.Field> & {}>;
342
+
343
+ "nord-field-content": DefineComponent<WCProps<Components.FieldContent> & {}>;
344
+
345
+ "nord-field-description": DefineComponent<
346
+ WCProps<Components.FieldDescription> & {}
347
+ >;
348
+
349
+ "nord-field-error": DefineComponent<WCProps<Components.FieldError> & {}>;
350
+
351
+ "nord-field-group": DefineComponent<WCProps<Components.FieldGroup> & {}>;
352
+
353
+ "nord-field-label": DefineComponent<WCProps<Components.FieldLabel> & {}>;
354
+
355
+ "nord-field-legend": DefineComponent<WCProps<Components.FieldLegend> & {}>;
356
+
357
+ "nord-field-separator": DefineComponent<
358
+ WCProps<Components.FieldSeparator> & {}
359
+ >;
360
+
199
361
  "nord-fieldset": DefineComponent<WCProps<Components.Fieldset> & {}>;
200
362
 
363
+ "nord-field-set": DefineComponent<WCProps<Components.FieldSet> & {}>;
364
+
365
+ "nord-field-title": DefineComponent<WCProps<Components.FieldTitle> & {}>;
366
+
367
+ "nord-filter-add-button": DefineComponent<
368
+ WCProps<Components.FilterAddButton> & {
369
+ /**
370
+ * Dispatched when the popout is closed.
371
+ */
372
+ onClose?: (event: Event) => void;
373
+
374
+ /**
375
+ * Dispatched when the popout is opened.
376
+ */
377
+ onOpen?: (event: Event) => void;
378
+
379
+ /**
380
+ * Dispatched with the chosen option's `id` when an option is selected.
381
+ */
382
+ onSelect?: (event: Event) => void;
383
+ }
384
+ >;
385
+
386
+ "nord-filter-bar": DefineComponent<WCProps<Components.FilterBar> & {}>;
387
+
388
+ "nord-filter-date-range": DefineComponent<
389
+ WCProps<Components.FilterDateRange> & {
390
+ /**
391
+ * Dispatched when the committed range changes (Apply or clear).
392
+ */
393
+ onChange?: (event: Event) => void;
394
+
395
+ /**
396
+ * Dispatched when the chip's clear affordance is pressed.
397
+ */
398
+ onClear?: (event: Event) => void;
399
+
400
+ /**
401
+ * Dispatched when the popout is closed.
402
+ */
403
+ onClose?: (event: Event) => void;
404
+
405
+ /**
406
+ * Dispatched when the popout is opened.
407
+ */
408
+ onOpen?: (event: Event) => void;
409
+
410
+ /**
411
+ * Dispatched when the chip's remove affordance is pressed.
412
+ */
413
+ onRemove?: (event: Event) => void;
414
+ }
415
+ >;
416
+
417
+ "nord-filter-dropdown": DefineComponent<
418
+ WCProps<Components.FilterDropdown> & {
419
+ /**
420
+ * Dispatched when the committed selection changes via user interaction.
421
+ */
422
+ onChange?: (event: Event) => void;
423
+
424
+ /**
425
+ * Dispatched when the selection is cleared, before `change`.
426
+ */
427
+ onClear?: (event: Event) => void;
428
+
429
+ /**
430
+ * Dispatched when the popout is closed.
431
+ */
432
+ onClose?: (event: Event) => void;
433
+
434
+ /**
435
+ * Dispatched when the list is scrolled near its end (infinite scroll).
436
+ */
437
+ onLoadMore?: (event: Event) => void;
438
+
439
+ /**
440
+ * Dispatched when the popout is opened.
441
+ */
442
+ onOpen?: (event: Event) => void;
443
+
444
+ /**
445
+ * Dispatched when the filter is removed (only when `removable`).
446
+ */
447
+ onRemove?: (event: Event) => void;
448
+
449
+ /**
450
+ * Dispatched as the user types when `searchable` (use with `internal-search="false"` for async search).
451
+ */
452
+ onSearchChange?: (event: Event) => void;
453
+ }
454
+ >;
455
+
456
+ "nord-filter-field": DefineComponent<
457
+ WCProps<Components.FilterField> & {
458
+ /**
459
+ * Dispatched when the clear affordance is pressed.
460
+ */
461
+ onClear?: (event: Event) => void;
462
+
463
+ /**
464
+ * Dispatched when the remove affordance is pressed.
465
+ */
466
+ onRemove?: (event: Event) => void;
467
+ }
468
+ >;
469
+
470
+ "nord-filter-input": DefineComponent<
471
+ WCProps<Components.FilterInput> & {
472
+ /**
473
+ * Dispatched when the value is committed.
474
+ */
475
+ onChange?: (event: Event) => void;
476
+
477
+ /**
478
+ * Dispatched when the chip-mode popout is closed.
479
+ */
480
+ onClose?: (event: Event) => void;
481
+
482
+ /**
483
+ * Dispatched as the user types into the input.
484
+ */
485
+ onInput?: (event: Event) => void;
486
+
487
+ /**
488
+ * Dispatched when the chip-mode popout is opened.
489
+ */
490
+ onOpen?: (event: Event) => void;
491
+ }
492
+ >;
493
+
494
+ "nord-filter-reset-button": DefineComponent<
495
+ WCProps<Components.FilterResetButton> & {
496
+ /**
497
+ * Dispatched when the button is pressed to clear all active filters.
498
+ */
499
+ onReset?: (event: Event) => void;
500
+ }
501
+ >;
502
+
201
503
  "nord-footer": DefineComponent<WCProps<Components.Footer> & {}>;
202
504
 
203
505
  "nord-header": DefineComponent<WCProps<Components.Header> & {}>;
@@ -223,6 +525,34 @@ interface NordComponents {
223
525
  }
224
526
  >;
225
527
 
528
+ "nord-item": DefineComponent<WCProps<Components.Item> & {}>;
529
+
530
+ "nord-item-actions": DefineComponent<WCProps<Components.ItemActions> & {}>;
531
+
532
+ "nord-item-content": DefineComponent<WCProps<Components.ItemContent> & {}>;
533
+
534
+ "nord-item-description": DefineComponent<
535
+ WCProps<Components.ItemDescription> & {}
536
+ >;
537
+
538
+ "nord-item-footer": DefineComponent<WCProps<Components.ItemFooter> & {}>;
539
+
540
+ "nord-item-group": DefineComponent<WCProps<Components.ItemGroup> & {}>;
541
+
542
+ "nord-item-header": DefineComponent<WCProps<Components.ItemHeader> & {}>;
543
+
544
+ "nord-item-media": DefineComponent<WCProps<Components.ItemMedia> & {}>;
545
+
546
+ "nord-item-separator": DefineComponent<
547
+ WCProps<Components.ItemSeparator> & {}
548
+ >;
549
+
550
+ "nord-item-title": DefineComponent<WCProps<Components.ItemTitle> & {}>;
551
+
552
+ "nord-kbd": DefineComponent<WCProps<Components.Kbd> & {}>;
553
+
554
+ "nord-kbd-group": DefineComponent<WCProps<Components.KbdGroup> & {}>;
555
+
226
556
  "nord-layout": DefineComponent<
227
557
  WCProps<Components.Layout> & {
228
558
  /**
@@ -239,6 +569,8 @@ interface NordComponents {
239
569
 
240
570
  "nord-message": DefineComponent<WCProps<Components.Message> & {}>;
241
571
 
572
+ "nord-meter": DefineComponent<WCProps<Components.Meter> & {}>;
573
+
242
574
  "nord-modal": DefineComponent<
243
575
  WCProps<Components.Modal> & {
244
576
  /**
@@ -315,6 +647,70 @@ interface NordComponents {
315
647
  }
316
648
  >;
317
649
 
650
+ "nord-number-field": DefineComponent<
651
+ WCProps<Components.NumberField> & {
652
+ /**
653
+ * Dispatched when the value is committed (on blur, keyboard step, or pointer-up after a button hold or scrub). Carries the numeric value and a `reason`.
654
+ */
655
+ onChange?: (event: Event) => void;
656
+
657
+ /**
658
+ * Dispatched as the value changes during interaction (typing a parseable value, clearing, each step, each button tick, each wheel notch, each scrub increment).
659
+ */
660
+ onInput?: (event: Event) => void;
661
+ }
662
+ >;
663
+
664
+ "nord-otp-field": DefineComponent<
665
+ WCProps<Components.OtpField> & {
666
+ /**
667
+ * Dispatched alongside `input` when the committed value changes via user interaction.
668
+ */
669
+ onChange?: (event: Event) => void;
670
+
671
+ /**
672
+ * Dispatched after the value updates when every cell becomes filled.
673
+ */
674
+ onComplete?: (event: Event) => void;
675
+
676
+ /**
677
+ * Dispatched whenever the OTP value changes through user interaction (typing, Backspace/Delete, paste, autofill).
678
+ */
679
+ onInput?: (event: Event) => void;
680
+
681
+ /**
682
+ * Dispatched when typed or pasted text contained characters rejected by `type`.
683
+ */
684
+ onValueInvalid?: (event: Event) => void;
685
+ }
686
+ >;
687
+
688
+ "nord-pagination": DefineComponent<WCProps<Components.Pagination> & {}>;
689
+
690
+ "nord-pagination-content": DefineComponent<
691
+ WCProps<Components.PaginationContent> & {}
692
+ >;
693
+
694
+ "nord-pagination-ellipsis": DefineComponent<
695
+ WCProps<Components.PaginationEllipsis> & {}
696
+ >;
697
+
698
+ "nord-pagination-item": DefineComponent<
699
+ WCProps<Components.PaginationItem> & {}
700
+ >;
701
+
702
+ "nord-pagination-link": DefineComponent<
703
+ WCProps<Components.PaginationLink> & {}
704
+ >;
705
+
706
+ "nord-pagination-next": DefineComponent<
707
+ WCProps<Components.PaginationNext> & {}
708
+ >;
709
+
710
+ "nord-pagination-previous": DefineComponent<
711
+ WCProps<Components.PaginationPrevious> & {}
712
+ >;
713
+
318
714
  "nord-popout": DefineComponent<
319
715
  WCProps<Components.Popout> & {
320
716
  /**
@@ -363,6 +759,8 @@ interface NordComponents {
363
759
  }
364
760
  >;
365
761
 
762
+ "nord-scroll-area": DefineComponent<WCProps<Components.ScrollArea> & {}>;
763
+
366
764
  "nord-segmented-control": DefineComponent<
367
765
  WCProps<Components.SegmentedControl> & {
368
766
  /**
@@ -461,6 +859,15 @@ interface NordComponents {
461
859
  }
462
860
  >;
463
861
 
862
+ "nord-time-picker": DefineComponent<
863
+ WCProps<Components.TimePicker> & {
864
+ /**
865
+ * Fired when the selected time changes.
866
+ */
867
+ onChange?: (event: Event) => void;
868
+ }
869
+ >;
870
+
464
871
  "nord-toast": DefineComponent<
465
872
  WCProps<Components.Toast> & {
466
873
  /**
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@nordhealth/components",
3
3
  "type": "module",
4
- "version": "4.26.2",
4
+ "version": "5.0.0-alpha.0",
5
5
  "description": "This package includes Nord Design System Web Components",
6
6
  "author": "Nordhealth <support@nordhealth.design>",
7
7
  "license": "SEE LICENSE IN LICENSE.md",
@@ -38,7 +38,10 @@
38
38
  },
39
39
  "dependencies": {
40
40
  "@floating-ui/dom": "^1.7.5",
41
+ "@lit/context": "^1.1.6",
41
42
  "@nordhealth/icons": "^3.17.0",
43
+ "@tanstack/lit-virtual": "^3.13.30",
44
+ "@tanstack/virtual-core": "3.17.1",
42
45
  "lit": "^3.3.2",
43
46
  "qr": "^0.4.2",
44
47
  "tinykeys": "^1.4.0"
@@ -47,9 +50,8 @@
47
50
  "@custom-elements-manifest/analyzer": "^0.10.10",
48
51
  "@nordhealth/css": "^4.4.1",
49
52
  "@nordhealth/fonts": "^3.0.4",
50
- "@nordhealth/themes": "^9.0.9",
51
- "@nordhealth/tokens": "^8.1.0",
52
- "@open-wc/eslint-config": "^12.0.3",
53
+ "@nordhealth/themes": "^10.0.0-alpha.0",
54
+ "@nordhealth/tokens": "^9.0.0-alpha.0",
53
55
  "@open-wc/testing-helpers": "^3.0.1",
54
56
  "@playwright/test": "1.58.0",
55
57
  "@rollup/plugin-node-resolve": "^15.3.1",
@@ -60,18 +62,12 @@
60
62
  "@storybook/addon-docs": "^10.4.6",
61
63
  "@storybook/addon-themes": "^10.4.6",
62
64
  "@storybook/web-components-vite": "^10.4.6",
65
+ "@tailwindcss/vite": "^4.2.0",
63
66
  "@types/node": "^22.19.11",
64
- "@typescript-eslint/eslint-plugin": "^8.56.0",
65
- "@typescript-eslint/parser": "^8.56.0",
66
67
  "@vitest/browser": "^4.0.18",
67
68
  "@vitest/browser-playwright": "^4.0.18",
68
69
  "axe-core": "^4.10.3",
69
70
  "concurrently": "^9.2.1",
70
- "eslint": "^8.57.1",
71
- "eslint-plugin-import": "^2.32.0",
72
- "eslint-plugin-lit": "^1.15.0",
73
- "eslint-plugin-lit-a11y": "^4.1.4",
74
- "eslint-plugin-wc": "^1.5.0",
75
71
  "glob": "^11.1.0",
76
72
  "http-server": "^14.1.1",
77
73
  "prettier": "^3.8.1",
@@ -81,6 +77,7 @@
81
77
  "rollup-plugin-minify-html-literals-v3": "^1.3.4",
82
78
  "rollup-plugin-summary": "^2.0.1",
83
79
  "storybook": "^10.4.6",
80
+ "tailwindcss": "^4.2.0",
84
81
  "tslib": "^2.8.1",
85
82
  "typescript": "~5.5.4",
86
83
  "vitest": "^4.0.18",
@@ -91,5 +88,5 @@
91
88
  "rollup": "~4.21.3"
92
89
  }
93
90
  },
94
- "gitHead": "3f129d3bee6b26dda6d61357ac15b5f0dba5aae5"
91
+ "gitHead": "d2dc72c154367b3cfd96fef8d316315df2e9f246"
95
92
  }
@@ -1,2 +0,0 @@
1
- import{_ as a}from"./tslib.es6-CmLYFWVC.js";import{css as e,LitElement as n,isServer as t,html as i}from"lit";import{query as r,property as s,state as o,customElement as d}from"lit/decorators.js";import{classMap as l}from"lit/directives/class-map.js";import{repeat as c}from"lit/directives/repeat.js";import{o as h}from"./tinykeys.module-_6MZt7MP.js";import{m as u,c as v}from"./collection-Dvg2XbxV.js";import{D as p}from"./DirectionController-ChvNGESZ.js";import{E as g}from"./EventController-BBOmvfLa.js";import{D as f,i as b,p as m,a as y,s as w,e as x,b as D,g as z,d as k,f as _,h as $,j as F,k as Y,l as j,m as M,n as S,o as T}from"./dates-CAAlPKZi.js";import{o as C}from"./observe-D0n0zOfU.js";import{c as N}from"./cond-CI1KbneT.js";import{r as L}from"./number-Dg2vCfGd.js";import{s as O}from"./Component-DSU3Qp0O.js";import X from"./Icon.js";import{LocalizeController as E}from"./LocalizeController.js";import{DateSelectEvent as W}from"./DateSelectEvent.js";import"./Button.js";import"./VisuallyHidden.js";var A=Object.freeze({__proto__:null,default:'<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="m.100342 6.92903 2.121318-2.12132 7.77818 7.77819 7.77826-7.77828 2.1213 2.12132-8.4853 8.48536c-.7811.7811-2.04743.7811-2.82848 0z" fill="currentColor"/></svg>',tags:"nordicon arrow down small caret pointing triangle chevron",title:"arrow-down-small"});var U=Object.freeze({__proto__:null,default:'<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="m13.0712.105225 2.1213 2.121315-7.77816 7.77816 7.77826 7.7783-2.1213 2.1213-8.48539-8.4854c-.78105-.781-.78105-2.04735 0-2.82839z" fill="currentColor"/></svg>',tags:"nordicon arrow left small caret pointing triangle chevron",title:"arrow-left-small"});var I=Object.freeze({__proto__:null,default:'<svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><path d="m6.92903.100342-2.12132 2.121318 7.77819 7.77818-7.77828 7.77826 2.12132 2.1213 8.48536-8.4853c.7811-.7811.7811-2.04743 0-2.82848z" fill="currentColor"/></svg>',tags:"nordicon arrow right small caret pointing triangle chevron",title:"arrow-right-small"});const P=a=>a.preventDefault();class B{constructor(a,e){this.hadFirstUpdate=!1,this.initialTouchX=0,this.initialTouchY=0,this.handleTouchStart=a=>{const[{pageX:e,pageY:n}]=a.changedTouches;this.initialTouchX=e,this.initialTouchY=n},this.handleTouchEnd=a=>{const[{pageX:e,pageY:n}]=a.changedTouches,{matchesGesture:t,onSwipeEnd:i}=this.options,r=e-this.initialTouchX,s=n-this.initialTouchY,o={initialX:this.initialTouchX,initialY:this.initialTouchY,pageX:e,pageY:n,distX:r,distY:s};t(o)&&(a.preventDefault(),i(o))},a.addController(this),this.events=new g(a),this.options={target:()=>a,...e}}hostUpdated(){if(!this.hadFirstUpdate){this.hadFirstUpdate=!0;const a=this.options.target();this.events.listen(a,"touchstart",this.handleTouchStart),this.events.listen(a,"touchmove",P),this.events.listen(a,"touchend",this.handleTouchEnd)}}hostDisconnected(){this.hadFirstUpdate=!1}}function H({distX:a,distY:e}){return Math.abs(a)>=70&&Math.abs(e)<=70}function R({distX:a,distY:e}){return Math.abs(e)>=70&&Math.abs(a)<=70&&e>0}const V=e`:host{--_n-calendar-box-shadow:var(--n-calendar-box-shadow, var(--n-box-shadow-popout));--_n-calendar-border-radius:var(--n-calendar-border-radius, var(--n-border-radius-s));--_n-calendar-highlight-color:var(--n-calendar-highlight-color, var(--n-color-accent));--_n-calendar-padding-block-start:var(--n-calendar-padding-block, var(--n-space-m));--_n-calendar-padding-block-end:var(--n-calendar-padding-block, var(--n-space-m));--_n-calendar-padding-inline:var(--n-calendar-padding-inline, var(--n-space-m));--_n-calendar-day-size:var(--n-calendar-day-size, var(--n-space-xl));--_n-calendar-day-font-size:var(--n-calendar-day-font-size, var(--n-font-size-m));--_n-calendar-select-label-font-size:var(--n-calendar-select-label-font-size, var(--n-font-size-xl));--_n-calendar-nav-padding-inline:var(--n-calendar-nav-padding-inline, 11px);--_n-calendar-nav-gap:var(--n-calendar-nav-gap, var(--n-space-xs));--_n-calendar-header-margin-block-end:var(--n-calendar-header-margin-block-end, var(--n-space-m));--_n-calendar-header-padding-block-end:var(--n-calendar-header-padding-block-end, 0);--_n-calendar-header-gap:var(--n-calendar-header-gap, var(--n-space-s));--_n-calendar-inline-size:var(--n-calendar-inline-size, max-content);font-feature-settings:var(--n-font-features-reduced)}:host([size='s']){--_n-calendar-day-size:var(--n-calendar-day-size, calc(var(--n-space-l) + var(--n-space-xs)));--_n-calendar-day-font-size:var(--n-calendar-day-font-size, var(--n-font-size-s));--_n-calendar-select-label-font-size:var(--n-calendar-select-label-font-size, var(--n-font-size-l));--_n-calendar-nav-padding-inline:var(--n-calendar-nav-padding-inline, var(--n-space-s));--_n-calendar-header-margin-block-end:var(--n-calendar-header-margin-block-end, var(--n-space-s));--_n-calendar-header-padding-block-end:var(--n-calendar-header-padding-block-end, var(--n-space-xs))}.n-calendar{user-select:none;background:var(--n-color-surface);box-shadow:var(--_n-calendar-box-shadow);border-radius:var(--_n-calendar-border-radius);inline-size:var(--_n-calendar-inline-size);min-inline-size:min-content;padding-block-start:var(--_n-calendar-padding-block-start);padding-block-end:var(--_n-calendar-padding-block-end);padding-inline-start:var(--_n-calendar-padding-inline);padding-inline-end:var(--_n-calendar-padding-inline)}:host([expand]){--_n-calendar-inline-size:var(--n-calendar-inline-size, 100%)}.n-calendar-table{border-collapse:collapse;border-spacing:0;color:var(--n-color-text);font-size:var(--n-font-size-m);font-weight:var(--n-font-weight);text-align:center;inline-size:100%}.n-calendar-table-header{font-size:var(--n-font-size-s);font-weight:var(--n-font-weight-active);letter-spacing:1px;padding-block-end:var(--n-space-s);text-decoration:none;text-transform:uppercase}.n-calendar-cell{text-align:center;padding:1px}.n-calendar-day{appearance:none;background:0 0;border:0;border-radius:var(--n-border-radius-s);color:var(--n-color-text);cursor:pointer;display:inline-block;font-family:var(--n-font-family);font-size:var(--_n-calendar-day-font-size);font-weight:var(--n-font-weight);font-variant-numeric:tabular-nums;block-size:var(--_n-calendar-day-size);inline-size:var(--_n-calendar-day-size);padding:0 0 1px;position:relative;text-align:center;vertical-align:middle}.n-calendar-day[aria-current=date]{box-shadow:0 0 0 1px var(--n-color-text-link);color:var(--n-color-text-link);position:relative}.n-calendar-day:hover{background:var(--n-color-active)}.n-calendar-day:focus,.n-calendar-day[aria-pressed=true]{background:var(--n-color-accent);box-shadow:none;color:var(--n-color-text-on-accent);outline:0}.n-calendar-day:active{background:var(--n-color-accent);box-shadow:none!important;color:var(--n-color-text-on-accent)}.n-calendar-day:focus{box-shadow:0 0 5px var(--n-color-accent)}.n-calendar-day:not(.is-month){box-shadow:none}.n-calendar-day:not(.is-month),.n-calendar-day[aria-disabled=true]{background:0 0;color:var(--n-color-text-weakest);cursor:default}.n-calendar-day[aria-disabled=true]{color:var(--n-color-text-weaker);text-decoration:line-through}.n-calendar-day:not(.is-month)[aria-disabled=true]{color:var(--n-color-text-weakest);text-decoration:none}.n-calendar-day[aria-disabled=true][aria-current=date]{box-shadow:0 0 0 1px var(--n-color-accent);color:var(--n-color-text-link)}.n-calendar-day[aria-disabled=true][aria-current=date]:focus{box-shadow:0 0 5px var(--n-color-accent);background:var(--n-color-accent);color:var(--n-color-text-on-accent)}.n-calendar-day[aria-disabled=true]:not([aria-current=date])::before{display:none}.n-calendar-day.is-outside{background:0 0;box-shadow:none;color:var(--n-color-text-weakest);cursor:default;pointer-events:none}.n-calendar-day.is-outside::before{display:none}.n-calendar-day.is-highlighted::after{--_n-calendar-highlight-size:5px;content:'';position:absolute;inset-inline-start:calc(50% - (var(--_n-calendar-highlight-size)/ 2));inset-block-end:var(--n-space-xs);block-size:var(--_n-calendar-highlight-size);inline-size:var(--_n-calendar-highlight-size);border-radius:var(--n-border-radius-circle);background-color:var(--_n-calendar-highlight-color)}.n-calendar-day.is-highlighted.is-month:is([aria-pressed=true],:focus):not([aria-disabled=true])::after{background-color:var(--n-color-text-on-accent)}.n-calendar-day.is-highlighted:is(:not(.is-month),.is-outside,[aria-disabled=true])::after{background-color:var(--n-color-text-weakest)}.n-calendar-header{align-items:center;display:flex;justify-content:space-between;column-gap:var(--_n-calendar-header-gap);margin-block-end:var(--_n-calendar-header-margin-block-end);padding-block-end:var(--_n-calendar-header-padding-block-end);inline-size:100%}.n-calendar-nav{display:flex;column-gap:var(--_n-calendar-nav-gap);white-space:nowrap}.n-calendar-nav nord-button{--_n-button-padding-inline:var(--_n-calendar-nav-padding-inline)}.n-calendar-select{display:inline-flex;position:relative;line-height:var(--n-line-height)}.n-calendar-select span{margin-inline-end:var(--n-space-s)}.n-calendar-select select{cursor:pointer;font-size:var(--n-font-size-l);block-size:100%;inset-inline-start:0;opacity:0;position:absolute;inset-block-start:0;inline-size:100%}.n-calendar-select select:focus+.n-calendar-select-label{box-shadow:0 0 0 2px var(--n-color-accent)}.n-calendar-select-label{display:flex;align-items:center;border-radius:var(--n-border-radius-s);color:var(--n-color-text);font-size:var(--_n-calendar-select-label-font-size);font-weight:var(--n-font-weight-active);padding-block:0;padding-inline-start:var(--n-space-s);padding-inline-end:var(--n-space-xs);pointer-events:none;position:relative;inline-size:100%}`;function q(a){return e=>{e.preventDefault(),a(e)}}X.registerIcon(I),X.registerIcon(U),X.registerIcon(A);const G=()=>!1,J=()=>!1,K="dialog-header";let Q=class extends n{constructor(){super(...arguments),this.direction=new p(this),this.swipe=new B(this,{matchesGesture:H,onSwipeEnd:({distX:a})=>this.addMonths(a<0?1:-1)}),this.shortcuts=h({ArrowRight:q((()=>this.addDays(this.direction.isLTR?1:-1))),ArrowLeft:q((()=>this.addDays(this.direction.isLTR?-1:1))),ArrowDown:q((()=>this.addDays(7))),ArrowUp:q((()=>this.addDays(-7))),Home:q((()=>this.startOfWeek())),End:q((()=>this.endOfWeek())),PageUp:q((()=>this.addMonths(-1))),PageDown:q((()=>this.addMonths(1))),"Shift+PageUp":q((()=>this.addYears(-1))),"Shift+PageDown":q((()=>this.addYears(1)))}),this.localize=new E(this,{onLangChange:()=>this.handleLangChange()}),this.value="",this.firstDayOfWeek=f.Monday,this.expand=!1,this.size="m",this.isDateDisabled=G,this.isDateHighlighted=J,this.activeFocus=!1,this.focusedDay=new Date,this.handleDaySelect=a=>{const e=b(a,m(this.min||""),m(this.max||"")),n=!this.isDateDisabled(a);e&&n&&(this.value=y(a),this.dispatchEvent(new W("change",a)))},this.handleMonthSelect=a=>{this.setMonth(Number.parseInt(a.target.value,10))},this.handleYearSelect=a=>{this.setYear(Number.parseInt(a.target.value,10))},this.handleNextMonthClick=a=>{a.preventDefault(),this.addMonths(1)},this.handlePreviousMonthClick=a=>{a.preventDefault(),this.addMonths(-1)},this.enableActiveFocus=()=>{this.activeFocus=!0},this.disableActiveFocus=a=>{const e=a.currentTarget,n=a.relatedTarget;n&&!e.contains(n)&&(this.activeFocus=!1)}}focus(a){var e;const n=null!==(e=null==a?void 0:a.target)&&void 0!==e?e:"day";"day"===n?this.focusedDayNode.focus():"month"===n&&this.monthSelectNode.focus()}render(){const a=this.getToday(),e=m(this.value),n=this.focusedDay.getMonth(),r=this.focusedDay.getFullYear(),s=m(this.min||""),o=m(this.max||""),d=s?w(s):void 0,h=o?x(o):void 0,p=a.getFullYear(),g=s?s.getFullYear():p-100,f=o?o.getFullYear():p+10;return t&&this.handleLangChange(),i`<div class="n-calendar"><div class="n-calendar-header"><div><nord-visually-hidden><h2 id="${K}" aria-live="polite" aria-atomic="true">${this.monthNames[n]}, ${this.focusedDay.getFullYear()}</h2></nord-visually-hidden><div class="n-calendar-select"><select aria-label="${this.localize.term("monthSelectLabel")}" class="n-calendar-select-month" @input="${this.handleMonthSelect}">${this.monthNames.map(((a,e)=>i`<option value="${e}" ?selected="${e===n}" ?disabled="${!b(new Date(r,e,1),d,h)}">${a}</option>`))}</select><div class="n-calendar-select-label" aria-hidden="true"><span>${this.monthNamesShort[n]}</span><nord-icon color="var(--n-color-icon)" name="arrow-down-small" size="xxs"></nord-icon></div></div><div class="n-calendar-select"><select aria-label="${this.localize.term("yearSelectLabel")}" class="n-calendar-select-year" @input="${this.handleYearSelect}">${c(L(g,f),(a=>a),(a=>i`<option ?selected="${a===r}">${a}</option>`))}</select><div class="n-calendar-select-label" aria-hidden="true"><span>${this.focusedDay.getFullYear()}</span><nord-icon color="var(--n-color-icon)" name="arrow-down-small" size="xxs"></nord-icon></div></div></div><div class="n-calendar-nav"><nord-button class="n-calendar-prev" size="${this.size}" square @click="${this.handlePreviousMonthClick}" ?disabled="${D(s,this.focusedDay)}" type="button"><nord-visually-hidden>${this.localize.term("prevMonthLabel")}</nord-visually-hidden><nord-icon name="${this.direction.isLTR?"arrow-left-small":"arrow-right-small"}" size="${"s"===this.size?"xs":"s"}"></nord-icon></nord-button><nord-button class="n-calendar-next" size="${this.size}" square @click="${this.handleNextMonthClick}" ?disabled="${D(o,this.focusedDay)}" type="button"><nord-visually-hidden>${this.localize.term("nextMonthLabel")}</nord-visually-hidden><nord-icon name="${this.direction.isLTR?"arrow-right-small":"arrow-left-small"}" size="${"s"===this.size?"xs":"s"}"></nord-icon></nord-button></div></div><table class="n-calendar-table" aria-labelledby="${K}" @focusin="${this.enableActiveFocus}" @focusout="${this.disableActiveFocus}"><thead><tr>${u(this.dayNames,this.firstDayOfWeek,((a,e)=>i`<th class="n-calendar-table-header" scope="col"><span aria-hidden="true">${this.dayNamesShort[e]}</span><nord-visually-hidden>${a}</nord-visually-hidden></th>`))}</tr></thead><tbody>${v(z(this.focusedDay,this.firstDayOfWeek),7).map((n=>i`<tr class="n-calendar-row">${n.map((n=>{const t=!b(n,s,o),r=k(n,a),d=this.isDateDisabled(n),c=k(n,e),h=D(n,this.focusedDay),u=this.isDateHighlighted(n),v=this.dateFormatShort.format(n),p=u&&"string"==typeof u?`${v}, ${u}`:v;return i`<td class="n-calendar-cell"><button type="button" tabindex="${k(n,this.focusedDay)?0:-1}" class="${l({"n-calendar-day":!0,"is-outside":t,"is-month":h,"is-highlighted":u})}" @click="${()=>this.handleDaySelect(n)}" @keydown="${this.shortcuts}" ?disabled="${t}" aria-disabled="${N(d,"true")}" aria-pressed="${c?"true":"false"}" aria-current="${N(r,"date")}" aria-label="${p}"><span aria-hidden="true">${n.getDate()}</span></button></td>`}))}</tr>`))}</tbody></table></div>`}handleValueChange(){this.setFocusedDay(m(this.value)||this.getToday())}handleFocusedDayChange(){this.activeFocus&&this.focusedDayNode.focus()}handleLangChange(){const a=this.localize.resolvedLang;this.dateFormatShort=new Intl.DateTimeFormat(a,{day:"numeric",month:"long"}),this.monthNames=_(a,"long"),this.monthNamesShort=_(a,"short"),this.dayNames=$(a,"long"),this.dayNamesShort=$(a,"narrow")}getToday(){return m(this.today||"")||new Date}addDays(a){this.setFocusedDay(F(this.focusedDay,a))}addMonths(a){this.setMonth(this.focusedDay.getMonth()+a)}addYears(a){this.setYear(this.focusedDay.getFullYear()+a)}startOfWeek(){this.setFocusedDay(Y(this.focusedDay,this.firstDayOfWeek))}endOfWeek(){this.setFocusedDay(j(this.focusedDay,this.firstDayOfWeek))}setMonth(a){const e=M(w(this.focusedDay),a),n=x(e),t=M(this.focusedDay,a);this.setFocusedDay(S(t,e,n))}setYear(a){const e=T(w(this.focusedDay),a),n=x(e),t=T(this.focusedDay,a);this.setFocusedDay(S(t,e,n))}setFocusedDay(a){this.focusedDay=S(a,m(this.min||""),m(this.max||"")),this.dispatchEvent(new W("nord-focus-date",this.focusedDay))}};Q.styles=[O,V],a([r(".n-calendar-select-month",!0)],Q.prototype,"monthSelectNode",void 0),a([r('button[tabindex="0"]')],Q.prototype,"focusedDayNode",void 0),a([s()],Q.prototype,"value",void 0),a([s({reflect:!0,type:Number,attribute:"first-day-of-week"})],Q.prototype,"firstDayOfWeek",void 0),a([s({reflect:!0})],Q.prototype,"min",void 0),a([s({reflect:!0})],Q.prototype,"max",void 0),a([s({reflect:!0})],Q.prototype,"today",void 0),a([s({reflect:!0,type:Boolean})],Q.prototype,"expand",void 0),a([s({reflect:!0})],Q.prototype,"size",void 0),a([s({attribute:!1})],Q.prototype,"isDateDisabled",void 0),a([s({attribute:!1})],Q.prototype,"isDateHighlighted",void 0),a([o()],Q.prototype,"activeFocus",void 0),a([o()],Q.prototype,"focusedDay",void 0),a([C("value")],Q.prototype,"handleValueChange",null),a([C("focusedDay","updated")],Q.prototype,"handleFocusedDayChange",null),Q=a([d("nord-calendar")],Q);var Z=Q;export{Z as C,B as S,R as i};
2
- //# sourceMappingURL=Calendar-ChNZdVRO.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Calendar-ChNZdVRO.js","sources":["../../icons/lib/assets/arrow-down-small.js","../../icons/lib/assets/arrow-left-small.js","../../icons/lib/assets/arrow-right-small.js","../src/common/controllers/SwipeController.ts","../src/calendar/Calendar.ts"],"sourcesContent":["export default '<svg viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"m.100342 6.92903 2.121318-2.12132 7.77818 7.77819 7.77826-7.77828 2.1213 2.12132-8.4853 8.48536c-.7811.7811-2.04743.7811-2.82848 0z\" fill=\"currentColor\"/></svg>';\nexport const title = \"arrow-down-small\";\nexport const tags = \"nordicon arrow down small caret pointing triangle chevron\";\n","export default '<svg viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"m13.0712.105225 2.1213 2.121315-7.77816 7.77816 7.77826 7.7783-2.1213 2.1213-8.48539-8.4854c-.78105-.781-.78105-2.04735 0-2.82839z\" fill=\"currentColor\"/></svg>';\nexport const title = \"arrow-left-small\";\nexport const tags = \"nordicon arrow left small caret pointing triangle chevron\";\n","export default '<svg viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"m6.92903.100342-2.12132 2.121318 7.77819 7.77818-7.77828 7.77826 2.12132 2.1213 8.48536-8.4853c.7811-.7811.7811-2.04743 0-2.82848z\" fill=\"currentColor\"/></svg>';\nexport const title = \"arrow-right-small\";\nexport const tags =\n \"nordicon arrow right small caret pointing triangle chevron\";\n","import type { ReactiveController, ReactiveElement } from 'lit'\nimport { EventController } from './EventController.js'\n\nexport interface SwipeDetails {\n initialX: number\n initialY: number\n pageX: number\n pageY: number\n distX: number\n distY: number\n}\n\nconst preventDefault = (e: Event) => e.preventDefault()\n\ntype SetRequired<T, K extends keyof T> = T & { [Property in K]-?: T[K] }\ninterface SwipeControllerOptions {\n target?: () => HTMLElement\n matchesGesture: (details: SwipeDetails) => boolean\n onSwipeEnd: (details: SwipeDetails) => void\n}\n\nexport class SwipeController implements ReactiveController {\n private events: EventController\n private hadFirstUpdate = false\n\n private initialTouchX: number = 0\n private initialTouchY: number = 0\n private options: SetRequired<SwipeControllerOptions, 'target'>\n\n constructor(host: ReactiveElement, options: SwipeControllerOptions) {\n host.addController(this)\n this.events = new EventController(host)\n\n this.options = {\n target: () => host,\n ...options,\n }\n }\n\n hostUpdated() {\n if (!this.hadFirstUpdate) {\n this.hadFirstUpdate = true\n\n const target = this.options.target()\n this.events.listen(target, 'touchstart', this.handleTouchStart)\n this.events.listen(target, 'touchmove', preventDefault)\n this.events.listen(target, 'touchend', this.handleTouchEnd)\n }\n }\n\n hostDisconnected() {\n this.hadFirstUpdate = false\n }\n\n private handleTouchStart = (event: TouchEvent) => {\n const [{ pageX, pageY }] = event.changedTouches\n this.initialTouchX = pageX\n this.initialTouchY = pageY\n }\n\n private handleTouchEnd = (event: TouchEvent) => {\n const [{ pageX, pageY }] = event.changedTouches\n const { matchesGesture, onSwipeEnd } = this.options\n\n const distX = pageX - this.initialTouchX\n const distY = pageY - this.initialTouchY\n const details = { initialX: this.initialTouchX, initialY: this.initialTouchY, pageX, pageY, distX, distY }\n\n if (matchesGesture(details)) {\n event.preventDefault()\n onSwipeEnd(details)\n }\n }\n}\n\nconst THRESHOLD = 70\n\nexport function isHorizontalSwipe({ distX, distY }: SwipeDetails) {\n return Math.abs(distX) >= THRESHOLD && Math.abs(distY) <= THRESHOLD\n}\n\nexport function isDownwardsSwipe({ distX, distY }: SwipeDetails) {\n return Math.abs(distY) >= THRESHOLD && Math.abs(distX) <= THRESHOLD && distY > 0\n}\n","import * as arrowDownIcon from '@nordhealth/icons/lib/assets/arrow-down-small.js'\nimport * as arrowLeftIcon from '@nordhealth/icons/lib/assets/arrow-left-small.js'\nimport * as arrowRightIcon from '@nordhealth/icons/lib/assets/arrow-right-small.js'\nimport { html, isServer, LitElement } from 'lit'\nimport { customElement, property, query, state } from 'lit/decorators.js'\nimport { classMap } from 'lit/directives/class-map.js'\nimport { repeat } from 'lit/directives/repeat.js'\nimport { createKeybindingsHandler } from 'tinykeys'\n\nimport { chunk, mapWithOffset } from '../common/collection.js'\nimport { DirectionController } from '../common/controllers/DirectionController.js'\nimport { isHorizontalSwipe, SwipeController } from '../common/controllers/SwipeController.js'\n\nimport {\n addDays,\n clamp,\n DaysOfWeek,\n endOfMonth,\n endOfWeek,\n getDayNames,\n getMonthNames,\n getViewOfMonth,\n inRange,\n isEqual,\n isEqualMonth,\n parseISODate,\n printISODate,\n setMonth,\n setYear,\n startOfMonth,\n startOfWeek,\n} from '../common/dates.js'\nimport { observe } from '../common/decorators/observe.js'\nimport { cond } from '../common/directives/cond.js'\nimport { range } from '../common/number.js'\nimport componentStyle from '../common/styles/Component.css'\nimport Icon from '../icon/Icon.js'\nimport { LocalizeController } from '../localization/LocalizeController.js'\nimport style from './Calendar.css'\n\nimport { DateSelectEvent } from './DateSelectEvent.js'\nimport '../button/Button.js'\nimport '../visually-hidden/VisuallyHidden.js'\n\nexport type DatePredicate = (date: Date) => boolean\n\nIcon.registerIcon(arrowRightIcon)\nIcon.registerIcon(arrowLeftIcon)\nIcon.registerIcon(arrowDownIcon)\n\nfunction preventDefault(fn: EventListener) {\n return (e: Event) => {\n e.preventDefault()\n fn(e)\n }\n}\n\nconst isDateDisabled: DatePredicate = () => false\nconst isDateHighlighted = () => false\n\nconst dialogLabelId = 'dialog-header'\n\n/**\n * Calendar allows user to pick a date. It comes with built-in\n * functionality that allows you to set a minimum and a maximum allowed date.\n * Please note that the date must be passed in ISO-8601 format.\n *\n * @status ready\n * @category list\n * @fires {DateSelectEvent} change - Dispatched when a date is selected and the value changes.\n * @fires {DateSelectEvent} nord-focus-date - Dispatched when the calendar's focused date changes.\n *\n * @cssprop [--n-calendar-border-radius=var(--n-border-radius)] - Controls how rounded the corners are, using [border radius tokens](/tokens/#border-radius).\n * @cssprop [--n-calendar-box-shadow=var(--n-box-shadow-popout)] - Controls the surrounding shadow, using [box shadow tokens](/tokens/#box-shadow).\n * @cssprop [--n-calendar-padding-block=var(--n-space-m)] - Controls the block padding of the calendar, using [space tokens](/tokens/#space).\n * @cssprop [--n-calendar-padding-inline=var(--n-space-m)] - Controls the inline padding of the calendar, using [space tokens](/tokens/#space).\n * @cssprop [--n-calendar-day-size=var(--n-space-xl)] - Controls the block and inline size of each day cell, using [space tokens](/tokens/#space).\n * @cssprop [--n-calendar-day-font-size=var(--n-font-size-m)] - Controls the font size of each day cell, using [font size tokens](/tokens/#font-size).\n * @cssprop [--n-calendar-select-label-font-size=var(--n-font-size-xl)] - Controls the font size of the month and year select labels, using [font size tokens](/tokens/#font-size).\n * @cssprop [--n-calendar-nav-padding-inline=11px] - Controls the inline padding of the previous and next month buttons.\n * @cssprop [--n-calendar-nav-gap=var(--n-space-xs)] - Controls the gap between the previous and next month buttons, using [space tokens](/tokens/#space).\n * @cssprop [--n-calendar-header-margin-block-end=var(--n-space-m)] - Controls the block-end margin of the calendar header, using [space tokens](/tokens/#space).\n * @cssprop [--n-calendar-header-padding-block-end=0] - Controls the block-end padding of the calendar header, using [space tokens](/tokens/#space).\n * @cssprop [--n-calendar-header-gap=var(--n-space-s)] - Controls the gap between the month/year selects and the navigation buttons, using [space tokens](/tokens/#space).\n * @cssprop [--n-calendar-inline-size=max-content] - Controls the inline size of the calendar. Defaults to `100%` when the `expand` attribute is set.\n *\n * @localization prevMonthLabel - Accessible label for the previous month button.\n * @localization nextMonthLabel - Accessible label for the next month button.\n * @localization monthSelectLabel - Accessible label for the month select.\n * @localization yearSelectLabel - Accessible label for the year select.\n */\n@customElement('nord-calendar')\nexport default class Calendar extends LitElement {\n static styles = [componentStyle, style]\n\n @query('.n-calendar-select-month', true) private monthSelectNode!: HTMLElement\n @query(`button[tabindex=\"0\"]`) private focusedDayNode!: HTMLButtonElement\n\n private direction = new DirectionController(this)\n private swipe = new SwipeController(this, {\n matchesGesture: isHorizontalSwipe,\n onSwipeEnd: ({ distX }) => this.addMonths(distX < 0 ? 1 : -1),\n })\n\n private shortcuts = createKeybindingsHandler({\n 'ArrowRight': preventDefault(() => this.addDays(this.direction.isLTR ? 1 : -1)),\n 'ArrowLeft': preventDefault(() => this.addDays(this.direction.isLTR ? -1 : 1)),\n 'ArrowDown': preventDefault(() => this.addDays(7)),\n 'ArrowUp': preventDefault(() => this.addDays(-7)),\n 'Home': preventDefault(() => this.startOfWeek()),\n 'End': preventDefault(() => this.endOfWeek()),\n 'PageUp': preventDefault(() => this.addMonths(-1)),\n 'PageDown': preventDefault(() => this.addMonths(1)),\n 'Shift+PageUp': preventDefault(() => this.addYears(-1)),\n 'Shift+PageDown': preventDefault(() => this.addYears(1)),\n })\n\n private localize = new LocalizeController<'nord-calendar'>(this, {\n onLangChange: () => this.handleLangChange(),\n })\n\n /**\n * Whilst dateAdapter is used for handling the formatting/parsing dates in the input,\n * these are used to format dates exclusively for the benefit of screen readers.\n *\n * We prefer DateTimeFormat over date.toLocaleDateString, as the former has\n * better performance when formatting large number of dates. See:\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleDateString#Performance\n */\n private dateFormatShort!: Intl.DateTimeFormat\n private monthNames!: string[]\n private monthNamesShort!: string[]\n private dayNames!: string[]\n private dayNamesShort!: string[]\n\n /**\n * The selected date on the calendar. Must be in IS0-8601 format: YYYY-MM-DD.\n */\n @property() value: string = ''\n\n /**\n * Which day is considered first day of the week? `0` for Sunday, `1` for Monday, etc.\n * Default is Monday.\n */\n @property({ reflect: true, type: Number, attribute: 'first-day-of-week' }) firstDayOfWeek: DaysOfWeek\n = DaysOfWeek.Monday\n\n /**\n * Minimum date allowed to be picked. Must be in IS0-8601 format: YYYY-MM-DD.\n * This setting can be used alone or together with the max property.\n */\n @property({ reflect: true }) min?: string\n\n /**\n * Maximum date allowed to be picked. Must be in IS0-8601 format: YYYY-MM-DD.\n * This setting can be used alone or together with the min property.\n */\n @property({ reflect: true }) max?: string\n\n /**\n * The date that is considered today. Must be in IS0-8601 format: YYYY-MM-DD.\n * If not set, the current local date of the user is used.\n */\n @property({ reflect: true }) today?: string\n\n /**\n * Controls whether the calendar expands to fill the width of its container.\n */\n @property({ reflect: true, type: Boolean }) expand = false\n\n /**\n * Controls the size of the calendar.\n */\n @property({ reflect: true }) size: 's' | 'm' = 'm'\n\n /**\n * Controls which days are disabled and therefore disallowed.\n * For example, this can be used to disallow selection of weekends.\n */\n @property({ attribute: false }) isDateDisabled: DatePredicate = isDateDisabled\n\n /**\n * Controls which days are highlighted with a small indicator.\n * Returning a \"falsy\" value will not show an indicator.\n * Returning \"truthy\" value will show the indicator, but without an accessible label.\n * Returning a string will show the indicator, and use the string as accessible label.\n * It is recommended to return a string rather than a truthy value whenever possible.\n */\n @property({ attribute: false }) isDateHighlighted: (date: Date) => string | boolean = isDateHighlighted\n\n @state() private activeFocus = false\n @state() private focusedDay = new Date()\n\n /**\n * Programmatically move focus to the calendar.\n * @param options An object which controls aspects of the focusing process.\n */\n focus(options?: FocusOptions & { target: 'day' | 'month' }) {\n const target = options?.target ?? 'day'\n\n if (target === 'day') {\n this.focusedDayNode.focus()\n }\n else if (target === 'month') {\n this.monthSelectNode.focus()\n }\n }\n\n render() {\n const today = this.getToday()\n const valueAsDate = parseISODate(this.value)\n const focusedMonth = this.focusedDay.getMonth()\n const focusedYear = this.focusedDay.getFullYear()\n\n const minDate = parseISODate(this.min || '')\n const maxDate = parseISODate(this.max || '')\n const minDateStartOfMonth = minDate ? startOfMonth(minDate) : undefined\n const maxDateEndOfMonth = maxDate ? endOfMonth(maxDate) : undefined\n\n const currentYear = today.getFullYear()\n const minYear = minDate ? minDate.getFullYear() : currentYear - 100\n const maxYear = maxDate ? maxDate.getFullYear() : currentYear + 10\n\n if (isServer) {\n // Needed when run on a server, because the `onLangChange` callback does not get triggered, so we need to manually\n // call `handleLangChange` to set the localized values for month and day names, which the `render` method relies on.\n this.handleLangChange()\n }\n\n return html`\n <div class=\"n-calendar\">\n <div class=\"n-calendar-header\">\n <div>\n <nord-visually-hidden>\n <h2 id=${dialogLabelId} aria-live=\"polite\" aria-atomic=\"true\">\n ${this.monthNames[focusedMonth]}, ${this.focusedDay.getFullYear()}\n </h2>\n </nord-visually-hidden>\n\n <div class=\"n-calendar-select\">\n <select\n aria-label=${this.localize.term('monthSelectLabel')}\n class=\"n-calendar-select-month\"\n @input=${this.handleMonthSelect}\n >\n ${this.monthNames.map(\n (month, i) => html`\n <option\n value=${i}\n ?selected=${i === focusedMonth}\n ?disabled=${!inRange(new Date(focusedYear, i, 1), minDateStartOfMonth, maxDateEndOfMonth)}\n >\n ${month}\n </option>\n `,\n )}\n </select>\n <div class=\"n-calendar-select-label\" aria-hidden=\"true\">\n <span>${this.monthNamesShort[focusedMonth]}</span>\n <nord-icon color=\"var(--n-color-icon)\" name=\"arrow-down-small\" size=\"xxs\"></nord-icon>\n </div>\n </div>\n\n <div class=\"n-calendar-select\">\n <select\n aria-label=${this.localize.term('yearSelectLabel')}\n class=\"n-calendar-select-year\"\n @input=${this.handleYearSelect}\n >\n ${repeat(\n range(minYear, maxYear),\n year => year,\n year => html`<option ?selected=${year === focusedYear}>${year}</option>`,\n )}\n </select>\n <div class=\"n-calendar-select-label\" aria-hidden=\"true\">\n <span>${this.focusedDay.getFullYear()}</span>\n <nord-icon color=\"var(--n-color-icon)\" name=\"arrow-down-small\" size=\"xxs\"></nord-icon>\n </div>\n </div>\n </div>\n\n <div class=\"n-calendar-nav\">\n <nord-button\n class=\"n-calendar-prev\"\n size=${this.size}\n square\n @click=${this.handlePreviousMonthClick}\n ?disabled=${isEqualMonth(minDate, this.focusedDay)}\n type=\"button\"\n >\n <nord-visually-hidden>${this.localize.term('prevMonthLabel')}</nord-visually-hidden>\n <nord-icon name=${this.direction.isLTR ? 'arrow-left-small' : 'arrow-right-small'} size=${this.size === 's' ? 'xs' : 's'}></nord-icon>\n </nord-button>\n\n <nord-button\n class=\"n-calendar-next\"\n size=${this.size}\n square\n @click=${this.handleNextMonthClick}\n ?disabled=${isEqualMonth(maxDate, this.focusedDay)}\n type=\"button\"\n >\n <nord-visually-hidden>${this.localize.term('nextMonthLabel')}</nord-visually-hidden>\n <nord-icon name=${this.direction.isLTR ? 'arrow-right-small' : 'arrow-left-small'} size=${this.size === 's' ? 'xs' : 's'}></nord-icon>\n </nord-button>\n </div>\n </div>\n\n <table\n class=\"n-calendar-table\"\n aria-labelledby=${dialogLabelId}\n @focusin=${this.enableActiveFocus}\n @focusout=${this.disableActiveFocus}\n >\n <thead>\n <tr>\n ${mapWithOffset(\n this.dayNames,\n this.firstDayOfWeek,\n (dayName, i) => html`\n <th class=\"n-calendar-table-header\" scope=\"col\">\n <span aria-hidden=\"true\">${this.dayNamesShort[i]}</span>\n <nord-visually-hidden>${dayName}</nord-visually-hidden>\n </th>\n `,\n )}\n </tr>\n </thead>\n <tbody>\n ${chunk(getViewOfMonth(this.focusedDay, this.firstDayOfWeek), 7).map(\n week => html`\n <tr class=\"n-calendar-row\">\n ${week.map((day) => {\n const outsideRange = !inRange(day, minDate, maxDate)\n const isToday = isEqual(day, today)\n const isDisabled = this.isDateDisabled(day)\n const isSelected = isEqual(day, valueAsDate)\n const isInMonth = isEqualMonth(day, this.focusedDay)\n const isHighlighted = this.isDateHighlighted(day)\n const formattedDate = this.dateFormatShort.format(day)\n\n const accessibleLabel\n = isHighlighted && typeof isHighlighted === 'string'\n ? `${formattedDate}, ${isHighlighted}`\n : formattedDate\n\n return html`\n <td class=\"n-calendar-cell\">\n <button\n type=\"button\"\n tabindex=${isEqual(day, this.focusedDay) ? 0 : -1}\n class=${classMap({\n 'n-calendar-day': true,\n 'is-outside': outsideRange,\n 'is-month': isInMonth,\n 'is-highlighted': isHighlighted,\n })}\n @click=${() => this.handleDaySelect(day)}\n @keydown=${this.shortcuts}\n ?disabled=${outsideRange}\n aria-disabled=${cond(isDisabled, 'true')}\n aria-pressed=${isSelected ? 'true' : 'false'}\n aria-current=${cond(isToday, 'date')}\n aria-label=${accessibleLabel}\n >\n <span aria-hidden=\"true\">${day.getDate()}</span>\n </button>\n </td>\n `\n })}\n </tr>\n `,\n )}\n </tbody>\n </table>\n </div>\n `\n }\n\n @observe('value')\n protected handleValueChange() {\n this.setFocusedDay(parseISODate(this.value) || this.getToday())\n }\n\n @observe('focusedDay', 'updated')\n protected handleFocusedDayChange() {\n if (this.activeFocus) {\n this.focusedDayNode.focus()\n }\n }\n\n private handleLangChange() {\n const lang = this.localize.resolvedLang\n this.dateFormatShort = new Intl.DateTimeFormat(lang, { day: 'numeric', month: 'long' })\n this.monthNames = getMonthNames(lang, 'long')\n this.monthNamesShort = getMonthNames(lang, 'short')\n this.dayNames = getDayNames(lang, 'long')\n this.dayNamesShort = getDayNames(lang, 'narrow')\n }\n\n private handleDaySelect = (day: Date) => {\n const isInRange = inRange(day, parseISODate(this.min || ''), parseISODate(this.max || ''))\n const isAllowed = !this.isDateDisabled(day)\n\n if (isInRange && isAllowed) {\n this.value = printISODate(day)\n this.dispatchEvent(new DateSelectEvent('change', day))\n }\n }\n\n private getToday() {\n return parseISODate(this.today || '') || new Date()\n }\n\n private addDays(days: number) {\n this.setFocusedDay(addDays(this.focusedDay, days))\n }\n\n private addMonths(months: number) {\n this.setMonth(this.focusedDay.getMonth() + months)\n }\n\n private addYears(years: number) {\n this.setYear(this.focusedDay.getFullYear() + years)\n }\n\n private startOfWeek() {\n this.setFocusedDay(startOfWeek(this.focusedDay, this.firstDayOfWeek))\n }\n\n private endOfWeek() {\n this.setFocusedDay(endOfWeek(this.focusedDay, this.firstDayOfWeek))\n }\n\n private setMonth(month: number) {\n const min = setMonth(startOfMonth(this.focusedDay), month)\n const max = endOfMonth(min)\n const date = setMonth(this.focusedDay, month)\n\n this.setFocusedDay(clamp(date, min, max))\n }\n\n private setYear(year: number) {\n const min = setYear(startOfMonth(this.focusedDay), year)\n const max = endOfMonth(min)\n const date = setYear(this.focusedDay, year)\n\n this.setFocusedDay(clamp(date, min, max))\n }\n\n private setFocusedDay(day: Date) {\n this.focusedDay = clamp(day, parseISODate(this.min || ''), parseISODate(this.max || ''))\n this.dispatchEvent(new DateSelectEvent('nord-focus-date', this.focusedDay))\n }\n\n private handleMonthSelect = (e: Event) => {\n this.setMonth(Number.parseInt((e.target as HTMLSelectElement).value, 10))\n }\n\n private handleYearSelect = (e: Event) => {\n this.setYear(Number.parseInt((e.target as HTMLSelectElement).value, 10))\n }\n\n private handleNextMonthClick = (event: MouseEvent) => {\n event.preventDefault()\n this.addMonths(1)\n }\n\n private handlePreviousMonthClick = (event: MouseEvent) => {\n event.preventDefault()\n this.addMonths(-1)\n }\n\n private enableActiveFocus = () => {\n this.activeFocus = true\n }\n\n private disableActiveFocus = (e: FocusEvent) => {\n const table = e.currentTarget as Node\n const relatedTarget = e.relatedTarget as Node\n\n if (relatedTarget && !table.contains(relatedTarget)) {\n this.activeFocus = false\n }\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nord-calendar': Calendar\n }\n}\n"],"names":["preventDefault","e","SwipeController","constructor","host","options","this","hadFirstUpdate","initialTouchX","initialTouchY","handleTouchStart","event","pageX","pageY","changedTouches","handleTouchEnd","matchesGesture","onSwipeEnd","distX","distY","details","initialX","initialY","addController","events","EventController","target","hostUpdated","listen","hostDisconnected","isHorizontalSwipe","Math","abs","isDownwardsSwipe","fn","Icon","registerIcon","arrowRightIcon","arrowLeftIcon","arrowDownIcon","isDateDisabled","isDateHighlighted","dialogLabelId","Calendar","LitElement","direction","DirectionController","swipe","addMonths","shortcuts","createKeybindingsHandler","ArrowRight","addDays","isLTR","ArrowLeft","ArrowDown","ArrowUp","Home","startOfWeek","End","endOfWeek","PageUp","PageDown","addYears","localize","LocalizeController","onLangChange","handleLangChange","value","firstDayOfWeek","DaysOfWeek","Monday","expand","size","activeFocus","focusedDay","Date","handleDaySelect","day","isInRange","inRange","parseISODate","min","max","isAllowed","printISODate","dispatchEvent","DateSelectEvent","handleMonthSelect","setMonth","Number","parseInt","handleYearSelect","setYear","handleNextMonthClick","handlePreviousMonthClick","enableActiveFocus","disableActiveFocus","table","currentTarget","relatedTarget","contains","focus","_a","focusedDayNode","monthSelectNode","render","today","getToday","valueAsDate","focusedMonth","getMonth","focusedYear","getFullYear","minDate","maxDate","minDateStartOfMonth","startOfMonth","undefined","maxDateEndOfMonth","endOfMonth","currentYear","minYear","maxYear","isServer","html","monthNames","term","map","month","i","monthNamesShort","repeat","range","year","isEqualMonth","mapWithOffset","dayNames","dayName","dayNamesShort","chunk","getViewOfMonth","week","outsideRange","isToday","isEqual","isDisabled","isSelected","isInMonth","isHighlighted","formattedDate","dateFormatShort","format","accessibleLabel","classMap","cond","getDate","handleValueChange","setFocusedDay","handleFocusedDayChange","lang","resolvedLang","Intl","DateTimeFormat","getMonthNames","getDayNames","days","months","years","date","clamp","styles","componentStyle","style","__decorate","query","prototype","property","reflect","type","attribute","Boolean","state","observe","customElement"],"mappings":"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"}