@krizaka/ui 3.22.0 → 3.23.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 (447) hide show
  1. package/README.md +4 -0
  2. package/dist/achievement.js +1 -1
  3. package/dist/action-bar.js +4 -4
  4. package/dist/app-header.d.ts +79 -0
  5. package/dist/app-header.js +32 -0
  6. package/dist/app-header.js.map +1 -0
  7. package/dist/app-shell.d.ts +20 -2
  8. package/dist/app-shell.js +34 -19
  9. package/dist/app-shell.js.map +1 -1
  10. package/dist/argument-card.d.ts +4 -1
  11. package/dist/argument-card.js +10 -7
  12. package/dist/argument-card.js.map +1 -1
  13. package/dist/audio-player.d.ts +3 -2
  14. package/dist/audio-player.js +14 -10
  15. package/dist/audio-player.js.map +1 -1
  16. package/dist/blocks.css +28 -0
  17. package/dist/button.js +2 -1
  18. package/dist/captcha.d.ts +81 -0
  19. package/dist/captcha.js +162 -0
  20. package/dist/captcha.js.map +1 -0
  21. package/dist/card-grid.d.ts +10 -1
  22. package/dist/card-grid.js +3 -2
  23. package/dist/card-grid.js.map +1 -1
  24. package/dist/card.js +3 -3
  25. package/dist/changelog-page.d.ts +57 -3
  26. package/dist/changelog-page.js +117 -1
  27. package/dist/changelog-page.js.map +1 -1
  28. package/dist/choice-grid.js +1 -1
  29. package/dist/{chunk-3IN6TOPM.js → chunk-6ZYRUOTA.js} +6 -3
  30. package/dist/chunk-6ZYRUOTA.js.map +1 -0
  31. package/dist/chunk-APNIVNIX.js +54 -0
  32. package/dist/chunk-APNIVNIX.js.map +1 -0
  33. package/dist/{chunk-FKBHWS4N.js → chunk-CEJDH6SA.js} +2 -2
  34. package/dist/{chunk-OWC2LZD2.js → chunk-CHOJUCVE.js} +6 -3
  35. package/dist/chunk-CHOJUCVE.js.map +1 -0
  36. package/dist/{chunk-3BC4XQ6C.js → chunk-DZU6RMYD.js} +6 -3
  37. package/dist/chunk-DZU6RMYD.js.map +1 -0
  38. package/dist/{chunk-R6NK6ZNY.js → chunk-F7FVPPBB.js} +4 -4
  39. package/dist/{chunk-5Z7FWCV2.js → chunk-HBZPJ3EP.js} +2 -2
  40. package/dist/{chunk-C2BRIFJG.js → chunk-HJFRHYCI.js} +2 -2
  41. package/dist/{chunk-ZNMFG62E.js → chunk-KH3JOEPY.js} +3 -2
  42. package/dist/chunk-KH3JOEPY.js.map +1 -0
  43. package/dist/{chunk-BTMFZ66D.js → chunk-KM6VAKIE.js} +2 -2
  44. package/dist/{chunk-DGQMDJXK.js → chunk-LZNZLCOE.js} +2 -2
  45. package/dist/{chunk-AQSZJJAJ.js → chunk-MQPC3P4T.js} +2 -2
  46. package/dist/{chunk-2FRWNSRO.js → chunk-NSLXEDIS.js} +3 -2
  47. package/dist/chunk-NSLXEDIS.js.map +1 -0
  48. package/dist/{chunk-4LOMIQVX.js → chunk-W675RFOA.js} +3 -2
  49. package/dist/chunk-W675RFOA.js.map +1 -0
  50. package/dist/{chunk-G3ETON2A.js → chunk-WU4VLSEA.js} +3 -2
  51. package/dist/chunk-WU4VLSEA.js.map +1 -0
  52. package/dist/{chunk-IZ7MV6HM.js → chunk-XVFQZ3ZG.js} +3 -2
  53. package/dist/chunk-XVFQZ3ZG.js.map +1 -0
  54. package/dist/cn.js +1 -1
  55. package/dist/code-block.js +2 -2
  56. package/dist/code-block.js.map +1 -1
  57. package/dist/command.js +3 -3
  58. package/dist/comparison-table.js +1 -1
  59. package/dist/confirm-button.js +2 -2
  60. package/dist/continue-prompt.js +3 -3
  61. package/dist/continue-prompt.js.map +1 -1
  62. package/dist/cta-panel.js +1 -1
  63. package/dist/data-table.js +4 -4
  64. package/dist/date-picker.js +2 -2
  65. package/dist/decision-list.js +1 -1
  66. package/dist/dialog.js +3 -2
  67. package/dist/dialog.js.map +1 -1
  68. package/dist/docs-nav.d.ts +36 -0
  69. package/dist/docs-nav.js +44 -0
  70. package/dist/docs-nav.js.map +1 -0
  71. package/dist/dropdown-menu.js +1 -1
  72. package/dist/error-page.js +1 -1
  73. package/dist/field.js +1 -1
  74. package/dist/filter-bar.js +2 -2
  75. package/dist/force-update-screen.js +2 -1
  76. package/dist/force-update-screen.js.map +1 -1
  77. package/dist/gallery-page.js +1 -1
  78. package/dist/genui.d.ts +3 -1
  79. package/dist/genui.js +33 -6
  80. package/dist/genui.js.map +1 -1
  81. package/dist/glow-card.js +1 -1
  82. package/dist/goal-gauge.js +1 -1
  83. package/dist/how-it-works-page.js +1 -1
  84. package/dist/image-cropper.js +3 -3
  85. package/dist/index.js +3 -3
  86. package/dist/landscape.js +1 -1
  87. package/dist/link-card.d.ts +9 -2
  88. package/dist/link-card.js +5 -44
  89. package/dist/link-card.js.map +1 -1
  90. package/dist/longform-page.js +1 -1
  91. package/dist/maintenance-screen.js +2 -1
  92. package/dist/maintenance-screen.js.map +1 -1
  93. package/dist/map.js +3 -3
  94. package/dist/map.js.map +1 -1
  95. package/dist/markdown.js +2 -1
  96. package/dist/markdown.js.map +1 -1
  97. package/dist/marquee.js +1 -1
  98. package/dist/mascot-quote.js +1 -1
  99. package/dist/match-dialog.js +2 -1
  100. package/dist/match-dialog.js.map +1 -1
  101. package/dist/media-grid.d.ts +26 -4
  102. package/dist/media-grid.js +144 -77
  103. package/dist/media-grid.js.map +1 -1
  104. package/dist/native/map.js +3 -3
  105. package/dist/native/map.js.map +1 -1
  106. package/dist/native.d.ts +18 -1
  107. package/dist/native.js +105 -24
  108. package/dist/native.js.map +1 -1
  109. package/dist/nav-bar.js +1 -1
  110. package/dist/page-hero.js +6 -6
  111. package/dist/page.js +2 -2
  112. package/dist/popover.js +1 -1
  113. package/dist/pricing-page.js +1 -1
  114. package/dist/product-page.js +1 -1
  115. package/dist/profile-card.js +1 -1
  116. package/dist/promise-card.js +1 -1
  117. package/dist/radio-group.js +2 -2
  118. package/dist/rail-nav.d.ts +149 -0
  119. package/dist/rail-nav.js +177 -0
  120. package/dist/rail-nav.js.map +1 -0
  121. package/dist/scroll-stage.js +1 -1
  122. package/dist/settings-layout.d.ts +75 -62
  123. package/dist/settings-layout.js +39 -6
  124. package/dist/settings-layout.js.map +1 -1
  125. package/dist/showcase.js +1 -1
  126. package/dist/site-footer.d.ts +48 -67
  127. package/dist/site-footer.js +34 -10
  128. package/dist/site-footer.js.map +1 -1
  129. package/dist/slider.js +2 -2
  130. package/dist/stage-banner.js +1 -1
  131. package/dist/step-showcase.js +1 -1
  132. package/dist/tabs.js +1 -1
  133. package/dist/tabs.js.map +1 -1
  134. package/dist/terminal-replay.js +1 -1
  135. package/dist/theme.js +2 -1
  136. package/dist/theme.js.map +1 -1
  137. package/dist/toast.js +1 -1
  138. package/dist/toc.js +1 -1
  139. package/dist/tooltip.js +1 -1
  140. package/dist/update-prompt.js +2 -1
  141. package/dist/update-prompt.js.map +1 -1
  142. package/dist/vertical-video.js +2 -2
  143. package/dist/video-player.js +3 -3
  144. package/dist/waveform.d.ts +93 -0
  145. package/dist/waveform.js +95 -0
  146. package/dist/waveform.js.map +1 -0
  147. package/package.json +81 -10
  148. package/registry/achievement.json +1 -1
  149. package/registry/action-bar.json +1 -1
  150. package/registry/activity-feed.json +1 -1
  151. package/registry/alert.json +1 -1
  152. package/registry/app-header.json +202 -0
  153. package/registry/app-shell.json +33 -9
  154. package/registry/argument-card.json +37 -5
  155. package/registry/audio-player.json +5 -3
  156. package/registry/auth-layout.json +1 -1
  157. package/registry/avatar.json +1 -1
  158. package/registry/badge.json +1 -1
  159. package/registry/button.json +3 -2
  160. package/registry/captcha.json +300 -0
  161. package/registry/card-grid.json +27 -3
  162. package/registry/card.json +1 -1
  163. package/registry/catalogue-page.json +1 -1
  164. package/registry/changelog-page.json +11 -7
  165. package/registry/chat.json +1 -1
  166. package/registry/checkbox.json +1 -1
  167. package/registry/chip-link.json +1 -1
  168. package/registry/chip.json +1 -1
  169. package/registry/choice-grid.json +1 -1
  170. package/registry/cn.json +1 -1
  171. package/registry/code-block.json +1 -1
  172. package/registry/combobox.json +1 -1
  173. package/registry/command.json +1 -1
  174. package/registry/comparison-table.json +1 -1
  175. package/registry/component-page.json +1 -1
  176. package/registry/confirm-button.json +1 -1
  177. package/registry/contact-page.json +1 -1
  178. package/registry/continue-prompt.json +1 -1
  179. package/registry/countdown.json +1 -1
  180. package/registry/cta-panel.json +1 -1
  181. package/registry/dashboard-layout.json +1 -1
  182. package/registry/data-table.json +1 -1
  183. package/registry/date-picker.json +1 -1
  184. package/registry/decision-list.json +1 -1
  185. package/registry/description-list.json +1 -1
  186. package/registry/detail-layout.json +1 -1
  187. package/registry/dialog.json +1 -1
  188. package/registry/docs-article-page.json +1 -1
  189. package/registry/docs-hub-page.json +1 -1
  190. package/registry/docs-layout.json +1 -1
  191. package/registry/docs-nav.json +177 -0
  192. package/registry/document-viewer.json +1 -1
  193. package/registry/dropdown-menu.json +1 -1
  194. package/registry/empty-state.json +1 -1
  195. package/registry/error-page.json +1 -1
  196. package/registry/examples/activity-feed/native/notifications.light.png +0 -0
  197. package/registry/examples/app-header/basic.d.ts +4 -0
  198. package/registry/examples/app-header/basic.js +23 -0
  199. package/registry/examples/app-header/basic.tsx +17 -0
  200. package/registry/examples/app-shell/desktop.d.ts +4 -0
  201. package/registry/examples/app-shell/desktop.js +41 -0
  202. package/registry/examples/app-shell/desktop.tsx +37 -0
  203. package/registry/examples/argument-card/hover-light.d.ts +4 -0
  204. package/registry/examples/argument-card/hover-light.js +17 -0
  205. package/registry/examples/argument-card/hover-light.tsx +19 -0
  206. package/registry/examples/argument-card/hover-quiet.d.ts +4 -0
  207. package/registry/examples/argument-card/hover-quiet.js +17 -0
  208. package/registry/examples/argument-card/hover-quiet.tsx +19 -0
  209. package/registry/examples/avatar/native/group.light.png +0 -0
  210. package/registry/examples/avatar/native/presence.light.png +0 -0
  211. package/registry/examples/avatar/native/sizes.light.png +0 -0
  212. package/registry/examples/badge/native/tones.light.png +0 -0
  213. package/registry/examples/button/native/ghost.light.png +0 -0
  214. package/registry/examples/captcha/disclosure.d.ts +4 -0
  215. package/registry/examples/captcha/disclosure.js +14 -0
  216. package/registry/examples/captcha/disclosure.tsx +11 -0
  217. package/registry/examples/captcha/form.d.ts +4 -0
  218. package/registry/examples/captcha/form.js +18 -0
  219. package/registry/examples/captcha/form.tsx +17 -0
  220. package/registry/examples/card/native/body.light.png +0 -0
  221. package/registry/examples/card/native/default.light.png +0 -0
  222. package/registry/examples/card/native/elevated.light.png +0 -0
  223. package/registry/examples/card/native/pressable.light.png +0 -0
  224. package/registry/examples/card-grid/hover-quiet.d.ts +4 -0
  225. package/registry/examples/card-grid/hover-quiet.js +18 -0
  226. package/registry/examples/card-grid/hover-quiet.tsx +20 -0
  227. package/registry/examples/changelog-page/releases.js +1 -1
  228. package/registry/examples/changelog-page/releases.tsx +1 -1
  229. package/registry/examples/chat/native/conversation.light.png +0 -0
  230. package/registry/examples/chat/native/inbox.light.png +0 -0
  231. package/registry/examples/chip/native/multiple.light.png +0 -0
  232. package/registry/examples/chip/native/removable.light.png +0 -0
  233. package/registry/examples/chip/native/single.light.png +0 -0
  234. package/registry/examples/chip/native/toggle.light.png +0 -0
  235. package/registry/examples/combobox/native/multiple.light.png +0 -0
  236. package/registry/examples/combobox/native/search.light.png +0 -0
  237. package/registry/examples/countdown/native/days.light.png +0 -0
  238. package/registry/examples/countdown/native/hours.light.png +0 -0
  239. package/registry/examples/countdown/native/sizes.light.png +0 -0
  240. package/registry/examples/countdown/native/urgent.light.png +0 -0
  241. package/registry/examples/countdown/native/with-label.light.png +0 -0
  242. package/registry/examples/date-picker/native/birth-date-wheel.light.png +0 -0
  243. package/registry/examples/date-picker/native/birth-date.light.png +0 -0
  244. package/registry/examples/date-picker/native/calendar.dark.png +0 -0
  245. package/registry/examples/date-picker/native/calendar.light.png +0 -0
  246. package/registry/examples/date-picker/native/day-strip.dark.png +0 -0
  247. package/registry/examples/date-picker/native/day-strip.light.png +0 -0
  248. package/registry/examples/date-picker/native/time-slots.dark.png +0 -0
  249. package/registry/examples/date-picker/native/time-slots.light.png +0 -0
  250. package/registry/examples/date-picker/native/time-wheel.light.png +0 -0
  251. package/registry/examples/description-list/native/job-details.light.png +0 -0
  252. package/registry/examples/docs-nav/groups.d.ts +4 -0
  253. package/registry/examples/docs-nav/groups.js +21 -0
  254. package/registry/examples/docs-nav/groups.tsx +15 -0
  255. package/registry/examples/empty-state/native/default.light.png +0 -0
  256. package/registry/examples/field/native/default.light.png +0 -0
  257. package/registry/examples/field/native/select.light.png +0 -0
  258. package/registry/examples/force-update-screen/native/default.light.png +0 -0
  259. package/registry/examples/form/native/amount.light.png +0 -0
  260. package/registry/examples/form/native/audience.light.png +0 -0
  261. package/registry/examples/form/native/profile.light.png +0 -0
  262. package/registry/examples/form/native/settings.light.png +0 -0
  263. package/registry/examples/form/native/sign-up.light.png +0 -0
  264. package/registry/examples/form/native/upload.dark.png +0 -0
  265. package/registry/examples/form/native/upload.light.png +0 -0
  266. package/registry/examples/goal-gauge/native/default.light.png +0 -0
  267. package/registry/examples/header/native/large-title.light.png +0 -0
  268. package/registry/examples/link-card/hover-light.d.ts +4 -0
  269. package/registry/examples/link-card/hover-light.js +18 -0
  270. package/registry/examples/link-card/hover-light.tsx +20 -0
  271. package/registry/examples/link-card/hover-quiet.d.ts +4 -0
  272. package/registry/examples/link-card/hover-quiet.js +18 -0
  273. package/registry/examples/link-card/hover-quiet.tsx +20 -0
  274. package/registry/examples/loader/native/job-wait.light.png +0 -0
  275. package/registry/examples/maintenance-screen/native/default.light.png +0 -0
  276. package/registry/examples/map/native/places.light.png +0 -0
  277. package/registry/examples/markdown/native/basic.light.png +0 -0
  278. package/registry/examples/mascot-state/native/default.light.png +0 -0
  279. package/registry/examples/media-picker/native/story.light.png +0 -0
  280. package/registry/examples/meta-row/native/video.light.png +0 -0
  281. package/registry/examples/meter/native/credits.light.png +0 -0
  282. package/registry/examples/meter/native/split-ring.light.png +0 -0
  283. package/registry/examples/number-ticker/native/balance.light.png +0 -0
  284. package/registry/examples/onboarding/native/first-launch.light.png +0 -0
  285. package/registry/examples/otp-input/native/verify.light.png +0 -0
  286. package/registry/examples/pagination/native/cursor.light.png +0 -0
  287. package/registry/examples/pagination/native/pages.light.png +0 -0
  288. package/registry/examples/permission-prompt/native/blocked.light.png +0 -0
  289. package/registry/examples/permission-prompt/native/camera.light.png +0 -0
  290. package/registry/examples/profile-card/native/default.light.png +0 -0
  291. package/registry/examples/radio-group/native/buttons.light.png +0 -0
  292. package/registry/examples/radio-group/native/cards.light.png +0 -0
  293. package/registry/examples/radio-group/native/list.light.png +0 -0
  294. package/registry/examples/radio-group/native/segmented.light.png +0 -0
  295. package/registry/examples/rail-nav/expandable.d.ts +4 -0
  296. package/registry/examples/rail-nav/expandable.js +34 -0
  297. package/registry/examples/rail-nav/expandable.tsx +28 -0
  298. package/registry/examples/rail-nav/studio.d.ts +4 -0
  299. package/registry/examples/rail-nav/studio.js +43 -0
  300. package/registry/examples/rail-nav/studio.tsx +38 -0
  301. package/registry/examples/screen/native/app-shell.light.png +0 -0
  302. package/registry/examples/screen/native/auth.light.png +0 -0
  303. package/registry/examples/screen/native/map.light.png +0 -0
  304. package/registry/examples/screen/native/notifications.light.png +0 -0
  305. package/registry/examples/screen/native/profile.light.png +0 -0
  306. package/registry/examples/segmented/native/default.light.png +0 -0
  307. package/registry/examples/segmented/native/small.light.png +0 -0
  308. package/registry/examples/settings-layout/flat.d.ts +4 -0
  309. package/registry/examples/settings-layout/flat.js +26 -0
  310. package/registry/examples/settings-layout/flat.tsx +30 -0
  311. package/registry/examples/showcase/native/slides.light.png +0 -0
  312. package/registry/examples/site-footer/app.d.ts +4 -0
  313. package/registry/examples/site-footer/app.js +25 -0
  314. package/registry/examples/site-footer/app.tsx +22 -0
  315. package/registry/examples/site-footer/docs.d.ts +4 -0
  316. package/registry/examples/site-footer/docs.js +31 -0
  317. package/registry/examples/site-footer/docs.tsx +24 -0
  318. package/registry/examples/slider/native/default.light.png +0 -0
  319. package/registry/examples/slider/native/stepped.light.png +0 -0
  320. package/registry/examples/step-progress/native/sign-up.light.png +0 -0
  321. package/registry/examples/stepper/native/run.light.png +0 -0
  322. package/registry/examples/swipeable-row/native/conversation.light.png +0 -0
  323. package/registry/examples/switch/native/settings.light.png +0 -0
  324. package/registry/examples/tab-bar/native/main-sections.light.png +0 -0
  325. package/registry/examples/tabs/native/sections.light.png +0 -0
  326. package/registry/examples/tabs/native/segmented.light.png +0 -0
  327. package/registry/examples/tag-selector/native/interests.light.png +0 -0
  328. package/registry/examples/toast/native/tones.light.png +0 -0
  329. package/registry/examples/txt/native/tones.dark.png +0 -0
  330. package/registry/examples/txt/native/tones.light.png +0 -0
  331. package/registry/examples/update-prompt/native/default.light.png +0 -0
  332. package/registry/examples/waveform/card.d.ts +4 -0
  333. package/registry/examples/waveform/card.js +18 -0
  334. package/registry/examples/waveform/card.tsx +16 -0
  335. package/registry/examples/waveform/native/card.d.ts +4 -0
  336. package/registry/examples/waveform/native/card.dark.png +0 -0
  337. package/registry/examples/waveform/native/card.js +19 -0
  338. package/registry/examples/waveform/native/card.light.png +0 -0
  339. package/registry/examples/waveform/native/card.tsx +19 -0
  340. package/registry/examples/waveform/sizes.d.ts +4 -0
  341. package/registry/examples/waveform/sizes.js +16 -0
  342. package/registry/examples/waveform/sizes.tsx +14 -0
  343. package/registry/field.json +1 -1
  344. package/registry/file-upload.json +1 -1
  345. package/registry/filter-bar.json +1 -1
  346. package/registry/force-update-screen.json +1 -1
  347. package/registry/form.json +1 -1
  348. package/registry/gallery-page.json +1 -1
  349. package/registry/genui.json +3 -3
  350. package/registry/glow-card.json +1 -1
  351. package/registry/goal-gauge.json +1 -1
  352. package/registry/how-it-works-page.json +1 -1
  353. package/registry/image-cropper.json +1 -1
  354. package/registry/index.json +197 -14
  355. package/registry/iso.json +1 -1
  356. package/registry/kanban.json +1 -1
  357. package/registry/kbd.json +1 -1
  358. package/registry/landing-page.json +1 -1
  359. package/registry/landscape.json +1 -1
  360. package/registry/legal-page.json +1 -1
  361. package/registry/link-card.json +38 -6
  362. package/registry/list.json +1 -1
  363. package/registry/loader.json +1 -1
  364. package/registry/longform-page.json +1 -1
  365. package/registry/maintenance-screen.json +1 -1
  366. package/registry/map.json +2 -2
  367. package/registry/markdown.json +1 -1
  368. package/registry/marketing-layout.json +1 -1
  369. package/registry/marquee.json +1 -1
  370. package/registry/mascot-quote.json +1 -1
  371. package/registry/mascot-state.json +1 -1
  372. package/registry/mascots.json +1 -1
  373. package/registry/match-dialog.json +1 -1
  374. package/registry/media-capture.json +1 -1
  375. package/registry/media-grid.json +92 -6
  376. package/registry/meta-row.json +1 -1
  377. package/registry/meter.json +1 -1
  378. package/registry/nav-bar.json +2 -2
  379. package/registry/number-ticker.json +1 -1
  380. package/registry/page-header.json +1 -1
  381. package/registry/page-hero.json +1 -1
  382. package/registry/page.json +1 -1
  383. package/registry/pagination.json +1 -1
  384. package/registry/photo-grid.json +1 -1
  385. package/registry/pointer-light.json +1 -1
  386. package/registry/popover.json +1 -1
  387. package/registry/pricing-page.json +1 -1
  388. package/registry/product-page.json +1 -1
  389. package/registry/profile-card.json +1 -1
  390. package/registry/progress.json +1 -1
  391. package/registry/promise-card.json +1 -1
  392. package/registry/radio-group.json +1 -1
  393. package/registry/rail-nav.json +493 -0
  394. package/registry/recipes.json +1 -1
  395. package/registry/scroll-stage.json +1 -1
  396. package/registry/search-field.json +1 -1
  397. package/registry/section-backdrop.json +1 -1
  398. package/registry/separator.json +1 -1
  399. package/registry/settings-layout.json +104 -9
  400. package/registry/showcase.json +1 -1
  401. package/registry/site-footer.json +38 -6
  402. package/registry/sites.json +1 -1
  403. package/registry/skeleton.json +1 -1
  404. package/registry/skip-link.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 +1 -1
  409. package/registry/stage-banner.json +1 -1
  410. package/registry/stat.json +1 -1
  411. package/registry/status-page.json +1 -1
  412. package/registry/step-progress.json +1 -1
  413. package/registry/step-showcase.json +1 -1
  414. package/registry/stepper.json +1 -1
  415. package/registry/swipe-deck.json +1 -1
  416. package/registry/switch.json +1 -1
  417. package/registry/tabs.json +2 -2
  418. package/registry/tag-input.json +1 -1
  419. package/registry/tag-selector.json +1 -1
  420. package/registry/terminal-replay.json +1 -1
  421. package/registry/theme.json +1 -1
  422. package/registry/toast.json +1 -1
  423. package/registry/toc.json +1 -1
  424. package/registry/tooltip.json +1 -1
  425. package/registry/tree-view.json +1 -1
  426. package/registry/update-prompt.json +1 -1
  427. package/registry/verified-badge.json +1 -1
  428. package/registry/vertical-video.json +1 -1
  429. package/registry/video-player.json +1 -1
  430. package/registry/video-trimmer.json +1 -1
  431. package/registry/virtual.json +1 -1
  432. package/registry/waveform.json +296 -0
  433. package/dist/chunk-2FRWNSRO.js.map +0 -1
  434. package/dist/chunk-3BC4XQ6C.js.map +0 -1
  435. package/dist/chunk-3IN6TOPM.js.map +0 -1
  436. package/dist/chunk-4LOMIQVX.js.map +0 -1
  437. package/dist/chunk-G3ETON2A.js.map +0 -1
  438. package/dist/chunk-IZ7MV6HM.js.map +0 -1
  439. package/dist/chunk-OWC2LZD2.js.map +0 -1
  440. package/dist/chunk-ZNMFG62E.js.map +0 -1
  441. /package/dist/{chunk-FKBHWS4N.js.map → chunk-CEJDH6SA.js.map} +0 -0
  442. /package/dist/{chunk-R6NK6ZNY.js.map → chunk-F7FVPPBB.js.map} +0 -0
  443. /package/dist/{chunk-5Z7FWCV2.js.map → chunk-HBZPJ3EP.js.map} +0 -0
  444. /package/dist/{chunk-C2BRIFJG.js.map → chunk-HJFRHYCI.js.map} +0 -0
  445. /package/dist/{chunk-BTMFZ66D.js.map → chunk-KM6VAKIE.js.map} +0 -0
  446. /package/dist/{chunk-DGQMDJXK.js.map → chunk-LZNZLCOE.js.map} +0 -0
  447. /package/dist/{chunk-AQSZJJAJ.js.map → chunk-MQPC3P4T.js.map} +0 -0
package/dist/native.js CHANGED
@@ -208,7 +208,7 @@ var themes = /* @__PURE__ */ Object.freeze({ dark: /* @__PURE__ */ Object.freeze
208
208
  "borderStrong": "rgba(255,255,255,0.16)",
209
209
  "textPrimary": "#f5f5f5",
210
210
  "textSecondary": "#a0a0a7",
211
- "textMuted": "#73737d",
211
+ "textMuted": "#92929b",
212
212
  "textOnMedia": "#ffffff",
213
213
  "accent": "#196df5",
214
214
  "accentHover": "#0e5bd8",
@@ -251,8 +251,8 @@ var themes = /* @__PURE__ */ Object.freeze({ dark: /* @__PURE__ */ Object.freeze
251
251
  "borderDefault": "rgba(0,0,0,0.1)",
252
252
  "borderStrong": "rgba(0,0,0,0.16)",
253
253
  "textPrimary": "#18181b",
254
- "textSecondary": "#64646d",
255
- "textMuted": "#808089",
254
+ "textSecondary": "#56565d",
255
+ "textMuted": "#64646d",
256
256
  "textOnMedia": "#ffffff",
257
257
  "accent": "#0a64f5",
258
258
  "accentHover": "#0d55c9",
@@ -708,7 +708,7 @@ function useMarkMotion(size, animated, spinMs = 3e4) {
708
708
  import { jsx as jsx5, jsxs as jsxs3 } from "react/jsx-runtime";
709
709
  function AkinazaMark({ size = 48, animated = true, title, neutral }) {
710
710
  const { theme } = useTheme();
711
- const { Animated: Animated28, layer, spinStyle, pulseStyle } = useMarkMotion(size, animated, AKINAZA.motion.spin * 1e3);
711
+ const { Animated: Animated29, layer, spinStyle, pulseStyle } = useMarkMotion(size, animated, AKINAZA.motion.spin * 1e3);
712
712
  const id = useSvgId("akm");
713
713
  const viewBox = size < 48 ? AKINAZA.croppedViewBox : AKINAZA.viewBox;
714
714
  const stroke = neutral ?? theme.textMuted;
@@ -724,11 +724,11 @@ function AkinazaMark({ size = 48, animated = true, title, neutral }) {
724
724
  /* @__PURE__ */ jsx5(Path, { d: AKINAZA.cut, fill: AKINAZA.copper }),
725
725
  AKINAZA.rings.r.map((r) => /* @__PURE__ */ jsx5(Circle, { cx: AKINAZA.rings.cx, cy: AKINAZA.rings.cy, r, stroke: AKINAZA.highlight, strokeOpacity: AKINAZA.rings.opacity, strokeWidth: AKINAZA.rings.width, fill: "none" }, r))
726
726
  ] }),
727
- /* @__PURE__ */ jsx5(Animated28.View, { style: [layer, spinStyle], children: /* @__PURE__ */ jsxs3(Svg, { viewBox, style: layer, children: [
727
+ /* @__PURE__ */ jsx5(Animated29.View, { style: [layer, spinStyle], children: /* @__PURE__ */ jsxs3(Svg, { viewBox, style: layer, children: [
728
728
  /* @__PURE__ */ jsx5(Circle, { cx: AKINAZA.center, cy: AKINAZA.center, r: AKINAZA.orbit.r, stroke, strokeWidth: AKINAZA.orbit.width, strokeDasharray: AKINAZA.orbit.dash, opacity: 0.6, fill: "none" }),
729
729
  /* @__PURE__ */ jsx5(Circle, { cx: AKINAZA.node.at[0], cy: AKINAZA.node.at[1], r: AKINAZA.node.r, fill: AKINAZA.copper })
730
730
  ] }) }),
731
- /* @__PURE__ */ jsx5(Animated28.View, { style: [layer, pulseStyle], children: /* @__PURE__ */ jsxs3(Svg, { viewBox, style: layer, children: [
731
+ /* @__PURE__ */ jsx5(Animated29.View, { style: [layer, pulseStyle], children: /* @__PURE__ */ jsxs3(Svg, { viewBox, style: layer, children: [
732
732
  /* @__PURE__ */ jsx5(Circle, { cx: AKINAZA.heart.cx, cy: AKINAZA.heart.cy, r: AKINAZA.heart.r, fill: AKINAZA.copper }),
733
733
  /* @__PURE__ */ jsx5(Circle, { cx: AKINAZA.heart.cx, cy: AKINAZA.heart.cy, r: AKINAZA.heart.inner, fill: AKINAZA.highlight })
734
734
  ] }) })
@@ -2904,7 +2904,7 @@ var KACHIZAKA = {
2904
2904
  import { jsx as jsx27, jsxs as jsxs24 } from "react/jsx-runtime";
2905
2905
  function KachizakaMark({ size = 48, animated = true, title, neutral }) {
2906
2906
  const { theme } = useTheme();
2907
- const { Animated: Animated28, layer, spinStyle, pulseStyle } = useMarkMotion(size, animated, KACHIZAKA.motion.spin * 1e3);
2907
+ const { Animated: Animated29, layer, spinStyle, pulseStyle } = useMarkMotion(size, animated, KACHIZAKA.motion.spin * 1e3);
2908
2908
  const id = useSvgId("kcm");
2909
2909
  const viewBox = size < 48 ? KACHIZAKA.croppedViewBox : KACHIZAKA.viewBox;
2910
2910
  const stroke = neutral ?? theme.textMuted;
@@ -2920,11 +2920,11 @@ function KachizakaMark({ size = 48, animated = true, title, neutral }) {
2920
2920
  /* @__PURE__ */ jsx27(Path7, { d: KACHIZAKA.steps.first, fill: KACHIZAKA.gold }),
2921
2921
  /* @__PURE__ */ jsx27(Path7, { d: KACHIZAKA.steps.third, fill: KACHIZAKA.cobalt })
2922
2922
  ] }),
2923
- /* @__PURE__ */ jsx27(Animated28.View, { style: [layer, spinStyle], children: /* @__PURE__ */ jsxs24(Svg9, { viewBox, style: layer, children: [
2923
+ /* @__PURE__ */ jsx27(Animated29.View, { style: [layer, spinStyle], children: /* @__PURE__ */ jsxs24(Svg9, { viewBox, style: layer, children: [
2924
2924
  /* @__PURE__ */ jsx27(Circle3, { cx: KACHIZAKA.center, cy: KACHIZAKA.center, r: KACHIZAKA.orbit.r, stroke, strokeWidth: KACHIZAKA.orbit.width, strokeDasharray: KACHIZAKA.orbit.dash, opacity: 0.6, fill: "none" }),
2925
2925
  /* @__PURE__ */ jsx27(Circle3, { cx: KACHIZAKA.ball.at[0], cy: KACHIZAKA.ball.at[1], r: KACHIZAKA.ball.r, fill: KACHIZAKA.gold })
2926
2926
  ] }) }),
2927
- /* @__PURE__ */ jsx27(Animated28.View, { style: [layer, pulseStyle], children: /* @__PURE__ */ jsxs24(Svg9, { viewBox, style: layer, children: [
2927
+ /* @__PURE__ */ jsx27(Animated29.View, { style: [layer, pulseStyle], children: /* @__PURE__ */ jsxs24(Svg9, { viewBox, style: layer, children: [
2928
2928
  /* @__PURE__ */ jsx27(Path7, { d: KACHIZAKA.node.d, fill: KACHIZAKA.gold, stroke: KACHIZAKA.gold, strokeWidth: KACHIZAKA.node.soften, strokeLinejoin: "round" }),
2929
2929
  /* @__PURE__ */ jsx27(Path7, { d: KACHIZAKA.node.light, fill: KACHIZAKA.highlight })
2930
2930
  ] }) })
@@ -2958,7 +2958,7 @@ var KRIZAKA = {
2958
2958
  import { Fragment as Fragment5, jsx as jsx28, jsxs as jsxs25 } from "react/jsx-runtime";
2959
2959
  function KrizakaMark({ size = 48, animated = true, title, neutral }) {
2960
2960
  const { theme } = useTheme();
2961
- const { Animated: Animated28, layer, spinStyle, pulseStyle } = useMarkMotion(size, animated);
2961
+ const { Animated: Animated29, layer, spinStyle, pulseStyle } = useMarkMotion(size, animated);
2962
2962
  const id = useSvgId("kzm");
2963
2963
  const viewBox = size < 48 ? KRIZAKA.croppedViewBox : KRIZAKA.viewBox;
2964
2964
  const stroke = neutral ?? theme.textMuted;
@@ -2984,8 +2984,8 @@ function KrizakaMark({ size = 48, animated = true, title, neutral }) {
2984
2984
  /* @__PURE__ */ jsx28(Circle4, { cx: 200, cy: 200, r: KRIZAKA.ring.r, stroke, strokeWidth: KRIZAKA.ring.width, opacity: 0.35, fill: "none" }),
2985
2985
  /* @__PURE__ */ jsx28(Group, { transform: `translate(${KRIZAKA.offset} ${KRIZAKA.offset})`, children: /* @__PURE__ */ jsx28(Path8, { d: KRIZAKA.shield, stroke: `url(#${id}i)`, strokeWidth: KRIZAKA.stroke, strokeLinecap: "round", strokeLinejoin: "round", fill: "none" }) })
2986
2986
  ] }),
2987
- /* @__PURE__ */ jsx28(Animated28.View, { style: [layer, spinStyle], children: /* @__PURE__ */ jsx28(Svg10, { viewBox, style: layer, children: /* @__PURE__ */ jsx28(Circle4, { cx: 200, cy: 200, r: KRIZAKA.orbit.r, stroke, strokeWidth: KRIZAKA.orbit.width, strokeDasharray: KRIZAKA.orbit.dash, opacity: 0.6, fill: "none" }) }) }),
2988
- /* @__PURE__ */ jsx28(Animated28.View, { style: [layer, pulseStyle], children: /* @__PURE__ */ jsxs25(Svg10, { viewBox, style: layer, children: [
2987
+ /* @__PURE__ */ jsx28(Animated29.View, { style: [layer, spinStyle], children: /* @__PURE__ */ jsx28(Svg10, { viewBox, style: layer, children: /* @__PURE__ */ jsx28(Circle4, { cx: 200, cy: 200, r: KRIZAKA.orbit.r, stroke, strokeWidth: KRIZAKA.orbit.width, strokeDasharray: KRIZAKA.orbit.dash, opacity: 0.6, fill: "none" }) }) }),
2988
+ /* @__PURE__ */ jsx28(Animated29.View, { style: [layer, pulseStyle], children: /* @__PURE__ */ jsxs25(Svg10, { viewBox, style: layer, children: [
2989
2989
  /* @__PURE__ */ jsx28(Defs5, { children: blue }),
2990
2990
  /* @__PURE__ */ jsxs25(Group, { transform: `translate(${KRIZAKA.offset} ${KRIZAKA.offset})`, children: [
2991
2991
  dot(KRIZAKA.node),
@@ -3034,7 +3034,7 @@ var ORAZAKA = {
3034
3034
  import { jsx as jsx29, jsxs as jsxs26 } from "react/jsx-runtime";
3035
3035
  function OrazakaMark({ size = 48, animated = true, title, neutral }) {
3036
3036
  const { theme } = useTheme();
3037
- const { Animated: Animated28, layer, spinStyle, pulseStyle } = useMarkMotion(size, animated);
3037
+ const { Animated: Animated29, layer, spinStyle, pulseStyle } = useMarkMotion(size, animated);
3038
3038
  const id = useSvgId("ozm");
3039
3039
  const viewBox = size < 48 ? ORAZAKA.croppedViewBox : ORAZAKA.viewBox;
3040
3040
  const stroke = neutral ?? theme.textMuted;
@@ -3050,11 +3050,11 @@ function OrazakaMark({ size = 48, animated = true, title, neutral }) {
3050
3050
  /* @__PURE__ */ jsx29(Circle5, { cx: ORAZAKA.center, cy: ORAZAKA.center, r: ORAZAKA.orbit.r, stroke, strokeWidth: ORAZAKA.orbit.width, strokeDasharray: ORAZAKA.orbit.dash, opacity: 0.6, fill: "none" }),
3051
3051
  /* @__PURE__ */ jsx29(Circle5, { cx: ORAZAKA.center, cy: ORAZAKA.center, r: ORAZAKA.ring.r, stroke, strokeWidth: ORAZAKA.ring.width, opacity: 0.35, fill: "none" })
3052
3052
  ] }),
3053
- /* @__PURE__ */ jsx29(Animated28.View, { style: [layer, spinStyle], children: /* @__PURE__ */ jsxs26(Svg11, { viewBox, style: layer, children: [
3053
+ /* @__PURE__ */ jsx29(Animated29.View, { style: [layer, spinStyle], children: /* @__PURE__ */ jsxs26(Svg11, { viewBox, style: layer, children: [
3054
3054
  /* @__PURE__ */ jsx29(Defs6, { children: gradient }),
3055
3055
  ORAZAKA.shards.map((d) => /* @__PURE__ */ jsx29(Path9, { d, fill, stroke: fill, strokeWidth: ORAZAKA.shardStroke, strokeLinejoin: "round" }, d))
3056
3056
  ] }) }),
3057
- /* @__PURE__ */ jsx29(Animated28.View, { style: [layer, pulseStyle], children: /* @__PURE__ */ jsxs26(Svg11, { viewBox, style: layer, children: [
3057
+ /* @__PURE__ */ jsx29(Animated29.View, { style: [layer, pulseStyle], children: /* @__PURE__ */ jsxs26(Svg11, { viewBox, style: layer, children: [
3058
3058
  /* @__PURE__ */ jsx29(Defs6, { children: gradient }),
3059
3059
  /* @__PURE__ */ jsx29(Circle5, { cx: ORAZAKA.center, cy: ORAZAKA.center, r: ORAZAKA.core.r, fill }),
3060
3060
  /* @__PURE__ */ jsx29(Circle5, { cx: ORAZAKA.center, cy: ORAZAKA.center, r: ORAZAKA.core.inner, fill: ORAZAKA.highlight })
@@ -3189,7 +3189,7 @@ var YASAKIA = {
3189
3189
  import { jsx as jsx31, jsxs as jsxs28 } from "react/jsx-runtime";
3190
3190
  function YasakiaMark({ size = 48, animated = true, title, neutral }) {
3191
3191
  const { theme } = useTheme();
3192
- const { Animated: Animated28, layer, spinStyle, pulseStyle } = useMarkMotion(size, animated, YASAKIA.motion.spin * 1e3);
3192
+ const { Animated: Animated29, layer, spinStyle, pulseStyle } = useMarkMotion(size, animated, YASAKIA.motion.spin * 1e3);
3193
3193
  const id = useSvgId("yzm");
3194
3194
  const viewBox = size < 48 ? YASAKIA.croppedViewBox : YASAKIA.viewBox;
3195
3195
  const stroke = neutral ?? theme.textMuted;
@@ -3209,12 +3209,12 @@ function YasakiaMark({ size = 48, animated = true, title, neutral }) {
3209
3209
  /* @__PURE__ */ jsx31(Circle7, { cx: YASAKIA.bubble.cx, cy: YASAKIA.bubble.cy, r: YASAKIA.bubble.r, fill }),
3210
3210
  /* @__PURE__ */ jsx31(Path11, { d: YASAKIA.tails.join(" "), fill })
3211
3211
  ] }),
3212
- /* @__PURE__ */ jsx31(Animated28.View, { style: [layer, spinStyle], children: /* @__PURE__ */ jsxs28(Svg13, { viewBox, style: layer, children: [
3212
+ /* @__PURE__ */ jsx31(Animated29.View, { style: [layer, spinStyle], children: /* @__PURE__ */ jsxs28(Svg13, { viewBox, style: layer, children: [
3213
3213
  /* @__PURE__ */ jsx31(Defs8, { children: gradient }),
3214
3214
  /* @__PURE__ */ jsx31(Circle7, { cx: YASAKIA.center, cy: YASAKIA.center, r: YASAKIA.orbit.r, stroke, strokeWidth: YASAKIA.orbit.width, strokeDasharray: YASAKIA.orbit.dash, opacity: 0.6, fill: "none" }),
3215
3215
  /* @__PURE__ */ jsx31(Circle7, { cx: YASAKIA.node.at[0], cy: YASAKIA.node.at[1], r: YASAKIA.node.r, fill })
3216
3216
  ] }) }),
3217
- /* @__PURE__ */ jsx31(Animated28.View, { style: [layer, pulseStyle], children: /* @__PURE__ */ jsx31(Svg13, { viewBox, style: layer, children: /* @__PURE__ */ jsx31(Path11, { d: YASAKIA.spark.d, fill: YASAKIA.highlight, stroke: YASAKIA.highlight, strokeWidth: YASAKIA.spark.soften, strokeLinejoin: "round" }) }) })
3217
+ /* @__PURE__ */ jsx31(Animated29.View, { style: [layer, pulseStyle], children: /* @__PURE__ */ jsx31(Svg13, { viewBox, style: layer, children: /* @__PURE__ */ jsx31(Path11, { d: YASAKIA.spark.d, fill: YASAKIA.highlight, stroke: YASAKIA.highlight, strokeWidth: YASAKIA.spark.soften, strokeLinejoin: "round" }) }) })
3218
3218
  ] });
3219
3219
  }
3220
3220
  var YazakiaMark = YasakiaMark;
@@ -3258,7 +3258,7 @@ var YOMIZAKA = {
3258
3258
  import { jsx as jsx32, jsxs as jsxs29 } from "react/jsx-runtime";
3259
3259
  function YomizakaMark({ size = 48, animated = true, title, neutral }) {
3260
3260
  const { theme } = useTheme();
3261
- const { Animated: Animated28, layer, spinStyle, pulseStyle } = useMarkMotion(size, animated, YOMIZAKA.motion.spin * 1e3);
3261
+ const { Animated: Animated29, layer, spinStyle, pulseStyle } = useMarkMotion(size, animated, YOMIZAKA.motion.spin * 1e3);
3262
3262
  const id = useSvgId("ymm");
3263
3263
  const viewBox = size < 48 ? YOMIZAKA.croppedViewBox : YOMIZAKA.viewBox;
3264
3264
  const stroke = neutral ?? theme.textMuted;
@@ -3278,12 +3278,12 @@ function YomizakaMark({ size = 48, animated = true, title, neutral }) {
3278
3278
  /* @__PURE__ */ jsx32(Path12, { d: YOMIZAKA.brow, stroke: fill, strokeWidth: YOMIZAKA.stroke, strokeLinecap: "round", strokeLinejoin: "round", fill: "none" }),
3279
3279
  YOMIZAKA.lenses.map((l) => /* @__PURE__ */ jsx32(Circle8, { cx: l.cx, cy: l.cy, r: l.r, stroke: fill, strokeWidth: YOMIZAKA.stroke, fill: "none" }, l.cx))
3280
3280
  ] }),
3281
- /* @__PURE__ */ jsx32(Animated28.View, { style: [layer, spinStyle], children: /* @__PURE__ */ jsxs29(Svg14, { viewBox, style: layer, children: [
3281
+ /* @__PURE__ */ jsx32(Animated29.View, { style: [layer, spinStyle], children: /* @__PURE__ */ jsxs29(Svg14, { viewBox, style: layer, children: [
3282
3282
  /* @__PURE__ */ jsx32(Defs9, { children: gradient }),
3283
3283
  /* @__PURE__ */ jsx32(Circle8, { cx: YOMIZAKA.center, cy: YOMIZAKA.center, r: YOMIZAKA.orbit.r, stroke, strokeWidth: YOMIZAKA.orbit.width, strokeDasharray: YOMIZAKA.orbit.dash, opacity: 0.6, fill: "none" }),
3284
3284
  /* @__PURE__ */ jsx32(Circle8, { cx: YOMIZAKA.node.at[0], cy: YOMIZAKA.node.at[1], r: YOMIZAKA.node.r, fill })
3285
3285
  ] }) }),
3286
- /* @__PURE__ */ jsx32(Animated28.View, { style: [layer, pulseStyle], children: /* @__PURE__ */ jsxs29(Svg14, { viewBox, style: layer, children: [
3286
+ /* @__PURE__ */ jsx32(Animated29.View, { style: [layer, pulseStyle], children: /* @__PURE__ */ jsxs29(Svg14, { viewBox, style: layer, children: [
3287
3287
  /* @__PURE__ */ jsx32(Defs9, { children: gradient }),
3288
3288
  YOMIZAKA.pupils.map((p) => /* @__PURE__ */ jsxs29(React21.Fragment, { children: [
3289
3289
  /* @__PURE__ */ jsx32(Circle8, { cx: p.cx, cy: p.cy, r: p.r, fill }),
@@ -3326,7 +3326,7 @@ var YORORIS = {
3326
3326
  import { jsx as jsx33, jsxs as jsxs30 } from "react/jsx-runtime";
3327
3327
  function YororisMark({ size = 48, animated = true, title, neutral }) {
3328
3328
  const { theme } = useTheme();
3329
- const { Animated: Animated28, layer, spinStyle, pulseStyle } = useMarkMotion(size, animated, YORORIS.motion.spin * 1e3);
3329
+ const { Animated: Animated29, layer, spinStyle, pulseStyle } = useMarkMotion(size, animated, YORORIS.motion.spin * 1e3);
3330
3330
  const id = useSvgId("yrm");
3331
3331
  const viewBox = size < 48 ? YORORIS.croppedViewBox : YORORIS.viewBox;
3332
3332
  const stroke = neutral ?? theme.textMuted;
@@ -3340,11 +3340,11 @@ function YororisMark({ size = 48, animated = true, title, neutral }) {
3340
3340
  /* @__PURE__ */ jsx33(Circle9, { cx: YORORIS.center, cy: YORORIS.center, r: YORORIS.ring.r, stroke, strokeWidth: YORORIS.ring.width, opacity: 0.35, fill: "none" }),
3341
3341
  /* @__PURE__ */ jsx33(Path13, { d: YORORIS.hands, stroke: YORORIS.sage, strokeWidth: YORORIS.stroke, strokeLinecap: "round", fill: "none" })
3342
3342
  ] }),
3343
- /* @__PURE__ */ jsx33(Animated28.View, { style: [layer, spinStyle], children: /* @__PURE__ */ jsxs30(Svg15, { viewBox, style: layer, children: [
3343
+ /* @__PURE__ */ jsx33(Animated29.View, { style: [layer, spinStyle], children: /* @__PURE__ */ jsxs30(Svg15, { viewBox, style: layer, children: [
3344
3344
  /* @__PURE__ */ jsx33(Circle9, { cx: YORORIS.center, cy: YORORIS.center, r: YORORIS.orbit.r, stroke, strokeWidth: YORORIS.orbit.width, strokeDasharray: YORORIS.orbit.dash, opacity: 0.6, fill: "none" }),
3345
3345
  /* @__PURE__ */ jsx33(Circle9, { cx: YORORIS.node.at[0], cy: YORORIS.node.at[1], r: YORORIS.node.r, fill: YORORIS.sage })
3346
3346
  ] }) }),
3347
- /* @__PURE__ */ jsx33(Animated28.View, { style: [layer, pulseStyle], children: /* @__PURE__ */ jsxs30(Svg15, { viewBox, style: layer, children: [
3347
+ /* @__PURE__ */ jsx33(Animated29.View, { style: [layer, pulseStyle], children: /* @__PURE__ */ jsxs30(Svg15, { viewBox, style: layer, children: [
3348
3348
  /* @__PURE__ */ jsx33(Circle9, { cx: YORORIS.core.cx, cy: YORORIS.core.cy, r: YORORIS.core.r, fill: YORORIS.sand }),
3349
3349
  /* @__PURE__ */ jsx33(Circle9, { cx: YORORIS.core.cx, cy: YORORIS.core.cy, r: YORORIS.core.inner, fill: YORORIS.highlight })
3350
3350
  ] }) })
@@ -5974,6 +5974,86 @@ function VerifiedBadge({ label, showLabel, size = 16, on = "surface" }) {
5974
5974
  ] });
5975
5975
  }
5976
5976
  var styles55 = StyleSheet55.create({ row: { flexDirection: "row", alignItems: "center", gap: 4 }, text: { fontWeight: "700" } });
5977
+
5978
+ // src/native/waveform.tsx
5979
+ import * as React45 from "react";
5980
+ import { Animated as Animated28, AppState as AppState2, Easing as Easing14, StyleSheet as StyleSheet56, View as View64 } from "react-native";
5981
+
5982
+ // src/waveform/bars.ts
5983
+ function resamplePeaks(peaks, count) {
5984
+ if (peaks.length === 0) return Array.from({ length: count }, () => 0.15);
5985
+ const out = Array.from({ length: count }, (_, i) => {
5986
+ const from = Math.floor(i / count * peaks.length);
5987
+ const to = Math.max(from + 1, Math.floor((i + 1) / count * peaks.length));
5988
+ return Math.max(...peaks.slice(from, to).map(Math.abs));
5989
+ });
5990
+ const loudest = Math.max(...out, 1e-4);
5991
+ return out.map((v) => Math.max(0.08, v / loudest));
5992
+ }
5993
+
5994
+ // src/native/waveform.tsx
5995
+ import { jsx as jsx72 } from "react/jsx-runtime";
5996
+ var HEIGHT = { sm: 24, md: 40, lg: 64 };
5997
+ function Waveform({ peaks, bars = 32, size = "md", tone: tone3 = "accent", playing = false, label, style, ...props }) {
5998
+ const { theme } = useTheme();
5999
+ const reduce = useReducedMotion();
6000
+ const [active, setActive] = React45.useState(() => AppState2.currentState === "active");
6001
+ React45.useEffect(() => {
6002
+ const subscription = AppState2.addEventListener("change", (state) => setActive(state === "active"));
6003
+ return () => subscription.remove();
6004
+ }, []);
6005
+ const shape = React45.useMemo(() => resamplePeaks(peaks ?? [], bars), [peaks, bars]);
6006
+ const values = React45.useMemo(() => shape.map(() => new Animated28.Value(1)), [shape]);
6007
+ const moving = playing && !reduce && active;
6008
+ React45.useEffect(() => {
6009
+ if (!moving) {
6010
+ values.forEach((value) => value.setValue(1));
6011
+ return;
6012
+ }
6013
+ const loops = values.map((value, i) => {
6014
+ value.setValue(i * 7 % 11 / 11);
6015
+ const loop = Animated28.loop(
6016
+ Animated28.sequence([
6017
+ Animated28.timing(value, { toValue: 1, duration: 800, easing: Easing14.inOut(Easing14.ease), useNativeDriver: true }),
6018
+ Animated28.timing(value, { toValue: 0, duration: 800, easing: Easing14.inOut(Easing14.ease), useNativeDriver: true })
6019
+ ])
6020
+ );
6021
+ loop.start();
6022
+ return loop;
6023
+ });
6024
+ return () => loops.forEach((loop) => loop.stop());
6025
+ }, [moving, values]);
6026
+ const named = label !== void 0;
6027
+ const barColour = tone3 === "neutral" ? theme.borderStrong : theme.accent;
6028
+ return /* @__PURE__ */ jsx72(
6029
+ View64,
6030
+ {
6031
+ ...props,
6032
+ accessible: named,
6033
+ accessibilityRole: named ? "image" : void 0,
6034
+ accessibilityLabel: label,
6035
+ "aria-hidden": named ? void 0 : true,
6036
+ importantForAccessibility: named ? "yes" : "no-hide-descendants",
6037
+ style: [styles56.root, { height: HEIGHT[size] }, style],
6038
+ children: shape.map((peak, i) => /* @__PURE__ */ jsx72(
6039
+ Animated28.View,
6040
+ {
6041
+ testID: "waveform-bar",
6042
+ style: [
6043
+ styles56.bar,
6044
+ { height: `${Math.round(peak * 100)}%`, backgroundColor: barColour },
6045
+ { transform: [{ scaleY: values[i].interpolate({ inputRange: [0, 1], outputRange: [0.45, 1] }) }] }
6046
+ ]
6047
+ },
6048
+ i
6049
+ ))
6050
+ }
6051
+ );
6052
+ }
6053
+ var styles56 = StyleSheet56.create({
6054
+ root: { width: "100%", flexDirection: "row", alignItems: "center", justifyContent: "center", columnGap: 2 },
6055
+ bar: { flex: 1, minWidth: 2, borderRadius: 9999 }
6056
+ });
5977
6057
  export {
5978
6058
  ActionSheet,
5979
6059
  ActivityFeed,
@@ -6067,6 +6147,7 @@ export {
6067
6147
  TypingIndicator,
6068
6148
  UpdatePrompt,
6069
6149
  VerifiedBadge,
6150
+ Waveform,
6070
6151
  WelcomeState,
6071
6152
  Wheel,
6072
6153
  WheelDivider,