@lssm/lib.ui-kit-web 1.41.1 → 1.42.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (409) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +13 -0
  3. package/dist/index.d.ts +1 -0
  4. package/dist/ui/accordion.d.ts +25 -0
  5. package/dist/ui/accordion.d.ts.map +1 -0
  6. package/dist/ui/accordion.js +2 -1
  7. package/dist/ui/accordion.js.map +1 -0
  8. package/dist/ui/alert-dialog.d.ts +49 -0
  9. package/dist/ui/alert-dialog.d.ts.map +1 -0
  10. package/dist/ui/alert-dialog.js +2 -1
  11. package/dist/ui/alert-dialog.js.map +1 -0
  12. package/dist/ui/alert.d.ts +25 -0
  13. package/dist/ui/alert.d.ts.map +1 -0
  14. package/dist/ui/alert.js +2 -1
  15. package/dist/ui/alert.js.map +1 -0
  16. package/dist/ui/aspect-ratio.d.ts +8 -0
  17. package/dist/ui/aspect-ratio.d.ts.map +1 -0
  18. package/dist/ui/aspect-ratio.js +2 -1
  19. package/dist/ui/aspect-ratio.js.map +1 -0
  20. package/dist/ui/atoms/FilterSelect/FilterSelect.d.ts +8 -0
  21. package/dist/ui/atoms/FilterSelect/FilterSelect.d.ts.map +1 -0
  22. package/dist/ui/atoms/FilterSelect/FilterSelect.js +2 -1
  23. package/dist/ui/atoms/FilterSelect/FilterSelect.js.map +1 -0
  24. package/dist/ui/atoms/FilterSelect/index.d.ts +3 -0
  25. package/dist/ui/atoms/FilterSelect/types.d.ts +19 -0
  26. package/dist/ui/atoms/FilterSelect/types.d.ts.map +1 -0
  27. package/dist/ui/atoms/LoadingSpinner/LoadingSpinner.d.ts +23 -0
  28. package/dist/ui/atoms/LoadingSpinner/LoadingSpinner.d.ts.map +1 -0
  29. package/dist/ui/atoms/LoadingSpinner/LoadingSpinner.js +2 -1
  30. package/dist/ui/atoms/LoadingSpinner/LoadingSpinner.js.map +1 -0
  31. package/dist/ui/atoms/LoadingSpinner/index.d.ts +2 -0
  32. package/dist/ui/atoms/Pagination/Pagination.d.ts +8 -0
  33. package/dist/ui/atoms/Pagination/Pagination.d.ts.map +1 -0
  34. package/dist/ui/atoms/Pagination/Pagination.js +2 -1
  35. package/dist/ui/atoms/Pagination/Pagination.js.map +1 -0
  36. package/dist/ui/atoms/Pagination/index.d.ts +3 -0
  37. package/dist/ui/atoms/Pagination/types.d.ts +16 -0
  38. package/dist/ui/atoms/Pagination/types.d.ts.map +1 -0
  39. package/dist/ui/atoms/SearchInput/SearchInput.d.ts +8 -0
  40. package/dist/ui/atoms/SearchInput/SearchInput.d.ts.map +1 -0
  41. package/dist/ui/atoms/SearchInput/SearchInput.js +2 -1
  42. package/dist/ui/atoms/SearchInput/SearchInput.js.map +1 -0
  43. package/dist/ui/atoms/SearchInput/index.d.ts +3 -0
  44. package/dist/ui/atoms/SearchInput/types.d.ts +13 -0
  45. package/dist/ui/atoms/SearchInput/types.d.ts.map +1 -0
  46. package/dist/ui/avatar.d.ts +20 -0
  47. package/dist/ui/avatar.d.ts.map +1 -0
  48. package/dist/ui/avatar.js +2 -1
  49. package/dist/ui/avatar.js.map +1 -0
  50. package/dist/ui/badge.d.ts +20 -0
  51. package/dist/ui/badge.d.ts.map +1 -0
  52. package/dist/ui/badge.js +2 -1
  53. package/dist/ui/badge.js.map +1 -0
  54. package/dist/ui/breadcrumb.d.ts +38 -0
  55. package/dist/ui/breadcrumb.d.ts.map +1 -0
  56. package/dist/ui/breadcrumb.js +2 -1
  57. package/dist/ui/breadcrumb.js.map +1 -0
  58. package/dist/ui/button.d.ts +21 -0
  59. package/dist/ui/button.d.ts.map +1 -0
  60. package/dist/ui/button.js +2 -1
  61. package/dist/ui/button.js.map +1 -0
  62. package/dist/ui/calendar.d.ts +27 -0
  63. package/dist/ui/calendar.d.ts.map +1 -0
  64. package/dist/ui/calendar.js +3 -2
  65. package/dist/ui/calendar.js.map +1 -0
  66. package/dist/ui/card.d.ts +35 -0
  67. package/dist/ui/card.d.ts.map +1 -0
  68. package/dist/ui/card.js +2 -1
  69. package/dist/ui/card.js.map +1 -0
  70. package/dist/ui/carousel.d.ts +48 -0
  71. package/dist/ui/carousel.d.ts.map +1 -0
  72. package/dist/ui/carousel.js +2 -1
  73. package/dist/ui/carousel.js.map +1 -0
  74. package/dist/ui/checkbox.d.ts +12 -0
  75. package/dist/ui/checkbox.d.ts.map +1 -0
  76. package/dist/ui/checkbox.js +2 -1
  77. package/dist/ui/checkbox.js.map +1 -0
  78. package/dist/ui/collapsible.d.ts +16 -0
  79. package/dist/ui/collapsible.d.ts.map +1 -0
  80. package/dist/ui/collapsible.js +2 -1
  81. package/dist/ui/collapsible.js.map +1 -0
  82. package/dist/ui/command.d.ts +53 -0
  83. package/dist/ui/command.d.ts.map +1 -0
  84. package/dist/ui/command.js +2 -1
  85. package/dist/ui/command.js.map +1 -0
  86. package/dist/ui/confirm-dialog.d.ts +31 -0
  87. package/dist/ui/confirm-dialog.d.ts.map +1 -0
  88. package/dist/ui/confirm-dialog.js +2 -1
  89. package/dist/ui/confirm-dialog.js.map +1 -0
  90. package/dist/ui/context-menu.d.ts +35 -0
  91. package/dist/ui/context-menu.d.ts.map +1 -0
  92. package/dist/ui/context-menu.js +2 -1
  93. package/dist/ui/context-menu.js.map +1 -0
  94. package/dist/ui/cta.d.ts +23 -0
  95. package/dist/ui/cta.d.ts.map +1 -0
  96. package/dist/ui/cta.js +2 -1
  97. package/dist/ui/cta.js.map +1 -0
  98. package/dist/ui/date-picker.d.ts +26 -0
  99. package/dist/ui/date-picker.d.ts.map +1 -0
  100. package/dist/ui/date-picker.js +2 -1
  101. package/dist/ui/date-picker.js.map +1 -0
  102. package/dist/ui/date-range-picker.d.ts +26 -0
  103. package/dist/ui/date-range-picker.d.ts.map +1 -0
  104. package/dist/ui/date-range-picker.js +2 -1
  105. package/dist/ui/date-range-picker.js.map +1 -0
  106. package/dist/ui/datetime-picker.d.ts +28 -0
  107. package/dist/ui/datetime-picker.d.ts.map +1 -0
  108. package/dist/ui/datetime-picker.js +2 -1
  109. package/dist/ui/datetime-picker.js.map +1 -0
  110. package/dist/ui/dialog.d.ts +48 -0
  111. package/dist/ui/dialog.d.ts.map +1 -0
  112. package/dist/ui/dialog.js +2 -1
  113. package/dist/ui/dialog.js.map +1 -0
  114. package/dist/ui/drawer.d.ts +45 -0
  115. package/dist/ui/drawer.d.ts.map +1 -0
  116. package/dist/ui/drawer.js +2 -1
  117. package/dist/ui/drawer.js.map +1 -0
  118. package/dist/ui/dropdown-menu.d.ts +78 -0
  119. package/dist/ui/dropdown-menu.d.ts.map +1 -0
  120. package/dist/ui/dropdown-menu.js +2 -1
  121. package/dist/ui/dropdown-menu.js.map +1 -0
  122. package/dist/ui/empty-state.d.ts +29 -0
  123. package/dist/ui/empty-state.d.ts.map +1 -0
  124. package/dist/ui/empty-state.js +2 -1
  125. package/dist/ui/empty-state.js.map +1 -0
  126. package/dist/ui/empty.d.ts +37 -0
  127. package/dist/ui/empty.d.ts.map +1 -0
  128. package/dist/ui/empty.js +2 -1
  129. package/dist/ui/empty.js.map +1 -0
  130. package/dist/ui/field.d.ts +66 -0
  131. package/dist/ui/field.d.ts.map +1 -0
  132. package/dist/ui/field.js +2 -1
  133. package/dist/ui/field.js.map +1 -0
  134. package/dist/ui/focus-on-route-change.d.ts +9 -0
  135. package/dist/ui/focus-on-route-change.d.ts.map +1 -0
  136. package/dist/ui/focus-on-route-change.js +2 -1
  137. package/dist/ui/focus-on-route-change.js.map +1 -0
  138. package/dist/ui/form.d.ts +47 -0
  139. package/dist/ui/form.d.ts.map +1 -0
  140. package/dist/ui/form.js +2 -1
  141. package/dist/ui/form.js.map +1 -0
  142. package/dist/ui/hover-card.d.ts +20 -0
  143. package/dist/ui/hover-card.d.ts.map +1 -0
  144. package/dist/ui/hover-card.js +2 -1
  145. package/dist/ui/hover-card.js.map +1 -0
  146. package/dist/ui/input-group.d.ts +44 -0
  147. package/dist/ui/input-group.d.ts.map +1 -0
  148. package/dist/ui/input-group.js +8 -1
  149. package/dist/ui/input-group.js.map +1 -0
  150. package/dist/ui/input-otp.d.ts +39 -0
  151. package/dist/ui/input-otp.d.ts.map +1 -0
  152. package/dist/ui/input-otp.js +2 -1
  153. package/dist/ui/input-otp.js.map +1 -0
  154. package/dist/ui/input.d.ts +13 -0
  155. package/dist/ui/input.d.ts.map +1 -0
  156. package/dist/ui/input.js +2 -1
  157. package/dist/ui/input.js.map +1 -0
  158. package/dist/ui/label.d.ts +12 -0
  159. package/dist/ui/label.d.ts.map +1 -0
  160. package/dist/ui/label.js +2 -1
  161. package/dist/ui/label.js.map +1 -0
  162. package/dist/ui/link.d.ts +9 -0
  163. package/dist/ui/link.d.ts.map +1 -0
  164. package/dist/ui/link.js +2 -1
  165. package/dist/ui/link.js.map +1 -0
  166. package/dist/ui/live-region.d.ts +17 -0
  167. package/dist/ui/live-region.d.ts.map +1 -0
  168. package/dist/ui/live-region.js +2 -1
  169. package/dist/ui/live-region.js.map +1 -0
  170. package/dist/ui/loading-button.d.ts +20 -0
  171. package/dist/ui/loading-button.d.ts.map +1 -0
  172. package/dist/ui/loading-button.js +2 -1
  173. package/dist/ui/loading-button.js.map +1 -0
  174. package/dist/ui/map/MapBase.d.ts +28 -0
  175. package/dist/ui/map/MapBase.d.ts.map +1 -0
  176. package/dist/ui/map/MapBase.js +3 -2
  177. package/dist/ui/map/MapBase.js.map +1 -0
  178. package/dist/ui/map/MapGeoJsonOverlay.d.ts +16 -0
  179. package/dist/ui/map/MapGeoJsonOverlay.d.ts.map +1 -0
  180. package/dist/ui/map/MapGeoJsonOverlay.js +2 -1
  181. package/dist/ui/map/MapGeoJsonOverlay.js.map +1 -0
  182. package/dist/ui/map/MapHeatmapH3.d.ts +18 -0
  183. package/dist/ui/map/MapHeatmapH3.d.ts.map +1 -0
  184. package/dist/ui/map/MapHeatmapH3.js +3 -2
  185. package/dist/ui/map/MapHeatmapH3.js.map +1 -0
  186. package/dist/ui/map/MapMarkers.d.ts +20 -0
  187. package/dist/ui/map/MapMarkers.d.ts.map +1 -0
  188. package/dist/ui/map/MapMarkers.js +9 -2
  189. package/dist/ui/map/MapMarkers.js.map +1 -0
  190. package/dist/ui/map/index.d.ts +5 -0
  191. package/dist/ui/marketing/FeatureGrid.d.ts +21 -0
  192. package/dist/ui/marketing/FeatureGrid.d.ts.map +1 -0
  193. package/dist/ui/marketing/FeatureGrid.js +2 -1
  194. package/dist/ui/marketing/FeatureGrid.js.map +1 -0
  195. package/dist/ui/marketing/Hero.d.ts +28 -0
  196. package/dist/ui/marketing/Hero.d.ts.map +1 -0
  197. package/dist/ui/marketing/Hero.js +2 -1
  198. package/dist/ui/marketing/Hero.js.map +1 -0
  199. package/dist/ui/marketing/PricingTable.d.ts +25 -0
  200. package/dist/ui/marketing/PricingTable.d.ts.map +1 -0
  201. package/dist/ui/marketing/PricingTable.js +2 -1
  202. package/dist/ui/marketing/PricingTable.js.map +1 -0
  203. package/dist/ui/marketing/index.d.ts +4 -0
  204. package/dist/ui/menubar.d.ts +85 -0
  205. package/dist/ui/menubar.d.ts.map +1 -0
  206. package/dist/ui/menubar.js +2 -1
  207. package/dist/ui/menubar.js.map +1 -0
  208. package/dist/ui/molecules/Autocomplete/index.d.ts +7 -0
  209. package/dist/ui/molecules/Autocomplete/index.d.ts.map +1 -0
  210. package/dist/ui/molecules/Autocomplete/index.js +2 -1
  211. package/dist/ui/molecules/Autocomplete/index.js.map +1 -0
  212. package/dist/ui/molecules/SearchAndFilter/SearchAndFilter.d.ts +8 -0
  213. package/dist/ui/molecules/SearchAndFilter/SearchAndFilter.d.ts.map +1 -0
  214. package/dist/ui/molecules/SearchAndFilter/SearchAndFilter.js +4 -1
  215. package/dist/ui/molecules/SearchAndFilter/SearchAndFilter.js.map +1 -0
  216. package/dist/ui/molecules/SearchAndFilter/index.d.ts +3 -0
  217. package/dist/ui/molecules/SearchAndFilter/types.d.ts +24 -0
  218. package/dist/ui/molecules/SearchAndFilter/types.d.ts.map +1 -0
  219. package/dist/ui/molecules/SkeletonList.d.ts +16 -0
  220. package/dist/ui/molecules/SkeletonList.d.ts.map +1 -0
  221. package/dist/ui/molecules/SkeletonList.js +2 -1
  222. package/dist/ui/molecules/SkeletonList.js.map +1 -0
  223. package/dist/ui/nav-layout.d.ts +71 -0
  224. package/dist/ui/nav-layout.d.ts.map +1 -0
  225. package/dist/ui/nav-layout.js +3 -2
  226. package/dist/ui/nav-layout.js.map +1 -0
  227. package/dist/ui/navigation-menu.d.ts +47 -0
  228. package/dist/ui/navigation-menu.d.ts.map +1 -0
  229. package/dist/ui/navigation-menu.js +2 -1
  230. package/dist/ui/navigation-menu.js.map +1 -0
  231. package/dist/ui/organisms/ErrorBoundary/ErrorBoundary.d.ts +30 -0
  232. package/dist/ui/organisms/ErrorBoundary/ErrorBoundary.d.ts.map +1 -0
  233. package/dist/ui/organisms/ErrorBoundary/ErrorBoundary.js +2 -1
  234. package/dist/ui/organisms/ErrorBoundary/ErrorBoundary.js.map +1 -0
  235. package/dist/ui/organisms/ErrorBoundary/index.d.ts +2 -0
  236. package/dist/ui/organisms/ListPage/ListPage.d.ts +29 -0
  237. package/dist/ui/organisms/ListPage/ListPage.d.ts.map +1 -0
  238. package/dist/ui/organisms/ListPage/ListPage.js +4 -1
  239. package/dist/ui/organisms/ListPage/ListPage.js.map +1 -0
  240. package/dist/ui/organisms/ListPage/index.d.ts +3 -0
  241. package/dist/ui/organisms/ListPage/types.d.ts +41 -0
  242. package/dist/ui/organisms/ListPage/types.d.ts.map +1 -0
  243. package/dist/ui/page-header.d.ts +27 -0
  244. package/dist/ui/page-header.d.ts.map +1 -0
  245. package/dist/ui/page-header.js +2 -1
  246. package/dist/ui/page-header.js.map +1 -0
  247. package/dist/ui/pagination.d.ts +50 -0
  248. package/dist/ui/pagination.d.ts.map +1 -0
  249. package/dist/ui/pagination.js +2 -1
  250. package/dist/ui/pagination.js.map +1 -0
  251. package/dist/ui/popover.d.ts +23 -0
  252. package/dist/ui/popover.d.ts.map +1 -0
  253. package/dist/ui/popover.js +2 -1
  254. package/dist/ui/popover.js.map +1 -0
  255. package/dist/ui/progress.d.ts +13 -0
  256. package/dist/ui/progress.d.ts.map +1 -0
  257. package/dist/ui/progress.js +2 -1
  258. package/dist/ui/progress.js.map +1 -0
  259. package/dist/ui/radio-group.d.ts +16 -0
  260. package/dist/ui/radio-group.d.ts.map +1 -0
  261. package/dist/ui/radio-group.js +2 -1
  262. package/dist/ui/radio-group.js.map +1 -0
  263. package/dist/ui/resizable.d.ts +36 -0
  264. package/dist/ui/resizable.d.ts.map +1 -0
  265. package/dist/ui/resizable.js +2 -1
  266. package/dist/ui/resizable.js.map +1 -0
  267. package/dist/ui/route-announcer.d.ts +11 -0
  268. package/dist/ui/route-announcer.d.ts.map +1 -0
  269. package/dist/ui/route-announcer.js +2 -1
  270. package/dist/ui/route-announcer.js.map +1 -0
  271. package/dist/ui/scroll-area.d.ts +18 -0
  272. package/dist/ui/scroll-area.d.ts.map +1 -0
  273. package/dist/ui/scroll-area.js +2 -1
  274. package/dist/ui/scroll-area.js.map +1 -0
  275. package/dist/ui/section.d.ts +27 -0
  276. package/dist/ui/section.d.ts.map +1 -0
  277. package/dist/ui/section.js +2 -1
  278. package/dist/ui/section.js.map +1 -0
  279. package/dist/ui/select.d.ts +52 -0
  280. package/dist/ui/select.d.ts.map +1 -0
  281. package/dist/ui/select.js +2 -1
  282. package/dist/ui/select.js.map +1 -0
  283. package/dist/ui/separator.d.ts +14 -0
  284. package/dist/ui/separator.d.ts.map +1 -0
  285. package/dist/ui/separator.js +2 -1
  286. package/dist/ui/separator.js.map +1 -0
  287. package/dist/ui/sheet.d.ts +41 -0
  288. package/dist/ui/sheet.d.ts.map +1 -0
  289. package/dist/ui/sheet.js +2 -1
  290. package/dist/ui/sheet.js.map +1 -0
  291. package/dist/ui/sidebar.d.ts +167 -0
  292. package/dist/ui/sidebar.d.ts.map +1 -0
  293. package/dist/ui/sidebar.js +2 -1
  294. package/dist/ui/sidebar.js.map +1 -0
  295. package/dist/ui/skeleton.d.ts +11 -0
  296. package/dist/ui/skeleton.d.ts.map +1 -0
  297. package/dist/ui/skeleton.js +2 -1
  298. package/dist/ui/skeleton.js.map +1 -0
  299. package/dist/ui/skip-link.d.ts +17 -0
  300. package/dist/ui/skip-link.d.ts.map +1 -0
  301. package/dist/ui/skip-link.js +2 -1
  302. package/dist/ui/skip-link.js.map +1 -0
  303. package/dist/ui/slider.d.ts +16 -0
  304. package/dist/ui/slider.d.ts.map +1 -0
  305. package/dist/ui/slider.js +2 -1
  306. package/dist/ui/slider.js.map +1 -0
  307. package/dist/ui/sonner.d.ts +10 -0
  308. package/dist/ui/sonner.d.ts.map +1 -0
  309. package/dist/ui/sonner.js +3 -2
  310. package/dist/ui/sonner.js.map +1 -0
  311. package/dist/ui/stack.d.ts +48 -0
  312. package/dist/ui/stack.d.ts.map +1 -0
  313. package/dist/ui/stack.js +2 -1
  314. package/dist/ui/stack.js.map +1 -0
  315. package/dist/ui/stat-card-group.d.ts +19 -0
  316. package/dist/ui/stat-card-group.d.ts.map +1 -0
  317. package/dist/ui/stat-card-group.js +2 -1
  318. package/dist/ui/stat-card-group.js.map +1 -0
  319. package/dist/ui/stepper.d.ts +23 -0
  320. package/dist/ui/stepper.d.ts.map +1 -0
  321. package/dist/ui/stepper.js +2 -1
  322. package/dist/ui/stepper.js.map +1 -0
  323. package/dist/ui/switch.d.ts +15 -0
  324. package/dist/ui/switch.d.ts.map +1 -0
  325. package/dist/ui/switch.js +2 -2
  326. package/dist/ui/switch.js.map +1 -0
  327. package/dist/ui/table.d.ts +39 -0
  328. package/dist/ui/table.d.ts.map +1 -0
  329. package/dist/ui/table.js +2 -1
  330. package/dist/ui/table.js.map +1 -0
  331. package/dist/ui/tabs.d.ts +24 -0
  332. package/dist/ui/tabs.d.ts.map +1 -0
  333. package/dist/ui/tabs.js +2 -1
  334. package/dist/ui/tabs.js.map +1 -0
  335. package/dist/ui/text.d.ts +15 -0
  336. package/dist/ui/text.d.ts.map +1 -0
  337. package/dist/ui/text.js +2 -1
  338. package/dist/ui/text.js.map +1 -0
  339. package/dist/ui/textarea.d.ts +12 -0
  340. package/dist/ui/textarea.d.ts.map +1 -0
  341. package/dist/ui/textarea.js +2 -1
  342. package/dist/ui/textarea.js.map +1 -0
  343. package/dist/ui/time-picker.d.ts +22 -0
  344. package/dist/ui/time-picker.d.ts.map +1 -0
  345. package/dist/ui/time-picker.js +2 -1
  346. package/dist/ui/time-picker.js.map +1 -0
  347. package/dist/ui/toast.d.ts +20 -0
  348. package/dist/ui/toast.d.ts.map +1 -0
  349. package/dist/ui/toast.js +2 -1
  350. package/dist/ui/toast.js.map +1 -0
  351. package/dist/ui/toaster.d.ts +7 -0
  352. package/dist/ui/toaster.d.ts.map +1 -0
  353. package/dist/ui/toaster.js +2 -1
  354. package/dist/ui/toaster.js.map +1 -0
  355. package/dist/ui/toggle-group.d.ts +24 -0
  356. package/dist/ui/toggle-group.d.ts.map +1 -0
  357. package/dist/ui/toggle-group.js +2 -1
  358. package/dist/ui/toggle-group.js.map +1 -0
  359. package/dist/ui/toggle.d.ts +20 -0
  360. package/dist/ui/toggle.d.ts.map +1 -0
  361. package/dist/ui/toggle.js +2 -1
  362. package/dist/ui/toggle.js.map +1 -0
  363. package/dist/ui/tooltip.d.ts +24 -0
  364. package/dist/ui/tooltip.d.ts.map +1 -0
  365. package/dist/ui/tooltip.js +2 -1
  366. package/dist/ui/tooltip.js.map +1 -0
  367. package/dist/ui/typography.d.ts +65 -0
  368. package/dist/ui/typography.d.ts.map +1 -0
  369. package/dist/ui/typography.js +2 -1
  370. package/dist/ui/typography.js.map +1 -0
  371. package/dist/ui/use-media-query.d.ts +5 -0
  372. package/dist/ui/use-media-query.d.ts.map +1 -0
  373. package/dist/ui/use-media-query.js +2 -1
  374. package/dist/ui/use-media-query.js.map +1 -0
  375. package/dist/ui/use-mobile.d.ts +5 -0
  376. package/dist/ui/use-mobile.d.ts.map +1 -0
  377. package/dist/ui/use-mobile.js +2 -1
  378. package/dist/ui/use-mobile.js.map +1 -0
  379. package/dist/ui/use-reduced-motion.d.ts +5 -0
  380. package/dist/ui/use-reduced-motion.d.ts.map +1 -0
  381. package/dist/ui/use-reduced-motion.js +2 -1
  382. package/dist/ui/use-reduced-motion.js.map +1 -0
  383. package/dist/ui/use-toast.d.ts +50 -0
  384. package/dist/ui/use-toast.d.ts.map +1 -0
  385. package/dist/ui/use-toast.js +2 -1
  386. package/dist/ui/use-toast.js.map +1 -0
  387. package/dist/ui/useListState.d.ts +34 -0
  388. package/dist/ui/useListState.d.ts.map +1 -0
  389. package/dist/ui/useListState.js +2 -1
  390. package/dist/ui/useListState.js.map +1 -0
  391. package/dist/ui/usecases/UseCaseCard.d.ts +19 -0
  392. package/dist/ui/usecases/UseCaseCard.d.ts.map +1 -0
  393. package/dist/ui/usecases/UseCaseCard.js +2 -1
  394. package/dist/ui/usecases/UseCaseCard.js.map +1 -0
  395. package/dist/ui/usecases/UserStoryCard.d.ts +15 -0
  396. package/dist/ui/usecases/UserStoryCard.d.ts.map +1 -0
  397. package/dist/ui/usecases/UserStoryCard.js +2 -1
  398. package/dist/ui/usecases/UserStoryCard.js.map +1 -0
  399. package/dist/ui/usecases/index.d.ts +3 -0
  400. package/dist/ui/utils.d.ts +7 -0
  401. package/dist/ui/utils.d.ts.map +1 -0
  402. package/dist/ui/utils.js +2 -1
  403. package/dist/ui/utils.js.map +1 -0
  404. package/dist/ui/visually-hidden.d.ts +10 -0
  405. package/dist/ui/visually-hidden.d.ts.map +1 -0
  406. package/dist/ui/visually-hidden.js +2 -1
  407. package/dist/ui/visually-hidden.js.map +1 -0
  408. package/package.json +130 -123
  409. package/dist/tsconfig.tsbuildinfo +0 -1
@@ -0,0 +1,18 @@
1
+ import * as react_jsx_runtime55 from "react/jsx-runtime";
2
+
3
+ //#region ui/map/MapHeatmapH3.d.ts
4
+ interface H3FeatureProperties {
5
+ id: string;
6
+ h3Index?: string;
7
+ count: number;
8
+ }
9
+ interface H3HeatmapProps {
10
+ id?: string;
11
+ data: GeoJSON.FeatureCollection<GeoJSON.Polygon | GeoJSON.MultiPolygon, H3FeatureProperties>;
12
+ colorStops?: [number, string][];
13
+ maxCount?: number;
14
+ }
15
+ declare function MapHeatmapH3(props: H3HeatmapProps): react_jsx_runtime55.JSX.Element;
16
+ //#endregion
17
+ export { H3FeatureProperties, H3HeatmapProps, MapHeatmapH3, MapHeatmapH3 as default };
18
+ //# sourceMappingURL=MapHeatmapH3.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MapHeatmapH3.d.ts","names":[],"sources":["../../../ui/map/MapHeatmapH3.tsx"],"sourcesContent":[],"mappings":";;;UAKiB,mBAAA;;;EAAA,KAAA,EAAA,MAAA;AAMjB;AAGI,UAHa,cAAA,CAGL;EAAU,EAAA,CAAA,EAAQ,MAAA;EAC1B,IAAA,EAFI,OAAA,CAAQ,iBAEZ,CADA,OAAA,CAAQ,OACR,GADkB,OAAA,CAAQ,YAC1B,EAAA,mBAAA,CAAA;EAFI,UAAQ,CAAA,EAAA,CAAA,MAAA,EAAA,MAAA,CAAA,EAAA;EAAiB,QAAA,CAAA,EAAA,MAAA;AAwBjC;iBAAgB,YAAA,QAAoB,iBAAc,mBAAA,CAAA,GAAA,CAAA"}
@@ -5,7 +5,7 @@ import { jsx, jsxs } from "react/jsx-runtime";
5
5
  import { Layer, Source } from "react-map-gl/maplibre";
6
6
 
7
7
  //#region ui/map/MapHeatmapH3.tsx
8
- function buildChoroplethPaint(stops, maxCount) {
8
+ function buildChoroplethPaint(stops, _maxCount) {
9
9
  const scaleStops = (stops || []).map(([c, col]) => [c, col]);
10
10
  return {
11
11
  "fill-color": [
@@ -47,4 +47,5 @@ function MapHeatmapH3(props) {
47
47
  var MapHeatmapH3_default = MapHeatmapH3;
48
48
 
49
49
  //#endregion
50
- export { MapHeatmapH3, MapHeatmapH3_default as default };
50
+ export { MapHeatmapH3, MapHeatmapH3_default as default };
51
+ //# sourceMappingURL=MapHeatmapH3.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MapHeatmapH3.js","names":["fillLayer: any","lineLayer: any"],"sources":["../../../ui/map/MapHeatmapH3.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { Layer, Source } from 'react-map-gl/maplibre';\n\nexport interface H3FeatureProperties {\n id: string;\n h3Index?: string;\n count: number;\n}\n\nexport interface H3HeatmapProps {\n id?: string;\n data: GeoJSON.FeatureCollection<\n GeoJSON.Polygon | GeoJSON.MultiPolygon,\n H3FeatureProperties\n >;\n colorStops?: [number, string][]; // [count, color]\n maxCount?: number; // for normalization\n}\n\nfunction buildChoroplethPaint(\n stops: [number, string][],\n _maxCount: number | undefined\n) {\n const scaleStops = (stops || []).map(([c, col]) => [c, col]);\n return {\n 'fill-color': [\n 'interpolate',\n ['linear'],\n ['get', 'count'],\n ...scaleStops.flat(),\n ],\n 'fill-opacity': 0.6,\n } as const;\n}\n\nexport function MapHeatmapH3(props: H3HeatmapProps) {\n const {\n id = 'h3-heatmap',\n data,\n colorStops = [\n [0, '#22c55e'],\n [5, '#eab308'],\n [10, '#ef4444'],\n ],\n maxCount,\n } = props;\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const fillLayer: any = {\n id: `${id}-fill`,\n type: 'fill',\n paint: buildChoroplethPaint(colorStops, maxCount),\n };\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const lineLayer: any = {\n id: `${id}-outline`,\n type: 'line',\n paint: {\n 'line-color': '#ffffff',\n 'line-width': 0.25,\n 'line-opacity': 0.25,\n },\n };\n\n return (\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n <Source id={id} type=\"geojson\" data={data as any}>\n <Layer {...fillLayer} />\n <Layer {...lineLayer} />\n </Source>\n );\n}\n\nexport default MapHeatmapH3;\n"],"mappings":";;;;;;;AAqBA,SAAS,qBACP,OACA,WACA;CACA,MAAM,cAAc,SAAS,EAAE,EAAE,KAAK,CAAC,GAAG,SAAS,CAAC,GAAG,IAAI,CAAC;AAC5D,QAAO;EACL,cAAc;GACZ;GACA,CAAC,SAAS;GACV,CAAC,OAAO,QAAQ;GAChB,GAAG,WAAW,MAAM;GACrB;EACD,gBAAgB;EACjB;;AAGH,SAAgB,aAAa,OAAuB;CAClD,MAAM,EACJ,KAAK,cACL,MACA,aAAa;EACX,CAAC,GAAG,UAAU;EACd,CAAC,GAAG,UAAU;EACd,CAAC,IAAI,UAAU;EAChB,EACD,aACE;CAGJ,MAAMA,YAAiB;EACrB,IAAI,GAAG,GAAG;EACV,MAAM;EACN,OAAO,qBAAqB,YAAY,SAAS;EAClD;CAGD,MAAMC,YAAiB;EACrB,IAAI,GAAG,GAAG;EACV,MAAM;EACN,OAAO;GACL,cAAc;GACd,cAAc;GACd,gBAAgB;GACjB;EACF;AAED,QAEE,qBAAC;EAAW;EAAI,MAAK;EAAgB;aACnC,oBAAC,SAAM,GAAI,YAAa,EACxB,oBAAC,SAAM,GAAI,YAAa;GACjB;;AAIb,2BAAe"}
@@ -0,0 +1,20 @@
1
+ import * as react_jsx_runtime58 from "react/jsx-runtime";
2
+
3
+ //#region ui/map/MapMarkers.d.ts
4
+ interface MapPoint {
5
+ id: string;
6
+ lng: number;
7
+ lat: number;
8
+ color?: string;
9
+ size?: number;
10
+ ariaLabel?: string;
11
+ onClick?: () => void;
12
+ }
13
+ declare function MapMarkers({
14
+ points
15
+ }: {
16
+ points: MapPoint[];
17
+ }): react_jsx_runtime58.JSX.Element;
18
+ //#endregion
19
+ export { MapMarkers, MapMarkers as default, MapPoint };
20
+ //# sourceMappingURL=MapMarkers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MapMarkers.d.ts","names":[],"sources":["../../../ui/map/MapMarkers.tsx"],"sourcesContent":[],"mappings":";;;UAKiB,QAAA;;;EAAA,GAAA,EAAA,MAAQ;EAUT,KAAA,CAAA,EAAA,MAAU;EAAG,IAAA,CAAA,EAAA,MAAA;EAAoB,SAAA,CAAA,EAAA,MAAA;EAAY,OAAA,CAAA,EAAA,GAAA,GAAA,IAAA;;iBAA7C,UAAA;;;UAAiC;IAAY,mBAAA,CAAA,GAAA,CAAA"}
@@ -10,11 +10,17 @@ function MapMarkers({ points }) {
10
10
  longitude: p.lng,
11
11
  latitude: p.lat,
12
12
  anchor: "bottom",
13
- children: /* @__PURE__ */ jsx("div", {
13
+ children: /* @__PURE__ */ jsx("button", {
14
14
  role: p.onClick ? "button" : void 0,
15
15
  tabIndex: p.onClick ? 0 : -1,
16
16
  "aria-label": p.ariaLabel || "marker",
17
17
  onClick: p.onClick,
18
+ onKeyDown: (e) => {
19
+ if (e.key === "Enter" || e.key === " ") {
20
+ e.preventDefault();
21
+ p.onClick?.();
22
+ }
23
+ },
18
24
  style: {
19
25
  width: p.size ?? 14,
20
26
  height: p.size ?? 14,
@@ -30,4 +36,5 @@ function MapMarkers({ points }) {
30
36
  var MapMarkers_default = MapMarkers;
31
37
 
32
38
  //#endregion
33
- export { MapMarkers, MapMarkers_default as default };
39
+ export { MapMarkers, MapMarkers_default as default };
40
+ //# sourceMappingURL=MapMarkers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MapMarkers.js","names":[],"sources":["../../../ui/map/MapMarkers.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { Marker } from 'react-map-gl/maplibre';\n\nexport interface MapPoint {\n id: string;\n lng: number;\n lat: number;\n color?: string;\n size?: number;\n ariaLabel?: string;\n onClick?: () => void;\n}\n\nexport function MapMarkers({ points }: { points: MapPoint[] }) {\n return (\n <>\n {points.map((p) => (\n <Marker key={p.id} longitude={p.lng} latitude={p.lat} anchor=\"bottom\">\n <button\n role={p.onClick ? 'button' : undefined}\n tabIndex={p.onClick ? 0 : -1}\n aria-label={p.ariaLabel || 'marker'}\n onClick={p.onClick}\n onKeyDown={(e) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n p.onClick?.();\n }\n }}\n style={{\n width: p.size ?? 14,\n height: p.size ?? 14,\n background: p.color ?? '#2563eb',\n border: '2px solid white',\n borderRadius: 9999,\n boxShadow: '0 1px 3px rgba(0,0,0,0.35)',\n cursor: p.onClick ? 'pointer' : 'default',\n }}\n />\n </Marker>\n ))}\n </>\n );\n}\n\nexport default MapMarkers;\n"],"mappings":";;;;;;;AAeA,SAAgB,WAAW,EAAE,UAAkC;AAC7D,QACE,0CACG,OAAO,KAAK,MACX,oBAAC;EAAkB,WAAW,EAAE;EAAK,UAAU,EAAE;EAAK,QAAO;YAC3D,oBAAC;GACC,MAAM,EAAE,UAAU,WAAW;GAC7B,UAAU,EAAE,UAAU,IAAI;GAC1B,cAAY,EAAE,aAAa;GAC3B,SAAS,EAAE;GACX,YAAY,MAAM;AAChB,QAAI,EAAE,QAAQ,WAAW,EAAE,QAAQ,KAAK;AACtC,OAAE,gBAAgB;AAClB,OAAE,WAAW;;;GAGjB,OAAO;IACL,OAAO,EAAE,QAAQ;IACjB,QAAQ,EAAE,QAAQ;IAClB,YAAY,EAAE,SAAS;IACvB,QAAQ;IACR,cAAc;IACd,WAAW;IACX,QAAQ,EAAE,UAAU,YAAY;IACjC;IACD;IArBS,EAAE,GAsBN,CACT,GACD;;AAIP,yBAAe"}
@@ -0,0 +1,5 @@
1
+ import { BBox, MapBase, MapBaseProps } from "./MapBase.js";
2
+ import { GeoJsonOverlayProps, MapGeoJsonOverlay } from "./MapGeoJsonOverlay.js";
3
+ import { H3FeatureProperties, H3HeatmapProps, MapHeatmapH3 } from "./MapHeatmapH3.js";
4
+ import { MapMarkers, MapPoint } from "./MapMarkers.js";
5
+ export { BBox, GeoJsonOverlayProps, H3FeatureProperties, H3HeatmapProps, MapBase, MapBaseProps, MapGeoJsonOverlay, MapHeatmapH3, MapMarkers, MapPoint };
@@ -0,0 +1,21 @@
1
+ import * as React$1 from "react";
2
+ import * as react_jsx_runtime77 from "react/jsx-runtime";
3
+
4
+ //#region ui/marketing/FeatureGrid.d.ts
5
+ interface FeatureItem {
6
+ title: React$1.ReactNode;
7
+ description?: React$1.ReactNode;
8
+ icon?: React$1.ReactNode;
9
+ }
10
+ declare function FeatureGrid({
11
+ items,
12
+ columns,
13
+ className
14
+ }: {
15
+ items: FeatureItem[];
16
+ columns?: 2 | 3 | 4;
17
+ className?: string;
18
+ }): react_jsx_runtime77.JSX.Element;
19
+ //#endregion
20
+ export { FeatureGrid, FeatureItem };
21
+ //# sourceMappingURL=FeatureGrid.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FeatureGrid.d.ts","names":[],"sources":["../../../ui/marketing/FeatureGrid.tsx"],"sourcesContent":[],"mappings":";;;;UAGiB,WAAA;SACR,OAAA,CAAM;gBACC,OAAA,CAAM;EAFL,IAAA,CAAA,EAGR,OAAA,CAAM,SAHa;;AAEZ,iBAIA,WAAA,CAJM;EAAA,KAAA;EAAA,OAAA;EAAA;CAAA,EAAA;EACb,KAAM,EAQN,WARM,EAAA;EAAS,OAAA,CAAA,EAAA,CAAA,GAAA,CAAA,GAAA,CAAA;EAGR,SAAA,CAAA,EAAA,MAAW;CACzB,CAAA,EAOD,mBAAA,CAAA,GAAA,CAAA,OAPC"}
@@ -31,4 +31,5 @@ function FeatureGrid({ items, columns = 3, className }) {
31
31
  }
32
32
 
33
33
  //#endregion
34
- export { FeatureGrid };
34
+ export { FeatureGrid };
35
+ //# sourceMappingURL=FeatureGrid.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FeatureGrid.js","names":[],"sources":["../../../ui/marketing/FeatureGrid.tsx"],"sourcesContent":["import * as React from 'react';\nimport { cn } from '../utils';\n\nexport interface FeatureItem {\n title: React.ReactNode;\n description?: React.ReactNode;\n icon?: React.ReactNode;\n}\n\nexport function FeatureGrid({\n items,\n columns = 3,\n className,\n}: {\n items: FeatureItem[];\n columns?: 2 | 3 | 4;\n className?: string;\n}) {\n const gridCols =\n columns === 4\n ? 'md:grid-cols-4'\n : columns === 2\n ? 'md:grid-cols-2'\n : 'md:grid-cols-3';\n return (\n <section className={cn('mx-auto max-w-6xl py-12', className)}>\n <div className={cn('grid grid-cols-1 gap-6', gridCols)}>\n {items.map((it, idx) => (\n <div key={idx} className=\"rounded-lg border p-6\">\n {it.icon && <div className=\"text-primary mb-3\">{it.icon}</div>}\n <h3 className=\"text-lg font-semibold\">{it.title}</h3>\n {it.description && (\n <p className=\"text-muted-foreground mt-2 text-base\">\n {it.description}\n </p>\n )}\n </div>\n ))}\n </div>\n </section>\n );\n}\n"],"mappings":";;;;;AASA,SAAgB,YAAY,EAC1B,OACA,UAAU,GACV,aAKC;CACD,MAAM,WACJ,YAAY,IACR,mBACA,YAAY,IACV,mBACA;AACR,QACE,oBAAC;EAAQ,WAAW,GAAG,2BAA2B,UAAU;YAC1D,oBAAC;GAAI,WAAW,GAAG,0BAA0B,SAAS;aACnD,MAAM,KAAK,IAAI,QACd,qBAAC;IAAc,WAAU;;KACtB,GAAG,QAAQ,oBAAC;MAAI,WAAU;gBAAqB,GAAG;OAAW;KAC9D,oBAAC;MAAG,WAAU;gBAAyB,GAAG;OAAW;KACpD,GAAG,eACF,oBAAC;MAAE,WAAU;gBACV,GAAG;OACF;;MANE,IAQJ,CACN;IACE;GACE"}
@@ -0,0 +1,28 @@
1
+ import * as React$1 from "react";
2
+ import * as react_jsx_runtime78 from "react/jsx-runtime";
3
+
4
+ //#region ui/marketing/Hero.d.ts
5
+ declare function Hero({
6
+ title,
7
+ subtitle,
8
+ primaryCta,
9
+ secondaryCta,
10
+ className
11
+ }: {
12
+ title: React$1.ReactNode;
13
+ subtitle?: React$1.ReactNode;
14
+ primaryCta?: {
15
+ label: string;
16
+ href?: string;
17
+ onClick?: () => void;
18
+ };
19
+ secondaryCta?: {
20
+ label: string;
21
+ href?: string;
22
+ onClick?: () => void;
23
+ };
24
+ className?: string;
25
+ }): react_jsx_runtime78.JSX.Element;
26
+ //#endregion
27
+ export { Hero };
28
+ //# sourceMappingURL=Hero.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Hero.d.ts","names":[],"sources":["../../../ui/marketing/Hero.tsx"],"sourcesContent":[],"mappings":";;;;iBAIgB,IAAA;;;;;;;SAOP,OAAA,CAAM;aACF,OAAA,CAAM;EARH,UAAI,CAAA,EAAA;IAClB,KAAA,EAAA,MAAA;IACA,IAAA,CAAA,EAAA,MAAA;IACA,OAAA,CAAA,EAAA,GAAA,GAAA,IAAA;EACA,CAAA;EACA,YAAA,CAAA,EAAA;IAEO,KAAM,EAAA,MAAA;IACF,IAAM,CAAA,EAAA,MAAA;IAIlB,OAAA,CAAA,EAAA,GAAA,GAAA,IAAA;EAAA,CAAA;;IAAA,mBAAA,CAAA,GAAA,CAAA"}
@@ -49,4 +49,5 @@ function Hero({ title, subtitle, primaryCta, secondaryCta, className }) {
49
49
  }
50
50
 
51
51
  //#endregion
52
- export { Hero };
52
+ export { Hero };
53
+ //# sourceMappingURL=Hero.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Hero.js","names":[],"sources":["../../../ui/marketing/Hero.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Button } from '../button';\nimport { cn } from '../utils';\n\nexport function Hero({\n title,\n subtitle,\n primaryCta,\n secondaryCta,\n className,\n}: {\n title: React.ReactNode;\n subtitle?: React.ReactNode;\n primaryCta?: { label: string; href?: string; onClick?: () => void };\n secondaryCta?: { label: string; href?: string; onClick?: () => void };\n className?: string;\n}) {\n return (\n <section className={cn('mx-auto max-w-4xl py-16 text-center', className)}>\n <h1 className=\"text-4xl font-bold tracking-tight md:text-5xl\">{title}</h1>\n {subtitle && (\n <p className=\"text-muted-foreground mt-4 text-lg md:text-xl\">\n {subtitle}\n </p>\n )}\n {(primaryCta || secondaryCta) && (\n <div className=\"mt-8 flex items-center justify-center gap-3\">\n {primaryCta &&\n (primaryCta.href ? (\n <Button asChild size=\"lg\">\n {}\n <a href={primaryCta.href}>{primaryCta.label}</a>\n </Button>\n ) : (\n <Button size=\"lg\" onClick={primaryCta.onClick}>\n {primaryCta.label}\n </Button>\n ))}\n {secondaryCta &&\n (secondaryCta.href ? (\n <Button variant=\"outline\" asChild size=\"lg\">\n {}\n <a href={secondaryCta.href}>{secondaryCta.label}</a>\n </Button>\n ) : (\n <Button\n variant=\"outline\"\n size=\"lg\"\n onClick={secondaryCta.onClick}\n >\n {secondaryCta.label}\n </Button>\n ))}\n </div>\n )}\n </section>\n );\n}\n"],"mappings":";;;;;;AAIA,SAAgB,KAAK,EACnB,OACA,UACA,YACA,cACA,aAOC;AACD,QACE,qBAAC;EAAQ,WAAW,GAAG,uCAAuC,UAAU;;GACtE,oBAAC;IAAG,WAAU;cAAiD;KAAW;GACzE,YACC,oBAAC;IAAE,WAAU;cACV;KACC;IAEJ,cAAc,iBACd,qBAAC;IAAI,WAAU;eACZ,eACE,WAAW,OACV,oBAAC;KAAO;KAAQ,MAAK;eAEnB,oBAAC;MAAE,MAAM,WAAW;gBAAO,WAAW;OAAU;MACzC,GAET,oBAAC;KAAO,MAAK;KAAK,SAAS,WAAW;eACnC,WAAW;MACL,GAEZ,iBACE,aAAa,OACZ,oBAAC;KAAO,SAAQ;KAAU;KAAQ,MAAK;eAErC,oBAAC;MAAE,MAAM,aAAa;gBAAO,aAAa;OAAU;MAC7C,GAET,oBAAC;KACC,SAAQ;KACR,MAAK;KACL,SAAS,aAAa;eAErB,aAAa;MACP;KAET;;GAEA"}
@@ -0,0 +1,25 @@
1
+ import * as react_jsx_runtime79 from "react/jsx-runtime";
2
+
3
+ //#region ui/marketing/PricingTable.d.ts
4
+ interface PricingTier {
5
+ name: string;
6
+ price: string;
7
+ tagline?: string;
8
+ features: string[];
9
+ cta?: {
10
+ label: string;
11
+ href?: string;
12
+ onClick?: () => void;
13
+ };
14
+ highlighted?: boolean;
15
+ }
16
+ declare function PricingTable({
17
+ tiers,
18
+ className
19
+ }: {
20
+ tiers: PricingTier[];
21
+ className?: string;
22
+ }): react_jsx_runtime79.JSX.Element;
23
+ //#endregion
24
+ export { PricingTable, PricingTier };
25
+ //# sourceMappingURL=PricingTable.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PricingTable.d.ts","names":[],"sources":["../../../ui/marketing/PricingTable.tsx"],"sourcesContent":[],"mappings":";;;UAIiB,WAAA;;;EAAA,OAAA,CAAA,EAAA,MAAW;EASZ,QAAA,EAAA,MAAY,EAAA;EAC1B,GAAA,CAAA,EAAA;IACA,KAAA,EAAA,MAAA;IAEO,IAAA,CAAA,EAAA,MAAA;IAER,OAAA,CAAA,EAAA,GAAA,GAAA,IAAA;EAAA,CAAA;;;iBANe,YAAA;;;;SAIP;;IAER,mBAAA,CAAA,GAAA,CAAA"}
@@ -56,4 +56,5 @@ function PricingTable({ tiers, className }) {
56
56
  }
57
57
 
58
58
  //#endregion
59
- export { PricingTable };
59
+ export { PricingTable };
60
+ //# sourceMappingURL=PricingTable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PricingTable.js","names":[],"sources":["../../../ui/marketing/PricingTable.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Button } from '../button';\nimport { cn } from '../utils';\n\nexport interface PricingTier {\n name: string;\n price: string;\n tagline?: string;\n features: string[];\n cta?: { label: string; href?: string; onClick?: () => void };\n highlighted?: boolean;\n}\n\nexport function PricingTable({\n tiers,\n className,\n}: {\n tiers: PricingTier[];\n className?: string;\n}) {\n return (\n <section className={cn('mx-auto max-w-6xl py-12', className)}>\n <div className=\"grid grid-cols-1 gap-6 md:grid-cols-3\">\n {tiers.map((t, idx) => (\n <div\n key={idx}\n className={cn(\n 'flex flex-col rounded-lg border p-6',\n t.highlighted && 'border-primary shadow-lg'\n )}\n >\n <div className=\"text-muted-foreground mb-2 text-base font-medium\">\n {t.name}\n </div>\n <div className=\"text-3xl font-semibold\">{t.price}</div>\n {t.tagline && (\n <div className=\"text-muted-foreground mt-1 text-base\">\n {t.tagline}\n </div>\n )}\n <ul className=\"mt-4 space-y-2 text-base\">\n {t.features.map((f, i) => (\n <li key={i} className=\"flex items-start gap-2\">\n <span className=\"bg-primary mt-1 h-1.5 w-1.5 rounded-full\" />\n <span>{f}</span>\n </li>\n ))}\n </ul>\n {t.cta && (\n <div className=\"mt-6\">\n {t.cta.href ? (\n <Button asChild className=\"w-full\">\n {}\n <a href={t.cta.href}>{t.cta.label}</a>\n </Button>\n ) : (\n <Button className=\"w-full\" onClick={t.cta.onClick}>\n {t.cta.label}\n </Button>\n )}\n </div>\n )}\n </div>\n ))}\n </div>\n <p className=\"text-muted-foreground mt-6 text-center text-base\">\n Usage-based tiers inspired by generous free allowances and per-unit\n pricing.\n </p>\n </section>\n );\n}\n"],"mappings":";;;;;;AAaA,SAAgB,aAAa,EAC3B,OACA,aAIC;AACD,QACE,qBAAC;EAAQ,WAAW,GAAG,2BAA2B,UAAU;aAC1D,oBAAC;GAAI,WAAU;aACZ,MAAM,KAAK,GAAG,QACb,qBAAC;IAEC,WAAW,GACT,uCACA,EAAE,eAAe,2BAClB;;KAED,oBAAC;MAAI,WAAU;gBACZ,EAAE;OACC;KACN,oBAAC;MAAI,WAAU;gBAA0B,EAAE;OAAY;KACtD,EAAE,WACD,oBAAC;MAAI,WAAU;gBACZ,EAAE;OACC;KAER,oBAAC;MAAG,WAAU;gBACX,EAAE,SAAS,KAAK,GAAG,MAClB,qBAAC;OAAW,WAAU;kBACpB,oBAAC,UAAK,WAAU,6CAA6C,EAC7D,oBAAC,oBAAM,IAAS;SAFT,EAGJ,CACL;OACC;KACJ,EAAE,OACD,oBAAC;MAAI,WAAU;gBACZ,EAAE,IAAI,OACL,oBAAC;OAAO;OAAQ,WAAU;iBAExB,oBAAC;QAAE,MAAM,EAAE,IAAI;kBAAO,EAAE,IAAI;SAAU;QAC/B,GAET,oBAAC;OAAO,WAAU;OAAS,SAAS,EAAE,IAAI;iBACvC,EAAE,IAAI;QACA;OAEP;;MAnCH,IAqCD,CACN;IACE,EACN,oBAAC;GAAE,WAAU;aAAmD;IAG5D;GACI"}
@@ -0,0 +1,4 @@
1
+ import { FeatureGrid, FeatureItem } from "./FeatureGrid.js";
2
+ import { Hero } from "./Hero.js";
3
+ import { PricingTable, PricingTier } from "./PricingTable.js";
4
+ export { FeatureGrid, type FeatureItem, Hero, PricingTable, type PricingTier };
@@ -0,0 +1,85 @@
1
+ import * as React$1 from "react";
2
+ import * as react_jsx_runtime226 from "react/jsx-runtime";
3
+ import * as MenubarPrimitive from "@radix-ui/react-menubar";
4
+
5
+ //#region ui/menubar.d.ts
6
+ declare function Menubar({
7
+ className,
8
+ ...props
9
+ }: React$1.ComponentProps<typeof MenubarPrimitive.Root>): react_jsx_runtime226.JSX.Element;
10
+ declare function MenubarMenu({
11
+ ...props
12
+ }: React$1.ComponentProps<typeof MenubarPrimitive.Menu>): react_jsx_runtime226.JSX.Element;
13
+ declare function MenubarGroup({
14
+ ...props
15
+ }: React$1.ComponentProps<typeof MenubarPrimitive.Group>): react_jsx_runtime226.JSX.Element;
16
+ declare function MenubarPortal({
17
+ ...props
18
+ }: React$1.ComponentProps<typeof MenubarPrimitive.Portal>): react_jsx_runtime226.JSX.Element;
19
+ declare function MenubarRadioGroup({
20
+ ...props
21
+ }: React$1.ComponentProps<typeof MenubarPrimitive.RadioGroup>): react_jsx_runtime226.JSX.Element;
22
+ declare function MenubarTrigger({
23
+ className,
24
+ ...props
25
+ }: React$1.ComponentProps<typeof MenubarPrimitive.Trigger>): react_jsx_runtime226.JSX.Element;
26
+ declare function MenubarContent({
27
+ className,
28
+ align,
29
+ alignOffset,
30
+ sideOffset,
31
+ ...props
32
+ }: React$1.ComponentProps<typeof MenubarPrimitive.Content>): react_jsx_runtime226.JSX.Element;
33
+ declare function MenubarItem({
34
+ className,
35
+ inset,
36
+ variant,
37
+ ...props
38
+ }: React$1.ComponentProps<typeof MenubarPrimitive.Item> & {
39
+ inset?: boolean;
40
+ variant?: 'default' | 'destructive';
41
+ }): react_jsx_runtime226.JSX.Element;
42
+ declare function MenubarCheckboxItem({
43
+ className,
44
+ children,
45
+ checked,
46
+ ...props
47
+ }: React$1.ComponentProps<typeof MenubarPrimitive.CheckboxItem>): react_jsx_runtime226.JSX.Element;
48
+ declare function MenubarRadioItem({
49
+ className,
50
+ children,
51
+ ...props
52
+ }: React$1.ComponentProps<typeof MenubarPrimitive.RadioItem>): react_jsx_runtime226.JSX.Element;
53
+ declare function MenubarLabel({
54
+ className,
55
+ inset,
56
+ ...props
57
+ }: React$1.ComponentProps<typeof MenubarPrimitive.Label> & {
58
+ inset?: boolean;
59
+ }): react_jsx_runtime226.JSX.Element;
60
+ declare function MenubarSeparator({
61
+ className,
62
+ ...props
63
+ }: React$1.ComponentProps<typeof MenubarPrimitive.Separator>): react_jsx_runtime226.JSX.Element;
64
+ declare function MenubarShortcut({
65
+ className,
66
+ ...props
67
+ }: React$1.ComponentPropsWithoutRef<'span'>): react_jsx_runtime226.JSX.Element;
68
+ declare function MenubarSub({
69
+ ...props
70
+ }: React$1.ComponentProps<typeof MenubarPrimitive.Sub>): react_jsx_runtime226.JSX.Element;
71
+ declare function MenubarSubTrigger({
72
+ className,
73
+ inset,
74
+ children,
75
+ ...props
76
+ }: React$1.ComponentProps<typeof MenubarPrimitive.SubTrigger> & {
77
+ inset?: boolean;
78
+ }): react_jsx_runtime226.JSX.Element;
79
+ declare function MenubarSubContent({
80
+ className,
81
+ ...props
82
+ }: React$1.ComponentProps<typeof MenubarPrimitive.SubContent>): react_jsx_runtime226.JSX.Element;
83
+ //#endregion
84
+ export { Menubar, MenubarCheckboxItem, MenubarContent, MenubarGroup, MenubarItem, MenubarLabel, MenubarMenu, MenubarPortal, MenubarRadioGroup, MenubarRadioItem, MenubarSeparator, MenubarShortcut, MenubarSub, MenubarSubContent, MenubarSubTrigger, MenubarTrigger };
85
+ //# sourceMappingURL=menubar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"menubar.d.ts","names":[],"sources":["../../ui/menubar.tsx"],"sourcesContent":[],"mappings":"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"}
@@ -133,4 +133,5 @@ function MenubarSubContent({ className, ...props }) {
133
133
  }
134
134
 
135
135
  //#endregion
136
- export { Menubar, MenubarCheckboxItem, MenubarContent, MenubarGroup, MenubarItem, MenubarLabel, MenubarMenu, MenubarPortal, MenubarRadioGroup, MenubarRadioItem, MenubarSeparator, MenubarShortcut, MenubarSub, MenubarSubContent, MenubarSubTrigger, MenubarTrigger };
136
+ export { Menubar, MenubarCheckboxItem, MenubarContent, MenubarGroup, MenubarItem, MenubarLabel, MenubarMenu, MenubarPortal, MenubarRadioGroup, MenubarRadioItem, MenubarSeparator, MenubarShortcut, MenubarSub, MenubarSubContent, MenubarSubTrigger, MenubarTrigger };
137
+ //# sourceMappingURL=menubar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"menubar.js","names":[],"sources":["../../ui/menubar.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport * as MenubarPrimitive from '@radix-ui/react-menubar';\nimport { CheckIcon, ChevronRightIcon, CircleIcon } from 'lucide-react';\n\nimport { cn } from '@lssm/lib.ui-kit-core/utils';\n\nfunction Menubar({\n className,\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.Root>) {\n return (\n <MenubarPrimitive.Root\n data-slot=\"menubar\"\n className={cn(\n 'bg-background flex h-9 items-center gap-1 rounded-md border p-1 shadow-2xs',\n className\n )}\n {...props}\n />\n );\n}\n\nfunction MenubarMenu({\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.Menu>) {\n return <MenubarPrimitive.Menu data-slot=\"menubar-menu\" {...props} />;\n}\n\nfunction MenubarGroup({\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.Group>) {\n return <MenubarPrimitive.Group data-slot=\"menubar-group\" {...props} />;\n}\n\nfunction MenubarPortal({\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.Portal>) {\n return <MenubarPrimitive.Portal data-slot=\"menubar-portal\" {...props} />;\n}\n\nfunction MenubarRadioGroup({\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.RadioGroup>) {\n return (\n <MenubarPrimitive.RadioGroup data-slot=\"menubar-radio-group\" {...props} />\n );\n}\n\nfunction MenubarTrigger({\n className,\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.Trigger>) {\n return (\n <MenubarPrimitive.Trigger\n data-slot=\"menubar-trigger\"\n className={cn(\n 'focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground flex items-center rounded-xs px-2 py-1 text-sm font-medium outline-hidden select-none',\n className\n )}\n {...props}\n />\n );\n}\n\nfunction MenubarContent({\n className,\n align = 'start',\n alignOffset = -4,\n sideOffset = 8,\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.Content>) {\n return (\n <MenubarPortal>\n <MenubarPrimitive.Content\n data-slot=\"menubar-content\"\n align={align}\n alignOffset={alignOffset}\n sideOffset={sideOffset}\n className={cn(\n 'bg-popover text-popover-foreground data-[state=open]:animate-in 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-48 origin-(--radix-menubar-content-transform-origin) overflow-hidden rounded-md border p-1 shadow-md',\n className\n )}\n {...props}\n />\n </MenubarPortal>\n );\n}\n\nfunction MenubarItem({\n className,\n inset,\n variant = 'default',\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.Item> & {\n inset?: boolean;\n variant?: 'default' | 'destructive';\n}) {\n return (\n <MenubarPrimitive.Item\n data-slot=\"menubar-item\"\n data-inset={inset}\n data-variant={variant}\n className={cn(\n \"data-[variant=destructive]:*:[svg]:text-destructive! focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-xs px-2 py-1.5 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 data-inset:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className\n )}\n {...props}\n />\n );\n}\n\nfunction MenubarCheckboxItem({\n className,\n children,\n checked,\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.CheckboxItem>) {\n return (\n <MenubarPrimitive.CheckboxItem\n data-slot=\"menubar-checkbox-item\"\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-xs py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className\n )}\n checked={checked}\n {...props}\n >\n <span className=\"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center\">\n <MenubarPrimitive.ItemIndicator>\n <CheckIcon className=\"size-4\" />\n </MenubarPrimitive.ItemIndicator>\n </span>\n {children}\n </MenubarPrimitive.CheckboxItem>\n );\n}\n\nfunction MenubarRadioItem({\n className,\n children,\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.RadioItem>) {\n return (\n <MenubarPrimitive.RadioItem\n data-slot=\"menubar-radio-item\"\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-xs py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className\n )}\n {...props}\n >\n <span className=\"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center\">\n <MenubarPrimitive.ItemIndicator>\n <CircleIcon className=\"size-2 fill-current\" />\n </MenubarPrimitive.ItemIndicator>\n </span>\n {children}\n </MenubarPrimitive.RadioItem>\n );\n}\n\nfunction MenubarLabel({\n className,\n inset,\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.Label> & {\n inset?: boolean;\n}) {\n return (\n <MenubarPrimitive.Label\n data-slot=\"menubar-label\"\n data-inset={inset}\n className={cn(\n 'px-2 py-1.5 text-sm font-medium data-inset:pl-8',\n className\n )}\n {...props}\n />\n );\n}\n\nfunction MenubarSeparator({\n className,\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.Separator>) {\n return (\n <MenubarPrimitive.Separator\n data-slot=\"menubar-separator\"\n className={cn('bg-border -mx-1 my-1 h-px', className)}\n {...props}\n />\n );\n}\n\nfunction MenubarShortcut({\n className,\n ...props\n}: React.ComponentPropsWithoutRef<'span'>) {\n return (\n <span\n data-slot=\"menubar-shortcut\"\n className={cn(\n 'text-muted-foreground ml-auto text-xs tracking-widest',\n className\n )}\n {...props}\n />\n );\n}\n\nfunction MenubarSub({\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.Sub>) {\n return <MenubarPrimitive.Sub data-slot=\"menubar-sub\" {...props} />;\n}\n\nfunction MenubarSubTrigger({\n className,\n inset,\n children,\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.SubTrigger> & {\n inset?: boolean;\n}) {\n return (\n <MenubarPrimitive.SubTrigger\n data-slot=\"menubar-sub-trigger\"\n data-inset={inset}\n className={cn(\n 'focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground flex cursor-default items-center rounded-xs px-2 py-1.5 text-sm outline-hidden select-none data-inset:pl-8',\n className\n )}\n {...props}\n >\n {children}\n <ChevronRightIcon className=\"ml-auto h-4 w-4\" />\n </MenubarPrimitive.SubTrigger>\n );\n}\n\nfunction MenubarSubContent({\n className,\n ...props\n}: React.ComponentProps<typeof MenubarPrimitive.SubContent>) {\n return (\n <MenubarPrimitive.SubContent\n data-slot=\"menubar-sub-content\"\n className={cn(\n '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-32 origin-(--radix-menubar-content-transform-origin) overflow-hidden rounded-md border p-1 shadow-lg',\n className\n )}\n {...props}\n />\n );\n}\n\nexport {\n Menubar,\n MenubarPortal,\n MenubarMenu,\n MenubarTrigger,\n MenubarContent,\n MenubarGroup,\n MenubarSeparator,\n MenubarLabel,\n MenubarItem,\n MenubarShortcut,\n MenubarCheckboxItem,\n MenubarRadioGroup,\n MenubarRadioItem,\n MenubarSub,\n MenubarSubTrigger,\n MenubarSubContent,\n};\n"],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import * as react_jsx_runtime248 from "react/jsx-runtime";
2
+
3
+ //#region ui/molecules/Autocomplete/index.d.ts
4
+ declare function ComboBoxResponsive(): react_jsx_runtime248.JSX.Element;
5
+ //#endregion
6
+ export { ComboBoxResponsive };
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../../../../ui/molecules/Autocomplete/index.tsx"],"sourcesContent":[],"mappings":";;;iBAyCgB,kBAAA,CAAA,GAAkB,oBAAA,CAAA,GAAA,CAAA"}
@@ -81,4 +81,5 @@ function StatusList({ setOpen, setSelectedStatus }) {
81
81
  }
82
82
 
83
83
  //#endregion
84
- export { ComboBoxResponsive };
84
+ export { ComboBoxResponsive };
85
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["statuses: Status[]","React"],"sources":["../../../../ui/molecules/Autocomplete/index.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\n\nimport { Button } from '../../button';\nimport {\n Command,\n CommandEmpty,\n CommandGroup,\n CommandInput,\n CommandItem,\n CommandList,\n} from '../../command';\nimport { Drawer, DrawerContent, DrawerTrigger } from '../../drawer';\nimport { Popover, PopoverContent, PopoverTrigger } from '../../popover';\nimport { useMediaQuery } from '../../use-media-query';\n\ninterface Status {\n value: string;\n label: string;\n}\n\nconst statuses: Status[] = [\n {\n value: 'backlog',\n label: 'Backlog',\n },\n {\n value: 'in progress',\n label: 'In Progress',\n },\n {\n value: 'done',\n label: 'Done',\n },\n {\n value: 'canceled',\n label: 'Canceled',\n },\n];\n\nexport function ComboBoxResponsive() {\n const [open, setOpen] = React.useState(false);\n const isDesktop = useMediaQuery('(min-width: 768px)');\n const [selectedStatus, setSelectedStatus] = React.useState<Status | null>(\n null\n );\n\n if (isDesktop) {\n return (\n <Popover open={open} onOpenChange={setOpen}>\n <PopoverTrigger asChild>\n <Button variant=\"outline\" className=\"w-[150px] justify-start\">\n {selectedStatus ? <>{selectedStatus.label}</> : <>+ Set status</>}\n </Button>\n </PopoverTrigger>\n <PopoverContent className=\"w-[200px] p-0\" align=\"start\">\n <StatusList setOpen={setOpen} setSelectedStatus={setSelectedStatus} />\n </PopoverContent>\n </Popover>\n );\n }\n\n return (\n <Drawer open={open} onOpenChange={setOpen}>\n <DrawerTrigger asChild>\n <Button variant=\"outline\" className=\"w-[150px] justify-start\">\n {selectedStatus ? <>{selectedStatus.label}</> : <>+ Set status</>}\n </Button>\n </DrawerTrigger>\n <DrawerContent>\n <div className=\"mt-4 border-t\">\n <StatusList setOpen={setOpen} setSelectedStatus={setSelectedStatus} />\n </div>\n </DrawerContent>\n </Drawer>\n );\n}\n\nfunction StatusList({\n setOpen,\n setSelectedStatus,\n}: {\n setOpen: (open: boolean) => void;\n setSelectedStatus: (status: Status | null) => void;\n}) {\n return (\n <Command>\n <CommandInput placeholder=\"Filter status...\" />\n <CommandList>\n <CommandEmpty>No results found.</CommandEmpty>\n <CommandGroup>\n {statuses.map((status) => (\n <CommandItem\n key={status.value}\n value={status.value}\n onSelect={(value) => {\n setSelectedStatus(\n statuses.find((priority) => priority.value === value) || null\n );\n setOpen(false);\n }}\n >\n {status.label}\n </CommandItem>\n ))}\n </CommandGroup>\n </CommandList>\n </Command>\n );\n}\n"],"mappings":";;;;;;;;;;;AAsBA,MAAMA,WAAqB;CACzB;EACE,OAAO;EACP,OAAO;EACR;CACD;EACE,OAAO;EACP,OAAO;EACR;CACD;EACE,OAAO;EACP,OAAO;EACR;CACD;EACE,OAAO;EACP,OAAO;EACR;CACF;AAED,SAAgB,qBAAqB;CACnC,MAAM,CAAC,MAAM,WAAWC,QAAM,SAAS,MAAM;CAC7C,MAAM,YAAY,cAAc,qBAAqB;CACrD,MAAM,CAAC,gBAAgB,qBAAqBA,QAAM,SAChD,KACD;AAED,KAAI,UACF,QACE,qBAAC;EAAc;EAAM,cAAc;aACjC,oBAAC;GAAe;aACd,oBAAC;IAAO,SAAQ;IAAU,WAAU;cACjC,iBAAiB,0CAAG,eAAe,QAAS,GAAG,0CAAE,iBAAe;KAC1D;IACM,EACjB,oBAAC;GAAe,WAAU;GAAgB,OAAM;aAC9C,oBAAC;IAAoB;IAA4B;KAAqB;IACvD;GACT;AAId,QACE,qBAAC;EAAa;EAAM,cAAc;aAChC,oBAAC;GAAc;aACb,oBAAC;IAAO,SAAQ;IAAU,WAAU;cACjC,iBAAiB,0CAAG,eAAe,QAAS,GAAG,0CAAE,iBAAe;KAC1D;IACK,EAChB,oBAAC,2BACC,oBAAC;GAAI,WAAU;aACb,oBAAC;IAAoB;IAA4B;KAAqB;IAClE,GACQ;GACT;;AAIb,SAAS,WAAW,EAClB,SACA,qBAIC;AACD,QACE,qBAAC,sBACC,oBAAC,gBAAa,aAAY,qBAAqB,EAC/C,qBAAC,0BACC,oBAAC,0BAAa,sBAAgC,EAC9C,oBAAC,0BACE,SAAS,KAAK,WACb,oBAAC;EAEC,OAAO,OAAO;EACd,WAAW,UAAU;AACnB,qBACE,SAAS,MAAM,aAAa,SAAS,UAAU,MAAM,IAAI,KAC1D;AACD,WAAQ,MAAM;;YAGf,OAAO;IATH,OAAO,MAUA,CACd,GACW,IACH,IACN"}
@@ -0,0 +1,8 @@
1
+ import { SearchAndFilterProps } from "./types.js";
2
+ import React from "react";
3
+
4
+ //#region ui/molecules/SearchAndFilter/SearchAndFilter.d.ts
5
+ declare const SearchAndFilter: React.FC<SearchAndFilterProps>;
6
+ //#endregion
7
+ export { SearchAndFilter };
8
+ //# sourceMappingURL=SearchAndFilter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SearchAndFilter.d.ts","names":[],"sources":["../../../../ui/molecules/SearchAndFilter/SearchAndFilter.tsx"],"sourcesContent":[],"mappings":";;;;cAYa,iBAAiB,KAAA,CAAM,GAAG"}
@@ -1,7 +1,9 @@
1
1
  import { Button } from "../../button.js";
2
2
  import { Collapsible, CollapsibleContent, CollapsibleTrigger } from "../../collapsible.js";
3
3
  import { FilterSelect } from "../../atoms/FilterSelect/FilterSelect.js";
4
+ import "../../atoms/FilterSelect/index.js";
4
5
  import { SearchInput } from "../../atoms/SearchInput/SearchInput.js";
6
+ import "../../atoms/SearchInput/index.js";
5
7
  import React, { useState } from "react";
6
8
  import { ChevronDown, ChevronUp, Filter } from "lucide-react";
7
9
  import { jsx, jsxs } from "react/jsx-runtime";
@@ -99,4 +101,5 @@ const SearchAndFilter = ({ searchValue, onSearchChange, searchPlaceholder, filte
99
101
  };
100
102
 
101
103
  //#endregion
102
- export { SearchAndFilter };
104
+ export { SearchAndFilter };
105
+ //# sourceMappingURL=SearchAndFilter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SearchAndFilter.js","names":["SearchAndFilter: React.FC<SearchAndFilterProps>"],"sources":["../../../../ui/molecules/SearchAndFilter/SearchAndFilter.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport { ChevronDown, ChevronUp, Filter } from 'lucide-react';\nimport { Button } from '../../button';\nimport {\n Collapsible,\n CollapsibleContent,\n CollapsibleTrigger,\n} from '../../collapsible';\nimport { SearchInput } from '../../atoms/SearchInput';\nimport { FilterSelect } from '../../atoms/FilterSelect';\nimport type { SearchAndFilterProps } from './types';\n\nexport const SearchAndFilter: React.FC<SearchAndFilterProps> = ({\n searchValue,\n onSearchChange,\n searchPlaceholder,\n filters = [],\n isLoading = false,\n disabled = false,\n className = '',\n collapsible = true,\n defaultCollapsed = false,\n}) => {\n const [isCollapsed, setIsCollapsed] = useState(defaultCollapsed);\n\n const hasFilters = filters.length > 0;\n const activeFiltersCount = filters.filter((f) => f.value).length;\n\n // On mobile, show collapsible by default; on desktop, always show filters\n const shouldUseCollapsible = collapsible && hasFilters;\n\n console.log('SearchAndFilter', { filters });\n\n const FilterComponents = () => (\n <div className=\"grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4\">\n {filters.map((filter) => (\n <FilterSelect\n key={filter.key}\n value={filter.value}\n options={filter.options}\n onChange={filter.onChange}\n label={filter.label}\n disabled={disabled || isLoading}\n showCounts={filter.showCounts}\n className=\"min-w-0\"\n />\n ))}\n </div>\n );\n\n return (\n <div className={`space-y-4 ${className}`}>\n {/* Search - Always visible */}\n <div className=\"flex flex-col gap-4 sm:flex-row\">\n <div className=\"flex-1\">\n <SearchInput\n value={searchValue}\n onChange={onSearchChange}\n placeholder={searchPlaceholder}\n disabled={disabled || isLoading}\n className=\"w-full\"\n />\n </div>\n\n {/* Filter toggle for mobile */}\n {shouldUseCollapsible && (\n <Collapsible\n open={!isCollapsed}\n onOpenChange={setIsCollapsed}\n className=\"sm:hidden\"\n >\n <CollapsibleTrigger asChild>\n <Button\n variant=\"outline\"\n className=\"sm:hidden\"\n disabled={disabled || isLoading}\n >\n <Filter className=\"mr-2 h-4 w-4\" />\n Filtres\n {activeFiltersCount > 0 && (\n <span className=\"bg-primary text-primary-foreground ml-2 flex h-5 w-5 items-center justify-center rounded-full text-sm\">\n {activeFiltersCount}\n </span>\n )}\n {isCollapsed ? (\n <ChevronDown className=\"ml-2 h-4 w-4\" />\n ) : (\n <ChevronUp className=\"ml-2 h-4 w-4\" />\n )}\n </Button>\n </CollapsibleTrigger>\n <CollapsibleContent className=\"mt-4 space-y-4\">\n <FilterComponents />\n </CollapsibleContent>\n </Collapsible>\n )}\n </div>\n\n {/* Filters - Always visible on desktop, collapsible on mobile */}\n {hasFilters && (\n <div className=\"hidden sm:block\">\n <FilterComponents />\n </div>\n )}\n\n {/* Active filters summary */}\n {activeFiltersCount > 0 && (\n <div className=\"flex flex-wrap items-center gap-2\">\n <span className=\"text-muted-foreground text-base\">\n Filtres actifs:\n </span>\n {filters\n .filter((f) => f.value)\n .map((filter) => {\n const selectedOption = filter.options.find(\n (opt) => opt.value === filter.value\n );\n return (\n <Button\n key={filter.key}\n variant=\"secondary\"\n size=\"sm\"\n onClick={() => filter.onChange('')}\n disabled={disabled || isLoading}\n className=\"h-7 px-2 text-sm\"\n >\n {filter.label}: {selectedOption?.label}\n <span className=\"ml-1\">×</span>\n </Button>\n );\n })}\n </div>\n )}\n </div>\n );\n};\n"],"mappings":";;;;;;;;;;;AAYA,MAAaA,mBAAmD,EAC9D,aACA,gBACA,mBACA,UAAU,EAAE,EACZ,YAAY,OACZ,WAAW,OACX,YAAY,IACZ,cAAc,MACd,mBAAmB,YACf;CACJ,MAAM,CAAC,aAAa,kBAAkB,SAAS,iBAAiB;CAEhE,MAAM,aAAa,QAAQ,SAAS;CACpC,MAAM,qBAAqB,QAAQ,QAAQ,MAAM,EAAE,MAAM,CAAC;CAG1D,MAAM,uBAAuB,eAAe;AAE5C,SAAQ,IAAI,mBAAmB,EAAE,SAAS,CAAC;CAE3C,MAAM,yBACJ,oBAAC;EAAI,WAAU;YACZ,QAAQ,KAAK,WACZ,oBAAC;GAEC,OAAO,OAAO;GACd,SAAS,OAAO;GAChB,UAAU,OAAO;GACjB,OAAO,OAAO;GACd,UAAU,YAAY;GACtB,YAAY,OAAO;GACnB,WAAU;KAPL,OAAO,IAQZ,CACF;GACE;AAGR,QACE,qBAAC;EAAI,WAAW,aAAa;;GAE3B,qBAAC;IAAI,WAAU;eACb,oBAAC;KAAI,WAAU;eACb,oBAAC;MACC,OAAO;MACP,UAAU;MACV,aAAa;MACb,UAAU,YAAY;MACtB,WAAU;OACV;MACE,EAGL,wBACC,qBAAC;KACC,MAAM,CAAC;KACP,cAAc;KACd,WAAU;gBAEV,oBAAC;MAAmB;gBAClB,qBAAC;OACC,SAAQ;OACR,WAAU;OACV,UAAU,YAAY;;QAEtB,oBAAC,UAAO,WAAU,iBAAiB;;QAElC,qBAAqB,KACpB,oBAAC;SAAK,WAAU;mBACb;UACI;QAER,cACC,oBAAC,eAAY,WAAU,iBAAiB,GAExC,oBAAC,aAAU,WAAU,iBAAiB;;QAEjC;OACU,EACrB,oBAAC;MAAmB,WAAU;gBAC5B,oBAAC,qBAAmB;OACD;MACT;KAEZ;GAGL,cACC,oBAAC;IAAI,WAAU;cACb,oBAAC,qBAAmB;KAChB;GAIP,qBAAqB,KACpB,qBAAC;IAAI,WAAU;eACb,oBAAC;KAAK,WAAU;eAAkC;MAE3C,EACN,QACE,QAAQ,MAAM,EAAE,MAAM,CACtB,KAAK,WAAW;KACf,MAAM,iBAAiB,OAAO,QAAQ,MACnC,QAAQ,IAAI,UAAU,OAAO,MAC/B;AACD,YACE,qBAAC;MAEC,SAAQ;MACR,MAAK;MACL,eAAe,OAAO,SAAS,GAAG;MAClC,UAAU,YAAY;MACtB,WAAU;;OAET,OAAO;OAAM;OAAG,gBAAgB;OACjC,oBAAC;QAAK,WAAU;kBAAO;SAAQ;;QAR1B,OAAO,IASL;MAEX;KACA;;GAEJ"}
@@ -0,0 +1,3 @@
1
+ import { SearchAndFilterProps } from "./types.js";
2
+ import { SearchAndFilter } from "./SearchAndFilter.js";
3
+ export { SearchAndFilter, type SearchAndFilterProps };
@@ -0,0 +1,24 @@
1
+ import { FilterOption } from "@lssm/lib.ui-kit-web/ui/atoms/FilterSelect";
2
+
3
+ //#region ui/molecules/SearchAndFilter/types.d.ts
4
+ interface SearchAndFilterProps {
5
+ searchValue: string;
6
+ onSearchChange: (value: string) => void;
7
+ searchPlaceholder?: string;
8
+ filters?: {
9
+ key: string;
10
+ label: string;
11
+ value: string;
12
+ options: FilterOption[];
13
+ onChange: (value: string) => void;
14
+ showCounts?: boolean;
15
+ }[];
16
+ isLoading?: boolean;
17
+ disabled?: boolean;
18
+ className?: string;
19
+ collapsible?: boolean;
20
+ defaultCollapsed?: boolean;
21
+ }
22
+ //#endregion
23
+ export { SearchAndFilterProps };
24
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","names":[],"sources":["../../../../ui/molecules/SearchAndFilter/types.ts"],"sourcesContent":[],"mappings":";;;UAEiB,oBAAA;;EAAA,cAAA,EAAA,CAAA,KAAA,EAAoB,MAAA,EAAA,GAAA,IAWxB;;;;;;aAAA"}
@@ -0,0 +1,16 @@
1
+ import * as react_jsx_runtime80 from "react/jsx-runtime";
2
+
3
+ //#region ui/molecules/SkeletonList.d.ts
4
+ interface Props {
5
+ count?: number;
6
+ className?: string;
7
+ itemClassName?: string;
8
+ }
9
+ declare function SkeletonList({
10
+ count,
11
+ className,
12
+ itemClassName
13
+ }: Props): react_jsx_runtime80.JSX.Element;
14
+ //#endregion
15
+ export { SkeletonList };
16
+ //# sourceMappingURL=SkeletonList.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SkeletonList.d.ts","names":[],"sources":["../../../ui/molecules/SkeletonList.tsx"],"sourcesContent":[],"mappings":";;;UAGU,KAAA;;;EAAA,aAAK,CAAA,EAAA,MAAA;AAMf;AACE,iBADc,YAAA,CACd;EAAA,KAAA;EAAA,SAAA;EAAA;AAAA,CAAA,EAGC,KAHD,CAAA,EAGM,mBAAA,CAAA,GAAA,CAAA,OAHN"}
@@ -11,4 +11,5 @@ function SkeletonList({ count = 6, className = "", itemClassName = "" }) {
11
11
  }
12
12
 
13
13
  //#endregion
14
- export { SkeletonList };
14
+ export { SkeletonList };
15
+ //# sourceMappingURL=SkeletonList.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SkeletonList.js","names":[],"sources":["../../../ui/molecules/SkeletonList.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Skeleton } from '../skeleton';\n\ninterface Props {\n count?: number;\n className?: string;\n itemClassName?: string;\n}\n\nexport function SkeletonList({\n count = 6,\n className = '',\n itemClassName = '',\n}: Props) {\n return (\n <div className={`space-y-3 ${className}`}>\n {Array.from({ length: count }).map((_, i) => (\n <Skeleton key={i} className={`h-20 rounded-md ${itemClassName}`} />\n ))}\n </div>\n );\n}\n"],"mappings":";;;;;AASA,SAAgB,aAAa,EAC3B,QAAQ,GACR,YAAY,IACZ,gBAAgB,MACR;AACR,QACE,oBAAC;EAAI,WAAW,aAAa;YAC1B,MAAM,KAAK,EAAE,QAAQ,OAAO,CAAC,CAAC,KAAK,GAAG,MACrC,oBAAC,YAAiB,WAAW,mBAAmB,mBAAjC,EAAoD,CACnE;GACE"}
@@ -0,0 +1,71 @@
1
+ import { NavigationMenu, NavigationMenuContent, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuTrigger } from "./navigation-menu.js";
2
+ import * as React$1 from "react";
3
+ import * as react_jsx_runtime244 from "react/jsx-runtime";
4
+ import * as class_variance_authority_types20 from "class-variance-authority/types";
5
+
6
+ //#region ui/nav-layout.d.ts
7
+ declare const navPanelVariants: (props?: ({
8
+ width?: "sm" | "lg" | "md" | "full" | null | undefined;
9
+ padding?: "none" | "sm" | "md" | null | undefined;
10
+ } & class_variance_authority_types20.ClassProp) | undefined) => string;
11
+ interface NavPanelProps extends React$1.ComponentPropsWithoutRef<'div'> {
12
+ width?: 'sm' | 'md' | 'lg' | 'full';
13
+ padding?: 'none' | 'sm' | 'md';
14
+ }
15
+ declare function NavPanel({
16
+ width,
17
+ padding,
18
+ className,
19
+ ...props
20
+ }: NavPanelProps): react_jsx_runtime244.JSX.Element;
21
+ declare function NavSimpleList({
22
+ title,
23
+ items
24
+ }: {
25
+ title?: React$1.ReactNode;
26
+ items: {
27
+ href: string;
28
+ label: string;
29
+ description?: string;
30
+ }[];
31
+ }): react_jsx_runtime244.JSX.Element;
32
+ declare function NavColumns({
33
+ columns
34
+ }: {
35
+ columns: {
36
+ title?: string;
37
+ items: {
38
+ href: string;
39
+ label: string;
40
+ description?: string;
41
+ }[];
42
+ }[];
43
+ }): react_jsx_runtime244.JSX.Element;
44
+ declare function NavCategorizedWithPreview({
45
+ categories,
46
+ modules,
47
+ activeCategory,
48
+ setActiveCategory,
49
+ activeKey: _activeKey,
50
+ setActiveKey,
51
+ preview
52
+ }: {
53
+ categories: {
54
+ key: string;
55
+ label: string;
56
+ }[];
57
+ modules: {
58
+ key: string;
59
+ title: string;
60
+ description?: string;
61
+ categories: string[];
62
+ }[];
63
+ activeCategory: string;
64
+ setActiveCategory: (k: string) => void;
65
+ activeKey: string | null;
66
+ setActiveKey: (k: string | null) => void;
67
+ preview: React$1.ReactNode;
68
+ }): react_jsx_runtime244.JSX.Element;
69
+ //#endregion
70
+ export { NavCategorizedWithPreview, NavColumns, NavigationMenuContent as NavContent, NavigationMenuItem as NavItem, NavigationMenuLink as NavLink, NavigationMenuList as NavList, NavPanel, NavPanelProps, NavigationMenu as NavRoot, NavSimpleList, NavigationMenuTrigger as NavTrigger, navPanelVariants };
71
+ //# sourceMappingURL=nav-layout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nav-layout.d.ts","names":[],"sources":["../../ui/nav-layout.tsx"],"sourcesContent":[],"mappings":";;;;;;cAYa;;;IAkBX,gCAAA,CAAA;AAlBW,UAoBI,aAAA,SAAsB,OAAA,CAAM,wBAF3C,CAAA,KAAA,CAAA,CAAA;EAEe,KAAA,CAAA,EAAA,IAAA,GAAA,IAAc,GAAA,IAAA,GAAQ,MAAA;EAKvB,OAAA,CAAA,EAAA,MAAQ,GAAA,IAAA,GAAA,IAAA;;AAEtB,iBAFc,QAAA,CAEd;EAAA,KAAA;EAAA,OAAA;EAAA,SAAA;EAAA,GAAA;AAAA,CAAA,EAGC,aAHD,CAAA,EAGc,oBAAA,CAAA,GAAA,CAAA,OAHd;AACA,iBAYc,aAAA,CAZd;EAAA,KAAA;EAAA;CAAA,EAAA;EAEC,KAAA,CAAA,EAcO,OAAA,CAAM,SAdb;EAAa,KAAA,EAAA;IAAA,IAAA,EAAA,MAAA;IAUA,KAAA,EAAA,MAAa;IAC3B,WAAA,CAAA,EAAA,MAAA;EACA,CAAA,EAAA;CAEQ,CAAA,EAET,oBAAA,CAAA,GAAA,CAAA,OAFe;AAEf,iBA4Be,UAAA,CA5Bf;EAAA;CAAA,EAAA;EAAA,OAAA,EAAA;IA4Be,KAAA,CAAA,EAAA,MAAU;IA2CV,KAAA,EAAA;MACd,IAAA,EAAA,MAAA;MACA,KAAA,EAAA,MAAA;MACA,WAAA,CAAA,EAAA,MAAA;IACA,CAAA,EAAA;EACW,CAAA,EAAA;CACX,CAAA,EA1CD,oBAAA,CAAA,GAAA,CAAA,OA0CC;AACA,iBAPc,yBAAA,CAOd;EAAA,UAAA;EAAA,OAAA;EAAA,cAAA;EAAA,iBAAA;EAAA,SAAA,EAFW,UAEX;EAAA,YAAA;EAAA;CAAA,EAAA;EAaS,UAAM,EAAA;IAChB,GAAA,EAAA,MAAA;IAAA,KAAA,EAAA,MAAA;;;;;;;;;;;;WADU,OAAA,CAAM;IAChB,oBAAA,CAAA,GAAA,CAAA"}