@krizaka/ui 3.3.0 → 3.5.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 (477) hide show
  1. package/dist/activity-feed.d.ts +199 -0
  2. package/dist/activity-feed.js +155 -0
  3. package/dist/activity-feed.js.map +1 -0
  4. package/dist/chat.d.ts +187 -0
  5. package/dist/chat.js +132 -0
  6. package/dist/chat.js.map +1 -0
  7. package/dist/chunk-7Z4KHPFC.js +42 -0
  8. package/dist/chunk-7Z4KHPFC.js.map +1 -0
  9. package/dist/chunk-ECSCA3CN.js +128 -0
  10. package/dist/chunk-ECSCA3CN.js.map +1 -0
  11. package/dist/chunk-F2GKFIYK.js +47 -0
  12. package/dist/chunk-F2GKFIYK.js.map +1 -0
  13. package/dist/data-table.js +84 -231
  14. package/dist/data-table.js.map +1 -1
  15. package/dist/description-list.d.ts +105 -0
  16. package/dist/description-list.js +49 -0
  17. package/dist/description-list.js.map +1 -0
  18. package/dist/index.js +13 -66
  19. package/dist/index.js.map +1 -1
  20. package/dist/kanban.d.ts +132 -0
  21. package/dist/kanban.js +187 -0
  22. package/dist/kanban.js.map +1 -0
  23. package/dist/list.d.ts +153 -0
  24. package/dist/list.js +130 -0
  25. package/dist/list.js.map +1 -0
  26. package/dist/map.d.ts +463 -0
  27. package/dist/map.js +952 -0
  28. package/dist/map.js.map +1 -0
  29. package/dist/match-dialog.d.ts +30 -0
  30. package/dist/match-dialog.js +146 -0
  31. package/dist/match-dialog.js.map +1 -0
  32. package/dist/motion.css +12 -1
  33. package/dist/native/map.d.ts +200 -0
  34. package/dist/native/map.js +673 -0
  35. package/dist/native/map.js.map +1 -0
  36. package/dist/native/media-picker.d.ts +58 -0
  37. package/dist/native/media-picker.js +63 -0
  38. package/dist/native/media-picker.js.map +1 -0
  39. package/dist/native.d.ts +952 -75
  40. package/dist/native.js +2572 -889
  41. package/dist/native.js.map +1 -1
  42. package/dist/photo-grid.d.ts +122 -0
  43. package/dist/photo-grid.js +94 -0
  44. package/dist/photo-grid.js.map +1 -0
  45. package/dist/stat.d.ts +31 -2
  46. package/dist/stat.js +21 -4
  47. package/dist/stat.js.map +1 -1
  48. package/dist/step-progress.d.ts +20 -0
  49. package/dist/step-progress.js +17 -0
  50. package/dist/step-progress.js.map +1 -0
  51. package/dist/swipe-deck.d.ts +183 -0
  52. package/dist/swipe-deck.js +144 -0
  53. package/dist/swipe-deck.js.map +1 -0
  54. package/dist/tag-selector.d.ts +26 -0
  55. package/dist/tag-selector.js +21 -0
  56. package/dist/tag-selector.js.map +1 -0
  57. package/dist/tree-view.d.ts +111 -0
  58. package/dist/tree-view.js +154 -0
  59. package/dist/tree-view.js.map +1 -0
  60. package/dist/verified-badge.d.ts +16 -0
  61. package/dist/verified-badge.js +23 -0
  62. package/dist/verified-badge.js.map +1 -0
  63. package/package.json +245 -10
  64. package/registry/achievement.json +1 -1
  65. package/registry/action-bar.json +1 -1
  66. package/registry/action-sheet.json +121 -0
  67. package/registry/activity-feed.json +468 -0
  68. package/registry/alert.json +1 -1
  69. package/registry/app-shell.json +1 -1
  70. package/registry/argument-card.json +1 -1
  71. package/registry/audio-player.json +1 -1
  72. package/registry/auth-layout.json +1 -1
  73. package/registry/avatar.json +58 -3
  74. package/registry/badge.json +1 -1
  75. package/registry/button.json +1 -1
  76. package/registry/card-grid.json +1 -1
  77. package/registry/card.json +1 -1
  78. package/registry/catalogue-page.json +1 -1
  79. package/registry/changelog-page.json +1 -1
  80. package/registry/chat.json +917 -0
  81. package/registry/checkbox.json +1 -1
  82. package/registry/chip-link.json +1 -1
  83. package/registry/chip.json +1 -1
  84. package/registry/choice-grid.json +1 -1
  85. package/registry/code-block.json +1 -1
  86. package/registry/combobox.json +1 -1
  87. package/registry/command.json +1 -1
  88. package/registry/component-page.json +1 -1
  89. package/registry/confirm-button.json +1 -1
  90. package/registry/contact-page.json +1 -1
  91. package/registry/continue-prompt.json +1 -1
  92. package/registry/countdown.json +1 -1
  93. package/registry/cta-panel.json +1 -1
  94. package/registry/dashboard-layout.json +1 -1
  95. package/registry/data-table.json +1 -1
  96. package/registry/date-picker.json +2 -2
  97. package/registry/decision-list.json +1 -1
  98. package/registry/description-list.json +232 -0
  99. package/registry/detail-layout.json +1 -1
  100. package/registry/dialog.json +1 -1
  101. package/registry/docs-article-page.json +1 -1
  102. package/registry/docs-hub-page.json +1 -1
  103. package/registry/docs-layout.json +1 -1
  104. package/registry/dropdown-menu.json +1 -1
  105. package/registry/empty-state.json +1 -1
  106. package/registry/error-page.json +1 -1
  107. package/registry/examples/action-sheet/native/video-actions.d.ts +4 -0
  108. package/registry/examples/action-sheet/native/video-actions.dark.png +0 -0
  109. package/registry/examples/action-sheet/native/video-actions.js +30 -0
  110. package/registry/examples/action-sheet/native/video-actions.light.png +0 -0
  111. package/registry/examples/action-sheet/native/video-actions.tsx +24 -0
  112. package/registry/examples/activity-feed/job-activity.d.ts +4 -0
  113. package/registry/examples/activity-feed/job-activity.js +21 -0
  114. package/registry/examples/activity-feed/job-activity.tsx +17 -0
  115. package/registry/examples/activity-feed/live.d.ts +4 -0
  116. package/registry/examples/activity-feed/live.js +23 -0
  117. package/registry/examples/activity-feed/live.tsx +24 -0
  118. package/registry/examples/activity-feed/native/notifications.d.ts +4 -0
  119. package/registry/examples/activity-feed/native/notifications.dark.png +0 -0
  120. package/registry/examples/activity-feed/native/notifications.js +18 -0
  121. package/registry/examples/activity-feed/native/notifications.light.png +0 -0
  122. package/registry/examples/activity-feed/native/notifications.tsx +18 -0
  123. package/registry/examples/activity-feed/timeline.d.ts +4 -0
  124. package/registry/examples/activity-feed/timeline.js +25 -0
  125. package/registry/examples/activity-feed/timeline.tsx +19 -0
  126. package/registry/examples/avatar/native/presence.d.ts +4 -0
  127. package/registry/examples/avatar/native/presence.dark.png +0 -0
  128. package/registry/examples/avatar/native/presence.js +18 -0
  129. package/registry/examples/avatar/native/presence.light.png +0 -0
  130. package/registry/examples/avatar/native/presence.tsx +15 -0
  131. package/registry/examples/chat/conversation.d.ts +4 -0
  132. package/registry/examples/chat/conversation.js +22 -0
  133. package/registry/examples/chat/conversation.tsx +21 -0
  134. package/registry/examples/chat/inbox.d.ts +4 -0
  135. package/registry/examples/chat/inbox.js +15 -0
  136. package/registry/examples/chat/inbox.tsx +12 -0
  137. package/registry/examples/chat/native/conversation.d.ts +4 -0
  138. package/registry/examples/chat/native/conversation.dark.png +0 -0
  139. package/registry/examples/chat/native/conversation.js +23 -0
  140. package/registry/examples/chat/native/conversation.light.png +0 -0
  141. package/registry/examples/chat/native/conversation.tsx +20 -0
  142. package/registry/examples/chat/native/inbox.d.ts +4 -0
  143. package/registry/examples/chat/native/inbox.dark.png +0 -0
  144. package/registry/examples/chat/native/inbox.js +16 -0
  145. package/registry/examples/chat/native/inbox.light.png +0 -0
  146. package/registry/examples/chat/native/inbox.tsx +13 -0
  147. package/registry/examples/description-list/job-details.d.ts +4 -0
  148. package/registry/examples/description-list/job-details.js +23 -0
  149. package/registry/examples/description-list/job-details.tsx +17 -0
  150. package/registry/examples/description-list/key-value-grid.d.ts +4 -0
  151. package/registry/examples/description-list/key-value-grid.js +22 -0
  152. package/registry/examples/description-list/key-value-grid.tsx +16 -0
  153. package/registry/examples/description-list/native/job-details.d.ts +4 -0
  154. package/registry/examples/description-list/native/job-details.dark.png +0 -0
  155. package/registry/examples/description-list/native/job-details.js +33 -0
  156. package/registry/examples/description-list/native/job-details.light.png +0 -0
  157. package/registry/examples/description-list/native/job-details.tsx +24 -0
  158. package/registry/examples/description-list/receipt.d.ts +4 -0
  159. package/registry/examples/description-list/receipt.js +23 -0
  160. package/registry/examples/description-list/receipt.tsx +17 -0
  161. package/registry/examples/fab/native/extended.d.ts +4 -0
  162. package/registry/examples/fab/native/extended.dark.png +0 -0
  163. package/registry/examples/fab/native/extended.js +18 -0
  164. package/registry/examples/fab/native/extended.light.png +0 -0
  165. package/registry/examples/fab/native/extended.tsx +23 -0
  166. package/registry/examples/header/native/large-title.d.ts +4 -0
  167. package/registry/examples/header/native/large-title.dark.png +0 -0
  168. package/registry/examples/header/native/large-title.js +23 -0
  169. package/registry/examples/header/native/large-title.light.png +0 -0
  170. package/registry/examples/header/native/large-title.tsx +31 -0
  171. package/registry/examples/image-viewer/native/gallery.d.ts +4 -0
  172. package/registry/examples/image-viewer/native/gallery.dark.png +0 -0
  173. package/registry/examples/image-viewer/native/gallery.js +22 -0
  174. package/registry/examples/image-viewer/native/gallery.light.png +0 -0
  175. package/registry/examples/image-viewer/native/gallery.tsx +21 -0
  176. package/registry/examples/kanban/moderation.d.ts +4 -0
  177. package/registry/examples/kanban/moderation.js +35 -0
  178. package/registry/examples/kanban/moderation.tsx +37 -0
  179. package/registry/examples/list/jobs.d.ts +4 -0
  180. package/registry/examples/list/jobs.js +35 -0
  181. package/registry/examples/list/jobs.tsx +33 -0
  182. package/registry/examples/list/selectable.d.ts +4 -0
  183. package/registry/examples/list/selectable.js +33 -0
  184. package/registry/examples/list/selectable.tsx +30 -0
  185. package/registry/examples/list/virtualized.d.ts +4 -0
  186. package/registry/examples/list/virtualized.js +22 -0
  187. package/registry/examples/list/virtualized.tsx +17 -0
  188. package/registry/examples/loader/native/block.d.ts +4 -0
  189. package/registry/examples/loader/native/block.dark.png +0 -0
  190. package/registry/examples/loader/native/block.js +12 -0
  191. package/registry/examples/loader/native/block.light.png +0 -0
  192. package/registry/examples/loader/native/block.tsx +11 -0
  193. package/registry/examples/loader/native/job-wait.d.ts +4 -0
  194. package/registry/examples/loader/native/job-wait.dark.png +0 -0
  195. package/registry/examples/loader/native/job-wait.js +17 -0
  196. package/registry/examples/loader/native/job-wait.light.png +0 -0
  197. package/registry/examples/loader/native/job-wait.tsx +14 -0
  198. package/registry/examples/map/cluster.d.ts +4 -0
  199. package/registry/examples/map/cluster.js +16 -0
  200. package/registry/examples/map/cluster.tsx +18 -0
  201. package/registry/examples/map/location-picker.d.ts +4 -0
  202. package/registry/examples/map/location-picker.js +24 -0
  203. package/registry/examples/map/location-picker.tsx +22 -0
  204. package/registry/examples/map/native/location-picker.d.ts +4 -0
  205. package/registry/examples/map/native/location-picker.dark.png +0 -0
  206. package/registry/examples/map/native/location-picker.js +14 -0
  207. package/registry/examples/map/native/location-picker.light.png +0 -0
  208. package/registry/examples/map/native/location-picker.tsx +13 -0
  209. package/registry/examples/map/native/places.d.ts +4 -0
  210. package/registry/examples/map/native/places.dark.png +0 -0
  211. package/registry/examples/map/native/places.js +25 -0
  212. package/registry/examples/map/native/places.light.png +0 -0
  213. package/registry/examples/map/native/places.tsx +27 -0
  214. package/registry/examples/map/places.d.ts +4 -0
  215. package/registry/examples/map/places.js +28 -0
  216. package/registry/examples/map/places.tsx +28 -0
  217. package/registry/examples/map/static.d.ts +4 -0
  218. package/registry/examples/map/static.js +22 -0
  219. package/registry/examples/map/static.tsx +18 -0
  220. package/registry/examples/match-dialog/its-a-match.d.ts +4 -0
  221. package/registry/examples/match-dialog/its-a-match.js +29 -0
  222. package/registry/examples/match-dialog/its-a-match.tsx +25 -0
  223. package/registry/examples/match-dialog/native/its-a-match.d.ts +4 -0
  224. package/registry/examples/match-dialog/native/its-a-match.dark.png +0 -0
  225. package/registry/examples/match-dialog/native/its-a-match.js +28 -0
  226. package/registry/examples/match-dialog/native/its-a-match.light.png +0 -0
  227. package/registry/examples/match-dialog/native/its-a-match.tsx +22 -0
  228. package/registry/examples/media-picker/native/story.d.ts +4 -0
  229. package/registry/examples/media-picker/native/story.dark.png +0 -0
  230. package/registry/examples/media-picker/native/story.js +30 -0
  231. package/registry/examples/media-picker/native/story.light.png +0 -0
  232. package/registry/examples/media-picker/native/story.tsx +26 -0
  233. package/registry/examples/meter/native/credits.d.ts +4 -0
  234. package/registry/examples/meter/native/credits.dark.png +0 -0
  235. package/registry/examples/meter/native/credits.js +15 -0
  236. package/registry/examples/meter/native/credits.light.png +0 -0
  237. package/registry/examples/meter/native/credits.tsx +12 -0
  238. package/registry/examples/meter/native/split-ring.d.ts +4 -0
  239. package/registry/examples/meter/native/split-ring.dark.png +0 -0
  240. package/registry/examples/meter/native/split-ring.js +24 -0
  241. package/registry/examples/meter/native/split-ring.light.png +0 -0
  242. package/registry/examples/meter/native/split-ring.tsx +19 -0
  243. package/registry/examples/number-ticker/native/balance.d.ts +4 -0
  244. package/registry/examples/number-ticker/native/balance.dark.png +0 -0
  245. package/registry/examples/number-ticker/native/balance.js +18 -0
  246. package/registry/examples/number-ticker/native/balance.light.png +0 -0
  247. package/registry/examples/number-ticker/native/balance.tsx +17 -0
  248. package/registry/examples/onboarding/native/first-launch.d.ts +4 -0
  249. package/registry/examples/onboarding/native/first-launch.dark.png +0 -0
  250. package/registry/examples/onboarding/native/first-launch.js +23 -0
  251. package/registry/examples/onboarding/native/first-launch.light.png +0 -0
  252. package/registry/examples/onboarding/native/first-launch.tsx +19 -0
  253. package/registry/examples/otp-input/native/invalid.d.ts +4 -0
  254. package/registry/examples/otp-input/native/invalid.dark.png +0 -0
  255. package/registry/examples/otp-input/native/invalid.js +15 -0
  256. package/registry/examples/otp-input/native/invalid.light.png +0 -0
  257. package/registry/examples/otp-input/native/invalid.tsx +14 -0
  258. package/registry/examples/otp-input/native/verify.d.ts +4 -0
  259. package/registry/examples/otp-input/native/verify.dark.png +0 -0
  260. package/registry/examples/otp-input/native/verify.js +17 -0
  261. package/registry/examples/otp-input/native/verify.light.png +0 -0
  262. package/registry/examples/otp-input/native/verify.tsx +14 -0
  263. package/registry/examples/permission-prompt/native/blocked.d.ts +4 -0
  264. package/registry/examples/permission-prompt/native/blocked.dark.png +0 -0
  265. package/registry/examples/permission-prompt/native/blocked.js +25 -0
  266. package/registry/examples/permission-prompt/native/blocked.light.png +0 -0
  267. package/registry/examples/permission-prompt/native/blocked.tsx +21 -0
  268. package/registry/examples/permission-prompt/native/camera.d.ts +4 -0
  269. package/registry/examples/permission-prompt/native/camera.dark.png +0 -0
  270. package/registry/examples/permission-prompt/native/camera.js +25 -0
  271. package/registry/examples/permission-prompt/native/camera.light.png +0 -0
  272. package/registry/examples/permission-prompt/native/camera.tsx +21 -0
  273. package/registry/examples/photo-grid/native/profile-photos.d.ts +4 -0
  274. package/registry/examples/photo-grid/native/profile-photos.dark.png +0 -0
  275. package/registry/examples/photo-grid/native/profile-photos.js +27 -0
  276. package/registry/examples/photo-grid/native/profile-photos.light.png +0 -0
  277. package/registry/examples/photo-grid/native/profile-photos.tsx +24 -0
  278. package/registry/examples/photo-grid/profile-photos.d.ts +4 -0
  279. package/registry/examples/photo-grid/profile-photos.js +28 -0
  280. package/registry/examples/photo-grid/profile-photos.tsx +25 -0
  281. package/registry/examples/pull-to-refresh/native/feed.d.ts +4 -0
  282. package/registry/examples/pull-to-refresh/native/feed.dark.png +0 -0
  283. package/registry/examples/pull-to-refresh/native/feed.js +14 -0
  284. package/registry/examples/pull-to-refresh/native/feed.light.png +0 -0
  285. package/registry/examples/pull-to-refresh/native/feed.tsx +19 -0
  286. package/registry/examples/screen/native/app-shell.d.ts +4 -0
  287. package/registry/examples/screen/native/app-shell.dark.png +0 -0
  288. package/registry/examples/screen/native/app-shell.js +25 -0
  289. package/registry/examples/screen/native/app-shell.light.png +0 -0
  290. package/registry/examples/screen/native/app-shell.tsx +33 -0
  291. package/registry/examples/screen/native/auth.d.ts +4 -0
  292. package/registry/examples/screen/native/auth.dark.png +0 -0
  293. package/registry/examples/screen/native/auth.js +24 -0
  294. package/registry/examples/screen/native/auth.light.png +0 -0
  295. package/registry/examples/screen/native/auth.tsx +20 -0
  296. package/registry/examples/screen/native/chat.d.ts +4 -0
  297. package/registry/examples/screen/native/chat.dark.png +0 -0
  298. package/registry/examples/screen/native/chat.js +27 -0
  299. package/registry/examples/screen/native/chat.light.png +0 -0
  300. package/registry/examples/screen/native/chat.tsx +22 -0
  301. package/registry/examples/screen/native/feed.d.ts +4 -0
  302. package/registry/examples/screen/native/feed.dark.png +0 -0
  303. package/registry/examples/screen/native/feed.js +24 -0
  304. package/registry/examples/screen/native/feed.light.png +0 -0
  305. package/registry/examples/screen/native/feed.tsx +34 -0
  306. package/registry/examples/screen/native/profile.d.ts +4 -0
  307. package/registry/examples/screen/native/profile.dark.png +0 -0
  308. package/registry/examples/screen/native/profile.js +29 -0
  309. package/registry/examples/screen/native/profile.light.png +0 -0
  310. package/registry/examples/screen/native/profile.tsx +27 -0
  311. package/registry/examples/screen/native/settings.d.ts +4 -0
  312. package/registry/examples/screen/native/settings.dark.png +0 -0
  313. package/registry/examples/screen/native/settings.js +20 -0
  314. package/registry/examples/screen/native/settings.light.png +0 -0
  315. package/registry/examples/screen/native/settings.tsx +19 -0
  316. package/registry/examples/search-field/native/cancel.d.ts +4 -0
  317. package/registry/examples/search-field/native/cancel.dark.png +0 -0
  318. package/registry/examples/search-field/native/cancel.js +14 -0
  319. package/registry/examples/search-field/native/cancel.light.png +0 -0
  320. package/registry/examples/search-field/native/cancel.tsx +13 -0
  321. package/registry/examples/stat/grid.d.ts +4 -0
  322. package/registry/examples/stat/grid.js +17 -0
  323. package/registry/examples/stat/grid.tsx +14 -0
  324. package/registry/examples/step-progress/native/sign-up.d.ts +4 -0
  325. package/registry/examples/step-progress/native/sign-up.dark.png +0 -0
  326. package/registry/examples/step-progress/native/sign-up.js +12 -0
  327. package/registry/examples/step-progress/native/sign-up.light.png +0 -0
  328. package/registry/examples/step-progress/native/sign-up.tsx +11 -0
  329. package/registry/examples/step-progress/sign-up.d.ts +4 -0
  330. package/registry/examples/step-progress/sign-up.js +22 -0
  331. package/registry/examples/step-progress/sign-up.tsx +16 -0
  332. package/registry/examples/stepper/native/run.d.ts +4 -0
  333. package/registry/examples/stepper/native/run.dark.png +0 -0
  334. package/registry/examples/stepper/native/run.js +24 -0
  335. package/registry/examples/stepper/native/run.light.png +0 -0
  336. package/registry/examples/stepper/native/run.tsx +20 -0
  337. package/registry/examples/swipe-deck/discover.d.ts +4 -0
  338. package/registry/examples/swipe-deck/discover.js +41 -0
  339. package/registry/examples/swipe-deck/discover.tsx +37 -0
  340. package/registry/examples/swipe-deck/native/discover.d.ts +4 -0
  341. package/registry/examples/swipe-deck/native/discover.dark.png +0 -0
  342. package/registry/examples/swipe-deck/native/discover.js +39 -0
  343. package/registry/examples/swipe-deck/native/discover.light.png +0 -0
  344. package/registry/examples/swipe-deck/native/discover.tsx +35 -0
  345. package/registry/examples/swipeable-row/native/conversation.d.ts +4 -0
  346. package/registry/examples/swipeable-row/native/conversation.dark.png +0 -0
  347. package/registry/examples/swipeable-row/native/conversation.js +30 -0
  348. package/registry/examples/swipeable-row/native/conversation.light.png +0 -0
  349. package/registry/examples/swipeable-row/native/conversation.tsx +27 -0
  350. package/registry/examples/tab-bar/native/main-sections.d.ts +4 -0
  351. package/registry/examples/tab-bar/native/main-sections.dark.png +0 -0
  352. package/registry/examples/tab-bar/native/main-sections.js +29 -0
  353. package/registry/examples/tab-bar/native/main-sections.light.png +0 -0
  354. package/registry/examples/tab-bar/native/main-sections.tsx +30 -0
  355. package/registry/examples/tabs/native/sections.d.ts +4 -0
  356. package/registry/examples/tabs/native/sections.dark.png +0 -0
  357. package/registry/examples/tabs/native/sections.js +23 -0
  358. package/registry/examples/tabs/native/sections.light.png +0 -0
  359. package/registry/examples/tabs/native/sections.tsx +19 -0
  360. package/registry/examples/tabs/native/segmented.d.ts +4 -0
  361. package/registry/examples/tabs/native/segmented.dark.png +0 -0
  362. package/registry/examples/tabs/native/segmented.js +22 -0
  363. package/registry/examples/tabs/native/segmented.light.png +0 -0
  364. package/registry/examples/tabs/native/segmented.tsx +18 -0
  365. package/registry/examples/tag-selector/interests.d.ts +4 -0
  366. package/registry/examples/tag-selector/interests.js +14 -0
  367. package/registry/examples/tag-selector/interests.tsx +12 -0
  368. package/registry/examples/tag-selector/native/interests.d.ts +4 -0
  369. package/registry/examples/tag-selector/native/interests.dark.png +0 -0
  370. package/registry/examples/tag-selector/native/interests.js +15 -0
  371. package/registry/examples/tag-selector/native/interests.light.png +0 -0
  372. package/registry/examples/tag-selector/native/interests.tsx +15 -0
  373. package/registry/examples/toast/native/snackbar.d.ts +4 -0
  374. package/registry/examples/toast/native/snackbar.dark.png +0 -0
  375. package/registry/examples/toast/native/snackbar.js +23 -0
  376. package/registry/examples/toast/native/snackbar.light.png +0 -0
  377. package/registry/examples/toast/native/snackbar.tsx +21 -0
  378. package/registry/examples/tree-view/docs.d.ts +4 -0
  379. package/registry/examples/tree-view/docs.js +24 -0
  380. package/registry/examples/tree-view/docs.tsx +22 -0
  381. package/registry/examples/tree-view/lazy.d.ts +4 -0
  382. package/registry/examples/tree-view/lazy.js +21 -0
  383. package/registry/examples/tree-view/lazy.tsx +19 -0
  384. package/registry/examples/verified-badge/native/verified.d.ts +4 -0
  385. package/registry/examples/verified-badge/native/verified.dark.png +0 -0
  386. package/registry/examples/verified-badge/native/verified.js +18 -0
  387. package/registry/examples/verified-badge/native/verified.light.png +0 -0
  388. package/registry/examples/verified-badge/native/verified.tsx +15 -0
  389. package/registry/examples/verified-badge/verified.d.ts +4 -0
  390. package/registry/examples/verified-badge/verified.js +17 -0
  391. package/registry/examples/verified-badge/verified.tsx +13 -0
  392. package/registry/fab.json +122 -0
  393. package/registry/field.json +1 -1
  394. package/registry/file-upload.json +2 -2
  395. package/registry/filter-bar.json +1 -1
  396. package/registry/form.json +2 -2
  397. package/registry/gallery-page.json +1 -1
  398. package/registry/glow-card.json +1 -1
  399. package/registry/goal-gauge.json +1 -1
  400. package/registry/header.json +137 -0
  401. package/registry/how-it-works-page.json +1 -1
  402. package/registry/image-cropper.json +1 -1
  403. package/registry/image-viewer.json +107 -0
  404. package/registry/index.json +441 -25
  405. package/registry/iso.json +1 -1
  406. package/registry/kanban.json +253 -0
  407. package/registry/kbd.json +1 -1
  408. package/registry/landing-page.json +1 -1
  409. package/registry/landscape.json +1 -1
  410. package/registry/legal-page.json +1 -1
  411. package/registry/link-card.json +1 -1
  412. package/registry/list.json +367 -30
  413. package/registry/loader.json +157 -4
  414. package/registry/longform-page.json +1 -1
  415. package/registry/map.json +1368 -0
  416. package/registry/marketing-layout.json +1 -1
  417. package/registry/marquee.json +1 -1
  418. package/registry/mascot-quote.json +1 -1
  419. package/registry/mascot-state.json +1 -1
  420. package/registry/mascots.json +1 -1
  421. package/registry/match-dialog.json +300 -0
  422. package/registry/media-capture.json +1 -1
  423. package/registry/media-picker.json +129 -0
  424. package/registry/meter.json +136 -4
  425. package/registry/nav-bar.json +1 -1
  426. package/registry/number-ticker.json +96 -4
  427. package/registry/onboarding.json +95 -0
  428. package/registry/otp-input.json +150 -0
  429. package/registry/page-header.json +1 -1
  430. package/registry/page-hero.json +1 -1
  431. package/registry/page.json +1 -1
  432. package/registry/pagination.json +1 -1
  433. package/registry/permission-prompt.json +172 -0
  434. package/registry/photo-grid.json +302 -0
  435. package/registry/pointer-light.json +1 -1
  436. package/registry/popover.json +1 -1
  437. package/registry/pricing-page.json +1 -1
  438. package/registry/product-page.json +1 -1
  439. package/registry/profile-card.json +1 -1
  440. package/registry/progress.json +2 -2
  441. package/registry/promise-card.json +1 -1
  442. package/registry/pull-to-refresh.json +74 -0
  443. package/registry/radio-group.json +1 -1
  444. package/registry/screen.json +184 -0
  445. package/registry/scroll-stage.json +1 -1
  446. package/registry/search-field.json +30 -3
  447. package/registry/section-backdrop.json +1 -1
  448. package/registry/separator.json +1 -1
  449. package/registry/settings-layout.json +1 -1
  450. package/registry/skeleton.json +1 -1
  451. package/registry/slider.json +1 -1
  452. package/registry/slot.json +1 -1
  453. package/registry/spinner.json +1 -1
  454. package/registry/split-view.json +1 -1
  455. package/registry/stage-banner.json +1 -1
  456. package/registry/stat.json +68 -5
  457. package/registry/status-page.json +1 -1
  458. package/registry/step-progress.json +255 -0
  459. package/registry/stepper.json +75 -4
  460. package/registry/swipe-deck.json +512 -0
  461. package/registry/swipeable-row.json +124 -0
  462. package/registry/switch.json +1 -1
  463. package/registry/tab-bar.json +115 -0
  464. package/registry/tabs.json +94 -4
  465. package/registry/tag-input.json +1 -1
  466. package/registry/tag-selector.json +276 -0
  467. package/registry/terminal-replay.json +1 -1
  468. package/registry/theme.json +8 -1
  469. package/registry/toast.json +17 -3
  470. package/registry/toc.json +1 -1
  471. package/registry/tooltip.json +1 -1
  472. package/registry/tree-view.json +291 -0
  473. package/registry/verified-badge.json +202 -0
  474. package/registry/video-player.json +1 -1
  475. package/registry/video-trimmer.json +1 -1
  476. package/registry/virtual.json +1 -1
  477. package/skills/map/SKILL.md +35 -0
@@ -1,4 +1,10 @@
1
1
  "use client";
2
+ import {
3
+ Button
4
+ } from "./chunk-ECSCA3CN.js";
5
+ import {
6
+ Checkbox
7
+ } from "./chunk-7Z4KHPFC.js";
2
8
  import {
3
9
  useLayoutFallbacks,
4
10
  useVirtualizer
@@ -41,48 +47,12 @@ function dataTableCsv(rows, columns, separator = ",") {
41
47
  // src/data-table/data-table.tsx
42
48
  import { useTable } from "@tanstack/react-table";
43
49
  import * as React from "react";
44
- import { tv as tv3 } from "tailwind-variants";
45
-
46
- // src/checkbox/checkbox.tsx
47
- import { Checkbox as CheckboxPrimitive } from "radix-ui";
48
- import { tv } from "tailwind-variants";
49
- import { jsx, jsxs } from "react/jsx-runtime";
50
- var checkbox = tv({
51
- slots: {
52
- root: "peer inline-flex h-5 w-5 shrink-0 items-center justify-center rounded-md border border-border-strong bg-surface-1 text-on-accent transition-colors focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-surface-0 hover:border-accent disabled:cursor-not-allowed disabled:opacity-40 data-[state=checked]:border-accent data-[state=checked]:bg-accent data-[state=indeterminate]:border-accent data-[state=indeterminate]:bg-accent aria-invalid:border-danger aria-invalid:ring-danger/30",
53
- indicator: "flex items-center justify-center",
54
- label: "flex cursor-pointer items-start gap-3 text-sm text-fg has-disabled:cursor-not-allowed has-disabled:opacity-60"
55
- }
56
- });
57
- function Check() {
58
- return /* @__PURE__ */ jsx("svg", { viewBox: "0 0 24 24", className: "h-3.5 w-3.5", fill: "none", stroke: "currentColor", strokeWidth: "3", strokeLinecap: "round", strokeLinejoin: "round", "aria-hidden": true, children: /* @__PURE__ */ jsx("path", { d: "M20 6 9 17l-5-5" }) });
59
- }
60
- function Dash() {
61
- return /* @__PURE__ */ jsx("svg", { viewBox: "0 0 24 24", className: "h-3.5 w-3.5", fill: "none", stroke: "currentColor", strokeWidth: "3", strokeLinecap: "round", "aria-hidden": true, children: /* @__PURE__ */ jsx("path", { d: "M5 12h14" }) });
62
- }
63
- function Checkbox({ invalid, className, children, ...props }) {
64
- const s2 = checkbox();
65
- const box = /* @__PURE__ */ jsx(
66
- CheckboxPrimitive.Root,
67
- {
68
- "aria-invalid": invalid || void 0,
69
- "data-invalid": invalid ? "" : void 0,
70
- className: s2.root({ className: children ? "mt-0.5" : className }),
71
- ...props,
72
- children: /* @__PURE__ */ jsx(CheckboxPrimitive.Indicator, { className: s2.indicator(), children: props.checked === "indeterminate" ? /* @__PURE__ */ jsx(Dash, {}) : /* @__PURE__ */ jsx(Check, {}) })
73
- }
74
- );
75
- if (!children) return box;
76
- return /* @__PURE__ */ jsxs("label", { className: s2.label({ className }), children: [
77
- box,
78
- /* @__PURE__ */ jsx("span", { className: "min-w-0", children })
79
- ] });
80
- }
50
+ import { tv as tv2 } from "tailwind-variants";
81
51
 
82
52
  // src/pagination/pagination.tsx
83
- import { tv as tv2 } from "tailwind-variants";
84
- import { Fragment, jsx as jsx2, jsxs as jsxs2 } from "react/jsx-runtime";
85
- var pagination = tv2({
53
+ import { tv } from "tailwind-variants";
54
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
55
+ var pagination = tv({
86
56
  slots: {
87
57
  root: "@container flex w-full flex-wrap items-center justify-between gap-3 text-sm",
88
58
  list: "flex items-center gap-1",
@@ -123,12 +93,12 @@ function pageRange(page, pageCount, siblings = 1, boundaries = 1) {
123
93
  function Item({ href, onClick, disabled, current, label, className, children }) {
124
94
  const common = { "aria-label": label, "aria-current": current ? "page" : void 0, className };
125
95
  if (href && !disabled) {
126
- return /* @__PURE__ */ jsx2("a", { href, onClick, ...common, children });
96
+ return /* @__PURE__ */ jsx("a", { href, onClick, ...common, children });
127
97
  }
128
98
  if (href) {
129
- return /* @__PURE__ */ jsx2("a", { role: "link", "aria-disabled": true, ...common, children });
99
+ return /* @__PURE__ */ jsx("a", { role: "link", "aria-disabled": true, ...common, children });
130
100
  }
131
- return /* @__PURE__ */ jsx2("button", { type: "button", onClick, disabled, ...common, children });
101
+ return /* @__PURE__ */ jsx("button", { type: "button", onClick, disabled, ...common, children });
132
102
  }
133
103
  function Pagination({
134
104
  page = 1,
@@ -159,25 +129,25 @@ function Pagination({
159
129
  const canNext = paged ? current < count : Boolean(hasNext);
160
130
  const go = (target) => () => onPageChange?.(target);
161
131
  const href = (target) => paged && getHref ? getHref(target) : void 0;
162
- return /* @__PURE__ */ jsxs2("nav", { "aria-label": labels.nav, className: s2.root({ className }), ...props, children: [
163
- status !== void 0 || pageSizeOptions ? /* @__PURE__ */ jsxs2("div", { className: "flex flex-wrap items-center gap-4", children: [
164
- status !== void 0 && /* @__PURE__ */ jsx2("p", { className: s2.status(), children: status }),
165
- pageSizeOptions && pageSize !== void 0 && /* @__PURE__ */ jsxs2("label", { className: s2.size(), children: [
132
+ return /* @__PURE__ */ jsxs("nav", { "aria-label": labels.nav, className: s2.root({ className }), ...props, children: [
133
+ status !== void 0 || pageSizeOptions ? /* @__PURE__ */ jsxs("div", { className: "flex flex-wrap items-center gap-4", children: [
134
+ status !== void 0 && /* @__PURE__ */ jsx("p", { className: s2.status(), children: status }),
135
+ pageSizeOptions && pageSize !== void 0 && /* @__PURE__ */ jsxs("label", { className: s2.size(), children: [
166
136
  labels.pageSize,
167
- /* @__PURE__ */ jsx2(
137
+ /* @__PURE__ */ jsx(
168
138
  "select",
169
139
  {
170
140
  className: s2.select(),
171
141
  value: pageSize,
172
142
  disabled,
173
143
  onChange: (event) => onPageSizeChange?.(Number(event.target.value)),
174
- children: pageSizeOptions.map((size) => /* @__PURE__ */ jsx2("option", { value: size, children: size }, size))
144
+ children: pageSizeOptions.map((size) => /* @__PURE__ */ jsx("option", { value: size, children: size }, size))
175
145
  }
176
146
  )
177
147
  ] })
178
148
  ] }) : null,
179
- /* @__PURE__ */ jsxs2("ul", { className: s2.list(), children: [
180
- /* @__PURE__ */ jsx2("li", { children: /* @__PURE__ */ jsxs2(
149
+ /* @__PURE__ */ jsxs("ul", { className: s2.list(), children: [
150
+ /* @__PURE__ */ jsx("li", { children: /* @__PURE__ */ jsxs(
181
151
  Item,
182
152
  {
183
153
  href: href(current - 1),
@@ -186,18 +156,18 @@ function Pagination({
186
156
  label: labels.previous,
187
157
  className: s2.item({ className: s2.edge() }),
188
158
  children: [
189
- /* @__PURE__ */ jsx2(ChevronGlyph, { direction: "left" }),
190
- /* @__PURE__ */ jsx2("span", { className: "hidden @lg:inline", children: labels.previous })
159
+ /* @__PURE__ */ jsx(ChevronGlyph, { direction: "left" }),
160
+ /* @__PURE__ */ jsx("span", { className: "hidden @lg:inline", children: labels.previous })
191
161
  ]
192
162
  }
193
163
  ) }),
194
- paged && /* @__PURE__ */ jsxs2(Fragment, { children: [
195
- /* @__PURE__ */ jsx2("li", { className: s2.pages(), children: /* @__PURE__ */ jsx2("ul", { className: "contents", children: pageRange(current, count, siblings, boundaries).map(
196
- (n, i) => n === "\u2026" ? /* @__PURE__ */ jsx2("li", { "aria-hidden": true, className: s2.ellipsis(), children: "\u2026" }, `gap-${i}`) : /* @__PURE__ */ jsx2("li", { children: /* @__PURE__ */ jsx2(Item, { href: href(n), onClick: go(n), disabled, current: n === current, label: labels.page(n), className: s2.item(), children: n }) }, n)
164
+ paged && /* @__PURE__ */ jsxs(Fragment, { children: [
165
+ /* @__PURE__ */ jsx("li", { className: s2.pages(), children: /* @__PURE__ */ jsx("ul", { className: "contents", children: pageRange(current, count, siblings, boundaries).map(
166
+ (n, i) => n === "\u2026" ? /* @__PURE__ */ jsx("li", { "aria-hidden": true, className: s2.ellipsis(), children: "\u2026" }, `gap-${i}`) : /* @__PURE__ */ jsx("li", { children: /* @__PURE__ */ jsx(Item, { href: href(n), onClick: go(n), disabled, current: n === current, label: labels.page(n), className: s2.item(), children: n }) }, n)
197
167
  ) }) }),
198
- /* @__PURE__ */ jsx2("li", { className: s2.compact(), children: labels.compact(current, count) })
168
+ /* @__PURE__ */ jsx("li", { className: s2.compact(), children: labels.compact(current, count) })
199
169
  ] }),
200
- /* @__PURE__ */ jsx2("li", { children: /* @__PURE__ */ jsxs2(
170
+ /* @__PURE__ */ jsx("li", { children: /* @__PURE__ */ jsxs(
201
171
  Item,
202
172
  {
203
173
  href: href(current + 1),
@@ -206,8 +176,8 @@ function Pagination({
206
176
  label: labels.next,
207
177
  className: s2.item({ className: s2.edge() }),
208
178
  children: [
209
- /* @__PURE__ */ jsx2("span", { className: "hidden @lg:inline", children: labels.next }),
210
- /* @__PURE__ */ jsx2(ChevronGlyph, { direction: "right" })
179
+ /* @__PURE__ */ jsx("span", { className: "hidden @lg:inline", children: labels.next }),
180
+ /* @__PURE__ */ jsx(ChevronGlyph, { direction: "right" })
211
181
  ]
212
182
  }
213
183
  ) })
@@ -282,8 +252,8 @@ filterRange.autoRemove = (value) => !Array.isArray(value) || value[0] == null &&
282
252
  var FILTERS = { text: filterText, facet: filterFacet, range: filterRange };
283
253
 
284
254
  // src/data-table/data-table.tsx
285
- import { jsx as jsx3, jsxs as jsxs3 } from "react/jsx-runtime";
286
- var dataTable = tv3({
255
+ import { jsx as jsx2, jsxs as jsxs2 } from "react/jsx-runtime";
256
+ var dataTable = tv2({
287
257
  slots: {
288
258
  root: "@container w-full overflow-hidden rounded-xl border border-border-default bg-surface-1",
289
259
  toolbar: "border-b border-border-default p-3",
@@ -573,7 +543,7 @@ function DataTable({
573
543
  return { "data-pin": position, style: { ["--dt-pin"]: `${offset}px` } };
574
544
  };
575
545
  const width = (column) => fixedLayout || byId.get(column.id)?.width ? { width: column.getSize() } : void 0;
576
- const message = (content, alert) => /* @__PURE__ */ jsx3("tr", { role: "row", className: s2.tr({ className: "hover:bg-transparent" }), children: /* @__PURE__ */ jsx3("td", { role: "cell", colSpan: span, "data-card": "message", className: s2.td({ className: s2.message() }), children: alert ? /* @__PURE__ */ jsx3("div", { role: "alert", children: content }) : content }) });
546
+ const message = (content, alert) => /* @__PURE__ */ jsx2("tr", { role: "row", className: s2.tr({ className: "hover:bg-transparent" }), children: /* @__PURE__ */ jsx2("td", { role: "cell", colSpan: span, "data-card": "message", className: s2.td({ className: s2.message() }), children: alert ? /* @__PURE__ */ jsx2("div", { role: "alert", children: content }) : content }) });
577
547
  const cardOf = (column) => column?.card === "title" ? "title" : column?.card === "hidden" ? "hidden" : void 0;
578
548
  const dataCell = (row, cell, first) => {
579
549
  const column = byId.get(cell.column.id);
@@ -584,13 +554,13 @@ function DataTable({
584
554
  const leaves = row.getLeafRows().filter((r) => !r.getIsGrouped()).map((r) => r.original);
585
555
  if (cell.column.id === row.groupingColumnId) {
586
556
  const value = display(row.groupingValue);
587
- content = /* @__PURE__ */ jsxs3("button", { type: "button", className: s2.toggle({ className: "px-1.5 font-semibold text-fg" }), "aria-expanded": row.getIsExpanded(), onClick: row.getToggleExpandedHandler(), children: [
588
- /* @__PURE__ */ jsx3(ChevronGlyph, { direction: "right", className: "h-4 w-4" }),
557
+ content = /* @__PURE__ */ jsxs2("button", { type: "button", className: s2.toggle({ className: "px-1.5 font-semibold text-fg" }), "aria-expanded": row.getIsExpanded(), onClick: row.getToggleExpandedHandler(), children: [
558
+ /* @__PURE__ */ jsx2(ChevronGlyph, { direction: "right", className: "h-4 w-4" }),
589
559
  labels.group(value, leaves.length)
590
560
  ] });
591
561
  } else content = column.aggregate ? column.aggregate(leaves) : null;
592
562
  } else content = column.cell ? column.cell(row.original) : display(valueOf(column, row.original));
593
- return /* @__PURE__ */ jsx3(
563
+ return /* @__PURE__ */ jsx2(
594
564
  "td",
595
565
  {
596
566
  role: "cell",
@@ -609,7 +579,7 @@ function DataTable({
609
579
  const grouped = row.getIsGrouped();
610
580
  const canExpand = !grouped && (renderDetail ? true : row.getCanExpand());
611
581
  const cells = row.getVisibleCells();
612
- const main = /* @__PURE__ */ jsxs3(
582
+ const main = /* @__PURE__ */ jsxs2(
613
583
  "tr",
614
584
  {
615
585
  role: "row",
@@ -620,32 +590,32 @@ function DataTable({
620
590
  "data-group": grouped ? "" : void 0,
621
591
  className: s2.tr({ className: grouped ? s2.groupRow() : void 0 }),
622
592
  children: [
623
- selectable && /* @__PURE__ */ jsx3("td", { role: "cell", className: s2.td({ className: s2.select() }), children: grouped ? null : /* @__PURE__ */ jsx3(Checkbox, { checked: isChosen, onCheckedChange: () => row.toggleSelected(), "aria-label": labels.selectRow(nameOf(row)) }) }),
624
- hasExpander && /* @__PURE__ */ jsx3("td", { role: "cell", className: s2.td({ className: s2.expander() }), children: canExpand ? /* @__PURE__ */ jsx3("button", { type: "button", className: s2.toggle(), "aria-expanded": row.getIsExpanded(), "aria-label": labels.expandRow(nameOf(row)), onClick: row.getToggleExpandedHandler(), children: /* @__PURE__ */ jsx3(ChevronGlyph, { direction: "right", className: "h-4 w-4" }) }) : null }),
593
+ selectable && /* @__PURE__ */ jsx2("td", { role: "cell", className: s2.td({ className: s2.select() }), children: grouped ? null : /* @__PURE__ */ jsx2(Checkbox, { checked: isChosen, onCheckedChange: () => row.toggleSelected(), "aria-label": labels.selectRow(nameOf(row)) }) }),
594
+ hasExpander && /* @__PURE__ */ jsx2("td", { role: "cell", className: s2.td({ className: s2.expander() }), children: canExpand ? /* @__PURE__ */ jsx2("button", { type: "button", className: s2.toggle(), "aria-expanded": row.getIsExpanded(), "aria-label": labels.expandRow(nameOf(row)), onClick: row.getToggleExpandedHandler(), children: /* @__PURE__ */ jsx2(ChevronGlyph, { direction: "right", className: "h-4 w-4" }) }) : null }),
625
595
  cells.map((cell, i) => dataCell(row, cell, i === 0))
626
596
  ]
627
597
  },
628
598
  row.id
629
599
  );
630
600
  if (!renderDetail || grouped || !row.getIsExpanded() || virtualized) return main;
631
- return /* @__PURE__ */ jsxs3(React.Fragment, { children: [
601
+ return /* @__PURE__ */ jsxs2(React.Fragment, { children: [
632
602
  main,
633
- /* @__PURE__ */ jsx3("tr", { role: "row", className: s2.tr({ className: "hover:bg-transparent" }), children: /* @__PURE__ */ jsx3("td", { role: "cell", colSpan: span, "data-card": "message", className: s2.td({ className: s2.detail() }), children: renderDetail(row.original) }) })
603
+ /* @__PURE__ */ jsx2("tr", { role: "row", className: s2.tr({ className: "hover:bg-transparent" }), children: /* @__PURE__ */ jsx2("td", { role: "cell", colSpan: span, "data-card": "message", className: s2.td({ className: s2.detail() }), children: renderDetail(row.original) }) })
634
604
  ] }, row.id);
635
605
  };
636
606
  let body;
637
607
  if (loading) {
638
- body = Array.from({ length: loadingRows }, (_, i) => /* @__PURE__ */ jsxs3("tr", { role: "row", "aria-hidden": true, className: s2.tr(), children: [
639
- selectable && /* @__PURE__ */ jsx3("td", { role: "cell", className: s2.td({ className: s2.select() }) }),
640
- hasExpander && /* @__PURE__ */ jsx3("td", { role: "cell", className: s2.td({ className: s2.expander() }) }),
641
- visibleColumns.map((column) => /* @__PURE__ */ jsx3("td", { role: "cell", "data-card": cardOf(byId.get(column.id)), className: s2.td(), children: /* @__PURE__ */ jsx3("div", { className: s2.skeleton() }) }, column.id))
608
+ body = Array.from({ length: loadingRows }, (_, i) => /* @__PURE__ */ jsxs2("tr", { role: "row", "aria-hidden": true, className: s2.tr(), children: [
609
+ selectable && /* @__PURE__ */ jsx2("td", { role: "cell", className: s2.td({ className: s2.select() }) }),
610
+ hasExpander && /* @__PURE__ */ jsx2("td", { role: "cell", className: s2.td({ className: s2.expander() }) }),
611
+ visibleColumns.map((column) => /* @__PURE__ */ jsx2("td", { role: "cell", "data-card": cardOf(byId.get(column.id)), className: s2.td(), children: /* @__PURE__ */ jsx2("div", { className: s2.skeleton() }) }, column.id))
642
612
  ] }, `loading-${i}`));
643
613
  } else if (error) body = message(error, true);
644
614
  else if (pageRows.length === 0) body = message(empty2 ?? labels.empty);
645
615
  else if (windowItems) body = windowItems.map((item) => renderRow(pageRows[item.index], item.index));
646
616
  else body = pageRows.map((row, i) => renderRow(row, i));
647
617
  const headers = table.getHeaderGroups().at(-1)?.headers ?? [];
648
- const tableElement = /* @__PURE__ */ jsxs3(
618
+ const tableElement = /* @__PURE__ */ jsxs2(
649
619
  "table",
650
620
  {
651
621
  role: "table",
@@ -654,12 +624,12 @@ function DataTable({
654
624
  className: s2.table({ className: fixedLayout ? "table-fixed" : void 0 }),
655
625
  style: fixedLayout ? { minWidth: table.getTotalSize() + (selectable ? 40 : 0) + (hasExpander ? 40 : 0) } : void 0,
656
626
  children: [
657
- /* @__PURE__ */ jsxs3("caption", { className: showCaption ? s2.caption() : "sr-only", children: [
627
+ /* @__PURE__ */ jsxs2("caption", { className: showCaption ? s2.caption() : "sr-only", children: [
658
628
  caption,
659
- loading ? /* @__PURE__ */ jsx3("span", { className: "sr-only", children: ` \u2014 ${labels.loading}` }) : null
629
+ loading ? /* @__PURE__ */ jsx2("span", { className: "sr-only", children: ` \u2014 ${labels.loading}` }) : null
660
630
  ] }),
661
- /* @__PURE__ */ jsx3("thead", { role: "rowgroup", className: s2.thead({ className: virtualized ? "sticky top-0 z-10 bg-surface-2" : void 0 }), children: /* @__PURE__ */ jsxs3("tr", { role: "row", "aria-rowindex": virtualized ? 1 : void 0, className: s2.headRow(), children: [
662
- selectable && /* @__PURE__ */ jsx3("th", { role: "columnheader", scope: "col", "data-keep": "", className: s2.th({ className: s2.select() }), children: /* @__PURE__ */ jsx3(
631
+ /* @__PURE__ */ jsx2("thead", { role: "rowgroup", className: s2.thead({ className: virtualized ? "sticky top-0 z-10 bg-surface-2" : void 0 }), children: /* @__PURE__ */ jsxs2("tr", { role: "row", "aria-rowindex": virtualized ? 1 : void 0, className: s2.headRow(), children: [
632
+ selectable && /* @__PURE__ */ jsx2("th", { role: "columnheader", scope: "col", "data-keep": "", className: s2.th({ className: s2.select() }), children: /* @__PURE__ */ jsx2(
663
633
  Checkbox,
664
634
  {
665
635
  checked: allChosen ? true : someChosen ? "indeterminate" : false,
@@ -668,14 +638,14 @@ function DataTable({
668
638
  "aria-label": labels.selectAll
669
639
  }
670
640
  ) }),
671
- hasExpander && /* @__PURE__ */ jsx3("th", { role: "columnheader", scope: "col", className: s2.th({ className: s2.expander() }), children: /* @__PURE__ */ jsx3("span", { className: "sr-only", children: labels.details }) }),
641
+ hasExpander && /* @__PURE__ */ jsx2("th", { role: "columnheader", scope: "col", className: s2.th({ className: s2.expander() }), children: /* @__PURE__ */ jsx2("span", { className: "sr-only", children: labels.details }) }),
672
642
  headers.map((header) => {
673
643
  const column = byId.get(header.column.id);
674
644
  if (!column) return null;
675
645
  const sorted = header.column.getIsSorted();
676
646
  const direction = sorted === "asc" ? "ascending" : sorted === "desc" ? "descending" : void 0;
677
647
  const { style, ...pinned } = pin(header.column);
678
- return /* @__PURE__ */ jsxs3(
648
+ return /* @__PURE__ */ jsxs2(
679
649
  "th",
680
650
  {
681
651
  role: "columnheader",
@@ -686,11 +656,11 @@ function DataTable({
686
656
  className: s2.th({ className: ALIGN[column.align ?? "start"] }),
687
657
  style: { ...style, ...width(header.column) },
688
658
  children: [
689
- column.sortable ? /* @__PURE__ */ jsxs3("button", { type: "button", "aria-pressed": Boolean(direction), className: s2.sortButton(), onClick: () => header.column.toggleSorting(void 0, false), children: [
659
+ column.sortable ? /* @__PURE__ */ jsxs2("button", { type: "button", "aria-pressed": Boolean(direction), className: s2.sortButton(), onClick: () => header.column.toggleSorting(void 0, false), children: [
690
660
  column.header,
691
- /* @__PURE__ */ jsx3(SortGlyph, { direction, className: "h-3.5 w-3.5" })
692
- ] }) : column.headerHidden ? /* @__PURE__ */ jsx3("span", { className: "sr-only", children: column.header }) : column.header,
693
- resizing && header.column.getCanResize() ? /* @__PURE__ */ jsx3(
661
+ /* @__PURE__ */ jsx2(SortGlyph, { direction, className: "h-3.5 w-3.5" })
662
+ ] }) : column.headerHidden ? /* @__PURE__ */ jsx2("span", { className: "sr-only", children: column.header }) : column.header,
663
+ resizing && header.column.getCanResize() ? /* @__PURE__ */ jsx2(
694
664
  ResizeHandle,
695
665
  {
696
666
  label: labels.resize(column.header),
@@ -708,10 +678,10 @@ function DataTable({
708
678
  );
709
679
  })
710
680
  ] }) }),
711
- /* @__PURE__ */ jsxs3("tbody", { role: "rowgroup", className: s2.tbody(), children: [
712
- before > 0 && /* @__PURE__ */ jsx3("tr", { "aria-hidden": true, style: { height: before }, children: /* @__PURE__ */ jsx3("td", { colSpan: span }) }),
681
+ /* @__PURE__ */ jsxs2("tbody", { role: "rowgroup", className: s2.tbody(), children: [
682
+ before > 0 && /* @__PURE__ */ jsx2("tr", { "aria-hidden": true, style: { height: before }, children: /* @__PURE__ */ jsx2("td", { colSpan: span }) }),
713
683
  body,
714
- after > 0 && /* @__PURE__ */ jsx3("tr", { "aria-hidden": true, style: { height: after }, children: /* @__PURE__ */ jsx3("td", { colSpan: span }) })
684
+ after > 0 && /* @__PURE__ */ jsx2("tr", { "aria-hidden": true, style: { height: after }, children: /* @__PURE__ */ jsx2("td", { colSpan: span }) })
715
685
  ] })
716
686
  ]
717
687
  }
@@ -726,7 +696,7 @@ function DataTable({
726
696
  exportRows: () => table.getSortedRowModel().flatRows.filter((r) => !r.getIsGrouped()).map((r) => r.original),
727
697
  manualFiltering: Boolean(manual?.filtering)
728
698
  };
729
- const pagination2 = paginated ? /* @__PURE__ */ jsx3(
699
+ const pagination2 = paginated ? /* @__PURE__ */ jsx2(
730
700
  Pagination,
731
701
  {
732
702
  page: Math.min(page, pageCount),
@@ -739,11 +709,11 @@ function DataTable({
739
709
  labels: labels.pagination
740
710
  }
741
711
  ) : null;
742
- return /* @__PURE__ */ jsx3(DataTableContext.Provider, { value: context, children: /* @__PURE__ */ jsxs3("div", { className: s2.root({ className }), children: [
743
- toolbar ? /* @__PURE__ */ jsx3("div", { className: s2.toolbar(), children: toolbar }) : null,
712
+ return /* @__PURE__ */ jsx2(DataTableContext.Provider, { value: context, children: /* @__PURE__ */ jsxs2("div", { className: s2.root({ className }), children: [
713
+ toolbar ? /* @__PURE__ */ jsx2("div", { className: s2.toolbar(), children: toolbar }) : null,
744
714
  virtualized ? (
745
715
  // A scrolling region the keyboard can reach: Tab lands on it, the arrows scroll it.
746
- /* @__PURE__ */ jsx3(
716
+ /* @__PURE__ */ jsx2(
747
717
  "div",
748
718
  {
749
719
  ref: scroller,
@@ -755,8 +725,8 @@ function DataTable({
755
725
  children: tableElement
756
726
  }
757
727
  )
758
- ) : /* @__PURE__ */ jsx3("div", { className: s2.scroller(), children: tableElement }),
759
- pagination2 || footer ? /* @__PURE__ */ jsxs3("div", { className: s2.footer({ className: "flex flex-col gap-3" }), children: [
728
+ ) : /* @__PURE__ */ jsx2("div", { className: s2.scroller(), children: tableElement }),
729
+ pagination2 || footer ? /* @__PURE__ */ jsxs2("div", { className: s2.footer({ className: "flex flex-col gap-3" }), children: [
760
730
  pagination2,
761
731
  footer
762
732
  ] }) : null
@@ -773,7 +743,7 @@ function ResizeHandle({
773
743
  }) {
774
744
  return (
775
745
  // A focusable separator is interactive (WAI-ARIA "window splitter"): its value is the width, the arrows change it.
776
- /* @__PURE__ */ jsx3(
746
+ /* @__PURE__ */ jsx2(
777
747
  "div",
778
748
  {
779
749
  role: "separator",
@@ -799,127 +769,10 @@ function ResizeHandle({
799
769
  );
800
770
  }
801
771
 
802
- // src/button/button.tsx
803
- import { Slot } from "radix-ui";
804
- import { tv as tv4 } from "tailwind-variants";
805
-
806
- // src/spinner/glyph.tsx
807
- import { jsx as jsx4, jsxs as jsxs4 } from "react/jsx-runtime";
808
- var HEX = "M12 3 19.79 7.5 19.79 16.5 12 21 4.21 16.5 4.21 7.5Z";
809
- function LoaderGlyph({ state = "loading", value, ...props }) {
810
- const known = typeof value === "number" && Number.isFinite(value);
811
- const fill = state !== "loading" ? 100 : known ? Math.round(Math.min(1, Math.max(0, value)) * 100) : null;
812
- return /* @__PURE__ */ jsxs4("svg", { viewBox: "0 0 24 24", fill: "none", "aria-hidden": true, "data-state": state, "data-progress": fill === null ? void 0 : fill, ...props, children: [
813
- /* @__PURE__ */ jsx4("path", { d: HEX, stroke: "currentColor", strokeOpacity: "0.22", strokeWidth: "2.2", strokeLinejoin: "round" }),
814
- /* @__PURE__ */ jsx4(
815
- "path",
816
- {
817
- d: HEX,
818
- pathLength: 100,
819
- stroke: "currentColor",
820
- strokeWidth: "2.2",
821
- strokeLinejoin: "round",
822
- strokeLinecap: "round",
823
- className: "kz-loader-trace",
824
- strokeDasharray: fill === null ? void 0 : `${fill} ${100 - fill}`
825
- }
826
- ),
827
- state === "loading" && /* @__PURE__ */ jsx4("circle", { cx: "12", cy: "12", r: "2.6", fill: "currentColor", className: "kz-loader-node" }),
828
- state === "success" && /* @__PURE__ */ jsx4("path", { d: "M8.3 12.3l2.6 2.6 4.9-5.3", pathLength: 20, stroke: "currentColor", strokeWidth: "2.2", strokeLinecap: "round", strokeLinejoin: "round", className: "kz-loader-mark" }),
829
- state === "error" && /* @__PURE__ */ jsx4("path", { d: "M9.4 9.4l5.2 5.2M14.6 9.4l-5.2 5.2", pathLength: 20, stroke: "currentColor", strokeWidth: "2.2", strokeLinecap: "round", className: "kz-loader-mark" })
830
- ] });
831
- }
832
-
833
- // src/button/button.tsx
834
- import { Fragment as Fragment3, jsx as jsx5, jsxs as jsxs5 } from "react/jsx-runtime";
835
- var buttonVariants = tv4({
836
- base: "inline-flex shrink-0 select-none items-center justify-center gap-2 whitespace-nowrap font-semibold transition-all focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-surface-0 disabled:pointer-events-none disabled:opacity-40 data-loading:cursor-progress active:scale-[0.98] [&[data-loading]]:opacity-100",
837
- variants: {
838
- variant: {
839
- primary: "bg-accent text-on-accent shadow-sm hover:bg-accent-hover",
840
- // The brand's signature: accent → accent-2 (on-accent reads on both stops, tested in @krizaka/tokens).
841
- gradient: "bg-linear-to-r from-accent to-accent-2 text-on-accent shadow-sm hover:brightness-110",
842
- secondary: "border border-border-default bg-surface-2 text-fg hover:border-border-strong hover:bg-surface-3",
843
- outline: "border border-border-default bg-transparent text-fg hover:border-accent hover:text-fg-accent",
844
- ghost: "text-fg-secondary hover:bg-surface-2 hover:text-fg",
845
- // The border and the tint carry the danger; the label stays the primary text role, legible on the tint at rest
846
- // and hovered over every surface (`text-fg-danger` is for text set directly on a surface).
847
- danger: "border border-danger/50 bg-danger/10 text-fg hover:border-danger hover:bg-danger/20"
848
- },
849
- size: { sm: "h-8 px-3 text-xs", md: "h-10 px-4 text-sm", lg: "h-12 px-6 text-sm", icon: "h-10 w-10" },
850
- // `cut`: the Krizaka chamfer — 45° corners (CSS corner-shape, where supported; rounded elsewhere). The border, the
851
- // focus ring and the hover follow the cut, unlike a clip-path.
852
- shape: { rounded: "rounded-lg", pill: "rounded-full", cut: "rounded-[10px] [corner-shape:bevel]" }
853
- },
854
- defaultVariants: { variant: "secondary", size: "md", shape: "rounded" }
855
- });
856
- var STATUS_TEXT = { success: "text-fg-success", error: "text-fg-danger" };
857
- function Button({
858
- asChild,
859
- loading,
860
- progress,
861
- status,
862
- announce,
863
- indicator = true,
864
- shimmer,
865
- magnetic,
866
- variant,
867
- size,
868
- shape,
869
- className,
870
- disabled,
871
- children,
872
- ...props
873
- }) {
874
- const Comp = asChild ? Slot.Root : "button";
875
- const known = loading && typeof progress === "number" && Number.isFinite(progress);
876
- const ratio = known ? Math.min(1, Math.max(0, progress)) : 0;
877
- const glyph = indicator && !asChild && (loading || status) ? status ?? "loading" : null;
878
- const filled = variant === "primary" || variant === "gradient";
879
- const button = /* @__PURE__ */ jsx5(
880
- Comp,
881
- {
882
- type: asChild ? void 0 : "button",
883
- "aria-busy": loading || void 0,
884
- "data-loading": loading ? "" : void 0,
885
- "data-variant": variant ?? "secondary",
886
- "data-kz-status": status ?? void 0,
887
- "data-kz-magnetic": magnetic ? "" : void 0,
888
- disabled: asChild ? void 0 : disabled || loading,
889
- "aria-disabled": asChild && (disabled || loading) ? true : void 0,
890
- className: buttonVariants({
891
- variant,
892
- size,
893
- shape,
894
- className: [known && "relative isolate overflow-hidden", shimmer && "kz-sheen", className].filter(Boolean).join(" ") || void 0
895
- }),
896
- ...props,
897
- children: asChild ? children : /* @__PURE__ */ jsxs5(Fragment3, { children: [
898
- known && /* @__PURE__ */ jsx5("span", { "aria-hidden": true, className: "absolute inset-y-0 left-0 -z-10 bg-current opacity-15 transition-[width] duration-500", style: { width: `${ratio * 100}%` } }),
899
- glyph && /* @__PURE__ */ jsx5(
900
- "span",
901
- {
902
- "aria-hidden": true,
903
- "data-slot": "indicator",
904
- className: "-my-1 grid grid-cols-[1fr] transition-[grid-template-columns,margin,opacity] duration-300 starting:-mr-2 starting:grid-cols-[0fr] starting:opacity-0",
905
- children: /* @__PURE__ */ jsx5("span", { className: "overflow-hidden", children: /* @__PURE__ */ jsx5(LoaderGlyph, { state: glyph, value: known ? ratio : null, className: ["h-4 w-4", glyph !== "loading" && !filled && STATUS_TEXT[glyph]].filter(Boolean).join(" ") }) })
906
- }
907
- ),
908
- children
909
- ] })
910
- }
911
- );
912
- if (announce === void 0 || asChild) return button;
913
- return /* @__PURE__ */ jsxs5(Fragment3, { children: [
914
- button,
915
- /* @__PURE__ */ jsx5("span", { role: "status", className: "sr-only", children: announce })
916
- ] });
917
- }
918
-
919
772
  // src/field/field.tsx
920
- import { tv as tv5 } from "tailwind-variants";
921
- import { jsx as jsx6, jsxs as jsxs6 } from "react/jsx-runtime";
922
- var field2 = tv5({
773
+ import { tv as tv3 } from "tailwind-variants";
774
+ import { jsx as jsx3, jsxs as jsxs3 } from "react/jsx-runtime";
775
+ var field2 = tv3({
923
776
  slots: {
924
777
  root: "flex flex-col gap-1.5",
925
778
  label: "text-xs font-semibold text-fg-secondary",
@@ -934,11 +787,11 @@ var field2 = tv5({
934
787
  var s = field2();
935
788
  var invalidProps = (invalid) => invalid ? { "aria-invalid": true, "data-invalid": "" } : {};
936
789
  function Input({ invalid, className, ...props }) {
937
- return /* @__PURE__ */ jsx6("input", { ...invalidProps(invalid), className: s.control({ className }), ...props });
790
+ return /* @__PURE__ */ jsx3("input", { ...invalidProps(invalid), className: s.control({ className }), ...props });
938
791
  }
939
792
 
940
793
  // src/data-table/toolbar.tsx
941
- import { jsx as jsx7, jsxs as jsxs7 } from "react/jsx-runtime";
794
+ import { jsx as jsx4, jsxs as jsxs4 } from "react/jsx-runtime";
942
795
  var asRange = (value) => Array.isArray(value) && value.length === 2 && (typeof value[0] !== "string" || typeof value[1] !== "string") ? [value[0], value[1]] : [null, null];
943
796
  var asList = (value) => Array.isArray(value) ? value : [];
944
797
  var number = (text) => text.trim() === "" || Number.isNaN(Number(text)) ? null : Number(text);
@@ -970,7 +823,7 @@ function DataTableFilters({ debounce = 250, children, className }) {
970
823
  const label = labels.activeFilter(column.header, text);
971
824
  return [{ id: column.id, label, onRemove: () => set(column.id, null) }];
972
825
  });
973
- return /* @__PURE__ */ jsxs7(
826
+ return /* @__PURE__ */ jsxs4(
974
827
  FilterBar,
975
828
  {
976
829
  label: labels.filters,
@@ -983,7 +836,7 @@ function DataTableFilters({ debounce = 250, children, className }) {
983
836
  children: [
984
837
  filterable.map((column) => {
985
838
  if (column.filter === "text")
986
- return /* @__PURE__ */ jsx7(
839
+ return /* @__PURE__ */ jsx4(
987
840
  SearchField,
988
841
  {
989
842
  label: labels.search(column.header),
@@ -999,11 +852,11 @@ function DataTableFilters({ debounce = 250, children, className }) {
999
852
  column.id
1000
853
  );
1001
854
  if (column.filter === "facet")
1002
- return /* @__PURE__ */ jsx7(FilterMenu, { label: column.header, options: optionsOf(column), value: asList(filters[column.id]), onValueChange: (value) => set(column.id, value) }, column.id);
855
+ return /* @__PURE__ */ jsx4(FilterMenu, { label: column.header, options: optionsOf(column), value: asList(filters[column.id]), onValueChange: (value) => set(column.id, value) }, column.id);
1003
856
  const [min, max] = asRange(filters[column.id]);
1004
857
  const bounds = manualFiltering ? void 0 : table.getColumn(column.id)?.getFacetedMinMaxValues();
1005
- return /* @__PURE__ */ jsxs7("span", { className: "inline-flex items-center gap-1.5", children: [
1006
- /* @__PURE__ */ jsx7(
858
+ return /* @__PURE__ */ jsxs4("span", { className: "inline-flex items-center gap-1.5", children: [
859
+ /* @__PURE__ */ jsx4(
1007
860
  Input,
1008
861
  {
1009
862
  type: "number",
@@ -1015,8 +868,8 @@ function DataTableFilters({ debounce = 250, children, className }) {
1015
868
  className: "h-11 w-28"
1016
869
  }
1017
870
  ),
1018
- /* @__PURE__ */ jsx7("span", { "aria-hidden": true, className: "text-fg-secondary", children: "\u2013" }),
1019
- /* @__PURE__ */ jsx7(
871
+ /* @__PURE__ */ jsx4("span", { "aria-hidden": true, className: "text-fg-secondary", children: "\u2013" }),
872
+ /* @__PURE__ */ jsx4(
1020
873
  Input,
1021
874
  {
1022
875
  type: "number",
@@ -1037,14 +890,14 @@ function DataTableFilters({ debounce = 250, children, className }) {
1037
890
  }
1038
891
  function DataTableColumnsMenu({ defaultOpen, className }) {
1039
892
  const { table, columns, labels } = useDataTable();
1040
- return /* @__PURE__ */ jsxs7(DropdownMenu.Root, { defaultOpen, modal: false, children: [
1041
- /* @__PURE__ */ jsx7(DropdownMenu.Trigger, { asChild: true, children: /* @__PURE__ */ jsxs7(Button, { variant: "outline", size: "sm", className, children: [
893
+ return /* @__PURE__ */ jsxs4(DropdownMenu.Root, { defaultOpen, modal: false, children: [
894
+ /* @__PURE__ */ jsx4(DropdownMenu.Trigger, { asChild: true, children: /* @__PURE__ */ jsxs4(Button, { variant: "outline", size: "sm", className, children: [
1042
895
  labels.columns,
1043
- /* @__PURE__ */ jsx7(ChevronGlyph, { className: "h-4 w-4" })
896
+ /* @__PURE__ */ jsx4(ChevronGlyph, { className: "h-4 w-4" })
1044
897
  ] }) }),
1045
- /* @__PURE__ */ jsx7(DropdownMenu.Content, { align: "end", "aria-label": labels.columns, children: columns.filter((column) => column.hideable !== false).map((column) => {
898
+ /* @__PURE__ */ jsx4(DropdownMenu.Content, { align: "end", "aria-label": labels.columns, children: columns.filter((column) => column.hideable !== false).map((column) => {
1046
899
  const instance = table.getColumn(column.id);
1047
- return /* @__PURE__ */ jsx7(
900
+ return /* @__PURE__ */ jsx4(
1048
901
  DropdownMenu.CheckboxItem,
1049
902
  {
1050
903
  checked: instance?.getIsVisible() ?? true,
@@ -1068,7 +921,7 @@ function DataTableExport({ filename = "export.csv", onExport, className }) {
1068
921
  link.click();
1069
922
  setTimeout(() => URL.revokeObjectURL(url), 0);
1070
923
  };
1071
- return /* @__PURE__ */ jsx7(Button, { variant: "outline", size: "sm", className, onClick: run, children: labels.export });
924
+ return /* @__PURE__ */ jsx4(Button, { variant: "outline", size: "sm", className, onClick: run, children: labels.export });
1072
925
  }
1073
926
  export {
1074
927
  DataTable,