@krizaka/ui 2.0.0-beta.5 → 2.0.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 (688) hide show
  1. package/README.md +44 -28
  2. package/dist/{button-D5aSsmxX.d.ts → button-Cgfkg_3y.d.ts} +5 -1
  3. package/dist/button.d.ts +5 -1
  4. package/dist/button.js +4 -2
  5. package/dist/button.js.map +1 -1
  6. package/dist/card.d.ts +7 -1
  7. package/dist/card.js +2 -2
  8. package/dist/card.js.map +1 -1
  9. package/dist/{chunk-IUGBKMJC.js → chunk-FHYZSO2S.js} +2 -2
  10. package/dist/{chunk-6DJ6SQY3.js → chunk-PESA2R4U.js} +5 -3
  11. package/dist/chunk-PESA2R4U.js.map +1 -0
  12. package/dist/command.d.ts +11 -2
  13. package/dist/command.js +17 -6
  14. package/dist/command.js.map +1 -1
  15. package/dist/confirm-button.d.ts +1 -1
  16. package/dist/confirm-button.js +1 -1
  17. package/dist/countdown.d.ts +7 -6
  18. package/dist/countdown.js +12 -8
  19. package/dist/countdown.js.map +1 -1
  20. package/dist/dialog.js +2 -2
  21. package/dist/dropdown-menu.js +3 -3
  22. package/dist/dropdown-menu.js.map +1 -1
  23. package/dist/field.js +2 -2
  24. package/dist/field.js.map +1 -1
  25. package/dist/native.d.ts +56 -6
  26. package/dist/native.js +129 -85
  27. package/dist/native.js.map +1 -1
  28. package/dist/theme.d.ts +1 -1
  29. package/dist/theme.js +1 -1
  30. package/package.json +11 -11
  31. package/registry/alert.json +141 -3
  32. package/registry/avatar.json +314 -3
  33. package/registry/badge.json +233 -3
  34. package/registry/button.json +522 -8
  35. package/registry/card.json +427 -4
  36. package/registry/checkbox.json +127 -3
  37. package/registry/chip.json +394 -3
  38. package/registry/cn.json +51 -3
  39. package/registry/command.json +246 -5
  40. package/registry/confirm-button.json +172 -5
  41. package/registry/countdown.json +318 -7
  42. package/registry/dialog.json +310 -3
  43. package/registry/dropdown-menu.json +117 -4
  44. package/registry/empty-state.json +170 -3
  45. package/registry/examples/alert/danger.d.ts +4 -0
  46. package/registry/examples/alert/danger.js +22 -0
  47. package/registry/examples/alert/danger.tsx +25 -0
  48. package/registry/examples/alert/info.d.ts +4 -0
  49. package/registry/{demos/alert.js → examples/alert/info.js} +3 -3
  50. package/registry/{demos/alert.tsx → examples/alert/info.tsx} +1 -1
  51. package/registry/examples/alert/success.d.ts +4 -0
  52. package/registry/examples/alert/success.js +12 -0
  53. package/registry/examples/alert/success.tsx +15 -0
  54. package/registry/examples/alert/title-only.d.ts +4 -0
  55. package/registry/examples/alert/title-only.js +11 -0
  56. package/registry/examples/alert/title-only.tsx +5 -0
  57. package/registry/examples/alert/warning.d.ts +4 -0
  58. package/registry/examples/alert/warning.js +13 -0
  59. package/registry/examples/alert/warning.tsx +17 -0
  60. package/registry/examples/avatar/fallback.d.ts +4 -0
  61. package/registry/examples/avatar/fallback.js +11 -0
  62. package/registry/examples/avatar/fallback.tsx +6 -0
  63. package/registry/examples/avatar/group.d.ts +4 -0
  64. package/registry/examples/avatar/group.js +20 -0
  65. package/registry/examples/avatar/group.tsx +21 -0
  66. package/registry/examples/avatar/native/group.d.ts +4 -0
  67. package/registry/examples/avatar/native/group.dark.png +0 -0
  68. package/registry/examples/avatar/native/group.js +17 -0
  69. package/registry/examples/avatar/native/group.light.png +0 -0
  70. package/registry/examples/avatar/native/group.tsx +13 -0
  71. package/registry/examples/avatar/native/sizes.d.ts +4 -0
  72. package/registry/examples/avatar/native/sizes.dark.png +0 -0
  73. package/registry/examples/avatar/native/sizes.js +18 -0
  74. package/registry/examples/avatar/native/sizes.light.png +0 -0
  75. package/registry/examples/avatar/native/sizes.tsx +15 -0
  76. package/registry/examples/avatar/sizes.d.ts +4 -0
  77. package/registry/examples/avatar/sizes.js +17 -0
  78. package/registry/examples/avatar/sizes.tsx +13 -0
  79. package/registry/examples/avatar/with-image.d.ts +4 -0
  80. package/registry/{demos/avatar.js → examples/avatar/with-image.js} +3 -3
  81. package/registry/{demos/avatar.tsx → examples/avatar/with-image.tsx} +1 -1
  82. package/registry/examples/badge/accent.d.ts +4 -0
  83. package/registry/examples/badge/accent.js +11 -0
  84. package/registry/examples/badge/accent.tsx +9 -0
  85. package/registry/examples/badge/danger.d.ts +4 -0
  86. package/registry/examples/badge/danger.js +11 -0
  87. package/registry/examples/badge/danger.tsx +9 -0
  88. package/registry/examples/badge/medium.d.ts +4 -0
  89. package/registry/examples/badge/medium.js +11 -0
  90. package/registry/examples/badge/medium.tsx +9 -0
  91. package/registry/examples/badge/native/dot.d.ts +4 -0
  92. package/registry/examples/badge/native/dot.dark.png +0 -0
  93. package/registry/examples/badge/native/dot.js +15 -0
  94. package/registry/examples/badge/native/dot.light.png +0 -0
  95. package/registry/examples/badge/native/dot.tsx +16 -0
  96. package/registry/examples/badge/native/scrim.d.ts +4 -0
  97. package/registry/examples/badge/native/scrim.dark.png +0 -0
  98. package/registry/examples/badge/native/scrim.js +13 -0
  99. package/registry/examples/badge/native/scrim.light.png +0 -0
  100. package/registry/examples/badge/native/scrim.tsx +14 -0
  101. package/registry/examples/badge/native/tones.d.ts +4 -0
  102. package/registry/examples/badge/native/tones.dark.png +0 -0
  103. package/registry/examples/badge/native/tones.js +18 -0
  104. package/registry/examples/badge/native/tones.light.png +0 -0
  105. package/registry/examples/badge/native/tones.tsx +14 -0
  106. package/registry/examples/badge/neutral.d.ts +4 -0
  107. package/registry/{demos/badge.js → examples/badge/neutral.js} +3 -3
  108. package/registry/{demos/badge.tsx → examples/badge/neutral.tsx} +1 -1
  109. package/registry/examples/badge/scrim.d.ts +4 -0
  110. package/registry/examples/badge/scrim.js +11 -0
  111. package/registry/examples/badge/scrim.tsx +10 -0
  112. package/registry/examples/badge/success.d.ts +4 -0
  113. package/registry/examples/badge/success.js +11 -0
  114. package/registry/examples/badge/success.tsx +9 -0
  115. package/registry/examples/badge/warning.d.ts +4 -0
  116. package/registry/examples/badge/warning.js +11 -0
  117. package/registry/examples/badge/warning.tsx +9 -0
  118. package/registry/examples/button/as-child-link.d.ts +4 -0
  119. package/registry/examples/button/as-child-link.js +11 -0
  120. package/registry/examples/button/as-child-link.tsx +10 -0
  121. package/registry/examples/button/danger.d.ts +4 -0
  122. package/registry/examples/button/danger.js +11 -0
  123. package/registry/examples/button/danger.tsx +5 -0
  124. package/registry/examples/button/disabled.d.ts +4 -0
  125. package/registry/examples/button/disabled.js +11 -0
  126. package/registry/examples/button/disabled.tsx +9 -0
  127. package/registry/examples/button/ghost.d.ts +4 -0
  128. package/registry/examples/button/ghost.js +11 -0
  129. package/registry/examples/button/ghost.tsx +5 -0
  130. package/registry/examples/button/gradient.d.ts +4 -0
  131. package/registry/examples/button/gradient.js +11 -0
  132. package/registry/examples/button/gradient.tsx +5 -0
  133. package/registry/examples/button/icon.d.ts +4 -0
  134. package/registry/examples/button/icon.js +14 -0
  135. package/registry/examples/button/icon.tsx +18 -0
  136. package/registry/examples/button/loading.d.ts +4 -0
  137. package/registry/examples/button/loading.js +11 -0
  138. package/registry/examples/button/loading.tsx +10 -0
  139. package/registry/examples/button/native/danger.d.ts +4 -0
  140. package/registry/examples/button/native/danger.dark.png +0 -0
  141. package/registry/examples/button/native/danger.js +12 -0
  142. package/registry/examples/button/native/danger.light.png +0 -0
  143. package/registry/examples/button/native/danger.tsx +5 -0
  144. package/registry/examples/button/native/disabled.d.ts +4 -0
  145. package/registry/examples/button/native/disabled.dark.png +0 -0
  146. package/registry/examples/button/native/disabled.js +11 -0
  147. package/registry/examples/button/native/disabled.light.png +0 -0
  148. package/registry/examples/button/native/disabled.tsx +5 -0
  149. package/registry/examples/button/native/ghost.d.ts +4 -0
  150. package/registry/examples/button/native/ghost.dark.png +0 -0
  151. package/registry/examples/button/native/ghost.js +12 -0
  152. package/registry/examples/button/native/ghost.light.png +0 -0
  153. package/registry/examples/button/native/ghost.tsx +5 -0
  154. package/registry/examples/button/native/gradient.d.ts +4 -0
  155. package/registry/examples/button/native/gradient.dark.png +0 -0
  156. package/registry/examples/button/native/gradient.js +12 -0
  157. package/registry/examples/button/native/gradient.light.png +0 -0
  158. package/registry/examples/button/native/gradient.tsx +5 -0
  159. package/registry/examples/button/native/icon-only.d.ts +4 -0
  160. package/registry/examples/button/native/icon-only.dark.png +0 -0
  161. package/registry/examples/button/native/icon-only.js +19 -0
  162. package/registry/examples/button/native/icon-only.light.png +0 -0
  163. package/registry/examples/button/native/icon-only.tsx +21 -0
  164. package/registry/examples/button/native/icon.d.ts +4 -0
  165. package/registry/examples/button/native/icon.dark.png +0 -0
  166. package/registry/examples/button/native/icon.js +16 -0
  167. package/registry/examples/button/native/icon.light.png +0 -0
  168. package/registry/examples/button/native/icon.tsx +15 -0
  169. package/registry/examples/button/native/loading.d.ts +4 -0
  170. package/registry/examples/button/native/loading.dark.png +0 -0
  171. package/registry/examples/button/native/loading.js +11 -0
  172. package/registry/examples/button/native/loading.light.png +0 -0
  173. package/registry/examples/button/native/loading.tsx +6 -0
  174. package/registry/examples/button/native/outline.d.ts +4 -0
  175. package/registry/examples/button/native/outline.dark.png +0 -0
  176. package/registry/examples/button/native/outline.js +12 -0
  177. package/registry/examples/button/native/outline.light.png +0 -0
  178. package/registry/examples/button/native/outline.tsx +5 -0
  179. package/registry/examples/button/native/primary.d.ts +4 -0
  180. package/registry/examples/button/native/primary.dark.png +0 -0
  181. package/registry/examples/button/native/primary.js +12 -0
  182. package/registry/examples/button/native/primary.light.png +0 -0
  183. package/registry/examples/button/native/primary.tsx +5 -0
  184. package/registry/examples/button/native/secondary.d.ts +4 -0
  185. package/registry/examples/button/native/secondary.dark.png +0 -0
  186. package/registry/examples/button/native/secondary.js +12 -0
  187. package/registry/examples/button/native/secondary.light.png +0 -0
  188. package/registry/examples/button/native/secondary.tsx +6 -0
  189. package/registry/examples/button/native/sizes.d.ts +4 -0
  190. package/registry/examples/button/native/sizes.dark.png +0 -0
  191. package/registry/examples/button/native/sizes.js +15 -0
  192. package/registry/examples/button/native/sizes.light.png +0 -0
  193. package/registry/examples/button/native/sizes.tsx +11 -0
  194. package/registry/examples/button/outline.d.ts +4 -0
  195. package/registry/examples/button/outline.js +11 -0
  196. package/registry/examples/button/outline.tsx +5 -0
  197. package/registry/examples/button/pill.d.ts +4 -0
  198. package/registry/examples/button/pill.js +11 -0
  199. package/registry/examples/button/pill.tsx +9 -0
  200. package/registry/examples/button/primary.d.ts +4 -0
  201. package/registry/{demos/button.js → examples/button/primary.js} +3 -3
  202. package/registry/{demos/button.tsx → examples/button/primary.tsx} +1 -1
  203. package/registry/examples/button/secondary.d.ts +4 -0
  204. package/registry/examples/button/secondary.js +11 -0
  205. package/registry/examples/button/secondary.tsx +6 -0
  206. package/registry/examples/button/sizes.d.ts +4 -0
  207. package/registry/examples/button/sizes.js +15 -0
  208. package/registry/examples/button/sizes.tsx +17 -0
  209. package/registry/examples/card/interactive-link.d.ts +4 -0
  210. package/registry/examples/card/interactive-link.js +15 -0
  211. package/registry/examples/card/interactive-link.tsx +16 -0
  212. package/registry/examples/card/media-card.d.ts +4 -0
  213. package/registry/{demos/card.js → examples/card/media-card.js} +3 -3
  214. package/registry/{demos/card.tsx → examples/card/media-card.tsx} +1 -1
  215. package/registry/examples/card/media-fallback.d.ts +4 -0
  216. package/registry/examples/card/media-fallback.js +18 -0
  217. package/registry/examples/card/media-fallback.tsx +22 -0
  218. package/registry/examples/card/native/body.d.ts +4 -0
  219. package/registry/examples/card/native/body.dark.png +0 -0
  220. package/registry/examples/card/native/body.js +15 -0
  221. package/registry/examples/card/native/body.light.png +0 -0
  222. package/registry/examples/card/native/body.tsx +13 -0
  223. package/registry/examples/card/native/default.d.ts +4 -0
  224. package/registry/examples/card/native/default.dark.png +0 -0
  225. package/registry/examples/card/native/default.js +24 -0
  226. package/registry/examples/card/native/default.light.png +0 -0
  227. package/registry/examples/card/native/default.tsx +28 -0
  228. package/registry/examples/card/native/elevated.d.ts +4 -0
  229. package/registry/examples/card/native/elevated.dark.png +0 -0
  230. package/registry/examples/card/native/elevated.js +24 -0
  231. package/registry/examples/card/native/elevated.light.png +0 -0
  232. package/registry/examples/card/native/elevated.tsx +28 -0
  233. package/registry/examples/card/native/pressable.d.ts +4 -0
  234. package/registry/examples/card/native/pressable.dark.png +0 -0
  235. package/registry/examples/card/native/pressable.js +15 -0
  236. package/registry/examples/card/native/pressable.light.png +0 -0
  237. package/registry/examples/card/native/pressable.tsx +13 -0
  238. package/registry/examples/card/reveal-grid.d.ts +4 -0
  239. package/registry/examples/card/reveal-grid.js +28 -0
  240. package/registry/examples/card/reveal-grid.tsx +31 -0
  241. package/registry/examples/card/stat-card.d.ts +4 -0
  242. package/registry/examples/card/stat-card.js +18 -0
  243. package/registry/examples/card/stat-card.tsx +17 -0
  244. package/registry/examples/checkbox/checked.d.ts +4 -0
  245. package/registry/examples/checkbox/checked.js +11 -0
  246. package/registry/examples/checkbox/checked.tsx +5 -0
  247. package/registry/examples/checkbox/disabled.d.ts +4 -0
  248. package/registry/examples/checkbox/disabled.js +14 -0
  249. package/registry/examples/checkbox/disabled.tsx +12 -0
  250. package/registry/examples/checkbox/indeterminate.d.ts +4 -0
  251. package/registry/examples/checkbox/indeterminate.js +11 -0
  252. package/registry/examples/checkbox/indeterminate.tsx +6 -0
  253. package/registry/examples/checkbox/invalid.d.ts +4 -0
  254. package/registry/examples/checkbox/invalid.js +15 -0
  255. package/registry/examples/checkbox/invalid.tsx +14 -0
  256. package/registry/examples/checkbox/unchecked.d.ts +4 -0
  257. package/registry/{demos/checkbox.js → examples/checkbox/unchecked.js} +3 -3
  258. package/registry/{demos/checkbox.tsx → examples/checkbox/unchecked.tsx} +2 -1
  259. package/registry/examples/chip/multiple.d.ts +4 -0
  260. package/registry/examples/chip/multiple.js +16 -0
  261. package/registry/examples/chip/multiple.tsx +12 -0
  262. package/registry/examples/chip/native/multiple.d.ts +4 -0
  263. package/registry/examples/chip/native/multiple.dark.png +0 -0
  264. package/registry/examples/chip/native/multiple.js +18 -0
  265. package/registry/examples/chip/native/multiple.light.png +0 -0
  266. package/registry/examples/chip/native/multiple.tsx +17 -0
  267. package/registry/examples/chip/native/removable.d.ts +4 -0
  268. package/registry/examples/chip/native/removable.dark.png +0 -0
  269. package/registry/examples/chip/native/removable.js +17 -0
  270. package/registry/examples/chip/native/removable.light.png +0 -0
  271. package/registry/examples/chip/native/removable.tsx +15 -0
  272. package/registry/examples/chip/native/single.d.ts +4 -0
  273. package/registry/examples/chip/native/single.dark.png +0 -0
  274. package/registry/examples/chip/native/single.js +15 -0
  275. package/registry/examples/chip/native/single.light.png +0 -0
  276. package/registry/examples/chip/native/single.tsx +11 -0
  277. package/registry/examples/chip/native/toggle.d.ts +4 -0
  278. package/registry/examples/chip/native/toggle.dark.png +0 -0
  279. package/registry/examples/chip/native/toggle.js +17 -0
  280. package/registry/examples/chip/native/toggle.light.png +0 -0
  281. package/registry/examples/chip/native/toggle.tsx +16 -0
  282. package/registry/examples/chip/removable.d.ts +4 -0
  283. package/registry/examples/chip/removable.js +16 -0
  284. package/registry/examples/chip/removable.tsx +15 -0
  285. package/registry/examples/chip/single.d.ts +4 -0
  286. package/registry/examples/chip/single.js +16 -0
  287. package/registry/examples/chip/single.tsx +13 -0
  288. package/registry/examples/chip/small.d.ts +4 -0
  289. package/registry/examples/chip/small.js +16 -0
  290. package/registry/examples/chip/small.tsx +12 -0
  291. package/registry/examples/chip/toggle.d.ts +4 -0
  292. package/registry/{demos/chip.js → examples/chip/toggle.js} +3 -3
  293. package/registry/{demos/chip.tsx → examples/chip/toggle.tsx} +2 -1
  294. package/registry/examples/cn/merge.d.ts +4 -0
  295. package/registry/{demos/cn.js → examples/cn/merge.js} +3 -3
  296. package/registry/{demos/cn.tsx → examples/cn/merge.tsx} +1 -1
  297. package/registry/examples/command/dialog.d.ts +4 -0
  298. package/registry/examples/command/dialog.js +39 -0
  299. package/registry/examples/command/dialog.tsx +35 -0
  300. package/registry/examples/command/inline.d.ts +4 -0
  301. package/registry/{demos/command.js → examples/command/inline.js} +4 -5
  302. package/registry/{demos/command.tsx → examples/command/inline.tsx} +2 -3
  303. package/registry/examples/command/no-results.d.ts +4 -0
  304. package/registry/examples/command/no-results.js +19 -0
  305. package/registry/examples/command/no-results.tsx +20 -0
  306. package/registry/examples/confirm-button/armed.d.ts +4 -0
  307. package/registry/examples/confirm-button/armed.js +12 -0
  308. package/registry/examples/confirm-button/armed.tsx +14 -0
  309. package/registry/examples/confirm-button/idle.d.ts +4 -0
  310. package/registry/{demos/confirm-button.js → examples/confirm-button/idle.js} +3 -3
  311. package/registry/{demos/confirm-button.tsx → examples/confirm-button/idle.tsx} +1 -1
  312. package/registry/examples/confirm-button/with-text.d.ts +4 -0
  313. package/registry/examples/confirm-button/with-text.js +12 -0
  314. package/registry/examples/confirm-button/with-text.tsx +12 -0
  315. package/registry/examples/countdown/days.d.ts +4 -0
  316. package/registry/examples/countdown/days.js +13 -0
  317. package/registry/examples/countdown/days.tsx +10 -0
  318. package/registry/examples/countdown/ended.d.ts +4 -0
  319. package/registry/examples/countdown/ended.js +13 -0
  320. package/registry/examples/countdown/ended.tsx +10 -0
  321. package/registry/examples/countdown/hours.d.ts +4 -0
  322. package/registry/{demos/countdown.js → examples/countdown/hours.js} +3 -3
  323. package/registry/{demos/countdown.tsx → examples/countdown/hours.tsx} +1 -1
  324. package/registry/examples/countdown/native/days.d.ts +4 -0
  325. package/registry/examples/countdown/native/days.dark.png +0 -0
  326. package/registry/examples/countdown/native/days.js +13 -0
  327. package/registry/examples/countdown/native/days.light.png +0 -0
  328. package/registry/examples/countdown/native/days.tsx +7 -0
  329. package/registry/examples/countdown/native/hours.d.ts +4 -0
  330. package/registry/examples/countdown/native/hours.dark.png +0 -0
  331. package/registry/examples/countdown/native/hours.js +13 -0
  332. package/registry/examples/countdown/native/hours.light.png +0 -0
  333. package/registry/examples/countdown/native/hours.tsx +7 -0
  334. package/registry/examples/countdown/native/sizes.d.ts +4 -0
  335. package/registry/examples/countdown/native/sizes.dark.png +0 -0
  336. package/registry/examples/countdown/native/sizes.js +18 -0
  337. package/registry/examples/countdown/native/sizes.light.png +0 -0
  338. package/registry/examples/countdown/native/sizes.tsx +15 -0
  339. package/registry/examples/countdown/native/urgent.d.ts +4 -0
  340. package/registry/examples/countdown/native/urgent.dark.png +0 -0
  341. package/registry/examples/countdown/native/urgent.js +13 -0
  342. package/registry/examples/countdown/native/urgent.light.png +0 -0
  343. package/registry/examples/countdown/native/urgent.tsx +7 -0
  344. package/registry/examples/countdown/native/with-label.d.ts +4 -0
  345. package/registry/examples/countdown/native/with-label.dark.png +0 -0
  346. package/registry/examples/countdown/native/with-label.js +13 -0
  347. package/registry/examples/countdown/native/with-label.light.png +0 -0
  348. package/registry/examples/countdown/native/with-label.tsx +7 -0
  349. package/registry/examples/countdown/sizes.d.ts +4 -0
  350. package/registry/examples/countdown/sizes.js +18 -0
  351. package/registry/examples/countdown/sizes.tsx +17 -0
  352. package/registry/examples/countdown/urgent.d.ts +4 -0
  353. package/registry/examples/countdown/urgent.js +13 -0
  354. package/registry/examples/countdown/urgent.tsx +10 -0
  355. package/registry/examples/countdown/with-label.d.ts +4 -0
  356. package/registry/examples/countdown/with-label.js +13 -0
  357. package/registry/examples/countdown/with-label.tsx +10 -0
  358. package/registry/examples/dialog/alert-destructive.d.ts +4 -0
  359. package/registry/examples/dialog/alert-destructive.js +24 -0
  360. package/registry/examples/dialog/alert-destructive.tsx +20 -0
  361. package/registry/examples/dialog/bottom.d.ts +4 -0
  362. package/registry/examples/dialog/bottom.js +29 -0
  363. package/registry/examples/dialog/bottom.tsx +32 -0
  364. package/registry/examples/dialog/center.d.ts +4 -0
  365. package/registry/{demos/dialog.js → examples/dialog/center.js} +3 -3
  366. package/registry/{demos/dialog.tsx → examples/dialog/center.tsx} +1 -1
  367. package/registry/examples/dialog/gate.d.ts +4 -0
  368. package/registry/examples/dialog/gate.js +24 -0
  369. package/registry/examples/dialog/gate.tsx +27 -0
  370. package/registry/examples/dialog/right.d.ts +4 -0
  371. package/registry/examples/dialog/right.js +29 -0
  372. package/registry/examples/dialog/right.tsx +32 -0
  373. package/registry/examples/dialog/sheet-form.d.ts +4 -0
  374. package/registry/examples/dialog/sheet-form.js +35 -0
  375. package/registry/examples/dialog/sheet-form.tsx +36 -0
  376. package/registry/examples/dropdown-menu/actions.d.ts +4 -0
  377. package/registry/{demos/dropdown-menu.js → examples/dropdown-menu/actions.js} +3 -3
  378. package/registry/{demos/dropdown-menu.tsx → examples/dropdown-menu/actions.tsx} +1 -1
  379. package/registry/examples/empty-state/default.d.ts +4 -0
  380. package/registry/{demos/empty-state.js → examples/empty-state/default.js} +3 -3
  381. package/registry/{demos/empty-state.tsx → examples/empty-state/default.tsx} +1 -1
  382. package/registry/examples/empty-state/native/default.d.ts +4 -0
  383. package/registry/examples/empty-state/native/default.dark.png +0 -0
  384. package/registry/examples/empty-state/native/default.js +25 -0
  385. package/registry/examples/empty-state/native/default.light.png +0 -0
  386. package/registry/examples/empty-state/native/default.tsx +25 -0
  387. package/registry/examples/empty-state/title-only.d.ts +4 -0
  388. package/registry/examples/empty-state/title-only.js +11 -0
  389. package/registry/examples/empty-state/title-only.tsx +5 -0
  390. package/registry/examples/empty-state/with-action.d.ts +4 -0
  391. package/registry/examples/empty-state/with-action.js +24 -0
  392. package/registry/examples/empty-state/with-action.tsx +25 -0
  393. package/registry/examples/field/default.d.ts +4 -0
  394. package/registry/{demos/field.js → examples/field/default.js} +3 -3
  395. package/registry/{demos/field.tsx → examples/field/default.tsx} +1 -1
  396. package/registry/examples/field/disabled.d.ts +4 -0
  397. package/registry/examples/field/disabled.js +14 -0
  398. package/registry/examples/field/disabled.tsx +10 -0
  399. package/registry/examples/field/invalid.d.ts +4 -0
  400. package/registry/examples/field/invalid.js +15 -0
  401. package/registry/examples/field/invalid.tsx +12 -0
  402. package/registry/examples/field/select.d.ts +4 -0
  403. package/registry/examples/field/select.js +18 -0
  404. package/registry/examples/field/select.tsx +15 -0
  405. package/registry/examples/field/textarea.d.ts +4 -0
  406. package/registry/examples/field/textarea.js +14 -0
  407. package/registry/examples/field/textarea.tsx +10 -0
  408. package/registry/examples/kbd/key.d.ts +4 -0
  409. package/registry/{demos/kbd.js → examples/kbd/key.js} +3 -3
  410. package/registry/{demos/kbd.tsx → examples/kbd/key.tsx} +1 -1
  411. package/registry/examples/kbd/shortcut.d.ts +4 -0
  412. package/registry/examples/kbd/shortcut.js +15 -0
  413. package/registry/examples/kbd/shortcut.tsx +11 -0
  414. package/registry/examples/kbd/small.d.ts +4 -0
  415. package/registry/examples/kbd/small.js +11 -0
  416. package/registry/examples/kbd/small.tsx +5 -0
  417. package/registry/examples/page-header/default.d.ts +4 -0
  418. package/registry/{demos/page-header.js → examples/page-header/default.js} +3 -3
  419. package/registry/{demos/page-header.tsx → examples/page-header/default.tsx} +1 -1
  420. package/registry/examples/page-header/with-actions.d.ts +4 -0
  421. package/registry/examples/page-header/with-actions.js +22 -0
  422. package/registry/examples/page-header/with-actions.tsx +17 -0
  423. package/registry/examples/page-header/with-breadcrumb.d.ts +4 -0
  424. package/registry/examples/page-header/with-breadcrumb.js +24 -0
  425. package/registry/examples/page-header/with-breadcrumb.tsx +26 -0
  426. package/registry/examples/popover/form.d.ts +4 -0
  427. package/registry/{demos/popover.js → examples/popover/form.js} +3 -3
  428. package/registry/{demos/popover.tsx → examples/popover/form.tsx} +1 -1
  429. package/registry/examples/progress/bar-indeterminate.d.ts +4 -0
  430. package/registry/examples/progress/bar-indeterminate.js +11 -0
  431. package/registry/examples/progress/bar-indeterminate.tsx +6 -0
  432. package/registry/examples/progress/bar-sizes.d.ts +4 -0
  433. package/registry/examples/progress/bar-sizes.js +15 -0
  434. package/registry/examples/progress/bar-sizes.tsx +11 -0
  435. package/registry/examples/progress/bar.d.ts +4 -0
  436. package/registry/{demos/progress.js → examples/progress/bar.js} +3 -3
  437. package/registry/{demos/progress.tsx → examples/progress/bar.tsx} +1 -1
  438. package/registry/examples/progress/native/bar.d.ts +4 -0
  439. package/registry/examples/progress/native/bar.dark.png +0 -0
  440. package/registry/examples/progress/native/bar.js +16 -0
  441. package/registry/examples/progress/native/bar.light.png +0 -0
  442. package/registry/examples/progress/native/bar.tsx +12 -0
  443. package/registry/examples/progress/native/indeterminate.d.ts +4 -0
  444. package/registry/examples/progress/native/indeterminate.dark.png +0 -0
  445. package/registry/examples/progress/native/indeterminate.js +15 -0
  446. package/registry/examples/progress/native/indeterminate.light.png +0 -0
  447. package/registry/examples/progress/native/indeterminate.tsx +12 -0
  448. package/registry/examples/progress/native/ring.d.ts +4 -0
  449. package/registry/examples/progress/native/ring.dark.png +0 -0
  450. package/registry/examples/progress/native/ring.js +19 -0
  451. package/registry/examples/progress/native/ring.light.png +0 -0
  452. package/registry/examples/progress/native/ring.tsx +19 -0
  453. package/registry/examples/progress/ring-indeterminate.d.ts +4 -0
  454. package/registry/examples/progress/ring-indeterminate.js +11 -0
  455. package/registry/examples/progress/ring-indeterminate.tsx +5 -0
  456. package/registry/examples/progress/ring.d.ts +4 -0
  457. package/registry/examples/progress/ring.js +18 -0
  458. package/registry/examples/progress/ring.tsx +17 -0
  459. package/registry/examples/radio-group/cards.d.ts +4 -0
  460. package/registry/examples/radio-group/cards.js +19 -0
  461. package/registry/examples/radio-group/cards.tsx +21 -0
  462. package/registry/examples/radio-group/horizontal.d.ts +4 -0
  463. package/registry/examples/radio-group/horizontal.js +15 -0
  464. package/registry/examples/radio-group/horizontal.tsx +12 -0
  465. package/registry/examples/radio-group/items.d.ts +4 -0
  466. package/registry/{demos/radio-group.js → examples/radio-group/items.js} +3 -3
  467. package/registry/{demos/radio-group.tsx → examples/radio-group/items.tsx} +1 -1
  468. package/registry/examples/section-backdrop/depth-of-field.d.ts +4 -0
  469. package/registry/examples/section-backdrop/depth-of-field.js +18 -0
  470. package/registry/examples/section-backdrop/depth-of-field.tsx +13 -0
  471. package/registry/examples/section-backdrop/hero.d.ts +4 -0
  472. package/registry/{demos/section-backdrop.js → examples/section-backdrop/hero.js} +3 -3
  473. package/registry/{demos/section-backdrop.tsx → examples/section-backdrop/hero.tsx} +1 -1
  474. package/registry/examples/section-backdrop/plain.d.ts +4 -0
  475. package/registry/examples/section-backdrop/plain.js +11 -0
  476. package/registry/examples/section-backdrop/plain.tsx +10 -0
  477. package/registry/examples/section-backdrop/sequence.d.ts +4 -0
  478. package/registry/examples/section-backdrop/sequence.js +14 -0
  479. package/registry/examples/section-backdrop/sequence.tsx +15 -0
  480. package/registry/examples/section-backdrop/up.d.ts +4 -0
  481. package/registry/examples/section-backdrop/up.js +11 -0
  482. package/registry/examples/section-backdrop/up.tsx +10 -0
  483. package/registry/examples/segmented/native/default.d.ts +4 -0
  484. package/registry/examples/segmented/native/default.dark.png +0 -0
  485. package/registry/examples/segmented/native/default.js +19 -0
  486. package/registry/examples/segmented/native/default.light.png +0 -0
  487. package/registry/examples/segmented/native/default.tsx +19 -0
  488. package/registry/examples/segmented/native/small.d.ts +4 -0
  489. package/registry/examples/segmented/native/small.dark.png +0 -0
  490. package/registry/examples/segmented/native/small.js +19 -0
  491. package/registry/examples/segmented/native/small.light.png +0 -0
  492. package/registry/examples/segmented/native/small.tsx +19 -0
  493. package/registry/examples/separator/horizontal.d.ts +4 -0
  494. package/registry/{demos/separator.js → examples/separator/horizontal.js} +3 -3
  495. package/registry/{demos/separator.tsx → examples/separator/horizontal.tsx} +1 -1
  496. package/registry/examples/separator/vertical.d.ts +4 -0
  497. package/registry/examples/separator/vertical.js +17 -0
  498. package/registry/examples/separator/vertical.tsx +14 -0
  499. package/registry/examples/skeleton/circle.d.ts +4 -0
  500. package/registry/examples/skeleton/circle.js +11 -0
  501. package/registry/examples/skeleton/circle.tsx +5 -0
  502. package/registry/examples/skeleton/composition.d.ts +4 -0
  503. package/registry/{demos/skeleton.js → examples/skeleton/composition.js} +3 -3
  504. package/registry/{demos/skeleton.tsx → examples/skeleton/composition.tsx} +1 -1
  505. package/registry/examples/skeleton/native/shapes.d.ts +4 -0
  506. package/registry/examples/skeleton/native/shapes.dark.png +0 -0
  507. package/registry/examples/skeleton/native/shapes.js +21 -0
  508. package/registry/examples/skeleton/native/shapes.light.png +0 -0
  509. package/registry/examples/skeleton/native/shapes.tsx +18 -0
  510. package/registry/examples/skeleton/rect.d.ts +4 -0
  511. package/registry/examples/skeleton/rect.js +11 -0
  512. package/registry/examples/skeleton/rect.tsx +5 -0
  513. package/registry/examples/skeleton/text.d.ts +4 -0
  514. package/registry/examples/skeleton/text.js +11 -0
  515. package/registry/examples/skeleton/text.tsx +5 -0
  516. package/registry/examples/slider/centred.d.ts +4 -0
  517. package/registry/examples/slider/centred.js +11 -0
  518. package/registry/examples/slider/centred.tsx +8 -0
  519. package/registry/examples/slider/default.d.ts +4 -0
  520. package/registry/{demos/slider.js → examples/slider/default.js} +3 -3
  521. package/registry/{demos/slider.tsx → examples/slider/default.tsx} +1 -1
  522. package/registry/examples/slider/disabled.d.ts +4 -0
  523. package/registry/examples/slider/disabled.js +11 -0
  524. package/registry/examples/slider/disabled.tsx +5 -0
  525. package/registry/examples/slider/range.d.ts +4 -0
  526. package/registry/examples/slider/range.js +22 -0
  527. package/registry/examples/slider/range.tsx +18 -0
  528. package/registry/examples/slider/with-label.d.ts +4 -0
  529. package/registry/examples/slider/with-label.js +11 -0
  530. package/registry/examples/slider/with-label.tsx +8 -0
  531. package/registry/examples/slot/as-child.d.ts +4 -0
  532. package/registry/{demos/slot.js → examples/slot/as-child.js} +3 -3
  533. package/registry/{demos/slot.tsx → examples/slot/as-child.tsx} +1 -1
  534. package/registry/examples/slot/visually-hidden.d.ts +4 -0
  535. package/registry/examples/slot/visually-hidden.js +14 -0
  536. package/registry/examples/slot/visually-hidden.tsx +13 -0
  537. package/registry/examples/spinner/default.d.ts +4 -0
  538. package/registry/{demos/spinner.js → examples/spinner/default.js} +3 -3
  539. package/registry/{demos/spinner.tsx → examples/spinner/default.tsx} +1 -1
  540. package/registry/examples/spinner/muted.d.ts +4 -0
  541. package/registry/examples/spinner/muted.js +11 -0
  542. package/registry/examples/spinner/muted.tsx +6 -0
  543. package/registry/examples/spinner/native/sizes.d.ts +4 -0
  544. package/registry/examples/spinner/native/sizes.dark.png +0 -0
  545. package/registry/examples/spinner/native/sizes.js +16 -0
  546. package/registry/examples/spinner/native/sizes.light.png +0 -0
  547. package/registry/examples/spinner/native/sizes.tsx +13 -0
  548. package/registry/examples/spinner/sizes.d.ts +4 -0
  549. package/registry/examples/spinner/sizes.js +15 -0
  550. package/registry/examples/spinner/sizes.tsx +11 -0
  551. package/registry/examples/stat/down.d.ts +4 -0
  552. package/registry/examples/stat/down.js +11 -0
  553. package/registry/examples/stat/down.tsx +5 -0
  554. package/registry/examples/stat/flat.d.ts +4 -0
  555. package/registry/examples/stat/flat.js +11 -0
  556. package/registry/examples/stat/flat.tsx +5 -0
  557. package/registry/examples/stat/plain.d.ts +4 -0
  558. package/registry/examples/stat/plain.js +11 -0
  559. package/registry/examples/stat/plain.tsx +5 -0
  560. package/registry/examples/stat/row.d.ts +4 -0
  561. package/registry/examples/stat/row.js +15 -0
  562. package/registry/examples/stat/row.tsx +12 -0
  563. package/registry/examples/stat/up.d.ts +4 -0
  564. package/registry/{demos/stat.js → examples/stat/up.js} +3 -3
  565. package/registry/{demos/stat.tsx → examples/stat/up.tsx} +1 -1
  566. package/registry/examples/switch/disabled.d.ts +4 -0
  567. package/registry/examples/switch/disabled.js +14 -0
  568. package/registry/examples/switch/disabled.tsx +10 -0
  569. package/registry/examples/switch/off.d.ts +4 -0
  570. package/registry/{demos/switch.js → examples/switch/off.js} +3 -3
  571. package/registry/{demos/switch.tsx → examples/switch/off.tsx} +1 -1
  572. package/registry/examples/switch/on.d.ts +4 -0
  573. package/registry/examples/switch/on.js +11 -0
  574. package/registry/examples/switch/on.tsx +5 -0
  575. package/registry/examples/switch/small.d.ts +4 -0
  576. package/registry/examples/switch/small.js +11 -0
  577. package/registry/examples/switch/small.tsx +5 -0
  578. package/registry/examples/switch/with-label.d.ts +4 -0
  579. package/registry/examples/switch/with-label.js +18 -0
  580. package/registry/examples/switch/with-label.tsx +17 -0
  581. package/registry/examples/tabs/pills.d.ts +4 -0
  582. package/registry/examples/tabs/pills.js +20 -0
  583. package/registry/examples/tabs/pills.tsx +23 -0
  584. package/registry/examples/tabs/segmented.d.ts +4 -0
  585. package/registry/examples/tabs/segmented.js +20 -0
  586. package/registry/examples/tabs/segmented.tsx +23 -0
  587. package/registry/examples/tabs/underline.d.ts +4 -0
  588. package/registry/{demos/tabs.js → examples/tabs/underline.js} +3 -3
  589. package/registry/{demos/tabs.tsx → examples/tabs/underline.tsx} +1 -1
  590. package/registry/examples/tabs/vertical.d.ts +4 -0
  591. package/registry/examples/tabs/vertical.js +20 -0
  592. package/registry/examples/tabs/vertical.tsx +23 -0
  593. package/registry/examples/theme/native/provider.d.ts +4 -0
  594. package/registry/examples/theme/native/provider.js +23 -0
  595. package/registry/examples/theme/native/provider.tsx +21 -0
  596. package/registry/examples/theme/secondary.d.ts +4 -0
  597. package/registry/examples/theme/secondary.js +11 -0
  598. package/registry/examples/theme/secondary.tsx +10 -0
  599. package/registry/examples/theme/toggle.d.ts +4 -0
  600. package/registry/{demos/theme.js → examples/theme/toggle.js} +3 -3
  601. package/registry/{demos/theme.tsx → examples/theme/toggle.tsx} +1 -1
  602. package/registry/examples/toast/custom.d.ts +4 -0
  603. package/registry/examples/toast/custom.js +30 -0
  604. package/registry/examples/toast/custom.tsx +35 -0
  605. package/registry/examples/toast/native/notification.d.ts +4 -0
  606. package/registry/examples/toast/native/notification.dark.png +0 -0
  607. package/registry/examples/toast/native/notification.js +29 -0
  608. package/registry/examples/toast/native/notification.light.png +0 -0
  609. package/registry/examples/toast/native/notification.tsx +30 -0
  610. package/registry/examples/toast/native/tones.d.ts +4 -0
  611. package/registry/examples/toast/native/tones.dark.png +0 -0
  612. package/registry/examples/toast/native/tones.js +28 -0
  613. package/registry/examples/toast/native/tones.light.png +0 -0
  614. package/registry/examples/toast/native/tones.tsx +25 -0
  615. package/registry/examples/toast/tones.d.ts +4 -0
  616. package/registry/{demos/toast.js → examples/toast/tones.js} +3 -3
  617. package/registry/{demos/toast.tsx → examples/toast/tones.tsx} +1 -1
  618. package/registry/examples/tooltip/right.d.ts +4 -0
  619. package/registry/examples/tooltip/right.js +15 -0
  620. package/registry/examples/tooltip/right.tsx +15 -0
  621. package/registry/examples/tooltip/top.d.ts +4 -0
  622. package/registry/{demos/tooltip.js → examples/tooltip/top.js} +3 -3
  623. package/registry/{demos/tooltip.tsx → examples/tooltip/top.tsx} +1 -1
  624. package/registry/examples/txt/native/tones.d.ts +4 -0
  625. package/registry/examples/txt/native/tones.dark.png +0 -0
  626. package/registry/examples/txt/native/tones.js +16 -0
  627. package/registry/examples/txt/native/tones.light.png +0 -0
  628. package/registry/examples/txt/native/tones.tsx +17 -0
  629. package/registry/examples/txt/native/variants.d.ts +4 -0
  630. package/registry/examples/txt/native/variants.dark.png +0 -0
  631. package/registry/examples/txt/native/variants.js +18 -0
  632. package/registry/examples/txt/native/variants.light.png +0 -0
  633. package/registry/examples/txt/native/variants.tsx +15 -0
  634. package/registry/field.json +142 -4
  635. package/registry/index.json +353 -33
  636. package/registry/kbd.json +90 -3
  637. package/registry/page-header.json +121 -3
  638. package/registry/popover.json +90 -3
  639. package/registry/progress.json +265 -3
  640. package/registry/radio-group.json +136 -3
  641. package/registry/section-backdrop.json +144 -3
  642. package/registry/segmented.json +125 -0
  643. package/registry/separator.json +67 -3
  644. package/registry/skeleton.json +166 -3
  645. package/registry/slider.json +177 -3
  646. package/registry/slot.json +79 -3
  647. package/registry/spinner.json +144 -3
  648. package/registry/stat.json +140 -3
  649. package/registry/switch.json +130 -3
  650. package/registry/tabs.json +117 -3
  651. package/registry/theme.json +190 -4
  652. package/registry/toast.json +190 -3
  653. package/registry/tooltip.json +143 -3
  654. package/registry/txt.json +97 -0
  655. package/dist/chunk-6DJ6SQY3.js.map +0 -1
  656. package/registry/demos/alert.d.ts +0 -5
  657. package/registry/demos/avatar.d.ts +0 -5
  658. package/registry/demos/badge.d.ts +0 -5
  659. package/registry/demos/button.d.ts +0 -5
  660. package/registry/demos/card.d.ts +0 -5
  661. package/registry/demos/checkbox.d.ts +0 -5
  662. package/registry/demos/chip.d.ts +0 -5
  663. package/registry/demos/cn.d.ts +0 -7
  664. package/registry/demos/command.d.ts +0 -5
  665. package/registry/demos/confirm-button.d.ts +0 -5
  666. package/registry/demos/countdown.d.ts +0 -5
  667. package/registry/demos/dialog.d.ts +0 -7
  668. package/registry/demos/dropdown-menu.d.ts +0 -7
  669. package/registry/demos/empty-state.d.ts +0 -5
  670. package/registry/demos/field.d.ts +0 -5
  671. package/registry/demos/kbd.d.ts +0 -5
  672. package/registry/demos/page-header.d.ts +0 -5
  673. package/registry/demos/popover.d.ts +0 -7
  674. package/registry/demos/progress.d.ts +0 -5
  675. package/registry/demos/radio-group.d.ts +0 -5
  676. package/registry/demos/section-backdrop.d.ts +0 -5
  677. package/registry/demos/separator.d.ts +0 -5
  678. package/registry/demos/skeleton.d.ts +0 -5
  679. package/registry/demos/slider.d.ts +0 -5
  680. package/registry/demos/slot.d.ts +0 -5
  681. package/registry/demos/spinner.d.ts +0 -5
  682. package/registry/demos/stat.d.ts +0 -5
  683. package/registry/demos/switch.d.ts +0 -5
  684. package/registry/demos/tabs.d.ts +0 -5
  685. package/registry/demos/theme.d.ts +0 -5
  686. package/registry/demos/toast.d.ts +0 -8
  687. package/registry/demos/tooltip.d.ts +0 -7
  688. /package/dist/{chunk-IUGBKMJC.js.map → chunk-FHYZSO2S.js.map} +0 -0
@@ -1,7 +1,166 @@
1
1
  {
2
2
  "name": "empty-state",
3
3
  "type": "primitive",
4
- "description": "`EmptyState`. Server-safe.",
4
+ "title": "Empty state",
5
+ "summary": "What a list, a search or a panel says when it has nothing to show: an icon, a title, a line and an action.",
6
+ "description": "What a list, a search or a panel says when it has nothing to show: an icon, a title, a line and an action.",
7
+ "status": "stable",
8
+ "category": "feedback",
9
+ "platforms": "both",
10
+ "whenToUse": [
11
+ "When a list is empty for the first time: say what will appear here and how to start.",
12
+ "When a search or a filter returns nothing: say so, and how to widen it."
13
+ ],
14
+ "whenNotToUse": [
15
+ {
16
+ "when": "While the content is loading.",
17
+ "use": "skeleton"
18
+ },
19
+ {
20
+ "when": "When loading failed: say what went wrong.",
21
+ "use": "alert"
22
+ }
23
+ ],
24
+ "bestPractices": [
25
+ "Title: what is empty, in a few words (“No videos yet”); description: why, or what will fill it.",
26
+ "One action at most, the one that fills the list."
27
+ ],
28
+ "accessibility": {
29
+ "keyboard": [],
30
+ "notes": [
31
+ "`role=\"status\"`: announced politely when it appears after a search.",
32
+ "The icon is decorative and hidden from assistive technology."
33
+ ]
34
+ },
35
+ "related": [
36
+ "skeleton",
37
+ "alert",
38
+ "spinner"
39
+ ],
40
+ "web": {
41
+ "entry": "@krizaka/ui/empty-state",
42
+ "import": "import { EmptyState } from \"@krizaka/ui/empty-state\";",
43
+ "props": [
44
+ {
45
+ "component": "EmptyState",
46
+ "description": "",
47
+ "props": [
48
+ {
49
+ "name": "title",
50
+ "type": "ReactNode",
51
+ "default": null,
52
+ "description": "What is empty, in a few words (\"No videos yet\").",
53
+ "required": true
54
+ },
55
+ {
56
+ "name": "action",
57
+ "type": "ReactNode",
58
+ "default": null,
59
+ "description": "What to do next: a Button, a link.",
60
+ "required": false
61
+ },
62
+ {
63
+ "name": "description",
64
+ "type": "ReactNode",
65
+ "default": null,
66
+ "description": "Why, or what will fill it.",
67
+ "required": false
68
+ },
69
+ {
70
+ "name": "icon",
71
+ "type": "ReactNode",
72
+ "default": null,
73
+ "description": "A decorative icon (hidden from assistive technology).",
74
+ "required": false
75
+ }
76
+ ]
77
+ }
78
+ ],
79
+ "examples": [
80
+ {
81
+ "name": "default",
82
+ "title": "Default",
83
+ "description": "An icon, a title and a line.",
84
+ "path": "examples/empty-state/default.tsx",
85
+ "module": "@krizaka/ui/registry/examples/empty-state/default",
86
+ "code": "import { EmptyState } from \"@krizaka/ui/empty-state\";\n\nconst ICON = (\n <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\">\n <rect x=\"3\" y=\"5\" width=\"18\" height=\"14\" rx=\"2\" />\n <path d=\"m10 9 5 3-5 3z\" />\n </svg>\n);\n\nexport default function EmptyStateDefault() {\n return <EmptyState icon={ICON} title=\"No videos yet\" description=\"The videos you publish appear here.\" />;\n}\n"
87
+ },
88
+ {
89
+ "name": "with-action",
90
+ "title": "With an action",
91
+ "description": "What to do next.",
92
+ "path": "examples/empty-state/with-action.tsx",
93
+ "module": "@krizaka/ui/registry/examples/empty-state/with-action",
94
+ "code": "import { Button } from \"@krizaka/ui/button\";\nimport { EmptyState } from \"@krizaka/ui/empty-state\";\n\nconst ICON = (\n <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\">\n <rect x=\"3\" y=\"5\" width=\"18\" height=\"14\" rx=\"2\" />\n <path d=\"m10 9 5 3-5 3z\" />\n </svg>\n);\n\n// With what to do next.\nexport default function EmptyStateWithAction() {\n return (\n <EmptyState\n icon={ICON}\n title=\"No videos yet\"\n description=\"The videos you publish appear here.\"\n action={\n <Button variant=\"primary\" size=\"sm\">\n Publish a video\n </Button>\n }\n />\n );\n}\n"
95
+ },
96
+ {
97
+ "name": "title-only",
98
+ "title": "Title only",
99
+ "description": "A search without result.",
100
+ "path": "examples/empty-state/title-only.tsx",
101
+ "module": "@krizaka/ui/registry/examples/empty-state/title-only",
102
+ "code": "import { EmptyState } from \"@krizaka/ui/empty-state\";\n\nexport default function EmptyStateTitleOnly() {\n return <EmptyState title=\"No results\" />;\n}\n"
103
+ }
104
+ ]
105
+ },
106
+ "native": {
107
+ "entry": "@krizaka/ui/native",
108
+ "import": "import { EmptyState } from \"@krizaka/ui/native\";",
109
+ "differences": [
110
+ "The action is a native `Button` (with `label`).",
111
+ "Style with `style`, not `className`."
112
+ ],
113
+ "props": [
114
+ {
115
+ "component": "EmptyState",
116
+ "description": "What a list, a search or a screen says when it has nothing to show — every word is a prop.",
117
+ "props": [
118
+ {
119
+ "name": "title",
120
+ "type": "string",
121
+ "default": null,
122
+ "description": "What is empty, in a few words (\"No notifications yet\").",
123
+ "required": true
124
+ },
125
+ {
126
+ "name": "action",
127
+ "type": "ReactNode",
128
+ "default": null,
129
+ "description": "What to do next: a Button.",
130
+ "required": false
131
+ },
132
+ {
133
+ "name": "description",
134
+ "type": "string",
135
+ "default": null,
136
+ "description": "Why, or what will fill it.",
137
+ "required": false
138
+ },
139
+ {
140
+ "name": "icon",
141
+ "type": "ReactNode",
142
+ "default": null,
143
+ "description": "A decorative icon (hidden from screen readers).",
144
+ "required": false
145
+ }
146
+ ]
147
+ }
148
+ ],
149
+ "examples": [
150
+ {
151
+ "name": "default",
152
+ "title": "Default",
153
+ "description": "An icon, a header, a line and an action.",
154
+ "path": "examples/empty-state/native/default.tsx",
155
+ "module": "@krizaka/ui/registry/examples/empty-state/native/default",
156
+ "code": "import { Button, EmptyState, useTheme } from \"@krizaka/ui/native\";\nimport { View } from \"react-native\";\nimport Svg, { Path } from \"react-native-svg\";\n\nfunction BellIcon({ color }: { color: string }) {\n return (\n <Svg width={24} height={24} viewBox=\"0 0 24 24\" fill=\"none\" stroke={color} strokeWidth={2} strokeLinecap=\"round\" strokeLinejoin=\"round\">\n <Path d=\"M6 8a6 6 0 0 1 12 0c0 7 3 9 3 9H3s3-2 3-9M10.3 21a1.94 1.94 0 0 0 3.4 0\" />\n </Svg>\n );\n}\n\nexport default function NativeEmptyStateDefault() {\n const { theme } = useTheme();\n return (\n <View style={{ width: 320 }}>\n <EmptyState\n icon={<BellIcon color={theme.textPrimary} />}\n title=\"No notifications yet\"\n description=\"Follow a creator to hear when they go on stage.\"\n action={<Button variant=\"primary\" label=\"Explore\" />}\n />\n </View>\n );\n}\n",
157
+ "screenshots": {
158
+ "dark": "examples/empty-state/native/default.dark.png",
159
+ "light": "examples/empty-state/native/default.light.png"
160
+ }
161
+ }
162
+ ]
163
+ },
5
164
  "files": [
6
165
  {
7
166
  "path": "empty-state/empty-state.tsx",
@@ -10,6 +169,14 @@
10
169
  {
11
170
  "path": "empty-state/index.ts",
12
171
  "content": "/** @krizaka/ui/empty-state — `EmptyState`. Server-safe. */\nexport { EmptyState, emptyState, type EmptyStateProps } from \"./empty-state\";\n"
172
+ },
173
+ {
174
+ "path": "empty-state/meta.ts",
175
+ "content": "import type { ComponentMeta } from \"../meta\";\n\nexport const meta = {\n title: \"Empty state\",\n summary: \"What a list, a search or a panel says when it has nothing to show: an icon, a title, a line and an action.\",\n status: \"stable\",\n category: \"feedback\",\n platforms: \"both\",\n whenToUse: [\n \"When a list is empty for the first time: say what will appear here and how to start.\",\n \"When a search or a filter returns nothing: say so, and how to widen it.\",\n ],\n whenNotToUse: [\n { when: \"While the content is loading.\", use: \"skeleton\" },\n { when: \"When loading failed: say what went wrong.\", use: \"alert\" },\n ],\n bestPractices: [\n \"Title: what is empty, in a few words (“No videos yet”); description: why, or what will fill it.\",\n \"One action at most, the one that fills the list.\",\n ],\n accessibility: {\n keyboard: [],\n notes: [\"`role=\\\"status\\\"`: announced politely when it appears after a search.\", \"The icon is decorative and hidden from assistive technology.\"],\n },\n related: [\"skeleton\", \"alert\", \"spinner\"],\n web: {\n imports: [\"EmptyState\"],\n examples: [\n { name: \"default\", title: \"Default\", description: \"An icon, a title and a line.\" },\n { name: \"with-action\", title: \"With an action\", description: \"What to do next.\" },\n { name: \"title-only\", title: \"Title only\", description: \"A search without result.\" },\n ],\n },\n native: {\n imports: [\"EmptyState\"],\n differences: [\"The action is a native `Button` (with `label`).\", \"Style with `style`, not `className`.\"],\n examples: [{ name: \"default\", title: \"Default\", description: \"An icon, a header, a line and an action.\" }],\n },\n} satisfies ComponentMeta;\n"
176
+ },
177
+ {
178
+ "path": "meta.ts",
179
+ "content": "// The documentation of a component, carried by its code: each primitive has a `meta.ts` beside its source\n// (`src/<name>/meta.ts`; a component that exists only in React Native: `src/native/meta/<name>.ts`). Never built into\n// the package: `scripts/build-registry.mjs` reads them into `registry/<name>.json`, which krizaka.com renders as\n// /docs/ui/<name>, and `scripts/registry.test.mjs` fails when one is missing or incomplete.\n//\n// Why a typed module and not JSDoc tags: the fields are lists and links (`related`, `whenNotToUse[].use`, examples),\n// which a type checks and a comment does not; the file is plain data (erasable TypeScript), so Node reads it without a\n// compiler, and an editor completes it.\n\n/** Every documented component: the web primitives (one entry of the package each) and the native-only ones. */\nexport type ComponentName =\n | \"alert\"\n | \"avatar\"\n | \"badge\"\n | \"button\"\n | \"card\"\n | \"checkbox\"\n | \"chip\"\n | \"cn\"\n | \"command\"\n | \"confirm-button\"\n | \"countdown\"\n | \"dialog\"\n | \"dropdown-menu\"\n | \"empty-state\"\n | \"field\"\n | \"kbd\"\n | \"page-header\"\n | \"popover\"\n | \"progress\"\n | \"radio-group\"\n | \"section-backdrop\"\n | \"segmented\"\n | \"separator\"\n | \"skeleton\"\n | \"slider\"\n | \"slot\"\n | \"spinner\"\n | \"stat\"\n | \"switch\"\n | \"tabs\"\n | \"theme\"\n | \"toast\"\n | \"tooltip\"\n | \"txt\";\n\n/** Where a component exists: `@krizaka/ui/<name>` (web), `@krizaka/ui/native` (React Native), or both. */\nexport type Platform = \"web\" | \"native\" | \"both\";\n\n/** `stable`: its API only changes in a major. `beta`: it may still change in a minor. */\nexport type Status = \"stable\" | \"beta\";\n\n/** The group of the catalogue. */\nexport type Category = \"actions\" | \"forms\" | \"navigation\" | \"overlays\" | \"feedback\" | \"data-display\" | \"layout\" | \"foundations\";\n\n/**\n * A named example: the file `registry/examples/<component>/<name>.tsx` (web) or\n * `registry/examples/<component>/native/<name>.tsx` (React Native) — at most 40 lines, imported by the stories and\n * shown (live, with its code) by the documentation.\n */\nexport interface Example {\n /** The file name, kebab-case (`primary`, `icon-button`). */\n readonly name: string;\n /** A short title (`Primary`, `Icon button`). */\n readonly title: string;\n /** One or two sentences: when this variant is the right one. */\n readonly description: string;\n}\n\n/** One platform's side of a component. */\nexport interface PlatformDocs {\n /** The names to import (`[\"Button\", \"IconButton\"]`): from `@krizaka/ui/<name>` on the web, `@krizaka/ui/native` in React Native. */\n readonly imports: readonly string[];\n /** The examples, in reading order; the first one is the component's preview. */\n readonly examples: readonly Example[];\n}\n\n/** The React Native side: the same concept, and what differs from the web API. */\nexport interface NativeDocs extends PlatformDocs {\n /** What differs from the web API (`label` instead of children…); empty for a native-only component. */\n readonly differences: readonly string[];\n}\n\nexport interface KeyboardInteraction {\n /** The keys, as written on a keyboard: `Space`, `Enter`, `Arrow keys`, `Esc`, `Tab`. */\n readonly keys: string;\n /** What they do. */\n readonly action: string;\n}\n\nexport interface ComponentMeta {\n /** The display name: `Button`, `Dropdown menu`. */\n readonly title: string;\n /** One sentence: what it is. */\n readonly summary: string;\n readonly status: Status;\n readonly category: Category;\n /** Must match the sides below: `both` ⇔ `web` and `native`. */\n readonly platforms: Platform;\n /** When to reach for it: concrete situations, one per item. */\n readonly whenToUse: readonly string[];\n /** When not to — and what to use instead (`use`), when another component is the answer. */\n readonly whenNotToUse: readonly { readonly when: string; readonly use?: ComponentName }[];\n /** How to use it well: wording, placement, composition. */\n readonly bestPractices: readonly string[];\n readonly accessibility: {\n /** The keyboard, when it does more than Tab and Enter. */\n readonly keyboard: readonly KeyboardInteraction[];\n /** Roles, names and announcements: what the component does, what the app must provide. */\n readonly notes: readonly string[];\n };\n /** The components a reader of this page should know about. */\n readonly related: readonly ComponentName[];\n readonly web?: PlatformDocs;\n readonly native?: NativeDocs;\n}\n"
13
180
  }
14
181
  ],
15
182
  "dependencies": [
@@ -17,8 +184,8 @@
17
184
  ],
18
185
  "registryDependencies": [],
19
186
  "demo": {
20
- "path": "demos/empty-state.tsx",
21
- "content": "import { EmptyState } from \"@krizaka/ui/empty-state\";\n\nconst ICON = (\n <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\">\n <rect x=\"3\" y=\"5\" width=\"18\" height=\"14\" rx=\"2\" />\n <path d=\"m10 9 5 3-5 3z\" />\n </svg>\n);\n\nexport default function EmptyStateDemo() {\n return <EmptyState icon={ICON} title=\"No videos yet\" description=\"The videos you publish appear here.\" />;\n}\n"
187
+ "path": "examples/empty-state/default.tsx",
188
+ "content": "import { EmptyState } from \"@krizaka/ui/empty-state\";\n\nconst ICON = (\n <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\">\n <rect x=\"3\" y=\"5\" width=\"18\" height=\"14\" rx=\"2\" />\n <path d=\"m10 9 5 3-5 3z\" />\n </svg>\n);\n\nexport default function EmptyStateDefault() {\n return <EmptyState icon={ICON} title=\"No videos yet\" description=\"The videos you publish appear here.\" />;\n}\n"
22
189
  },
23
190
  "props": [
24
191
  {
@@ -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/alert/danger.tsx
4
+ import { Alert } from "@krizaka/ui/alert";
5
+ import { Button } from "@krizaka/ui/button";
6
+ import { jsx } from "react/jsx-runtime";
7
+ var WARN = /* @__PURE__ */ jsx("svg", { viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: /* @__PURE__ */ jsx("path", { d: "M12 9v4M12 17h.01M10.3 3.9 1.8 18a2 2 0 0 0 1.7 3h17a2 2 0 0 0 1.7-3L13.7 3.9a2 2 0 0 0-3.4 0Z" }) });
8
+ function AlertDanger() {
9
+ return /* @__PURE__ */ jsx(
10
+ Alert,
11
+ {
12
+ tone: "danger",
13
+ icon: WARN,
14
+ title: "Payment failed",
15
+ action: /* @__PURE__ */ jsx(Button, { size: "sm", variant: "danger", children: "Retry" }),
16
+ children: "The card was declined. Try another one."
17
+ }
18
+ );
19
+ }
20
+ export {
21
+ AlertDanger as default
22
+ };
@@ -0,0 +1,25 @@
1
+ import { Alert } from "@krizaka/ui/alert";
2
+ import { Button } from "@krizaka/ui/button";
3
+
4
+ const WARN = (
5
+ <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round">
6
+ <path d="M12 9v4M12 17h.01M10.3 3.9 1.8 18a2 2 0 0 0 1.7 3h17a2 2 0 0 0 1.7-3L13.7 3.9a2 2 0 0 0-3.4 0Z" />
7
+ </svg>
8
+ );
9
+
10
+ export default function AlertDanger() {
11
+ return (
12
+ <Alert
13
+ tone="danger"
14
+ icon={WARN}
15
+ title="Payment failed"
16
+ action={
17
+ <Button size="sm" variant="danger">
18
+ Retry
19
+ </Button>
20
+ }
21
+ >
22
+ The card was declined. Try another one.
23
+ </Alert>
24
+ );
25
+ }
@@ -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;
@@ -1,12 +1,12 @@
1
1
  "use client";
2
2
 
3
- // registry/demos/alert.tsx
3
+ // registry/examples/alert/info.tsx
4
4
  import { Alert } from "@krizaka/ui/alert";
5
5
  import { jsx } from "react/jsx-runtime";
6
6
  var INFO = /* @__PURE__ */ jsx("svg", { viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: /* @__PURE__ */ jsx("path", { d: "M12 16v-4M12 8h.01M12 22a10 10 0 1 0 0-20 10 10 0 0 0 0 20Z" }) });
7
- function AlertDemo() {
7
+ function AlertInfo() {
8
8
  return /* @__PURE__ */ jsx(Alert, { title: "New payout schedule", icon: INFO, children: "Payouts now arrive every Monday." });
9
9
  }
10
10
  export {
11
- AlertDemo as default
11
+ AlertInfo as default
12
12
  };
@@ -6,7 +6,7 @@ const INFO = (
6
6
  </svg>
7
7
  );
8
8
 
9
- export default function AlertDemo() {
9
+ export default function AlertInfo() {
10
10
  return (
11
11
  <Alert title="New payout schedule" icon={INFO}>
12
12
  Payouts now arrive every Monday.
@@ -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,12 @@
1
+ "use client";
2
+
3
+ // registry/examples/alert/success.tsx
4
+ import { Alert } from "@krizaka/ui/alert";
5
+ import { jsx } from "react/jsx-runtime";
6
+ var CHECK = /* @__PURE__ */ jsx("svg", { viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: /* @__PURE__ */ jsx("path", { d: "M20 6 9 17l-5-5" }) });
7
+ function AlertSuccess() {
8
+ return /* @__PURE__ */ jsx(Alert, { tone: "success", icon: CHECK, title: "Account verified", children: "You can now receive payouts." });
9
+ }
10
+ export {
11
+ AlertSuccess as default
12
+ };
@@ -0,0 +1,15 @@
1
+ import { Alert } from "@krizaka/ui/alert";
2
+
3
+ const CHECK = (
4
+ <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round">
5
+ <path d="M20 6 9 17l-5-5" />
6
+ </svg>
7
+ );
8
+
9
+ export default function AlertSuccess() {
10
+ return (
11
+ <Alert tone="success" icon={CHECK} title="Account verified">
12
+ You can now receive payouts.
13
+ </Alert>
14
+ );
15
+ }
@@ -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,11 @@
1
+ "use client";
2
+
3
+ // registry/examples/alert/title-only.tsx
4
+ import { Alert } from "@krizaka/ui/alert";
5
+ import { jsx } from "react/jsx-runtime";
6
+ function AlertTitleOnly() {
7
+ return /* @__PURE__ */ jsx(Alert, { title: "New payout schedule" });
8
+ }
9
+ export {
10
+ AlertTitleOnly as default
11
+ };
@@ -0,0 +1,5 @@
1
+ import { Alert } from "@krizaka/ui/alert";
2
+
3
+ export default function AlertTitleOnly() {
4
+ return <Alert title="New payout schedule" />;
5
+ }
@@ -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,13 @@
1
+ "use client";
2
+
3
+ // registry/examples/alert/warning.tsx
4
+ import { Alert } from "@krizaka/ui/alert";
5
+ import { Button } from "@krizaka/ui/button";
6
+ import { jsx } from "react/jsx-runtime";
7
+ var WARN = /* @__PURE__ */ jsx("svg", { viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: /* @__PURE__ */ jsx("path", { d: "M12 9v4M12 17h.01M10.3 3.9 1.8 18a2 2 0 0 0 1.7 3h17a2 2 0 0 0 1.7-3L13.7 3.9a2 2 0 0 0-3.4 0Z" }) });
8
+ function AlertWarning() {
9
+ return /* @__PURE__ */ jsx(Alert, { tone: "warning", icon: WARN, title: "Low balance", action: /* @__PURE__ */ jsx(Button, { size: "sm", children: "Top up" }), children: "Two tips left before a top-up." });
10
+ }
11
+ export {
12
+ AlertWarning as default
13
+ };
@@ -0,0 +1,17 @@
1
+ import { Alert } from "@krizaka/ui/alert";
2
+ import { Button } from "@krizaka/ui/button";
3
+
4
+ const WARN = (
5
+ <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round">
6
+ <path d="M12 9v4M12 17h.01M10.3 3.9 1.8 18a2 2 0 0 0 1.7 3h17a2 2 0 0 0 1.7-3L13.7 3.9a2 2 0 0 0-3.4 0Z" />
7
+ </svg>
8
+ );
9
+
10
+ // `warning` and `danger` are announced at once (role="alert").
11
+ export default function AlertWarning() {
12
+ return (
13
+ <Alert tone="warning" icon={WARN} title="Low balance" action={<Button size="sm">Top up</Button>}>
14
+ Two tips left before a top-up.
15
+ </Alert>
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,11 @@
1
+ "use client";
2
+
3
+ // registry/examples/avatar/fallback.tsx
4
+ import { Avatar } from "@krizaka/ui/avatar";
5
+ import { jsx } from "react/jsx-runtime";
6
+ function AvatarFallback() {
7
+ return /* @__PURE__ */ jsx(Avatar, { fallback: "OA" });
8
+ }
9
+ export {
10
+ AvatarFallback as default
11
+ };
@@ -0,0 +1,6 @@
1
+ import { Avatar } from "@krizaka/ui/avatar";
2
+
3
+ // No image (or while it loads, or when it fails): the initials.
4
+ export default function AvatarFallback() {
5
+ return <Avatar fallback="OA" />;
6
+ }
@@ -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,20 @@
1
+ "use client";
2
+
3
+ // registry/examples/avatar/group.tsx
4
+ import { Avatar } from "@krizaka/ui/avatar";
5
+ import { jsx, jsxs } from "react/jsx-runtime";
6
+ var PORTRAIT = "data:image/svg+xml;utf8," + encodeURIComponent(
7
+ '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 80 80"><rect width="80" height="80" fill="#3b82f6"/><circle cx="40" cy="31" r="14" fill="#dbeafe"/><path d="M12 80a28 24 0 0 1 56 0z" fill="#dbeafe"/></svg>'
8
+ );
9
+ function AvatarGroup() {
10
+ return /* @__PURE__ */ jsxs(Avatar.Group, { max: 3, size: "sm", children: [
11
+ /* @__PURE__ */ jsx(Avatar, { size: "sm", src: PORTRAIT, alt: "Oussama" }),
12
+ /* @__PURE__ */ jsx(Avatar, { size: "sm", fallback: "LM" }),
13
+ /* @__PURE__ */ jsx(Avatar, { size: "sm", fallback: "SK" }),
14
+ /* @__PURE__ */ jsx(Avatar, { size: "sm", fallback: "JD" }),
15
+ /* @__PURE__ */ jsx(Avatar, { size: "sm", fallback: "AR" })
16
+ ] });
17
+ }
18
+ export {
19
+ AvatarGroup as default
20
+ };
@@ -0,0 +1,21 @@
1
+ import { Avatar } from "@krizaka/ui/avatar";
2
+
3
+ const PORTRAIT =
4
+ "data:image/svg+xml;utf8," +
5
+ encodeURIComponent(
6
+ '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 80 80"><rect width="80" height="80" fill="#3b82f6"/>' +
7
+ '<circle cx="40" cy="31" r="14" fill="#dbeafe"/><path d="M12 80a28 24 0 0 1 56 0z" fill="#dbeafe"/></svg>',
8
+ );
9
+
10
+ // `max={3}`: the others become `+n`.
11
+ export default function AvatarGroup() {
12
+ return (
13
+ <Avatar.Group max={3} size="sm">
14
+ <Avatar size="sm" src={PORTRAIT} alt="Oussama" />
15
+ <Avatar size="sm" fallback="LM" />
16
+ <Avatar size="sm" fallback="SK" />
17
+ <Avatar size="sm" fallback="JD" />
18
+ <Avatar size="sm" fallback="AR" />
19
+ </Avatar.Group>
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/avatar/native/group.tsx
4
+ import { Avatar } from "@krizaka/ui/native";
5
+ import { jsx, jsxs } from "react/jsx-runtime";
6
+ function NativeAvatarGroup() {
7
+ return /* @__PURE__ */ jsxs(Avatar.Group, { max: 3, size: "md", children: [
8
+ /* @__PURE__ */ jsx(Avatar, { alt: "Maya" }),
9
+ /* @__PURE__ */ jsx(Avatar, { alt: "Noor" }),
10
+ /* @__PURE__ */ jsx(Avatar, { alt: "Ines" }),
11
+ /* @__PURE__ */ jsx(Avatar, { alt: "Theo" }),
12
+ /* @__PURE__ */ jsx(Avatar, { alt: "Lou" })
13
+ ] });
14
+ }
15
+ export {
16
+ NativeAvatarGroup as default
17
+ };
@@ -0,0 +1,13 @@
1
+ import { Avatar } from "@krizaka/ui/native";
2
+
3
+ export default function NativeAvatarGroup() {
4
+ return (
5
+ <Avatar.Group max={3} size="md">
6
+ <Avatar alt="Maya" />
7
+ <Avatar alt="Noor" />
8
+ <Avatar alt="Ines" />
9
+ <Avatar alt="Theo" />
10
+ <Avatar alt="Lou" />
11
+ </Avatar.Group>
12
+ );
13
+ }
@@ -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,18 @@
1
+ "use client";
2
+
3
+ // registry/examples/avatar/native/sizes.tsx
4
+ import { Avatar } from "@krizaka/ui/native";
5
+ import { View } from "react-native";
6
+ import { jsx, jsxs } from "react/jsx-runtime";
7
+ function NativeAvatarSizes() {
8
+ return /* @__PURE__ */ jsxs(View, { style: { flexDirection: "row", alignItems: "center", gap: 8 }, children: [
9
+ /* @__PURE__ */ jsx(Avatar, { alt: "Maya", size: "xs" }),
10
+ /* @__PURE__ */ jsx(Avatar, { alt: "Maya", size: "sm" }),
11
+ /* @__PURE__ */ jsx(Avatar, { alt: "Maya", size: "md" }),
12
+ /* @__PURE__ */ jsx(Avatar, { alt: "Maya", size: "lg" }),
13
+ /* @__PURE__ */ jsx(Avatar, { alt: "Maya", size: "xl" })
14
+ ] });
15
+ }
16
+ export {
17
+ NativeAvatarSizes as default
18
+ };
@@ -0,0 +1,15 @@
1
+ import { Avatar } from "@krizaka/ui/native";
2
+ import { View } from "react-native";
3
+
4
+ // Without an image: the initial of `alt`.
5
+ export default function NativeAvatarSizes() {
6
+ return (
7
+ <View style={{ flexDirection: "row", alignItems: "center", gap: 8 }}>
8
+ <Avatar alt="Maya" size="xs" />
9
+ <Avatar alt="Maya" size="sm" />
10
+ <Avatar alt="Maya" size="md" />
11
+ <Avatar alt="Maya" size="lg" />
12
+ <Avatar alt="Maya" size="xl" />
13
+ </View>
14
+ );
15
+ }
@@ -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/avatar/sizes.tsx
4
+ import { Avatar } from "@krizaka/ui/avatar";
5
+ import { jsx, jsxs } from "react/jsx-runtime";
6
+ function AvatarSizes() {
7
+ return /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-3", children: [
8
+ /* @__PURE__ */ jsx(Avatar, { size: "xs", fallback: "OA" }),
9
+ /* @__PURE__ */ jsx(Avatar, { size: "sm", fallback: "OA" }),
10
+ /* @__PURE__ */ jsx(Avatar, { size: "md", fallback: "OA" }),
11
+ /* @__PURE__ */ jsx(Avatar, { size: "lg", fallback: "OA" }),
12
+ /* @__PURE__ */ jsx(Avatar, { size: "xl", fallback: "OA" })
13
+ ] });
14
+ }
15
+ export {
16
+ AvatarSizes as default
17
+ };
@@ -0,0 +1,13 @@
1
+ import { Avatar } from "@krizaka/ui/avatar";
2
+
3
+ export default function AvatarSizes() {
4
+ return (
5
+ <div className="flex items-center gap-3">
6
+ <Avatar size="xs" fallback="OA" />
7
+ <Avatar size="sm" fallback="OA" />
8
+ <Avatar size="md" fallback="OA" />
9
+ <Avatar size="lg" fallback="OA" />
10
+ <Avatar size="xl" fallback="OA" />
11
+ </div>
12
+ );
13
+ }
@@ -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;
@@ -1,14 +1,14 @@
1
1
  "use client";
2
2
 
3
- // registry/demos/avatar.tsx
3
+ // registry/examples/avatar/with-image.tsx
4
4
  import { Avatar } from "@krizaka/ui/avatar";
5
5
  import { jsx } from "react/jsx-runtime";
6
6
  var PORTRAIT = "data:image/svg+xml;utf8," + encodeURIComponent(
7
7
  '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 80 80"><rect width="80" height="80" fill="#3b82f6"/><circle cx="40" cy="31" r="14" fill="#dbeafe"/><path d="M12 80a28 24 0 0 1 56 0z" fill="#dbeafe"/></svg>'
8
8
  );
9
- function AvatarDemo() {
9
+ function AvatarWithImage() {
10
10
  return /* @__PURE__ */ jsx(Avatar, { src: PORTRAIT, alt: "Oussama", fallback: "OA" });
11
11
  }
12
12
  export {
13
- AvatarDemo as default
13
+ AvatarWithImage as default
14
14
  };