@krizaka/ui 3.53.0 → 3.55.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 (504) hide show
  1. package/README.md +1 -0
  2. package/dist/account-menu.d.ts +6 -2
  3. package/dist/account-menu.js +8 -1
  4. package/dist/account-menu.js.map +1 -1
  5. package/dist/account-settings.js +28 -88
  6. package/dist/account-settings.js.map +1 -1
  7. package/dist/anatomy-plate.d.ts +4 -1
  8. package/dist/anatomy-plate.js +4 -0
  9. package/dist/anatomy-plate.js.map +1 -1
  10. package/dist/app-header/search.d.ts +63 -0
  11. package/dist/app-header/search.js +70 -0
  12. package/dist/app-header/search.js.map +1 -0
  13. package/dist/app-header.d.ts +88 -4
  14. package/dist/app-header.js +63 -5
  15. package/dist/app-header.js.map +1 -1
  16. package/dist/app-shell.js +31 -40
  17. package/dist/app-shell.js.map +1 -1
  18. package/dist/argument-card.js +3 -3
  19. package/dist/bird-plate.d.ts +3 -1
  20. package/dist/bird-plate.js +2 -2
  21. package/dist/bird-plate.js.map +1 -1
  22. package/dist/blocks.css +202 -27
  23. package/dist/chapter.d.ts +20 -3
  24. package/dist/chapter.js +82 -31
  25. package/dist/chapter.js.map +1 -1
  26. package/dist/chat.js +2 -2
  27. package/dist/chat.js.map +1 -1
  28. package/dist/checkbox.js +1 -1
  29. package/dist/checkbox.js.map +1 -1
  30. package/dist/chip.js +5 -98
  31. package/dist/chip.js.map +1 -1
  32. package/dist/choice-grid.js +28 -88
  33. package/dist/choice-grid.js.map +1 -1
  34. package/dist/{chunk-YGIN2YIY.js → chunk-3X3OF4TI.js} +2 -2
  35. package/dist/chunk-3X3OF4TI.js.map +1 -0
  36. package/dist/chunk-5VEVYDVC.js +11 -0
  37. package/dist/chunk-5VEVYDVC.js.map +1 -0
  38. package/dist/chunk-7U5TXA5Q.js +105 -0
  39. package/dist/chunk-7U5TXA5Q.js.map +1 -0
  40. package/dist/{chunk-KBQD6HE3.js → chunk-AEP3K4YD.js} +3 -3
  41. package/dist/{chunk-KBQD6HE3.js.map → chunk-AEP3K4YD.js.map} +1 -1
  42. package/dist/chunk-BDIU5LZB.js +18 -0
  43. package/dist/chunk-BDIU5LZB.js.map +1 -0
  44. package/dist/chunk-CSRKYZ53.js +39 -0
  45. package/dist/chunk-CSRKYZ53.js.map +1 -0
  46. package/dist/chunk-HEKDKM5Y.js +128 -0
  47. package/dist/chunk-HEKDKM5Y.js.map +1 -0
  48. package/dist/chunk-KGLRZMCY.js +16 -0
  49. package/dist/chunk-KGLRZMCY.js.map +1 -0
  50. package/dist/chunk-KID32IRJ.js +18 -0
  51. package/dist/chunk-KID32IRJ.js.map +1 -0
  52. package/dist/{chunk-ZQW7LF4Y.js → chunk-OIMXKRXF.js} +2 -2
  53. package/dist/{chunk-YHKTYFOQ.js → chunk-QWKCNSPF.js} +271 -47
  54. package/dist/chunk-QWKCNSPF.js.map +1 -0
  55. package/dist/{chunk-4LYKBSOG.js → chunk-USPOIQV5.js} +2 -2
  56. package/dist/chunk-USPOIQV5.js.map +1 -0
  57. package/dist/{chunk-7NRSPHAF.js → chunk-VB7MWE2N.js} +2 -2
  58. package/dist/{chunk-7NRSPHAF.js.map → chunk-VB7MWE2N.js.map} +1 -1
  59. package/dist/chunk-VIPSZXO4.js +103 -0
  60. package/dist/chunk-VIPSZXO4.js.map +1 -0
  61. package/dist/chunk-YCZ7N6Q6.js +385 -0
  62. package/dist/chunk-YCZ7N6Q6.js.map +1 -0
  63. package/dist/code-block.js +81 -98
  64. package/dist/code-block.js.map +1 -1
  65. package/dist/combobox.js +2 -2
  66. package/dist/component-page.d.ts +4 -1
  67. package/dist/component-page.js +5 -0
  68. package/dist/component-page.js.map +1 -1
  69. package/dist/continue-prompt.d.ts +4 -1
  70. package/dist/continue-prompt.js +4 -0
  71. package/dist/continue-prompt.js.map +1 -1
  72. package/dist/data-table.d.ts +60 -4
  73. package/dist/data-table.js +19 -7
  74. package/dist/date-picker.js +2 -2
  75. package/dist/date-picker.js.map +1 -1
  76. package/dist/detail-layout.d.ts +28 -17
  77. package/dist/detail-layout.js +73 -16
  78. package/dist/detail-layout.js.map +1 -1
  79. package/dist/doodle.d.ts +21 -0
  80. package/dist/doodle.js +39 -0
  81. package/dist/doodle.js.map +1 -0
  82. package/dist/drop-overlay.d.ts +12 -4
  83. package/dist/drop-overlay.js +16 -6
  84. package/dist/drop-overlay.js.map +1 -1
  85. package/dist/elephant.d.ts +2 -0
  86. package/dist/elephant.js +4 -0
  87. package/dist/elephant.js.map +1 -1
  88. package/dist/field.js +1 -1
  89. package/dist/field.js.map +1 -1
  90. package/dist/filter-bar.js +2 -2
  91. package/dist/force-update-screen.d.ts +5 -1
  92. package/dist/force-update-screen.js +4 -0
  93. package/dist/force-update-screen.js.map +1 -1
  94. package/dist/gallery-page.d.ts +4 -1
  95. package/dist/gallery-page.js +4 -0
  96. package/dist/gallery-page.js.map +1 -1
  97. package/dist/genui.js +5 -5
  98. package/dist/image-cropper.d.ts +10 -2
  99. package/dist/image-cropper.js +4 -0
  100. package/dist/image-cropper.js.map +1 -1
  101. package/dist/kanban.d.ts +3 -0
  102. package/dist/kanban.js +4 -0
  103. package/dist/kanban.js.map +1 -1
  104. package/dist/landscape.d.ts +4 -1
  105. package/dist/landscape.js +4 -0
  106. package/dist/landscape.js.map +1 -1
  107. package/dist/list.js +1 -1
  108. package/dist/maintenance-screen.d.ts +5 -1
  109. package/dist/maintenance-screen.js +4 -0
  110. package/dist/maintenance-screen.js.map +1 -1
  111. package/dist/map.js +6 -0
  112. package/dist/map.js.map +1 -1
  113. package/dist/markdown.d.ts +5 -1
  114. package/dist/markdown.js +12 -5
  115. package/dist/markdown.js.map +1 -1
  116. package/dist/match-dialog.d.ts +4 -1
  117. package/dist/match-dialog.js +4 -0
  118. package/dist/match-dialog.js.map +1 -1
  119. package/dist/media-capture.d.ts +6 -1
  120. package/dist/media-capture.js +4 -0
  121. package/dist/media-capture.js.map +1 -1
  122. package/dist/meter.js +5 -121
  123. package/dist/meter.js.map +1 -1
  124. package/dist/native/map.js +6 -0
  125. package/dist/native/map.js.map +1 -1
  126. package/dist/native/markdown.d.ts +9 -2
  127. package/dist/native/markdown.js +46 -7
  128. package/dist/native/markdown.js.map +1 -1
  129. package/dist/native/media-capture.d.ts +1 -0
  130. package/dist/native/media-capture.js +5 -0
  131. package/dist/native/media-capture.js.map +1 -1
  132. package/dist/native/vertical-video.d.ts +8 -2
  133. package/dist/native/vertical-video.js +6 -0
  134. package/dist/native/vertical-video.js.map +1 -1
  135. package/dist/native.d.ts +94 -4
  136. package/dist/native.js +1236 -1110
  137. package/dist/native.js.map +1 -1
  138. package/dist/nav-bar/me.d.ts +32 -0
  139. package/dist/nav-bar/me.js +23 -0
  140. package/dist/nav-bar/me.js.map +1 -0
  141. package/dist/nav-bar.d.ts +60 -2
  142. package/dist/nav-bar.js +92 -48
  143. package/dist/nav-bar.js.map +1 -1
  144. package/dist/notification-preferences.d.ts +151 -0
  145. package/dist/notification-preferences.js +77 -0
  146. package/dist/notification-preferences.js.map +1 -0
  147. package/dist/page-header.js +1 -1
  148. package/dist/page-header.js.map +1 -1
  149. package/dist/pointer-light.js +5 -0
  150. package/dist/pointer-light.js.map +1 -1
  151. package/dist/product-page.d.ts +4 -1
  152. package/dist/product-page.js +4 -0
  153. package/dist/product-page.js.map +1 -1
  154. package/dist/profile-card.d.ts +119 -1
  155. package/dist/profile-card.js +68 -21
  156. package/dist/profile-card.js.map +1 -1
  157. package/dist/promise-card.d.ts +4 -1
  158. package/dist/promise-card.js +4 -0
  159. package/dist/promise-card.js.map +1 -1
  160. package/dist/quota-meter.d.ts +113 -0
  161. package/dist/quota-meter.js +58 -0
  162. package/dist/quota-meter.js.map +1 -0
  163. package/dist/radio-group.js +6 -8
  164. package/dist/radio-group.js.map +1 -1
  165. package/dist/rail-nav.d.ts +18 -2
  166. package/dist/rail-nav.js +25 -2
  167. package/dist/rail-nav.js.map +1 -1
  168. package/dist/retro-tv.d.ts +30 -0
  169. package/dist/retro-tv.js +124 -0
  170. package/dist/retro-tv.js.map +1 -0
  171. package/dist/router.d.ts +12 -1
  172. package/dist/router.js +85 -8
  173. package/dist/router.js.map +1 -1
  174. package/dist/scroll-stage.d.ts +5 -1
  175. package/dist/scroll-stage.js +5 -0
  176. package/dist/scroll-stage.js.map +1 -1
  177. package/dist/search-field.js +1 -1
  178. package/dist/showcase.d.ts +9 -2
  179. package/dist/showcase.js +5 -0
  180. package/dist/showcase.js.map +1 -1
  181. package/dist/signature.d.ts +19 -0
  182. package/dist/signature.js +39 -0
  183. package/dist/signature.js.map +1 -0
  184. package/dist/site-footer.js +1 -1
  185. package/dist/sites.js +1 -1
  186. package/dist/sites.js.map +1 -1
  187. package/dist/slot.d.ts +1 -1
  188. package/dist/stat.js +1 -1
  189. package/dist/stat.js.map +1 -1
  190. package/dist/status-page.d.ts +4 -1
  191. package/dist/status-page.js +5 -0
  192. package/dist/status-page.js.map +1 -1
  193. package/dist/stuck.d.ts +27 -0
  194. package/dist/stuck.js +26 -0
  195. package/dist/stuck.js.map +1 -0
  196. package/dist/swipe-deck.d.ts +9 -2
  197. package/dist/swipe-deck.js +5 -0
  198. package/dist/swipe-deck.js.map +1 -1
  199. package/dist/switch.js +4 -32
  200. package/dist/switch.js.map +1 -1
  201. package/dist/tabs.d.ts +47 -8
  202. package/dist/tabs.js +62 -12
  203. package/dist/tabs.js.map +1 -1
  204. package/dist/tag-input.js +2 -2
  205. package/dist/tag-selector.js +1 -1
  206. package/dist/terminal-replay.d.ts +4 -1
  207. package/dist/terminal-replay.js +4 -0
  208. package/dist/terminal-replay.js.map +1 -1
  209. package/dist/tree-view.js +4 -0
  210. package/dist/tree-view.js.map +1 -1
  211. package/dist/update-prompt.d.ts +5 -1
  212. package/dist/update-prompt.js +4 -0
  213. package/dist/update-prompt.js.map +1 -1
  214. package/dist/video-player.js +7 -376
  215. package/dist/video-player.js.map +1 -1
  216. package/dist/video-trimmer.d.ts +6 -1
  217. package/dist/video-trimmer.js +4 -0
  218. package/dist/video-trimmer.js.map +1 -1
  219. package/package.json +143 -31
  220. package/registry/account-menu.json +9 -8
  221. package/registry/account-settings.json +2 -2
  222. package/registry/achievement.json +3 -4
  223. package/registry/action-bar.json +3 -3
  224. package/registry/action-sheet.json +1 -0
  225. package/registry/activity-feed.json +2 -1
  226. package/registry/agenda.json +1 -1
  227. package/registry/alert.json +1 -1
  228. package/registry/anatomy-plate.json +13 -5
  229. package/registry/app-header.json +470 -23
  230. package/registry/app-shell.json +2 -2
  231. package/registry/argument-card.json +1 -1
  232. package/registry/audio-player.json +1 -1
  233. package/registry/auth-layout.json +1 -1
  234. package/registry/avatar.json +3 -2
  235. package/registry/badge.json +2 -1
  236. package/registry/bird-plate.json +16 -2
  237. package/registry/button.json +7 -6
  238. package/registry/captcha.json +1 -1
  239. package/registry/card-grid.json +1 -1
  240. package/registry/card.json +7 -6
  241. package/registry/catalogue-page.json +3 -4
  242. package/registry/changelog-page.json +3 -5
  243. package/registry/chapter.json +46 -10
  244. package/registry/chat.json +3 -2
  245. package/registry/checkbox.json +4 -3
  246. package/registry/chip-link.json +2 -2
  247. package/registry/chip-row.json +2 -2
  248. package/registry/chip.json +3 -2
  249. package/registry/choice-grid.json +3 -4
  250. package/registry/code-block.json +1 -1
  251. package/registry/combobox.json +3 -2
  252. package/registry/command.json +2 -2
  253. package/registry/comparison-table.json +1 -1
  254. package/registry/component-page.json +14 -5
  255. package/registry/confirm-button.json +4 -4
  256. package/registry/contact-page.json +1 -1
  257. package/registry/continue-prompt.json +13 -5
  258. package/registry/countdown.json +4 -3
  259. package/registry/cover-hero.json +3 -4
  260. package/registry/cta-panel.json +1 -1
  261. package/registry/dashboard-layout.json +1 -1
  262. package/registry/data-table.json +63 -7
  263. package/registry/date-picker.json +5 -4
  264. package/registry/decision-list.json +1 -1
  265. package/registry/description-list.json +2 -1
  266. package/registry/detail-layout.json +30 -6
  267. package/registry/dialog.json +7 -6
  268. package/registry/docs-article-page.json +3 -4
  269. package/registry/docs-hub-page.json +1 -1
  270. package/registry/docs-layout.json +1 -1
  271. package/registry/docs-nav.json +1 -1
  272. package/registry/document-viewer.json +3 -5
  273. package/registry/doodle.json +209 -0
  274. package/registry/drop-overlay.json +30 -16
  275. package/registry/dropdown-menu.json +2 -2
  276. package/registry/elephant.json +15 -7
  277. package/registry/empty-state.json +2 -1
  278. package/registry/engine-flow.json +1 -1
  279. package/registry/error-page.json +3 -5
  280. package/registry/examples/app-header/family.d.ts +4 -0
  281. package/registry/examples/app-header/family.js +41 -0
  282. package/registry/examples/app-header/family.tsx +37 -0
  283. package/registry/examples/app-header/native/family.d.ts +4 -0
  284. package/registry/examples/app-header/native/family.dark.png +0 -0
  285. package/registry/examples/app-header/native/family.js +25 -0
  286. package/registry/examples/app-header/native/family.light.png +0 -0
  287. package/registry/examples/app-header/native/family.tsx +33 -0
  288. package/registry/examples/chapter/album.d.ts +4 -0
  289. package/registry/examples/chapter/album.js +34 -0
  290. package/registry/examples/chapter/album.tsx +30 -0
  291. package/registry/examples/chapter/in-ruled-page.d.ts +4 -0
  292. package/registry/examples/chapter/in-ruled-page.js +23 -0
  293. package/registry/examples/chapter/in-ruled-page.tsx +19 -0
  294. package/registry/examples/data-table/applicant-files.d.ts +4 -0
  295. package/registry/examples/data-table/applicant-files.js +24 -0
  296. package/registry/examples/data-table/applicant-files.tsx +23 -0
  297. package/registry/examples/data-table/checks.d.ts +4 -0
  298. package/registry/examples/data-table/checks.js +25 -0
  299. package/registry/examples/data-table/checks.tsx +24 -0
  300. package/registry/examples/detail-layout/profile.d.ts +4 -0
  301. package/registry/examples/detail-layout/profile.js +26 -0
  302. package/registry/examples/detail-layout/profile.tsx +21 -0
  303. package/registry/examples/doodle/kinds.d.ts +4 -0
  304. package/registry/examples/doodle/kinds.js +17 -0
  305. package/registry/examples/doodle/kinds.tsx +14 -0
  306. package/registry/examples/doodle/margin.d.ts +4 -0
  307. package/registry/examples/doodle/margin.js +17 -0
  308. package/registry/examples/doodle/margin.tsx +17 -0
  309. package/registry/examples/markdown/native/basic.dark.png +0 -0
  310. package/registry/examples/markdown/native/basic.light.png +0 -0
  311. package/registry/examples/markdown/native/wide-table.d.ts +4 -0
  312. package/registry/examples/markdown/native/wide-table.dark.png +0 -0
  313. package/registry/examples/markdown/native/wide-table.js +23 -0
  314. package/registry/examples/markdown/native/wide-table.light.png +0 -0
  315. package/registry/examples/markdown/native/wide-table.tsx +22 -0
  316. package/registry/examples/markdown/wide-table.d.ts +4 -0
  317. package/registry/examples/markdown/wide-table.js +28 -0
  318. package/registry/examples/markdown/wide-table.tsx +23 -0
  319. package/registry/examples/nav-bar/family-product.js +2 -4
  320. package/registry/examples/nav-bar/family-product.tsx +3 -5
  321. package/registry/examples/notification-preferences/default.d.ts +4 -0
  322. package/registry/examples/notification-preferences/default.js +29 -0
  323. package/registry/examples/notification-preferences/default.tsx +28 -0
  324. package/registry/examples/profile-card/banner.d.ts +4 -0
  325. package/registry/examples/profile-card/banner.js +28 -0
  326. package/registry/examples/profile-card/banner.tsx +24 -0
  327. package/registry/examples/profile-card/native/banner.d.ts +4 -0
  328. package/registry/examples/profile-card/native/banner.dark.png +0 -0
  329. package/registry/examples/profile-card/native/banner.js +22 -0
  330. package/registry/examples/profile-card/native/banner.light.png +0 -0
  331. package/registry/examples/profile-card/native/banner.tsx +18 -0
  332. package/registry/examples/quota-meter/default.d.ts +4 -0
  333. package/registry/examples/quota-meter/default.js +26 -0
  334. package/registry/examples/quota-meter/default.tsx +20 -0
  335. package/registry/examples/quota-meter/full.d.ts +4 -0
  336. package/registry/examples/quota-meter/full.js +25 -0
  337. package/registry/examples/quota-meter/full.tsx +18 -0
  338. package/registry/examples/rail-nav/shortcuts.d.ts +4 -0
  339. package/registry/examples/rail-nav/shortcuts.js +49 -0
  340. package/registry/examples/rail-nav/shortcuts.tsx +40 -0
  341. package/registry/examples/retro-tv/cabinet.d.ts +4 -0
  342. package/registry/examples/retro-tv/cabinet.js +12 -0
  343. package/registry/examples/retro-tv/cabinet.tsx +7 -0
  344. package/registry/examples/retro-tv/portable.d.ts +4 -0
  345. package/registry/examples/retro-tv/portable.js +12 -0
  346. package/registry/examples/retro-tv/portable.tsx +7 -0
  347. package/registry/examples/signature/both.d.ts +4 -0
  348. package/registry/examples/signature/both.js +11 -0
  349. package/registry/examples/signature/both.tsx +6 -0
  350. package/registry/examples/signature/variants.d.ts +4 -0
  351. package/registry/examples/signature/variants.js +14 -0
  352. package/registry/examples/signature/variants.tsx +11 -0
  353. package/registry/examples/stuck/card.d.ts +4 -0
  354. package/registry/examples/stuck/card.js +13 -0
  355. package/registry/examples/stuck/card.tsx +14 -0
  356. package/registry/examples/stuck/holds.d.ts +4 -0
  357. package/registry/examples/stuck/holds.js +12 -0
  358. package/registry/examples/stuck/holds.tsx +16 -0
  359. package/registry/examples/stuck/tag.d.ts +4 -0
  360. package/registry/examples/stuck/tag.js +12 -0
  361. package/registry/examples/stuck/tag.tsx +13 -0
  362. package/registry/examples/tabs/binder.d.ts +4 -0
  363. package/registry/examples/tabs/binder.js +22 -0
  364. package/registry/examples/tabs/binder.tsx +20 -0
  365. package/registry/examples/tabs/native/binder.d.ts +4 -0
  366. package/registry/examples/tabs/native/binder.dark.png +0 -0
  367. package/registry/examples/tabs/native/binder.js +26 -0
  368. package/registry/examples/tabs/native/binder.light.png +0 -0
  369. package/registry/examples/tabs/native/binder.tsx +22 -0
  370. package/registry/fab.json +1 -0
  371. package/registry/field.json +3 -2
  372. package/registry/file-upload.json +6 -11
  373. package/registry/filter-bar.json +2 -2
  374. package/registry/flock.json +3 -4
  375. package/registry/footnote.json +2 -3
  376. package/registry/force-update-screen.json +14 -5
  377. package/registry/form.json +5 -4
  378. package/registry/gallery-page.json +14 -5
  379. package/registry/genui.json +2 -2
  380. package/registry/glossary-term.json +1 -1
  381. package/registry/glossary.json +1 -1
  382. package/registry/glow-card.json +2 -2
  383. package/registry/goal-gauge.json +2 -1
  384. package/registry/header.json +1 -0
  385. package/registry/how-it-works-page.json +3 -5
  386. package/registry/image-cropper.json +13 -5
  387. package/registry/image-viewer.json +3 -4
  388. package/registry/index.json +306 -91
  389. package/registry/iso.json +1 -1
  390. package/registry/kanban.json +13 -5
  391. package/registry/kbd.json +1 -1
  392. package/registry/kpi-explained.json +2 -2
  393. package/registry/landing-page.json +3 -5
  394. package/registry/landscape.json +13 -5
  395. package/registry/language-switch.json +1 -1
  396. package/registry/legal-page.json +1 -1
  397. package/registry/link-card.json +1 -1
  398. package/registry/list.json +2 -1
  399. package/registry/loader.json +2 -1
  400. package/registry/longform-page.json +1 -1
  401. package/registry/maintenance-screen.json +14 -5
  402. package/registry/map.json +3 -2
  403. package/registry/markdown.json +86 -9
  404. package/registry/marketing-layout.json +1 -1
  405. package/registry/marquee.json +1 -1
  406. package/registry/mascot-quote.json +1 -1
  407. package/registry/mascot-state.json +12 -11
  408. package/registry/mascots.json +2 -1
  409. package/registry/match-dialog.json +14 -5
  410. package/registry/media-capture.json +14 -5
  411. package/registry/media-gallery.json +3 -5
  412. package/registry/media-grid.json +1 -1
  413. package/registry/media-picker.json +2 -3
  414. package/registry/meta-row.json +2 -1
  415. package/registry/meter.json +4 -3
  416. package/registry/nav-bar.json +100 -9
  417. package/registry/next-actions.json +1 -1
  418. package/registry/notification-preferences.json +250 -0
  419. package/registry/number-ticker.json +2 -1
  420. package/registry/onboarding.json +1 -0
  421. package/registry/opening-hours.json +1 -1
  422. package/registry/otp-input.json +1 -0
  423. package/registry/page-header.json +2 -2
  424. package/registry/page-hero.json +1 -1
  425. package/registry/page-index.json +1 -1
  426. package/registry/page.json +3 -3
  427. package/registry/pagination.json +2 -1
  428. package/registry/permission-prompt.json +2 -2
  429. package/registry/photo-grid.json +4 -4
  430. package/registry/pointer-light.json +6 -2
  431. package/registry/popover.json +2 -2
  432. package/registry/pricing-page.json +4 -6
  433. package/registry/product-page.json +14 -5
  434. package/registry/profile-card.json +232 -8
  435. package/registry/progress.json +4 -3
  436. package/registry/promise-card.json +13 -5
  437. package/registry/pull-to-refresh.json +1 -0
  438. package/registry/quota-meter.json +308 -0
  439. package/registry/radio-group.json +4 -3
  440. package/registry/rail-nav.json +48 -10
  441. package/registry/recipes.json +1 -1
  442. package/registry/retro-tv.json +478 -0
  443. package/registry/router.json +3 -3
  444. package/registry/screen.json +1 -0
  445. package/registry/scroll-stage.json +14 -5
  446. package/registry/search-field.json +3 -2
  447. package/registry/section-backdrop.json +1 -1
  448. package/registry/segmented.json +1 -0
  449. package/registry/separator.json +2 -2
  450. package/registry/service-card.json +1 -1
  451. package/registry/settings-layout.json +2 -1
  452. package/registry/showcase.json +14 -5
  453. package/registry/signature.json +185 -0
  454. package/registry/site-footer.json +3 -3
  455. package/registry/sites.json +2 -2
  456. package/registry/skeleton.json +2 -1
  457. package/registry/skip-link.json +1 -1
  458. package/registry/slider.json +5 -4
  459. package/registry/slot-picker.json +1 -1
  460. package/registry/slot.json +2 -2
  461. package/registry/specimen-tag.json +1 -1
  462. package/registry/spinner.json +4 -3
  463. package/registry/splash-handoff.json +1 -0
  464. package/registry/split-view.json +1 -1
  465. package/registry/stage-banner.json +2 -3
  466. package/registry/stat.json +2 -2
  467. package/registry/status-page.json +13 -5
  468. package/registry/step-progress.json +2 -1
  469. package/registry/step-showcase.json +3 -5
  470. package/registry/stepper.json +2 -1
  471. package/registry/sticky-action.json +1 -1
  472. package/registry/stuck.json +219 -0
  473. package/registry/swipe-deck.json +14 -5
  474. package/registry/swipeable-row.json +1 -0
  475. package/registry/switch.json +3 -2
  476. package/registry/tab-bar.json +1 -0
  477. package/registry/tabs.json +154 -22
  478. package/registry/tag-input.json +1 -1
  479. package/registry/tag-selector.json +2 -1
  480. package/registry/taped-photo.json +1 -1
  481. package/registry/terminal-replay.json +14 -5
  482. package/registry/text-style.json +5 -5
  483. package/registry/theme.json +2 -1
  484. package/registry/toast.json +2 -1
  485. package/registry/toc.json +1 -1
  486. package/registry/tooltip.json +2 -2
  487. package/registry/tree-view.json +6 -2
  488. package/registry/txt.json +1 -0
  489. package/registry/update-prompt.json +14 -5
  490. package/registry/upload-queue.json +1 -1
  491. package/registry/verified-badge.json +6 -6
  492. package/registry/vertical-video.json +8 -3
  493. package/registry/video-player.json +5 -6
  494. package/registry/video-trimmer.json +13 -5
  495. package/registry/virtual.json +2 -2
  496. package/registry/waveform.json +4 -3
  497. package/dist/chunk-4LYKBSOG.js.map +0 -1
  498. package/dist/chunk-HHFWK2HH.js +0 -163
  499. package/dist/chunk-HHFWK2HH.js.map +0 -1
  500. package/dist/chunk-R3LTSMS5.js +0 -75
  501. package/dist/chunk-R3LTSMS5.js.map +0 -1
  502. package/dist/chunk-YGIN2YIY.js.map +0 -1
  503. package/dist/chunk-YHKTYFOQ.js.map +0 -1
  504. /package/dist/{chunk-ZQW7LF4Y.js.map → chunk-OIMXKRXF.js.map} +0 -0
@@ -0,0 +1,26 @@
1
+ "use client";
2
+
3
+ // registry/examples/detail-layout/profile.tsx
4
+ import { Avatar } from "@krizaka/ui/avatar";
5
+ import { Button } from "@krizaka/ui/button";
6
+ import { DetailLayout } from "@krizaka/ui/detail-layout";
7
+ import { jsx } from "react/jsx-runtime";
8
+ function DetailLayoutProfile() {
9
+ return /* @__PURE__ */ jsx(
10
+ DetailLayout,
11
+ {
12
+ className: "w-full",
13
+ back: /* @__PURE__ */ jsx("a", { href: "#clients", children: "\u2190 Clients" }),
14
+ cover: true,
15
+ media: /* @__PURE__ */ jsx(Avatar, { defaultAvatar: { brand: "yomizaka", seed: "eric" }, alt: "", fallback: "E", size: "xl" }),
16
+ eyebrow: "Applicant",
17
+ title: "Eric Tremblay",
18
+ meta: "Unit 4B \xB7 file complete",
19
+ actions: /* @__PURE__ */ jsx(Button, { size: "sm", variant: "primary", children: "Open the file" }),
20
+ children: /* @__PURE__ */ jsx("p", { className: "text-sm text-fg-secondary", children: "The applicant's documents and checks appear here." })
21
+ }
22
+ );
23
+ }
24
+ export {
25
+ DetailLayoutProfile as default
26
+ };
@@ -0,0 +1,21 @@
1
+ import { Avatar } from "@krizaka/ui/avatar";
2
+ import { Button } from "@krizaka/ui/button";
3
+ import { DetailLayout } from "@krizaka/ui/detail-layout";
4
+
5
+ // A person's page: `cover` turns the header into a ProfileBanner — the cover, the avatar over its edge, the name, the actions.
6
+ export default function DetailLayoutProfile() {
7
+ return (
8
+ <DetailLayout
9
+ className="w-full"
10
+ back={<a href="#clients">← Clients</a>}
11
+ cover
12
+ media={<Avatar defaultAvatar={{ brand: "yomizaka", seed: "eric" }} alt="" fallback="E" size="xl" />}
13
+ eyebrow="Applicant"
14
+ title="Eric Tremblay"
15
+ meta="Unit 4B · file complete"
16
+ actions={<Button size="sm" variant="primary">Open the file</Button>}
17
+ >
18
+ <p className="text-sm text-fg-secondary">The applicant's documents and checks appear here.</p>
19
+ </DetailLayout>
20
+ );
21
+ }
@@ -0,0 +1,4 @@
1
+ import type { ComponentType } from "react";
2
+ /** A named example of the @krizaka/ui registry; `defaultOpen` opens what it opens (a dialog, a menu, toasts) at load. */
3
+ declare const Example: ComponentType<{ defaultOpen?: boolean }>;
4
+ export default Example;
@@ -0,0 +1,17 @@
1
+ "use client";
2
+
3
+ // registry/examples/doodle/kinds.tsx
4
+ import { Doodle } from "@krizaka/ui/doodle";
5
+ import { jsx, jsxs } from "react/jsx-runtime";
6
+ function DoodleKinds() {
7
+ return /* @__PURE__ */ jsxs("div", { className: "flex flex-wrap items-center gap-8 p-4", children: [
8
+ /* @__PURE__ */ jsx(Doodle, { kind: "arrow", place: "inline" }),
9
+ /* @__PURE__ */ jsx(Doodle, { kind: "circle", word: "\xE7a !", place: "inline" }),
10
+ /* @__PURE__ */ jsx(Doodle, { kind: "star", place: "inline" }),
11
+ /* @__PURE__ */ jsx(Doodle, { kind: "wave", place: "inline" }),
12
+ /* @__PURE__ */ jsx(Doodle, { kind: "bird", place: "inline" })
13
+ ] });
14
+ }
15
+ export {
16
+ DoodleKinds as default
17
+ };
@@ -0,0 +1,14 @@
1
+ import { Doodle } from "@krizaka/ui/doodle";
2
+
3
+ // The five doodles, kept in the flow (`place="inline"`) so each can be seen at any width.
4
+ export default function DoodleKinds() {
5
+ return (
6
+ <div className="flex flex-wrap items-center gap-8 p-4">
7
+ <Doodle kind="arrow" place="inline" />
8
+ <Doodle kind="circle" word="ça !" place="inline" />
9
+ <Doodle kind="star" place="inline" />
10
+ <Doodle kind="wave" place="inline" />
11
+ <Doodle kind="bird" place="inline" />
12
+ </div>
13
+ );
14
+ }
@@ -0,0 +1,4 @@
1
+ import type { ComponentType } from "react";
2
+ /** A named example of the @krizaka/ui registry; `defaultOpen` opens what it opens (a dialog, a menu, toasts) at load. */
3
+ declare const Example: ComponentType<{ defaultOpen?: boolean }>;
4
+ export default Example;
@@ -0,0 +1,17 @@
1
+ "use client";
2
+
3
+ // registry/examples/doodle/margin.tsx
4
+ import { Card } from "@krizaka/ui/card";
5
+ import { Doodle } from "@krizaka/ui/doodle";
6
+ import { Page } from "@krizaka/ui/page";
7
+ import { Stuck } from "@krizaka/ui/stuck";
8
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
9
+ function DoodleMargin() {
10
+ return /* @__PURE__ */ jsx(Page, { size: "full", children: /* @__PURE__ */ jsx(Stuck, { className: "w-full", hold: "tape-corners", seed: "margin", doodle: /* @__PURE__ */ jsxs(Fragment, { children: [
11
+ /* @__PURE__ */ jsx(Doodle, { kind: "arrow", top: "16px" }),
12
+ /* @__PURE__ */ jsx(Doodle, { kind: "star", side: "right", top: "40px" })
13
+ ] }), children: /* @__PURE__ */ jsx(Card.Root, { className: "p-5", children: /* @__PURE__ */ jsx("p", { className: "m-0", children: "Nothing here depends on the doodles: they are only a margin note drawn by hand." }) }) }) });
14
+ }
15
+ export {
16
+ DoodleMargin as default
17
+ };
@@ -0,0 +1,17 @@
1
+ import { Card } from "@krizaka/ui/card";
2
+ import { Doodle } from "@krizaka/ui/doodle";
3
+ import { Page } from "@krizaka/ui/page";
4
+ import { Stuck } from "@krizaka/ui/stuck";
5
+
6
+ // In the page margin, beside the block, from 1360 px; below that the doodles are not displayed.
7
+ export default function DoodleMargin() {
8
+ return (
9
+ <Page size="full">
10
+ <Stuck className="w-full" hold="tape-corners" seed="margin" doodle={<><Doodle kind="arrow" top="16px" /><Doodle kind="star" side="right" top="40px" /></>}>
11
+ <Card.Root className="p-5">
12
+ <p className="m-0">Nothing here depends on the doodles: they are only a margin note drawn by hand.</p>
13
+ </Card.Root>
14
+ </Stuck>
15
+ </Page>
16
+ );
17
+ }
@@ -0,0 +1,4 @@
1
+ import type { ComponentType } from "react";
2
+ /** A named example of the @krizaka/ui registry; `defaultOpen` opens what it opens (a dialog, a menu, toasts) at load. */
3
+ declare const Example: ComponentType<{ defaultOpen?: boolean }>;
4
+ export default Example;
@@ -0,0 +1,23 @@
1
+ "use client";
2
+
3
+ // registry/examples/markdown/native/wide-table.tsx
4
+ import { Markdown } from "@krizaka/ui/native/markdown";
5
+ import { View } from "react-native";
6
+ import { jsx } from "react/jsx-runtime";
7
+ var text = `## Generated reference
8
+
9
+ Swipe sideways to read the reference. Identifiers keep their full width.
10
+
11
+ | Identifier | Profile | Account | Upload | Review | Delivery | Presence | Discovery | Queue |
12
+ | --- | --- | --- | --- | --- | --- | --- | --- | --- |
13
+ | \`profile-photo-check\` | \`profile-photo-check\` | \`account-access-review\` | \`upload-retry-policy\` | \`review-pending-items\` | \`delivery-status-check\` | \`presence-channel-join\` | \`discovery-manifest-signature\` | \`queue-priority-update\` |
14
+ | \`account-access-review\` | \`profile-photo-refresh\` | \`account-session-refresh\` | \`upload-content-validation\` | \`review-assignment-update\` | \`delivery-receipt-confirm\` | \`presence-heartbeat-renewal\` | \`discovery-address-allowlist\` | \`queue-backoff-duration\` |
15
+
16
+ A long word: documentationidentifierswithoutanynaturalbreakopportunitiesstillfitonthephone.
17
+ `;
18
+ function NativeMarkdownWideTable() {
19
+ return /* @__PURE__ */ jsx(View, { style: { width: "100%", maxWidth: 640 }, children: /* @__PURE__ */ jsx(Markdown, { generated: true, generatedLabel: "Generated", children: text }) });
20
+ }
21
+ export {
22
+ NativeMarkdownWideTable as default
23
+ };
@@ -0,0 +1,22 @@
1
+ import { Markdown } from "@krizaka/ui/native/markdown";
2
+ import { View } from "react-native";
3
+
4
+ const text = `## Generated reference
5
+
6
+ Swipe sideways to read the reference. Identifiers keep their full width.
7
+
8
+ | Identifier | Profile | Account | Upload | Review | Delivery | Presence | Discovery | Queue |
9
+ | --- | --- | --- | --- | --- | --- | --- | --- | --- |
10
+ | \`profile-photo-check\` | \`profile-photo-check\` | \`account-access-review\` | \`upload-retry-policy\` | \`review-pending-items\` | \`delivery-status-check\` | \`presence-channel-join\` | \`discovery-manifest-signature\` | \`queue-priority-update\` |
11
+ | \`account-access-review\` | \`profile-photo-refresh\` | \`account-session-refresh\` | \`upload-content-validation\` | \`review-assignment-update\` | \`delivery-receipt-confirm\` | \`presence-heartbeat-renewal\` | \`discovery-address-allowlist\` | \`queue-backoff-duration\` |
12
+
13
+ A long word: documentationidentifierswithoutanynaturalbreakopportunitiesstillfitonthephone.
14
+ `;
15
+
16
+ export default function NativeMarkdownWideTable() {
17
+ return (
18
+ <View style={{ width: "100%", maxWidth: 640 }}>
19
+ <Markdown generated generatedLabel="Generated">{text}</Markdown>
20
+ </View>
21
+ );
22
+ }
@@ -0,0 +1,4 @@
1
+ import type { ComponentType } from "react";
2
+ /** A named example of the @krizaka/ui registry; `defaultOpen` opens what it opens (a dialog, a menu, toasts) at load. */
3
+ declare const Example: ComponentType<{ defaultOpen?: boolean }>;
4
+ export default Example;
@@ -0,0 +1,28 @@
1
+ "use client";
2
+
3
+ // registry/examples/markdown/wide-table.tsx
4
+ import { Markdown } from "@krizaka/ui/markdown";
5
+ import { jsx } from "react/jsx-runtime";
6
+ var text = `## Generated reference
7
+
8
+ Identifiers stay whole; move through the table with the arrow keys after focusing its frame.
9
+
10
+ | Identifier | Profile | Account | Upload | Review | Delivery | Presence | Discovery | Queue |
11
+ | --- | --- | --- | --- | --- | --- | --- | --- | --- |
12
+ | \`profile-photo-check\` | \`profile-photo-check\` | \`account-access-review\` | \`upload-retry-policy\` | \`review-pending-items\` | \`delivery-status-check\` | \`presence-channel-join\` | \`discovery-manifest-signature\` | \`queue-priority-update\` |
13
+ | \`account-access-review\` | \`profile-photo-check\`, \`profile-photo-refresh\` | \`account-session-refresh\` | \`upload-content-validation\` | \`review-assignment-update\` | \`delivery-receipt-confirm\` | \`presence-heartbeat-renewal\` | \`discovery-address-allowlist\` | \`queue-backoff-duration-for-background-upload-retry-policy\` |
14
+
15
+ A long word: documentationidentifierswithoutanynaturalbreakopportunitiesstillfitonthephone.
16
+
17
+ - A long URL: [https://example.com/documentation/reference/identifierswithoutanynaturalbreakopportunities](https://example.com/documentation/reference/identifierswithoutanynaturalbreakopportunities)
18
+
19
+ \`\`\`text
20
+ profile-photo-check account-access-review upload-retry-policy discovery-manifest-signature
21
+ \`\`\`
22
+ `;
23
+ function MarkdownWideTable() {
24
+ return /* @__PURE__ */ jsx(Markdown, { generated: true, generatedLabel: "Generated", className: "max-w-full", children: text });
25
+ }
26
+ export {
27
+ MarkdownWideTable as default
28
+ };
@@ -0,0 +1,23 @@
1
+ import { Markdown } from "@krizaka/ui/markdown";
2
+
3
+ const text = `## Generated reference
4
+
5
+ Identifiers stay whole; move through the table with the arrow keys after focusing its frame.
6
+
7
+ | Identifier | Profile | Account | Upload | Review | Delivery | Presence | Discovery | Queue |
8
+ | --- | --- | --- | --- | --- | --- | --- | --- | --- |
9
+ | \`profile-photo-check\` | \`profile-photo-check\` | \`account-access-review\` | \`upload-retry-policy\` | \`review-pending-items\` | \`delivery-status-check\` | \`presence-channel-join\` | \`discovery-manifest-signature\` | \`queue-priority-update\` |
10
+ | \`account-access-review\` | \`profile-photo-check\`, \`profile-photo-refresh\` | \`account-session-refresh\` | \`upload-content-validation\` | \`review-assignment-update\` | \`delivery-receipt-confirm\` | \`presence-heartbeat-renewal\` | \`discovery-address-allowlist\` | \`queue-backoff-duration-for-background-upload-retry-policy\` |
11
+
12
+ A long word: documentationidentifierswithoutanynaturalbreakopportunitiesstillfitonthephone.
13
+
14
+ - A long URL: [https://example.com/documentation/reference/identifierswithoutanynaturalbreakopportunities](https://example.com/documentation/reference/identifierswithoutanynaturalbreakopportunities)
15
+
16
+ \`\`\`text
17
+ profile-photo-check account-access-review upload-retry-policy discovery-manifest-signature
18
+ \`\`\`
19
+ `;
20
+
21
+ export default function MarkdownWideTable() {
22
+ return <Markdown generated generatedLabel="Generated" className="max-w-full">{text}</Markdown>;
23
+ }
@@ -2,9 +2,8 @@
2
2
 
3
3
  // registry/examples/nav-bar/family-product.tsx
4
4
  import { OrazakaLogo } from "@krizaka/ui";
5
- import { Button } from "@krizaka/ui/button";
6
5
  import { languagesFor } from "@krizaka/ui/language-switch";
7
- import { NavBar } from "@krizaka/ui/nav-bar";
6
+ import { NavBar, ProductBarActions } from "@krizaka/ui/nav-bar";
8
7
  import { ThemeProvider, ThemeToggle } from "@krizaka/ui/theme";
9
8
  import { jsx, jsxs } from "react/jsx-runtime";
10
9
  var groups = [
@@ -28,8 +27,7 @@ function NavBarFamilyProduct() {
28
27
  theme,
29
28
  language
30
29
  ] }),
31
- /* @__PURE__ */ jsx(Button, { asChild: true, variant: "ghost", size: "sm", className: "hidden md:inline-flex", children: /* @__PURE__ */ jsx("a", { href: "#sign-in", children: "Sign in" }) }),
32
- /* @__PURE__ */ jsx(Button, { asChild: true, variant: "primary", size: "sm", className: "hidden md:inline-flex", children: /* @__PURE__ */ jsx("a", { href: "#talk", children: "Talk to us" }) }),
30
+ /* @__PURE__ */ jsx(ProductBarActions, { signIn: { href: "#sign-in", label: "Sign in" }, signupOpen: false }),
33
31
  /* @__PURE__ */ jsxs(NavBar.Mobile, { openLabel: "Open the menu", closeLabel: "Close the menu", children: [
34
32
  groups.map((g) => /* @__PURE__ */ jsx(NavBar.MobileGroup, { label: g.label, children: g.links.map(([href, title]) => /* @__PURE__ */ jsx(NavBar.MobileLink, { href, children: title }, href)) }, g.id)),
35
33
  /* @__PURE__ */ jsx(NavBar.MobileLink, { href: "#docs", children: "Docs" }),
@@ -1,10 +1,9 @@
1
1
  import { OrazakaLogo } from "@krizaka/ui";
2
- import { Button } from "@krizaka/ui/button";
3
2
  import { languagesFor } from "@krizaka/ui/language-switch";
4
- import { NavBar } from "@krizaka/ui/nav-bar";
3
+ import { NavBar, ProductBarActions } from "@krizaka/ui/nav-bar";
5
4
  import { ThemeProvider, ThemeToggle } from "@krizaka/ui/theme";
6
5
 
7
- // The product standard: mark · Product ▾ · Platforms ▾ · Docs; theme, language, Sign in, one action; phone: groups, preferences.
6
+ // The product standard: mark · Product ▾ · Platforms ▾ · Docs; theme, language, the product actions (using the app is primary; Contact lives in the footer); phone: groups, preferences.
8
7
  const groups = [
9
8
  { id: "product", label: "Product", links: [["#how", "How it works", "Install to first answer in three commands."], ["#demo", "Demo", "Real runs: prompts, images, videos."]] },
10
9
  { id: "platforms", label: "Platforms", links: [["#web", "Web", "The workspace in your browser."], ["#mac", "Mac", "Orazaka Desktop for Apple Silicon."]] },
@@ -25,8 +24,7 @@ export default function NavBarFamilyProduct() {
25
24
  <NavBar.Link href="#docs">Docs</NavBar.Link></NavBar.Items>
26
25
  <NavBar.Actions>
27
26
  <span className="hidden items-center gap-1 md:inline-flex">{theme}{language}</span>
28
- <Button asChild variant="ghost" size="sm" className="hidden md:inline-flex"><a href="#sign-in">Sign in</a></Button>
29
- <Button asChild variant="primary" size="sm" className="hidden md:inline-flex"><a href="#talk">Talk to us</a></Button>
27
+ <ProductBarActions signIn={{ href: "#sign-in", label: "Sign in" }} signupOpen={false} />
30
28
  <NavBar.Mobile openLabel="Open the menu" closeLabel="Close the menu">
31
29
  {groups.map((g) => (
32
30
  <NavBar.MobileGroup key={g.id} label={g.label}>{g.links.map(([href, title]) => <NavBar.MobileLink key={href} href={href}>{title}</NavBar.MobileLink>)}</NavBar.MobileGroup>
@@ -0,0 +1,4 @@
1
+ import type { ComponentType } from "react";
2
+ /** A named example of the @krizaka/ui registry; `defaultOpen` opens what it opens (a dialog, a menu, toasts) at load. */
3
+ declare const Example: ComponentType<{ defaultOpen?: boolean }>;
4
+ export default Example;
@@ -0,0 +1,29 @@
1
+ "use client";
2
+
3
+ // registry/examples/notification-preferences/default.tsx
4
+ import { NotificationPreferences } from "@krizaka/ui/notification-preferences";
5
+ import * as React from "react";
6
+ import { jsx } from "react/jsx-runtime";
7
+ var channels = [
8
+ { id: "app", label: "In the app" },
9
+ { id: "email", label: "By e-mail" }
10
+ ];
11
+ var categories = [
12
+ { id: "social", label: "Followers and replies", description: "Someone follows you or answers." },
13
+ { id: "messages", label: "Messages", description: "A new message in a conversation." },
14
+ { id: "earnings", label: "Earnings", description: "A sale, a tip, a payout." },
15
+ { id: "security", label: "Security", locked: true, lockedNote: "Always on: sign-ins and password changes." }
16
+ ];
17
+ var all = (on) => Object.fromEntries(categories.map((c) => [c.id, { app: on, email: on }]));
18
+ var presets = [
19
+ { id: "everything", label: "Everything", hint: "Every category, in the app and by e-mail.", value: all(true) },
20
+ { id: "essentials", label: "Essentials", hint: "In the app only, nothing by e-mail.", value: Object.fromEntries(categories.map((c) => [c.id, { app: true, email: false }])) },
21
+ { id: "quiet", label: "Quiet", hint: "Nothing but security.", value: all(false) }
22
+ ];
23
+ function NotificationPreferencesDefault() {
24
+ const [value, setValue] = React.useState(presets[1].value);
25
+ return /* @__PURE__ */ jsx(NotificationPreferences, { label: "Notification settings", presetsLabel: "Presets", customHint: "A mix of your own.", channels, categories, presets, value, onValueChange: setValue, className: "max-w-2xl" });
26
+ }
27
+ export {
28
+ NotificationPreferencesDefault as default
29
+ };
@@ -0,0 +1,28 @@
1
+ "use client";
2
+ import { type NotificationMatrix,NotificationPreferences } from "@krizaka/ui/notification-preferences";
3
+ import * as React from "react";
4
+
5
+ const channels = [
6
+ { id: "app", label: "In the app" },
7
+ { id: "email", label: "By e-mail" },
8
+ ] as const;
9
+ const categories = [
10
+ { id: "social", label: "Followers and replies", description: "Someone follows you or answers." },
11
+ { id: "messages", label: "Messages", description: "A new message in a conversation." },
12
+ { id: "earnings", label: "Earnings", description: "A sale, a tip, a payout." },
13
+ { id: "security", label: "Security", locked: true, lockedNote: "Always on: sign-ins and password changes." },
14
+ ] as const;
15
+ const all = (on: boolean): NotificationMatrix => Object.fromEntries(categories.map((c) => [c.id, { app: on, email: on }]));
16
+ const presets = [
17
+ { id: "everything", label: "Everything", hint: "Every category, in the app and by e-mail.", value: all(true) },
18
+ { id: "essentials", label: "Essentials", hint: "In the app only, nothing by e-mail.", value: Object.fromEntries(categories.map((c) => [c.id, { app: true, email: false }])) },
19
+ { id: "quiet", label: "Quiet", hint: "Nothing but security.", value: all(false) },
20
+ ];
21
+
22
+ // TEMPLATE — the notifications part of an account page: presets first, then the matrix.
23
+ export default function NotificationPreferencesDefault() {
24
+ const [value, setValue] = React.useState<NotificationMatrix>(presets[1]!.value);
25
+ return (
26
+ <NotificationPreferences label="Notification settings" presetsLabel="Presets" customHint="A mix of your own." channels={channels} categories={categories} presets={presets} value={value} onValueChange={setValue} className="max-w-2xl" />
27
+ );
28
+ }
@@ -0,0 +1,4 @@
1
+ import type { ComponentType } from "react";
2
+ /** A named example of the @krizaka/ui registry; `defaultOpen` opens what it opens (a dialog, a menu, toasts) at load. */
3
+ declare const Example: ComponentType<{ defaultOpen?: boolean }>;
4
+ export default Example;
@@ -0,0 +1,28 @@
1
+ "use client";
2
+
3
+ // registry/examples/profile-card/banner.tsx
4
+ import { Avatar } from "@krizaka/ui/avatar";
5
+ import { Badge } from "@krizaka/ui/badge";
6
+ import { Button } from "@krizaka/ui/button";
7
+ import { ProfileBanner } from "@krizaka/ui/profile-card";
8
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
9
+ function ProfileCardBanner() {
10
+ return /* @__PURE__ */ jsx(
11
+ ProfileBanner,
12
+ {
13
+ brand: "akinaza",
14
+ avatar: /* @__PURE__ */ jsx(Avatar, { defaultAvatar: { brand: "akinaza", seed: "eric" }, alt: "", fallback: "E", size: "xl" }),
15
+ eyebrow: "Client",
16
+ title: "Eric Tremblay",
17
+ status: /* @__PURE__ */ jsx(Badge, { tone: "success", size: "sm", children: "Regular" }),
18
+ meta: "Client since 2024 \xB7 14 visits",
19
+ actions: /* @__PURE__ */ jsxs(Fragment, { children: [
20
+ /* @__PURE__ */ jsx(Button, { size: "sm", variant: "primary", children: "Book" }),
21
+ /* @__PURE__ */ jsx(Button, { size: "sm", children: "Message" })
22
+ ] })
23
+ }
24
+ );
25
+ }
26
+ export {
27
+ ProfileCardBanner as default
28
+ };
@@ -0,0 +1,24 @@
1
+ import { Avatar } from "@krizaka/ui/avatar";
2
+ import { Badge } from "@krizaka/ui/badge";
3
+ import { Button } from "@krizaka/ui/button";
4
+ import { ProfileBanner } from "@krizaka/ui/profile-card";
5
+
6
+ // A client's page: the brand's tinted cover, the family's default avatar overlapping it, the name (h1), its facts, the actions.
7
+ export default function ProfileCardBanner() {
8
+ return (
9
+ <ProfileBanner
10
+ brand="akinaza"
11
+ avatar={<Avatar defaultAvatar={{ brand: "akinaza", seed: "eric" }} alt="" fallback="E" size="xl" />}
12
+ eyebrow="Client"
13
+ title="Eric Tremblay"
14
+ status={<Badge tone="success" size="sm">Regular</Badge>}
15
+ meta="Client since 2024 · 14 visits"
16
+ actions={
17
+ <>
18
+ <Button size="sm" variant="primary">Book</Button>
19
+ <Button size="sm">Message</Button>
20
+ </>
21
+ }
22
+ />
23
+ );
24
+ }
@@ -0,0 +1,4 @@
1
+ import type { ComponentType } from "react";
2
+ /** A named example of the @krizaka/ui registry; `defaultOpen` opens what it opens (a dialog, a menu, toasts) at load. */
3
+ declare const Example: ComponentType<{ defaultOpen?: boolean }>;
4
+ export default Example;
@@ -0,0 +1,22 @@
1
+ "use client";
2
+
3
+ // registry/examples/profile-card/native/banner.tsx
4
+ import { Avatar, Badge, Button, ProfileBanner } from "@krizaka/ui/native";
5
+ import { View } from "react-native";
6
+ import { jsx } from "react/jsx-runtime";
7
+ function NativeProfileCardBanner() {
8
+ return /* @__PURE__ */ jsx(View, { style: { width: 340 }, children: /* @__PURE__ */ jsx(
9
+ ProfileBanner,
10
+ {
11
+ avatar: /* @__PURE__ */ jsx(Avatar, { defaultAvatar: { brand: "akinaza", seed: "eric" }, fallback: "E", size: "xl" }),
12
+ eyebrow: "Client",
13
+ title: "Eric Tremblay",
14
+ status: /* @__PURE__ */ jsx(Badge, { tone: "success", children: "Regular" }),
15
+ meta: "Client since 2024 \xB7 14 visits",
16
+ actions: /* @__PURE__ */ jsx(Button, { variant: "primary", size: "sm", label: "Book" })
17
+ }
18
+ ) });
19
+ }
20
+ export {
21
+ NativeProfileCardBanner as default
22
+ };
@@ -0,0 +1,18 @@
1
+ import { Avatar, Badge, Button, ProfileBanner } from "@krizaka/ui/native";
2
+ import { View } from "react-native";
3
+
4
+ // A client's screen on a phone: the brand's cover, the avatar over its edge, the name, its facts, the actions.
5
+ export default function NativeProfileCardBanner() {
6
+ return (
7
+ <View style={{ width: 340 }}>
8
+ <ProfileBanner
9
+ avatar={<Avatar defaultAvatar={{ brand: "akinaza", seed: "eric" }} fallback="E" size="xl" />}
10
+ eyebrow="Client"
11
+ title="Eric Tremblay"
12
+ status={<Badge tone="success">Regular</Badge>}
13
+ meta="Client since 2024 · 14 visits"
14
+ actions={<Button variant="primary" size="sm" label="Book" />}
15
+ />
16
+ </View>
17
+ );
18
+ }
@@ -0,0 +1,4 @@
1
+ import type { ComponentType } from "react";
2
+ /** A named example of the @krizaka/ui registry; `defaultOpen` opens what it opens (a dialog, a menu, toasts) at load. */
3
+ declare const Example: ComponentType<{ defaultOpen?: boolean }>;
4
+ export default Example;
@@ -0,0 +1,26 @@
1
+ "use client";
2
+
3
+ // registry/examples/quota-meter/default.tsx
4
+ import { QuotaMeter } from "@krizaka/ui/quota-meter";
5
+ import { jsx } from "react/jsx-runtime";
6
+ function QuotaMeterDefault() {
7
+ return /* @__PURE__ */ jsx(
8
+ QuotaMeter,
9
+ {
10
+ className: "max-w-md",
11
+ title: "Storage",
12
+ plan: "Creator plan",
13
+ value: 8.6,
14
+ max: 10,
15
+ usedText: "8.6 GB of 10 GB",
16
+ meterLabel: "Storage used",
17
+ level: "warning",
18
+ statusText: "You are at 86 %. Remove a video or change plan before you reach the limit.",
19
+ details: ["412 of 600 minutes", "2 of 10 uploads today"],
20
+ action: /* @__PURE__ */ jsx("a", { href: "#manage", className: "font-semibold text-fg-accent hover:underline", children: "Manage your videos" })
21
+ }
22
+ );
23
+ }
24
+ export {
25
+ QuotaMeterDefault as default
26
+ };
@@ -0,0 +1,20 @@
1
+ import { QuotaMeter } from "@krizaka/ui/quota-meter";
2
+
3
+ // TEMPLATE — the plan's room: storage used, what to do about it, the small figures.
4
+ export default function QuotaMeterDefault() {
5
+ return (
6
+ <QuotaMeter
7
+ className="max-w-md"
8
+ title="Storage"
9
+ plan="Creator plan"
10
+ value={8.6}
11
+ max={10}
12
+ usedText="8.6 GB of 10 GB"
13
+ meterLabel="Storage used"
14
+ level="warning"
15
+ statusText="You are at 86 %. Remove a video or change plan before you reach the limit."
16
+ details={["412 of 600 minutes", "2 of 10 uploads today"]}
17
+ action={<a href="#manage" className="font-semibold text-fg-accent hover:underline">Manage your videos</a>}
18
+ />
19
+ );
20
+ }
@@ -0,0 +1,4 @@
1
+ import type { ComponentType } from "react";
2
+ /** A named example of the @krizaka/ui registry; `defaultOpen` opens what it opens (a dialog, a menu, toasts) at load. */
3
+ declare const Example: ComponentType<{ defaultOpen?: boolean }>;
4
+ export default Example;
@@ -0,0 +1,25 @@
1
+ "use client";
2
+
3
+ // registry/examples/quota-meter/full.tsx
4
+ import { QuotaMeter } from "@krizaka/ui/quota-meter";
5
+ import { jsx } from "react/jsx-runtime";
6
+ function QuotaMeterFull() {
7
+ return /* @__PURE__ */ jsx(
8
+ QuotaMeter,
9
+ {
10
+ className: "max-w-md",
11
+ title: "Storage",
12
+ plan: "Free plan",
13
+ value: 2,
14
+ max: 2,
15
+ usedText: "2 GB of 2 GB",
16
+ meterLabel: "Storage used",
17
+ level: "full",
18
+ statusText: "Your storage is full: new uploads wait.",
19
+ notices: ["2 uploads are on hold.", "Uploads are paused for everyone while we catch up."]
20
+ }
21
+ );
22
+ }
23
+ export {
24
+ QuotaMeterFull as default
25
+ };
@@ -0,0 +1,18 @@
1
+ import { QuotaMeter } from "@krizaka/ui/quota-meter";
2
+
3
+ export default function QuotaMeterFull() {
4
+ return (
5
+ <QuotaMeter
6
+ className="max-w-md"
7
+ title="Storage"
8
+ plan="Free plan"
9
+ value={2}
10
+ max={2}
11
+ usedText="2 GB of 2 GB"
12
+ meterLabel="Storage used"
13
+ level="full"
14
+ statusText="Your storage is full: new uploads wait."
15
+ notices={["2 uploads are on hold.", "Uploads are paused for everyone while we catch up."]}
16
+ />
17
+ );
18
+ }
@@ -0,0 +1,4 @@
1
+ import type { ComponentType } from "react";
2
+ /** A named example of the @krizaka/ui registry; `defaultOpen` opens what it opens (a dialog, a menu, toasts) at load. */
3
+ declare const Example: ComponentType<{ defaultOpen?: boolean }>;
4
+ export default Example;