@ahrowe/ui 0.35.0 → 0.36.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 (727) hide show
  1. package/README.md +100 -71
  2. package/dist/cjs-types/common/accordion/accordion.d.ts +4 -0
  3. package/dist/cjs-types/common/accordion/accordion.types.d.ts +21 -0
  4. package/dist/cjs-types/common/accordion/index.d.ts +2 -0
  5. package/dist/cjs-types/common/actionButtons/actionButtons.d.ts +2 -0
  6. package/dist/cjs-types/common/actionButtons/actionButtons.types.d.ts +34 -0
  7. package/dist/cjs-types/common/actionButtons/index.d.ts +2 -0
  8. package/dist/cjs-types/common/actionIcon/actionIcon.d.ts +4 -0
  9. package/dist/cjs-types/common/actionIcon/actionIcon.types.d.ts +15 -0
  10. package/dist/cjs-types/common/actionIcon/index.d.ts +2 -0
  11. package/dist/cjs-types/common/alert/alert.d.ts +4 -0
  12. package/dist/cjs-types/common/alert/alert.types.d.ts +30 -0
  13. package/dist/cjs-types/common/alert/index.d.ts +2 -0
  14. package/dist/cjs-types/common/animatedIcon/animatedIcon.d.ts +3 -0
  15. package/dist/cjs-types/common/animatedIcon/animatedIcon.types.d.ts +25 -0
  16. package/dist/cjs-types/common/animatedIcon/index.d.ts +2 -0
  17. package/dist/cjs-types/common/animatedLogo/animatedLogo.d.ts +4 -0
  18. package/dist/cjs-types/common/animatedLogo/animatedLogo.types.d.ts +35 -0
  19. package/dist/cjs-types/common/animatedLogo/index.d.ts +2 -0
  20. package/dist/cjs-types/common/animatedText/animatedText.d.ts +4 -0
  21. package/dist/cjs-types/common/animatedText/animatedText.types.d.ts +65 -0
  22. package/dist/cjs-types/common/animatedText/index.d.ts +2 -0
  23. package/dist/cjs-types/common/avatar/avatar.d.ts +4 -0
  24. package/dist/cjs-types/common/avatar/avatar.types.d.ts +26 -0
  25. package/dist/cjs-types/common/avatar/avatarGroup.d.ts +4 -0
  26. package/dist/cjs-types/common/avatar/index.d.ts +3 -0
  27. package/dist/cjs-types/common/badge/badge.d.ts +4 -0
  28. package/dist/cjs-types/common/badge/badge.types.d.ts +31 -0
  29. package/dist/cjs-types/common/badge/index.d.ts +2 -0
  30. package/dist/cjs-types/common/bodyEnd/bodyEnd.d.ts +4 -0
  31. package/dist/cjs-types/common/bodyEnd/bodyEnd.types.d.ts +4 -0
  32. package/dist/cjs-types/common/bodyEnd/index.d.ts +2 -0
  33. package/dist/cjs-types/common/breadcrumb/breadcrumb.d.ts +4 -0
  34. package/dist/cjs-types/common/breadcrumb/breadcrumb.types.d.ts +33 -0
  35. package/dist/cjs-types/common/breadcrumb/index.d.ts +2 -0
  36. package/dist/cjs-types/common/button/button.d.ts +9 -0
  37. package/dist/cjs-types/common/button/button.types.d.ts +42 -0
  38. package/dist/cjs-types/common/button/index.d.ts +2 -0
  39. package/dist/cjs-types/common/buttonGroup/buttonGroup.d.ts +4 -0
  40. package/dist/cjs-types/common/buttonGroup/buttonGroup.types.d.ts +12 -0
  41. package/dist/cjs-types/common/buttonGroup/index.d.ts +2 -0
  42. package/dist/cjs-types/common/card/Card.d.ts +4 -0
  43. package/dist/cjs-types/common/card/CardActions.d.ts +4 -0
  44. package/dist/cjs-types/common/card/CardContent.d.ts +4 -0
  45. package/dist/cjs-types/common/card/CardHeader.d.ts +4 -0
  46. package/dist/cjs-types/common/card/CardMedia.d.ts +4 -0
  47. package/dist/cjs-types/common/card/card.types.d.ts +55 -0
  48. package/dist/cjs-types/common/card/index.d.ts +6 -0
  49. package/dist/cjs-types/common/carousel/carousel.d.ts +4 -0
  50. package/dist/cjs-types/common/carousel/carousel.types.d.ts +35 -0
  51. package/dist/cjs-types/common/carousel/index.d.ts +2 -0
  52. package/dist/cjs-types/common/checkbox/checkbox.d.ts +4 -0
  53. package/dist/cjs-types/common/checkbox/checkbox.types.d.ts +27 -0
  54. package/dist/cjs-types/common/checkbox/index.d.ts +2 -0
  55. package/dist/cjs-types/common/chip/chip.d.ts +4 -0
  56. package/dist/cjs-types/common/chip/chip.types.d.ts +35 -0
  57. package/dist/cjs-types/common/chip/chipContainer.d.ts +4 -0
  58. package/dist/cjs-types/common/chip/index.d.ts +3 -0
  59. package/dist/cjs-types/common/colorPicker/colorPicker.d.ts +4 -0
  60. package/dist/cjs-types/common/colorPicker/colorPicker.types.d.ts +25 -0
  61. package/dist/cjs-types/common/colorPicker/index.d.ts +2 -0
  62. package/dist/cjs-types/common/colorPicker/toHex.d.ts +11 -0
  63. package/dist/cjs-types/common/configProvider/configProvider.d.ts +13 -0
  64. package/dist/cjs-types/common/configProvider/configProvider.types.d.ts +133 -0
  65. package/dist/cjs-types/common/configProvider/index.d.ts +6 -0
  66. package/dist/cjs-types/common/configProvider/presentation.types.d.ts +14 -0
  67. package/dist/cjs-types/common/configProvider/useComponentDefaults.d.ts +17 -0
  68. package/dist/cjs-types/common/configProvider/useLabels.d.ts +22 -0
  69. package/dist/cjs-types/common/configProvider/usePresentationDefault.d.ts +8 -0
  70. package/dist/cjs-types/common/confirmModal/confirmModal.d.ts +4 -0
  71. package/dist/cjs-types/common/confirmModal/confirmModal.types.d.ts +24 -0
  72. package/dist/cjs-types/common/confirmModal/index.d.ts +2 -0
  73. package/dist/cjs-types/common/datePicker/components/datePickerMonth/datePickerMonth.d.ts +2 -0
  74. package/dist/cjs-types/common/datePicker/components/datePickerMonth/datePickerMonth.types.d.ts +23 -0
  75. package/dist/cjs-types/common/datePicker/components/datePickerMonth/index.d.ts +1 -0
  76. package/dist/cjs-types/common/datePicker/dateFunctions.d.ts +44 -0
  77. package/dist/cjs-types/common/datePicker/datePicker.d.ts +3 -0
  78. package/dist/cjs-types/common/datePicker/datePicker.types.d.ts +60 -0
  79. package/dist/cjs-types/common/datePicker/index.d.ts +2 -0
  80. package/dist/cjs-types/common/divider/divider.d.ts +4 -0
  81. package/dist/cjs-types/common/divider/divider.types.d.ts +21 -0
  82. package/dist/cjs-types/common/divider/index.d.ts +2 -0
  83. package/dist/cjs-types/common/drawer/drawer.d.ts +4 -0
  84. package/dist/cjs-types/common/drawer/drawer.types.d.ts +15 -0
  85. package/dist/cjs-types/common/drawer/index.d.ts +2 -0
  86. package/dist/cjs-types/common/dropZone/dropZone.d.ts +4 -0
  87. package/dist/cjs-types/common/dropZone/dropZone.types.d.ts +90 -0
  88. package/dist/cjs-types/common/dropZone/index.d.ts +2 -0
  89. package/dist/cjs-types/common/dropdown/dropdown.d.ts +4 -0
  90. package/dist/cjs-types/common/dropdown/dropdown.types.d.ts +47 -0
  91. package/dist/cjs-types/common/dropdown/index.d.ts +2 -0
  92. package/dist/cjs-types/common/emptyState/emptyState.d.ts +3 -0
  93. package/dist/cjs-types/common/emptyState/emptyState.types.d.ts +20 -0
  94. package/dist/cjs-types/common/emptyState/index.d.ts +2 -0
  95. package/dist/cjs-types/common/errorBoundary/errorBoundary.d.ts +14 -0
  96. package/dist/cjs-types/common/errorBoundary/errorBoundary.types.d.ts +57 -0
  97. package/dist/cjs-types/common/errorBoundary/index.d.ts +2 -0
  98. package/dist/cjs-types/common/fab/components/fabBase/fabBase.d.ts +3 -0
  99. package/dist/cjs-types/common/fab/components/fabBase/fabBase.types.d.ts +12 -0
  100. package/dist/cjs-types/common/fab/components/fabBase/index.d.ts +1 -0
  101. package/dist/cjs-types/common/fab/fab.d.ts +3 -0
  102. package/dist/cjs-types/common/fab/fab.types.d.ts +22 -0
  103. package/dist/cjs-types/common/fab/index.d.ts +2 -0
  104. package/dist/cjs-types/common/flip/flip.d.ts +3 -0
  105. package/dist/cjs-types/common/flip/flip.types.d.ts +44 -0
  106. package/dist/cjs-types/common/flip/index.d.ts +2 -0
  107. package/dist/cjs-types/common/floorPlan/floorPlan.faces.d.ts +33 -0
  108. package/dist/cjs-types/common/floorPlan/floorPlan.fixtures.d.ts +35 -0
  109. package/dist/cjs-types/common/floorPlan/floorPlan.geometry.d.ts +111 -0
  110. package/dist/cjs-types/common/floorPlan/floorPlan.graph.d.ts +184 -0
  111. package/dist/cjs-types/common/floorPlan/floorPlan.hit.d.ts +26 -0
  112. package/dist/cjs-types/common/floorPlan/floorPlan.json.d.ts +23 -0
  113. package/dist/cjs-types/common/floorPlan/floorPlan.mesh.d.ts +36 -0
  114. package/dist/cjs-types/common/floorPlan/floorPlan.path.d.ts +59 -0
  115. package/dist/cjs-types/common/floorPlan/floorPlan.plan.d.ts +98 -0
  116. package/dist/cjs-types/common/floorPlan/floorPlan.rooms.d.ts +47 -0
  117. package/dist/cjs-types/common/floorPlan/floorPlan.snap.d.ts +101 -0
  118. package/dist/cjs-types/common/floorPlan/floorPlan.triangulate.d.ts +11 -0
  119. package/dist/cjs-types/common/floorPlan/floorPlan.types.d.ts +276 -0
  120. package/dist/cjs-types/common/floorPlan/index.d.ts +30 -0
  121. package/dist/cjs-types/common/floorPlan/legacySvg.d.ts +27 -0
  122. package/dist/cjs-types/common/hooks/useAnchorTracking.d.ts +40 -0
  123. package/dist/cjs-types/common/hooks/useCoarsePointer.d.ts +3 -0
  124. package/dist/cjs-types/common/hooks/useFocusBoundary.d.ts +20 -0
  125. package/dist/cjs-types/common/hooks/useMediaQuery.d.ts +9 -0
  126. package/dist/cjs-types/common/hooks/useOverlay.d.ts +26 -0
  127. package/dist/cjs-types/common/hooks/useScrollEdges.d.ts +18 -0
  128. package/dist/cjs-types/common/hooks/useSheet.d.ts +19 -0
  129. package/dist/cjs-types/common/hooks/useSwipeDismiss.d.ts +33 -0
  130. package/dist/cjs-types/common/hooks/useVisualViewportSize.d.ts +13 -0
  131. package/dist/cjs-types/common/iconPicker/iconPicker.d.ts +3 -0
  132. package/dist/cjs-types/common/iconPicker/iconPicker.types.d.ts +23 -0
  133. package/dist/cjs-types/common/iconPicker/index.d.ts +2 -0
  134. package/dist/cjs-types/common/idleManager/idleManager.d.ts +3 -0
  135. package/dist/cjs-types/common/idleManager/idleManager.types.d.ts +8 -0
  136. package/dist/cjs-types/common/idleManager/index.d.ts +2 -0
  137. package/dist/cjs-types/common/infiniteBlock/useInfiniteScroll.d.ts +5 -0
  138. package/dist/cjs-types/common/input/index.d.ts +2 -0
  139. package/dist/cjs-types/common/input/input.d.ts +4 -0
  140. package/dist/cjs-types/common/input/input.types.d.ts +84 -0
  141. package/dist/cjs-types/common/inputDropdown/index.d.ts +2 -0
  142. package/dist/cjs-types/common/inputDropdown/inputDropdown.d.ts +3 -0
  143. package/dist/cjs-types/common/inputDropdown/inputDropdown.types.d.ts +36 -0
  144. package/dist/cjs-types/common/interactableDiv/index.d.ts +2 -0
  145. package/dist/cjs-types/common/interactableDiv/interactableDiv.d.ts +8 -0
  146. package/dist/cjs-types/common/kanbanBoard/KanbanBoard.d.ts +3 -0
  147. package/dist/cjs-types/common/kanbanBoard/KanbanColumn.d.ts +45 -0
  148. package/dist/cjs-types/common/kanbanBoard/KanbanItem.d.ts +3 -0
  149. package/dist/cjs-types/common/kanbanBoard/index.d.ts +3 -0
  150. package/dist/cjs-types/common/kanbanBoard/kanbanBoard.types.d.ts +129 -0
  151. package/dist/cjs-types/common/kanbanBoard/kanbanBoard.utils.d.ts +60 -0
  152. package/dist/cjs-types/common/klipyPicker/components/gifPreview/gifPreview.d.ts +3 -0
  153. package/dist/cjs-types/common/klipyPicker/components/gifPreview/gifPreview.types.d.ts +7 -0
  154. package/dist/cjs-types/common/klipyPicker/components/gifPreview/index.d.ts +1 -0
  155. package/dist/cjs-types/common/klipyPicker/components/gifView/gifView.d.ts +3 -0
  156. package/dist/cjs-types/common/klipyPicker/components/gifView/gifView.types.d.ts +4 -0
  157. package/dist/cjs-types/common/klipyPicker/components/gifView/index.d.ts +1 -0
  158. package/dist/cjs-types/common/klipyPicker/index.d.ts +2 -0
  159. package/dist/cjs-types/common/klipyPicker/klipyPicker.d.ts +3 -0
  160. package/dist/cjs-types/common/klipyPicker/klipyPicker.types.d.ts +15 -0
  161. package/dist/cjs-types/common/loading/iconLoading/iconLoading.d.ts +5 -0
  162. package/dist/cjs-types/common/loading/iconLoading/index.d.ts +2 -0
  163. package/dist/cjs-types/common/loading/index.d.ts +2 -0
  164. package/dist/cjs-types/common/loading/spinnerLoading/index.d.ts +2 -0
  165. package/dist/cjs-types/common/loading/spinnerLoading/spinnerLoading.d.ts +6 -0
  166. package/dist/cjs-types/common/maskedInput/index.d.ts +2 -0
  167. package/dist/cjs-types/common/maskedInput/mask.d.ts +48 -0
  168. package/dist/cjs-types/common/maskedInput/maskedInput.d.ts +13 -0
  169. package/dist/cjs-types/common/maskedInput/maskedInput.types.d.ts +38 -0
  170. package/dist/cjs-types/common/menu/index.d.ts +2 -0
  171. package/dist/cjs-types/common/menu/menu.d.ts +14 -0
  172. package/dist/cjs-types/common/menu/menu.types.d.ts +55 -0
  173. package/dist/cjs-types/common/modal/index.d.ts +2 -0
  174. package/dist/cjs-types/common/modal/modal.d.ts +3 -0
  175. package/dist/cjs-types/common/modal/modal.types.d.ts +31 -0
  176. package/dist/cjs-types/common/multiSelect/index.d.ts +2 -0
  177. package/dist/cjs-types/common/multiSelect/multiSelect.d.ts +4 -0
  178. package/dist/cjs-types/common/multiSelect/multiSelect.types.d.ts +69 -0
  179. package/dist/cjs-types/common/numberInput/index.d.ts +3 -0
  180. package/dist/cjs-types/common/numberInput/numberInput.d.ts +5 -0
  181. package/dist/cjs-types/common/numberInput/numberInput.types.d.ts +76 -0
  182. package/dist/cjs-types/common/numberInput/useStepRepeat.d.ts +17 -0
  183. package/dist/cjs-types/common/optionPicker/index.d.ts +2 -0
  184. package/dist/cjs-types/common/optionPicker/optionPicker.d.ts +4 -0
  185. package/dist/cjs-types/common/optionPicker/optionPicker.types.d.ts +16 -0
  186. package/dist/cjs-types/common/otpInput/index.d.ts +2 -0
  187. package/dist/cjs-types/common/otpInput/otpInput.d.ts +4 -0
  188. package/dist/cjs-types/common/otpInput/otpInput.types.d.ts +60 -0
  189. package/dist/cjs-types/common/overscroll/index.d.ts +2 -0
  190. package/dist/cjs-types/common/overscroll/overscroll.d.ts +2 -0
  191. package/dist/cjs-types/common/overscroll/overscroll.types.d.ts +14 -0
  192. package/dist/cjs-types/common/pagination/index.d.ts +2 -0
  193. package/dist/cjs-types/common/pagination/pagination.d.ts +4 -0
  194. package/dist/cjs-types/common/pagination/pagination.types.d.ts +45 -0
  195. package/dist/cjs-types/common/planCanvas/index.d.ts +2 -0
  196. package/dist/cjs-types/common/planCanvas/planCanvas.d.ts +7 -0
  197. package/dist/cjs-types/common/planCanvas/planCanvas.types.d.ts +64 -0
  198. package/dist/cjs-types/common/popover/index.d.ts +2 -0
  199. package/dist/cjs-types/common/popover/popover.d.ts +3 -0
  200. package/dist/cjs-types/common/popover/popover.types.d.ts +94 -0
  201. package/dist/cjs-types/common/popover/usePopoverPosition.d.ts +44 -0
  202. package/dist/cjs-types/common/progressBar/index.d.ts +2 -0
  203. package/dist/cjs-types/common/progressBar/progressBar.d.ts +5 -0
  204. package/dist/cjs-types/common/progressBar/progressBar.types.d.ts +18 -0
  205. package/dist/cjs-types/common/radioGroup/index.d.ts +2 -0
  206. package/dist/cjs-types/common/radioGroup/radioGroup.d.ts +4 -0
  207. package/dist/cjs-types/common/radioGroup/radioGroup.types.d.ts +45 -0
  208. package/dist/cjs-types/common/rating/index.d.ts +2 -0
  209. package/dist/cjs-types/common/rating/rating.d.ts +4 -0
  210. package/dist/cjs-types/common/rating/rating.types.d.ts +19 -0
  211. package/dist/cjs-types/common/revealLens/index.d.ts +2 -0
  212. package/dist/cjs-types/common/revealLens/revealLens.d.ts +4 -0
  213. package/dist/cjs-types/common/revealLens/revealLens.types.d.ts +24 -0
  214. package/dist/cjs-types/common/ripple/index.d.ts +2 -0
  215. package/dist/cjs-types/common/ripple/ripple.d.ts +5 -0
  216. package/dist/cjs-types/common/ripple/ripple.types.d.ts +16 -0
  217. package/dist/cjs-types/common/roomDrawer/index.d.ts +2 -0
  218. package/dist/cjs-types/common/roomDrawer/roomDrawer.d.ts +3 -0
  219. package/dist/cjs-types/common/roomDrawer/roomDrawer.types.d.ts +308 -0
  220. package/dist/cjs-types/common/roomDrawer/usePlanHistory.d.ts +24 -0
  221. package/dist/cjs-types/common/roomViewer/index.d.ts +2 -0
  222. package/dist/cjs-types/common/roomViewer/roomViewer.d.ts +10 -0
  223. package/dist/cjs-types/common/roomViewer/roomViewer.types.d.ts +91 -0
  224. package/dist/cjs-types/common/scrollFade/index.d.ts +2 -0
  225. package/dist/cjs-types/common/scrollFade/scrollFade.d.ts +4 -0
  226. package/dist/cjs-types/common/scrollFade/scrollFade.types.d.ts +20 -0
  227. package/dist/cjs-types/common/scrollbarProvider/index.d.ts +2 -0
  228. package/dist/cjs-types/common/scrollbarProvider/scrollbarProvider.d.ts +7 -0
  229. package/dist/cjs-types/common/searchInput/index.d.ts +2 -0
  230. package/dist/cjs-types/common/searchInput/searchInput.d.ts +3 -0
  231. package/dist/cjs-types/common/searchInput/searchInput.types.d.ts +28 -0
  232. package/dist/cjs-types/common/sectionHeader/index.d.ts +2 -0
  233. package/dist/cjs-types/common/sectionHeader/sectionHeader.d.ts +4 -0
  234. package/dist/cjs-types/common/sectionHeader/sectionHeader.types.d.ts +27 -0
  235. package/dist/cjs-types/common/sheetBackdrop/index.d.ts +2 -0
  236. package/dist/cjs-types/common/sheetBackdrop/sheetBackdrop.d.ts +16 -0
  237. package/dist/cjs-types/common/sheetBackdrop/sheetBackdrop.types.d.ts +7 -0
  238. package/dist/cjs-types/common/skeleton/index.d.ts +2 -0
  239. package/dist/cjs-types/common/skeleton/skeleton.d.ts +4 -0
  240. package/dist/cjs-types/common/skeleton/skeleton.types.d.ts +22 -0
  241. package/dist/cjs-types/common/slider/index.d.ts +2 -0
  242. package/dist/cjs-types/common/slider/slider.d.ts +3 -0
  243. package/dist/cjs-types/common/slider/slider.types.d.ts +68 -0
  244. package/dist/cjs-types/common/splitButton/index.d.ts +2 -0
  245. package/dist/cjs-types/common/splitButton/splitButton.d.ts +3 -0
  246. package/dist/cjs-types/common/splitButton/splitButton.types.d.ts +35 -0
  247. package/dist/cjs-types/common/stepper/index.d.ts +2 -0
  248. package/dist/cjs-types/common/stepper/stepper.d.ts +3 -0
  249. package/dist/cjs-types/common/stepper/stepper.types.d.ts +77 -0
  250. package/dist/cjs-types/common/sticky/index.d.ts +1 -0
  251. package/dist/cjs-types/common/sticky/sticky.d.ts +3 -0
  252. package/dist/cjs-types/common/sticky/sticky.types.d.ts +22 -0
  253. package/dist/cjs-types/common/sticky/stickyStack.d.ts +46 -0
  254. package/dist/cjs-types/common/switch/index.d.ts +2 -0
  255. package/dist/cjs-types/common/switch/switch.d.ts +4 -0
  256. package/dist/cjs-types/common/switch/switch.types.d.ts +21 -0
  257. package/dist/cjs-types/common/tabHeader/index.d.ts +2 -0
  258. package/dist/cjs-types/common/tabHeader/tabHeader.d.ts +4 -0
  259. package/dist/cjs-types/common/tabHeader/tabHeader.types.d.ts +20 -0
  260. package/dist/cjs-types/common/textarea/index.d.ts +2 -0
  261. package/dist/cjs-types/common/textarea/textarea.d.ts +3 -0
  262. package/dist/cjs-types/common/textarea/textarea.types.d.ts +2 -0
  263. package/dist/cjs-types/common/themeProvider/defaultTheme.d.ts +7 -0
  264. package/dist/cjs-types/common/themeProvider/index.d.ts +4 -0
  265. package/dist/cjs-types/common/themeProvider/lightTheme.d.ts +13 -0
  266. package/dist/cjs-types/common/themeProvider/theme.types.d.ts +272 -0
  267. package/dist/cjs-types/common/themeProvider/themeProvider.d.ts +38 -0
  268. package/dist/cjs-types/common/themeProvider/themeVariablesContext.d.ts +11 -0
  269. package/dist/cjs-types/common/themeProvider/useTheme.d.ts +4 -0
  270. package/dist/cjs-types/common/tilt/index.d.ts +4 -0
  271. package/dist/cjs-types/common/tilt/tilt.d.ts +3 -0
  272. package/dist/cjs-types/common/tilt/tilt.types.d.ts +40 -0
  273. package/dist/cjs-types/common/tilt/tiltMath.d.ts +24 -0
  274. package/dist/cjs-types/common/tiltGroup/index.d.ts +3 -0
  275. package/dist/cjs-types/common/tiltGroup/tiltGroup.d.ts +6 -0
  276. package/dist/cjs-types/common/tiltGroup/tiltGroup.types.d.ts +16 -0
  277. package/dist/cjs-types/common/timeInput/components/clockDial/clockDial.d.ts +3 -0
  278. package/dist/cjs-types/common/timeInput/components/clockDial/clockDial.types.d.ts +24 -0
  279. package/dist/cjs-types/common/timeInput/components/clockDial/index.d.ts +1 -0
  280. package/dist/cjs-types/common/timeInput/index.d.ts +1 -0
  281. package/dist/cjs-types/common/timeInput/timeFunctions.d.ts +36 -0
  282. package/dist/cjs-types/common/timeInput/timeInput.d.ts +3 -0
  283. package/dist/cjs-types/common/timeInput/timeInput.types.d.ts +44 -0
  284. package/dist/cjs-types/common/timeline/index.d.ts +2 -0
  285. package/dist/cjs-types/common/timeline/timeline.d.ts +3 -0
  286. package/dist/cjs-types/common/timeline/timeline.types.d.ts +51 -0
  287. package/dist/cjs-types/common/timer/index.d.ts +2 -0
  288. package/dist/cjs-types/common/timer/timer.chime.d.ts +1 -0
  289. package/dist/cjs-types/common/timer/timer.d.ts +3 -0
  290. package/dist/cjs-types/common/timer/timer.types.d.ts +110 -0
  291. package/dist/cjs-types/common/toast/index.d.ts +3 -0
  292. package/dist/cjs-types/common/toast/toast.d.ts +11 -0
  293. package/dist/cjs-types/common/toast/toast.types.d.ts +50 -0
  294. package/dist/cjs-types/common/toast/toastProvider.d.ts +8 -0
  295. package/dist/cjs-types/common/toast/toastService.d.ts +7 -0
  296. package/dist/cjs-types/common/tooltip/index.d.ts +2 -0
  297. package/dist/cjs-types/common/tooltip/tooltip.d.ts +3 -0
  298. package/dist/cjs-types/common/tooltip/tooltip.types.d.ts +17 -0
  299. package/dist/cjs-types/common/tree/flattenTree.d.ts +3 -0
  300. package/dist/cjs-types/common/tree/index.d.ts +3 -0
  301. package/dist/cjs-types/common/tree/tree.d.ts +4 -0
  302. package/dist/cjs-types/common/tree/tree.types.d.ts +67 -0
  303. package/dist/cjs-types/common/types/actions.types.d.ts +7 -0
  304. package/dist/cjs-types/common/types/baseProps.types.d.ts +29 -0
  305. package/dist/cjs-types/common/types/icon.types.d.ts +17 -0
  306. package/dist/cjs-types/common/types/slots.types.d.ts +4 -0
  307. package/dist/cjs-types/common/utils/activationKey.d.ts +9 -0
  308. package/dist/cjs-types/common/utils/interactiveTarget.d.ts +7 -0
  309. package/dist/cjs-types/common/utils/listNavigation.d.ts +49 -0
  310. package/dist/cjs-types/common/utils/mergeRefs.d.ts +12 -0
  311. package/dist/cjs-types/common/utils/renderIcon.d.ts +29 -0
  312. package/dist/cjs-types/common/utils/scrollAncestors.d.ts +2 -0
  313. package/dist/cjs-types/common/utils/visualViewport.d.ts +7 -0
  314. package/dist/cjs-types/common/virtualList/index.d.ts +2 -0
  315. package/dist/cjs-types/common/virtualList/useColumnResize.d.ts +59 -0
  316. package/dist/cjs-types/common/virtualList/useColumns.d.ts +52 -0
  317. package/dist/cjs-types/common/virtualList/useHeaderNavigation.d.ts +22 -0
  318. package/dist/cjs-types/common/virtualList/useRowDrag.d.ts +58 -0
  319. package/dist/cjs-types/common/virtualList/useRowNavigation.d.ts +50 -0
  320. package/dist/cjs-types/common/virtualList/useSelection.d.ts +24 -0
  321. package/dist/cjs-types/common/virtualList/useSorting.d.ts +26 -0
  322. package/dist/cjs-types/common/virtualList/useVirtualWindow.d.ts +36 -0
  323. package/dist/cjs-types/common/virtualList/virtualList.d.ts +5 -0
  324. package/dist/cjs-types/common/virtualList/virtualList.types.d.ts +317 -0
  325. package/dist/cjs-types/common/virtualList/virtualList.utils.d.ts +126 -0
  326. package/dist/cjs-types/common/virtualList/virtualListHeader.d.ts +35 -0
  327. package/dist/cjs-types/common/virtualList/virtualRow.d.ts +62 -0
  328. package/dist/cjs-types/common/wizard/index.d.ts +1 -0
  329. package/dist/cjs-types/common/wizard/wizard.d.ts +3 -0
  330. package/dist/cjs-types/common/wizard/wizard.types.d.ts +12 -0
  331. package/dist/cjs-types/hooks/useWindowSize.d.ts +6 -0
  332. package/dist/cjs-types/index.d.ts +154 -0
  333. package/dist/cjs-types/package.json +3 -0
  334. package/dist/cjs-types/services/formValidation/FormValidatorGroupWithForm.d.ts +18 -0
  335. package/dist/cjs-types/services/formValidation/index.d.ts +5 -0
  336. package/dist/cjs-types/services/formValidation/useFormValidatorGroup.d.ts +10 -0
  337. package/dist/cjs-types/services/formValidation/validatableComponent.d.ts +36 -0
  338. package/dist/cjs-types/services/klipy.d.ts +36 -0
  339. package/dist/cjs-types/services/localization.d.ts +3 -0
  340. package/dist/esm/common/carousel/carousel.mjs +1 -1
  341. package/dist/esm/common/carousel/carousel.mjs.map +1 -1
  342. package/dist/esm/common/carousel/carousel.module.mjs.map +1 -1
  343. package/dist/esm/common/confirmModal/confirmModal.mjs +1 -1
  344. package/dist/esm/common/confirmModal/confirmModal.mjs.map +1 -1
  345. package/dist/esm/common/datePicker/datePicker.mjs +1 -1
  346. package/dist/esm/common/datePicker/datePicker.mjs.map +1 -1
  347. package/dist/esm/common/drawer/drawer.module.mjs.map +1 -1
  348. package/dist/esm/common/dropdown/dropdown.mjs +1 -1
  349. package/dist/esm/common/dropdown/dropdown.mjs.map +1 -1
  350. package/dist/esm/common/dropdown/dropdown.module.mjs +1 -1
  351. package/dist/esm/common/dropdown/dropdown.module.mjs.map +1 -1
  352. package/dist/esm/common/hooks/useScrollEdges.mjs +2 -0
  353. package/dist/esm/common/hooks/useScrollEdges.mjs.map +1 -0
  354. package/dist/esm/common/infiniteBlock/useInfiniteScroll.mjs +2 -0
  355. package/dist/esm/common/infiniteBlock/useInfiniteScroll.mjs.map +1 -0
  356. package/dist/esm/common/inputDropdown/inputDropdown.mjs +1 -1
  357. package/dist/esm/common/inputDropdown/inputDropdown.mjs.map +1 -1
  358. package/dist/esm/common/interactableDiv/interactableDiv.mjs +1 -1
  359. package/dist/esm/common/interactableDiv/interactableDiv.mjs.map +1 -1
  360. package/dist/esm/common/klipyPicker/components/gifPreview/gifPreview.module.mjs.map +1 -1
  361. package/dist/esm/common/klipyPicker/components/gifView/gifView.module.mjs.map +1 -1
  362. package/dist/esm/common/maskedInput/mask.mjs +2 -0
  363. package/dist/esm/common/maskedInput/mask.mjs.map +1 -0
  364. package/dist/esm/common/maskedInput/maskedInput.mjs +2 -0
  365. package/dist/esm/common/maskedInput/maskedInput.mjs.map +1 -0
  366. package/dist/esm/common/modal/modal.mjs +1 -1
  367. package/dist/esm/common/modal/modal.mjs.map +1 -1
  368. package/dist/esm/common/modal/modal.module.mjs +1 -1
  369. package/dist/esm/common/modal/modal.module.mjs.map +1 -1
  370. package/dist/esm/common/multiSelect/multiSelect.mjs +1 -1
  371. package/dist/esm/common/multiSelect/multiSelect.mjs.map +1 -1
  372. package/dist/esm/common/radioGroup/radioGroup.types.mjs.map +1 -1
  373. package/dist/esm/common/rating/rating.module.mjs.map +1 -1
  374. package/dist/esm/common/ripple/ripple.mjs +1 -1
  375. package/dist/esm/common/ripple/ripple.mjs.map +1 -1
  376. package/dist/esm/common/scrollFade/scrollFade.mjs +2 -0
  377. package/dist/esm/common/scrollFade/scrollFade.mjs.map +1 -0
  378. package/dist/esm/common/scrollFade/scrollFade.module.mjs +2 -0
  379. package/dist/esm/common/scrollFade/scrollFade.module.mjs.map +1 -0
  380. package/dist/esm/common/scrollFade/scrollFade.types.mjs +2 -0
  381. package/dist/esm/common/scrollFade/scrollFade.types.mjs.map +1 -0
  382. package/dist/esm/common/styles/scrollFade.module.mjs +2 -0
  383. package/dist/esm/common/styles/scrollFade.module.mjs.map +1 -0
  384. package/dist/esm/common/styles/sheet.module.mjs.map +1 -1
  385. package/dist/esm/common/timeInput/timeInput.mjs +1 -1
  386. package/dist/esm/common/timeInput/timeInput.mjs.map +1 -1
  387. package/dist/esm/common/utils/interactiveTarget.mjs +2 -0
  388. package/dist/esm/common/utils/interactiveTarget.mjs.map +1 -0
  389. package/dist/esm/common/utils/listNavigation.mjs +2 -0
  390. package/dist/esm/common/utils/listNavigation.mjs.map +1 -0
  391. package/dist/esm/common/wizard/wizard.module.mjs.map +1 -1
  392. package/dist/esm/index.mjs +1 -1
  393. package/dist/esm/og.png +0 -0
  394. package/dist/index.cjs +3 -3
  395. package/dist/index.cjs.map +1 -1
  396. package/dist/mcp.js +341 -56
  397. package/dist/og.png +0 -0
  398. package/dist/style.css +1 -1
  399. package/dist/types/common/accordion/accordion.d.ts +1 -1
  400. package/dist/types/common/accordion/accordion.types.d.ts +1 -1
  401. package/dist/types/common/accordion/index.d.ts +2 -2
  402. package/dist/types/common/actionButtons/actionButtons.d.ts +1 -1
  403. package/dist/types/common/actionButtons/actionButtons.types.d.ts +3 -3
  404. package/dist/types/common/actionButtons/index.d.ts +2 -2
  405. package/dist/types/common/actionIcon/actionIcon.d.ts +1 -1
  406. package/dist/types/common/actionIcon/actionIcon.types.d.ts +2 -2
  407. package/dist/types/common/actionIcon/index.d.ts +2 -2
  408. package/dist/types/common/alert/alert.d.ts +1 -1
  409. package/dist/types/common/alert/alert.types.d.ts +2 -2
  410. package/dist/types/common/alert/index.d.ts +2 -2
  411. package/dist/types/common/animatedIcon/animatedIcon.d.ts +1 -1
  412. package/dist/types/common/animatedIcon/animatedIcon.types.d.ts +1 -1
  413. package/dist/types/common/animatedIcon/index.d.ts +2 -2
  414. package/dist/types/common/animatedLogo/animatedLogo.d.ts +1 -1
  415. package/dist/types/common/animatedLogo/animatedLogo.types.d.ts +1 -1
  416. package/dist/types/common/animatedLogo/index.d.ts +2 -2
  417. package/dist/types/common/animatedText/animatedText.d.ts +1 -1
  418. package/dist/types/common/animatedText/animatedText.types.d.ts +1 -1
  419. package/dist/types/common/animatedText/index.d.ts +2 -2
  420. package/dist/types/common/avatar/avatar.d.ts +1 -1
  421. package/dist/types/common/avatar/avatar.types.d.ts +2 -2
  422. package/dist/types/common/avatar/avatarGroup.d.ts +1 -1
  423. package/dist/types/common/avatar/index.d.ts +3 -3
  424. package/dist/types/common/badge/badge.d.ts +1 -1
  425. package/dist/types/common/badge/badge.types.d.ts +1 -1
  426. package/dist/types/common/badge/index.d.ts +2 -2
  427. package/dist/types/common/bodyEnd/bodyEnd.d.ts +1 -1
  428. package/dist/types/common/bodyEnd/index.d.ts +2 -2
  429. package/dist/types/common/breadcrumb/breadcrumb.d.ts +1 -1
  430. package/dist/types/common/breadcrumb/breadcrumb.types.d.ts +2 -2
  431. package/dist/types/common/breadcrumb/index.d.ts +2 -2
  432. package/dist/types/common/button/button.d.ts +1 -1
  433. package/dist/types/common/button/button.types.d.ts +2 -2
  434. package/dist/types/common/button/index.d.ts +2 -2
  435. package/dist/types/common/buttonGroup/buttonGroup.d.ts +1 -1
  436. package/dist/types/common/buttonGroup/buttonGroup.types.d.ts +1 -1
  437. package/dist/types/common/buttonGroup/index.d.ts +2 -2
  438. package/dist/types/common/card/Card.d.ts +1 -1
  439. package/dist/types/common/card/CardActions.d.ts +1 -1
  440. package/dist/types/common/card/CardContent.d.ts +1 -1
  441. package/dist/types/common/card/CardHeader.d.ts +1 -1
  442. package/dist/types/common/card/CardMedia.d.ts +1 -1
  443. package/dist/types/common/card/card.types.d.ts +3 -3
  444. package/dist/types/common/card/index.d.ts +6 -6
  445. package/dist/types/common/carousel/carousel.d.ts +1 -1
  446. package/dist/types/common/carousel/carousel.types.d.ts +1 -1
  447. package/dist/types/common/carousel/index.d.ts +2 -2
  448. package/dist/types/common/checkbox/checkbox.d.ts +1 -1
  449. package/dist/types/common/checkbox/checkbox.types.d.ts +2 -2
  450. package/dist/types/common/checkbox/index.d.ts +2 -2
  451. package/dist/types/common/chip/chip.d.ts +1 -1
  452. package/dist/types/common/chip/chip.types.d.ts +1 -1
  453. package/dist/types/common/chip/chipContainer.d.ts +1 -1
  454. package/dist/types/common/chip/index.d.ts +3 -3
  455. package/dist/types/common/colorPicker/colorPicker.d.ts +1 -1
  456. package/dist/types/common/colorPicker/colorPicker.types.d.ts +1 -1
  457. package/dist/types/common/colorPicker/index.d.ts +2 -2
  458. package/dist/types/common/configProvider/configProvider.d.ts +2 -2
  459. package/dist/types/common/configProvider/configProvider.types.d.ts +44 -44
  460. package/dist/types/common/configProvider/index.d.ts +6 -6
  461. package/dist/types/common/configProvider/useComponentDefaults.d.ts +1 -1
  462. package/dist/types/common/configProvider/useLabels.d.ts +1 -1
  463. package/dist/types/common/configProvider/usePresentationDefault.d.ts +1 -1
  464. package/dist/types/common/confirmModal/confirmModal.d.ts +1 -1
  465. package/dist/types/common/confirmModal/confirmModal.types.d.ts +2 -2
  466. package/dist/types/common/confirmModal/index.d.ts +2 -2
  467. package/dist/types/common/datePicker/components/datePickerMonth/datePickerMonth.d.ts +1 -1
  468. package/dist/types/common/datePicker/components/datePickerMonth/index.d.ts +1 -1
  469. package/dist/types/common/datePicker/datePicker.d.ts +1 -1
  470. package/dist/types/common/datePicker/datePicker.types.d.ts +2 -2
  471. package/dist/types/common/datePicker/index.d.ts +2 -2
  472. package/dist/types/common/divider/divider.d.ts +1 -1
  473. package/dist/types/common/divider/divider.types.d.ts +1 -1
  474. package/dist/types/common/divider/index.d.ts +2 -2
  475. package/dist/types/common/drawer/drawer.d.ts +1 -1
  476. package/dist/types/common/drawer/drawer.types.d.ts +1 -1
  477. package/dist/types/common/drawer/index.d.ts +2 -2
  478. package/dist/types/common/dropZone/dropZone.d.ts +1 -1
  479. package/dist/types/common/dropZone/dropZone.types.d.ts +1 -1
  480. package/dist/types/common/dropZone/index.d.ts +2 -2
  481. package/dist/types/common/dropdown/dropdown.d.ts +1 -1
  482. package/dist/types/common/dropdown/dropdown.types.d.ts +3 -3
  483. package/dist/types/common/dropdown/index.d.ts +2 -2
  484. package/dist/types/common/emptyState/emptyState.d.ts +1 -1
  485. package/dist/types/common/emptyState/emptyState.types.d.ts +2 -2
  486. package/dist/types/common/emptyState/index.d.ts +2 -2
  487. package/dist/types/common/errorBoundary/errorBoundary.d.ts +1 -1
  488. package/dist/types/common/errorBoundary/errorBoundary.types.d.ts +1 -1
  489. package/dist/types/common/errorBoundary/index.d.ts +2 -2
  490. package/dist/types/common/fab/components/fabBase/fabBase.d.ts +1 -1
  491. package/dist/types/common/fab/components/fabBase/fabBase.types.d.ts +1 -1
  492. package/dist/types/common/fab/components/fabBase/index.d.ts +1 -1
  493. package/dist/types/common/fab/fab.d.ts +1 -1
  494. package/dist/types/common/fab/fab.types.d.ts +2 -2
  495. package/dist/types/common/fab/index.d.ts +2 -2
  496. package/dist/types/common/flip/flip.d.ts +1 -1
  497. package/dist/types/common/flip/flip.types.d.ts +1 -1
  498. package/dist/types/common/flip/index.d.ts +2 -2
  499. package/dist/types/common/floorPlan/floorPlan.faces.d.ts +2 -2
  500. package/dist/types/common/floorPlan/floorPlan.fixtures.d.ts +1 -1
  501. package/dist/types/common/floorPlan/floorPlan.geometry.d.ts +1 -1
  502. package/dist/types/common/floorPlan/floorPlan.graph.d.ts +1 -1
  503. package/dist/types/common/floorPlan/floorPlan.hit.d.ts +1 -1
  504. package/dist/types/common/floorPlan/floorPlan.json.d.ts +1 -1
  505. package/dist/types/common/floorPlan/floorPlan.mesh.d.ts +1 -1
  506. package/dist/types/common/floorPlan/floorPlan.path.d.ts +1 -1
  507. package/dist/types/common/floorPlan/floorPlan.plan.d.ts +1 -1
  508. package/dist/types/common/floorPlan/floorPlan.rooms.d.ts +1 -1
  509. package/dist/types/common/floorPlan/floorPlan.snap.d.ts +1 -1
  510. package/dist/types/common/floorPlan/floorPlan.triangulate.d.ts +1 -1
  511. package/dist/types/common/floorPlan/index.d.ts +22 -22
  512. package/dist/types/common/floorPlan/legacySvg.d.ts +2 -2
  513. package/dist/types/common/hooks/useScrollEdges.d.ts +18 -0
  514. package/dist/types/common/hooks/useSheet.d.ts +1 -1
  515. package/dist/types/common/iconPicker/iconPicker.d.ts +1 -1
  516. package/dist/types/common/iconPicker/iconPicker.types.d.ts +2 -2
  517. package/dist/types/common/iconPicker/index.d.ts +2 -1
  518. package/dist/types/common/idleManager/idleManager.d.ts +1 -1
  519. package/dist/types/common/idleManager/index.d.ts +2 -1
  520. package/dist/types/common/infiniteBlock/useInfiniteScroll.d.ts +5 -0
  521. package/dist/types/common/input/index.d.ts +2 -2
  522. package/dist/types/common/input/input.d.ts +1 -1
  523. package/dist/types/common/input/input.types.d.ts +2 -2
  524. package/dist/types/common/inputDropdown/index.d.ts +2 -1
  525. package/dist/types/common/inputDropdown/inputDropdown.d.ts +1 -1
  526. package/dist/types/common/inputDropdown/inputDropdown.types.d.ts +2 -2
  527. package/dist/types/common/interactableDiv/index.d.ts +1 -1
  528. package/dist/types/common/interactableDiv/interactableDiv.d.ts +1 -1
  529. package/dist/types/common/kanbanBoard/KanbanBoard.d.ts +1 -1
  530. package/dist/types/common/kanbanBoard/KanbanColumn.d.ts +1 -1
  531. package/dist/types/common/kanbanBoard/KanbanItem.d.ts +1 -1
  532. package/dist/types/common/kanbanBoard/index.d.ts +3 -3
  533. package/dist/types/common/kanbanBoard/kanbanBoard.types.d.ts +1 -1
  534. package/dist/types/common/kanbanBoard/kanbanBoard.utils.d.ts +1 -1
  535. package/dist/types/common/klipyPicker/components/gifPreview/gifPreview.d.ts +1 -1
  536. package/dist/types/common/klipyPicker/components/gifPreview/gifPreview.types.d.ts +1 -1
  537. package/dist/types/common/klipyPicker/components/gifPreview/index.d.ts +1 -1
  538. package/dist/types/common/klipyPicker/components/gifView/gifView.d.ts +1 -1
  539. package/dist/types/common/klipyPicker/components/gifView/index.d.ts +1 -1
  540. package/dist/types/common/klipyPicker/index.d.ts +2 -2
  541. package/dist/types/common/klipyPicker/klipyPicker.d.ts +1 -1
  542. package/dist/types/common/klipyPicker/klipyPicker.types.d.ts +1 -1
  543. package/dist/types/common/loading/index.d.ts +2 -2
  544. package/dist/types/common/loading/spinnerLoading/index.d.ts +1 -1
  545. package/dist/types/common/maskedInput/index.d.ts +2 -0
  546. package/dist/types/common/maskedInput/mask.d.ts +48 -0
  547. package/dist/types/common/maskedInput/maskedInput.d.ts +13 -0
  548. package/dist/types/common/maskedInput/maskedInput.types.d.ts +38 -0
  549. package/dist/types/common/menu/index.d.ts +2 -2
  550. package/dist/types/common/menu/menu.d.ts +1 -1
  551. package/dist/types/common/menu/menu.types.d.ts +4 -4
  552. package/dist/types/common/modal/index.d.ts +2 -2
  553. package/dist/types/common/modal/modal.d.ts +1 -1
  554. package/dist/types/common/modal/modal.types.d.ts +6 -3
  555. package/dist/types/common/multiSelect/index.d.ts +2 -2
  556. package/dist/types/common/multiSelect/multiSelect.d.ts +1 -1
  557. package/dist/types/common/multiSelect/multiSelect.types.d.ts +3 -3
  558. package/dist/types/common/numberInput/index.d.ts +2 -2
  559. package/dist/types/common/numberInput/numberInput.d.ts +2 -2
  560. package/dist/types/common/numberInput/numberInput.types.d.ts +2 -2
  561. package/dist/types/common/optionPicker/index.d.ts +2 -2
  562. package/dist/types/common/optionPicker/optionPicker.d.ts +1 -1
  563. package/dist/types/common/optionPicker/optionPicker.types.d.ts +1 -1
  564. package/dist/types/common/otpInput/index.d.ts +2 -2
  565. package/dist/types/common/otpInput/otpInput.d.ts +1 -1
  566. package/dist/types/common/otpInput/otpInput.types.d.ts +2 -2
  567. package/dist/types/common/overscroll/index.d.ts +2 -2
  568. package/dist/types/common/overscroll/overscroll.d.ts +1 -1
  569. package/dist/types/common/pagination/index.d.ts +2 -2
  570. package/dist/types/common/pagination/pagination.d.ts +1 -1
  571. package/dist/types/common/pagination/pagination.types.d.ts +2 -2
  572. package/dist/types/common/planCanvas/index.d.ts +2 -2
  573. package/dist/types/common/planCanvas/planCanvas.d.ts +1 -1
  574. package/dist/types/common/planCanvas/planCanvas.types.d.ts +2 -2
  575. package/dist/types/common/popover/index.d.ts +2 -2
  576. package/dist/types/common/popover/popover.d.ts +1 -1
  577. package/dist/types/common/popover/popover.types.d.ts +2 -2
  578. package/dist/types/common/popover/usePopoverPosition.d.ts +1 -1
  579. package/dist/types/common/progressBar/index.d.ts +2 -2
  580. package/dist/types/common/progressBar/progressBar.d.ts +1 -1
  581. package/dist/types/common/progressBar/progressBar.types.d.ts +1 -1
  582. package/dist/types/common/radioGroup/index.d.ts +2 -2
  583. package/dist/types/common/radioGroup/radioGroup.d.ts +1 -1
  584. package/dist/types/common/radioGroup/radioGroup.types.d.ts +3 -3
  585. package/dist/types/common/rating/index.d.ts +2 -2
  586. package/dist/types/common/rating/rating.d.ts +1 -1
  587. package/dist/types/common/rating/rating.types.d.ts +2 -2
  588. package/dist/types/common/revealLens/index.d.ts +2 -2
  589. package/dist/types/common/revealLens/revealLens.d.ts +1 -1
  590. package/dist/types/common/revealLens/revealLens.types.d.ts +1 -1
  591. package/dist/types/common/ripple/index.d.ts +2 -2
  592. package/dist/types/common/ripple/ripple.d.ts +1 -1
  593. package/dist/types/common/ripple/ripple.types.d.ts +1 -1
  594. package/dist/types/common/roomDrawer/index.d.ts +2 -2
  595. package/dist/types/common/roomDrawer/roomDrawer.d.ts +1 -1
  596. package/dist/types/common/roomDrawer/roomDrawer.types.d.ts +3 -3
  597. package/dist/types/common/roomDrawer/usePlanHistory.d.ts +2 -2
  598. package/dist/types/common/roomViewer/index.d.ts +2 -2
  599. package/dist/types/common/roomViewer/roomViewer.d.ts +1 -1
  600. package/dist/types/common/roomViewer/roomViewer.types.d.ts +3 -3
  601. package/dist/types/common/scrollFade/index.d.ts +2 -0
  602. package/dist/types/common/scrollFade/scrollFade.d.ts +4 -0
  603. package/dist/types/common/scrollFade/scrollFade.types.d.ts +20 -0
  604. package/dist/types/common/scrollbarProvider/index.d.ts +1 -1
  605. package/dist/types/common/searchInput/index.d.ts +2 -2
  606. package/dist/types/common/searchInput/searchInput.d.ts +1 -1
  607. package/dist/types/common/searchInput/searchInput.types.d.ts +1 -1
  608. package/dist/types/common/sectionHeader/index.d.ts +2 -2
  609. package/dist/types/common/sectionHeader/sectionHeader.d.ts +1 -1
  610. package/dist/types/common/sectionHeader/sectionHeader.types.d.ts +3 -3
  611. package/dist/types/common/sheetBackdrop/index.d.ts +2 -2
  612. package/dist/types/common/sheetBackdrop/sheetBackdrop.d.ts +1 -1
  613. package/dist/types/common/skeleton/index.d.ts +2 -2
  614. package/dist/types/common/skeleton/skeleton.d.ts +1 -1
  615. package/dist/types/common/skeleton/skeleton.types.d.ts +1 -1
  616. package/dist/types/common/slider/index.d.ts +2 -2
  617. package/dist/types/common/slider/slider.d.ts +1 -1
  618. package/dist/types/common/slider/slider.types.d.ts +2 -2
  619. package/dist/types/common/splitButton/index.d.ts +2 -2
  620. package/dist/types/common/splitButton/splitButton.d.ts +1 -1
  621. package/dist/types/common/splitButton/splitButton.types.d.ts +4 -4
  622. package/dist/types/common/stepper/index.d.ts +2 -2
  623. package/dist/types/common/stepper/stepper.d.ts +1 -1
  624. package/dist/types/common/stepper/stepper.types.d.ts +2 -2
  625. package/dist/types/common/sticky/index.d.ts +1 -1
  626. package/dist/types/common/sticky/sticky.d.ts +1 -1
  627. package/dist/types/common/sticky/sticky.types.d.ts +1 -1
  628. package/dist/types/common/switch/index.d.ts +2 -2
  629. package/dist/types/common/switch/switch.d.ts +1 -1
  630. package/dist/types/common/switch/switch.types.d.ts +2 -2
  631. package/dist/types/common/tabHeader/index.d.ts +2 -2
  632. package/dist/types/common/tabHeader/tabHeader.d.ts +1 -1
  633. package/dist/types/common/tabHeader/tabHeader.types.d.ts +2 -2
  634. package/dist/types/common/textarea/index.d.ts +2 -2
  635. package/dist/types/common/textarea/textarea.d.ts +1 -1
  636. package/dist/types/common/textarea/textarea.types.d.ts +1 -1
  637. package/dist/types/common/themeProvider/defaultTheme.d.ts +1 -1
  638. package/dist/types/common/themeProvider/index.d.ts +4 -4
  639. package/dist/types/common/themeProvider/lightTheme.d.ts +1 -1
  640. package/dist/types/common/themeProvider/theme.types.d.ts +28 -0
  641. package/dist/types/common/themeProvider/themeProvider.d.ts +1 -1
  642. package/dist/types/common/tilt/index.d.ts +4 -4
  643. package/dist/types/common/tilt/tilt.d.ts +1 -1
  644. package/dist/types/common/tilt/tilt.types.d.ts +2 -2
  645. package/dist/types/common/tiltGroup/index.d.ts +3 -3
  646. package/dist/types/common/tiltGroup/tiltGroup.d.ts +1 -1
  647. package/dist/types/common/tiltGroup/tiltGroup.types.d.ts +1 -1
  648. package/dist/types/common/timeInput/components/clockDial/clockDial.d.ts +1 -1
  649. package/dist/types/common/timeInput/components/clockDial/clockDial.types.d.ts +3 -3
  650. package/dist/types/common/timeInput/components/clockDial/index.d.ts +1 -1
  651. package/dist/types/common/timeInput/index.d.ts +1 -1
  652. package/dist/types/common/timeInput/timeInput.d.ts +1 -1
  653. package/dist/types/common/timeInput/timeInput.types.d.ts +2 -2
  654. package/dist/types/common/timeline/index.d.ts +2 -2
  655. package/dist/types/common/timeline/timeline.d.ts +1 -1
  656. package/dist/types/common/timeline/timeline.types.d.ts +2 -2
  657. package/dist/types/common/timer/index.d.ts +2 -2
  658. package/dist/types/common/timer/timer.d.ts +1 -1
  659. package/dist/types/common/timer/timer.types.d.ts +2 -2
  660. package/dist/types/common/toast/index.d.ts +3 -3
  661. package/dist/types/common/toast/toast.d.ts +1 -1
  662. package/dist/types/common/toast/toast.types.d.ts +1 -1
  663. package/dist/types/common/toast/toastProvider.d.ts +1 -1
  664. package/dist/types/common/toast/toastService.d.ts +1 -1
  665. package/dist/types/common/tooltip/index.d.ts +2 -2
  666. package/dist/types/common/tooltip/tooltip.d.ts +1 -1
  667. package/dist/types/common/tree/flattenTree.d.ts +1 -1
  668. package/dist/types/common/tree/index.d.ts +3 -3
  669. package/dist/types/common/tree/tree.d.ts +1 -1
  670. package/dist/types/common/tree/tree.types.d.ts +2 -2
  671. package/dist/types/common/types/actions.types.d.ts +1 -1
  672. package/dist/types/common/types/slots.types.d.ts +1 -1
  673. package/dist/types/common/utils/interactiveTarget.d.ts +7 -0
  674. package/dist/types/common/utils/listNavigation.d.ts +49 -0
  675. package/dist/types/common/utils/renderIcon.d.ts +1 -1
  676. package/dist/types/common/virtualList/index.d.ts +2 -2
  677. package/dist/types/common/virtualList/useColumnResize.d.ts +1 -1
  678. package/dist/types/common/virtualList/useColumns.d.ts +1 -1
  679. package/dist/types/common/virtualList/useRowDrag.d.ts +1 -1
  680. package/dist/types/common/virtualList/useRowNavigation.d.ts +1 -1
  681. package/dist/types/common/virtualList/useSorting.d.ts +1 -1
  682. package/dist/types/common/virtualList/useVirtualWindow.d.ts +1 -1
  683. package/dist/types/common/virtualList/virtualList.d.ts +2 -2
  684. package/dist/types/common/virtualList/virtualList.types.d.ts +1 -1
  685. package/dist/types/common/virtualList/virtualList.utils.d.ts +1 -1
  686. package/dist/types/common/virtualList/virtualListHeader.d.ts +4 -4
  687. package/dist/types/common/virtualList/virtualRow.d.ts +1 -1
  688. package/dist/types/common/wizard/index.d.ts +1 -1
  689. package/dist/types/common/wizard/wizard.d.ts +1 -1
  690. package/dist/types/common/wizard/wizard.types.d.ts +1 -1
  691. package/dist/types/index.d.ts +153 -153
  692. package/dist/types/services/formValidation/index.d.ts +3 -3
  693. package/dist/types/services/formValidation/useFormValidatorGroup.d.ts +1 -1
  694. package/docs/ActionIcon.md +2 -0
  695. package/docs/CLAUDE.md +123 -230
  696. package/docs/Card.md +1 -1
  697. package/docs/Divider.md +2 -0
  698. package/docs/Dropdown.md +20 -0
  699. package/docs/IdleManager.md +38 -8
  700. package/docs/InputDropdown.md +11 -0
  701. package/docs/InteractableDiv.md +7 -1
  702. package/docs/KlipyPicker.md +1 -1
  703. package/docs/Loading.md +3 -1
  704. package/docs/Menu.md +2 -0
  705. package/docs/Modal.md +34 -10
  706. package/docs/MultiSelect.md +2 -2
  707. package/docs/Pagination.md +1 -1
  708. package/docs/Popover.md +2 -0
  709. package/docs/RadioGroup.md +1 -1
  710. package/docs/Rating.md +2 -0
  711. package/docs/Ripple.md +3 -0
  712. package/docs/RoomViewer.md +3 -5
  713. package/docs/ScrollFade.md +77 -0
  714. package/docs/ScrollbarProvider.md +2 -0
  715. package/docs/Slider.md +1 -1
  716. package/docs/Timer.md +1 -1
  717. package/docs/Wizard.md +1 -1
  718. package/package.json +33 -11
  719. package/dist/esm/common/infiniteBlock/infiniteBlock.mjs +0 -2
  720. package/dist/esm/common/infiniteBlock/infiniteBlock.mjs.map +0 -1
  721. package/dist/esm/common/infiniteBlock/infiniteBlock.module.mjs +0 -2
  722. package/dist/esm/common/infiniteBlock/infiniteBlock.module.mjs.map +0 -1
  723. package/dist/types/common/infiniteBlock/index.d.ts +0 -1
  724. package/dist/types/common/infiniteBlock/infiniteBlock.d.ts +0 -4
  725. package/dist/types/common/infiniteBlock/infiniteBlock.types.d.ts +0 -13
  726. package/docs/Icon.md +0 -27
  727. package/docs/InfiniteBlock.md +0 -23
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scrollFade.module.mjs","names":[],"sources":["../../../../package/common/styles/scrollFade.module.pcss"],"sourcesContent":["/*\n * The scroll-fade mask, shared by `ScrollFade` and by anything with a scroll port of its own\n * (Modal's body, Carousel's dot strip). Why a mask rather than an overlay, and what that costs:\n * `docs/ScrollFade.md`.\n */\n\n/* Registered so the two alphas can be transitioned: an unregistered custom property has no type\n for the browser to interpolate, so the fade would snap in and out at each edge. A browser\n without `@property` keeps them working and simply lands on the old instant switch. */\n@property --custom-scroll-fade-start {\n syntax: '<number>';\n inherits: false;\n initial-value: 1;\n}\n\n@property --custom-scroll-fade-end {\n syntax: '<number>';\n inherits: false;\n initial-value: 1;\n}\n\n/* `inherits: false` so a host setting a length of its own doesn't hand it to a nested\n `ScrollFade`, and typed so a bare `0` is read as a length instead of voiding the `calc()`\n below, which would drop the whole mask rather than shorten the fade. */\n@property --custom-scroll-fade-length {\n syntax: '<length>';\n inherits: false;\n initial-value: 24px;\n}\n\n/* Zero specificity, so a host that sets its own length on the same element wins whichever order\n the bundler emits the two modules in. The `24px` repeats the initial value above for a browser\n without `@property`, where there is none. */\n:where(.scroll-fade) {\n --custom-scroll-fade-length: var(--scroll-fade-length, 24px);\n}\n\n.scroll-fade {\n --custom-scroll-fade-start: 1;\n --custom-scroll-fade-end: 1;\n\n /* A fade is not motion, so this stays under `prefers-reduced-motion`. */\n transition:\n --custom-scroll-fade-start 0.2s ease,\n --custom-scroll-fade-end 0.2s ease;\n}\n\n/* One gradient covering the whole port with only its end stops changing, so the four states are\n two alpha switches rather than four gradients. */\n.scroll-fade-y {\n -webkit-mask-image: linear-gradient(\n to bottom,\n rgb(0 0 0 / var(--custom-scroll-fade-start)) 0,\n rgb(0 0 0 / 100%) var(--custom-scroll-fade-length),\n rgb(0 0 0 / 100%) calc(100% - var(--custom-scroll-fade-length)),\n rgb(0 0 0 / var(--custom-scroll-fade-end)) 100%\n );\n mask-image: linear-gradient(\n to bottom,\n rgb(0 0 0 / var(--custom-scroll-fade-start)) 0,\n rgb(0 0 0 / 100%) var(--custom-scroll-fade-length),\n rgb(0 0 0 / 100%) calc(100% - var(--custom-scroll-fade-length)),\n rgb(0 0 0 / var(--custom-scroll-fade-end)) 100%\n );\n}\n\n.scroll-fade-x {\n -webkit-mask-image: linear-gradient(\n to right,\n rgb(0 0 0 / var(--custom-scroll-fade-start)) 0,\n rgb(0 0 0 / 100%) var(--custom-scroll-fade-length),\n rgb(0 0 0 / 100%) calc(100% - var(--custom-scroll-fade-length)),\n rgb(0 0 0 / var(--custom-scroll-fade-end)) 100%\n );\n mask-image: linear-gradient(\n to right,\n rgb(0 0 0 / var(--custom-scroll-fade-start)) 0,\n rgb(0 0 0 / 100%) var(--custom-scroll-fade-length),\n rgb(0 0 0 / 100%) calc(100% - var(--custom-scroll-fade-length)),\n rgb(0 0 0 / var(--custom-scroll-fade-end)) 100%\n );\n}\n\n.scroll-fade-faded-start {\n --custom-scroll-fade-start: 0;\n}\n\n.scroll-fade-faded-end {\n --custom-scroll-fade-end: 0;\n}\n\n/* Fading text costs contrast at exactly the edge someone may be reading. Anyone who has asked for\n more of it gets the hard edge back instead — legibility beats the nicer boundary. */\n@media (prefers-contrast: more) {\n .scroll-fade {\n --custom-scroll-fade-start: 1;\n --custom-scroll-fade-end: 1;\n }\n}\n"],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"sheet.module.mjs","names":[],"sources":["../../../../package/common/styles/sheet.module.pcss"],"sourcesContent":["/*\n * Bottom-sheet presentation, shared by every popup that can switch away from being anchored to\n * its trigger (see `useSheet`).\n *\n * Every selector is doubled (`.sheet.sheet`) on purpose: these classes land on the same elements\n * as a component's own single-class panel styles and have to win over them. Which of two\n * equal-specificity rules wins otherwise depends on the order the bundler happens to emit the\n * two CSS modules in, which is not something a component should have to depend on.\n */\n\n.sheet.sheet {\n position: fixed;\n left: 0;\n right: 0;\n margin: 0 auto;\n width: 100%;\n\n /* Wide enough for a comfortable list on a phone, narrow enough not to span a tablet. */\n max-width: 560px;\n\n /* Two separate caps: how much of the screen a sheet may take at most, and how much screen\n there actually is — the latter set inline by `useSheet` from the visual viewport, since no\n viewport unit shrinks when the on-screen keyboard opens. */\n max-height: min(var(--sheet-max-height, 70vh), var(--sheet-available-height, 100vh));\n max-height: min(var(--sheet-max-height, 70dvh), var(--sheet-available-height, 100dvh));\n display: flex;\n flex-direction: column;\n z-index: 1;\n animation: sheetSlideIn 0.2s ease-out;\n}\n\n/* What a sheet looks like where it meets the screen, split out from `.sheet-panel` because a\n component whose own root is the surface (Modal) needs the look without the fill-the-root\n layout below it. */\n.sheet-surface.sheet-surface {\n overscroll-behavior: contain;\n border-radius: calc(var(--default-border-radius) + 4px) calc(var(--default-border-radius) + 4px) 0 0;\n\n /* Clears the home indicator on a phone without leaving a gap on a device that has none. */\n padding-bottom: max(var(--sheet-safe-padding, 8px), env(safe-area-inset-bottom));\n}\n\n.sheet-panel {\n composes: sheet-surface;\n}\n\n.sheet-panel.sheet-panel {\n position: static;\n width: 100%;\n box-sizing: border-box;\n margin: 0;\n display: flex;\n flex-direction: column;\n min-height: 0;\n max-height: 100%;\n\n /* Overrides a panel that caps its own width when anchored, e.g. Popover's 320px. */\n max-width: 100%;\n\n /* The sheet root owns the entrance animation; a panel that scales itself in when anchored\n (Popover) would otherwise play a second, conflicting one on top of the slide-up. */\n animation: none;\n overflow-y: auto;\n}\n\n/* For an inner list that caps its own height when anchored: the sheet caps the height instead. */\n.sheet-scroll.sheet-scroll {\n max-height: none;\n flex: 1 1 auto;\n min-height: 0;\n}\n\n.sheet-backdrop.sheet-backdrop {\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background: #00000052;\n z-index: 1;\n animation: sheetBackdropFadeIn 0.2s ease-out;\n}\n\n@keyframes sheetSlideIn {\n from {\n transform: translateY(100%);\n }\n\n to {\n transform: translateY(0);\n }\n}\n\n@keyframes sheetBackdropFadeIn {\n from {\n opacity: 0;\n }\n\n to {\n opacity: 1;\n }\n}\n\n/* Neither animation has a fill mode, so removing them lands both at their natural state: the\n panel already at translateY(0), the backdrop already opaque. */\n@media (prefers-reduced-motion: reduce) {\n .sheet-panel,\n .sheet-backdrop.sheet-backdrop {\n animation: none;\n }\n}\n"],"mappings":""}
1
+ {"version":3,"file":"sheet.module.mjs","names":[],"sources":["../../../../package/common/styles/sheet.module.pcss"],"sourcesContent":["/*\n * Bottom-sheet presentation, shared by every popup that can switch away from being anchored to\n * its trigger (see `useSheet`).\n *\n * Every selector is doubled (`.sheet.sheet`) on purpose: these classes land on the same elements\n * as a component's own single-class panel styles and have to win over them. Which of two\n * equal-specificity rules wins otherwise depends on the order the bundler happens to emit the\n * two CSS modules in, which is not something a component should have to depend on.\n */\n\n.sheet.sheet {\n position: fixed;\n left: 0;\n right: 0;\n margin: 0 auto;\n width: 100%;\n\n /* Wide enough for a comfortable list on a phone, narrow enough not to span a tablet —\n `Presentation.Auto` reaches a 744px one, where full width would be a banner rather than a\n sheet. A token like the other two sheet dimensions, since this selector is doubled and a\n consumer could otherwise only beat it with an inline style. */\n max-width: var(--sheet-max-width, 560px);\n\n /* Two separate caps: how much of the screen a sheet may take at most, and how much screen\n there actually is — the latter set inline by `useSheet` from the visual viewport, since no\n viewport unit shrinks when the on-screen keyboard opens. */\n max-height: min(var(--sheet-max-height, 70vh), var(--sheet-available-height, 100vh));\n max-height: min(var(--sheet-max-height, 70dvh), var(--sheet-available-height, 100dvh));\n display: flex;\n flex-direction: column;\n z-index: 1;\n animation: sheetSlideIn 0.2s ease-out;\n}\n\n/* What a sheet looks like where it meets the screen, split out from `.sheet-panel` because a\n component whose own root is the surface (Modal) needs the look without the fill-the-root\n layout below it. */\n.sheet-surface.sheet-surface {\n overscroll-behavior: contain;\n border-radius: calc(var(--default-border-radius) + 4px) calc(var(--default-border-radius) + 4px) 0 0;\n\n /* Clears the home indicator on a phone without leaving a gap on a device that has none. */\n padding-bottom: max(var(--sheet-safe-padding, 8px), env(safe-area-inset-bottom));\n}\n\n.sheet-panel {\n composes: sheet-surface;\n}\n\n.sheet-panel.sheet-panel {\n position: static;\n width: 100%;\n box-sizing: border-box;\n margin: 0;\n display: flex;\n flex-direction: column;\n min-height: 0;\n max-height: 100%;\n\n /* Overrides a panel that caps its own width when anchored, e.g. Popover's 320px. */\n max-width: 100%;\n\n /* The sheet root owns the entrance animation; a panel that scales itself in when anchored\n (Popover) would otherwise play a second, conflicting one on top of the slide-up. */\n animation: none;\n overflow-y: auto;\n}\n\n/* For an inner list that caps its own height when anchored: the sheet caps the height instead. */\n.sheet-scroll.sheet-scroll {\n max-height: none;\n flex: 1 1 auto;\n min-height: 0;\n}\n\n.sheet-backdrop.sheet-backdrop {\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background: #00000052;\n z-index: 1;\n animation: sheetBackdropFadeIn 0.2s ease-out;\n}\n\n@keyframes sheetSlideIn {\n from {\n transform: translateY(100%);\n }\n\n to {\n transform: translateY(0);\n }\n}\n\n@keyframes sheetBackdropFadeIn {\n from {\n opacity: 0;\n }\n\n to {\n opacity: 1;\n }\n}\n\n/* Neither animation has a fill mode, so removing them lands both at their natural state: the\n panel already at translateY(0), the backdrop already opaque. */\n@media (prefers-reduced-motion: reduce) {\n .sheet-panel,\n .sheet-backdrop.sheet-backdrop {\n animation: none;\n }\n}\n"],"mappings":""}
@@ -1,2 +1,2 @@
1
- "use client";import{ButtonStyleType as e}from"../button/button.types.mjs";import t from"../button/button.mjs";import{PopoverAlign as n,PopoverPlacement as r}from"../popover/popover.types.mjs";import i from"../popover/popover.mjs";import a from"../tooltip/tooltip.mjs";import o from"../input/input.mjs";import ee from"../modal/modal.mjs";import{clampHour as te,clampToRange as s,formatTime as c,parseTimeString as l,snapMinute as u}from"./timeFunctions.mjs";import ne from"./components/clockDial/clockDial.mjs";import d from"./timeInput.module.mjs";import{useEffect as f,useRef as re,useState as p}from"react";import m from"classnames";import{FontAwesomeIcon as ie}from"@fortawesome/react-fontawesome";import{faClock as ae}from"@fortawesome/free-solid-svg-icons";import{jsx as h,jsxs as g}from"react/jsx-runtime";import oe from"@mona-health/react-input-mask";function _({value:_,selected:se,onChange:ce=()=>null,onSelect:v=()=>null,formValidator:y=null,isInline:b=!1,isModal:x=!1,noInput:le=!1,noHeader:ue=!1,showClearButton:S=!1,showNowButton:C=!1,minuteStep:w=1,use24Hour:T=!0,minTime:E=null,maxTime:D=null,label:de=``,isValid:fe=!0,errorMessage:O=``,isRequired:pe=!1,disabled:k=!1,className:me=``,style:he,classNames:A,styles:j,...ge}){let M=()=>y?y.value||``:_??se??``,[N,P]=p(M),[F,I]=p(!1),[L,R]=p(`hours`),[z,B]=p(!1),[_e,V]=p(!1),[,ve]=p(0),H=M(),[ye,be]=p(H),U=re(y);!y&&ye!==H&&(be(H),P(H)),f(()=>{if(U.current=y,!y)return;let e=()=>{P(y.value||``),ve(e=>e+1)};return y.registerOnUpdateListener(e),()=>y.removeOnUpdateListener(e)},[y]);let xe=()=>y?y.touched&&y.hasError():!fe||!!O,Se=()=>!!(pe||y?.validators.find(e=>e.validatorId===`required`)),W=e=>{let t=e?c(e):null;y&&y.set(t),ce?.(t)},G=e=>{P(e?c(e):``),W(e)},K=l(N),q=K??{hours:12,minutes:0},J=e=>{let t={hours:e.hours,minutes:u(e.minutes,w)};G(s(t,E,D))},Ce=e=>{let t={hours:e.hours,minutes:u(e.minutes,w)},n=s(t,E,D);if(G(n),L===`hours`){R(`minutes`);return}v?.(c(n)),b||I(!1)},Y=()=>{k||(R(`hours`),I(!0))},we=({previousState:e,nextState:t})=>{if(!e||t.value===e.value)return t;let n=t.value,r=n.slice(0,2);/^\d\d$/.test(r)&&Number(r)>23&&(n=`23${n.slice(2)}`);let i=n.slice(3,5);return/^\d\d$/.test(i)&&Number(i)>59&&(n=`${n.slice(0,3)}59`),n===t.value?t:{...t,value:n}},Te=e=>{P(e);let t=l(e);t&&W(t)},Ee=()=>{U.current&&(U.current.touched=!0),B(!1),W(l(N))},X=e=>{e!==q.hours>=12&&G({hours:te(q.hours+(e?12:-12)),minutes:q.minutes})},Z=xe(),De=K?String(T?K.hours:(K.hours+11)%12+1).padStart(2,`0`):`--`,Oe=K?String(K.minutes).padStart(2,`0`):`--`,ke=ue?null:g(`div`,{className:m(d.timeInputClockHeader,A?.clockHeader),style:j?.clockHeader,children:[h(`button`,{type:`button`,className:m(d.timeInputHeaderSegment,L===`hours`&&d.timeInputHeaderSegmentActive,A?.headerSegment),style:j?.headerSegment,onClick:()=>R(`hours`),children:De}),h(`span`,{className:d.timeInputHeaderColon,children:`:`}),h(`button`,{type:`button`,className:m(d.timeInputHeaderSegment,L===`minutes`&&d.timeInputHeaderSegmentActive,A?.headerSegment),style:j?.headerSegment,onClick:()=>R(`minutes`),children:Oe}),!T&&g(`div`,{className:m(d.timeInputMeridiem,A?.meridiem),style:j?.meridiem,children:[h(`button`,{type:`button`,className:m(q.hours<12&&d.timeInputMeridiemActive),onClick:()=>X(!1),children:`AM`}),h(`button`,{type:`button`,className:m(q.hours>=12&&d.timeInputMeridiemActive),onClick:()=>X(!0),children:`PM`})]})]}),Ae=S||C?g(`div`,{className:m(d.timeInputFooter,A?.footer),style:j?.footer,children:[C&&h(t,{styleType:e.Default,onClick:()=>{let e=new Date;J({hours:e.getHours(),minutes:e.getMinutes()})},children:`Now`}),S&&h(t,{styleType:e.Default,onClick:()=>{G(null),v?.(null)},children:`Clear`})]}):null,Q=g(`div`,{className:m(d.timeInputClock,A?.clock),style:j?.clock,children:[ke,h(ne,{time:q,mode:L,use24Hour:T,minuteStep:w,onChange:J,onCommit:Ce,classNames:A,styles:j}),Ae]}),$=le?null:h(o,{autoComplete:`off`,label:`${de}${Se()?` *`:``}`,value:N,icon:h(ie,{icon:ae}),onIconClick:Y,onClick:Y,readOnly:x,disabled:k,isValid:!Z,customInput:h(oe,{mask:`99:99`,maskPlaceholder:`_`,beforeMaskedStateChange:we}),onChange:e=>Te(e),onBlur:Ee,onFocus:()=>B(!0),onMouseEnter:()=>V(!0),onMouseLeave:()=>V(!1)}),je=b?Q:x?h(ee,{hideHeader:!0,isOpen:F,onClose:()=>I(!1),children:Q}):h(i,{isOpen:F,onOpenChange:I,content:Q,placement:r.Bottom,align:n.Start,closeOnTriggerClick:!1,constrainWidth:!1,children:$});return g(`div`,{className:m(d.timeInput,A?.root,me),style:{...j?.root,...he},...ge,children:[(x||b)&&$,je,h(a,{variant:`error`,message:y?y.getCurrentErrorMessage()??``:O||``,isVisible:Z&&(z||_e)})]})}export{_ as default};
1
+ "use client";import{ButtonStyleType as e}from"../button/button.types.mjs";import t from"../button/button.mjs";import{PopoverAlign as n,PopoverPlacement as r}from"../popover/popover.types.mjs";import i from"../popover/popover.mjs";import ee from"../tooltip/tooltip.mjs";import te from"../input/input.mjs";import a from"../modal/modal.mjs";import ne from"../maskedInput/maskedInput.mjs";import{clampHour as re,clampToRange as o,formatTime as s,parseTimeString as c,snapMinute as l}from"./timeFunctions.mjs";import ie from"./components/clockDial/clockDial.mjs";import u from"./timeInput.module.mjs";import{useEffect as ae,useRef as oe,useState as d}from"react";import f from"classnames";import{FontAwesomeIcon as se}from"@fortawesome/react-fontawesome";import{faClock as p}from"@fortawesome/free-solid-svg-icons";import{jsx as m,jsxs as h}from"react/jsx-runtime";function g({value:g,selected:ce,onChange:le=()=>null,onSelect:_=()=>null,formValidator:v=null,isInline:y=!1,isModal:b=!1,noInput:ue=!1,noHeader:de=!1,showClearButton:x=!1,showNowButton:S=!1,minuteStep:C=1,use24Hour:w=!0,minTime:T=null,maxTime:E=null,label:fe=``,isValid:D=!0,errorMessage:O=``,isRequired:pe=!1,disabled:k=!1,className:me=``,style:he,classNames:A,styles:j,...ge}){let M=()=>v?v.value||``:g??ce??``,[N,P]=d(M),[F,I]=d(!1),[L,R]=d(`hours`),[z,B]=d(!1),[_e,V]=d(!1),[,ve]=d(0),H=M(),[ye,be]=d(H),U=oe(v);!v&&ye!==H&&(be(H),P(H)),ae(()=>{if(U.current=v,!v)return;let e=()=>{P(v.value||``),ve(e=>e+1)};return v.registerOnUpdateListener(e),()=>v.removeOnUpdateListener(e)},[v]);let xe=()=>v?v.touched&&v.hasError():!D||!!O,Se=()=>!!(pe||v?.validators.find(e=>e.validatorId===`required`)),W=e=>{let t=e?s(e):null;v&&v.set(t),le?.(t)},G=e=>{P(e?s(e):``),W(e)},K=c(N),q=K??{hours:12,minutes:0},J=e=>{let t={hours:e.hours,minutes:l(e.minutes,C)};G(o(t,T,E))},Ce=e=>{let t={hours:e.hours,minutes:l(e.minutes,C)},n=o(t,T,E);if(G(n),L===`hours`){R(`minutes`);return}_?.(s(n)),y||I(!1)},Y=()=>{k||(R(`hours`),I(!0))},we=({previousState:e,nextState:t})=>{if(t.value===e.value)return t;let n=t.value,r=n.slice(0,2);/^\d\d$/.test(r)&&Number(r)>23&&(n=`23${n.slice(2)}`);let i=n.slice(3,5);return/^\d\d$/.test(i)&&Number(i)>59&&(n=`${n.slice(0,3)}59`),n===t.value?t:{...t,value:n}},Te=e=>{P(e);let t=c(e);t&&W(t)},Ee=()=>{U.current&&(U.current.touched=!0),B(!1),W(c(N))},X=e=>{e!==q.hours>=12&&G({hours:re(q.hours+(e?12:-12)),minutes:q.minutes})},Z=xe(),De=K?String(w?K.hours:(K.hours+11)%12+1).padStart(2,`0`):`--`,Oe=K?String(K.minutes).padStart(2,`0`):`--`,ke=de?null:h(`div`,{className:f(u.timeInputClockHeader,A?.clockHeader),style:j?.clockHeader,children:[m(`button`,{type:`button`,className:f(u.timeInputHeaderSegment,L===`hours`&&u.timeInputHeaderSegmentActive,A?.headerSegment),style:j?.headerSegment,onClick:()=>R(`hours`),children:De}),m(`span`,{className:u.timeInputHeaderColon,children:`:`}),m(`button`,{type:`button`,className:f(u.timeInputHeaderSegment,L===`minutes`&&u.timeInputHeaderSegmentActive,A?.headerSegment),style:j?.headerSegment,onClick:()=>R(`minutes`),children:Oe}),!w&&h(`div`,{className:f(u.timeInputMeridiem,A?.meridiem),style:j?.meridiem,children:[m(`button`,{type:`button`,className:f(q.hours<12&&u.timeInputMeridiemActive),onClick:()=>X(!1),children:`AM`}),m(`button`,{type:`button`,className:f(q.hours>=12&&u.timeInputMeridiemActive),onClick:()=>X(!0),children:`PM`})]})]}),Ae=x||S?h(`div`,{className:f(u.timeInputFooter,A?.footer),style:j?.footer,children:[S&&m(t,{styleType:e.Default,onClick:()=>{let e=new Date;J({hours:e.getHours(),minutes:e.getMinutes()})},children:`Now`}),x&&m(t,{styleType:e.Default,onClick:()=>{G(null),_?.(null)},children:`Clear`})]}):null,Q=h(`div`,{className:f(u.timeInputClock,A?.clock),style:j?.clock,children:[ke,m(ie,{time:q,mode:L,use24Hour:w,minuteStep:C,onChange:J,onCommit:Ce,classNames:A,styles:j}),Ae]}),$=ue?null:m(te,{autoComplete:`off`,label:`${fe}${Se()?` *`:``}`,value:N,icon:m(se,{icon:p}),onIconClick:Y,onClick:Y,readOnly:b,disabled:k,isValid:!Z,customInput:m(ne,{mask:`99:99`,beforeMaskedStateChange:we}),onChange:e=>Te(e),onBlur:Ee,onFocus:()=>B(!0),onMouseEnter:()=>V(!0),onMouseLeave:()=>V(!1)}),je=y?Q:b?m(a,{hideHeader:!0,isOpen:F,onClose:()=>I(!1),children:Q}):m(i,{isOpen:F,onOpenChange:I,content:Q,placement:r.Bottom,align:n.Start,closeOnTriggerClick:!1,constrainWidth:!1,children:$});return h(`div`,{className:f(u.timeInput,A?.root,me),style:{...j?.root,...he},...ge,children:[(b||y)&&$,je,m(ee,{variant:`error`,message:v?v.getCurrentErrorMessage()??``:O||``,isVisible:Z&&(z||_e)})]})}export{g as default};
2
2
  //# sourceMappingURL=timeInput.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"timeInput.mjs","names":[],"sources":["../../../../package/common/timeInput/timeInput.tsx"],"sourcesContent":["import React, { useState, useEffect, useRef } from 'react';\nimport cx from 'classnames';\nimport InputMask, { type BeforeMaskedStateChangeStates, type InputState } from '@mona-health/react-input-mask';\nimport { faClock } from '@fortawesome/free-solid-svg-icons';\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\nimport Input from '../input';\nimport Modal from '../modal';\nimport Popover from '../popover';\nimport Button from '../button';\nimport { ButtonStyleType } from '../button/button.types';\nimport Tooltip from '../tooltip';\nimport ClockDial from './components/clockDial';\nimport { PopoverAlign, PopoverPlacement } from '../popover/popover.types';\nimport { type TimeValue, parseTimeString, formatTime, snapMinute, clampToRange, clampHour } from './timeFunctions';\nimport type { TimeInputProps } from './timeInput.types';\n\nimport styles from './timeInput.module.pcss';\n\ntype ClockMode = 'hours' | 'minutes';\n\nexport default function TimeInput({\n value,\n selected,\n onChange = () => null,\n onSelect = () => null,\n formValidator = null,\n isInline = false,\n isModal = false,\n noInput = false,\n noHeader = false,\n showClearButton = false,\n showNowButton = false,\n minuteStep = 1,\n use24Hour = true,\n minTime = null,\n maxTime = null,\n label = '',\n isValid = true,\n errorMessage = '',\n isRequired = false,\n disabled = false,\n className = '',\n style,\n classNames,\n styles: slotStyles,\n ...rest\n}: TimeInputProps) {\n const getExternalString = (): string => {\n if (formValidator) return (formValidator.value as string) || '';\n return value ?? selected ?? '';\n };\n\n const [currentTimeString, setCurrentTimeString] = useState(getExternalString);\n const [isPickerOpen, setIsPickerOpen] = useState(false);\n const [mode, setMode] = useState<ClockMode>('hours');\n const [isFocused, setIsFocused] = useState(false);\n const [isHovered, setIsHovered] = useState(false);\n const [, forceUpdate] = useState(0);\n\n const externalString = getExternalString();\n const [prevExternal, setPrevExternal] = useState(externalString);\n const fvRef = useRef(formValidator);\n\n // Sync when the controlled value changes externally.\n if (!formValidator && prevExternal !== externalString) {\n setPrevExternal(externalString);\n setCurrentTimeString(externalString);\n }\n\n useEffect(() => {\n fvRef.current = formValidator;\n if (!formValidator) return;\n const listener = () => {\n setCurrentTimeString((formValidator.value as string) || '');\n forceUpdate((n) => n + 1);\n };\n formValidator.registerOnUpdateListener(listener);\n return () => formValidator.removeOnUpdateListener(listener);\n }, [formValidator]);\n\n const hasError = (): boolean =>\n formValidator ? formValidator.touched && formValidator.hasError() : !isValid || !!errorMessage;\n\n const computedIsRequired = (): boolean =>\n !!(isRequired || formValidator?.validators.find((v) => (v as { validatorId?: string }).validatorId === 'required'));\n\n /** Push a value out to formValidator/onChange without touching the input string. */\n const emit = (time: TimeValue | null) => {\n const str = time ? formatTime(time) : null;\n if (formValidator) formValidator.set(str);\n onChange?.(str);\n };\n\n const applyTime = (time: TimeValue | null) => {\n setCurrentTimeString(time ? formatTime(time) : '');\n emit(time);\n };\n\n const parsed = parseTimeString(currentTimeString);\n const dialTime: TimeValue = parsed ?? { hours: 12, minutes: 0 };\n\n const handleDialChange = (time: TimeValue) => {\n const snapped = { hours: time.hours, minutes: snapMinute(time.minutes, minuteStep) };\n applyTime(clampToRange(snapped, minTime, maxTime));\n };\n\n const handleDialCommit = (time: TimeValue) => {\n const snapped = { hours: time.hours, minutes: snapMinute(time.minutes, minuteStep) };\n const next = clampToRange(snapped, minTime, maxTime);\n applyTime(next);\n if (mode === 'hours') {\n setMode('minutes');\n return;\n }\n onSelect?.(formatTime(next));\n if (!isInline) setIsPickerOpen(false);\n };\n\n const openPicker = () => {\n if (disabled) return;\n setMode('hours');\n setIsPickerOpen(true);\n };\n\n const beforeMaskedStateChange = ({ previousState, nextState }: BeforeMaskedStateChangeStates): InputState => {\n if (!previousState || nextState.value === previousState.value) return nextState;\n let v = nextState.value;\n const hourStr = v.slice(0, 2);\n if (/^\\d\\d$/.test(hourStr) && Number(hourStr) > 23) v = `23${v.slice(2)}`;\n const minStr = v.slice(3, 5);\n if (/^\\d\\d$/.test(minStr) && Number(minStr) > 59) v = `${v.slice(0, 3)}59`;\n return v === nextState.value ? nextState : { ...nextState, value: v };\n };\n\n const handleInputChange = (v: string) => {\n setCurrentTimeString(v);\n const t = parseTimeString(v);\n if (t) emit(t);\n };\n\n const handleBlur = () => {\n if (fvRef.current) fvRef.current.touched = true;\n setIsFocused(false);\n emit(parseTimeString(currentTimeString));\n };\n\n const setMeridiem = (pm: boolean) => {\n const isPm = dialTime.hours >= 12;\n if (pm === isPm) return;\n applyTime({ hours: clampHour(dialTime.hours + (pm ? 12 : -12)), minutes: dialTime.minutes });\n };\n\n const hasErr = hasError();\n const displayHours = parsed\n ? String(use24Hour ? parsed.hours : ((parsed.hours + 11) % 12) + 1).padStart(2, '0')\n : '--';\n const displayMinutes = parsed ? String(parsed.minutes).padStart(2, '0') : '--';\n\n const header = noHeader ? null : (\n <div className={cx(styles.timeInputClockHeader, classNames?.clockHeader)} style={slotStyles?.clockHeader}>\n <button\n type='button'\n className={cx(\n styles.timeInputHeaderSegment,\n mode === 'hours' && styles.timeInputHeaderSegmentActive,\n classNames?.headerSegment,\n )}\n style={slotStyles?.headerSegment}\n onClick={() => setMode('hours')}\n >\n {displayHours}\n </button>\n <span className={styles.timeInputHeaderColon}>:</span>\n <button\n type='button'\n className={cx(\n styles.timeInputHeaderSegment,\n mode === 'minutes' && styles.timeInputHeaderSegmentActive,\n classNames?.headerSegment,\n )}\n style={slotStyles?.headerSegment}\n onClick={() => setMode('minutes')}\n >\n {displayMinutes}\n </button>\n {!use24Hour && (\n <div className={cx(styles.timeInputMeridiem, classNames?.meridiem)} style={slotStyles?.meridiem}>\n <button\n type='button'\n className={cx(dialTime.hours < 12 && styles.timeInputMeridiemActive)}\n onClick={() => setMeridiem(false)}\n >\n AM\n </button>\n <button\n type='button'\n className={cx(dialTime.hours >= 12 && styles.timeInputMeridiemActive)}\n onClick={() => setMeridiem(true)}\n >\n PM\n </button>\n </div>\n )}\n </div>\n );\n\n const footer =\n showClearButton || showNowButton ? (\n <div className={cx(styles.timeInputFooter, classNames?.footer)} style={slotStyles?.footer}>\n {showNowButton && (\n <Button\n styleType={ButtonStyleType.Default}\n onClick={() => {\n const now = new Date();\n handleDialChange({ hours: now.getHours(), minutes: now.getMinutes() });\n }}\n >\n Now\n </Button>\n )}\n {showClearButton && (\n <Button\n styleType={ButtonStyleType.Default}\n onClick={() => {\n applyTime(null);\n onSelect?.(null);\n }}\n >\n Clear\n </Button>\n )}\n </div>\n ) : null;\n\n const pickerContent = (\n <div className={cx(styles.timeInputClock, classNames?.clock)} style={slotStyles?.clock}>\n {header}\n <ClockDial\n time={dialTime}\n mode={mode}\n use24Hour={use24Hour}\n minuteStep={minuteStep}\n onChange={handleDialChange}\n onCommit={handleDialCommit}\n classNames={classNames}\n styles={slotStyles}\n />\n {footer}\n </div>\n );\n\n const input = noInput ? null : (\n <Input\n autoComplete='off'\n label={`${label}${computedIsRequired() ? ' *' : ''}`}\n value={currentTimeString}\n icon={<FontAwesomeIcon icon={faClock} />}\n onIconClick={openPicker}\n onClick={openPicker}\n readOnly={isModal}\n disabled={disabled}\n isValid={!hasErr}\n customInput={<InputMask mask='99:99' maskPlaceholder='_' beforeMaskedStateChange={beforeMaskedStateChange} />}\n onChange={(v) => handleInputChange(v as string)}\n onBlur={handleBlur}\n onFocus={() => setIsFocused(true)}\n onMouseEnter={() => setIsHovered(true)}\n onMouseLeave={() => setIsHovered(false)}\n />\n );\n\n const picker = (() => {\n if (isInline) return pickerContent;\n if (isModal) {\n return (\n <Modal hideHeader isOpen={isPickerOpen} onClose={() => setIsPickerOpen(false)}>\n {pickerContent}\n </Modal>\n );\n }\n return (\n <Popover\n isOpen={isPickerOpen}\n onOpenChange={setIsPickerOpen}\n content={pickerContent}\n placement={PopoverPlacement.Bottom}\n align={PopoverAlign.Start}\n // A click to place the caret in the field must not take the panel away.\n // The focus stays there on its own: Popover only follows a keyboard open.\n closeOnTriggerClick={false}\n constrainWidth={false}\n >\n {input}\n </Popover>\n );\n })();\n\n return (\n <div\n className={cx(styles.timeInput, classNames?.root, className)}\n style={{ ...slotStyles?.root, ...style }}\n {...rest}\n >\n {(isModal || isInline) && input}\n {picker}\n <Tooltip\n variant='error'\n message={formValidator ? (formValidator.getCurrentErrorMessage() ?? '') : errorMessage || ''}\n isVisible={hasErr && (isFocused || isHovered)}\n />\n </div>\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"timeInput.mjs","names":[],"sources":["../../../../package/common/timeInput/timeInput.tsx"],"sourcesContent":["import React, { useState, useEffect, useRef } from 'react';\nimport cx from 'classnames';\nimport MaskedInput from '../maskedInput';\nimport type { BeforeMaskedStateChangeStates, MaskState } from '../maskedInput';\nimport { faClock } from '@fortawesome/free-solid-svg-icons';\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\nimport Input from '../input';\nimport Modal from '../modal';\nimport Popover from '../popover';\nimport Button from '../button';\nimport { ButtonStyleType } from '../button/button.types';\nimport Tooltip from '../tooltip';\nimport ClockDial from './components/clockDial';\nimport { PopoverAlign, PopoverPlacement } from '../popover/popover.types';\nimport { type TimeValue, parseTimeString, formatTime, snapMinute, clampToRange, clampHour } from './timeFunctions';\nimport type { TimeInputProps } from './timeInput.types';\n\nimport styles from './timeInput.module.pcss';\n\ntype ClockMode = 'hours' | 'minutes';\n\nexport default function TimeInput({\n value,\n selected,\n onChange = () => null,\n onSelect = () => null,\n formValidator = null,\n isInline = false,\n isModal = false,\n noInput = false,\n noHeader = false,\n showClearButton = false,\n showNowButton = false,\n minuteStep = 1,\n use24Hour = true,\n minTime = null,\n maxTime = null,\n label = '',\n isValid = true,\n errorMessage = '',\n isRequired = false,\n disabled = false,\n className = '',\n style,\n classNames,\n styles: slotStyles,\n ...rest\n}: TimeInputProps) {\n const getExternalString = (): string => {\n if (formValidator) return (formValidator.value as string) || '';\n return value ?? selected ?? '';\n };\n\n const [currentTimeString, setCurrentTimeString] = useState(getExternalString);\n const [isPickerOpen, setIsPickerOpen] = useState(false);\n const [mode, setMode] = useState<ClockMode>('hours');\n const [isFocused, setIsFocused] = useState(false);\n const [isHovered, setIsHovered] = useState(false);\n const [, forceUpdate] = useState(0);\n\n const externalString = getExternalString();\n const [prevExternal, setPrevExternal] = useState(externalString);\n const fvRef = useRef(formValidator);\n\n // Sync when the controlled value changes externally.\n if (!formValidator && prevExternal !== externalString) {\n setPrevExternal(externalString);\n setCurrentTimeString(externalString);\n }\n\n useEffect(() => {\n fvRef.current = formValidator;\n if (!formValidator) return;\n const listener = () => {\n setCurrentTimeString((formValidator.value as string) || '');\n forceUpdate((n) => n + 1);\n };\n formValidator.registerOnUpdateListener(listener);\n return () => formValidator.removeOnUpdateListener(listener);\n }, [formValidator]);\n\n const hasError = (): boolean =>\n formValidator ? formValidator.touched && formValidator.hasError() : !isValid || !!errorMessage;\n\n const computedIsRequired = (): boolean =>\n !!(isRequired || formValidator?.validators.find((v) => (v as { validatorId?: string }).validatorId === 'required'));\n\n /** Push a value out to formValidator/onChange without touching the input string. */\n const emit = (time: TimeValue | null) => {\n const str = time ? formatTime(time) : null;\n if (formValidator) formValidator.set(str);\n onChange?.(str);\n };\n\n const applyTime = (time: TimeValue | null) => {\n setCurrentTimeString(time ? formatTime(time) : '');\n emit(time);\n };\n\n const parsed = parseTimeString(currentTimeString);\n const dialTime: TimeValue = parsed ?? { hours: 12, minutes: 0 };\n\n const handleDialChange = (time: TimeValue) => {\n const snapped = { hours: time.hours, minutes: snapMinute(time.minutes, minuteStep) };\n applyTime(clampToRange(snapped, minTime, maxTime));\n };\n\n const handleDialCommit = (time: TimeValue) => {\n const snapped = { hours: time.hours, minutes: snapMinute(time.minutes, minuteStep) };\n const next = clampToRange(snapped, minTime, maxTime);\n applyTime(next);\n if (mode === 'hours') {\n setMode('minutes');\n return;\n }\n onSelect?.(formatTime(next));\n if (!isInline) setIsPickerOpen(false);\n };\n\n const openPicker = () => {\n if (disabled) return;\n setMode('hours');\n setIsPickerOpen(true);\n };\n\n const beforeMaskedStateChange = ({ previousState, nextState }: BeforeMaskedStateChangeStates): MaskState => {\n if (nextState.value === previousState.value) return nextState;\n let v = nextState.value;\n const hourStr = v.slice(0, 2);\n if (/^\\d\\d$/.test(hourStr) && Number(hourStr) > 23) v = `23${v.slice(2)}`;\n const minStr = v.slice(3, 5);\n if (/^\\d\\d$/.test(minStr) && Number(minStr) > 59) v = `${v.slice(0, 3)}59`;\n return v === nextState.value ? nextState : { ...nextState, value: v };\n };\n\n const handleInputChange = (v: string) => {\n setCurrentTimeString(v);\n const t = parseTimeString(v);\n if (t) emit(t);\n };\n\n const handleBlur = () => {\n if (fvRef.current) fvRef.current.touched = true;\n setIsFocused(false);\n emit(parseTimeString(currentTimeString));\n };\n\n const setMeridiem = (pm: boolean) => {\n const isPm = dialTime.hours >= 12;\n if (pm === isPm) return;\n applyTime({ hours: clampHour(dialTime.hours + (pm ? 12 : -12)), minutes: dialTime.minutes });\n };\n\n const hasErr = hasError();\n const displayHours = parsed\n ? String(use24Hour ? parsed.hours : ((parsed.hours + 11) % 12) + 1).padStart(2, '0')\n : '--';\n const displayMinutes = parsed ? String(parsed.minutes).padStart(2, '0') : '--';\n\n const header = noHeader ? null : (\n <div className={cx(styles.timeInputClockHeader, classNames?.clockHeader)} style={slotStyles?.clockHeader}>\n <button\n type='button'\n className={cx(\n styles.timeInputHeaderSegment,\n mode === 'hours' && styles.timeInputHeaderSegmentActive,\n classNames?.headerSegment,\n )}\n style={slotStyles?.headerSegment}\n onClick={() => setMode('hours')}\n >\n {displayHours}\n </button>\n <span className={styles.timeInputHeaderColon}>:</span>\n <button\n type='button'\n className={cx(\n styles.timeInputHeaderSegment,\n mode === 'minutes' && styles.timeInputHeaderSegmentActive,\n classNames?.headerSegment,\n )}\n style={slotStyles?.headerSegment}\n onClick={() => setMode('minutes')}\n >\n {displayMinutes}\n </button>\n {!use24Hour && (\n <div className={cx(styles.timeInputMeridiem, classNames?.meridiem)} style={slotStyles?.meridiem}>\n <button\n type='button'\n className={cx(dialTime.hours < 12 && styles.timeInputMeridiemActive)}\n onClick={() => setMeridiem(false)}\n >\n AM\n </button>\n <button\n type='button'\n className={cx(dialTime.hours >= 12 && styles.timeInputMeridiemActive)}\n onClick={() => setMeridiem(true)}\n >\n PM\n </button>\n </div>\n )}\n </div>\n );\n\n const footer =\n showClearButton || showNowButton ? (\n <div className={cx(styles.timeInputFooter, classNames?.footer)} style={slotStyles?.footer}>\n {showNowButton && (\n <Button\n styleType={ButtonStyleType.Default}\n onClick={() => {\n const now = new Date();\n handleDialChange({ hours: now.getHours(), minutes: now.getMinutes() });\n }}\n >\n Now\n </Button>\n )}\n {showClearButton && (\n <Button\n styleType={ButtonStyleType.Default}\n onClick={() => {\n applyTime(null);\n onSelect?.(null);\n }}\n >\n Clear\n </Button>\n )}\n </div>\n ) : null;\n\n const pickerContent = (\n <div className={cx(styles.timeInputClock, classNames?.clock)} style={slotStyles?.clock}>\n {header}\n <ClockDial\n time={dialTime}\n mode={mode}\n use24Hour={use24Hour}\n minuteStep={minuteStep}\n onChange={handleDialChange}\n onCommit={handleDialCommit}\n classNames={classNames}\n styles={slotStyles}\n />\n {footer}\n </div>\n );\n\n const input = noInput ? null : (\n <Input\n autoComplete='off'\n label={`${label}${computedIsRequired() ? ' *' : ''}`}\n value={currentTimeString}\n icon={<FontAwesomeIcon icon={faClock} />}\n onIconClick={openPicker}\n onClick={openPicker}\n readOnly={isModal}\n disabled={disabled}\n isValid={!hasErr}\n customInput={<MaskedInput mask='99:99' beforeMaskedStateChange={beforeMaskedStateChange} />}\n onChange={(v) => handleInputChange(v as string)}\n onBlur={handleBlur}\n onFocus={() => setIsFocused(true)}\n onMouseEnter={() => setIsHovered(true)}\n onMouseLeave={() => setIsHovered(false)}\n />\n );\n\n const picker = (() => {\n if (isInline) return pickerContent;\n if (isModal) {\n return (\n <Modal hideHeader isOpen={isPickerOpen} onClose={() => setIsPickerOpen(false)}>\n {pickerContent}\n </Modal>\n );\n }\n return (\n <Popover\n isOpen={isPickerOpen}\n onOpenChange={setIsPickerOpen}\n content={pickerContent}\n placement={PopoverPlacement.Bottom}\n align={PopoverAlign.Start}\n // A click to place the caret in the field must not take the panel away.\n // The focus stays there on its own: Popover only follows a keyboard open.\n closeOnTriggerClick={false}\n constrainWidth={false}\n >\n {input}\n </Popover>\n );\n })();\n\n return (\n <div\n className={cx(styles.timeInput, classNames?.root, className)}\n style={{ ...slotStyles?.root, ...style }}\n {...rest}\n >\n {(isModal || isInline) && input}\n {picker}\n <Tooltip\n variant='error'\n message={formValidator ? (formValidator.getCurrentErrorMessage() ?? '') : errorMessage || ''}\n isVisible={hasErr && (isFocused || isHovered)}\n />\n </div>\n );\n}\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ "use client";var e=[`a[href]`,`button`,`input`,`select`,`textarea`,`label`,`[contenteditable=""]`,`[contenteditable="true"]`,`[role="button"]`,`[role="link"]`,`[role="checkbox"]`,`[role="combobox"]`,`[role="menuitem"]`,`[role="menuitemcheckbox"]`,`[role="menuitemradio"]`,`[role="option"]`,`[role="radio"]`,`[role="searchbox"]`,`[role="slider"]`,`[role="spinbutton"]`,`[role="switch"]`,`[role="tab"]`,`[role="textbox"]`,`[role="treeitem"]`].join(`, `);function t(t,n){if(!n||!(t instanceof Element))return!1;let r=t.closest(e);return!!r&&r!==n&&n.contains(r)}export{t as isInteractiveTarget};
2
+ //# sourceMappingURL=interactiveTarget.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interactiveTarget.mjs","names":[],"sources":["../../../../package/common/utils/interactiveTarget.ts"],"sourcesContent":["/** Elements that answer a pointer themselves, so a click on one is not a click on its container. */\nconst INTERACTIVE_SELECTOR = [\n 'a[href]',\n 'button',\n 'input',\n 'select',\n 'textarea',\n 'label',\n '[contenteditable=\"\"]',\n '[contenteditable=\"true\"]',\n '[role=\"button\"]',\n '[role=\"link\"]',\n '[role=\"checkbox\"]',\n '[role=\"combobox\"]',\n '[role=\"menuitem\"]',\n '[role=\"menuitemcheckbox\"]',\n '[role=\"menuitemradio\"]',\n '[role=\"option\"]',\n '[role=\"radio\"]',\n '[role=\"searchbox\"]',\n '[role=\"slider\"]',\n '[role=\"spinbutton\"]',\n '[role=\"switch\"]',\n '[role=\"tab\"]',\n '[role=\"textbox\"]',\n '[role=\"treeitem\"]',\n].join(', ');\n\n/**\n * Whether a click landed on a control of its own inside `container`, rather than on the container.\n *\n * `container` itself never counts, or one carrying `role=\"button\"` would exclude every click it is\n * meant to answer. `role=\"group\"` is absent for the same reason: it marks a wrapper, not a control.\n */\nexport function isInteractiveTarget(target: EventTarget | null, container: Element | null): boolean {\n if (!container || !(target instanceof Element)) return false;\n const hit = target.closest(INTERACTIVE_SELECTOR);\n return !!hit && hit !== container && container.contains(hit);\n}\n"],"mappings":"aACA,IAAM,EAAuB,CAC3B,UACA,SACA,QACA,SACA,WACA,QACA,uBACA,2BACA,kBACA,gBACA,oBACA,oBACA,oBACA,4BACA,yBACA,kBACA,iBACA,qBACA,kBACA,sBACA,kBACA,eACA,mBACA,mBACF,CAAC,CAAC,KAAK,IAAI,EAQX,SAAgB,EAAoB,EAA4B,EAAoC,CAClG,GAAI,CAAC,GAAa,EAAE,aAAkB,SAAU,MAAO,GACvD,IAAM,EAAM,EAAO,QAAQ,CAAoB,EAC/C,MAAO,CAAC,CAAC,GAAO,IAAQ,GAAa,EAAU,SAAS,CAAG,CAC7D"}
@@ -0,0 +1,2 @@
1
+ "use client";function e(e,t,n,{isDisabled:r,wrap:i=!0}={}){if(n===0)return null;let a=e=>!r?.(e),o=e??(t===1?-1:n);for(let e=1;e<=n;e++){let r=o+t*e;if(!i&&(r<0||r>=n))break;let s=(r%n+n)%n;if(a(s))return s}return e!==null&&a(e)?e:null}function t(t,n,r={}){return t===`first`?e(null,1,n,{...r,wrap:!1}):e(null,-1,n,{...r,wrap:!1})}function n(e,t){if(!e||!t)return;let n=e.getBoundingClientRect(),r=t.getBoundingClientRect(),i=n.height>0?e.offsetHeight/n.height:1,a=r.top-n.top,o=r.bottom-n.bottom;a<0?e.scrollTop+=a*i:o>0&&(e.scrollTop+=o*i)}export{t as edgeIndex,e as nextIndex,n as scrollOptionIntoView};
2
+ //# sourceMappingURL=listNavigation.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"listNavigation.mjs","names":[],"sources":["../../../../package/common/utils/listNavigation.ts"],"sourcesContent":["/**\n * Where the highlight goes next in a list the arrow keys move through.\n *\n * Shared so the library's listboxes agree on it. They did not: Dropdown wrapped and skipped\n * disabled options, MultiSelect wrapped but stopped on them, and InputDropdown clamped at both\n * ends and cleared the highlight when ArrowUp reached the top. Moving between two fields in the\n * same form behaved differently for no reason a user could see.\n *\n * Only the arithmetic is shared. Which key means what, and what selecting does, stays with each\n * component, because those genuinely differ.\n */\n\n/** `null` is \"nothing highlighted\": the state a freshly opened list starts in. */\nexport type ActiveIndex = number | null;\n\nexport interface ListNavigationOptions {\n /** Options that cannot be highlighted, by index. */\n isDisabled?: (index: number) => boolean;\n /**\n * Whether moving past an end comes back round. `false` stops on the last selectable option,\n * for a list whose first entry is the text the user is still typing.\n */\n wrap?: boolean;\n}\n\n/**\n * The next selectable index in `step` direction, or `null` when the list has nothing to\n * highlight. From `null` a forward step enters at the top and a backward step at the bottom,\n * which is what both a native `<select>` and the ARIA combobox pattern do.\n */\nexport function nextIndex(\n from: ActiveIndex,\n step: 1 | -1,\n length: number,\n { isDisabled, wrap = true }: ListNavigationOptions = {},\n): ActiveIndex {\n if (length === 0) return null;\n const selectable = (index: number) => !isDisabled?.(index);\n\n // Entering the list counts as the first hop, so start one step outside it.\n const start = from ?? (step === 1 ? -1 : length);\n\n for (let hop = 1; hop <= length; hop++) {\n const raw = start + step * hop;\n if (!wrap && (raw < 0 || raw >= length)) break;\n // `+ length * hop` keeps the operand of `%` positive without a branch; `hop` is enough\n // because a single step never moves further than one length.\n const index = ((raw % length) + length) % length;\n if (selectable(index)) return index;\n }\n\n // Nothing selectable that way. Staying put beats jumping somewhere arbitrary, but a `from`\n // that is itself disabled must not be reported as highlightable.\n return from !== null && selectable(from) ? from : null;\n}\n\n/** The first or last selectable index, for Home and End. */\nexport function edgeIndex(edge: 'first' | 'last', length: number, options: ListNavigationOptions = {}): ActiveIndex {\n return edge === 'first'\n ? nextIndex(null, 1, length, { ...options, wrap: false })\n : nextIndex(null, -1, length, { ...options, wrap: false });\n}\n\n/**\n * Scrolls `option` into view inside `list`, moving nothing else on the page.\n *\n * The arrow keys move a highlight, not the focus — the focus stays on the combobox, because that\n * is what `aria-activedescendant` points from. So the browser never scrolls the option into view\n * by itself, and a list taller than its panel would highlight rows the user cannot see.\n *\n * Measured with `getBoundingClientRect` rather than `offsetTop`, which is relative to the nearest\n * positioned ancestor and so silently wrong whenever that is not the scrolling element itself.\n * `scrollIntoView` would be shorter but is free to scroll every ancestor, including the page\n * behind the panel.\n *\n * Rectangles are what the screen shows, and `scrollTop` is in layout pixels, so the two disagree\n * whenever an ancestor carries a scale — which every one of these lists does, because the Popover\n * panel holding them animates in from a smaller size. Measured mid-animation, a list 260 layout\n * pixels tall reports a rectangle of 182, and scrolling by the raw difference moved 30% short\n * every step. `offsetHeight` against the rectangle's height recovers the factor.\n */\nexport function scrollOptionIntoView(list: HTMLElement | null | undefined, option: Element | null | undefined): void {\n if (!list || !option) return;\n const listBox = list.getBoundingClientRect();\n const optionBox = option.getBoundingClientRect();\n const toLayoutPixels = listBox.height > 0 ? list.offsetHeight / listBox.height : 1;\n const above = optionBox.top - listBox.top;\n const below = optionBox.bottom - listBox.bottom;\n if (above < 0) list.scrollTop += above * toLayoutPixels;\n else if (below > 0) list.scrollTop += below * toLayoutPixels;\n}\n"],"mappings":"aA8BA,SAAgB,EACd,EACA,EACA,EACA,CAAE,aAAY,OAAO,IAAgC,CAAC,EACzC,CACb,GAAI,IAAW,EAAG,OAAO,KACzB,IAAM,EAAc,GAAkB,CAAC,IAAa,CAAK,EAGnD,EAAQ,IAAS,IAAS,EAAI,GAAK,GAEzC,IAAK,IAAI,EAAM,EAAG,GAAO,EAAQ,IAAO,CACtC,IAAM,EAAM,EAAQ,EAAO,EAC3B,GAAI,CAAC,IAAS,EAAM,GAAK,GAAO,GAAS,MAGzC,IAAM,GAAU,EAAM,EAAU,GAAU,EAC1C,GAAI,EAAW,CAAK,EAAG,OAAO,CAChC,CAIA,OAAO,IAAS,MAAQ,EAAW,CAAI,EAAI,EAAO,IACpD,CAGA,SAAgB,EAAU,EAAwB,EAAgB,EAAiC,CAAC,EAAgB,CAClH,OAAO,IAAS,QACZ,EAAU,KAAM,EAAG,EAAQ,CAAE,GAAG,EAAS,KAAM,EAAM,CAAC,EACtD,EAAU,KAAM,GAAI,EAAQ,CAAE,GAAG,EAAS,KAAM,EAAM,CAAC,CAC7D,CAoBA,SAAgB,EAAqB,EAAsC,EAA0C,CACnH,GAAI,CAAC,GAAQ,CAAC,EAAQ,OACtB,IAAM,EAAU,EAAK,sBAAsB,EACrC,EAAY,EAAO,sBAAsB,EACzC,EAAiB,EAAQ,OAAS,EAAI,EAAK,aAAe,EAAQ,OAAS,EAC3E,EAAQ,EAAU,IAAM,EAAQ,IAChC,EAAQ,EAAU,OAAS,EAAQ,OACrC,EAAQ,EAAG,EAAK,WAAa,EAAQ,EAChC,EAAQ,IAAG,EAAK,WAAa,EAAQ,EAChD"}
@@ -1 +1 @@
1
- {"version":3,"file":"wizard.module.mjs","names":[],"sources":["../../../../package/common/wizard/wizard.module.pcss"],"sourcesContent":[".wizard {\n height: 100%;\n width: 100%;\n position: relative;\n overflow: hidden;\n transition: all 0.2s;\n padding: 1px;\n\n &-content {\n position: absolute;\n height: fit-content;\n\n &-outOfFrame {\n * {\n user-select: none;\n pointer-events: none;\n visibility: hidden;\n display: none;\n }\n }\n\n &-container {\n display: flex;\n transition: all 0.6s;\n position: relative;\n }\n }\n}\n"],"mappings":""}
1
+ {"version":3,"file":"wizard.module.mjs","names":[],"sources":["../../../../package/common/wizard/wizard.module.pcss"],"sourcesContent":[".wizard {\n height: 100%;\n width: 100%;\n position: relative;\n overflow: hidden;\n transition: all 0.2s;\n padding: 1px;\n\n &-content {\n position: absolute;\n height: fit-content;\n\n &-outOfFrame {\n * {\n user-select: none;\n pointer-events: none;\n visibility: hidden;\n display: none;\n }\n }\n\n &-container {\n display: flex;\n transition: all 0.6s;\n position: relative;\n }\n }\n}\n\n/* The step slide is the whole component's motion; without it a step change is an instant swap,\n which is the point. */\n@media (prefers-reduced-motion: reduce) {\n .wizard,\n .wizard-content-container {\n transition: none;\n }\n}\n"],"mappings":""}
@@ -1 +1 @@
1
- "use client";import{AccordionStyleType as e}from"./common/accordion/accordion.types.mjs";import t from"./common/configProvider/configProvider.mjs";import{useComponentDefaults as n}from"./common/configProvider/useComponentDefaults.mjs";import{useLabels as r}from"./common/configProvider/useLabels.mjs";import{usePresentationDefault as i}from"./common/configProvider/usePresentationDefault.mjs";import{Presentation as a}from"./common/configProvider/presentation.types.mjs";import o from"./common/accordion/accordion.mjs";import s from"./common/loading/spinnerLoading/index.mjs";import{ButtonSize as c,ButtonStyleType as l,ButtonType as u}from"./common/button/button.types.mjs";import d from"./common/ripple/ripple.mjs";import f from"./common/button/button.mjs";import p from"./common/actionButtons/actionButtons.mjs";import m from"./common/interactableDiv/index.mjs";import h from"./common/actionIcon/actionIcon.mjs";import{AlertStyleType as g}from"./common/alert/alert.types.mjs";import _ from"./common/alert/alert.mjs";import v from"./common/animatedLogo/animatedLogo.mjs";import{AnimatedTextUnit as y,AnimatedTextVariant as b}from"./common/animatedText/animatedText.types.mjs";import x from"./common/animatedText/animatedText.mjs";import{BadgePosition as S,BadgeStyleType as C}from"./common/badge/badge.types.mjs";import w from"./common/badge/badge.mjs";import T from"./common/avatar/avatar.mjs";import E from"./common/avatar/avatarGroup.mjs";import D from"./common/bodyEnd/bodyEnd.mjs";import{PopoverAlign as O,PopoverPlacement as k,PopoverTrigger as A}from"./common/popover/popover.types.mjs";import j from"./common/popover/popover.mjs";import M from"./common/breadcrumb/breadcrumb.mjs";import{ButtonGroupOrientation as N}from"./common/buttonGroup/buttonGroup.types.mjs";import P from"./common/buttonGroup/buttonGroup.mjs";import{CardStyleType as F}from"./common/card/card.types.mjs";import I from"./common/card/Card.mjs";import L from"./common/card/CardHeader.mjs";import R from"./common/card/CardMedia.mjs";import z from"./common/card/CardContent.mjs";import B from"./common/card/CardActions.mjs";import V from"./common/carousel/carousel.mjs";import H from"./common/checkbox/checkbox.mjs";import{ChipStyleType as U}from"./common/chip/chip.types.mjs";import W from"./common/chip/chip.mjs";import G from"./common/chip/chipContainer.mjs";import K from"./common/tooltip/tooltip.mjs";import{InputIconPosition as q,InputType as J}from"./common/input/input.types.mjs";import Y from"./common/input/input.mjs";import X from"./common/colorPicker/colorPicker.mjs";import Z from"./common/modal/modal.mjs";import Q from"./common/confirmModal/confirmModal.mjs";import{getLocale as $,mapLocale as ee,setLocale as te}from"./services/localization.mjs";import ne from"./common/infiniteBlock/infiniteBlock.mjs";import re from"./common/dropdown/dropdown.mjs";import ie from"./common/datePicker/datePicker.mjs";import{DividerOrientation as ae,DividerTextPosition as oe}from"./common/divider/divider.types.mjs";import se from"./common/divider/divider.mjs";import ce from"./common/drawer/drawer.mjs";import{DropZoneReturnType as le,DropZoneStatus as ue}from"./common/dropZone/dropZone.types.mjs";import de from"./common/dropZone/dropZone.mjs";import fe from"./common/emptyState/emptyState.mjs";import{showToast as pe}from"./common/toast/toastService.mjs";import me from"./common/toast/toastProvider.mjs";import he from"./common/errorBoundary/errorBoundary.mjs";import ge from"./common/fab/fab.mjs";import _e from"./common/flip/flip.mjs";import{DoorSwing as ve,OpeningKind as ye,PlanIssueKind as be,PlanUnitSystem as xe,WallType as Se}from"./common/floorPlan/floorPlan.types.mjs";import{MIN_OPENING_WIDTH as Ce,MIN_WALL_LENGTH as we}from"./common/floorPlan/floorPlan.geometry.mjs";import{DEFAULT_WALL_ATTRS as Te,addOpening as Ee,addRect as De,addWall as Oe,cleanupPlan as ke,detachWall as Ae,dissolveNode as je,mergeNodes as Me,moveNode as Ne,removeOpening as Pe,removeWall as Fe,scalePlan as Ie,splitWall as Le,transformPlan as Re,updateOpening as ze,validatePlan as Be,wallLength as Ve,weldShortWalls as He}from"./common/floorPlan/floorPlan.graph.mjs";import{MIN_FLOOR_HEIGHT as Ue,addFloor as We,duplicateFloor as Ge,emptyFloor as Ke,emptyFloorPlan as qe,floorBelow as Je,floorBounds as Ye,floorIndex as Xe,getFloor as Ze,moveFloor as Qe,removeFloor as $e,renameFloor as et,setFloor as tt,setFloorHeight as nt,updateFloor as rt}from"./common/floorPlan/floorPlan.plan.mjs";import{deriveFaces as it,nodeDegrees as at}from"./common/floorPlan/floorPlan.faces.mjs";import{commitDerivation as ot,derivePlan as st,pruneUnmatchedRooms as ct,roomAtPoint as lt}from"./common/floorPlan/floorPlan.rooms.mjs";import{buildWallPaths as ut,openingGeometry as dt,wallCentrelineSpans as ft}from"./common/floorPlan/floorPlan.path.mjs";import{HIT_PX as pt,HIT_PX_COARSE as mt,hitTest as ht,selectionsEqual as gt,worldTolerances as _t}from"./common/floorPlan/floorPlan.hit.mjs";import{DEFAULT_SNAP_OPTIONS as vt,SnapKind as yt,clientToWorld as bt,resolveSnap as xt,screenScale as St}from"./common/floorPlan/floorPlan.snap.mjs";import{PLAN_FORMAT_VERSION as Ct,planFromJson as wt,planToJson as Tt}from"./common/floorPlan/floorPlan.json.mjs";import{buildPlanMesh as Et}from"./common/floorPlan/floorPlan.mesh.mjs";import{planFromLegacySvg as Dt}from"./common/floorPlan/legacySvg.mjs";import Ot from"./common/iconPicker/iconPicker.mjs";import kt from"./common/idleManager/idleManager.mjs";import At from"./common/inputDropdown/inputDropdown.mjs";import jt from"./common/kanbanBoard/KanbanColumn.mjs";import Mt from"./common/kanbanBoard/KanbanBoard.mjs";import Nt from"./common/searchInput/searchInput.mjs";import Pt from"./common/klipyPicker/klipyPicker.mjs";import Ft from"./common/loading/iconLoading/index.mjs";import{isMenuAction as It,isMenuHeading as Lt,isMenuSeparator as Rt}from"./common/menu/menu.types.mjs";import zt from"./common/menu/menu.mjs";import Bt from"./common/multiSelect/multiSelect.mjs";import Vt from"./common/numberInput/index.mjs";import Ht from"./common/optionPicker/optionPicker.mjs";import{OtpInputCharset as Ut}from"./common/otpInput/otpInput.types.mjs";import Wt from"./common/otpInput/otpInput.mjs";import Gt from"./common/overscroll/overscroll.mjs";import Kt from"./common/pagination/pagination.mjs";import qt from"./common/progressBar/progressBar.mjs";import{RadioGroupOrientation as Jt}from"./common/radioGroup/radioGroup.types.mjs";import Yt from"./common/radioGroup/radioGroup.mjs";import Xt from"./common/rating/rating.mjs";import Zt from"./common/revealLens/revealLens.mjs";import Qt from"./common/roomDrawer/roomDrawer.mjs";import $t from"./common/roomViewer/roomViewer.mjs";import en from"./common/scrollbarProvider/index.mjs";import{SectionHeaderSize as tn}from"./common/sectionHeader/sectionHeader.types.mjs";import nn from"./common/sectionHeader/sectionHeader.mjs";import{SkeletonAnimation as rn,SkeletonVariant as an}from"./common/skeleton/skeleton.types.mjs";import on from"./common/skeleton/skeleton.mjs";import sn from"./common/slider/slider.mjs";import cn from"./common/splitButton/splitButton.mjs";import{StepperAlignment as ln,StepperCollapse as un,StepperLabelPlacement as dn,StepperStyleType as fn}from"./common/stepper/stepper.types.mjs";import pn from"./common/stepper/stepper.mjs";import mn from"./common/sticky/sticky.mjs";import hn from"./common/switch/switch.mjs";import gn from"./common/tabHeader/tabHeader.mjs";import _n from"./common/textarea/textarea.mjs";import{defaultTheme as vn}from"./common/themeProvider/defaultTheme.mjs";import yn from"./common/themeProvider/themeProvider.mjs";import{lightTheme as bn}from"./common/themeProvider/lightTheme.mjs";import{useTheme as xn}from"./common/themeProvider/useTheme.mjs";import Sn,{TiltGroupContext as Cn,useTiltGroup as wn}from"./common/tiltGroup/tiltGroup.mjs";import{defaultTiltEasing as Tn}from"./common/tilt/tiltMath.mjs";import En from"./common/tilt/tilt.mjs";import Dn from"./common/timeInput/timeInput.mjs";import{TimelineAlignment as On,TimelineItemStatus as kn}from"./common/timeline/timeline.types.mjs";import An from"./common/timeline/timeline.mjs";import jn from"./common/timer/timer.mjs";import Mn from"./common/virtualList/virtualList.mjs";import{flattenTree as Nn}from"./common/tree/flattenTree.mjs";import Pn from"./common/tree/tree.mjs";import Fn from"./common/wizard/wizard.mjs";import In from"./services/formValidation/FormValidatorGroupWithForm.mjs";import Ln from"./services/formValidation/validatableComponent.mjs";import{useFormValidatorGroup as Rn}from"./services/formValidation/useFormValidatorGroup.mjs";import{FormValidator as zn,Validators as Bn,useFormValidator as Vn}from"./services/formValidation/index.mjs";import{hasEightPasswordChars as Hn,hasOnePasswordDigit as Un,hasOnePasswordLetter as Wn,isBic as Gn,isDate as Kn,isEmail as qn,isISODate as Jn,isNumber as Yn,isPassword as Xn,isURL as Zn}from"@ahrowe/form-validation";export{o as Accordion,e as AccordionStyleType,p as ActionButtons,h as ActionIcon,_ as Alert,g as AlertStyleType,v as AnimatedLogo,x as AnimatedText,y as AnimatedTextUnit,b as AnimatedTextVariant,T as Avatar,E as AvatarGroup,w as Badge,S as BadgePosition,C as BadgeStyleType,D as BodyEnd,M as Breadcrumb,f as Button,P as ButtonGroup,N as ButtonGroupOrientation,c as ButtonSize,l as ButtonStyleType,u as ButtonType,I as Card,B as CardActions,z as CardContent,L as CardHeader,R as CardMedia,F as CardStyleType,V as Carousel,H as Checkbox,W as Chip,G as ChipContainer,U as ChipStyleType,X as ColorPicker,t as ConfigProvider,Q as ConfirmModal,vt as DEFAULT_SNAP_OPTIONS,Te as DEFAULT_WALL_ATTRS,ie as DatePicker,se as Divider,ae as DividerOrientation,oe as DividerTextPosition,ve as DoorSwing,ce as Drawer,de as DropZone,le as DropZoneReturnType,ue as DropZoneStatus,re as Dropdown,fe as EmptyState,he as ErrorBoundary,ge as Fab,_e as Flip,zn as FormValidator,In as FormValidatorGroup,pt as HIT_PX,mt as HIT_PX_COARSE,Ft as IconLoading,Ot as IconPicker,kt as IdleManager,ne as InfiniteBlock,Y as Input,At as InputDropdown,q as InputIconPosition,J as InputType,m as InteractableDiv,Mt as KanbanBoard,jt as KanbanColumn,Pt as KlipyPicker,Ue as MIN_FLOOR_HEIGHT,Ce as MIN_OPENING_WIDTH,we as MIN_WALL_LENGTH,zt as Menu,Z as Modal,Bt as MultiSelect,Vt as NumberInput,ye as OpeningKind,Ht as OptionPicker,Wt as OtpInput,Ut as OtpInputCharset,Gt as Overscroll,Ct as PLAN_FORMAT_VERSION,Kt as Pagination,be as PlanIssueKind,xe as PlanUnitSystem,j as Popover,O as PopoverAlign,k as PopoverPlacement,A as PopoverTrigger,a as Presentation,qt as ProgressBar,Yt as RadioGroup,Jt as RadioGroupOrientation,Xt as Rating,Zt as RevealLens,d as Ripple,Qt as RoomDrawer,$t as RoomViewer,en as ScrollbarProvider,Nt as SearchInput,nn as SectionHeader,tn as SectionHeaderSize,on as Skeleton,rn as SkeletonAnimation,an as SkeletonVariant,sn as Slider,yt as SnapKind,s as SpinnerLoading,cn as SplitButton,pn as Stepper,ln as StepperAlignment,un as StepperCollapse,dn as StepperLabelPlacement,fn as StepperStyleType,mn as Sticky,hn as Switch,gn as TabHeader,_n as Textarea,yn as ThemeProvider,En as Tilt,Sn as TiltGroup,Cn as TiltGroupContext,Dn as TimeInput,An as Timeline,On as TimelineAlignment,kn as TimelineItemStatus,jn as Timer,me as ToastProvider,K as Tooltip,Pn as Tree,Ln as ValidatableComponent,Bn as Validators,Mn as VirtualList,Se as WallType,Fn as Wizard,We as addFloor,Ee as addOpening,De as addRect,Oe as addWall,Et as buildPlanMesh,ut as buildWallPaths,ke as cleanupPlan,bt as clientToWorld,ot as commitDerivation,vn as defaultTheme,Tn as defaultTiltEasing,it as deriveFaces,st as derivePlan,Ae as detachWall,je as dissolveNode,Ge as duplicateFloor,Ke as emptyFloor,qe as emptyFloorPlan,Nn as flattenTree,Je as floorBelow,Ye as floorBounds,Xe as floorIndex,Ze as getFloor,$ as getLocale,Hn as hasEightPasswordChars,Un as hasOnePasswordDigit,Wn as hasOnePasswordLetter,ht as hitTest,Gn as isBic,Kn as isDate,qn as isEmail,Jn as isISODate,It as isMenuAction,Lt as isMenuHeading,Rt as isMenuSeparator,Yn as isNumber,Xn as isPassword,Zn as isURL,bn as lightTheme,ee as mapLocale,Me as mergeNodes,Qe as moveFloor,Ne as moveNode,at as nodeDegrees,dt as openingGeometry,wt as planFromJson,Dt as planFromLegacySvg,Tt as planToJson,ct as pruneUnmatchedRooms,$e as removeFloor,Pe as removeOpening,Fe as removeWall,et as renameFloor,xt as resolveSnap,lt as roomAtPoint,Ie as scalePlan,St as screenScale,gt as selectionsEqual,tt as setFloor,nt as setFloorHeight,te as setLocale,pe as showToast,Le as splitWall,Re as transformPlan,rt as updateFloor,ze as updateOpening,n as useComponentDefaults,Vn as useFormValidator,Rn as useFormValidatorGroup,r as useLabels,i as usePresentationDefault,xn as useTheme,wn as useTiltGroup,Be as validatePlan,ft as wallCentrelineSpans,Ve as wallLength,He as weldShortWalls,_t as worldTolerances};
1
+ "use client";import{AccordionStyleType as e}from"./common/accordion/accordion.types.mjs";import t from"./common/configProvider/configProvider.mjs";import{useComponentDefaults as n}from"./common/configProvider/useComponentDefaults.mjs";import{useLabels as r}from"./common/configProvider/useLabels.mjs";import{usePresentationDefault as i}from"./common/configProvider/usePresentationDefault.mjs";import{Presentation as a}from"./common/configProvider/presentation.types.mjs";import o from"./common/accordion/accordion.mjs";import s from"./common/loading/spinnerLoading/index.mjs";import{ButtonSize as c,ButtonStyleType as l,ButtonType as u}from"./common/button/button.types.mjs";import d from"./common/ripple/ripple.mjs";import f from"./common/button/button.mjs";import p from"./common/actionButtons/actionButtons.mjs";import m from"./common/interactableDiv/index.mjs";import h from"./common/actionIcon/actionIcon.mjs";import{AlertStyleType as g}from"./common/alert/alert.types.mjs";import _ from"./common/alert/alert.mjs";import v from"./common/animatedLogo/animatedLogo.mjs";import{AnimatedTextUnit as y,AnimatedTextVariant as b}from"./common/animatedText/animatedText.types.mjs";import x from"./common/animatedText/animatedText.mjs";import{BadgePosition as S,BadgeStyleType as C}from"./common/badge/badge.types.mjs";import w from"./common/badge/badge.mjs";import T from"./common/avatar/avatar.mjs";import E from"./common/avatar/avatarGroup.mjs";import D from"./common/bodyEnd/bodyEnd.mjs";import{PopoverAlign as O,PopoverPlacement as k,PopoverTrigger as A}from"./common/popover/popover.types.mjs";import j from"./common/popover/popover.mjs";import M from"./common/breadcrumb/breadcrumb.mjs";import{ButtonGroupOrientation as N}from"./common/buttonGroup/buttonGroup.types.mjs";import P from"./common/buttonGroup/buttonGroup.mjs";import{CardStyleType as F}from"./common/card/card.types.mjs";import I from"./common/card/Card.mjs";import L from"./common/card/CardHeader.mjs";import R from"./common/card/CardMedia.mjs";import z from"./common/card/CardContent.mjs";import B from"./common/card/CardActions.mjs";import V from"./common/carousel/carousel.mjs";import H from"./common/checkbox/checkbox.mjs";import{ChipStyleType as U}from"./common/chip/chip.types.mjs";import W from"./common/chip/chip.mjs";import G from"./common/chip/chipContainer.mjs";import K from"./common/tooltip/tooltip.mjs";import{InputIconPosition as q,InputType as J}from"./common/input/input.types.mjs";import Y from"./common/input/input.mjs";import X from"./common/colorPicker/colorPicker.mjs";import Z from"./common/modal/modal.mjs";import Q from"./common/confirmModal/confirmModal.mjs";import{getLocale as $,mapLocale as ee,setLocale as te}from"./services/localization.mjs";import ne from"./common/dropdown/dropdown.mjs";import re from"./common/datePicker/datePicker.mjs";import{DividerOrientation as ie,DividerTextPosition as ae}from"./common/divider/divider.types.mjs";import oe from"./common/divider/divider.mjs";import se from"./common/drawer/drawer.mjs";import{DropZoneReturnType as ce,DropZoneStatus as le}from"./common/dropZone/dropZone.types.mjs";import ue from"./common/dropZone/dropZone.mjs";import de from"./common/emptyState/emptyState.mjs";import{showToast as fe}from"./common/toast/toastService.mjs";import pe from"./common/toast/toastProvider.mjs";import me from"./common/errorBoundary/errorBoundary.mjs";import he from"./common/fab/fab.mjs";import ge from"./common/flip/flip.mjs";import{DoorSwing as _e,OpeningKind as ve,PlanIssueKind as ye,PlanUnitSystem as be,WallType as xe}from"./common/floorPlan/floorPlan.types.mjs";import{MIN_OPENING_WIDTH as Se,MIN_WALL_LENGTH as Ce}from"./common/floorPlan/floorPlan.geometry.mjs";import{DEFAULT_WALL_ATTRS as we,addOpening as Te,addRect as Ee,addWall as De,cleanupPlan as Oe,detachWall as ke,dissolveNode as Ae,mergeNodes as je,moveNode as Me,removeOpening as Ne,removeWall as Pe,scalePlan as Fe,splitWall as Ie,transformPlan as Le,updateOpening as Re,validatePlan as ze,wallLength as Be,weldShortWalls as Ve}from"./common/floorPlan/floorPlan.graph.mjs";import{MIN_FLOOR_HEIGHT as He,addFloor as Ue,duplicateFloor as We,emptyFloor as Ge,emptyFloorPlan as Ke,floorBelow as qe,floorBounds as Je,floorIndex as Ye,getFloor as Xe,moveFloor as Ze,removeFloor as Qe,renameFloor as $e,setFloor as et,setFloorHeight as tt,updateFloor as nt}from"./common/floorPlan/floorPlan.plan.mjs";import{deriveFaces as rt,nodeDegrees as it}from"./common/floorPlan/floorPlan.faces.mjs";import{commitDerivation as at,derivePlan as ot,pruneUnmatchedRooms as st,roomAtPoint as ct}from"./common/floorPlan/floorPlan.rooms.mjs";import{buildWallPaths as lt,openingGeometry as ut,wallCentrelineSpans as dt}from"./common/floorPlan/floorPlan.path.mjs";import{HIT_PX as ft,HIT_PX_COARSE as pt,hitTest as mt,selectionsEqual as ht,worldTolerances as gt}from"./common/floorPlan/floorPlan.hit.mjs";import{DEFAULT_SNAP_OPTIONS as _t,SnapKind as vt,clientToWorld as yt,resolveSnap as bt,screenScale as xt}from"./common/floorPlan/floorPlan.snap.mjs";import{PLAN_FORMAT_VERSION as St,planFromJson as Ct,planToJson as wt}from"./common/floorPlan/floorPlan.json.mjs";import{buildPlanMesh as Tt}from"./common/floorPlan/floorPlan.mesh.mjs";import{planFromLegacySvg as Et}from"./common/floorPlan/legacySvg.mjs";import Dt from"./common/iconPicker/iconPicker.mjs";import Ot from"./common/idleManager/idleManager.mjs";import kt from"./common/inputDropdown/inputDropdown.mjs";import At from"./common/kanbanBoard/KanbanColumn.mjs";import jt from"./common/kanbanBoard/KanbanBoard.mjs";import Mt from"./common/searchInput/searchInput.mjs";import Nt from"./common/klipyPicker/klipyPicker.mjs";import Pt from"./common/loading/iconLoading/index.mjs";import{isMenuAction as Ft,isMenuHeading as It,isMenuSeparator as Lt}from"./common/menu/menu.types.mjs";import Rt from"./common/menu/menu.mjs";import zt from"./common/multiSelect/multiSelect.mjs";import Bt from"./common/numberInput/index.mjs";import Vt from"./common/optionPicker/optionPicker.mjs";import{OtpInputCharset as Ht}from"./common/otpInput/otpInput.types.mjs";import Ut from"./common/otpInput/otpInput.mjs";import Wt from"./common/overscroll/overscroll.mjs";import Gt from"./common/pagination/pagination.mjs";import Kt from"./common/progressBar/progressBar.mjs";import{RadioGroupOrientation as qt}from"./common/radioGroup/radioGroup.types.mjs";import Jt from"./common/radioGroup/radioGroup.mjs";import Yt from"./common/rating/rating.mjs";import Xt from"./common/revealLens/revealLens.mjs";import Zt from"./common/roomDrawer/roomDrawer.mjs";import Qt from"./common/roomViewer/roomViewer.mjs";import{ScrollFadeAxis as $t}from"./common/scrollFade/scrollFade.types.mjs";import en from"./common/scrollFade/scrollFade.mjs";import tn from"./common/scrollbarProvider/index.mjs";import{SectionHeaderSize as nn}from"./common/sectionHeader/sectionHeader.types.mjs";import rn from"./common/sectionHeader/sectionHeader.mjs";import{SkeletonAnimation as an,SkeletonVariant as on}from"./common/skeleton/skeleton.types.mjs";import sn from"./common/skeleton/skeleton.mjs";import cn from"./common/slider/slider.mjs";import ln from"./common/splitButton/splitButton.mjs";import{StepperAlignment as un,StepperCollapse as dn,StepperLabelPlacement as fn,StepperStyleType as pn}from"./common/stepper/stepper.types.mjs";import mn from"./common/stepper/stepper.mjs";import hn from"./common/sticky/sticky.mjs";import gn from"./common/switch/switch.mjs";import _n from"./common/tabHeader/tabHeader.mjs";import vn from"./common/textarea/textarea.mjs";import{defaultTheme as yn}from"./common/themeProvider/defaultTheme.mjs";import bn from"./common/themeProvider/themeProvider.mjs";import{lightTheme as xn}from"./common/themeProvider/lightTheme.mjs";import{useTheme as Sn}from"./common/themeProvider/useTheme.mjs";import Cn,{TiltGroupContext as wn,useTiltGroup as Tn}from"./common/tiltGroup/tiltGroup.mjs";import{defaultTiltEasing as En}from"./common/tilt/tiltMath.mjs";import Dn from"./common/tilt/tilt.mjs";import On from"./common/timeInput/timeInput.mjs";import{TimelineAlignment as kn,TimelineItemStatus as An}from"./common/timeline/timeline.types.mjs";import jn from"./common/timeline/timeline.mjs";import Mn from"./common/timer/timer.mjs";import Nn from"./common/virtualList/virtualList.mjs";import{flattenTree as Pn}from"./common/tree/flattenTree.mjs";import Fn from"./common/tree/tree.mjs";import In from"./common/wizard/wizard.mjs";import Ln from"./services/formValidation/FormValidatorGroupWithForm.mjs";import Rn from"./services/formValidation/validatableComponent.mjs";import{useFormValidatorGroup as zn}from"./services/formValidation/useFormValidatorGroup.mjs";import{FormValidator as Bn,Validators as Vn,useFormValidator as Hn}from"./services/formValidation/index.mjs";import{hasEightPasswordChars as Un,hasOnePasswordDigit as Wn,hasOnePasswordLetter as Gn,isBic as Kn,isDate as qn,isEmail as Jn,isISODate as Yn,isNumber as Xn,isPassword as Zn,isURL as Qn}from"@ahrowe/form-validation";export{o as Accordion,e as AccordionStyleType,p as ActionButtons,h as ActionIcon,_ as Alert,g as AlertStyleType,v as AnimatedLogo,x as AnimatedText,y as AnimatedTextUnit,b as AnimatedTextVariant,T as Avatar,E as AvatarGroup,w as Badge,S as BadgePosition,C as BadgeStyleType,D as BodyEnd,M as Breadcrumb,f as Button,P as ButtonGroup,N as ButtonGroupOrientation,c as ButtonSize,l as ButtonStyleType,u as ButtonType,I as Card,B as CardActions,z as CardContent,L as CardHeader,R as CardMedia,F as CardStyleType,V as Carousel,H as Checkbox,W as Chip,G as ChipContainer,U as ChipStyleType,X as ColorPicker,t as ConfigProvider,Q as ConfirmModal,_t as DEFAULT_SNAP_OPTIONS,we as DEFAULT_WALL_ATTRS,re as DatePicker,oe as Divider,ie as DividerOrientation,ae as DividerTextPosition,_e as DoorSwing,se as Drawer,ue as DropZone,ce as DropZoneReturnType,le as DropZoneStatus,ne as Dropdown,de as EmptyState,me as ErrorBoundary,he as Fab,ge as Flip,Bn as FormValidator,Ln as FormValidatorGroup,ft as HIT_PX,pt as HIT_PX_COARSE,Pt as IconLoading,Dt as IconPicker,Ot as IdleManager,Y as Input,kt as InputDropdown,q as InputIconPosition,J as InputType,m as InteractableDiv,jt as KanbanBoard,At as KanbanColumn,Nt as KlipyPicker,He as MIN_FLOOR_HEIGHT,Se as MIN_OPENING_WIDTH,Ce as MIN_WALL_LENGTH,Rt as Menu,Z as Modal,zt as MultiSelect,Bt as NumberInput,ve as OpeningKind,Vt as OptionPicker,Ut as OtpInput,Ht as OtpInputCharset,Wt as Overscroll,St as PLAN_FORMAT_VERSION,Gt as Pagination,ye as PlanIssueKind,be as PlanUnitSystem,j as Popover,O as PopoverAlign,k as PopoverPlacement,A as PopoverTrigger,a as Presentation,Kt as ProgressBar,Jt as RadioGroup,qt as RadioGroupOrientation,Yt as Rating,Xt as RevealLens,d as Ripple,Zt as RoomDrawer,Qt as RoomViewer,en as ScrollFade,$t as ScrollFadeAxis,tn as ScrollbarProvider,Mt as SearchInput,rn as SectionHeader,nn as SectionHeaderSize,sn as Skeleton,an as SkeletonAnimation,on as SkeletonVariant,cn as Slider,vt as SnapKind,s as SpinnerLoading,ln as SplitButton,mn as Stepper,un as StepperAlignment,dn as StepperCollapse,fn as StepperLabelPlacement,pn as StepperStyleType,hn as Sticky,gn as Switch,_n as TabHeader,vn as Textarea,bn as ThemeProvider,Dn as Tilt,Cn as TiltGroup,wn as TiltGroupContext,On as TimeInput,jn as Timeline,kn as TimelineAlignment,An as TimelineItemStatus,Mn as Timer,pe as ToastProvider,K as Tooltip,Fn as Tree,Rn as ValidatableComponent,Vn as Validators,Nn as VirtualList,xe as WallType,In as Wizard,Ue as addFloor,Te as addOpening,Ee as addRect,De as addWall,Tt as buildPlanMesh,lt as buildWallPaths,Oe as cleanupPlan,yt as clientToWorld,at as commitDerivation,yn as defaultTheme,En as defaultTiltEasing,rt as deriveFaces,ot as derivePlan,ke as detachWall,Ae as dissolveNode,We as duplicateFloor,Ge as emptyFloor,Ke as emptyFloorPlan,Pn as flattenTree,qe as floorBelow,Je as floorBounds,Ye as floorIndex,Xe as getFloor,$ as getLocale,Un as hasEightPasswordChars,Wn as hasOnePasswordDigit,Gn as hasOnePasswordLetter,mt as hitTest,Kn as isBic,qn as isDate,Jn as isEmail,Yn as isISODate,Ft as isMenuAction,It as isMenuHeading,Lt as isMenuSeparator,Xn as isNumber,Zn as isPassword,Qn as isURL,xn as lightTheme,ee as mapLocale,je as mergeNodes,Ze as moveFloor,Me as moveNode,it as nodeDegrees,ut as openingGeometry,Ct as planFromJson,Et as planFromLegacySvg,wt as planToJson,st as pruneUnmatchedRooms,Qe as removeFloor,Ne as removeOpening,Pe as removeWall,$e as renameFloor,bt as resolveSnap,ct as roomAtPoint,Fe as scalePlan,xt as screenScale,ht as selectionsEqual,et as setFloor,tt as setFloorHeight,te as setLocale,fe as showToast,Ie as splitWall,Le as transformPlan,nt as updateFloor,Re as updateOpening,n as useComponentDefaults,Hn as useFormValidator,zn as useFormValidatorGroup,r as useLabels,i as usePresentationDefault,Sn as useTheme,Tn as useTiltGroup,ze as validatePlan,dt as wallCentrelineSpans,Be as wallLength,Ve as weldShortWalls,gt as worldTolerances};
Binary file