@datum-cloud/datum-ui 1.3.1 → 1.4.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 (1025) hide show
  1. package/README.md +54 -46
  2. package/dist/_shadcn/hooks/use-mobile.d.ts +0 -1
  3. package/dist/_shadcn/hooks/use-theme.d.ts +0 -1
  4. package/dist/_shadcn/lib/utils.d.ts +1 -6
  5. package/dist/_shadcn/ui/alert.d.ts +2 -3
  6. package/dist/_shadcn/ui/avatar.d.ts +4 -5
  7. package/dist/_shadcn/ui/badge.d.ts +1 -2
  8. package/dist/_shadcn/ui/breadcrumb.d.ts +9 -10
  9. package/dist/_shadcn/ui/button-group.d.ts +1 -2
  10. package/dist/_shadcn/ui/button.d.ts +1 -2
  11. package/dist/_shadcn/ui/card.d.ts +7 -8
  12. package/dist/_shadcn/ui/chart.d.ts +8 -9
  13. package/dist/_shadcn/ui/checkbox.d.ts +0 -1
  14. package/dist/_shadcn/ui/collapsible.d.ts +1 -2
  15. package/dist/_shadcn/ui/command.d.ts +12 -13
  16. package/dist/_shadcn/ui/dialog.d.ts +10 -11
  17. package/dist/_shadcn/ui/dropdown-menu.d.ts +5 -6
  18. package/dist/_shadcn/ui/hover-card.d.ts +1 -2
  19. package/dist/_shadcn/ui/input-group.d.ts +2 -3
  20. package/dist/_shadcn/ui/input.d.ts +4 -5
  21. package/dist/_shadcn/ui/label.d.ts +1 -2
  22. package/dist/_shadcn/ui/map/controls.d.ts +20 -0
  23. package/dist/_shadcn/ui/map/draw.d.ts +15 -0
  24. package/dist/_shadcn/ui/map/hooks.d.ts +7 -0
  25. package/dist/_shadcn/ui/map/layers.d.ts +45 -0
  26. package/dist/_shadcn/ui/map/lazy.d.ts +20 -0
  27. package/dist/_shadcn/ui/map/primitives.d.ts +36 -0
  28. package/dist/_shadcn/ui/map/shared.d.ts +5 -0
  29. package/dist/_shadcn/ui/map-leaflet-imports.d.ts +0 -1
  30. package/dist/_shadcn/ui/map.d.ts +6 -115
  31. package/dist/_shadcn/ui/place-autocomplete.d.ts +0 -1
  32. package/dist/_shadcn/ui/popover.d.ts +5 -6
  33. package/dist/_shadcn/ui/radio-group.d.ts +0 -1
  34. package/dist/_shadcn/ui/select.d.ts +10 -11
  35. package/dist/_shadcn/ui/separator.d.ts +1 -2
  36. package/dist/_shadcn/ui/sheet.d.ts +11 -12
  37. package/dist/_shadcn/ui/skeleton.d.ts +0 -1
  38. package/dist/_shadcn/ui/sonner.d.ts +1 -2
  39. package/dist/_shadcn/ui/spinner.d.ts +0 -1
  40. package/dist/_shadcn/ui/switch.d.ts +0 -1
  41. package/dist/_shadcn/ui/table.d.ts +9 -10
  42. package/dist/_shadcn/ui/tabs.d.ts +1 -2
  43. package/dist/_shadcn/ui/textarea.d.ts +0 -1
  44. package/dist/_shadcn/ui/tooltip.d.ts +5 -6
  45. package/dist/_shadcn/ui/visuallyhidden.d.ts +0 -1
  46. package/dist/{action-row-BhMyMSep.mjs → action-row-DTvs91_3.mjs} +1 -1
  47. package/dist/alert/index.mjs +1 -1
  48. package/dist/{alert-o1rpjbOJ.mjs → alert-SAPwee1h.mjs} +3 -3
  49. package/dist/app-navigation/index.mjs +3 -4
  50. package/dist/app-navigation--mry98XV.mjs +576 -0
  51. package/dist/autocomplete/index.mjs +1 -1
  52. package/dist/{autocomplete-Bg187x6x.mjs → autocomplete-G24AgvxU.mjs} +20 -29
  53. package/dist/autosearch/index.mjs +14 -21
  54. package/dist/avatar/index.mjs +27 -1
  55. package/dist/avatar-stack/index.mjs +1 -1
  56. package/dist/{avatar-stack-dsUoEFWs.mjs → avatar-stack-D1-BA7hA.mjs} +3 -3
  57. package/dist/badge/index.mjs +1 -1
  58. package/dist/{badge-DO2_XsXD.mjs → badge-BTNW_FEU.mjs} +1 -1
  59. package/dist/breadcrumb/index.mjs +1 -1
  60. package/dist/{breadcrumb-2S5MuWmM.mjs → breadcrumb-DmdhC8bE.mjs} +14 -14
  61. package/dist/button/index.mjs +2 -2
  62. package/dist/{button-B_N7A8gv.mjs → button-A1qTjZ8U.mjs} +25 -11
  63. package/dist/{button-BLYlDzP-.mjs → button-H_8dI-Ib.mjs} +3 -9
  64. package/dist/button-group/index.mjs +1 -1
  65. package/dist/{button-group-B5s-1BCV.mjs → button-group-DFrTH4L8.mjs} +1 -1
  66. package/dist/calendar/index.mjs +110 -1
  67. package/dist/{calendar-date-picker-DAVXW7Jg.mjs → calendar-date-picker-C52Y05ZN.mjs} +4 -4
  68. package/dist/card/index.mjs +1 -1
  69. package/dist/{card-C5ykfNwX.mjs → card-Cphn2nA3.mjs} +10 -11
  70. package/dist/chart/index.mjs +1 -1
  71. package/dist/{chart-CyOC7Ha-.mjs → chart-DeCrbcpY.mjs} +3 -3
  72. package/dist/checkbox/index.mjs +1 -1
  73. package/dist/{checkbox-BZr9bkke.mjs → checkbox-C6P12fio.mjs} +2 -3
  74. package/dist/{close.icon-ClpRDt_H.mjs → close.icon-DdXKQ4m0.mjs} +1 -1
  75. package/dist/code-editor/index.mjs +1 -1
  76. package/dist/{col-DlpHgWOq.mjs → col-BYGWTB4j.mjs} +17 -4
  77. package/dist/collapsible/index.mjs +6 -1
  78. package/dist/command/index.mjs +1 -1
  79. package/dist/{command-B1sx-XVY.mjs → command-C0aGIYnQ.mjs} +19 -19
  80. package/dist/components/base/alert/alert.d.ts +2 -2
  81. package/dist/components/base/alert/index.d.ts +0 -1
  82. package/dist/components/base/avatar/index.d.ts +0 -1
  83. package/dist/components/base/badge/badge.d.ts +0 -1
  84. package/dist/components/base/badge/index.d.ts +0 -1
  85. package/dist/components/base/breadcrumb/index.d.ts +0 -1
  86. package/dist/components/base/button/button.d.ts +0 -1
  87. package/dist/components/base/button/icon-only.d.ts +14 -0
  88. package/dist/components/base/button/index.d.ts +0 -1
  89. package/dist/components/base/button/link-button.d.ts +0 -1
  90. package/dist/components/base/button-group/index.d.ts +0 -1
  91. package/dist/components/base/calendar/calendar.d.ts +0 -1
  92. package/dist/components/base/calendar/index.d.ts +0 -1
  93. package/dist/components/base/card/card.d.ts +0 -1
  94. package/dist/components/base/card/index.d.ts +0 -1
  95. package/dist/components/base/chart/index.d.ts +0 -1
  96. package/dist/components/base/checkbox/checkbox.d.ts +0 -1
  97. package/dist/components/base/checkbox/index.d.ts +0 -1
  98. package/dist/components/base/collapsible/index.d.ts +0 -1
  99. package/dist/components/base/command/index.d.ts +0 -1
  100. package/dist/components/base/date-picker/index.d.ts +0 -1
  101. package/dist/components/base/date-picker/types.d.ts +0 -1
  102. package/dist/components/base/date-picker/use-date-constraints.d.ts +0 -1
  103. package/dist/components/base/dialog/dialog.d.ts +0 -1
  104. package/dist/components/base/dialog/index.d.ts +0 -1
  105. package/dist/components/base/hooks/index.d.ts +2 -0
  106. package/dist/components/base/hooks/use-controllable-state.d.ts +10 -0
  107. package/dist/components/base/hover-card/index.d.ts +0 -1
  108. package/dist/components/base/index.d.ts +1 -1
  109. package/dist/components/base/input/index.d.ts +0 -1
  110. package/dist/components/base/input/input.d.ts +0 -1
  111. package/dist/components/base/input-group/index.d.ts +0 -1
  112. package/dist/components/base/label/index.d.ts +0 -1
  113. package/dist/components/base/label/label.d.ts +0 -1
  114. package/dist/components/base/loader-overlay/index.d.ts +1 -0
  115. package/dist/components/base/loader-overlay/loader-overlay.d.ts +4 -0
  116. package/dist/components/base/map/index.d.ts +0 -1
  117. package/dist/components/base/mobile-sheet/context.d.ts +0 -1
  118. package/dist/components/base/mobile-sheet/index.d.ts +1 -1
  119. package/dist/components/base/mobile-sheet/mobile-sheet.d.ts +0 -1
  120. package/dist/components/base/mobile-sheet/responsive-sheet-trigger.d.ts +25 -0
  121. package/dist/components/base/option-picker/index.d.ts +0 -1
  122. package/dist/components/base/option-picker/option-list.d.ts +0 -1
  123. package/dist/components/base/option-picker/types.d.ts +28 -1
  124. package/dist/components/base/option-picker/use-option-picker.d.ts +0 -1
  125. package/dist/components/base/place-autocomplete/index.d.ts +0 -1
  126. package/dist/components/base/popover/index.d.ts +0 -1
  127. package/dist/components/base/radio-group/index.d.ts +0 -1
  128. package/dist/components/base/radio-group/radio-group.d.ts +0 -1
  129. package/dist/components/base/responsive-dropdown/index.d.ts +0 -1
  130. package/dist/components/base/responsive-dropdown/responsive-dropdown.d.ts +2 -3
  131. package/dist/components/base/responsive-popover/index.d.ts +0 -1
  132. package/dist/components/base/responsive-popover/responsive-popover.d.ts +4 -3
  133. package/dist/components/base/select/index.d.ts +0 -1
  134. package/dist/components/base/select/select.d.ts +3 -4
  135. package/dist/components/base/separator/index.d.ts +0 -1
  136. package/dist/components/base/sheet/index.d.ts +0 -1
  137. package/dist/components/base/sheet/sheet.d.ts +0 -1
  138. package/dist/components/base/sidebar/context.d.ts +32 -0
  139. package/dist/components/base/sidebar/group.d.ts +10 -0
  140. package/dist/components/base/sidebar/index.d.ts +0 -1
  141. package/dist/components/base/sidebar/menu.d.ts +33 -0
  142. package/dist/components/base/sidebar/shell.d.ts +18 -0
  143. package/dist/components/base/sidebar/sidebar.d.ts +4 -84
  144. package/dist/components/base/skeleton/index.d.ts +0 -1
  145. package/dist/components/base/skeleton/skeleton.d.ts +0 -1
  146. package/dist/components/base/spinner/index.d.ts +0 -1
  147. package/dist/components/base/switch/index.d.ts +0 -1
  148. package/dist/components/base/switch/switch.d.ts +0 -1
  149. package/dist/components/base/table/index.d.ts +0 -1
  150. package/dist/components/base/tabs/index.d.ts +0 -1
  151. package/dist/components/base/tabs/tabs.d.ts +0 -1
  152. package/dist/components/base/textarea/index.d.ts +0 -1
  153. package/dist/components/base/textarea/textarea.d.ts +0 -1
  154. package/dist/components/base/tooltip/index.d.ts +0 -1
  155. package/dist/components/base/tooltip/tooltip.d.ts +0 -1
  156. package/dist/components/base/typography/index.d.ts +0 -1
  157. package/dist/components/base/typography/typography.d.ts +0 -1
  158. package/dist/components/base/visuallyhidden/index.d.ts +0 -1
  159. package/dist/components/features/_shared/index.d.ts +2 -0
  160. package/dist/components/features/_shared/timezone.d.ts +13 -0
  161. package/dist/components/features/_shared/use-deprecation-warning.d.ts +8 -0
  162. package/dist/components/features/app-navigation/app-navigation.d.ts +1 -2
  163. package/dist/components/features/app-navigation/index.d.ts +0 -1
  164. package/dist/components/features/app-navigation/nav-menu/active-path.d.ts +33 -0
  165. package/dist/components/features/app-navigation/nav-menu/index.d.ts +4 -0
  166. package/dist/components/features/app-navigation/nav-menu/nav-menu-context.d.ts +47 -0
  167. package/dist/components/features/app-navigation/nav-menu/nav-menu-item.d.ts +13 -0
  168. package/dist/components/features/app-navigation/{nav-menu.d.ts → nav-menu/nav-menu.d.ts} +7 -20
  169. package/dist/components/features/app-navigation/nav-menu/parts.d.ts +31 -0
  170. package/dist/components/features/app-navigation/nav-menu/types.d.ts +18 -0
  171. package/dist/components/features/autocomplete/autocomplete.d.ts +0 -1
  172. package/dist/components/features/autocomplete/autocomplete.types.d.ts +0 -1
  173. package/dist/components/features/autocomplete/index.d.ts +0 -1
  174. package/dist/components/features/autocomplete/trigger.d.ts +6 -2
  175. package/dist/components/features/autosearch/autosearch.d.ts +0 -1
  176. package/dist/components/features/autosearch/autosearch.types.d.ts +1 -2
  177. package/dist/components/features/autosearch/index.d.ts +0 -1
  178. package/dist/components/features/avatar-stack/avatar-stack.d.ts +0 -1
  179. package/dist/components/features/avatar-stack/index.d.ts +0 -1
  180. package/dist/components/features/calendar-date-picker/calendar-date-picker.d.ts +0 -1
  181. package/dist/components/features/calendar-date-picker/index.d.ts +0 -1
  182. package/dist/components/features/calendar-date-picker/types.d.ts +3 -8
  183. package/dist/components/features/code-editor/code-editor-tabs.d.ts +0 -1
  184. package/dist/components/features/code-editor/code-editor.d.ts +0 -1
  185. package/dist/components/features/code-editor/index.d.ts +0 -1
  186. package/dist/components/features/code-editor/lib/editor.d.ts +0 -1
  187. package/dist/components/features/code-editor/types.d.ts +0 -1
  188. package/dist/components/features/data-table/adapters/nuqs-adapter.d.ts +0 -1
  189. package/dist/components/features/data-table/columns/selection-column.d.ts +2 -3
  190. package/dist/components/features/data-table/components/active-filters.d.ts +0 -1
  191. package/dist/components/features/data-table/components/bulk-actions.d.ts +0 -1
  192. package/dist/components/features/data-table/components/column-header.d.ts +0 -1
  193. package/dist/components/features/data-table/components/content.d.ts +0 -1
  194. package/dist/components/features/data-table/components/inline-content.d.ts +0 -1
  195. package/dist/components/features/data-table/components/loading.d.ts +0 -1
  196. package/dist/components/features/data-table/components/pagination.d.ts +0 -1
  197. package/dist/components/features/data-table/components/row-actions.d.ts +0 -1
  198. package/dist/components/features/data-table/components/search.d.ts +0 -1
  199. package/dist/components/features/data-table/constants.d.ts +0 -1
  200. package/dist/components/features/data-table/core/client-provider.d.ts +0 -1
  201. package/dist/components/features/data-table/core/data-table-context.d.ts +0 -1
  202. package/dist/components/features/data-table/core/filter-engine.d.ts +1 -3
  203. package/dist/components/features/data-table/core/server-provider.d.ts +0 -1
  204. package/dist/components/features/data-table/core/store.d.ts +0 -1
  205. package/dist/components/features/data-table/data-table.d.ts +0 -1
  206. package/dist/components/features/data-table/filters/checkbox-filter.d.ts +0 -1
  207. package/dist/components/features/data-table/filters/date-picker-filter.d.ts +0 -1
  208. package/dist/components/features/data-table/filters/select-filter.d.ts +0 -1
  209. package/dist/components/features/data-table/hooks/index.d.ts +0 -1
  210. package/dist/components/features/data-table/hooks/use-data-table-client.d.ts +2 -3
  211. package/dist/components/features/data-table/hooks/use-data-table-server.d.ts +2 -3
  212. package/dist/components/features/data-table/hooks/use-selectors.d.ts +1 -1
  213. package/dist/components/features/data-table/index.d.ts +1 -2
  214. package/dist/components/features/data-table/types.d.ts +36 -19
  215. package/dist/components/features/date-picker/index.d.ts +0 -1
  216. package/dist/components/features/date-time-picker/date-time-picker.d.ts +0 -1
  217. package/dist/components/features/date-time-picker/index.d.ts +0 -1
  218. package/dist/components/features/date-time-picker/types.d.ts +0 -1
  219. package/dist/components/features/date-time-picker/utils/format.d.ts +0 -1
  220. package/dist/components/features/date-time-picker/utils/index.d.ts +0 -1
  221. package/dist/components/features/date-time-picker/utils/timezone.d.ts +1 -5
  222. package/dist/components/features/dropdown/dropdown.d.ts +0 -1
  223. package/dist/components/features/dropdown/index.d.ts +0 -1
  224. package/dist/components/features/dropzone/dropzone.d.ts +0 -1
  225. package/dist/components/features/dropzone/index.d.ts +0 -1
  226. package/dist/components/features/empty-content/empty-content.d.ts +1 -2
  227. package/dist/components/features/empty-content/index.d.ts +0 -1
  228. package/dist/components/features/file-input-button/file-input-button.d.ts +0 -1
  229. package/dist/components/features/file-input-button/index.d.ts +0 -1
  230. package/dist/components/features/form/adapter-context.d.ts +0 -1
  231. package/dist/components/features/form/adapter-types.d.ts +0 -1
  232. package/dist/components/features/form/adapters/conform/conform-adapter.d.ts +13 -1
  233. package/dist/components/features/form/adapters/conform/conform-provider.d.ts +0 -1
  234. package/dist/components/features/form/adapters/conform/index.d.ts +0 -1
  235. package/dist/components/features/form/adapters/rhf/index.d.ts +0 -1
  236. package/dist/components/features/form/adapters/rhf/rhf-adapter.d.ts +0 -1
  237. package/dist/components/features/form/adapters/rhf/rhf-provider.d.ts +0 -1
  238. package/dist/components/features/form/components/form-autocomplete.d.ts +1 -2
  239. package/dist/components/features/form/components/form-autosearch.d.ts +0 -1
  240. package/dist/components/features/form/components/form-button.d.ts +0 -1
  241. package/dist/components/features/form/components/form-checkbox.d.ts +0 -1
  242. package/dist/components/features/form/components/form-combobox.d.ts +1 -2
  243. package/dist/components/features/form/components/form-copy-box.d.ts +0 -1
  244. package/dist/components/features/form/components/form-custom.d.ts +0 -1
  245. package/dist/components/features/form/components/form-date-picker.d.ts +0 -1
  246. package/dist/components/features/form/components/form-date-time-picker.d.ts +0 -1
  247. package/dist/components/features/form/components/form-description.d.ts +0 -1
  248. package/dist/components/features/form/components/form-dialog.d.ts +0 -1
  249. package/dist/components/features/form/components/form-error.d.ts +0 -1
  250. package/dist/components/features/form/components/form-field-array.d.ts +0 -1
  251. package/dist/components/features/form/components/form-field.d.ts +0 -1
  252. package/dist/components/features/form/components/form-input-group.d.ts +0 -1
  253. package/dist/components/features/form/components/form-input.d.ts +0 -1
  254. package/dist/components/features/form/components/form-radio-group.d.ts +0 -1
  255. package/dist/components/features/form/components/form-root.d.ts +0 -1
  256. package/dist/components/features/form/components/form-select.d.ts +0 -1
  257. package/dist/components/features/form/components/form-submit.d.ts +0 -1
  258. package/dist/components/features/form/components/form-switch.d.ts +0 -1
  259. package/dist/components/features/form/components/form-textarea.d.ts +0 -1
  260. package/dist/components/features/form/components/form-time-picker.d.ts +0 -1
  261. package/dist/components/features/form/components/form-transfer.d.ts +0 -1
  262. package/dist/components/features/form/components/form-when.d.ts +0 -1
  263. package/dist/components/features/form/components/index.d.ts +0 -1
  264. package/dist/components/features/form/components/stepper/form-step.d.ts +0 -1
  265. package/dist/components/features/form/components/stepper/form-stepper.d.ts +0 -1
  266. package/dist/components/features/form/components/stepper/index.d.ts +0 -1
  267. package/dist/components/features/form/components/stepper/stepper-controls.d.ts +0 -1
  268. package/dist/components/features/form/components/stepper/stepper-navigation.d.ts +0 -1
  269. package/dist/components/features/form/context/field-context.d.ts +0 -1
  270. package/dist/components/features/form/context/form-context.d.ts +0 -1
  271. package/dist/components/features/form/context/index.d.ts +0 -1
  272. package/dist/components/features/form/hooks/index.d.ts +0 -1
  273. package/dist/components/features/form/hooks/use-display-touched.d.ts +0 -1
  274. package/dist/components/features/form/hooks/use-field-context.d.ts +0 -1
  275. package/dist/components/features/form/hooks/use-field.d.ts +0 -1
  276. package/dist/components/features/form/hooks/use-form-context.d.ts +0 -1
  277. package/dist/components/features/form/hooks/use-form-state.d.ts +0 -1
  278. package/dist/components/features/form/hooks/use-stepper.d.ts +0 -1
  279. package/dist/components/features/form/hooks/use-watch.d.ts +0 -1
  280. package/dist/components/features/form/index.d.ts +0 -1
  281. package/dist/components/features/form/stepper/index.d.ts +0 -1
  282. package/dist/components/features/form/types/context.d.ts +18 -0
  283. package/dist/components/features/form/types/core.d.ts +20 -0
  284. package/dist/components/features/form/types/dialog.d.ts +83 -0
  285. package/dist/components/features/form/types/field.d.ts +113 -0
  286. package/dist/components/features/form/types/index.d.ts +9 -651
  287. package/dist/components/features/form/types/inputs.d.ts +157 -0
  288. package/dist/components/features/form/types/root.d.ts +86 -0
  289. package/dist/components/features/form/types/stepper.d.ts +98 -0
  290. package/dist/components/features/form/types/telemetry.d.ts +44 -0
  291. package/dist/components/features/form/utils/get-field-constraints.d.ts +0 -1
  292. package/dist/components/features/form/utils/get-schema-defaults.d.ts +0 -1
  293. package/dist/components/features/form/utils/zod-helpers.d.ts +0 -1
  294. package/dist/components/features/grid/components/col.d.ts +0 -1
  295. package/dist/components/features/grid/components/index.d.ts +0 -1
  296. package/dist/components/features/grid/components/row.d.ts +0 -1
  297. package/dist/components/features/grid/constants/grid.constants.d.ts +0 -1
  298. package/dist/components/features/grid/index.d.ts +0 -1
  299. package/dist/components/features/grid/types/grid.types.d.ts +0 -1
  300. package/dist/components/features/grid/utils/responsive.d.ts +9 -1
  301. package/dist/components/features/grouped-table/components/grouped-skeleton.d.ts +0 -1
  302. package/dist/components/features/grouped-table/components/grouped-toolbar.d.ts +0 -1
  303. package/dist/components/features/grouped-table/grouped-table.d.ts +0 -1
  304. package/dist/components/features/grouped-table/index.d.ts +0 -1
  305. package/dist/components/features/grouped-table/lib/bucket-rows.d.ts +0 -1
  306. package/dist/components/features/grouped-table/lib/compose-columns.d.ts +3 -4
  307. package/dist/components/features/grouped-table/lib/sort-rows.d.ts +0 -1
  308. package/dist/components/features/grouped-table/lib/use-controllable-state.d.ts +7 -6
  309. package/dist/components/features/grouped-table/types.d.ts +3 -4
  310. package/dist/components/features/grouped-table/use-grouped-expansion.d.ts +0 -1
  311. package/dist/components/features/index.d.ts +6 -1
  312. package/dist/components/features/input-number/index.d.ts +0 -1
  313. package/dist/components/features/input-number/input-number.d.ts +0 -1
  314. package/dist/components/features/input-with-addons/index.d.ts +0 -1
  315. package/dist/components/features/input-with-addons/input-with-addons.d.ts +0 -1
  316. package/dist/components/features/loader-overlay/index.d.ts +0 -1
  317. package/dist/components/features/loader-overlay/loader-overlay.d.ts +6 -5
  318. package/dist/components/features/logo/index.d.ts +0 -1
  319. package/dist/components/features/logo/logo-flat.d.ts +0 -1
  320. package/dist/components/features/logo/logo-icon.d.ts +0 -1
  321. package/dist/components/features/logo/logo-stacked.d.ts +0 -1
  322. package/dist/components/features/logo/logo-text.d.ts +0 -1
  323. package/dist/components/features/logo/logo.d.ts +0 -1
  324. package/dist/components/features/logo/logo.styles.d.ts +0 -1
  325. package/dist/components/features/logo/themed/index.d.ts +0 -1
  326. package/dist/components/features/logo/themed/logo-themed.d.ts +0 -1
  327. package/dist/components/features/more-actions/action-row.d.ts +0 -1
  328. package/dist/components/features/more-actions/index.d.ts +0 -1
  329. package/dist/components/features/more-actions/more-actions.d.ts +14 -3
  330. package/dist/components/features/more-actions/types.d.ts +0 -1
  331. package/dist/components/features/multi-select/index.d.ts +0 -1
  332. package/dist/components/features/multi-select/multi-select-options.d.ts +21 -0
  333. package/dist/components/features/multi-select/multi-select-shared.d.ts +21 -0
  334. package/dist/components/features/multi-select/multi-select.d.ts +6 -19
  335. package/dist/components/features/multi-select/selected-badge-list.d.ts +29 -0
  336. package/dist/components/features/nprogress/index.d.ts +0 -1
  337. package/dist/components/features/page-title/index.d.ts +0 -1
  338. package/dist/components/features/page-title/page-title.d.ts +0 -1
  339. package/dist/components/features/picker/components/calendar.d.ts +0 -1
  340. package/dist/components/features/picker/components/content.d.ts +0 -1
  341. package/dist/components/features/picker/components/context.d.ts +0 -1
  342. package/dist/components/features/picker/components/footer.d.ts +0 -1
  343. package/dist/components/features/picker/components/index.d.ts +0 -1
  344. package/dist/components/features/picker/components/presets.d.ts +0 -1
  345. package/dist/components/features/picker/components/root.d.ts +0 -1
  346. package/dist/components/features/picker/components/time-input-field.d.ts +0 -1
  347. package/dist/components/features/picker/components/time-input.d.ts +0 -1
  348. package/dist/components/features/picker/components/timezone-indicator.d.ts +0 -1
  349. package/dist/components/features/picker/components/timezone-select.d.ts +0 -1
  350. package/dist/components/features/picker/components/trigger.d.ts +0 -1
  351. package/dist/components/features/picker/hooks/index.d.ts +0 -1
  352. package/dist/components/features/picker/hooks/use-keyboard-shortcuts.d.ts +16 -10
  353. package/dist/components/features/picker/hooks/use-picker-state.d.ts +0 -1
  354. package/dist/components/features/picker/hooks/use-presets.d.ts +0 -1
  355. package/dist/components/features/picker/hooks/use-time-slots.d.ts +0 -1
  356. package/dist/components/features/picker/index.d.ts +0 -1
  357. package/dist/components/features/picker/internal/use-deprecation-warning.d.ts +1 -9
  358. package/dist/components/features/picker/presets/defaults.d.ts +0 -1
  359. package/dist/components/features/picker/presets/index.d.ts +0 -1
  360. package/dist/components/features/picker/types.d.ts +0 -1
  361. package/dist/components/features/picker/utils/commit.d.ts +0 -1
  362. package/dist/components/features/picker/utils/compare.d.ts +0 -1
  363. package/dist/components/features/picker/utils/format-value.d.ts +0 -1
  364. package/dist/components/features/picker/utils/format.d.ts +0 -1
  365. package/dist/components/features/picker/utils/index.d.ts +0 -1
  366. package/dist/components/features/picker/utils/range.d.ts +0 -1
  367. package/dist/components/features/picker/utils/timezone.d.ts +7 -3
  368. package/dist/components/features/picker/wrappers/date-picker.d.ts +0 -1
  369. package/dist/components/features/picker/wrappers/date-range-picker.d.ts +0 -1
  370. package/dist/components/features/picker/wrappers/date-range-time-picker.d.ts +0 -1
  371. package/dist/components/features/picker/wrappers/date-time-picker.d.ts +0 -1
  372. package/dist/components/features/picker/wrappers/date-time-range-picker.d.ts +0 -1
  373. package/dist/components/features/picker/wrappers/index.d.ts +0 -1
  374. package/dist/components/features/picker/wrappers/internal/default-footer.d.ts +0 -1
  375. package/dist/components/features/picker/wrappers/time-picker.d.ts +0 -1
  376. package/dist/components/features/picker/wrappers/time-range-picker.d.ts +0 -1
  377. package/dist/components/features/picker/wrappers/types.d.ts +0 -1
  378. package/dist/components/features/rich-text-editor/index.d.ts +0 -1
  379. package/dist/components/features/rich-text-editor/rich-text-content.d.ts +0 -1
  380. package/dist/components/features/rich-text-editor/rich-text-editor.d.ts +0 -1
  381. package/dist/components/features/rich-text-editor/toolbar/bold-toolbar.d.ts +0 -1
  382. package/dist/components/features/rich-text-editor/toolbar/italic-toolbar.d.ts +0 -1
  383. package/dist/components/features/rich-text-editor/toolbar/link-toolbar.d.ts +0 -1
  384. package/dist/components/features/rich-text-editor/toolbar/strike-toolbar.d.ts +0 -1
  385. package/dist/components/features/rich-text-editor/toolbar/toolbar-button.d.ts +0 -1
  386. package/dist/components/features/rich-text-editor/toolbar/toolbar.d.ts +0 -1
  387. package/dist/components/features/rich-text-editor/toolbar/underline-toolbar.d.ts +0 -1
  388. package/dist/components/features/rich-text-editor/types.d.ts +0 -1
  389. package/dist/components/features/stepper/index.d.ts +0 -1
  390. package/dist/components/features/stepper/parts.d.ts +25 -0
  391. package/dist/components/features/stepper/stepper.d.ts +0 -7
  392. package/dist/components/features/stepper/utils.d.ts +8 -0
  393. package/dist/components/features/tag-input/index.d.ts +0 -1
  394. package/dist/components/features/tag-input/parse.d.ts +56 -0
  395. package/dist/components/features/tag-input/tag-input-field.d.ts +16 -0
  396. package/dist/components/features/tag-input/tag-input.d.ts +3 -3
  397. package/dist/components/features/tag-input/use-tags-input.d.ts +38 -0
  398. package/dist/components/features/task-queue/constants.d.ts +0 -1
  399. package/dist/components/features/task-queue/core/index.d.ts +0 -1
  400. package/dist/components/features/task-queue/core/task-panel-actions.d.ts +0 -1
  401. package/dist/components/features/task-queue/core/task-panel-counter.d.ts +0 -1
  402. package/dist/components/features/task-queue/core/task-panel-header.d.ts +0 -1
  403. package/dist/components/features/task-queue/core/task-panel-item.d.ts +0 -1
  404. package/dist/components/features/task-queue/core/task-panel.d.ts +0 -1
  405. package/dist/components/features/task-queue/core/task-queue-dropdown.d.ts +0 -1
  406. package/dist/components/features/task-queue/core/task-queue-trigger.d.ts +0 -1
  407. package/dist/components/features/task-queue/core/task-summary-dialog.d.ts +0 -1
  408. package/dist/components/features/task-queue/engine/executor.d.ts +2 -3
  409. package/dist/components/features/task-queue/engine/index.d.ts +0 -1
  410. package/dist/components/features/task-queue/engine/queue.d.ts +52 -8
  411. package/dist/components/features/task-queue/engine/storage/detect-storage.d.ts +0 -1
  412. package/dist/components/features/task-queue/engine/storage/index.d.ts +0 -1
  413. package/dist/components/features/task-queue/engine/storage/local-storage.d.ts +9 -5
  414. package/dist/components/features/task-queue/engine/storage/memory-storage.d.ts +0 -1
  415. package/dist/components/features/task-queue/engine/storage/redis-storage.d.ts +11 -6
  416. package/dist/components/features/task-queue/engine/storage/serialize.d.ts +12 -0
  417. package/dist/components/features/task-queue/engine/storage/storage.d.ts +0 -1
  418. package/dist/components/features/task-queue/engine/summary-store.d.ts +17 -0
  419. package/dist/components/features/task-queue/hooks/index.d.ts +0 -1
  420. package/dist/components/features/task-queue/hooks/use-task-queue.d.ts +0 -1
  421. package/dist/components/features/task-queue/hooks/use-task-scope.d.ts +0 -1
  422. package/dist/components/features/task-queue/index.d.ts +0 -1
  423. package/dist/components/features/task-queue/provider/index.d.ts +0 -1
  424. package/dist/components/features/task-queue/provider/task-queue-provider.d.ts +0 -1
  425. package/dist/components/features/task-queue/types.d.ts +66 -25
  426. package/dist/components/features/task-queue/utils/index.d.ts +0 -1
  427. package/dist/components/features/time-picker/index.d.ts +0 -1
  428. package/dist/components/features/time-picker/time-picker.d.ts +0 -1
  429. package/dist/components/features/time-picker/types.d.ts +0 -1
  430. package/dist/components/features/time-range-picker/components/absolute-range-panel.d.ts +0 -1
  431. package/dist/components/features/time-range-picker/components/index.d.ts +0 -1
  432. package/dist/components/features/time-range-picker/components/quick-ranges-panel.d.ts +0 -1
  433. package/dist/components/features/time-range-picker/components/timezone-selector.d.ts +0 -1
  434. package/dist/components/features/time-range-picker/index.d.ts +0 -1
  435. package/dist/components/features/time-range-picker/presets.d.ts +0 -1
  436. package/dist/components/features/time-range-picker/time-range-picker.d.ts +0 -1
  437. package/dist/components/features/time-range-picker/types.d.ts +0 -1
  438. package/dist/components/features/time-range-picker/utils/format-display.d.ts +0 -1
  439. package/dist/components/features/time-range-picker/utils/index.d.ts +0 -1
  440. package/dist/components/features/time-range-picker/utils/timezone.d.ts +2 -15
  441. package/dist/components/features/time-range-picker/utils/to-api-format.d.ts +0 -1
  442. package/dist/components/features/toast/headless-toast.d.ts +7 -2
  443. package/dist/components/features/toast/index.d.ts +0 -1
  444. package/dist/components/features/toast/toast.d.ts +0 -1
  445. package/dist/components/features/toast/toaster.d.ts +0 -1
  446. package/dist/components/features/toast/types.d.ts +7 -3
  447. package/dist/components/features/toast/use-toast.d.ts +0 -1
  448. package/dist/components/features/transfer/components/index.d.ts +0 -1
  449. package/dist/components/features/transfer/components/transfer-group.d.ts +0 -1
  450. package/dist/components/features/transfer/components/transfer-item.d.ts +0 -1
  451. package/dist/components/features/transfer/components/transfer-panel.d.ts +0 -1
  452. package/dist/components/features/transfer/components/transfer-search.d.ts +0 -1
  453. package/dist/components/features/transfer/hooks/use-transfer-state.d.ts +0 -1
  454. package/dist/components/features/transfer/index.d.ts +0 -1
  455. package/dist/components/features/transfer/transfer.d.ts +0 -1
  456. package/dist/components/features/transfer/types.d.ts +0 -1
  457. package/dist/components/icons/close.icon.d.ts +0 -1
  458. package/dist/components/icons/icon-wrapper.d.ts +0 -1
  459. package/dist/components/icons/index.d.ts +0 -1
  460. package/dist/components/icons/spinner.icon.d.ts +0 -1
  461. package/dist/components/index.d.ts +0 -1
  462. package/dist/components/themes/client-only.d.ts +0 -1
  463. package/dist/components/themes/index.d.ts +0 -1
  464. package/dist/components/themes/script.d.ts +0 -1
  465. package/dist/components/themes/theme-script.d.ts +0 -1
  466. package/dist/components/themes/theme.provider.d.ts +0 -1
  467. package/dist/components/themes/types.d.ts +0 -1
  468. package/dist/components/toast.d.ts +0 -1
  469. package/dist/data-table/index.mjs +1 -1
  470. package/dist/{data-table-BTIxzB7O.mjs → data-table-CfeovSJV.mjs} +35 -42
  471. package/dist/date-picker/index.mjs +3 -2
  472. package/dist/date-time-picker/index.mjs +1 -1
  473. package/dist/{date-time-picker-BWrS9k-c.mjs → date-time-picker-BbtA6JJJ.mjs} +2 -2
  474. package/dist/dialog/index.mjs +1 -1
  475. package/dist/{dialog-Lg6iiEcv.mjs → dialog-CmkrpaYy.mjs} +20 -20
  476. package/dist/{dialog-ZmYSe4-x.mjs → dialog-N2pkQIc4.mjs} +4 -4
  477. package/dist/dropdown/index.mjs +1 -109
  478. package/dist/dropdown-B0znsOlu.mjs +110 -0
  479. package/dist/dropzone/index.mjs +1 -1
  480. package/dist/{dropzone-ZJhq4Ec9.mjs → dropzone-C_vA4q0u.mjs} +11 -11
  481. package/dist/empty-content/index.mjs +1 -1
  482. package/dist/{empty-content-C4Z0QVfg.mjs → empty-content-BpS0PONb.mjs} +7 -7
  483. package/dist/exports/map.d.ts +0 -1
  484. package/dist/form/adapters/conform/index.mjs +73 -17
  485. package/dist/form/adapters/rhf/index.mjs +24 -9
  486. package/dist/form/index.mjs +1 -1
  487. package/dist/form/stepper/index.mjs +34 -15
  488. package/dist/{form-JM1Rqh6g.mjs → form-2pTdgtYr.mjs} +57 -41
  489. package/dist/grid/index.mjs +1 -1
  490. package/dist/grouped-table/index.mjs +1 -351
  491. package/dist/grouped-table-CPF8Jijv.mjs +342 -0
  492. package/dist/hooks/index.d.ts +1 -1
  493. package/dist/hooks/index.mjs +3 -2
  494. package/dist/hooks/use-breakpoint.d.ts +0 -1
  495. package/dist/hooks/use-copy-to-clipboard.d.ts +0 -1
  496. package/dist/hooks/use-debounce.d.ts +0 -1
  497. package/dist/hooks/use-debounced-search-input.d.ts +16 -0
  498. package/dist/hooks/use-theme.d.ts +0 -1
  499. package/dist/icons/index.mjs +2 -2
  500. package/dist/index.d.ts +0 -1
  501. package/dist/index.mjs +75 -66
  502. package/dist/input/index.mjs +1 -1
  503. package/dist/{input-BJBQxFli.mjs → input-DR-XbgpD.mjs} +2 -2
  504. package/dist/input-group/index.mjs +1 -1
  505. package/dist/{input-group-Cr_BOTbn.mjs → input-group-DieA8aBt.mjs} +3 -3
  506. package/dist/{input-DBzgl-pN.mjs → input-j4tbmYYz.mjs} +2 -2
  507. package/dist/input-number/index.mjs +1 -1
  508. package/dist/{input-number-BSRdHUdT.mjs → input-number-TXmW-X9o.mjs} +38 -23
  509. package/dist/input-with-addons/index.mjs +1 -1
  510. package/dist/label/index.mjs +1 -1
  511. package/dist/{label-CiVSCTp9.mjs → label-Bk6FXsju.mjs} +4 -5
  512. package/dist/{map-_GaPwJUi.mjs → layers-CGp0ceSG.mjs} +438 -385
  513. package/dist/loader-overlay/index.mjs +1 -1
  514. package/dist/{loader-overlay-CumsP4Xh.mjs → loader-overlay-DD94azZX.mjs} +3 -3
  515. package/dist/logo/index.mjs +2 -2
  516. package/dist/logo/themed/index.mjs +2 -2
  517. package/dist/{logo-BhV6hnzH.mjs → logo-C3FxD7jb.mjs} +1 -1
  518. package/dist/{logo-text-DMp3dH-h.mjs → logo-text-Dpm5O6Kg.mjs} +1 -1
  519. package/dist/map/index.mjs +1 -1
  520. package/dist/mobile-sheet/index.mjs +2 -2
  521. package/dist/{mobile-sheet-Cx8B89jB.mjs → mobile-sheet-D9L-JOee.mjs} +40 -5
  522. package/dist/more-actions/index.mjs +2 -2
  523. package/dist/{more-actions-DJKEXHy7.mjs → more-actions-G9hs0rpJ.mjs} +9 -6
  524. package/dist/multi-select/index.mjs +1 -1
  525. package/dist/multi-select-DIWTdi0i.mjs +310 -0
  526. package/dist/page-title/index.mjs +1 -1
  527. package/dist/{page-title-Wj1lF0BP.mjs → page-title-ipRWEOeM.mjs} +1 -1
  528. package/dist/picker/index.mjs +1 -272
  529. package/dist/picker-CRUSdzpo.mjs +1945 -0
  530. package/dist/popover/index.mjs +33 -1
  531. package/dist/radio-group/index.mjs +1 -1
  532. package/dist/{radio-group-kjKWAwdr.mjs → radio-group-LduBVTnh.mjs} +3 -4
  533. package/dist/responsive-dropdown/index.mjs +1 -1
  534. package/dist/responsive-dropdown-fCmduKaz.mjs +35 -0
  535. package/dist/responsive-popover/index.mjs +1 -1
  536. package/dist/responsive-popover-DJZgXWIE.mjs +42 -0
  537. package/dist/rich-text-editor/index.mjs +1 -1
  538. package/dist/{rich-text-editor-B3i5csUE.mjs → rich-text-editor-DRIwcleW.mjs} +89 -48
  539. package/dist/select/index.mjs +1 -1
  540. package/dist/{select-DNnPDWSW.mjs → select-DCU44UO6.mjs} +2 -2
  541. package/dist/{select-B8z0c7UD.mjs → select-daE2Nn0Z.mjs} +20 -20
  542. package/dist/separator/index.mjs +1 -1
  543. package/dist/{separator-BONRV3sq.mjs → separator-vbPD_WFQ.mjs} +2 -2
  544. package/dist/sheet/index.mjs +2 -2
  545. package/dist/{sheet-C6-WAHk2.mjs → sheet-BZViad2U.mjs} +3 -3
  546. package/dist/{sheet-CIdmO-NE.mjs → sheet-DXCZyMHI.mjs} +18 -18
  547. package/dist/sidebar/index.mjs +1 -1
  548. package/dist/{sidebar-DPQbMC3f.mjs → sidebar-Df6Po0K8.mjs} +184 -177
  549. package/dist/skeleton/index.mjs +25 -1
  550. package/dist/{spinner.icon-DSvVwPjx.mjs → spinner.icon-BYUMQ8H-.mjs} +1 -1
  551. package/dist/stepper/index.mjs +1 -1
  552. package/dist/{stepper-DV9FH5Cy.mjs → stepper-DJkYcilu.mjs} +175 -156
  553. package/dist/styles/root.css +4 -0
  554. package/dist/styles/shadcn/shadcn.css +212 -212
  555. package/dist/styles/shadcn/style.css +2 -0
  556. package/dist/switch/index.mjs +1 -1
  557. package/dist/switch-DPHr3TcN.mjs +28 -0
  558. package/dist/table/index.mjs +65 -1
  559. package/dist/tabs/index.mjs +1 -1
  560. package/dist/tag-input/index.mjs +1 -1
  561. package/dist/tag-input-CSav22U5.mjs +433 -0
  562. package/dist/task-queue/index.mjs +1 -1
  563. package/dist/{task-queue-dropdown-CGLFsgM1.mjs → task-queue-dropdown-DfdGiyfA.mjs} +451 -147
  564. package/dist/textarea/index.mjs +1 -1
  565. package/dist/{textarea-BzQxX-oL.mjs → textarea-B6YhjFVC.mjs} +1 -1
  566. package/dist/theme/index.mjs +1 -1
  567. package/dist/{themes-CAmRnjUM.mjs → themes-BK5atywZ.mjs} +61 -23
  568. package/dist/time-picker/index.mjs +1 -1
  569. package/dist/{time-picker-B52KLKGe.mjs → time-picker-Bgt6R1fU.mjs} +2 -2
  570. package/dist/{to-api-format-tidT5mxa.mjs → to-api-format-CgKtSuWO.mjs} +68 -94
  571. package/dist/toast/index.mjs +2 -2
  572. package/dist/{toast-qSJgeN-g.mjs → toast-BUPlDkN3.mjs} +47 -10
  573. package/dist/tooltip/index.mjs +1 -1
  574. package/dist/{tooltip-BqrOCH8l.mjs → tooltip-BhatUaar.mjs} +10 -11
  575. package/dist/transfer/index.mjs +1 -1
  576. package/dist/{transfer-Dp6tTYeN.mjs → transfer-CEq9AhL7.mjs} +13 -6
  577. package/dist/{types-B7jxIH5I.mjs → types-DrN0rei5.mjs} +48 -22
  578. package/dist/typography/index.mjs +1 -1
  579. package/dist/{typography-Bcq9Tkwi.mjs → typography-BXIBvq3-.mjs} +1 -1
  580. package/dist/use-controllable-state-Dna7u3r9.mjs +26 -0
  581. package/dist/{use-copy-to-clipboard-BOCe6C1j.mjs → use-copy-to-clipboard-DZDq_85T.mjs} +8 -2
  582. package/dist/use-debounced-search-input-yu_F0QBt.mjs +37 -0
  583. package/dist/{use-deprecation-warning-BjKiPZ98.mjs → use-deprecation-warning-DXrGc0jX.mjs} +1 -1
  584. package/dist/{use-display-touched-B31H1Ziq.mjs → use-display-touched-CMEEv7aT.mjs} +2 -27
  585. package/dist/{use-option-picker-Cqzcr5f2.mjs → use-option-picker-CV-9CyBV.mjs} +46 -24
  586. package/dist/{toast-0C5jhuto.mjs → use-toast-Bpq0yJIT.mjs} +10 -3
  587. package/dist/utils/cn.d.ts +1 -3
  588. package/dist/utils/index.d.ts +0 -1
  589. package/dist/utils/index.mjs +2 -2
  590. package/dist/utils/timezone.d.ts +0 -1
  591. package/dist/zod-helpers-YEhVo2S-.mjs +27 -0
  592. package/package.json +48 -45
  593. package/dist/_shadcn/hooks/use-mobile.d.ts.map +0 -1
  594. package/dist/_shadcn/hooks/use-theme.d.ts.map +0 -1
  595. package/dist/_shadcn/lib/utils.d.ts.map +0 -1
  596. package/dist/_shadcn/ui/alert.d.ts.map +0 -1
  597. package/dist/_shadcn/ui/avatar.d.ts.map +0 -1
  598. package/dist/_shadcn/ui/badge.d.ts.map +0 -1
  599. package/dist/_shadcn/ui/breadcrumb.d.ts.map +0 -1
  600. package/dist/_shadcn/ui/button-group.d.ts.map +0 -1
  601. package/dist/_shadcn/ui/button.d.ts.map +0 -1
  602. package/dist/_shadcn/ui/card.d.ts.map +0 -1
  603. package/dist/_shadcn/ui/chart.d.ts.map +0 -1
  604. package/dist/_shadcn/ui/checkbox.d.ts.map +0 -1
  605. package/dist/_shadcn/ui/collapsible.d.ts.map +0 -1
  606. package/dist/_shadcn/ui/command.d.ts.map +0 -1
  607. package/dist/_shadcn/ui/dialog.d.ts.map +0 -1
  608. package/dist/_shadcn/ui/dropdown-menu.d.ts.map +0 -1
  609. package/dist/_shadcn/ui/hover-card.d.ts.map +0 -1
  610. package/dist/_shadcn/ui/input-group.d.ts.map +0 -1
  611. package/dist/_shadcn/ui/input.d.ts.map +0 -1
  612. package/dist/_shadcn/ui/label.d.ts.map +0 -1
  613. package/dist/_shadcn/ui/map-leaflet-imports.d.ts.map +0 -1
  614. package/dist/_shadcn/ui/map.d.ts.map +0 -1
  615. package/dist/_shadcn/ui/place-autocomplete.d.ts.map +0 -1
  616. package/dist/_shadcn/ui/popover.d.ts.map +0 -1
  617. package/dist/_shadcn/ui/radio-group.d.ts.map +0 -1
  618. package/dist/_shadcn/ui/select.d.ts.map +0 -1
  619. package/dist/_shadcn/ui/separator.d.ts.map +0 -1
  620. package/dist/_shadcn/ui/sheet.d.ts.map +0 -1
  621. package/dist/_shadcn/ui/skeleton.d.ts.map +0 -1
  622. package/dist/_shadcn/ui/sonner.d.ts.map +0 -1
  623. package/dist/_shadcn/ui/spinner.d.ts.map +0 -1
  624. package/dist/_shadcn/ui/switch.d.ts.map +0 -1
  625. package/dist/_shadcn/ui/table.d.ts.map +0 -1
  626. package/dist/_shadcn/ui/tabs.d.ts.map +0 -1
  627. package/dist/_shadcn/ui/textarea.d.ts.map +0 -1
  628. package/dist/_shadcn/ui/tooltip.d.ts.map +0 -1
  629. package/dist/_shadcn/ui/visuallyhidden.d.ts.map +0 -1
  630. package/dist/app-navigation-D2EAiTGO.mjs +0 -482
  631. package/dist/avatar-DbTh2mk4.mjs +0 -28
  632. package/dist/calendar-BQF1XDjq.mjs +0 -77
  633. package/dist/calendar-ByqfbFGx.mjs +0 -111
  634. package/dist/cn-dlASUkDY.mjs +0 -8
  635. package/dist/collapsible-BeCdkxTJ.mjs +0 -7
  636. package/dist/components/base/alert/alert.d.ts.map +0 -1
  637. package/dist/components/base/alert/index.d.ts.map +0 -1
  638. package/dist/components/base/avatar/index.d.ts.map +0 -1
  639. package/dist/components/base/badge/badge.d.ts.map +0 -1
  640. package/dist/components/base/badge/index.d.ts.map +0 -1
  641. package/dist/components/base/breadcrumb/index.d.ts.map +0 -1
  642. package/dist/components/base/button/button.d.ts.map +0 -1
  643. package/dist/components/base/button/index.d.ts.map +0 -1
  644. package/dist/components/base/button/link-button.d.ts.map +0 -1
  645. package/dist/components/base/button-group/index.d.ts.map +0 -1
  646. package/dist/components/base/calendar/calendar.d.ts.map +0 -1
  647. package/dist/components/base/calendar/index.d.ts.map +0 -1
  648. package/dist/components/base/card/card.d.ts.map +0 -1
  649. package/dist/components/base/card/index.d.ts.map +0 -1
  650. package/dist/components/base/chart/index.d.ts.map +0 -1
  651. package/dist/components/base/checkbox/checkbox.d.ts.map +0 -1
  652. package/dist/components/base/checkbox/index.d.ts.map +0 -1
  653. package/dist/components/base/collapsible/index.d.ts.map +0 -1
  654. package/dist/components/base/command/index.d.ts.map +0 -1
  655. package/dist/components/base/date-picker/index.d.ts.map +0 -1
  656. package/dist/components/base/date-picker/types.d.ts.map +0 -1
  657. package/dist/components/base/date-picker/use-date-constraints.d.ts.map +0 -1
  658. package/dist/components/base/dialog/dialog.d.ts.map +0 -1
  659. package/dist/components/base/dialog/index.d.ts.map +0 -1
  660. package/dist/components/base/hover-card/index.d.ts.map +0 -1
  661. package/dist/components/base/index.d.ts.map +0 -1
  662. package/dist/components/base/input/index.d.ts.map +0 -1
  663. package/dist/components/base/input/input.d.ts.map +0 -1
  664. package/dist/components/base/input-group/index.d.ts.map +0 -1
  665. package/dist/components/base/label/index.d.ts.map +0 -1
  666. package/dist/components/base/label/label.d.ts.map +0 -1
  667. package/dist/components/base/map/index.d.ts.map +0 -1
  668. package/dist/components/base/mobile-sheet/context.d.ts.map +0 -1
  669. package/dist/components/base/mobile-sheet/index.d.ts.map +0 -1
  670. package/dist/components/base/mobile-sheet/mobile-sheet.d.ts.map +0 -1
  671. package/dist/components/base/option-picker/index.d.ts.map +0 -1
  672. package/dist/components/base/option-picker/option-list.d.ts.map +0 -1
  673. package/dist/components/base/option-picker/types.d.ts.map +0 -1
  674. package/dist/components/base/option-picker/use-option-picker.d.ts.map +0 -1
  675. package/dist/components/base/place-autocomplete/index.d.ts.map +0 -1
  676. package/dist/components/base/popover/index.d.ts.map +0 -1
  677. package/dist/components/base/radio-group/index.d.ts.map +0 -1
  678. package/dist/components/base/radio-group/radio-group.d.ts.map +0 -1
  679. package/dist/components/base/responsive-dropdown/index.d.ts.map +0 -1
  680. package/dist/components/base/responsive-dropdown/responsive-dropdown.d.ts.map +0 -1
  681. package/dist/components/base/responsive-popover/index.d.ts.map +0 -1
  682. package/dist/components/base/responsive-popover/responsive-popover.d.ts.map +0 -1
  683. package/dist/components/base/select/index.d.ts.map +0 -1
  684. package/dist/components/base/select/select.d.ts.map +0 -1
  685. package/dist/components/base/separator/index.d.ts.map +0 -1
  686. package/dist/components/base/sheet/index.d.ts.map +0 -1
  687. package/dist/components/base/sheet/sheet.d.ts.map +0 -1
  688. package/dist/components/base/sidebar/index.d.ts.map +0 -1
  689. package/dist/components/base/sidebar/sidebar.d.ts.map +0 -1
  690. package/dist/components/base/skeleton/index.d.ts.map +0 -1
  691. package/dist/components/base/skeleton/skeleton.d.ts.map +0 -1
  692. package/dist/components/base/spinner/index.d.ts.map +0 -1
  693. package/dist/components/base/switch/index.d.ts.map +0 -1
  694. package/dist/components/base/switch/switch.d.ts.map +0 -1
  695. package/dist/components/base/table/index.d.ts.map +0 -1
  696. package/dist/components/base/tabs/index.d.ts.map +0 -1
  697. package/dist/components/base/tabs/tabs.d.ts.map +0 -1
  698. package/dist/components/base/textarea/index.d.ts.map +0 -1
  699. package/dist/components/base/textarea/textarea.d.ts.map +0 -1
  700. package/dist/components/base/tooltip/index.d.ts.map +0 -1
  701. package/dist/components/base/tooltip/tooltip.d.ts.map +0 -1
  702. package/dist/components/base/typography/index.d.ts.map +0 -1
  703. package/dist/components/base/typography/typography.d.ts.map +0 -1
  704. package/dist/components/base/visuallyhidden/index.d.ts.map +0 -1
  705. package/dist/components/features/app-navigation/app-navigation.d.ts.map +0 -1
  706. package/dist/components/features/app-navigation/index.d.ts.map +0 -1
  707. package/dist/components/features/app-navigation/nav-menu.d.ts.map +0 -1
  708. package/dist/components/features/autocomplete/autocomplete.d.ts.map +0 -1
  709. package/dist/components/features/autocomplete/autocomplete.types.d.ts.map +0 -1
  710. package/dist/components/features/autocomplete/index.d.ts.map +0 -1
  711. package/dist/components/features/autocomplete/trigger.d.ts.map +0 -1
  712. package/dist/components/features/autosearch/autosearch.d.ts.map +0 -1
  713. package/dist/components/features/autosearch/autosearch.types.d.ts.map +0 -1
  714. package/dist/components/features/autosearch/index.d.ts.map +0 -1
  715. package/dist/components/features/avatar-stack/avatar-stack.d.ts.map +0 -1
  716. package/dist/components/features/avatar-stack/index.d.ts.map +0 -1
  717. package/dist/components/features/calendar-date-picker/calendar-date-picker.d.ts.map +0 -1
  718. package/dist/components/features/calendar-date-picker/calendar-header.d.ts +0 -13
  719. package/dist/components/features/calendar-date-picker/calendar-header.d.ts.map +0 -1
  720. package/dist/components/features/calendar-date-picker/calendar-presets.d.ts +0 -9
  721. package/dist/components/features/calendar-date-picker/calendar-presets.d.ts.map +0 -1
  722. package/dist/components/features/calendar-date-picker/date-trigger.d.ts +0 -24
  723. package/dist/components/features/calendar-date-picker/date-trigger.d.ts.map +0 -1
  724. package/dist/components/features/calendar-date-picker/index.d.ts.map +0 -1
  725. package/dist/components/features/calendar-date-picker/types.d.ts.map +0 -1
  726. package/dist/components/features/calendar-date-picker/use-calendar-date-picker.d.ts +0 -48
  727. package/dist/components/features/calendar-date-picker/use-calendar-date-picker.d.ts.map +0 -1
  728. package/dist/components/features/code-editor/code-editor-tabs.d.ts.map +0 -1
  729. package/dist/components/features/code-editor/code-editor.d.ts.map +0 -1
  730. package/dist/components/features/code-editor/index.d.ts.map +0 -1
  731. package/dist/components/features/code-editor/lib/editor.d.ts.map +0 -1
  732. package/dist/components/features/code-editor/types.d.ts.map +0 -1
  733. package/dist/components/features/data-table/adapters/nuqs-adapter.d.ts.map +0 -1
  734. package/dist/components/features/data-table/columns/selection-column.d.ts.map +0 -1
  735. package/dist/components/features/data-table/components/active-filters.d.ts.map +0 -1
  736. package/dist/components/features/data-table/components/bulk-actions.d.ts.map +0 -1
  737. package/dist/components/features/data-table/components/column-header.d.ts.map +0 -1
  738. package/dist/components/features/data-table/components/content.d.ts.map +0 -1
  739. package/dist/components/features/data-table/components/inline-content.d.ts.map +0 -1
  740. package/dist/components/features/data-table/components/loading.d.ts.map +0 -1
  741. package/dist/components/features/data-table/components/pagination.d.ts.map +0 -1
  742. package/dist/components/features/data-table/components/row-actions.d.ts.map +0 -1
  743. package/dist/components/features/data-table/components/search.d.ts.map +0 -1
  744. package/dist/components/features/data-table/constants.d.ts.map +0 -1
  745. package/dist/components/features/data-table/core/client-provider.d.ts.map +0 -1
  746. package/dist/components/features/data-table/core/data-table-context.d.ts.map +0 -1
  747. package/dist/components/features/data-table/core/filter-engine.d.ts.map +0 -1
  748. package/dist/components/features/data-table/core/server-provider.d.ts.map +0 -1
  749. package/dist/components/features/data-table/core/store.d.ts.map +0 -1
  750. package/dist/components/features/data-table/data-table.d.ts.map +0 -1
  751. package/dist/components/features/data-table/filters/checkbox-filter.d.ts.map +0 -1
  752. package/dist/components/features/data-table/filters/date-picker-filter.d.ts.map +0 -1
  753. package/dist/components/features/data-table/filters/select-filter.d.ts.map +0 -1
  754. package/dist/components/features/data-table/hooks/index.d.ts.map +0 -1
  755. package/dist/components/features/data-table/hooks/use-data-table-client.d.ts.map +0 -1
  756. package/dist/components/features/data-table/hooks/use-data-table-server.d.ts.map +0 -1
  757. package/dist/components/features/data-table/hooks/use-selectors.d.ts.map +0 -1
  758. package/dist/components/features/data-table/index.d.ts.map +0 -1
  759. package/dist/components/features/data-table/types.d.ts.map +0 -1
  760. package/dist/components/features/date-picker/index.d.ts.map +0 -1
  761. package/dist/components/features/date-time-picker/date-time-picker.d.ts.map +0 -1
  762. package/dist/components/features/date-time-picker/index.d.ts.map +0 -1
  763. package/dist/components/features/date-time-picker/types.d.ts.map +0 -1
  764. package/dist/components/features/date-time-picker/utils/format.d.ts.map +0 -1
  765. package/dist/components/features/date-time-picker/utils/index.d.ts.map +0 -1
  766. package/dist/components/features/date-time-picker/utils/timezone.d.ts.map +0 -1
  767. package/dist/components/features/dropdown/dropdown.d.ts.map +0 -1
  768. package/dist/components/features/dropdown/index.d.ts.map +0 -1
  769. package/dist/components/features/dropzone/dropzone.d.ts.map +0 -1
  770. package/dist/components/features/dropzone/index.d.ts.map +0 -1
  771. package/dist/components/features/empty-content/empty-content.d.ts.map +0 -1
  772. package/dist/components/features/empty-content/index.d.ts.map +0 -1
  773. package/dist/components/features/file-input-button/file-input-button.d.ts.map +0 -1
  774. package/dist/components/features/file-input-button/index.d.ts.map +0 -1
  775. package/dist/components/features/form/adapter-context.d.ts.map +0 -1
  776. package/dist/components/features/form/adapter-types.d.ts.map +0 -1
  777. package/dist/components/features/form/adapters/conform/conform-adapter.d.ts.map +0 -1
  778. package/dist/components/features/form/adapters/conform/conform-provider.d.ts.map +0 -1
  779. package/dist/components/features/form/adapters/conform/index.d.ts.map +0 -1
  780. package/dist/components/features/form/adapters/rhf/index.d.ts.map +0 -1
  781. package/dist/components/features/form/adapters/rhf/rhf-adapter.d.ts.map +0 -1
  782. package/dist/components/features/form/adapters/rhf/rhf-provider.d.ts.map +0 -1
  783. package/dist/components/features/form/components/form-autocomplete.d.ts.map +0 -1
  784. package/dist/components/features/form/components/form-autosearch.d.ts.map +0 -1
  785. package/dist/components/features/form/components/form-button.d.ts.map +0 -1
  786. package/dist/components/features/form/components/form-checkbox.d.ts.map +0 -1
  787. package/dist/components/features/form/components/form-combobox.d.ts.map +0 -1
  788. package/dist/components/features/form/components/form-copy-box.d.ts.map +0 -1
  789. package/dist/components/features/form/components/form-custom.d.ts.map +0 -1
  790. package/dist/components/features/form/components/form-date-picker.d.ts.map +0 -1
  791. package/dist/components/features/form/components/form-date-time-picker.d.ts.map +0 -1
  792. package/dist/components/features/form/components/form-description.d.ts.map +0 -1
  793. package/dist/components/features/form/components/form-dialog.d.ts.map +0 -1
  794. package/dist/components/features/form/components/form-error.d.ts.map +0 -1
  795. package/dist/components/features/form/components/form-field-array.d.ts.map +0 -1
  796. package/dist/components/features/form/components/form-field.d.ts.map +0 -1
  797. package/dist/components/features/form/components/form-input-group.d.ts.map +0 -1
  798. package/dist/components/features/form/components/form-input.d.ts.map +0 -1
  799. package/dist/components/features/form/components/form-radio-group.d.ts.map +0 -1
  800. package/dist/components/features/form/components/form-root.d.ts.map +0 -1
  801. package/dist/components/features/form/components/form-select.d.ts.map +0 -1
  802. package/dist/components/features/form/components/form-submit.d.ts.map +0 -1
  803. package/dist/components/features/form/components/form-switch.d.ts.map +0 -1
  804. package/dist/components/features/form/components/form-textarea.d.ts.map +0 -1
  805. package/dist/components/features/form/components/form-time-picker.d.ts.map +0 -1
  806. package/dist/components/features/form/components/form-transfer.d.ts.map +0 -1
  807. package/dist/components/features/form/components/form-when.d.ts.map +0 -1
  808. package/dist/components/features/form/components/index.d.ts.map +0 -1
  809. package/dist/components/features/form/components/stepper/form-step.d.ts.map +0 -1
  810. package/dist/components/features/form/components/stepper/form-stepper.d.ts.map +0 -1
  811. package/dist/components/features/form/components/stepper/index.d.ts.map +0 -1
  812. package/dist/components/features/form/components/stepper/stepper-controls.d.ts.map +0 -1
  813. package/dist/components/features/form/components/stepper/stepper-navigation.d.ts.map +0 -1
  814. package/dist/components/features/form/context/field-context.d.ts.map +0 -1
  815. package/dist/components/features/form/context/form-context.d.ts.map +0 -1
  816. package/dist/components/features/form/context/index.d.ts.map +0 -1
  817. package/dist/components/features/form/hooks/index.d.ts.map +0 -1
  818. package/dist/components/features/form/hooks/use-display-touched.d.ts.map +0 -1
  819. package/dist/components/features/form/hooks/use-field-context.d.ts.map +0 -1
  820. package/dist/components/features/form/hooks/use-field.d.ts.map +0 -1
  821. package/dist/components/features/form/hooks/use-form-context.d.ts.map +0 -1
  822. package/dist/components/features/form/hooks/use-form-state.d.ts.map +0 -1
  823. package/dist/components/features/form/hooks/use-stepper.d.ts.map +0 -1
  824. package/dist/components/features/form/hooks/use-watch.d.ts.map +0 -1
  825. package/dist/components/features/form/index.d.ts.map +0 -1
  826. package/dist/components/features/form/stepper/index.d.ts.map +0 -1
  827. package/dist/components/features/form/types/index.d.ts.map +0 -1
  828. package/dist/components/features/form/utils/get-field-constraints.d.ts.map +0 -1
  829. package/dist/components/features/form/utils/get-schema-defaults.d.ts.map +0 -1
  830. package/dist/components/features/form/utils/zod-helpers.d.ts.map +0 -1
  831. package/dist/components/features/grid/components/col.d.ts.map +0 -1
  832. package/dist/components/features/grid/components/index.d.ts.map +0 -1
  833. package/dist/components/features/grid/components/row.d.ts.map +0 -1
  834. package/dist/components/features/grid/constants/grid.constants.d.ts.map +0 -1
  835. package/dist/components/features/grid/index.d.ts.map +0 -1
  836. package/dist/components/features/grid/types/grid.types.d.ts.map +0 -1
  837. package/dist/components/features/grid/utils/responsive.d.ts.map +0 -1
  838. package/dist/components/features/grouped-table/components/grouped-skeleton.d.ts.map +0 -1
  839. package/dist/components/features/grouped-table/components/grouped-toolbar.d.ts.map +0 -1
  840. package/dist/components/features/grouped-table/grouped-table.d.ts.map +0 -1
  841. package/dist/components/features/grouped-table/index.d.ts.map +0 -1
  842. package/dist/components/features/grouped-table/lib/bucket-rows.d.ts.map +0 -1
  843. package/dist/components/features/grouped-table/lib/compose-columns.d.ts.map +0 -1
  844. package/dist/components/features/grouped-table/lib/sort-rows.d.ts.map +0 -1
  845. package/dist/components/features/grouped-table/lib/use-controllable-state.d.ts.map +0 -1
  846. package/dist/components/features/grouped-table/types.d.ts.map +0 -1
  847. package/dist/components/features/grouped-table/use-grouped-expansion.d.ts.map +0 -1
  848. package/dist/components/features/index.d.ts.map +0 -1
  849. package/dist/components/features/input-number/index.d.ts.map +0 -1
  850. package/dist/components/features/input-number/input-number.d.ts.map +0 -1
  851. package/dist/components/features/input-with-addons/index.d.ts.map +0 -1
  852. package/dist/components/features/input-with-addons/input-with-addons.d.ts.map +0 -1
  853. package/dist/components/features/loader-overlay/index.d.ts.map +0 -1
  854. package/dist/components/features/loader-overlay/loader-overlay.d.ts.map +0 -1
  855. package/dist/components/features/logo/index.d.ts.map +0 -1
  856. package/dist/components/features/logo/logo-flat.d.ts.map +0 -1
  857. package/dist/components/features/logo/logo-icon.d.ts.map +0 -1
  858. package/dist/components/features/logo/logo-stacked.d.ts.map +0 -1
  859. package/dist/components/features/logo/logo-text.d.ts.map +0 -1
  860. package/dist/components/features/logo/logo.d.ts.map +0 -1
  861. package/dist/components/features/logo/logo.styles.d.ts.map +0 -1
  862. package/dist/components/features/logo/themed/index.d.ts.map +0 -1
  863. package/dist/components/features/logo/themed/logo-themed.d.ts.map +0 -1
  864. package/dist/components/features/more-actions/action-row.d.ts.map +0 -1
  865. package/dist/components/features/more-actions/index.d.ts.map +0 -1
  866. package/dist/components/features/more-actions/more-actions.d.ts.map +0 -1
  867. package/dist/components/features/more-actions/types.d.ts.map +0 -1
  868. package/dist/components/features/multi-select/index.d.ts.map +0 -1
  869. package/dist/components/features/multi-select/multi-select.d.ts.map +0 -1
  870. package/dist/components/features/nprogress/index.d.ts.map +0 -1
  871. package/dist/components/features/page-title/index.d.ts.map +0 -1
  872. package/dist/components/features/page-title/page-title.d.ts.map +0 -1
  873. package/dist/components/features/picker/components/calendar.d.ts.map +0 -1
  874. package/dist/components/features/picker/components/content.d.ts.map +0 -1
  875. package/dist/components/features/picker/components/context.d.ts.map +0 -1
  876. package/dist/components/features/picker/components/footer.d.ts.map +0 -1
  877. package/dist/components/features/picker/components/index.d.ts.map +0 -1
  878. package/dist/components/features/picker/components/presets.d.ts.map +0 -1
  879. package/dist/components/features/picker/components/root.d.ts.map +0 -1
  880. package/dist/components/features/picker/components/time-input-field.d.ts.map +0 -1
  881. package/dist/components/features/picker/components/time-input.d.ts.map +0 -1
  882. package/dist/components/features/picker/components/timezone-indicator.d.ts.map +0 -1
  883. package/dist/components/features/picker/components/timezone-select.d.ts.map +0 -1
  884. package/dist/components/features/picker/components/trigger.d.ts.map +0 -1
  885. package/dist/components/features/picker/hooks/index.d.ts.map +0 -1
  886. package/dist/components/features/picker/hooks/use-keyboard-shortcuts.d.ts.map +0 -1
  887. package/dist/components/features/picker/hooks/use-picker-state.d.ts.map +0 -1
  888. package/dist/components/features/picker/hooks/use-presets.d.ts.map +0 -1
  889. package/dist/components/features/picker/hooks/use-time-slots.d.ts.map +0 -1
  890. package/dist/components/features/picker/index.d.ts.map +0 -1
  891. package/dist/components/features/picker/internal/use-deprecation-warning.d.ts.map +0 -1
  892. package/dist/components/features/picker/presets/defaults.d.ts.map +0 -1
  893. package/dist/components/features/picker/presets/index.d.ts.map +0 -1
  894. package/dist/components/features/picker/types.d.ts.map +0 -1
  895. package/dist/components/features/picker/utils/commit.d.ts.map +0 -1
  896. package/dist/components/features/picker/utils/compare.d.ts.map +0 -1
  897. package/dist/components/features/picker/utils/format-value.d.ts.map +0 -1
  898. package/dist/components/features/picker/utils/format.d.ts.map +0 -1
  899. package/dist/components/features/picker/utils/index.d.ts.map +0 -1
  900. package/dist/components/features/picker/utils/range.d.ts.map +0 -1
  901. package/dist/components/features/picker/utils/timezone.d.ts.map +0 -1
  902. package/dist/components/features/picker/wrappers/date-picker.d.ts.map +0 -1
  903. package/dist/components/features/picker/wrappers/date-range-picker.d.ts.map +0 -1
  904. package/dist/components/features/picker/wrappers/date-range-time-picker.d.ts.map +0 -1
  905. package/dist/components/features/picker/wrappers/date-time-picker.d.ts.map +0 -1
  906. package/dist/components/features/picker/wrappers/date-time-range-picker.d.ts.map +0 -1
  907. package/dist/components/features/picker/wrappers/index.d.ts.map +0 -1
  908. package/dist/components/features/picker/wrappers/internal/default-footer.d.ts.map +0 -1
  909. package/dist/components/features/picker/wrappers/time-picker.d.ts.map +0 -1
  910. package/dist/components/features/picker/wrappers/time-range-picker.d.ts.map +0 -1
  911. package/dist/components/features/picker/wrappers/types.d.ts.map +0 -1
  912. package/dist/components/features/rich-text-editor/index.d.ts.map +0 -1
  913. package/dist/components/features/rich-text-editor/rich-text-content.d.ts.map +0 -1
  914. package/dist/components/features/rich-text-editor/rich-text-editor.d.ts.map +0 -1
  915. package/dist/components/features/rich-text-editor/toolbar/bold-toolbar.d.ts.map +0 -1
  916. package/dist/components/features/rich-text-editor/toolbar/italic-toolbar.d.ts.map +0 -1
  917. package/dist/components/features/rich-text-editor/toolbar/link-toolbar.d.ts.map +0 -1
  918. package/dist/components/features/rich-text-editor/toolbar/strike-toolbar.d.ts.map +0 -1
  919. package/dist/components/features/rich-text-editor/toolbar/toolbar-button.d.ts.map +0 -1
  920. package/dist/components/features/rich-text-editor/toolbar/toolbar.d.ts.map +0 -1
  921. package/dist/components/features/rich-text-editor/toolbar/underline-toolbar.d.ts.map +0 -1
  922. package/dist/components/features/rich-text-editor/types.d.ts.map +0 -1
  923. package/dist/components/features/stepper/index.d.ts.map +0 -1
  924. package/dist/components/features/stepper/stepper.d.ts.map +0 -1
  925. package/dist/components/features/tag-input/index.d.ts.map +0 -1
  926. package/dist/components/features/tag-input/tag-input.d.ts.map +0 -1
  927. package/dist/components/features/task-queue/constants.d.ts.map +0 -1
  928. package/dist/components/features/task-queue/core/index.d.ts.map +0 -1
  929. package/dist/components/features/task-queue/core/task-panel-actions.d.ts.map +0 -1
  930. package/dist/components/features/task-queue/core/task-panel-counter.d.ts.map +0 -1
  931. package/dist/components/features/task-queue/core/task-panel-header.d.ts.map +0 -1
  932. package/dist/components/features/task-queue/core/task-panel-item.d.ts.map +0 -1
  933. package/dist/components/features/task-queue/core/task-panel.d.ts.map +0 -1
  934. package/dist/components/features/task-queue/core/task-queue-dropdown.d.ts.map +0 -1
  935. package/dist/components/features/task-queue/core/task-queue-trigger.d.ts.map +0 -1
  936. package/dist/components/features/task-queue/core/task-summary-dialog.d.ts.map +0 -1
  937. package/dist/components/features/task-queue/engine/executor.d.ts.map +0 -1
  938. package/dist/components/features/task-queue/engine/index.d.ts.map +0 -1
  939. package/dist/components/features/task-queue/engine/queue.d.ts.map +0 -1
  940. package/dist/components/features/task-queue/engine/storage/detect-storage.d.ts.map +0 -1
  941. package/dist/components/features/task-queue/engine/storage/index.d.ts.map +0 -1
  942. package/dist/components/features/task-queue/engine/storage/local-storage.d.ts.map +0 -1
  943. package/dist/components/features/task-queue/engine/storage/memory-storage.d.ts.map +0 -1
  944. package/dist/components/features/task-queue/engine/storage/redis-storage.d.ts.map +0 -1
  945. package/dist/components/features/task-queue/engine/storage/storage.d.ts.map +0 -1
  946. package/dist/components/features/task-queue/hooks/index.d.ts.map +0 -1
  947. package/dist/components/features/task-queue/hooks/use-task-queue.d.ts.map +0 -1
  948. package/dist/components/features/task-queue/hooks/use-task-scope.d.ts.map +0 -1
  949. package/dist/components/features/task-queue/index.d.ts.map +0 -1
  950. package/dist/components/features/task-queue/provider/index.d.ts.map +0 -1
  951. package/dist/components/features/task-queue/provider/task-queue-provider.d.ts.map +0 -1
  952. package/dist/components/features/task-queue/types.d.ts.map +0 -1
  953. package/dist/components/features/task-queue/utils/index.d.ts.map +0 -1
  954. package/dist/components/features/time-picker/index.d.ts.map +0 -1
  955. package/dist/components/features/time-picker/time-picker.d.ts.map +0 -1
  956. package/dist/components/features/time-picker/types.d.ts.map +0 -1
  957. package/dist/components/features/time-picker/use-time-slots.d.ts +0 -10
  958. package/dist/components/features/time-picker/use-time-slots.d.ts.map +0 -1
  959. package/dist/components/features/time-range-picker/components/absolute-range-panel.d.ts.map +0 -1
  960. package/dist/components/features/time-range-picker/components/index.d.ts.map +0 -1
  961. package/dist/components/features/time-range-picker/components/quick-ranges-panel.d.ts.map +0 -1
  962. package/dist/components/features/time-range-picker/components/timezone-selector.d.ts.map +0 -1
  963. package/dist/components/features/time-range-picker/index.d.ts.map +0 -1
  964. package/dist/components/features/time-range-picker/presets.d.ts.map +0 -1
  965. package/dist/components/features/time-range-picker/time-range-picker.d.ts.map +0 -1
  966. package/dist/components/features/time-range-picker/types.d.ts.map +0 -1
  967. package/dist/components/features/time-range-picker/utils/format-display.d.ts.map +0 -1
  968. package/dist/components/features/time-range-picker/utils/index.d.ts.map +0 -1
  969. package/dist/components/features/time-range-picker/utils/timezone.d.ts.map +0 -1
  970. package/dist/components/features/time-range-picker/utils/to-api-format.d.ts.map +0 -1
  971. package/dist/components/features/toast/headless-toast.d.ts.map +0 -1
  972. package/dist/components/features/toast/index.d.ts.map +0 -1
  973. package/dist/components/features/toast/toast.d.ts.map +0 -1
  974. package/dist/components/features/toast/toaster.d.ts.map +0 -1
  975. package/dist/components/features/toast/types.d.ts.map +0 -1
  976. package/dist/components/features/toast/use-toast.d.ts.map +0 -1
  977. package/dist/components/features/transfer/components/index.d.ts.map +0 -1
  978. package/dist/components/features/transfer/components/transfer-group.d.ts.map +0 -1
  979. package/dist/components/features/transfer/components/transfer-item.d.ts.map +0 -1
  980. package/dist/components/features/transfer/components/transfer-panel.d.ts.map +0 -1
  981. package/dist/components/features/transfer/components/transfer-search.d.ts.map +0 -1
  982. package/dist/components/features/transfer/hooks/use-transfer-dnd.d.ts +0 -26
  983. package/dist/components/features/transfer/hooks/use-transfer-dnd.d.ts.map +0 -1
  984. package/dist/components/features/transfer/hooks/use-transfer-state.d.ts.map +0 -1
  985. package/dist/components/features/transfer/index.d.ts.map +0 -1
  986. package/dist/components/features/transfer/transfer.d.ts.map +0 -1
  987. package/dist/components/features/transfer/types.d.ts.map +0 -1
  988. package/dist/components/icons/close.icon.d.ts.map +0 -1
  989. package/dist/components/icons/icon-wrapper.d.ts.map +0 -1
  990. package/dist/components/icons/index.d.ts.map +0 -1
  991. package/dist/components/icons/spinner.icon.d.ts.map +0 -1
  992. package/dist/components/index.d.ts.map +0 -1
  993. package/dist/components/themes/client-only.d.ts.map +0 -1
  994. package/dist/components/themes/index.d.ts.map +0 -1
  995. package/dist/components/themes/script.d.ts.map +0 -1
  996. package/dist/components/themes/theme-script.d.ts.map +0 -1
  997. package/dist/components/themes/theme.provider.d.ts.map +0 -1
  998. package/dist/components/themes/types.d.ts.map +0 -1
  999. package/dist/components/toast.d.ts.map +0 -1
  1000. package/dist/date-range-picker-CuU5mdxt.mjs +0 -77
  1001. package/dist/date-time-picker-BczLnnE6.mjs +0 -109
  1002. package/dist/date-time-range-picker-DHItep1U.mjs +0 -82
  1003. package/dist/default-footer-DzYzX_OT.mjs +0 -1037
  1004. package/dist/exports/map.d.ts.map +0 -1
  1005. package/dist/hooks/index.d.ts.map +0 -1
  1006. package/dist/hooks/use-breakpoint.d.ts.map +0 -1
  1007. package/dist/hooks/use-copy-to-clipboard.d.ts.map +0 -1
  1008. package/dist/hooks/use-debounce.d.ts.map +0 -1
  1009. package/dist/hooks/use-theme.d.ts.map +0 -1
  1010. package/dist/index.d.ts.map +0 -1
  1011. package/dist/multi-select-C9ocz07C.mjs +0 -235
  1012. package/dist/popover-CBXjbpUR.mjs +0 -34
  1013. package/dist/responsive-dropdown-BhvBzT_1.mjs +0 -53
  1014. package/dist/responsive-popover-CVFh3i33.mjs +0 -61
  1015. package/dist/skeleton-CGU89HPB.mjs +0 -26
  1016. package/dist/switch-Doft2t6-.mjs +0 -29
  1017. package/dist/table-BR3mwU8X.mjs +0 -66
  1018. package/dist/tag-input-DZJUc1hL.mjs +0 -297
  1019. package/dist/time-input-DI8l2oeN.mjs +0 -196
  1020. package/dist/time-picker-Dm7jOOcX.mjs +0 -45
  1021. package/dist/timezone-indicator-B4GVkwmg.mjs +0 -27
  1022. package/dist/utils/cn.d.ts.map +0 -1
  1023. package/dist/utils/index.d.ts.map +0 -1
  1024. package/dist/utils/timezone.d.ts.map +0 -1
  1025. package/dist/{utils-BAytYO8b.mjs → utils-U06Eu2KT.mjs} +1 -1
@@ -1,122 +1,15 @@
1
1
  import { t as cn } from "./utils-Bu32wN-x.mjs";
2
- import { t as ButtonGroup } from "./button-group-B5s-1BCV.mjs";
2
+ import { t as ButtonGroup } from "./button-group-DFrTH4L8.mjs";
3
3
  import { t as Button } from "./button-CsdF61EI.mjs";
4
- import { i as CommandGroup, o as CommandItem, r as CommandEmpty, s as CommandList, t as Command } from "./command-B1sx-XVY.mjs";
5
- import { i as InputGroupInput, n as InputGroupAddon, t as InputGroup } from "./input-group-Cr_BOTbn.mjs";
4
+ import { i as CommandGroup, o as CommandItem, r as CommandEmpty, s as CommandList, t as Command } from "./command-C0aGIYnQ.mjs";
5
+ import { i as InputGroupInput, n as InputGroupAddon, t as InputGroup } from "./input-group-DieA8aBt.mjs";
6
6
  import { t as Spinner } from "./spinner-C5Xv-i2C.mjs";
7
7
  import { CheckIcon, ChevronRightIcon, CircleIcon, LayersIcon, LoaderCircleIcon, MapPinIcon, MaximizeIcon, MinimizeIcon, MinusIcon, NavigationIcon, PenLineIcon, PentagonIcon, PlusIcon, SearchIcon, SquareIcon, Trash2Icon, Undo2Icon, WaypointsIcon } from "lucide-react";
8
8
  import * as React from "react";
9
9
  import { Suspense, createContext, lazy, useContext, useEffect, useRef, useState } from "react";
10
10
  import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
11
- import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
12
11
  import { renderToString } from "react-dom/server.browser";
13
- //#region ../shadcn/hooks/use-theme.ts
14
- /**
15
- * Lightweight theme detection hook for shadcn components.
16
- * Detects dark mode via the `dark` class on <html> (Tailwind convention)
17
- * or falls back to prefers-color-scheme media query.
18
- */
19
- function useTheme() {
20
- const [resolvedTheme, setResolvedTheme] = React.useState("light");
21
- React.useEffect(() => {
22
- const detect = () => {
23
- if (document.documentElement.classList.contains("dark")) return "dark";
24
- if (window.matchMedia("(prefers-color-scheme: dark)").matches) return "dark";
25
- return "light";
26
- };
27
- setResolvedTheme(detect());
28
- const observer = new MutationObserver(() => setResolvedTheme(detect()));
29
- observer.observe(document.documentElement, {
30
- attributes: true,
31
- attributeFilter: ["class"]
32
- });
33
- const mql = window.matchMedia("(prefers-color-scheme: dark)");
34
- const onChange = () => setResolvedTheme(detect());
35
- mql.addEventListener("change", onChange);
36
- return () => {
37
- observer.disconnect();
38
- mql.removeEventListener("change", onChange);
39
- };
40
- }, []);
41
- return { resolvedTheme };
42
- }
43
- //#endregion
44
- //#region ../shadcn/ui/dropdown-menu.tsx
45
- /**
46
- * Vanilla shadcn/ui DropdownMenu Component
47
- * Pure shadcn dropdown without Datum customizations
48
- * For Datum-specific features (destructive MenuItem), import from @/modules/datum-ui
49
- */
50
- const DropdownMenu = DropdownMenuPrimitive.Root;
51
- const DropdownMenuTrigger = DropdownMenuPrimitive.Trigger;
52
- const DropdownMenuRadioGroup = DropdownMenuPrimitive.RadioGroup;
53
- const DropdownMenuSubTrigger = React.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ jsxs(DropdownMenuPrimitive.SubTrigger, {
54
- ref,
55
- className: cn("focus:bg-accent data-[state=open]:bg-accent flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-none select-none [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0", inset && "pl-8", className),
56
- ...props,
57
- children: [children, /* @__PURE__ */ jsx(ChevronRightIcon, { className: "ml-auto" })]
58
- }));
59
- DropdownMenuSubTrigger.displayName = DropdownMenuPrimitive.SubTrigger.displayName;
60
- const DropdownMenuSubContent = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(DropdownMenuPrimitive.SubContent, {
61
- ref,
62
- className: cn("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[8rem] overflow-hidden rounded-md border p-1 shadow-lg", className),
63
- ...props
64
- }));
65
- DropdownMenuSubContent.displayName = DropdownMenuPrimitive.SubContent.displayName;
66
- const DropdownMenuContent = React.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsx(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ jsx(DropdownMenuPrimitive.Content, {
67
- ref,
68
- sideOffset,
69
- className: cn("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[8rem] overflow-hidden rounded-md border p-1 shadow-md", className),
70
- ...props
71
- }) }));
72
- DropdownMenuContent.displayName = DropdownMenuPrimitive.Content.displayName;
73
- const DropdownMenuItem = React.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx(DropdownMenuPrimitive.Item, {
74
- ref,
75
- className: cn("focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm transition-colors outline-none select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0", inset && "pl-8", className),
76
- ...props
77
- }));
78
- DropdownMenuItem.displayName = DropdownMenuPrimitive.Item.displayName;
79
- const DropdownMenuCheckboxItem = React.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ jsxs(DropdownMenuPrimitive.CheckboxItem, {
80
- ref,
81
- className: cn("focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center rounded-sm py-1.5 pr-2 pl-8 text-sm transition-colors outline-none select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50", className),
82
- checked,
83
- ...props,
84
- children: [/* @__PURE__ */ jsx("span", {
85
- className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center",
86
- children: /* @__PURE__ */ jsx(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx(CheckIcon, { className: "h-4 w-4" }) })
87
- }), children]
88
- }));
89
- DropdownMenuCheckboxItem.displayName = DropdownMenuPrimitive.CheckboxItem.displayName;
90
- const DropdownMenuRadioItem = React.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs(DropdownMenuPrimitive.RadioItem, {
91
- ref,
92
- className: cn("focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center rounded-sm py-1.5 pr-2 pl-8 text-sm transition-colors outline-none select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50", className),
93
- ...props,
94
- children: [/* @__PURE__ */ jsx("span", {
95
- className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center",
96
- children: /* @__PURE__ */ jsx(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx(CircleIcon, { className: "h-2 w-2 fill-current" }) })
97
- }), children]
98
- }));
99
- DropdownMenuRadioItem.displayName = DropdownMenuPrimitive.RadioItem.displayName;
100
- const DropdownMenuLabel = React.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx(DropdownMenuPrimitive.Label, {
101
- ref,
102
- className: cn("px-2 py-1.5 text-sm font-semibold", inset && "pl-8", className),
103
- ...props
104
- }));
105
- DropdownMenuLabel.displayName = DropdownMenuPrimitive.Label.displayName;
106
- const DropdownMenuSeparator = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(DropdownMenuPrimitive.Separator, {
107
- ref,
108
- className: cn("bg-muted -mx-1 my-1 h-px", className),
109
- ...props
110
- }));
111
- DropdownMenuSeparator.displayName = DropdownMenuPrimitive.Separator.displayName;
112
- const DropdownMenuShortcut = ({ className, ...props }) => {
113
- return /* @__PURE__ */ jsx("span", {
114
- className: cn("ml-auto text-xs tracking-widest opacity-60", className),
115
- ...props
116
- });
117
- };
118
- DropdownMenuShortcut.displayName = "DropdownMenuShortcut";
119
- //#endregion
12
+ import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
120
13
  //#region ../shadcn/ui/place-autocomplete.tsx
121
14
  function formatAddress(properties) {
122
15
  const parts = [];
@@ -146,7 +39,7 @@ function buildSearchUrl({ query, bbox, lang, lat, limit, locationBiasScale, lon,
146
39
  function useDebounce(value, delay = 300) {
147
40
  const [debouncedValue, setDebouncedValue] = React.useState(value);
148
41
  React.useEffect(() => {
149
- const timer = setTimeout(() => setDebouncedValue(value), delay);
42
+ const timer = setTimeout(setDebouncedValue, delay, value);
150
43
  return () => clearTimeout(timer);
151
44
  }, [value, delay]);
152
45
  return debouncedValue;
@@ -157,11 +50,13 @@ function usePlaceSearch({ debounceMs, query, ...props }) {
157
50
  const [error, setError] = React.useState(null);
158
51
  const [hasSearched, setHasSearched] = React.useState(false);
159
52
  const debouncedQuery = useDebounce(query, debounceMs);
53
+ const bboxKey = props.bbox?.join(",");
160
54
  React.useEffect(() => {
161
55
  if (!debouncedQuery.trim()) {
162
56
  setResults([]);
163
57
  setIsLoading(false);
164
58
  setHasSearched(false);
59
+ setError(null);
165
60
  return;
166
61
  }
167
62
  const abortController = new AbortController();
@@ -177,11 +72,11 @@ function usePlaceSearch({ debounceMs, query, ...props }) {
177
72
  const response = await fetch(url, { signal: abortController.signal });
178
73
  if (!response.ok) throw new Error(`Photon API error: ${response.status} ${response.statusText}`);
179
74
  const data = await response.json();
180
- const addressOsmIds = /* @__PURE__ */ new Set();
75
+ const seenOsmKeys = /* @__PURE__ */ new Set();
181
76
  setResults(data.features.filter((feature) => {
182
- const id = feature.properties.osm_id;
183
- if (addressOsmIds.has(id)) return false;
184
- addressOsmIds.add(id);
77
+ const key = `${feature.properties.osm_type}:${feature.properties.osm_id}`;
78
+ if (seenOsmKeys.has(key)) return false;
79
+ seenOsmKeys.add(key);
185
80
  return true;
186
81
  }));
187
82
  } catch (err) {
@@ -199,7 +94,7 @@ function usePlaceSearch({ debounceMs, query, ...props }) {
199
94
  debouncedQuery,
200
95
  props.lang,
201
96
  props.limit,
202
- props.bbox,
97
+ bboxKey,
203
98
  props.lat,
204
99
  props.lon,
205
100
  props.zoom,
@@ -215,6 +110,8 @@ function usePlaceSearch({ debounceMs, query, ...props }) {
215
110
  function PlaceAutocomplete({ debounceMs = 300, lang, limit = 5, bbox, lat, lon, zoom, locationBiasScale, className, value: controlledValue, defaultValue = "", onChange: controlledOnChange, onPlaceSelect, onResultsChange, ...props }) {
216
111
  const [internalValue, setInternalValue] = React.useState(defaultValue);
217
112
  const [searchQuery, setSearchQuery] = React.useState("");
113
+ const [isOpen, setIsOpen] = React.useState(false);
114
+ const containerRef = React.useRef(null);
218
115
  const isControlled = controlledValue !== void 0;
219
116
  const displayValue = isControlled ? controlledValue : internalValue;
220
117
  const { results, isLoading, error, hasSearched } = usePlaceSearch({
@@ -231,14 +128,26 @@ function PlaceAutocomplete({ debounceMs = 300, lang, limit = 5, bbox, lat, lon,
231
128
  React.useEffect(() => {
232
129
  onResultsChange?.(results);
233
130
  }, [results, onResultsChange]);
131
+ React.useEffect(() => {
132
+ if (!isOpen) return;
133
+ function handlePointerDown(event) {
134
+ if (containerRef.current && !containerRef.current.contains(event.target)) setIsOpen(false);
135
+ }
136
+ document.addEventListener("mousedown", handlePointerDown);
137
+ return () => document.removeEventListener("mousedown", handlePointerDown);
138
+ }, [isOpen]);
234
139
  const hasNoResults = hasSearched && !isLoading && !error && results.length === 0;
235
- const showCommandList = error || hasNoResults || results.length > 0;
140
+ const showCommandList = isOpen && (Boolean(error) || hasNoResults || results.length > 0);
236
141
  return /* @__PURE__ */ jsx(Command, {
237
142
  className: cn("h-fit overflow-visible", className),
238
143
  shouldFilter: false,
239
144
  loop: true,
240
145
  children: /* @__PURE__ */ jsxs("div", {
146
+ ref: containerRef,
241
147
  className: "relative",
148
+ onKeyDown: (event) => {
149
+ if (event.key === "Escape") setIsOpen(false);
150
+ },
242
151
  children: [/* @__PURE__ */ jsxs(InputGroup, {
243
152
  className: cn("border-input! bg-popover! ring-0!", showCommandList && "rounded-b-none"),
244
153
  children: [
@@ -250,8 +159,10 @@ function PlaceAutocomplete({ debounceMs = 300, lang, limit = 5, bbox, lat, lon,
250
159
  const newValue = event.target.value;
251
160
  if (!isControlled) setInternalValue(newValue);
252
161
  setSearchQuery(newValue);
162
+ setIsOpen(true);
253
163
  controlledOnChange?.(newValue);
254
164
  },
165
+ onFocus: () => setIsOpen(true),
255
166
  ...props
256
167
  }),
257
168
  isLoading && /* @__PURE__ */ jsx(InputGroupAddon, {
@@ -263,20 +174,21 @@ function PlaceAutocomplete({ debounceMs = 300, lang, limit = 5, bbox, lat, lon,
263
174
  "data-state": showCommandList ? "open" : "closed",
264
175
  className: cn("bg-popover border-input absolute top-full right-0 left-0 rounded-b-md border border-t-0 shadow-md", "data-[state=open]:animate-in data-[state=closed]:animate-out", "data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0", "data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95", "data-[state=open]:slide-in-from-top-2 data-[state=closed]:slide-out-to-top-2"),
265
176
  children: [
266
- error && /* @__PURE__ */ jsxs(CommandEmpty, { children: ["Error: ", error.message] }),
177
+ error && /* @__PURE__ */ jsxs(CommandEmpty, { children: ["Error:", error.message] }),
267
178
  hasNoResults && /* @__PURE__ */ jsxs(CommandEmpty, { children: [
268
- "Can't find ",
179
+ "Can't find",
269
180
  displayValue,
270
181
  "."
271
182
  ] }),
272
183
  results.length > 0 && /* @__PURE__ */ jsx(CommandGroup, { children: results.map((feature) => {
273
184
  const formattedAddress = formatAddress(feature.properties);
274
185
  return /* @__PURE__ */ jsxs(CommandItem, {
275
- value: String(feature.properties.osm_id),
186
+ value: `${feature.properties.osm_type}:${feature.properties.osm_id}`,
276
187
  onSelect: () => {
277
188
  const formattedAddress = formatAddress(feature.properties);
278
189
  if (!isControlled) setInternalValue(formattedAddress);
279
190
  setSearchQuery("");
191
+ setIsOpen(false);
280
192
  controlledOnChange?.(formattedAddress);
281
193
  onPlaceSelect?.(feature);
282
194
  },
@@ -290,7 +202,7 @@ function PlaceAutocomplete({ debounceMs = 300, lang, limit = 5, bbox, lat, lon,
290
202
  children: formattedAddress
291
203
  })]
292
204
  })]
293
- }, feature.properties.osm_id);
205
+ }, `${feature.properties.osm_type}:${feature.properties.osm_id}`);
294
206
  }) })
295
207
  ]
296
208
  })]
@@ -298,13 +210,73 @@ function PlaceAutocomplete({ debounceMs = 300, lang, limit = 5, bbox, lat, lon,
298
210
  });
299
211
  }
300
212
  //#endregion
301
- //#region ../shadcn/ui/map.tsx
302
- let _useMap;
303
- let _useMapEvents;
304
- if (typeof window !== "undefined") import("./map-leaflet-imports-S3kx8Q-S.mjs").then((mod) => {
305
- _useMap = mod.useMap;
306
- _useMapEvents = mod.useMapEvents;
307
- });
213
+ //#region ../shadcn/ui/map/hooks.tsx
214
+ function useMapDrawHandleIcon() {
215
+ const { L } = useLeaflet();
216
+ if (!L) return null;
217
+ return L.divIcon({
218
+ iconAnchor: [8, 8],
219
+ html: renderToString(/* @__PURE__ */ jsx(CircleIcon, { className: "fill-primary stroke-primary size-4 transition-transform hover:scale-110" }))
220
+ });
221
+ }
222
+ function useLeaflet() {
223
+ const [L, setL] = useState(null);
224
+ const [LeafletDraw, setLeafletDraw] = useState(null);
225
+ useEffect(() => {
226
+ async function loadLeaflet() {
227
+ const leaflet = await import("leaflet");
228
+ const leafletFullscreen = await import("leaflet.fullscreen");
229
+ const leafletDraw = await import("leaflet-draw");
230
+ const L_object = leaflet.default;
231
+ if (L_object.Control && !L_object.Control.FullScreen) L_object.Control.FullScreen = leafletFullscreen.default || leafletFullscreen;
232
+ setLeafletDraw(leafletDraw);
233
+ setL(L_object);
234
+ }
235
+ if (L && LeafletDraw) return;
236
+ if (typeof window === "undefined") return;
237
+ loadLeaflet();
238
+ }, [L, LeafletDraw]);
239
+ return {
240
+ L,
241
+ LeafletDraw
242
+ };
243
+ }
244
+ function useDebounceLoadingState(delay = 200) {
245
+ const [isLoading, setIsLoading] = useState(false);
246
+ const [showLoading, setShowLoading] = useState(false);
247
+ const timeoutRef = useRef(null);
248
+ useEffect(() => {
249
+ if (isLoading) timeoutRef.current = setTimeout(() => {
250
+ setShowLoading(true);
251
+ }, delay);
252
+ else {
253
+ if (timeoutRef.current) {
254
+ clearTimeout(timeoutRef.current);
255
+ timeoutRef.current = null;
256
+ }
257
+ setShowLoading(false);
258
+ }
259
+ return () => {
260
+ if (timeoutRef.current) clearTimeout(timeoutRef.current);
261
+ };
262
+ }, [isLoading, delay]);
263
+ return [showLoading, setIsLoading];
264
+ }
265
+ //#endregion
266
+ //#region ../shadcn/ui/map/shared.ts
267
+ const holder = {};
268
+ function setLeafletHooks(map, mapEvents) {
269
+ holder.map = map;
270
+ holder.mapEvents = mapEvents;
271
+ }
272
+ function _useMap() {
273
+ return holder.map();
274
+ }
275
+ function _useMapEvents(handlers) {
276
+ return holder.mapEvents(handlers);
277
+ }
278
+ //#endregion
279
+ //#region ../shadcn/ui/map/lazy.tsx
308
280
  function createLazyComponent(factory) {
309
281
  const LazyComponent = lazy(factory);
310
282
  return (props) => {
@@ -316,7 +288,11 @@ function createLazyComponent(factory) {
316
288
  return /* @__PURE__ */ jsx(Suspense, { children: /* @__PURE__ */ jsx(LazyComponent, { ...props }) });
317
289
  };
318
290
  }
319
- const LeafletMapContainer = createLazyComponent(() => import("react-leaflet").then((mod) => ({ default: mod.MapContainer })));
291
+ const LeafletMapContainer = createLazyComponent(async () => {
292
+ const [reactLeaflet] = await Promise.all([import("react-leaflet"), import("./map-leaflet-imports-S3kx8Q-S.mjs")]);
293
+ setLeafletHooks(reactLeaflet.useMap, reactLeaflet.useMapEvents);
294
+ return { default: reactLeaflet.MapContainer };
295
+ });
320
296
  const LeafletTileLayer = createLazyComponent(() => import("react-leaflet").then((mod) => ({ default: mod.TileLayer })));
321
297
  const LeafletMarker = createLazyComponent(() => import("react-leaflet").then((mod) => ({ default: mod.Marker })));
322
298
  const LeafletPopup = createLazyComponent(() => import("react-leaflet").then((mod) => ({ default: mod.Popup })));
@@ -339,188 +315,41 @@ function Map({ zoom = 15, maxZoom = 18, className, ...props }) {
339
315
  ...props
340
316
  });
341
317
  }
342
- const MapLayersContext = createContext(null);
343
- function useMapLayersContext() {
344
- return useContext(MapLayersContext);
345
- }
346
- function MapTileLayer({ name = "Default", url, attribution, darkUrl, darkAttribution, ...props }) {
347
- const map = _useMap();
348
- if (map.attributionControl) map.attributionControl.setPrefix("");
349
- const context = useContext(MapLayersContext);
350
- const DEFAULT_URL = "https://{s}.basemaps.cartocdn.com/light_all/{z}/{x}/{y}.png";
351
- const DEFAULT_DARK_URL = "https://{s}.basemaps.cartocdn.com/dark_all/{z}/{x}/{y}.png";
352
- const { resolvedTheme } = useTheme();
353
- const resolvedUrl = resolvedTheme === "dark" ? darkUrl ?? url ?? DEFAULT_DARK_URL : url ?? DEFAULT_URL;
354
- const resolvedAttribution = resolvedTheme === "dark" && darkAttribution ? darkAttribution : attribution ?? "&copy; <a href=\"http://www.openstreetmap.org/copyright\">OpenStreetMap</a>, &copy; <a href=\"https://carto.com/attributions\">CARTO</a>";
355
- useEffect(() => {
356
- if (context) context.registerTileLayer({
357
- name,
358
- url: resolvedUrl,
359
- attribution: resolvedAttribution
360
- });
361
- }, [
362
- context,
363
- name,
364
- url,
365
- attribution
366
- ]);
367
- if (context && context.selectedTileLayer !== name) return null;
368
- return /* @__PURE__ */ jsx(LeafletTileLayer, {
369
- url: resolvedUrl,
370
- attribution: resolvedAttribution,
318
+ //#endregion
319
+ //#region ../shadcn/ui/map/primitives.tsx
320
+ function MapMarker({ icon = /* @__PURE__ */ jsx(MapPinIcon, { className: "size-6" }), iconAnchor = [12, 12], bgPos, popupAnchor, tooltipAnchor, ...props }) {
321
+ const { L } = useLeaflet();
322
+ if (!L) return null;
323
+ return /* @__PURE__ */ jsx(LeafletMarker, {
324
+ icon: L.divIcon({
325
+ html: renderToString(icon),
326
+ iconAnchor,
327
+ ...bgPos ? { bgPos } : {},
328
+ ...popupAnchor ? { popupAnchor } : {},
329
+ ...tooltipAnchor ? { tooltipAnchor } : {}
330
+ }),
331
+ riseOnHover: true,
371
332
  ...props
372
333
  });
373
334
  }
374
- function MapLayerGroup({ name, disabled, ...props }) {
375
- const context = useMapLayersContext();
376
- useEffect(() => {
377
- if (context) context.registerLayerGroup({
378
- name,
379
- disabled
380
- });
381
- }, [
382
- context,
383
- name,
384
- disabled
385
- ]);
386
- if (context && !context.activeLayerGroups.includes(name)) return null;
387
- return /* @__PURE__ */ jsx(LeafletLayerGroup, { ...props });
335
+ function MapMarkerClusterGroup({ polygonOptions = { className: "fill-foreground stroke-foreground stroke-2" }, spiderLegPolylineOptions = { className: "fill-foreground stroke-foreground stroke-2" }, icon, ...props }) {
336
+ const { L } = useLeaflet();
337
+ if (!L) return null;
338
+ return /* @__PURE__ */ jsx(LeafletMarkerClusterGroup, {
339
+ polygonOptions,
340
+ spiderLegPolylineOptions,
341
+ iconCreateFunction: icon ? (cluster) => {
342
+ const iconNode = icon(cluster.getChildCount());
343
+ return L.divIcon({ html: renderToString(iconNode) });
344
+ } : void 0,
345
+ ...props
346
+ });
388
347
  }
389
- function MapFeatureGroup({ name, disabled, ...props }) {
390
- const context = useMapLayersContext();
391
- useEffect(() => {
392
- if (context) context.registerLayerGroup({
393
- name,
394
- disabled
395
- });
396
- }, [
397
- context,
398
- name,
399
- disabled
400
- ]);
401
- if (context && !context.activeLayerGroups.includes(name)) return null;
402
- return /* @__PURE__ */ jsx(LeafletFeatureGroup, { ...props });
403
- }
404
- function MapLayers({ defaultTileLayer, defaultLayerGroups = [], ...props }) {
405
- const [tileLayers, setTileLayers] = useState([]);
406
- const [selectedTileLayer, setSelectedTileLayer] = useState(defaultTileLayer || "");
407
- const [layerGroups, setLayerGroups] = useState([]);
408
- const [activeLayerGroups, setActiveLayerGroups] = useState(defaultLayerGroups);
409
- function registerTileLayer(tileLayer) {
410
- setTileLayers((prevTileLayers) => {
411
- if (prevTileLayers.some((layer) => layer.name === tileLayer.name)) return prevTileLayers;
412
- return [...prevTileLayers, tileLayer];
413
- });
414
- }
415
- function registerLayerGroup(layerGroup) {
416
- setLayerGroups((prevLayerGroups) => {
417
- if (prevLayerGroups.some((group) => group.name === layerGroup.name)) return prevLayerGroups;
418
- return [...prevLayerGroups, layerGroup];
419
- });
420
- }
421
- useEffect(() => {
422
- if (defaultTileLayer && tileLayers.length > 0 && !tileLayers.some((tileLayer) => tileLayer.name === defaultTileLayer)) throw new Error(`Invalid defaultTileLayer "${defaultTileLayer}" provided to MapLayers. It must match a MapTileLayer's name prop.`);
423
- if (tileLayers.length > 0 && !selectedTileLayer) setSelectedTileLayer(defaultTileLayer && tileLayers.some((layer) => layer.name === defaultTileLayer) ? defaultTileLayer : tileLayers[0].name);
424
- if (defaultLayerGroups.length > 0 && layerGroups.length > 0 && defaultLayerGroups.some((name) => !layerGroups.some((group) => group.name === name))) throw new Error(`Invalid defaultLayerGroups value provided to MapLayers. All names must match a MapLayerGroup's name prop.`);
425
- }, [
426
- tileLayers,
427
- defaultTileLayer,
428
- selectedTileLayer,
429
- layerGroups,
430
- defaultLayerGroups
431
- ]);
432
- return /* @__PURE__ */ jsx(MapLayersContext.Provider, {
433
- value: {
434
- registerTileLayer,
435
- tileLayers,
436
- selectedTileLayer,
437
- setSelectedTileLayer,
438
- registerLayerGroup,
439
- layerGroups,
440
- activeLayerGroups,
441
- setActiveLayerGroups
442
- },
443
- ...props
444
- });
445
- }
446
- function MapLayersControl({ tileLayersLabel = "Map Type", layerGroupsLabel = "Layers", position = "top-1 right-1", className, ...props }) {
447
- const layersContext = useMapLayersContext();
448
- if (!layersContext) throw new Error("MapLayersControl must be used within MapLayers");
449
- const { tileLayers, selectedTileLayer, setSelectedTileLayer, layerGroups, activeLayerGroups, setActiveLayerGroups } = layersContext;
450
- if (tileLayers.length === 0 && layerGroups.length === 0) return null;
451
- function handleLayerGroupToggle(name, checked) {
452
- setActiveLayerGroups(checked ? [...activeLayerGroups, name] : activeLayerGroups.filter((groupName) => groupName !== name));
453
- }
454
- const showTileLayersDropdown = tileLayers.length > 1;
455
- const showLayerGroupsDropdown = layerGroups.length > 0;
456
- if (!showTileLayersDropdown && !showLayerGroupsDropdown) return null;
457
- return /* @__PURE__ */ jsxs(DropdownMenu, { children: [/* @__PURE__ */ jsx(DropdownMenuTrigger, {
458
- asChild: true,
459
- children: /* @__PURE__ */ jsx(Button, {
460
- type: "button",
461
- variant: "secondary",
462
- size: "sm",
463
- "aria-label": "Select layers",
464
- title: "Select layers",
465
- className: cn("absolute z-1000 border", position, className),
466
- ...props,
467
- children: /* @__PURE__ */ jsx(LayersIcon, {})
468
- })
469
- }), /* @__PURE__ */ jsxs(DropdownMenuContent, {
470
- align: "end",
471
- className: "z-1000",
472
- children: [
473
- showTileLayersDropdown && /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsx(DropdownMenuLabel, { children: tileLayersLabel }), /* @__PURE__ */ jsx(DropdownMenuRadioGroup, {
474
- value: selectedTileLayer,
475
- onValueChange: setSelectedTileLayer,
476
- children: tileLayers.map((tileLayer) => /* @__PURE__ */ jsx(DropdownMenuRadioItem, {
477
- value: tileLayer.name,
478
- children: tileLayer.name
479
- }, tileLayer.name))
480
- })] }),
481
- showTileLayersDropdown && showLayerGroupsDropdown && /* @__PURE__ */ jsx(DropdownMenuSeparator, {}),
482
- showLayerGroupsDropdown && /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsx(DropdownMenuLabel, { children: layerGroupsLabel }), layerGroups.map((layerGroup) => /* @__PURE__ */ jsx(DropdownMenuCheckboxItem, {
483
- checked: activeLayerGroups.includes(layerGroup.name),
484
- disabled: layerGroup.disabled,
485
- onCheckedChange: (checked) => handleLayerGroupToggle(layerGroup.name, checked),
486
- children: layerGroup.name
487
- }, layerGroup.name))] })
488
- ]
489
- })] });
490
- }
491
- function MapMarker({ icon = /* @__PURE__ */ jsx(MapPinIcon, { className: "size-6" }), iconAnchor = [12, 12], bgPos, popupAnchor, tooltipAnchor, ...props }) {
492
- const { L } = useLeaflet();
493
- if (!L) return null;
494
- return /* @__PURE__ */ jsx(LeafletMarker, {
495
- icon: L.divIcon({
496
- html: renderToString(icon),
497
- iconAnchor,
498
- ...bgPos ? { bgPos } : {},
499
- ...popupAnchor ? { popupAnchor } : {},
500
- ...tooltipAnchor ? { tooltipAnchor } : {}
501
- }),
502
- riseOnHover: true,
503
- ...props
504
- });
505
- }
506
- function MapMarkerClusterGroup({ polygonOptions = { className: "fill-foreground stroke-foreground stroke-2" }, spiderLegPolylineOptions = { className: "fill-foreground stroke-foreground stroke-2" }, icon, ...props }) {
507
- const { L } = useLeaflet();
508
- if (!L) return null;
509
- return /* @__PURE__ */ jsx(LeafletMarkerClusterGroup, {
510
- polygonOptions,
511
- spiderLegPolylineOptions,
512
- iconCreateFunction: icon ? (cluster) => {
513
- const iconNode = icon(cluster.getChildCount());
514
- return L.divIcon({ html: renderToString(iconNode) });
515
- } : void 0,
516
- ...props
517
- });
518
- }
519
- function MapCircle({ className, ...props }) {
520
- return /* @__PURE__ */ jsx(LeafletCircle, {
521
- className: cn("fill-foreground stroke-foreground stroke-2", className),
522
- ...props
523
- });
348
+ function MapCircle({ className, ...props }) {
349
+ return /* @__PURE__ */ jsx(LeafletCircle, {
350
+ className: cn("fill-foreground stroke-foreground stroke-2", className),
351
+ ...props
352
+ });
524
353
  }
525
354
  function MapCircleMarker({ className, ...props }) {
526
355
  return /* @__PURE__ */ jsx(LeafletCircleMarker, {
@@ -575,6 +404,24 @@ function MapTooltip({ className, children, side = "top", sideOffset = 15, ...pro
575
404
  children: [children, /* @__PURE__ */ jsx("div", { className: cn("bg-foreground fill-foreground absolute z-50 size-2.5 rotate-45 rounded-[2px]", ARROW_POSITION_CLASSES[side]) })]
576
405
  });
577
406
  }
407
+ //#endregion
408
+ //#region ../shadcn/ui/map/controls.tsx
409
+ function MapControlContainer({ className, ...props }) {
410
+ const { L } = useLeaflet();
411
+ const containerRef = useRef(null);
412
+ useEffect(() => {
413
+ if (!L) return;
414
+ const element = containerRef.current;
415
+ if (!element) return;
416
+ L.DomEvent.disableClickPropagation(element);
417
+ L.DomEvent.disableScrollPropagation(element);
418
+ }, [L]);
419
+ return /* @__PURE__ */ jsx("div", {
420
+ ref: containerRef,
421
+ className: cn("absolute z-1000 size-fit cursor-default", className),
422
+ ...props
423
+ });
424
+ }
578
425
  function MapZoomControl({ position = "top-1 left-1", className, ...props }) {
579
426
  const map = _useMap();
580
427
  const [zoomLevel, setZoomLevel] = useState(map.getZoom());
@@ -637,6 +484,7 @@ function MapFullscreenControl({ position = "top-1 right-1", className, ...props
637
484
  type: "button",
638
485
  size: "icon",
639
486
  variant: "outline",
487
+ disabled: !L,
640
488
  onClick: () => map.toggleFullscreen(),
641
489
  "aria-label": isFullscreen ? "Exit fullscreen" : "Enter fullscreen",
642
490
  title: isFullscreen ? "Exit fullscreen" : "Enter fullscreen",
@@ -656,28 +504,42 @@ function MapLocateControl({ watch = false, onLocationFound, onLocationError, pos
656
504
  const map = _useMap();
657
505
  const [isLocating, setIsLocating] = useDebounceLoadingState(200);
658
506
  const [location, setLocation] = useState(null);
507
+ const locationHandlersRef = useRef(null);
508
+ function detachLocationHandlers() {
509
+ if (locationHandlersRef.current) {
510
+ map.off("locationfound", locationHandlersRef.current.found);
511
+ map.off("locationerror", locationHandlersRef.current.error);
512
+ locationHandlersRef.current = null;
513
+ }
514
+ }
659
515
  function startLocating() {
516
+ detachLocationHandlers();
660
517
  setIsLocating(true);
518
+ const found = (event) => {
519
+ setLocation(event.latlng);
520
+ setIsLocating(false);
521
+ onLocationFound?.(event);
522
+ };
523
+ const error = (event) => {
524
+ setLocation(null);
525
+ setIsLocating(false);
526
+ onLocationError?.(event);
527
+ };
528
+ locationHandlersRef.current = {
529
+ found,
530
+ error
531
+ };
532
+ map.on("locationfound", found);
533
+ map.on("locationerror", error);
661
534
  map.locate({
662
535
  setView: true,
663
536
  maxZoom: map.getMaxZoom(),
664
537
  watch
665
538
  });
666
- map.on("locationfound", (location) => {
667
- setLocation(location.latlng);
668
- setIsLocating(false);
669
- onLocationFound?.(location);
670
- });
671
- map.on("locationerror", (error) => {
672
- setLocation(null);
673
- setIsLocating(false);
674
- onLocationError?.(error);
675
- });
676
539
  }
677
540
  function stopLocating() {
678
541
  map.stopLocate();
679
- map.off("locationfound");
680
- map.off("locationerror");
542
+ detachLocationHandlers();
681
543
  setLocation(null);
682
544
  setIsLocating(false);
683
545
  }
@@ -707,6 +569,8 @@ function MapSearchControl({ position = "top-1 left-1", className, ...props }) {
707
569
  children: /* @__PURE__ */ jsx(PlaceAutocomplete, { ...props })
708
570
  });
709
571
  }
572
+ //#endregion
573
+ //#region ../shadcn/ui/map/draw.tsx
710
574
  const MapDrawContext = createContext(null);
711
575
  function useMapDrawContext() {
712
576
  return useContext(MapDrawContext);
@@ -778,13 +642,15 @@ function MapDrawShapeButton({ drawMode, createDrawTool, className, ...props }) {
778
642
  const controlRef = useRef(null);
779
643
  const { activeMode, setActiveMode } = drawContext;
780
644
  const isActive = activeMode === drawMode;
645
+ const createDrawToolRef = useRef(createDrawTool);
646
+ createDrawToolRef.current = createDrawTool;
781
647
  useEffect(() => {
782
648
  if (!L || !isActive) {
783
649
  controlRef.current?.disable();
784
650
  controlRef.current = null;
785
651
  return;
786
652
  }
787
- const control = createDrawTool(L, map);
653
+ const control = createDrawToolRef.current(L, map);
788
654
  control.enable();
789
655
  controlRef.current = control;
790
656
  return () => {
@@ -794,8 +660,7 @@ function MapDrawShapeButton({ drawMode, createDrawTool, className, ...props }) {
794
660
  }, [
795
661
  L,
796
662
  map,
797
- isActive,
798
- createDrawTool
663
+ isActive
799
664
  ]);
800
665
  function handleClick() {
801
666
  setActiveMode(isActive ? null : drawMode);
@@ -905,13 +770,15 @@ function MapDrawActionButton({ drawAction, createDrawTool, controlRef, className
905
770
  const { featureGroup, activeMode, setActiveMode, layersCount } = drawContext;
906
771
  const isActive = activeMode === drawAction;
907
772
  const hasFeatures = layersCount > 0;
773
+ const createDrawToolRef = useRef(createDrawTool);
774
+ createDrawToolRef.current = createDrawTool;
908
775
  useEffect(() => {
909
776
  if (!L || !featureGroup || !isActive) {
910
777
  controlRef.current?.disable?.();
911
778
  controlRef.current = null;
912
779
  return;
913
780
  }
914
- const control = createDrawTool(L, map, featureGroup);
781
+ const control = createDrawToolRef.current(L, map, featureGroup);
915
782
  control.enable?.();
916
783
  controlRef.current = control;
917
784
  return () => {
@@ -922,8 +789,7 @@ function MapDrawActionButton({ drawAction, createDrawTool, controlRef, className
922
789
  L,
923
790
  map,
924
791
  isActive,
925
- featureGroup,
926
- createDrawTool
792
+ featureGroup
927
793
  ]);
928
794
  function handleClick() {
929
795
  controlRef.current?.save();
@@ -1015,72 +881,259 @@ function MapDrawUndo({ className, ...props }) {
1015
881
  children: /* @__PURE__ */ jsx(Undo2Icon, {})
1016
882
  });
1017
883
  }
1018
- function MapControlContainer({ className, ...props }) {
1019
- const { L } = useLeaflet();
1020
- const containerRef = useRef(null);
1021
- useEffect(() => {
1022
- if (!L) return;
1023
- const element = containerRef.current;
1024
- if (!element) return;
1025
- L.DomEvent.disableClickPropagation(element);
1026
- L.DomEvent.disableScrollPropagation(element);
1027
- }, [L]);
1028
- return /* @__PURE__ */ jsx("div", {
1029
- ref: containerRef,
1030
- className: cn("absolute z-1000 size-fit cursor-default", className),
884
+ //#endregion
885
+ //#region ../shadcn/hooks/use-theme.ts
886
+ /**
887
+ * Lightweight theme detection hook for shadcn components.
888
+ * Detects dark mode via the `dark` class on <html> (Tailwind convention)
889
+ * or falls back to prefers-color-scheme media query.
890
+ */
891
+ function useTheme() {
892
+ const [resolvedTheme, setResolvedTheme] = React.useState("light");
893
+ React.useEffect(() => {
894
+ const detect = () => {
895
+ if (document.documentElement.classList.contains("dark")) return "dark";
896
+ if (window.matchMedia("(prefers-color-scheme: dark)").matches) return "dark";
897
+ return "light";
898
+ };
899
+ setResolvedTheme(detect());
900
+ const observer = new MutationObserver(() => setResolvedTheme(detect()));
901
+ observer.observe(document.documentElement, {
902
+ attributes: true,
903
+ attributeFilter: ["class"]
904
+ });
905
+ const mql = window.matchMedia("(prefers-color-scheme: dark)");
906
+ const onChange = () => setResolvedTheme(detect());
907
+ mql.addEventListener("change", onChange);
908
+ return () => {
909
+ observer.disconnect();
910
+ mql.removeEventListener("change", onChange);
911
+ };
912
+ }, []);
913
+ return { resolvedTheme };
914
+ }
915
+ //#endregion
916
+ //#region ../shadcn/ui/dropdown-menu.tsx
917
+ /**
918
+ * Vanilla shadcn/ui DropdownMenu Component
919
+ * Pure shadcn dropdown without Datum customizations
920
+ * For Datum-specific features (destructive MenuItem), import from @/modules/datum-ui
921
+ */
922
+ const DropdownMenu = DropdownMenuPrimitive.Root;
923
+ const DropdownMenuTrigger = DropdownMenuPrimitive.Trigger;
924
+ const DropdownMenuRadioGroup = DropdownMenuPrimitive.RadioGroup;
925
+ const DropdownMenuSubTrigger = React.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ jsxs(DropdownMenuPrimitive.SubTrigger, {
926
+ ref,
927
+ className: cn("focus:bg-accent data-[state=open]:bg-accent flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-none select-none [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0", inset && "pl-8", className),
928
+ ...props,
929
+ children: [children, /* @__PURE__ */ jsx(ChevronRightIcon, { className: "ml-auto" })]
930
+ }));
931
+ DropdownMenuSubTrigger.displayName = DropdownMenuPrimitive.SubTrigger.displayName;
932
+ const DropdownMenuSubContent = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(DropdownMenuPrimitive.SubContent, {
933
+ ref,
934
+ className: cn("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[8rem] overflow-hidden rounded-md border p-1 shadow-lg", className),
935
+ ...props
936
+ }));
937
+ DropdownMenuSubContent.displayName = DropdownMenuPrimitive.SubContent.displayName;
938
+ const DropdownMenuContent = React.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsx(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ jsx(DropdownMenuPrimitive.Content, {
939
+ ref,
940
+ sideOffset,
941
+ className: cn("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[8rem] overflow-hidden rounded-md border p-1 shadow-md", className),
942
+ ...props
943
+ }) }));
944
+ DropdownMenuContent.displayName = DropdownMenuPrimitive.Content.displayName;
945
+ const DropdownMenuItem = React.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx(DropdownMenuPrimitive.Item, {
946
+ ref,
947
+ className: cn("focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm transition-colors outline-none select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0", inset && "pl-8", className),
948
+ ...props
949
+ }));
950
+ DropdownMenuItem.displayName = DropdownMenuPrimitive.Item.displayName;
951
+ const DropdownMenuCheckboxItem = React.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ jsxs(DropdownMenuPrimitive.CheckboxItem, {
952
+ ref,
953
+ className: cn("focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center rounded-sm py-1.5 pr-2 pl-8 text-sm transition-colors outline-none select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50", className),
954
+ checked,
955
+ ...props,
956
+ children: [/* @__PURE__ */ jsx("span", {
957
+ className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center",
958
+ children: /* @__PURE__ */ jsx(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx(CheckIcon, { className: "h-4 w-4" }) })
959
+ }), children]
960
+ }));
961
+ DropdownMenuCheckboxItem.displayName = DropdownMenuPrimitive.CheckboxItem.displayName;
962
+ const DropdownMenuRadioItem = React.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs(DropdownMenuPrimitive.RadioItem, {
963
+ ref,
964
+ className: cn("focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center rounded-sm py-1.5 pr-2 pl-8 text-sm transition-colors outline-none select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50", className),
965
+ ...props,
966
+ children: [/* @__PURE__ */ jsx("span", {
967
+ className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center",
968
+ children: /* @__PURE__ */ jsx(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx(CircleIcon, { className: "h-2 w-2 fill-current" }) })
969
+ }), children]
970
+ }));
971
+ DropdownMenuRadioItem.displayName = DropdownMenuPrimitive.RadioItem.displayName;
972
+ const DropdownMenuLabel = React.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx(DropdownMenuPrimitive.Label, {
973
+ ref,
974
+ className: cn("px-2 py-1.5 text-sm font-semibold", inset && "pl-8", className),
975
+ ...props
976
+ }));
977
+ DropdownMenuLabel.displayName = DropdownMenuPrimitive.Label.displayName;
978
+ const DropdownMenuSeparator = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(DropdownMenuPrimitive.Separator, {
979
+ ref,
980
+ className: cn("bg-muted -mx-1 my-1 h-px", className),
981
+ ...props
982
+ }));
983
+ DropdownMenuSeparator.displayName = DropdownMenuPrimitive.Separator.displayName;
984
+ function DropdownMenuShortcut({ className, ...props }) {
985
+ return /* @__PURE__ */ jsx("span", {
986
+ className: cn("ml-auto text-xs tracking-widest opacity-60", className),
1031
987
  ...props
1032
988
  });
1033
989
  }
1034
- function useMapDrawHandleIcon() {
1035
- const { L } = useLeaflet();
1036
- if (!L) return null;
1037
- return L.divIcon({
1038
- iconAnchor: [8, 8],
1039
- html: renderToString(/* @__PURE__ */ jsx(CircleIcon, { className: "fill-primary stroke-primary size-4 transition-transform hover:scale-110" }))
990
+ DropdownMenuShortcut.displayName = "DropdownMenuShortcut";
991
+ //#endregion
992
+ //#region ../shadcn/ui/map/layers.tsx
993
+ const MapLayersContext = createContext(null);
994
+ function useMapLayersContext() {
995
+ return useContext(MapLayersContext);
996
+ }
997
+ function MapTileLayer({ name = "Default", url, attribution, darkUrl, darkAttribution, ...props }) {
998
+ const map = _useMap();
999
+ if (map.attributionControl) map.attributionControl.setPrefix("");
1000
+ const context = useContext(MapLayersContext);
1001
+ const DEFAULT_URL = "https://{s}.basemaps.cartocdn.com/light_all/{z}/{x}/{y}.png";
1002
+ const DEFAULT_DARK_URL = "https://{s}.basemaps.cartocdn.com/dark_all/{z}/{x}/{y}.png";
1003
+ const { resolvedTheme } = useTheme();
1004
+ const resolvedUrl = resolvedTheme === "dark" ? darkUrl ?? url ?? DEFAULT_DARK_URL : url ?? DEFAULT_URL;
1005
+ const resolvedAttribution = resolvedTheme === "dark" && darkAttribution ? darkAttribution : attribution ?? "&copy; <a href=\"http://www.openstreetmap.org/copyright\">OpenStreetMap</a>, &copy; <a href=\"https://carto.com/attributions\">CARTO</a>";
1006
+ useEffect(() => {
1007
+ if (context) context.registerTileLayer({
1008
+ name,
1009
+ url: resolvedUrl,
1010
+ attribution: resolvedAttribution
1011
+ });
1012
+ }, [
1013
+ context,
1014
+ name,
1015
+ resolvedUrl,
1016
+ resolvedAttribution
1017
+ ]);
1018
+ if (context && context.selectedTileLayer !== name) return null;
1019
+ return /* @__PURE__ */ jsx(LeafletTileLayer, {
1020
+ url: resolvedUrl,
1021
+ attribution: resolvedAttribution,
1022
+ ...props
1040
1023
  });
1041
1024
  }
1042
- function useLeaflet() {
1043
- const [L, setL] = useState(null);
1044
- const [LeafletDraw, setLeafletDraw] = useState(null);
1025
+ function MapLayerGroup({ name, disabled, ...props }) {
1026
+ const context = useMapLayersContext();
1045
1027
  useEffect(() => {
1046
- async function loadLeaflet() {
1047
- const leaflet = await import("leaflet");
1048
- const leafletFullscreen = await import("leaflet.fullscreen");
1049
- const leafletDraw = await import("leaflet-draw");
1050
- const L_object = leaflet.default;
1051
- if (L_object.Control && !L_object.Control.FullScreen) L_object.Control.FullScreen = leafletFullscreen.default || leafletFullscreen;
1052
- setLeafletDraw(leafletDraw);
1053
- setL(L_object);
1054
- }
1055
- if (L && LeafletDraw) return;
1056
- if (typeof window === "undefined") return;
1057
- loadLeaflet();
1058
- }, [L, LeafletDraw]);
1059
- return {
1060
- L,
1061
- LeafletDraw
1062
- };
1028
+ if (context) context.registerLayerGroup({
1029
+ name,
1030
+ disabled
1031
+ });
1032
+ }, [
1033
+ context,
1034
+ name,
1035
+ disabled
1036
+ ]);
1037
+ if (context && !context.activeLayerGroups.includes(name)) return null;
1038
+ return /* @__PURE__ */ jsx(LeafletLayerGroup, { ...props });
1063
1039
  }
1064
- function useDebounceLoadingState(delay = 200) {
1065
- const [isLoading, setIsLoading] = useState(false);
1066
- const [showLoading, setShowLoading] = useState(false);
1067
- const timeoutRef = useRef(null);
1040
+ function MapFeatureGroup({ name, disabled, ...props }) {
1041
+ const context = useMapLayersContext();
1068
1042
  useEffect(() => {
1069
- if (isLoading) timeoutRef.current = setTimeout(() => {
1070
- setShowLoading(true);
1071
- }, delay);
1072
- else {
1073
- if (timeoutRef.current) {
1074
- clearTimeout(timeoutRef.current);
1075
- timeoutRef.current = null;
1076
- }
1077
- setShowLoading(false);
1078
- }
1079
- return () => {
1080
- if (timeoutRef.current) clearTimeout(timeoutRef.current);
1081
- };
1082
- }, [isLoading, delay]);
1083
- return [showLoading, setIsLoading];
1043
+ if (context) context.registerLayerGroup({
1044
+ name,
1045
+ disabled
1046
+ });
1047
+ }, [
1048
+ context,
1049
+ name,
1050
+ disabled
1051
+ ]);
1052
+ if (context && !context.activeLayerGroups.includes(name)) return null;
1053
+ return /* @__PURE__ */ jsx(LeafletFeatureGroup, { ...props });
1054
+ }
1055
+ function MapLayers({ defaultTileLayer, defaultLayerGroups = [], ...props }) {
1056
+ const [tileLayers, setTileLayers] = useState([]);
1057
+ const [selectedTileLayer, setSelectedTileLayer] = useState(defaultTileLayer || "");
1058
+ const [layerGroups, setLayerGroups] = useState([]);
1059
+ const [activeLayerGroups, setActiveLayerGroups] = useState(defaultLayerGroups);
1060
+ function registerTileLayer(tileLayer) {
1061
+ setTileLayers((prevTileLayers) => {
1062
+ if (prevTileLayers.some((layer) => layer.name === tileLayer.name)) return prevTileLayers;
1063
+ return [...prevTileLayers, tileLayer];
1064
+ });
1065
+ }
1066
+ function registerLayerGroup(layerGroup) {
1067
+ setLayerGroups((prevLayerGroups) => {
1068
+ if (prevLayerGroups.some((group) => group.name === layerGroup.name)) return prevLayerGroups;
1069
+ return [...prevLayerGroups, layerGroup];
1070
+ });
1071
+ }
1072
+ useEffect(() => {
1073
+ if (tileLayers.length > 0 && !selectedTileLayer) setSelectedTileLayer(defaultTileLayer && tileLayers.some((layer) => layer.name === defaultTileLayer) ? defaultTileLayer : tileLayers[0].name);
1074
+ }, [
1075
+ tileLayers,
1076
+ defaultTileLayer,
1077
+ selectedTileLayer
1078
+ ]);
1079
+ return /* @__PURE__ */ jsx(MapLayersContext.Provider, {
1080
+ value: {
1081
+ registerTileLayer,
1082
+ tileLayers,
1083
+ selectedTileLayer,
1084
+ setSelectedTileLayer,
1085
+ registerLayerGroup,
1086
+ layerGroups,
1087
+ activeLayerGroups,
1088
+ setActiveLayerGroups
1089
+ },
1090
+ ...props
1091
+ });
1092
+ }
1093
+ function MapLayersControl({ tileLayersLabel = "Map Type", layerGroupsLabel = "Layers", position = "top-1 right-1", className, ...props }) {
1094
+ const layersContext = useMapLayersContext();
1095
+ if (!layersContext) throw new Error("MapLayersControl must be used within MapLayers");
1096
+ const { tileLayers, selectedTileLayer, setSelectedTileLayer, layerGroups, activeLayerGroups, setActiveLayerGroups } = layersContext;
1097
+ if (tileLayers.length === 0 && layerGroups.length === 0) return null;
1098
+ function handleLayerGroupToggle(name, checked) {
1099
+ setActiveLayerGroups(checked ? [...activeLayerGroups, name] : activeLayerGroups.filter((groupName) => groupName !== name));
1100
+ }
1101
+ const showTileLayersDropdown = tileLayers.length > 1;
1102
+ const showLayerGroupsDropdown = layerGroups.length > 0;
1103
+ if (!showTileLayersDropdown && !showLayerGroupsDropdown) return null;
1104
+ return /* @__PURE__ */ jsxs(DropdownMenu, { children: [/* @__PURE__ */ jsx(DropdownMenuTrigger, {
1105
+ asChild: true,
1106
+ children: /* @__PURE__ */ jsx(Button, {
1107
+ type: "button",
1108
+ variant: "secondary",
1109
+ size: "sm",
1110
+ "aria-label": "Select layers",
1111
+ title: "Select layers",
1112
+ className: cn("absolute z-1000 border", position, className),
1113
+ ...props,
1114
+ children: /* @__PURE__ */ jsx(LayersIcon, {})
1115
+ })
1116
+ }), /* @__PURE__ */ jsxs(DropdownMenuContent, {
1117
+ align: "end",
1118
+ className: "z-1000",
1119
+ children: [
1120
+ showTileLayersDropdown && /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsx(DropdownMenuLabel, { children: tileLayersLabel }), /* @__PURE__ */ jsx(DropdownMenuRadioGroup, {
1121
+ value: selectedTileLayer,
1122
+ onValueChange: setSelectedTileLayer,
1123
+ children: tileLayers.map((tileLayer) => /* @__PURE__ */ jsx(DropdownMenuRadioItem, {
1124
+ value: tileLayer.name,
1125
+ children: tileLayer.name
1126
+ }, tileLayer.name))
1127
+ })] }),
1128
+ showTileLayersDropdown && showLayerGroupsDropdown && /* @__PURE__ */ jsx(DropdownMenuSeparator, {}),
1129
+ showLayerGroupsDropdown && /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsx(DropdownMenuLabel, { children: layerGroupsLabel }), layerGroups.map((layerGroup) => /* @__PURE__ */ jsx(DropdownMenuCheckboxItem, {
1130
+ checked: activeLayerGroups.includes(layerGroup.name),
1131
+ disabled: layerGroup.disabled,
1132
+ onCheckedChange: (checked) => handleLayerGroupToggle(layerGroup.name, checked),
1133
+ children: layerGroup.name
1134
+ }, layerGroup.name))] })
1135
+ ]
1136
+ })] });
1084
1137
  }
1085
1138
  //#endregion
1086
- export { useLeaflet as A, MapPolyline as C, MapTileLayer as D, MapSearchControl as E, MapTooltip as O, MapPolygon as S, MapRectangle as T, MapLayers as _, MapDrawCircle as a, MapMarker as b, MapDrawEdit as c, MapDrawPolyline as d, MapDrawRectangle as f, MapLayerGroup as g, MapFullscreenControl as h, MapControlContainer as i, PlaceAutocomplete as j, MapZoomControl as k, MapDrawMarker as l, MapFeatureGroup as m, MapCircle as n, MapDrawControl as o, MapDrawUndo as p, MapCircleMarker as r, MapDrawDelete as s, Map as t, MapDrawPolygon as u, MapLayersControl as v, MapPopup as w, MapMarkerClusterGroup as x, MapLocateControl as y };
1139
+ export { useLeaflet as A, MapMarkerClusterGroup as C, MapRectangle as D, MapPopup as E, MapTooltip as O, MapMarker as S, MapPolyline as T, MapLocateControl as _, MapTileLayer as a, MapCircle as b, MapDrawDelete as c, MapDrawPolygon as d, MapDrawPolyline as f, MapFullscreenControl as g, MapControlContainer as h, MapLayersControl as i, PlaceAutocomplete as j, Map as k, MapDrawEdit as l, MapDrawUndo as m, MapLayerGroup as n, MapDrawCircle as o, MapDrawRectangle as p, MapLayers as r, MapDrawControl as s, MapFeatureGroup as t, MapDrawMarker as u, MapSearchControl as v, MapPolygon as w, MapCircleMarker as x, MapZoomControl as y };