@krizaka/ui 2.8.0 → 2.10.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 (423) hide show
  1. package/README.md +73 -5
  2. package/dist/achievement.d.ts +54 -0
  3. package/dist/achievement.js +73 -0
  4. package/dist/achievement.js.map +1 -0
  5. package/dist/app-shell.d.ts +203 -0
  6. package/dist/app-shell.js +137 -0
  7. package/dist/app-shell.js.map +1 -0
  8. package/dist/auth-layout.d.ts +136 -0
  9. package/dist/auth-layout.js +75 -0
  10. package/dist/auth-layout.js.map +1 -0
  11. package/dist/blocks.css +247 -0
  12. package/dist/catalogue-page.d.ts +34 -0
  13. package/dist/catalogue-page.js +26 -0
  14. package/dist/catalogue-page.js.map +1 -0
  15. package/dist/changelog-page.d.ts +50 -0
  16. package/dist/changelog-page.js +27 -0
  17. package/dist/changelog-page.js.map +1 -0
  18. package/dist/choice-grid.d.ts +84 -0
  19. package/dist/choice-grid.js +141 -0
  20. package/dist/choice-grid.js.map +1 -0
  21. package/dist/chunk-555LWYIN.js +11 -0
  22. package/dist/chunk-555LWYIN.js.map +1 -0
  23. package/dist/chunk-AZPKXP3O.js +36 -0
  24. package/dist/chunk-AZPKXP3O.js.map +1 -0
  25. package/dist/{chunk-NOVUREEC.js → chunk-JZPVUJIX.js} +25 -3
  26. package/dist/chunk-JZPVUJIX.js.map +1 -0
  27. package/dist/chunk-KNBYZGSQ.js +11 -0
  28. package/dist/chunk-KNBYZGSQ.js.map +1 -0
  29. package/dist/chunk-VCAAHCHL.js +17 -0
  30. package/dist/chunk-VCAAHCHL.js.map +1 -0
  31. package/dist/code-block.js +23 -44
  32. package/dist/code-block.js.map +1 -1
  33. package/dist/component-page.d.ts +41 -0
  34. package/dist/component-page.js +17 -0
  35. package/dist/component-page.js.map +1 -0
  36. package/dist/contact-page.d.ts +31 -0
  37. package/dist/contact-page.js +26 -0
  38. package/dist/contact-page.js.map +1 -0
  39. package/dist/continue-prompt.d.ts +48 -0
  40. package/dist/continue-prompt.js +200 -0
  41. package/dist/continue-prompt.js.map +1 -0
  42. package/dist/dashboard-layout.d.ts +139 -0
  43. package/dist/dashboard-layout.js +68 -0
  44. package/dist/dashboard-layout.js.map +1 -0
  45. package/dist/detail-layout.d.ts +126 -0
  46. package/dist/detail-layout.js +48 -0
  47. package/dist/detail-layout.js.map +1 -0
  48. package/dist/docs-article-page.d.ts +54 -0
  49. package/dist/docs-article-page.js +29 -0
  50. package/dist/docs-article-page.js.map +1 -0
  51. package/dist/docs-hub-page.d.ts +72 -0
  52. package/dist/docs-hub-page.js +45 -0
  53. package/dist/docs-hub-page.js.map +1 -0
  54. package/dist/docs-layout.d.ts +78 -0
  55. package/dist/docs-layout.js +60 -0
  56. package/dist/docs-layout.js.map +1 -0
  57. package/dist/error-page.d.ts +22 -0
  58. package/dist/error-page.js +23 -0
  59. package/dist/error-page.js.map +1 -0
  60. package/dist/gallery-page.d.ts +50 -0
  61. package/dist/gallery-page.js +30 -0
  62. package/dist/gallery-page.js.map +1 -0
  63. package/dist/{geometry-CXrAW34x.d.ts → geometry-CbOU4rtL.d.ts} +4 -4
  64. package/dist/goal-gauge.d.ts +38 -0
  65. package/dist/goal-gauge.js +53 -0
  66. package/dist/goal-gauge.js.map +1 -0
  67. package/dist/how-it-works-page.d.ts +48 -0
  68. package/dist/how-it-works-page.js +28 -0
  69. package/dist/how-it-works-page.js.map +1 -0
  70. package/dist/index.d.ts +16 -6
  71. package/dist/index.js +115 -24
  72. package/dist/index.js.map +1 -1
  73. package/dist/landing-page.d.ts +58 -0
  74. package/dist/landing-page.js +42 -0
  75. package/dist/landing-page.js.map +1 -0
  76. package/dist/landscape.d.ts +41 -0
  77. package/dist/landscape.js +836 -0
  78. package/dist/landscape.js.map +1 -0
  79. package/dist/legal-page.d.ts +34 -0
  80. package/dist/legal-page.js +18 -0
  81. package/dist/legal-page.js.map +1 -0
  82. package/dist/longform-page.d.ts +42 -0
  83. package/dist/longform-page.js +29 -0
  84. package/dist/longform-page.js.map +1 -0
  85. package/dist/marketing-layout.d.ts +60 -0
  86. package/dist/marketing-layout.js +25 -0
  87. package/dist/marketing-layout.js.map +1 -0
  88. package/dist/mascot-quote.d.ts +4 -4
  89. package/dist/mascot-quote.js +23 -1
  90. package/dist/mascot-quote.js.map +1 -1
  91. package/dist/mascot-state.d.ts +2 -2
  92. package/dist/mascot-state.js +1 -1
  93. package/dist/mascot-state.js.map +1 -1
  94. package/dist/mascots.d.ts +18 -5
  95. package/dist/mascots.js +87 -2
  96. package/dist/mascots.js.map +1 -1
  97. package/dist/native.d.ts +88 -11
  98. package/dist/native.js +640 -297
  99. package/dist/native.js.map +1 -1
  100. package/dist/pricing-page.d.ts +62 -0
  101. package/dist/pricing-page.js +71 -0
  102. package/dist/pricing-page.js.map +1 -0
  103. package/dist/product-page.d.ts +83 -0
  104. package/dist/product-page.js +60 -0
  105. package/dist/product-page.js.map +1 -0
  106. package/dist/profile-card.d.ts +85 -0
  107. package/dist/profile-card.js +87 -0
  108. package/dist/profile-card.js.map +1 -0
  109. package/dist/promise-card.d.ts +28 -0
  110. package/dist/promise-card.js +29 -0
  111. package/dist/promise-card.js.map +1 -0
  112. package/dist/scroll-stage.d.ts +603 -0
  113. package/dist/scroll-stage.js +59 -0
  114. package/dist/scroll-stage.js.map +1 -0
  115. package/dist/settings-layout.d.ts +154 -0
  116. package/dist/settings-layout.js +57 -0
  117. package/dist/settings-layout.js.map +1 -0
  118. package/dist/split-view.d.ts +106 -0
  119. package/dist/split-view.js +41 -0
  120. package/dist/split-view.js.map +1 -0
  121. package/dist/stage-banner.d.ts +34 -0
  122. package/dist/stage-banner.js +26 -0
  123. package/dist/stage-banner.js.map +1 -0
  124. package/dist/status-page.d.ts +42 -0
  125. package/dist/status-page.js +28 -0
  126. package/dist/status-page.js.map +1 -0
  127. package/dist/story-variant-CLn4H5Nt.d.ts +4 -0
  128. package/dist/story.css +432 -0
  129. package/package.json +478 -10
  130. package/registry/achievement.json +322 -0
  131. package/registry/action-bar.json +1 -1
  132. package/registry/alert.json +1 -1
  133. package/registry/app-shell.json +451 -0
  134. package/registry/argument-card.json +1 -1
  135. package/registry/audio-player.json +1 -1
  136. package/registry/auth-layout.json +230 -0
  137. package/registry/avatar.json +1 -1
  138. package/registry/badge.json +1 -1
  139. package/registry/button.json +5 -5
  140. package/registry/card-grid.json +5 -5
  141. package/registry/card.json +3 -3
  142. package/registry/catalogue-page.json +240 -0
  143. package/registry/changelog-page.json +226 -0
  144. package/registry/checkbox.json +1 -1
  145. package/registry/chip-link.json +1 -1
  146. package/registry/chip.json +1 -1
  147. package/registry/choice-grid.json +318 -0
  148. package/registry/code-block.json +1 -1
  149. package/registry/combobox.json +1 -1
  150. package/registry/command.json +1 -1
  151. package/registry/component-page.json +227 -0
  152. package/registry/confirm-button.json +3 -3
  153. package/registry/contact-page.json +212 -0
  154. package/registry/continue-prompt.json +312 -0
  155. package/registry/countdown.json +1 -1
  156. package/registry/cta-panel.json +1 -1
  157. package/registry/dashboard-layout.json +273 -0
  158. package/registry/data-table.json +1 -1
  159. package/registry/date-picker.json +1 -1
  160. package/registry/decision-list.json +1 -1
  161. package/registry/detail-layout.json +233 -0
  162. package/registry/dialog.json +1 -1
  163. package/registry/docs-article-page.json +242 -0
  164. package/registry/docs-hub-page.json +270 -0
  165. package/registry/docs-layout.json +148 -0
  166. package/registry/dropdown-menu.json +3 -3
  167. package/registry/empty-state.json +1 -1
  168. package/registry/error-page.json +183 -0
  169. package/registry/examples/achievement/arcade.d.ts +4 -0
  170. package/registry/examples/achievement/arcade.js +15 -0
  171. package/registry/examples/achievement/arcade.tsx +12 -0
  172. package/registry/examples/achievement/milestones.d.ts +4 -0
  173. package/registry/examples/achievement/milestones.js +15 -0
  174. package/registry/examples/achievement/milestones.tsx +12 -0
  175. package/registry/examples/app-shell/admin-console.d.ts +4 -0
  176. package/registry/examples/app-shell/admin-console.js +52 -0
  177. package/registry/examples/app-shell/admin-console.tsx +64 -0
  178. package/registry/examples/app-shell/basic.d.ts +4 -0
  179. package/registry/examples/app-shell/basic.js +37 -0
  180. package/registry/examples/app-shell/basic.tsx +31 -0
  181. package/registry/examples/app-shell/orochia-studio.d.ts +4 -0
  182. package/registry/examples/app-shell/orochia-studio.js +89 -0
  183. package/registry/examples/app-shell/orochia-studio.tsx +101 -0
  184. package/registry/examples/auth-layout/onboarding.d.ts +4 -0
  185. package/registry/examples/auth-layout/onboarding.js +56 -0
  186. package/registry/examples/auth-layout/onboarding.tsx +47 -0
  187. package/registry/examples/auth-layout/sign-in.d.ts +4 -0
  188. package/registry/examples/auth-layout/sign-in.js +55 -0
  189. package/registry/examples/auth-layout/sign-in.tsx +47 -0
  190. package/registry/examples/auth-layout/verify.d.ts +4 -0
  191. package/registry/examples/auth-layout/verify.js +23 -0
  192. package/registry/examples/auth-layout/verify.tsx +19 -0
  193. package/registry/examples/catalogue-page/components.d.ts +4 -0
  194. package/registry/examples/catalogue-page/components.js +33 -0
  195. package/registry/examples/catalogue-page/components.tsx +36 -0
  196. package/registry/examples/changelog-page/releases.d.ts +4 -0
  197. package/registry/examples/changelog-page/releases.js +44 -0
  198. package/registry/examples/changelog-page/releases.tsx +39 -0
  199. package/registry/examples/choice-grid/line-up.d.ts +4 -0
  200. package/registry/examples/choice-grid/line-up.js +37 -0
  201. package/registry/examples/choice-grid/line-up.tsx +32 -0
  202. package/registry/examples/choice-grid/plans.d.ts +4 -0
  203. package/registry/examples/choice-grid/plans.js +28 -0
  204. package/registry/examples/choice-grid/plans.tsx +24 -0
  205. package/registry/examples/component-page/button.d.ts +4 -0
  206. package/registry/examples/component-page/button.js +33 -0
  207. package/registry/examples/component-page/button.tsx +30 -0
  208. package/registry/examples/contact-page/team.d.ts +4 -0
  209. package/registry/examples/contact-page/team.js +39 -0
  210. package/registry/examples/contact-page/team.tsx +38 -0
  211. package/registry/examples/continue-prompt/arcade.d.ts +4 -0
  212. package/registry/examples/continue-prompt/arcade.js +28 -0
  213. package/registry/examples/continue-prompt/arcade.tsx +25 -0
  214. package/registry/examples/continue-prompt/offer.d.ts +4 -0
  215. package/registry/examples/continue-prompt/offer.js +24 -0
  216. package/registry/examples/continue-prompt/offer.tsx +19 -0
  217. package/registry/examples/dashboard-layout/orazaka-eric.d.ts +4 -0
  218. package/registry/examples/dashboard-layout/orazaka-eric.js +58 -0
  219. package/registry/examples/dashboard-layout/orazaka-eric.tsx +80 -0
  220. package/registry/examples/dashboard-layout/widgets.d.ts +4 -0
  221. package/registry/examples/dashboard-layout/widgets.js +17 -0
  222. package/registry/examples/dashboard-layout/widgets.tsx +22 -0
  223. package/registry/examples/detail-layout/job.d.ts +4 -0
  224. package/registry/examples/detail-layout/job.js +25 -0
  225. package/registry/examples/detail-layout/job.tsx +20 -0
  226. package/registry/examples/detail-layout/video.d.ts +4 -0
  227. package/registry/examples/detail-layout/video.js +44 -0
  228. package/registry/examples/detail-layout/video.tsx +53 -0
  229. package/registry/examples/docs-article-page/cli.d.ts +4 -0
  230. package/registry/examples/docs-article-page/cli.js +33 -0
  231. package/registry/examples/docs-article-page/cli.tsx +38 -0
  232. package/registry/examples/docs-hub-page/krizaka.d.ts +4 -0
  233. package/registry/examples/docs-hub-page/krizaka.js +46 -0
  234. package/registry/examples/docs-hub-page/krizaka.tsx +37 -0
  235. package/registry/examples/docs-layout/page.d.ts +4 -0
  236. package/registry/examples/docs-layout/page.js +26 -0
  237. package/registry/examples/docs-layout/page.tsx +30 -0
  238. package/registry/examples/error-page/not-found.d.ts +4 -0
  239. package/registry/examples/error-page/not-found.js +24 -0
  240. package/registry/examples/error-page/not-found.tsx +19 -0
  241. package/registry/examples/gallery-page/made-here.d.ts +4 -0
  242. package/registry/examples/gallery-page/made-here.js +34 -0
  243. package/registry/examples/gallery-page/made-here.tsx +32 -0
  244. package/registry/examples/goal-gauge/arcade.d.ts +4 -0
  245. package/registry/examples/goal-gauge/arcade.js +11 -0
  246. package/registry/examples/goal-gauge/arcade.tsx +10 -0
  247. package/registry/examples/goal-gauge/challenge.d.ts +4 -0
  248. package/registry/examples/goal-gauge/challenge.js +11 -0
  249. package/registry/examples/goal-gauge/challenge.tsx +10 -0
  250. package/registry/examples/goal-gauge/drain.d.ts +4 -0
  251. package/registry/examples/goal-gauge/drain.js +11 -0
  252. package/registry/examples/goal-gauge/drain.tsx +10 -0
  253. package/registry/examples/goal-gauge/native/default.d.ts +4 -0
  254. package/registry/examples/goal-gauge/native/default.dark.png +0 -0
  255. package/registry/examples/goal-gauge/native/default.js +15 -0
  256. package/registry/examples/goal-gauge/native/default.light.png +0 -0
  257. package/registry/examples/goal-gauge/native/default.tsx +12 -0
  258. package/registry/examples/how-it-works-page/orazaka.d.ts +4 -0
  259. package/registry/examples/how-it-works-page/orazaka.js +30 -0
  260. package/registry/examples/how-it-works-page/orazaka.tsx +26 -0
  261. package/registry/examples/landing-page/krizaka.d.ts +4 -0
  262. package/registry/examples/landing-page/krizaka.js +44 -0
  263. package/registry/examples/landing-page/krizaka.tsx +44 -0
  264. package/registry/examples/landscape/backdrop.d.ts +4 -0
  265. package/registry/examples/landscape/backdrop.js +14 -0
  266. package/registry/examples/landscape/backdrop.tsx +11 -0
  267. package/registry/examples/landscape/brand.d.ts +4 -0
  268. package/registry/examples/landscape/brand.js +11 -0
  269. package/registry/examples/landscape/brand.tsx +10 -0
  270. package/registry/examples/legal-page/privacy.d.ts +4 -0
  271. package/registry/examples/legal-page/privacy.js +24 -0
  272. package/registry/examples/legal-page/privacy.tsx +19 -0
  273. package/registry/examples/longform-page/story.d.ts +4 -0
  274. package/registry/examples/longform-page/story.js +38 -0
  275. package/registry/examples/longform-page/story.tsx +35 -0
  276. package/registry/examples/marketing-layout/basic.d.ts +4 -0
  277. package/registry/examples/marketing-layout/basic.js +31 -0
  278. package/registry/examples/marketing-layout/basic.tsx +28 -0
  279. package/registry/examples/marketing-layout/docs-hub.d.ts +4 -0
  280. package/registry/examples/marketing-layout/docs-hub.js +37 -0
  281. package/registry/examples/marketing-layout/docs-hub.tsx +44 -0
  282. package/registry/examples/marketing-layout/pricing.d.ts +4 -0
  283. package/registry/examples/marketing-layout/pricing.js +45 -0
  284. package/registry/examples/marketing-layout/pricing.tsx +55 -0
  285. package/registry/examples/marketing-layout/product-page.d.ts +4 -0
  286. package/registry/examples/marketing-layout/product-page.js +79 -0
  287. package/registry/examples/marketing-layout/product-page.tsx +83 -0
  288. package/registry/examples/mascots/crane.d.ts +4 -0
  289. package/registry/examples/mascots/crane.js +19 -0
  290. package/registry/examples/mascots/crane.tsx +18 -0
  291. package/registry/examples/mascots/flock.tsx +2 -1
  292. package/registry/examples/mascots/native/crane.d.ts +4 -0
  293. package/registry/examples/mascots/native/crane.dark.png +0 -0
  294. package/registry/examples/mascots/native/crane.js +21 -0
  295. package/registry/examples/mascots/native/crane.light.png +0 -0
  296. package/registry/examples/mascots/native/crane.tsx +18 -0
  297. package/registry/examples/mascots/native/phoenix.d.ts +4 -0
  298. package/registry/examples/mascots/native/phoenix.dark.png +0 -0
  299. package/registry/examples/mascots/native/phoenix.js +21 -0
  300. package/registry/examples/mascots/native/phoenix.light.png +0 -0
  301. package/registry/examples/mascots/native/phoenix.tsx +18 -0
  302. package/registry/examples/mascots/phoenix.d.ts +4 -0
  303. package/registry/examples/mascots/phoenix.js +14 -0
  304. package/registry/examples/mascots/phoenix.tsx +11 -0
  305. package/registry/examples/pricing-page/credits.d.ts +4 -0
  306. package/registry/examples/pricing-page/credits.js +41 -0
  307. package/registry/examples/pricing-page/credits.tsx +33 -0
  308. package/registry/examples/product-page/orazaka.d.ts +4 -0
  309. package/registry/examples/product-page/orazaka.js +44 -0
  310. package/registry/examples/product-page/orazaka.tsx +36 -0
  311. package/registry/examples/profile-card/arcade.d.ts +4 -0
  312. package/registry/examples/profile-card/arcade.js +25 -0
  313. package/registry/examples/profile-card/arcade.tsx +19 -0
  314. package/registry/examples/profile-card/creator.d.ts +4 -0
  315. package/registry/examples/profile-card/creator.js +31 -0
  316. package/registry/examples/profile-card/creator.tsx +26 -0
  317. package/registry/examples/profile-card/match.d.ts +4 -0
  318. package/registry/examples/profile-card/match.js +25 -0
  319. package/registry/examples/profile-card/match.tsx +19 -0
  320. package/registry/examples/profile-card/native/default.d.ts +4 -0
  321. package/registry/examples/profile-card/native/default.dark.png +0 -0
  322. package/registry/examples/profile-card/native/default.js +27 -0
  323. package/registry/examples/profile-card/native/default.light.png +0 -0
  324. package/registry/examples/profile-card/native/default.tsx +22 -0
  325. package/registry/examples/promise-card/arcade.d.ts +4 -0
  326. package/registry/examples/promise-card/arcade.js +25 -0
  327. package/registry/examples/promise-card/arcade.tsx +19 -0
  328. package/registry/examples/promise-card/guarantee.d.ts +4 -0
  329. package/registry/examples/promise-card/guarantee.js +23 -0
  330. package/registry/examples/promise-card/guarantee.tsx +17 -0
  331. package/registry/examples/scroll-stage/arcade.d.ts +4 -0
  332. package/registry/examples/scroll-stage/arcade.js +16 -0
  333. package/registry/examples/scroll-stage/arcade.tsx +15 -0
  334. package/registry/examples/scroll-stage/chapters.d.ts +4 -0
  335. package/registry/examples/scroll-stage/chapters.js +25 -0
  336. package/registry/examples/scroll-stage/chapters.tsx +22 -0
  337. package/registry/examples/settings-layout/account.d.ts +4 -0
  338. package/registry/examples/settings-layout/account.js +51 -0
  339. package/registry/examples/settings-layout/account.tsx +50 -0
  340. package/registry/examples/settings-layout/sections.d.ts +4 -0
  341. package/registry/examples/settings-layout/sections.js +27 -0
  342. package/registry/examples/settings-layout/sections.tsx +24 -0
  343. package/registry/examples/split-view/empty.d.ts +4 -0
  344. package/registry/examples/split-view/empty.js +19 -0
  345. package/registry/examples/split-view/empty.tsx +13 -0
  346. package/registry/examples/split-view/messages.d.ts +4 -0
  347. package/registry/examples/split-view/messages.js +49 -0
  348. package/registry/examples/split-view/messages.tsx +52 -0
  349. package/registry/examples/stage-banner/round.d.ts +4 -0
  350. package/registry/examples/stage-banner/round.js +14 -0
  351. package/registry/examples/stage-banner/round.tsx +11 -0
  352. package/registry/examples/stage-banner/steps.d.ts +4 -0
  353. package/registry/examples/stage-banner/steps.js +14 -0
  354. package/registry/examples/stage-banner/steps.tsx +11 -0
  355. package/registry/examples/status-page/building.d.ts +4 -0
  356. package/registry/examples/status-page/building.js +29 -0
  357. package/registry/examples/status-page/building.tsx +25 -0
  358. package/registry/examples/status-page/operational.d.ts +4 -0
  359. package/registry/examples/status-page/operational.js +26 -0
  360. package/registry/examples/status-page/operational.tsx +20 -0
  361. package/registry/field.json +1 -1
  362. package/registry/file-upload.json +1 -1
  363. package/registry/filter-bar.json +1 -1
  364. package/registry/gallery-page.json +256 -0
  365. package/registry/glow-card.json +1 -1
  366. package/registry/goal-gauge.json +322 -0
  367. package/registry/how-it-works-page.json +242 -0
  368. package/registry/image-cropper.json +1 -1
  369. package/registry/index.json +621 -5
  370. package/registry/iso.json +1 -1
  371. package/registry/kbd.json +1 -1
  372. package/registry/landing-page.json +242 -0
  373. package/registry/landscape.json +189 -0
  374. package/registry/legal-page.json +199 -0
  375. package/registry/link-card.json +1 -1
  376. package/registry/loader.json +1 -1
  377. package/registry/longform-page.json +213 -0
  378. package/registry/marketing-layout.json +172 -0
  379. package/registry/marquee.json +1 -1
  380. package/registry/mascot-quote.json +6 -6
  381. package/registry/mascot-state.json +34 -34
  382. package/registry/mascots.json +140 -23
  383. package/registry/media-capture.json +1 -1
  384. package/registry/meter.json +1 -1
  385. package/registry/nav-bar.json +1 -1
  386. package/registry/number-ticker.json +1 -1
  387. package/registry/page-header.json +1 -1
  388. package/registry/page-hero.json +3 -3
  389. package/registry/page.json +5 -5
  390. package/registry/pagination.json +1 -1
  391. package/registry/pointer-light.json +1 -1
  392. package/registry/popover.json +1 -1
  393. package/registry/pricing-page.json +245 -0
  394. package/registry/product-page.json +319 -0
  395. package/registry/profile-card.json +501 -0
  396. package/registry/progress.json +1 -1
  397. package/registry/promise-card.json +228 -0
  398. package/registry/radio-group.json +1 -1
  399. package/registry/scroll-stage.json +197 -0
  400. package/registry/search-field.json +1 -1
  401. package/registry/section-backdrop.json +1 -1
  402. package/registry/separator.json +1 -1
  403. package/registry/settings-layout.json +231 -0
  404. package/registry/skeleton.json +1 -1
  405. package/registry/slider.json +1 -1
  406. package/registry/slot.json +1 -1
  407. package/registry/spinner.json +1 -1
  408. package/registry/split-view.json +233 -0
  409. package/registry/stage-banner.json +221 -0
  410. package/registry/stat.json +1 -1
  411. package/registry/status-page.json +263 -0
  412. package/registry/stepper.json +1 -1
  413. package/registry/switch.json +1 -1
  414. package/registry/tabs.json +1 -1
  415. package/registry/tag-input.json +1 -1
  416. package/registry/terminal-replay.json +1 -1
  417. package/registry/theme.json +1 -1
  418. package/registry/toast.json +1 -1
  419. package/registry/toc.json +1 -1
  420. package/registry/tooltip.json +1 -1
  421. package/registry/video-player.json +1 -1
  422. package/registry/video-trimmer.json +1 -1
  423. package/dist/chunk-NOVUREEC.js.map +0 -1
@@ -0,0 +1,38 @@
1
+ import * as React from 'react';
2
+ import { S as StoryVariant } from './story-variant-CLn4H5Nt.js';
3
+
4
+ type GoalGaugeProps = Omit<React.HTMLAttributes<HTMLDivElement>, "children"> & {
5
+ /** What the gauge counts (“Backers”, “Dares completed”) — passed translated; the meter's accessible name. */
6
+ label: string;
7
+ /** The number of steps of the goal (2–24). */
8
+ segments: number;
9
+ /**
10
+ * The steps reached (lit), from 0 to `segments`.
11
+ * @default segments
12
+ */
13
+ value?: number;
14
+ /** The value in words (“6 of 10”, “€420 raised”); default `value / segments`. */
15
+ valueText?: string;
16
+ /**
17
+ * How the scene plays it: `fill` lights the reached steps one by one; `drain` empties the spent ones (a countdown of
18
+ * what is left: tickets, lives, problems still standing).
19
+ * @default "fill"
20
+ */
21
+ mode?: "fill" | "drain";
22
+ /**
23
+ * Shows the label and the value above the segments.
24
+ * @default true
25
+ */
26
+ showLabel?: boolean;
27
+ /**
28
+ * `default`: rounded segments. `arcade`: the boss gauge — a skewed frame, gradient cells, a centred mono label.
29
+ * @default "default"
30
+ */
31
+ variant?: StoryVariant;
32
+ /** A brand scope (`orochia` → `.brand-orochia`). */
33
+ brand?: string;
34
+ };
35
+ /** A goal in steps: `role="meter"`, the reached steps lit, the value in words beside the label. */
36
+ declare function GoalGauge({ label, segments, value, valueText, mode, showLabel, variant, brand, className, style, ...props }: GoalGaugeProps): React.JSX.Element;
37
+
38
+ export { GoalGauge, type GoalGaugeProps };
@@ -0,0 +1,53 @@
1
+ import {
2
+ brandClass,
3
+ cn,
4
+ storyVariantClass
5
+ } from "./chunk-VCAAHCHL.js";
6
+
7
+ // src/goal-gauge/goal-gauge.tsx
8
+ import { jsx, jsxs } from "react/jsx-runtime";
9
+ function GoalGauge({ label, segments, value, valueText, mode = "fill", showLabel = true, variant, brand, className, style, ...props }) {
10
+ const total = Math.max(1, Math.round(segments));
11
+ const lit = Math.min(total, Math.max(0, Math.round(value ?? total)));
12
+ const words = valueText ?? `${lit} / ${total}`;
13
+ return /* @__PURE__ */ jsxs(
14
+ "div",
15
+ {
16
+ role: "meter",
17
+ "aria-label": label,
18
+ "aria-valuemin": 0,
19
+ "aria-valuemax": total,
20
+ "aria-valuenow": lit,
21
+ "aria-valuetext": words,
22
+ "data-mode": mode,
23
+ className: cn("kzs-gauge", storyVariantClass(variant), brandClass(brand), className),
24
+ style: { "--kzs-segments": total, ...style },
25
+ ...props,
26
+ children: [
27
+ showLabel && /* @__PURE__ */ jsxs("div", { className: "kzs-gauge-head", "aria-hidden": true, children: [
28
+ /* @__PURE__ */ jsx("span", { className: "kzs-gauge-label", children: label }),
29
+ /* @__PURE__ */ jsx("span", { className: "kzs-gauge-value", children: words })
30
+ ] }),
31
+ /* @__PURE__ */ jsx("div", { className: "kzs-gauge-cells", "aria-hidden": true, children: Array.from({ length: total }, (_, i) => {
32
+ const on = i < lit;
33
+ const animate = mode === "fill" ? on : !on;
34
+ const order = mode === "fill" ? i : i - lit;
35
+ return /* @__PURE__ */ jsx(
36
+ "span",
37
+ {
38
+ className: "kzs-gauge-cell",
39
+ "data-lit": on ? "" : void 0,
40
+ "data-animate": animate ? "" : void 0,
41
+ style: animate ? { "--i": order } : void 0
42
+ },
43
+ i
44
+ );
45
+ }) })
46
+ ]
47
+ }
48
+ );
49
+ }
50
+ export {
51
+ GoalGauge
52
+ };
53
+ //# sourceMappingURL=goal-gauge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/goal-gauge/goal-gauge.tsx"],"sourcesContent":["// Server-safe. A goal counted in steps (story.css): 6 of 10 backers, 3 of 5 dares done, 8 problems out of the way. A\n// `meter` with its value in words; in a `Scene` of a `ScrollStage` the segments light (or drain) one by one, once.\nimport type * as React from \"react\";\n\nimport { cn } from \"../cn\";\nimport { brandClass, type StoryVariant, storyVariantClass } from \"../story-variant\";\n\nexport type GoalGaugeProps = Omit<React.HTMLAttributes<HTMLDivElement>, \"children\"> & {\n /** What the gauge counts (“Backers”, “Dares completed”) — passed translated; the meter's accessible name. */\n label: string;\n /** The number of steps of the goal (2–24). */\n segments: number;\n /**\n * The steps reached (lit), from 0 to `segments`.\n * @default segments\n */\n value?: number;\n /** The value in words (“6 of 10”, “€420 raised”); default `value / segments`. */\n valueText?: string;\n /**\n * How the scene plays it: `fill` lights the reached steps one by one; `drain` empties the spent ones (a countdown of\n * what is left: tickets, lives, problems still standing).\n * @default \"fill\"\n */\n mode?: \"fill\" | \"drain\";\n /**\n * Shows the label and the value above the segments.\n * @default true\n */\n showLabel?: boolean;\n /**\n * `default`: rounded segments. `arcade`: the boss gauge — a skewed frame, gradient cells, a centred mono label.\n * @default \"default\"\n */\n variant?: StoryVariant;\n /** A brand scope (`orochia` → `.brand-orochia`). */\n brand?: string;\n};\n\n/** A goal in steps: `role=\"meter\"`, the reached steps lit, the value in words beside the label. */\nexport function GoalGauge({ label, segments, value, valueText, mode = \"fill\", showLabel = true, variant, brand, className, style, ...props }: GoalGaugeProps) {\n const total = Math.max(1, Math.round(segments));\n const lit = Math.min(total, Math.max(0, Math.round(value ?? total)));\n const words = valueText ?? `${lit} / ${total}`;\n return (\n <div\n role=\"meter\"\n aria-label={label}\n aria-valuemin={0}\n aria-valuemax={total}\n aria-valuenow={lit}\n aria-valuetext={words}\n data-mode={mode}\n className={cn(\"kzs-gauge\", storyVariantClass(variant), brandClass(brand), className)}\n style={{ \"--kzs-segments\": total, ...style } as React.CSSProperties}\n {...props}\n >\n {showLabel && (\n <div className=\"kzs-gauge-head\" aria-hidden>\n <span className=\"kzs-gauge-label\">{label}</span>\n <span className=\"kzs-gauge-value\">{words}</span>\n </div>\n )}\n <div className=\"kzs-gauge-cells\" aria-hidden>\n {Array.from({ length: total }, (_, i) => {\n const on = i < lit;\n const animate = mode === \"fill\" ? on : !on;\n const order = mode === \"fill\" ? i : i - lit;\n return (\n <span\n key={i}\n className=\"kzs-gauge-cell\"\n data-lit={on ? \"\" : undefined}\n data-animate={animate ? \"\" : undefined}\n style={animate ? ({ \"--i\": order } as React.CSSProperties) : undefined}\n />\n );\n })}\n </div>\n </div>\n );\n}\n"],"mappings":";;;;;;;AA0DQ,SACE,KADF;AAlBD,SAAS,UAAU,EAAE,OAAO,UAAU,OAAO,WAAW,OAAO,QAAQ,YAAY,MAAM,SAAS,OAAO,WAAW,OAAO,GAAG,MAAM,GAAmB;AAC5J,QAAM,QAAQ,KAAK,IAAI,GAAG,KAAK,MAAM,QAAQ,CAAC;AAC9C,QAAM,MAAM,KAAK,IAAI,OAAO,KAAK,IAAI,GAAG,KAAK,MAAM,SAAS,KAAK,CAAC,CAAC;AACnE,QAAM,QAAQ,aAAa,GAAG,GAAG,MAAM,KAAK;AAC5C,SACE;AAAA,IAAC;AAAA;AAAA,MACC,MAAK;AAAA,MACL,cAAY;AAAA,MACZ,iBAAe;AAAA,MACf,iBAAe;AAAA,MACf,iBAAe;AAAA,MACf,kBAAgB;AAAA,MAChB,aAAW;AAAA,MACX,WAAW,GAAG,aAAa,kBAAkB,OAAO,GAAG,WAAW,KAAK,GAAG,SAAS;AAAA,MACnF,OAAO,EAAE,kBAAkB,OAAO,GAAG,MAAM;AAAA,MAC1C,GAAG;AAAA,MAEH;AAAA,qBACC,qBAAC,SAAI,WAAU,kBAAiB,eAAW,MACzC;AAAA,8BAAC,UAAK,WAAU,mBAAmB,iBAAM;AAAA,UACzC,oBAAC,UAAK,WAAU,mBAAmB,iBAAM;AAAA,WAC3C;AAAA,QAEF,oBAAC,SAAI,WAAU,mBAAkB,eAAW,MACzC,gBAAM,KAAK,EAAE,QAAQ,MAAM,GAAG,CAAC,GAAG,MAAM;AACvC,gBAAM,KAAK,IAAI;AACf,gBAAM,UAAU,SAAS,SAAS,KAAK,CAAC;AACxC,gBAAM,QAAQ,SAAS,SAAS,IAAI,IAAI;AACxC,iBACE;AAAA,YAAC;AAAA;AAAA,cAEC,WAAU;AAAA,cACV,YAAU,KAAK,KAAK;AAAA,cACpB,gBAAc,UAAU,KAAK;AAAA,cAC7B,OAAO,UAAW,EAAE,OAAO,MAAM,IAA4B;AAAA;AAAA,YAJxD;AAAA,UAKP;AAAA,QAEJ,CAAC,GACH;AAAA;AAAA;AAAA,EACF;AAEJ;","names":[]}
@@ -0,0 +1,48 @@
1
+ import { LinkComponent } from '@krizaka/ui/page-hero';
2
+ import * as React from 'react';
3
+
4
+ interface HowStep {
5
+ /** A stable key (the step's anchor). */
6
+ id: string;
7
+ /** What happens, in a few words. */
8
+ title: React.ReactNode;
9
+ /** How, in two or three sentences. */
10
+ text: React.ReactNode;
11
+ /** Beside the words: a code block, a schema, a screen. */
12
+ visual?: React.ReactNode;
13
+ }
14
+ type HowItWorksPageProps = Omit<React.HTMLAttributes<HTMLElement>, "title"> & {
15
+ /** The brand the page wears (`.brand-<id>`). */
16
+ brand?: string;
17
+ /** The way back to the product. */
18
+ back?: {
19
+ href: string;
20
+ label: string;
21
+ };
22
+ /** A mono line above the title. */
23
+ eyebrow?: React.ReactNode;
24
+ /** The page's `h1`. */
25
+ title: React.ReactNode;
26
+ /** One or two sentences under it. */
27
+ lead?: React.ReactNode;
28
+ /** Beside the hero: the page's bird or an illustration. */
29
+ aside?: React.ReactNode;
30
+ /** The steps' accessible name (`The steps`). */
31
+ stepsLabel: string;
32
+ /** The steps, in order. */
33
+ steps: readonly HowStep[];
34
+ /** After the steps: architecture, guarantees, a module map. */
35
+ children?: React.ReactNode;
36
+ /** The closing call. */
37
+ closing?: {
38
+ title: React.ReactNode;
39
+ body?: React.ReactNode;
40
+ actions: React.ReactNode;
41
+ };
42
+ /** The app's link component (Next's `Link`). */
43
+ linkAs?: LinkComponent;
44
+ };
45
+ /** How a product works: the hero, a numbered timeline of steps with their visuals, then the details. */
46
+ declare function HowItWorksPage({ brand, back, eyebrow, title, lead, aside, stepsLabel, steps, closing, linkAs, className, children, ...props }: HowItWorksPageProps): React.JSX.Element;
47
+
48
+ export { HowItWorksPage, type HowItWorksPageProps, type HowStep };
@@ -0,0 +1,28 @@
1
+ import {
2
+ cn
3
+ } from "./chunk-KNBYZGSQ.js";
4
+
5
+ // src/how-it-works-page/how-it-works-page.tsx
6
+ import { CtaPanel } from "@krizaka/ui/cta-panel";
7
+ import { Section } from "@krizaka/ui/page";
8
+ import { PageHero } from "@krizaka/ui/page-hero";
9
+ import { jsx, jsxs } from "react/jsx-runtime";
10
+ function HowItWorksPage({ brand, back, eyebrow, title, lead, aside, stepsLabel, steps, closing, linkAs, className, children, ...props }) {
11
+ return /* @__PURE__ */ jsxs("div", { className: cn(brand && "brand-" + brand, className), ...props, children: [
12
+ /* @__PURE__ */ jsx(PageHero, { back, linkAs, eyebrow, title, lead, aside }),
13
+ /* @__PURE__ */ jsx(Section, { "aria-label": stepsLabel, children: /* @__PURE__ */ jsx("ol", { className: "kz-tpl-timeline", children: steps.map((step, i) => /* @__PURE__ */ jsxs("li", { id: step.id, className: "kz-tpl-step", "data-reveal": "", children: [
14
+ /* @__PURE__ */ jsx("span", { className: "kz-tpl-step-n", "aria-hidden": true, children: i + 1 }),
15
+ /* @__PURE__ */ jsxs("div", { className: "kz-tpl-step-text", children: [
16
+ /* @__PURE__ */ jsx("h2", { children: step.title }),
17
+ /* @__PURE__ */ jsx("p", { children: step.text })
18
+ ] }),
19
+ step.visual && /* @__PURE__ */ jsx("div", { className: "kz-tpl-step-visual", children: step.visual })
20
+ ] }, step.id)) }) }),
21
+ children,
22
+ closing && /* @__PURE__ */ jsx(Section, { spacing: "sm", "aria-labelledby": "how-closing", children: /* @__PURE__ */ jsx(CtaPanel, { id: "how-closing", title: closing.title, body: closing.body, reveal: true, children: closing.actions }) })
23
+ ] });
24
+ }
25
+ export {
26
+ HowItWorksPage
27
+ };
28
+ //# sourceMappingURL=how-it-works-page.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/how-it-works-page/how-it-works-page.tsx"],"sourcesContent":["// Server-safe. How a product works, told in steps (blocks.css `.kz-tpl-timeline`): the hero, then a numbered line\n// down the page — each step its words beside its visual (a command, a schema, a screen), the sides alternating on a\n// wide screen, one column on a phone — then what is under the hood and the closing call.\nimport { CtaPanel } from \"@krizaka/ui/cta-panel\";\nimport { Section } from \"@krizaka/ui/page\";\nimport type { LinkComponent } from \"@krizaka/ui/page-hero\";\nimport { PageHero } from \"@krizaka/ui/page-hero\";\nimport type * as React from \"react\";\n\nimport { cn } from \"../cn\";\n\nexport interface HowStep {\n /** A stable key (the step's anchor). */\n id: string;\n /** What happens, in a few words. */\n title: React.ReactNode;\n /** How, in two or three sentences. */\n text: React.ReactNode;\n /** Beside the words: a code block, a schema, a screen. */\n visual?: React.ReactNode;\n}\n\nexport type HowItWorksPageProps = Omit<React.HTMLAttributes<HTMLElement>, \"title\"> & {\n /** The brand the page wears (`.brand-<id>`). */\n brand?: string;\n /** The way back to the product. */\n back?: { href: string; label: string };\n /** A mono line above the title. */\n eyebrow?: React.ReactNode;\n /** The page's `h1`. */\n title: React.ReactNode;\n /** One or two sentences under it. */\n lead?: React.ReactNode;\n /** Beside the hero: the page's bird or an illustration. */\n aside?: React.ReactNode;\n /** The steps' accessible name (`The steps`). */\n stepsLabel: string;\n /** The steps, in order. */\n steps: readonly HowStep[];\n /** After the steps: architecture, guarantees, a module map. */\n children?: React.ReactNode;\n /** The closing call. */\n closing?: { title: React.ReactNode; body?: React.ReactNode; actions: React.ReactNode };\n /** The app's link component (Next's `Link`). */\n linkAs?: LinkComponent;\n};\n\n/** How a product works: the hero, a numbered timeline of steps with their visuals, then the details. */\nexport function HowItWorksPage({ brand, back, eyebrow, title, lead, aside, stepsLabel, steps, closing, linkAs, className, children, ...props }: HowItWorksPageProps) {\n return (\n <div className={cn(brand && \"brand-\" + brand, className)} {...props}>\n <PageHero back={back} linkAs={linkAs} eyebrow={eyebrow} title={title} lead={lead} aside={aside} />\n <Section aria-label={stepsLabel}>\n <ol className=\"kz-tpl-timeline\">\n {steps.map((step, i) => (\n <li key={step.id} id={step.id} className=\"kz-tpl-step\" data-reveal=\"\">\n <span className=\"kz-tpl-step-n\" aria-hidden>\n {i + 1}\n </span>\n <div className=\"kz-tpl-step-text\">\n <h2>{step.title}</h2>\n <p>{step.text}</p>\n </div>\n {step.visual && <div className=\"kz-tpl-step-visual\">{step.visual}</div>}\n </li>\n ))}\n </ol>\n </Section>\n {children}\n {closing && (\n <Section spacing=\"sm\" aria-labelledby=\"how-closing\">\n <CtaPanel id=\"how-closing\" title={closing.title} body={closing.body} reveal>\n {closing.actions}\n </CtaPanel>\n </Section>\n )}\n </div>\n );\n}\n"],"mappings":";;;;;AAGA,SAAS,gBAAgB;AACzB,SAAS,eAAe;AAExB,SAAS,gBAAgB;AA6CnB,cAQQ,YARR;AAHC,SAAS,eAAe,EAAE,OAAO,MAAM,SAAS,OAAO,MAAM,OAAO,YAAY,OAAO,SAAS,QAAQ,WAAW,UAAU,GAAG,MAAM,GAAwB;AACnK,SACE,qBAAC,SAAI,WAAW,GAAG,SAAS,WAAW,OAAO,SAAS,GAAI,GAAG,OAC5D;AAAA,wBAAC,YAAS,MAAY,QAAgB,SAAkB,OAAc,MAAY,OAAc;AAAA,IAChG,oBAAC,WAAQ,cAAY,YACnB,8BAAC,QAAG,WAAU,mBACX,gBAAM,IAAI,CAAC,MAAM,MAChB,qBAAC,QAAiB,IAAI,KAAK,IAAI,WAAU,eAAc,eAAY,IACjE;AAAA,0BAAC,UAAK,WAAU,iBAAgB,eAAW,MACxC,cAAI,GACP;AAAA,MACA,qBAAC,SAAI,WAAU,oBACb;AAAA,4BAAC,QAAI,eAAK,OAAM;AAAA,QAChB,oBAAC,OAAG,eAAK,MAAK;AAAA,SAChB;AAAA,MACC,KAAK,UAAU,oBAAC,SAAI,WAAU,sBAAsB,eAAK,QAAO;AAAA,SAR1D,KAAK,EASd,CACD,GACH,GACF;AAAA,IACC;AAAA,IACA,WACC,oBAAC,WAAQ,SAAQ,MAAK,mBAAgB,eACpC,8BAAC,YAAS,IAAG,eAAc,OAAO,QAAQ,OAAO,MAAM,QAAQ,MAAM,QAAM,MACxE,kBAAQ,SACX,GACF;AAAA,KAEJ;AAEJ;","names":[]}
package/dist/index.d.ts CHANGED
@@ -34,18 +34,28 @@ declare function OrazakaLogo({ size, animated, title, className }: MarkProps): R
34
34
  */
35
35
  declare function OrochiaLogo({ size, animated, title, className }: MarkProps): React.JSX.Element;
36
36
 
37
- type BrandId = "krizaka" | "orazaka" | "orochia" | "yazakia";
37
+ type BrandId = "krizaka" | "orazaka" | "orochia" | "yazakia" | "yororis";
38
38
  /** The mark of a Krizaka brand by id — for navigation, cards and lists driven by data. */
39
39
  declare function ProductLogo({ id, ...props }: MarkProps & {
40
40
  id: BrandId;
41
41
  }): React.JSX.Element;
42
42
 
43
43
  /**
44
- * The Yazakia mark: a "Y" drawn as two people who lean in and meet — two arms ending in round heads, joined at a
45
- * core that breathes, one stem below — in the Yazakia gradient (emerald → turquoise, the brand's mark gradient of
46
- * @krizaka/tokens, the same in dark and light). The pair, two nodes on the dashed orbit, turns slowly around it — the
47
- * family's grammar (orbit, ring, bold emblem, bright core). Below 48 px it crops to the emblem.
44
+ * The Yazakia mark: two voices — two solid speech bubbles that overlap, the left a shade deeper — in the Yazakia
45
+ * gradient (emerald → turquoise, the brand's mark gradient of @krizaka/tokens, the same in dark and light). Where they
46
+ * overlap, what the two share, is the bright core: a lens lit from above that breathes. The pair, two nodes on the
47
+ * dashed orbit, turns slowly around it — the family's grammar (orbit, ring, bold emblem, bright core). Below 48 px it
48
+ * crops to the emblem.
48
49
  */
49
50
  declare function YazakiaLogo({ size, animated, title, className }: MarkProps): React.JSX.Element;
50
51
 
51
- export { type BrandId, KrizakaLogo, type MarkProps, OrazakaLogo, OrochiaLogo, ProductLogo, YazakiaLogo, cx };
52
+ /**
53
+ * The Yororis mark, "the hold": a "Y" whose arms are two filled leaves — open hands — rising from one stem and cupping
54
+ * a warm core that breathes: held, given room, listened to. Leaves in the Yororis gradient (sand → sage, the brand's
55
+ * mark gradient of @krizaka/tokens, the same in dark and light), a vein of light along each, the core in a warm sand
56
+ * light; the moment, one node on the dashed orbit, comes round slowly. The family's grammar (orbit, ring, bold emblem,
57
+ * bright core) with the slowest breath of the family. Below 48 px it crops to the emblem.
58
+ */
59
+ declare function YororisLogo({ size, animated, title, className }: MarkProps): React.JSX.Element;
60
+
61
+ export { type BrandId, KrizakaLogo, type MarkProps, OrazakaLogo, OrochiaLogo, ProductLogo, YazakiaLogo, YororisLogo, cx };
package/dist/index.js CHANGED
@@ -52,6 +52,16 @@ var marks = /* @__PURE__ */ Object.freeze({
52
52
  "100%",
53
53
  "#089b96"
54
54
  ]
55
+ ],
56
+ "yororis": [
57
+ [
58
+ "0%",
59
+ "#a4773d"
60
+ ],
61
+ [
62
+ "100%",
63
+ "#5d894d"
64
+ ]
55
65
  ]
56
66
  });
57
67
 
@@ -263,21 +273,18 @@ var YAZAKIA = {
263
273
  viewBox: "0 0 400 400",
264
274
  croppedViewBox: "80 80 240 240",
265
275
  center: 200,
266
- /** The two arms, from each head to the core, mirrored around x = 200. */
267
- arms: ["M128 126 C130 178 168 206 200 214", "M272 126 C270 178 232 206 200 214"],
268
- /** The stem, from the core down. */
269
- stem: "M200 214 L200 280",
270
- /** The width of the arms and the stem: the weight of Orochia's body. */
271
- stroke: 36,
272
- /** The two heads, at the ends of the arms. */
273
- heads: [
274
- { cx: 128, cy: 124, r: 28 },
275
- { cx: 272, cy: 124, r: 28 }
276
+ /** The two voices, left then right: each a bubble (cut around the lens) and its tail. */
277
+ voices: [
278
+ { body: "M191.9 109 A80 80 0 1 0 191.9 259 A87 87 0 0 1 191.9 109 Z", tail: "M98 230 Q104 268 88 294 Q122 288 144 262 L130 200 Z" },
279
+ { body: "M208.1 109 A80 80 0 1 1 208.1 259 A87 87 0 0 0 208.1 109 Z", tail: "M302 230 Q296 268 312 294 Q278 288 256 262 L270 200 Z" }
276
280
  ],
281
+ /** The left voice, a shade deeper: the depth between the two. */
282
+ shade: { color: "#000", opacity: 0.22 },
283
+ /** Where the bubbles overlap: the core, lit from above. */
284
+ lens: { d: "M200 112.6 A80 80 0 0 1 200 255.4 A80 80 0 0 1 200 112.6 Z", y1: 112.6, y2: 255.4 },
277
285
  gradient: { x1: 110, y1: 300, x2: 290, y2: 100, stops: marks.yazakia },
278
- /** Where the arms meet: the core that breathes. */
279
- core: { cx: 200, cy: 214, r: 24, inner: 8.5 },
280
- highlight: "#f0fdfa",
286
+ /** The light on the lens: bright at the top, fading down. */
287
+ highlight: { color: "#f0fdfa", from: 0.75, to: 0.2 },
281
288
  /** The pair: two nodes on the orbit, opposite each other, that turn with it. */
282
289
  pair: { r: 8, at: [[40, 200], [360, 200]] },
283
290
  glow: { color: turquoise, opacity: 0.16 },
@@ -300,12 +307,16 @@ var CSS4 = `
300
307
  @media (prefers-reduced-motion: reduce) { .yzm-orbit, .yzm-core { animation: none; } }
301
308
  `;
302
309
  function YazakiaLogo({ size = 32, animated = true, title, className }) {
303
- const id = useIds("yzm", ["gradient", "glow"]);
310
+ const id = useIds("yzm", ["gradient", "light", "glow"]);
304
311
  const fill = `url(#${id.gradient})`;
305
312
  return /* @__PURE__ */ jsxs4("svg", { width: size, height: size, viewBox: size < 48 ? YAZAKIA.croppedViewBox : YAZAKIA.viewBox, fill: "none", xmlns: "http://www.w3.org/2000/svg", className, ...a11y(title), children: [
306
313
  /* @__PURE__ */ jsx4("style", { children: CSS4 }),
307
314
  /* @__PURE__ */ jsxs4("defs", { children: [
308
315
  /* @__PURE__ */ jsx4("linearGradient", { id: id.gradient, gradientUnits: "userSpaceOnUse", x1: YAZAKIA.gradient.x1, y1: YAZAKIA.gradient.y1, x2: YAZAKIA.gradient.x2, y2: YAZAKIA.gradient.y2, children: YAZAKIA.gradient.stops.map(([offset, color]) => /* @__PURE__ */ jsx4("stop", { offset, stopColor: color }, offset)) }),
316
+ /* @__PURE__ */ jsxs4("linearGradient", { id: id.light, gradientUnits: "userSpaceOnUse", x1: "0", y1: YAZAKIA.lens.y1, x2: "0", y2: YAZAKIA.lens.y2, children: [
317
+ /* @__PURE__ */ jsx4("stop", { offset: "0%", stopColor: YAZAKIA.highlight.color, stopOpacity: YAZAKIA.highlight.from }),
318
+ /* @__PURE__ */ jsx4("stop", { offset: "100%", stopColor: YAZAKIA.highlight.color, stopOpacity: YAZAKIA.highlight.to })
319
+ ] }),
309
320
  /* @__PURE__ */ jsxs4("radialGradient", { id: id.glow, cx: "50%", cy: "50%", r: "50%", children: [
310
321
  /* @__PURE__ */ jsx4("stop", { offset: "0%", stopColor: YAZAKIA.glow.color, stopOpacity: YAZAKIA.glow.opacity }),
311
322
  /* @__PURE__ */ jsx4("stop", { offset: "100%", stopColor: YAZAKIA.glow.color, stopOpacity: "0" })
@@ -317,23 +328,102 @@ function YazakiaLogo({ size = 32, animated = true, title, className }) {
317
328
  /* @__PURE__ */ jsx4("circle", { cx: YAZAKIA.center, cy: YAZAKIA.center, r: YAZAKIA.orbit.r, stroke: neutral("--kz-border-strong", 40), strokeWidth: YAZAKIA.orbit.width, strokeDasharray: YAZAKIA.orbit.dash, opacity: ".6" }),
318
329
  YAZAKIA.pair.at.map(([cx2, cy]) => /* @__PURE__ */ jsx4("circle", { cx: cx2, cy, r: YAZAKIA.pair.r, fill }, cx2))
319
330
  ] }),
320
- YAZAKIA.arms.map((d) => /* @__PURE__ */ jsx4("path", { d, stroke: fill, strokeWidth: YAZAKIA.stroke, strokeLinecap: "round" }, d)),
321
- /* @__PURE__ */ jsx4("path", { d: YAZAKIA.stem, stroke: fill, strokeWidth: YAZAKIA.stroke, strokeLinecap: "round" }),
322
- YAZAKIA.heads.map((h) => /* @__PURE__ */ jsx4("circle", { cx: h.cx, cy: h.cy, r: h.r, fill }, h.cx)),
331
+ YAZAKIA.voices.map((v, i) => /* @__PURE__ */ jsxs4("g", { children: [
332
+ /* @__PURE__ */ jsx4("path", { d: v.body, fill }),
333
+ /* @__PURE__ */ jsx4("path", { d: v.tail, fill }),
334
+ i === 0 ? /* @__PURE__ */ jsx4("path", { d: `${v.body} ${v.tail}`, fill: YAZAKIA.shade.color, opacity: YAZAKIA.shade.opacity }) : null
335
+ ] }, v.body)),
323
336
  /* @__PURE__ */ jsxs4("g", { className: animated ? "yzm-core" : void 0, children: [
324
- /* @__PURE__ */ jsx4("circle", { cx: YAZAKIA.core.cx, cy: YAZAKIA.core.cy, r: YAZAKIA.core.r, fill }),
325
- /* @__PURE__ */ jsx4("circle", { cx: YAZAKIA.core.cx, cy: YAZAKIA.core.cy, r: YAZAKIA.core.inner, fill: YAZAKIA.highlight })
337
+ /* @__PURE__ */ jsx4("path", { d: YAZAKIA.lens.d, fill }),
338
+ /* @__PURE__ */ jsx4("path", { d: YAZAKIA.lens.d, fill: `url(#${id.light})` })
339
+ ] })
340
+ ] });
341
+ }
342
+
343
+ // src/marks/yororis-geometry.ts
344
+ var sand = marks.yororis[0][1];
345
+ var sage = marks.yororis[marks.yororis.length - 1][1];
346
+ var YORORIS = {
347
+ viewBox: "0 0 400 400",
348
+ croppedViewBox: "80 80 240 240",
349
+ center: 200,
350
+ /** The two leaves — open hands, mirrored around x = 200 — filled, rising from the stem. */
351
+ leaves: [
352
+ "M200 262 C142 256 104 206 110 122 C138 130 154 152 160 180 C168 218 182 238 204 246 Z",
353
+ "M200 262 C258 256 296 206 290 122 C262 130 246 152 240 180 C232 218 218 238 196 246 Z"
354
+ ],
355
+ /** A vein of light along each leaf (dashed, it drifts slowly when animated). */
356
+ veins: "M122 142 C128 196 156 232 192 248 M278 142 C272 196 244 232 208 248",
357
+ vein: { color: "#fbf6ea", opacity: 0.45, width: 3, dash: "2 14" },
358
+ /** The stem, from the junction down. */
359
+ stem: "M200 244 L200 312",
360
+ stroke: 30,
361
+ gradient: { x1: 110, y1: 300, x2: 290, y2: 100, stops: marks.yororis },
362
+ /** The core's warm light: from the mark's sand (below) to a light sand (above). */
363
+ coreGradient: { stops: [["0%", sand], ["100%", "#e6c993"]] },
364
+ /** The core, held in the hollow of the leaves (not on the junction): the one who is listened to. It breathes. */
365
+ core: { cx: 200, cy: 184, r: 32, inner: 11 },
366
+ highlight: "#fbf6ea",
367
+ /** The moment: one node on the orbit, that turns with it. */
368
+ moment: { r: 9, at: [200, 40] },
369
+ glow: { color: sage, opacity: 0.18 },
370
+ /** The core's breathing shadow (web), in the core's warm sand. */
371
+ pulse: { color: sand, low: 0.3, high: 0.6 },
372
+ orbit: { r: 160, dash: "8 8", width: 1.5 },
373
+ ring: { r: 134, width: 1 }
374
+ };
375
+
376
+ // src/marks/YororisLogo.tsx
377
+ import { jsx as jsx5, jsxs as jsxs5 } from "react/jsx-runtime";
378
+ var CSS5 = `
379
+ .yrm-orbit { transform-origin: 200px 200px; animation: yrm-orbit 36s linear infinite; }
380
+ .yrm-vein { animation: yrm-vein 4.8s linear infinite; }
381
+ .yrm-core { transform-box: fill-box; transform-origin: center; animation: yrm-core 4.2s ease-in-out infinite; }
382
+ @keyframes yrm-orbit { to { transform: rotate(360deg); } }
383
+ @keyframes yrm-vein { to { stroke-dashoffset: 64; } }
384
+ @keyframes yrm-core {
385
+ 0%, 100% { filter: drop-shadow(0 0 6px ${withAlpha(YORORIS.pulse.color, YORORIS.pulse.low)}); opacity: .9; }
386
+ 50% { filter: drop-shadow(0 0 16px ${withAlpha(YORORIS.pulse.color, YORORIS.pulse.high)}); opacity: 1; }
387
+ }
388
+ @media (prefers-reduced-motion: reduce) { .yrm-orbit, .yrm-vein, .yrm-core { animation: none; } }
389
+ `;
390
+ function YororisLogo({ size = 32, animated = true, title, className }) {
391
+ const id = useIds("yrm", ["gradient", "core", "glow"]);
392
+ const fill = `url(#${id.gradient})`;
393
+ return /* @__PURE__ */ jsxs5("svg", { width: size, height: size, viewBox: size < 48 ? YORORIS.croppedViewBox : YORORIS.viewBox, fill: "none", xmlns: "http://www.w3.org/2000/svg", className, ...a11y(title), children: [
394
+ /* @__PURE__ */ jsx5("style", { children: CSS5 }),
395
+ /* @__PURE__ */ jsxs5("defs", { children: [
396
+ /* @__PURE__ */ jsx5("linearGradient", { id: id.gradient, gradientUnits: "userSpaceOnUse", x1: YORORIS.gradient.x1, y1: YORORIS.gradient.y1, x2: YORORIS.gradient.x2, y2: YORORIS.gradient.y2, children: YORORIS.gradient.stops.map(([offset, color]) => /* @__PURE__ */ jsx5("stop", { offset, stopColor: color }, offset)) }),
397
+ /* @__PURE__ */ jsx5("linearGradient", { id: id.core, x1: "50%", y1: "100%", x2: "50%", y2: "0%", children: YORORIS.coreGradient.stops.map(([offset, color]) => /* @__PURE__ */ jsx5("stop", { offset, stopColor: color }, offset)) }),
398
+ /* @__PURE__ */ jsxs5("radialGradient", { id: id.glow, cx: "50%", cy: "50%", r: "50%", children: [
399
+ /* @__PURE__ */ jsx5("stop", { offset: "0%", stopColor: YORORIS.glow.color, stopOpacity: YORORIS.glow.opacity }),
400
+ /* @__PURE__ */ jsx5("stop", { offset: "100%", stopColor: YORORIS.glow.color, stopOpacity: "0" })
401
+ ] })
402
+ ] }),
403
+ size >= 48 ? /* @__PURE__ */ jsx5("circle", { cx: YORORIS.center, cy: YORORIS.center, r: "190", fill: `url(#${id.glow})` }) : null,
404
+ /* @__PURE__ */ jsx5("circle", { cx: YORORIS.center, cy: YORORIS.center, r: YORORIS.ring.r, stroke: neutral("--kz-border-default", 30), strokeWidth: YORORIS.ring.width, opacity: ".35" }),
405
+ /* @__PURE__ */ jsxs5("g", { className: animated ? "yrm-orbit" : void 0, children: [
406
+ /* @__PURE__ */ jsx5("circle", { cx: YORORIS.center, cy: YORORIS.center, r: YORORIS.orbit.r, stroke: neutral("--kz-border-strong", 40), strokeWidth: YORORIS.orbit.width, strokeDasharray: YORORIS.orbit.dash, opacity: ".6" }),
407
+ /* @__PURE__ */ jsx5("circle", { cx: YORORIS.moment.at[0], cy: YORORIS.moment.at[1], r: YORORIS.moment.r, fill })
408
+ ] }),
409
+ /* @__PURE__ */ jsx5("path", { d: YORORIS.stem, stroke: fill, strokeWidth: YORORIS.stroke, strokeLinecap: "round" }),
410
+ YORORIS.leaves.map((d) => /* @__PURE__ */ jsx5("path", { d, fill }, d)),
411
+ /* @__PURE__ */ jsx5("path", { className: animated ? "yrm-vein" : void 0, d: YORORIS.veins, stroke: YORORIS.vein.color, strokeOpacity: YORORIS.vein.opacity, strokeWidth: YORORIS.vein.width, strokeLinecap: "round", strokeDasharray: YORORIS.vein.dash }),
412
+ /* @__PURE__ */ jsxs5("g", { className: animated ? "yrm-core" : void 0, children: [
413
+ /* @__PURE__ */ jsx5("circle", { cx: YORORIS.core.cx, cy: YORORIS.core.cy, r: YORORIS.core.r, fill: `url(#${id.core})` }),
414
+ /* @__PURE__ */ jsx5("circle", { cx: YORORIS.core.cx, cy: YORORIS.core.cy, r: YORORIS.core.inner, fill: YORORIS.highlight })
326
415
  ] })
327
416
  ] });
328
417
  }
329
418
 
330
419
  // src/marks/ProductLogo.tsx
331
- import { jsx as jsx5 } from "react/jsx-runtime";
420
+ import { jsx as jsx6 } from "react/jsx-runtime";
332
421
  function ProductLogo({ id, ...props }) {
333
- if (id === "krizaka") return /* @__PURE__ */ jsx5(KrizakaLogo, { ...props });
334
- if (id === "orazaka") return /* @__PURE__ */ jsx5(OrazakaLogo, { ...props });
335
- if (id === "yazakia") return /* @__PURE__ */ jsx5(YazakiaLogo, { ...props });
336
- return /* @__PURE__ */ jsx5(OrochiaLogo, { ...props });
422
+ if (id === "krizaka") return /* @__PURE__ */ jsx6(KrizakaLogo, { ...props });
423
+ if (id === "orazaka") return /* @__PURE__ */ jsx6(OrazakaLogo, { ...props });
424
+ if (id === "yazakia") return /* @__PURE__ */ jsx6(YazakiaLogo, { ...props });
425
+ if (id === "yororis") return /* @__PURE__ */ jsx6(YororisLogo, { ...props });
426
+ return /* @__PURE__ */ jsx6(OrochiaLogo, { ...props });
337
427
  }
338
428
  export {
339
429
  KrizakaLogo,
@@ -343,6 +433,7 @@ export {
343
433
  ProductLogo,
344
434
  RotatingWord,
345
435
  YazakiaLogo,
436
+ YororisLogo,
346
437
  cx
347
438
  };
348
439
  //# sourceMappingURL=index.js.map