@krizaka/ui 2.2.0 → 2.4.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 (498) hide show
  1. package/README.md +33 -8
  2. package/dist/audio-player.d.ts +113 -0
  3. package/dist/audio-player.js +207 -0
  4. package/dist/audio-player.js.map +1 -0
  5. package/dist/{button-Cgfkg_3y.d.ts → button-BMAO7dKF.d.ts} +29 -2
  6. package/dist/button.d.ts +32 -5
  7. package/dist/button.js +62 -9
  8. package/dist/button.js.map +1 -1
  9. package/dist/chip-link.d.ts +53 -0
  10. package/dist/chip-link.js +32 -0
  11. package/dist/chip-link.js.map +1 -0
  12. package/dist/chunk-2USC2YT6.js +17 -0
  13. package/dist/chunk-2USC2YT6.js.map +1 -0
  14. package/dist/chunk-43PTCDTL.js +31 -0
  15. package/dist/chunk-43PTCDTL.js.map +1 -0
  16. package/dist/chunk-6ISW63JI.js +11 -0
  17. package/dist/chunk-6ISW63JI.js.map +1 -0
  18. package/dist/chunk-EUPTXKH7.js +95 -0
  19. package/dist/chunk-EUPTXKH7.js.map +1 -0
  20. package/dist/chunk-HAQWKORZ.js +117 -0
  21. package/dist/chunk-HAQWKORZ.js.map +1 -0
  22. package/dist/{chunk-FHYZSO2S.js → chunk-R6SDS7JM.js} +5 -3
  23. package/dist/chunk-R6SDS7JM.js.map +1 -0
  24. package/dist/chunk-RUPNPMP3.js +103 -0
  25. package/dist/chunk-RUPNPMP3.js.map +1 -0
  26. package/dist/chunk-RUPRYJ45.js +82 -0
  27. package/dist/chunk-RUPRYJ45.js.map +1 -0
  28. package/dist/chunk-VDR2EP6K.js +49 -0
  29. package/dist/chunk-VDR2EP6K.js.map +1 -0
  30. package/dist/chunk-WEVYKZIF.js +33 -0
  31. package/dist/chunk-WEVYKZIF.js.map +1 -0
  32. package/dist/chunk-XUMJA5ZI.js +283 -0
  33. package/dist/chunk-XUMJA5ZI.js.map +1 -0
  34. package/dist/chunk-YH4LMWRU.js +92 -0
  35. package/dist/chunk-YH4LMWRU.js.map +1 -0
  36. package/dist/chunk-YX6CNVJA.js +94 -0
  37. package/dist/chunk-YX6CNVJA.js.map +1 -0
  38. package/dist/chunk-ZIXB33X7.js +95 -0
  39. package/dist/chunk-ZIXB33X7.js.map +1 -0
  40. package/dist/combobox.d.ts +188 -0
  41. package/dist/combobox.js +16 -0
  42. package/dist/combobox.js.map +1 -0
  43. package/dist/command.d.ts +7 -7
  44. package/dist/command.js +3 -2
  45. package/dist/command.js.map +1 -1
  46. package/dist/confirm-button.d.ts +1 -1
  47. package/dist/confirm-button.js +2 -1
  48. package/dist/confirm-button.js.map +1 -1
  49. package/dist/data-table.d.ts +246 -0
  50. package/dist/data-table.js +290 -0
  51. package/dist/data-table.js.map +1 -0
  52. package/dist/date-picker.d.ts +288 -0
  53. package/dist/date-picker.js +364 -0
  54. package/dist/date-picker.js.map +1 -0
  55. package/dist/{dialog-GQ4Nvuyf.d.ts → dialog-D42QwYb_.d.ts} +11 -1
  56. package/dist/dialog.d.ts +1 -1
  57. package/dist/dialog.js +3 -2
  58. package/dist/dialog.js.map +1 -1
  59. package/dist/file-upload.d.ts +238 -0
  60. package/dist/file-upload.js +437 -0
  61. package/dist/file-upload.js.map +1 -0
  62. package/dist/filter-bar.d.ts +139 -0
  63. package/dist/filter-bar.js +155 -0
  64. package/dist/filter-bar.js.map +1 -0
  65. package/dist/glow-card.d.ts +20 -0
  66. package/dist/glow-card.js +30 -0
  67. package/dist/glow-card.js.map +1 -0
  68. package/dist/image-cropper.d.ts +115 -0
  69. package/dist/image-cropper.js +166 -0
  70. package/dist/image-cropper.js.map +1 -0
  71. package/dist/index.d.ts +2 -20
  72. package/dist/index.js +7 -64
  73. package/dist/index.js.map +1 -1
  74. package/dist/iso.d.ts +400 -0
  75. package/dist/iso.js +363 -0
  76. package/dist/iso.js.map +1 -0
  77. package/dist/loader.d.ts +206 -0
  78. package/dist/loader.js +138 -0
  79. package/dist/loader.js.map +1 -0
  80. package/dist/marquee.d.ts +33 -0
  81. package/dist/marquee.js +52 -0
  82. package/dist/marquee.js.map +1 -0
  83. package/dist/media-capture.d.ts +155 -0
  84. package/dist/media-capture.js +242 -0
  85. package/dist/media-capture.js.map +1 -0
  86. package/dist/meter.d.ts +146 -0
  87. package/dist/meter.js +107 -0
  88. package/dist/meter.js.map +1 -0
  89. package/dist/motion.css +394 -3
  90. package/dist/motion.d.ts +46 -0
  91. package/dist/motion.js +10 -0
  92. package/dist/motion.js.map +1 -0
  93. package/dist/native/media-capture.d.ts +49 -0
  94. package/dist/native/media-capture.js +113 -0
  95. package/dist/native/media-capture.js.map +1 -0
  96. package/dist/native/video-player.d.ts +50 -0
  97. package/dist/native/video-player.js +69 -0
  98. package/dist/native/video-player.js.map +1 -0
  99. package/dist/native.d.ts +66 -2
  100. package/dist/native.js +166 -68
  101. package/dist/native.js.map +1 -1
  102. package/dist/nav-bar.d.ts +178 -0
  103. package/dist/nav-bar.js +157 -0
  104. package/dist/nav-bar.js.map +1 -0
  105. package/dist/number-ticker.d.ts +32 -0
  106. package/dist/number-ticker.js +61 -0
  107. package/dist/number-ticker.js.map +1 -0
  108. package/dist/pagination.d.ts +141 -0
  109. package/dist/pagination.js +165 -0
  110. package/dist/pagination.js.map +1 -0
  111. package/dist/progress.d.ts +56 -1
  112. package/dist/progress.js +72 -25
  113. package/dist/progress.js.map +1 -1
  114. package/dist/search-field.d.ts +100 -0
  115. package/dist/search-field.js +167 -0
  116. package/dist/search-field.js.map +1 -0
  117. package/dist/skeleton.d.ts +18 -3
  118. package/dist/skeleton.js +9 -1
  119. package/dist/skeleton.js.map +1 -1
  120. package/dist/spinner.d.ts +21 -5
  121. package/dist/spinner.js +13 -12
  122. package/dist/spinner.js.map +1 -1
  123. package/dist/stepper.d.ts +112 -0
  124. package/dist/stepper.js +67 -0
  125. package/dist/stepper.js.map +1 -0
  126. package/dist/tabs.d.ts +1 -1
  127. package/dist/tabs.js +14 -8
  128. package/dist/tabs.js.map +1 -1
  129. package/dist/tag-input.d.ts +44 -0
  130. package/dist/tag-input.js +67 -0
  131. package/dist/tag-input.js.map +1 -0
  132. package/dist/theme.d.ts +1 -1
  133. package/dist/theme.js +2 -1
  134. package/dist/theme.js.map +1 -1
  135. package/dist/toast.d.ts +39 -4
  136. package/dist/toast.js +81 -7
  137. package/dist/toast.js.map +1 -1
  138. package/dist/video-player.d.ts +204 -0
  139. package/dist/video-player.js +371 -0
  140. package/dist/video-player.js.map +1 -0
  141. package/dist/video-trimmer.d.ts +142 -0
  142. package/dist/video-trimmer.js +193 -0
  143. package/dist/video-trimmer.js.map +1 -0
  144. package/package.json +375 -7
  145. package/registry/alert.json +1 -1
  146. package/registry/audio-player.json +282 -0
  147. package/registry/avatar.json +1 -1
  148. package/registry/badge.json +1 -1
  149. package/registry/button.json +232 -26
  150. package/registry/card.json +1 -1
  151. package/registry/checkbox.json +1 -1
  152. package/registry/chip-link.json +158 -0
  153. package/registry/chip.json +1 -1
  154. package/registry/combobox.json +475 -0
  155. package/registry/command.json +1 -1
  156. package/registry/confirm-button.json +91 -7
  157. package/registry/countdown.json +1 -1
  158. package/registry/data-table.json +500 -0
  159. package/registry/date-picker.json +978 -0
  160. package/registry/dialog.json +15 -7
  161. package/registry/dropdown-menu.json +1 -1
  162. package/registry/empty-state.json +1 -1
  163. package/registry/examples/audio-player/podcast.js +22 -0
  164. package/registry/examples/audio-player/podcast.tsx +19 -0
  165. package/registry/examples/audio-player/voice-note.d.ts +4 -0
  166. package/registry/examples/audio-player/voice-note.js +12 -0
  167. package/registry/examples/audio-player/voice-note.tsx +12 -0
  168. package/registry/examples/button/error.d.ts +4 -0
  169. package/registry/examples/button/error.js +11 -0
  170. package/registry/examples/button/error.tsx +10 -0
  171. package/registry/examples/button/loading.tsx +1 -1
  172. package/registry/examples/button/save-flow.d.ts +4 -0
  173. package/registry/examples/button/save-flow.js +28 -0
  174. package/registry/examples/button/save-flow.tsx +24 -0
  175. package/registry/examples/button/signature.d.ts +4 -0
  176. package/registry/examples/button/signature.js +17 -0
  177. package/registry/examples/button/signature.tsx +19 -0
  178. package/registry/examples/button/upload-progress.d.ts +4 -0
  179. package/registry/examples/button/upload-progress.js +23 -0
  180. package/registry/examples/button/upload-progress.tsx +26 -0
  181. package/registry/examples/chip-link/filters.d.ts +4 -0
  182. package/registry/examples/chip-link/filters.js +12 -0
  183. package/registry/examples/chip-link/filters.tsx +17 -0
  184. package/registry/examples/combobox/async.d.ts +4 -0
  185. package/registry/examples/combobox/async.js +23 -0
  186. package/registry/examples/combobox/async.tsx +22 -0
  187. package/registry/examples/combobox/creatable.d.ts +4 -0
  188. package/registry/examples/combobox/creatable.js +32 -0
  189. package/registry/examples/combobox/creatable.tsx +28 -0
  190. package/registry/examples/combobox/invalid.d.ts +4 -0
  191. package/registry/examples/combobox/invalid.js +23 -0
  192. package/registry/examples/combobox/invalid.tsx +17 -0
  193. package/registry/examples/combobox/multiple.d.ts +4 -0
  194. package/registry/examples/combobox/multiple.js +29 -0
  195. package/registry/examples/combobox/multiple.tsx +26 -0
  196. package/registry/examples/data-table/cards.d.ts +4 -0
  197. package/registry/examples/data-table/cards.js +21 -0
  198. package/registry/examples/data-table/cards.tsx +20 -0
  199. package/registry/examples/data-table/empty.d.ts +4 -0
  200. package/registry/examples/data-table/empty.js +26 -0
  201. package/registry/examples/data-table/empty.tsx +21 -0
  202. package/registry/examples/data-table/error.d.ts +4 -0
  203. package/registry/examples/data-table/error.js +28 -0
  204. package/registry/examples/data-table/error.tsx +29 -0
  205. package/registry/examples/data-table/jobs.d.ts +4 -0
  206. package/registry/examples/data-table/jobs.js +37 -0
  207. package/registry/examples/data-table/jobs.tsx +36 -0
  208. package/registry/examples/data-table/loading.d.ts +4 -0
  209. package/registry/examples/data-table/loading.js +16 -0
  210. package/registry/examples/data-table/loading.tsx +12 -0
  211. package/registry/examples/data-table/virtualized.d.ts +4 -0
  212. package/registry/examples/data-table/virtualized.js +21 -0
  213. package/registry/examples/data-table/virtualized.tsx +20 -0
  214. package/registry/examples/date-picker/calendar.d.ts +4 -0
  215. package/registry/examples/date-picker/calendar.js +14 -0
  216. package/registry/examples/date-picker/calendar.tsx +16 -0
  217. package/registry/examples/date-picker/french.d.ts +4 -0
  218. package/registry/examples/date-picker/french.js +20 -0
  219. package/registry/examples/date-picker/french.tsx +14 -0
  220. package/registry/examples/date-picker/open.d.ts +4 -0
  221. package/registry/examples/date-picker/open.js +11 -0
  222. package/registry/examples/date-picker/open.tsx +8 -0
  223. package/registry/examples/date-picker/range.d.ts +4 -0
  224. package/registry/examples/date-picker/range.js +29 -0
  225. package/registry/examples/date-picker/range.tsx +25 -0
  226. package/registry/examples/date-picker/schedule.d.ts +4 -0
  227. package/registry/examples/date-picker/schedule.js +26 -0
  228. package/registry/examples/date-picker/schedule.tsx +22 -0
  229. package/registry/examples/dialog/left.d.ts +4 -0
  230. package/registry/examples/dialog/left.js +22 -0
  231. package/registry/examples/dialog/left.tsx +32 -0
  232. package/registry/examples/file-upload/images.d.ts +4 -0
  233. package/registry/examples/file-upload/images.js +32 -0
  234. package/registry/examples/file-upload/images.tsx +25 -0
  235. package/registry/examples/file-upload/states.d.ts +4 -0
  236. package/registry/examples/file-upload/states.js +28 -0
  237. package/registry/examples/file-upload/states.tsx +23 -0
  238. package/registry/examples/file-upload/tus.d.ts +4 -0
  239. package/registry/examples/file-upload/tus.js +23 -0
  240. package/registry/examples/file-upload/tus.tsx +26 -0
  241. package/registry/examples/file-upload/video.d.ts +4 -0
  242. package/registry/examples/file-upload/video.js +39 -0
  243. package/registry/examples/file-upload/video.tsx +36 -0
  244. package/registry/examples/filter-bar/address.d.ts +4 -0
  245. package/registry/examples/filter-bar/address.js +29 -0
  246. package/registry/examples/filter-bar/address.tsx +27 -0
  247. package/registry/examples/filter-bar/jobs.d.ts +4 -0
  248. package/registry/examples/filter-bar/jobs.js +37 -0
  249. package/registry/examples/filter-bar/jobs.tsx +37 -0
  250. package/registry/examples/filter-bar/menu.d.ts +4 -0
  251. package/registry/examples/filter-bar/menu.js +27 -0
  252. package/registry/examples/filter-bar/menu.tsx +23 -0
  253. package/registry/examples/glow-card/link-card.d.ts +4 -0
  254. package/registry/examples/glow-card/link-card.js +14 -0
  255. package/registry/examples/glow-card/link-card.tsx +13 -0
  256. package/registry/examples/glow-card/plans.d.ts +4 -0
  257. package/registry/examples/glow-card/plans.js +25 -0
  258. package/registry/examples/glow-card/plans.tsx +26 -0
  259. package/registry/examples/glow-card/spotlight.d.ts +4 -0
  260. package/registry/examples/glow-card/spotlight.js +14 -0
  261. package/registry/examples/glow-card/spotlight.tsx +15 -0
  262. package/registry/examples/image-cropper/avatar.d.ts +4 -0
  263. package/registry/examples/image-cropper/avatar.js +13 -0
  264. package/registry/examples/image-cropper/avatar.tsx +14 -0
  265. package/registry/examples/image-cropper/banner.d.ts +4 -0
  266. package/registry/examples/image-cropper/banner.js +11 -0
  267. package/registry/examples/image-cropper/banner.tsx +10 -0
  268. package/registry/examples/image-cropper/vertical-video.d.ts +4 -0
  269. package/registry/examples/image-cropper/vertical-video.js +12 -0
  270. package/registry/examples/image-cropper/vertical-video.tsx +16 -0
  271. package/registry/examples/iso/compose.d.ts +4 -0
  272. package/registry/examples/iso/compose.js +22 -0
  273. package/registry/examples/iso/compose.tsx +19 -0
  274. package/registry/examples/iso/orazaka-hero.d.ts +4 -0
  275. package/registry/examples/iso/orazaka-hero.js +26 -0
  276. package/registry/examples/iso/orazaka-hero.tsx +21 -0
  277. package/registry/examples/iso/orochia-hero.d.ts +4 -0
  278. package/registry/examples/iso/orochia-hero.js +29 -0
  279. package/registry/examples/iso/orochia-hero.tsx +23 -0
  280. package/registry/examples/iso/still.d.ts +4 -0
  281. package/registry/examples/iso/still.js +21 -0
  282. package/registry/examples/iso/still.tsx +15 -0
  283. package/registry/examples/loader/endings.d.ts +4 -0
  284. package/registry/examples/loader/endings.js +14 -0
  285. package/registry/examples/loader/endings.tsx +11 -0
  286. package/registry/examples/loader/fetch-flow.d.ts +4 -0
  287. package/registry/examples/loader/fetch-flow.js +24 -0
  288. package/registry/examples/loader/fetch-flow.tsx +24 -0
  289. package/registry/examples/loader/minimal.d.ts +4 -0
  290. package/registry/examples/loader/minimal.js +11 -0
  291. package/registry/examples/loader/minimal.tsx +6 -0
  292. package/registry/examples/loader/overlay.d.ts +4 -0
  293. package/registry/examples/loader/overlay.js +16 -0
  294. package/registry/examples/loader/overlay.tsx +13 -0
  295. package/registry/examples/loader/region-handover.d.ts +4 -0
  296. package/registry/examples/loader/region-handover.js +42 -0
  297. package/registry/examples/loader/region-handover.tsx +29 -0
  298. package/registry/examples/loader/upload-eta.d.ts +4 -0
  299. package/registry/examples/loader/upload-eta.js +11 -0
  300. package/registry/examples/loader/upload-eta.tsx +10 -0
  301. package/registry/examples/marquee/cards.d.ts +4 -0
  302. package/registry/examples/marquee/cards.js +23 -0
  303. package/registry/examples/marquee/cards.tsx +21 -0
  304. package/registry/examples/marquee/logos.d.ts +4 -0
  305. package/registry/examples/marquee/logos.js +12 -0
  306. package/registry/examples/marquee/logos.tsx +17 -0
  307. package/registry/examples/media-capture/clip.d.ts +4 -0
  308. package/registry/examples/media-capture/clip.js +20 -0
  309. package/registry/examples/media-capture/clip.tsx +18 -0
  310. package/registry/examples/media-capture/native/photo.d.ts +4 -0
  311. package/registry/examples/media-capture/native/photo.dark.png +0 -0
  312. package/registry/examples/media-capture/native/photo.js +27 -0
  313. package/registry/examples/media-capture/native/photo.light.png +0 -0
  314. package/registry/examples/media-capture/native/photo.tsx +20 -0
  315. package/registry/examples/media-capture/profile-photo.d.ts +4 -0
  316. package/registry/examples/media-capture/profile-photo.js +24 -0
  317. package/registry/examples/media-capture/profile-photo.tsx +20 -0
  318. package/registry/examples/meter/balance.d.ts +4 -0
  319. package/registry/examples/meter/balance.js +14 -0
  320. package/registry/examples/meter/balance.tsx +15 -0
  321. package/registry/examples/meter/quota.d.ts +4 -0
  322. package/registry/examples/meter/quota.js +15 -0
  323. package/registry/examples/meter/quota.tsx +12 -0
  324. package/registry/examples/meter/split.d.ts +4 -0
  325. package/registry/examples/meter/split.js +18 -0
  326. package/registry/examples/meter/split.tsx +18 -0
  327. package/registry/examples/nav-bar/app-bar.d.ts +4 -0
  328. package/registry/examples/nav-bar/app-bar.js +22 -0
  329. package/registry/examples/nav-bar/app-bar.tsx +21 -0
  330. package/registry/examples/nav-bar/menu-open.d.ts +4 -0
  331. package/registry/examples/nav-bar/menu-open.js +26 -0
  332. package/registry/examples/nav-bar/menu-open.tsx +26 -0
  333. package/registry/examples/nav-bar/site.d.ts +4 -0
  334. package/registry/examples/nav-bar/site.js +31 -0
  335. package/registry/examples/nav-bar/site.tsx +36 -0
  336. package/registry/examples/number-ticker/gradient.d.ts +4 -0
  337. package/registry/examples/number-ticker/gradient.js +11 -0
  338. package/registry/examples/number-ticker/gradient.tsx +10 -0
  339. package/registry/examples/number-ticker/live-total.d.ts +4 -0
  340. package/registry/examples/number-ticker/live-total.js +17 -0
  341. package/registry/examples/number-ticker/live-total.tsx +21 -0
  342. package/registry/examples/number-ticker/stats.d.ts +4 -0
  343. package/registry/examples/number-ticker/stats.js +19 -0
  344. package/registry/examples/number-ticker/stats.tsx +23 -0
  345. package/registry/examples/pagination/cursor.d.ts +4 -0
  346. package/registry/examples/pagination/cursor.js +24 -0
  347. package/registry/examples/pagination/cursor.tsx +20 -0
  348. package/registry/examples/pagination/links.d.ts +4 -0
  349. package/registry/examples/pagination/links.js +11 -0
  350. package/registry/examples/pagination/links.tsx +6 -0
  351. package/registry/examples/pagination/native/cursor.d.ts +4 -0
  352. package/registry/examples/pagination/native/cursor.dark.png +0 -0
  353. package/registry/examples/pagination/native/cursor.js +19 -0
  354. package/registry/examples/pagination/native/cursor.light.png +0 -0
  355. package/registry/examples/pagination/native/cursor.tsx +13 -0
  356. package/registry/examples/pagination/native/pages.d.ts +4 -0
  357. package/registry/examples/pagination/native/pages.dark.png +0 -0
  358. package/registry/examples/pagination/native/pages.js +21 -0
  359. package/registry/examples/pagination/native/pages.light.png +0 -0
  360. package/registry/examples/pagination/native/pages.tsx +14 -0
  361. package/registry/examples/pagination/results.d.ts +4 -0
  362. package/registry/examples/pagination/results.js +23 -0
  363. package/registry/examples/pagination/results.tsx +19 -0
  364. package/registry/examples/pagination/table-footer.d.ts +4 -0
  365. package/registry/examples/pagination/table-footer.js +31 -0
  366. package/registry/examples/pagination/table-footer.tsx +27 -0
  367. package/registry/examples/progress/buffer.d.ts +4 -0
  368. package/registry/examples/progress/buffer.js +11 -0
  369. package/registry/examples/progress/buffer.tsx +10 -0
  370. package/registry/examples/progress/statuses.d.ts +4 -0
  371. package/registry/examples/progress/statuses.js +14 -0
  372. package/registry/examples/progress/statuses.tsx +11 -0
  373. package/registry/examples/progress/steps.d.ts +4 -0
  374. package/registry/examples/progress/steps.js +14 -0
  375. package/registry/examples/progress/steps.tsx +13 -0
  376. package/registry/examples/progress/upload.d.ts +4 -0
  377. package/registry/examples/progress/upload.js +11 -0
  378. package/registry/examples/progress/upload.tsx +10 -0
  379. package/registry/examples/search-field/global.d.ts +4 -0
  380. package/registry/examples/search-field/global.js +19 -0
  381. package/registry/examples/search-field/global.tsx +15 -0
  382. package/registry/examples/search-field/native/default.d.ts +4 -0
  383. package/registry/examples/search-field/native/default.dark.png +0 -0
  384. package/registry/examples/search-field/native/default.js +13 -0
  385. package/registry/examples/search-field/native/default.light.png +0 -0
  386. package/registry/examples/search-field/native/default.tsx +7 -0
  387. package/registry/examples/search-field/suggestions.d.ts +4 -0
  388. package/registry/examples/search-field/suggestions.js +30 -0
  389. package/registry/examples/search-field/suggestions.tsx +27 -0
  390. package/registry/examples/search-field/toolbar.d.ts +4 -0
  391. package/registry/examples/search-field/toolbar.js +17 -0
  392. package/registry/examples/search-field/toolbar.tsx +21 -0
  393. package/registry/examples/skeleton/paragraph.d.ts +4 -0
  394. package/registry/examples/skeleton/paragraph.js +14 -0
  395. package/registry/examples/skeleton/paragraph.tsx +12 -0
  396. package/registry/examples/skeleton/shape-of-content.d.ts +4 -0
  397. package/registry/examples/skeleton/shape-of-content.js +23 -0
  398. package/registry/examples/skeleton/shape-of-content.tsx +26 -0
  399. package/registry/examples/spinner/default.js +5 -2
  400. package/registry/examples/spinner/default.tsx +7 -1
  401. package/registry/examples/spinner/sizes.js +2 -1
  402. package/registry/examples/spinner/sizes.tsx +2 -0
  403. package/registry/examples/spinner/value.d.ts +4 -0
  404. package/registry/examples/spinner/value.js +11 -0
  405. package/registry/examples/spinner/value.tsx +12 -0
  406. package/registry/examples/stepper/checkout.d.ts +4 -0
  407. package/registry/examples/stepper/checkout.js +22 -0
  408. package/registry/examples/stepper/checkout.tsx +17 -0
  409. package/registry/examples/stepper/failed.d.ts +4 -0
  410. package/registry/examples/stepper/failed.js +26 -0
  411. package/registry/examples/stepper/failed.tsx +21 -0
  412. package/registry/examples/stepper/job.d.ts +4 -0
  413. package/registry/examples/stepper/job.js +32 -0
  414. package/registry/examples/stepper/job.tsx +28 -0
  415. package/registry/examples/tag-input/recipients.d.ts +4 -0
  416. package/registry/examples/tag-input/recipients.js +23 -0
  417. package/registry/examples/tag-input/recipients.tsx +20 -0
  418. package/registry/examples/tag-input/video-tags.d.ts +4 -0
  419. package/registry/examples/tag-input/video-tags.js +26 -0
  420. package/registry/examples/tag-input/video-tags.tsx +22 -0
  421. package/registry/examples/toast/grouped.d.ts +4 -0
  422. package/registry/examples/toast/grouped.js +21 -0
  423. package/registry/examples/toast/grouped.tsx +23 -0
  424. package/registry/examples/toast/undo.d.ts +4 -0
  425. package/registry/examples/toast/undo.js +29 -0
  426. package/registry/examples/toast/undo.tsx +30 -0
  427. package/registry/examples/toast/upload-progress.d.ts +4 -0
  428. package/registry/examples/toast/upload-progress.js +29 -0
  429. package/registry/examples/toast/upload-progress.tsx +31 -0
  430. package/registry/examples/video-player/default.d.ts +4 -0
  431. package/registry/examples/video-player/default.js +12 -0
  432. package/registry/examples/video-player/default.tsx +8 -0
  433. package/registry/examples/video-player/gated.d.ts +4 -0
  434. package/registry/examples/video-player/gated.js +26 -0
  435. package/registry/examples/video-player/gated.tsx +23 -0
  436. package/registry/examples/video-player/native/default.d.ts +4 -0
  437. package/registry/examples/video-player/native/default.dark.png +0 -0
  438. package/registry/examples/video-player/native/default.js +18 -0
  439. package/registry/examples/video-player/native/default.light.png +0 -0
  440. package/registry/examples/video-player/native/default.tsx +12 -0
  441. package/registry/examples/video-player/signed-source.d.ts +4 -0
  442. package/registry/examples/video-player/signed-source.js +16 -0
  443. package/registry/examples/video-player/signed-source.tsx +15 -0
  444. package/registry/examples/video-player/vertical.d.ts +4 -0
  445. package/registry/examples/video-player/vertical.js +12 -0
  446. package/registry/examples/video-player/vertical.tsx +12 -0
  447. package/registry/examples/video-trimmer/custom.d.ts +4 -0
  448. package/registry/examples/video-trimmer/custom.js +24 -0
  449. package/registry/examples/video-trimmer/custom.tsx +26 -0
  450. package/registry/examples/video-trimmer/filmstrip.d.ts +4 -0
  451. package/registry/examples/video-trimmer/filmstrip.js +15 -0
  452. package/registry/examples/video-trimmer/filmstrip.tsx +13 -0
  453. package/registry/examples/video-trimmer/playhead.d.ts +4 -0
  454. package/registry/examples/video-trimmer/playhead.js +15 -0
  455. package/registry/examples/video-trimmer/playhead.tsx +13 -0
  456. package/registry/field.json +1 -1
  457. package/registry/file-upload.json +471 -0
  458. package/registry/filter-bar.json +347 -0
  459. package/registry/glow-card.json +162 -0
  460. package/registry/image-cropper.json +313 -0
  461. package/registry/index.json +445 -20
  462. package/registry/iso.json +1355 -0
  463. package/registry/kbd.json +1 -1
  464. package/registry/loader.json +399 -0
  465. package/registry/marquee.json +225 -0
  466. package/registry/mascots.json +3 -3
  467. package/registry/media-capture.json +347 -0
  468. package/registry/meter.json +324 -0
  469. package/registry/nav-bar.json +480 -0
  470. package/registry/number-ticker.json +219 -0
  471. package/registry/page-header.json +1 -1
  472. package/registry/pagination.json +475 -0
  473. package/registry/popover.json +1 -1
  474. package/registry/progress.json +114 -9
  475. package/registry/radio-group.json +1 -1
  476. package/registry/search-field.json +436 -0
  477. package/registry/section-backdrop.json +1 -1
  478. package/registry/separator.json +1 -1
  479. package/registry/skeleton.json +69 -13
  480. package/registry/slider.json +1 -1
  481. package/registry/slot.json +1 -1
  482. package/registry/spinner.json +91 -27
  483. package/registry/stat.json +1 -1
  484. package/registry/stepper.json +174 -0
  485. package/registry/switch.json +1 -1
  486. package/registry/tabs.json +11 -7
  487. package/registry/tag-input.json +363 -0
  488. package/registry/theme.json +3 -3
  489. package/registry/toast.json +41 -13
  490. package/registry/tooltip.json +1 -1
  491. package/registry/video-player.json +598 -0
  492. package/registry/video-trimmer.json +385 -0
  493. package/dist/chunk-FHYZSO2S.js.map +0 -1
  494. package/dist/chunk-PESA2R4U.js +0 -51
  495. package/dist/chunk-PESA2R4U.js.map +0 -1
  496. package/registry/examples/spinner/muted.js +0 -11
  497. package/registry/examples/spinner/muted.tsx +0 -6
  498. /package/registry/examples/{spinner/muted.d.ts → audio-player/podcast.d.ts} +0 -0
package/dist/native.js CHANGED
@@ -1139,19 +1139,62 @@ function OrochiaMark({ size = 48, animated = true, title, neutral: neutralProp }
1139
1139
  ] });
1140
1140
  }
1141
1141
 
1142
+ // src/native/pagination.tsx
1143
+ import { Pressable as Pressable4, StyleSheet as StyleSheet9, Text as Text6, View as View10 } from "react-native";
1144
+ import Svg6, { Path as Path5 } from "react-native-svg";
1145
+ import { jsx as jsx14, jsxs as jsxs11 } from "react/jsx-runtime";
1146
+ function Chevron({ direction, color }) {
1147
+ return /* @__PURE__ */ jsx14(Svg6, { width: 18, height: 18, viewBox: "0 0 24 24", fill: "none", stroke: color, strokeWidth: 2.2, strokeLinecap: "round", strokeLinejoin: "round", "aria-hidden": true, children: /* @__PURE__ */ jsx14(Path5, { d: direction === "left" ? "m15 6-6 6 6 6" : "m9 6 6 6-6 6" }) });
1148
+ }
1149
+ function Pagination({ page = 1, pageCount, onPageChange, hasPrevious, hasNext, onPrevious, onNext, status, disabled, labels, style }) {
1150
+ const { theme, radius: radius3 } = useTheme();
1151
+ const paged = pageCount !== void 0;
1152
+ const count = Math.max(1, pageCount ?? 1);
1153
+ const current = Math.min(Math.max(1, page), count);
1154
+ const canPrevious = !disabled && (paged ? current > 1 : Boolean(hasPrevious));
1155
+ const canNext = !disabled && (paged ? current < count : Boolean(hasNext));
1156
+ const button = (direction, enabled, onPress, label) => /* @__PURE__ */ jsx14(
1157
+ Pressable4,
1158
+ {
1159
+ role: "button",
1160
+ "aria-label": label,
1161
+ "aria-disabled": !enabled,
1162
+ disabled: !enabled,
1163
+ hitSlop: 6,
1164
+ onPress,
1165
+ style: ({ pressed }) => [
1166
+ styles9.button,
1167
+ { borderRadius: radius3.sm, borderColor: theme.borderDefault, backgroundColor: theme.surface1, opacity: enabled ? pressed ? 0.8 : 1 : 0.4 }
1168
+ ],
1169
+ children: /* @__PURE__ */ jsx14(Chevron, { direction, color: theme.textPrimary })
1170
+ }
1171
+ );
1172
+ const text = status ?? (paged ? labels.compact(current, count) : null);
1173
+ return /* @__PURE__ */ jsxs11(View10, { role: "navigation", style: [styles9.row, style], children: [
1174
+ button("left", canPrevious, paged ? () => onPageChange?.(current - 1) : onPrevious, labels.previous),
1175
+ text ? /* @__PURE__ */ jsx14(Text6, { "aria-live": "polite", style: [styles9.status, { color: theme.textSecondary }], children: text }) : null,
1176
+ button("right", canNext, paged ? () => onPageChange?.(current + 1) : onNext, labels.next)
1177
+ ] });
1178
+ }
1179
+ var styles9 = StyleSheet9.create({
1180
+ row: { flexDirection: "row", alignItems: "center", justifyContent: "space-between", gap: 12 },
1181
+ button: { width: 44, height: 44, alignItems: "center", justifyContent: "center", borderWidth: StyleSheet9.hairlineWidth },
1182
+ status: { fontSize: 13, fontWeight: "600", fontVariant: ["tabular-nums"] }
1183
+ });
1184
+
1142
1185
  // src/native/ProductMark.tsx
1143
- import { jsx as jsx14 } from "react/jsx-runtime";
1186
+ import { jsx as jsx15 } from "react/jsx-runtime";
1144
1187
  function ProductMark({ id, ...props }) {
1145
- if (id === "krizaka") return /* @__PURE__ */ jsx14(KrizakaMark, { ...props });
1146
- if (id === "orazaka") return /* @__PURE__ */ jsx14(OrazakaMark, { ...props });
1147
- return /* @__PURE__ */ jsx14(OrochiaMark, { ...props });
1188
+ if (id === "krizaka") return /* @__PURE__ */ jsx15(KrizakaMark, { ...props });
1189
+ if (id === "orazaka") return /* @__PURE__ */ jsx15(OrazakaMark, { ...props });
1190
+ return /* @__PURE__ */ jsx15(OrochiaMark, { ...props });
1148
1191
  }
1149
1192
 
1150
1193
  // src/native/progress.tsx
1151
1194
  import * as React9 from "react";
1152
- import { Animated as Animated6, Easing as Easing4, StyleSheet as StyleSheet9, View as View10 } from "react-native";
1153
- import Svg6, { Circle as Circle5, Defs as Defs6, LinearGradient as LinearGradient6, Rect as Rect3, Stop as Stop6 } from "react-native-svg";
1154
- import { jsx as jsx15, jsxs as jsxs11 } from "react/jsx-runtime";
1195
+ import { Animated as Animated6, Easing as Easing4, StyleSheet as StyleSheet10, View as View11 } from "react-native";
1196
+ import Svg7, { Circle as Circle5, Defs as Defs6, LinearGradient as LinearGradient6, Rect as Rect3, Stop as Stop6 } from "react-native-svg";
1197
+ import { jsx as jsx16, jsxs as jsxs12 } from "react/jsx-runtime";
1155
1198
  var AnimatedCircle = Animated6.createAnimatedComponent(Circle5);
1156
1199
  var BAR = { sm: 4, md: 8, lg: 12 };
1157
1200
  var RING = { sm: 40, md: 80, lg: 144 };
@@ -1193,9 +1236,9 @@ function Progress({ variant = "bar", size = "md", value, max = 100, label, value
1193
1236
  "aria-valuenow": known ? Math.min(max, Math.max(0, value)) : void 0,
1194
1237
  "aria-valuetext": known ? valueText ?? `${percent}%` : valueText
1195
1238
  };
1196
- const gradient = /* @__PURE__ */ jsx15(Defs6, { children: /* @__PURE__ */ jsxs11(LinearGradient6, { id, x1: "0", y1: "0", x2: "1", y2: variant === "ring" ? "1" : "0", children: [
1197
- /* @__PURE__ */ jsx15(Stop6, { offset: "0", stopColor: theme.accent }),
1198
- /* @__PURE__ */ jsx15(Stop6, { offset: "1", stopColor: theme.accent2 })
1239
+ const gradient = /* @__PURE__ */ jsx16(Defs6, { children: /* @__PURE__ */ jsxs12(LinearGradient6, { id, x1: "0", y1: "0", x2: "1", y2: variant === "ring" ? "1" : "0", children: [
1240
+ /* @__PURE__ */ jsx16(Stop6, { offset: "0", stopColor: theme.accent }),
1241
+ /* @__PURE__ */ jsx16(Stop6, { offset: "1", stopColor: theme.accent2 })
1199
1242
  ] }) });
1200
1243
  if (variant === "ring") {
1201
1244
  const side = RING[size];
@@ -1204,11 +1247,11 @@ function Progress({ variant = "bar", size = "md", value, max = 100, label, value
1204
1247
  const circumference = 2 * Math.PI * r;
1205
1248
  const offset = known ? progress.interpolate({ inputRange: [0, 1], outputRange: [circumference, 0] }) : circumference * 0.75;
1206
1249
  const rotate = spin.interpolate({ inputRange: [0, 1], outputRange: ["0deg", "360deg"] });
1207
- return /* @__PURE__ */ jsxs11(View10, { ...a11y, style: [styles9.ring, { width: side, height: side }, style], children: [
1208
- /* @__PURE__ */ jsx15(Animated6.View, { style: [StyleSheet9.absoluteFill, { transform: [{ rotate: known ? "-90deg" : rotate }] }], children: /* @__PURE__ */ jsxs11(Svg6, { width: side, height: side, viewBox: "0 0 100 100", children: [
1250
+ return /* @__PURE__ */ jsxs12(View11, { ...a11y, style: [styles10.ring, { width: side, height: side }, style], children: [
1251
+ /* @__PURE__ */ jsx16(Animated6.View, { style: [StyleSheet10.absoluteFill, { transform: [{ rotate: known ? "-90deg" : rotate }] }], children: /* @__PURE__ */ jsxs12(Svg7, { width: side, height: side, viewBox: "0 0 100 100", children: [
1209
1252
  gradient,
1210
- /* @__PURE__ */ jsx15(Circle5, { cx: 50, cy: 50, r, fill: "none", stroke: theme.borderDefault, strokeWidth: stroke }),
1211
- /* @__PURE__ */ jsx15(
1253
+ /* @__PURE__ */ jsx16(Circle5, { cx: 50, cy: 50, r, fill: "none", stroke: theme.borderDefault, strokeWidth: stroke }),
1254
+ /* @__PURE__ */ jsx16(
1212
1255
  AnimatedCircle,
1213
1256
  {
1214
1257
  cx: 50,
@@ -1228,40 +1271,93 @@ function Progress({ variant = "bar", size = "md", value, max = 100, label, value
1228
1271
  }
1229
1272
  const width = known ? progress.interpolate({ inputRange: [0, 1], outputRange: ["0%", "100%"] }) : "40%";
1230
1273
  const translate = spin.interpolate({ inputRange: [0, 1], outputRange: [-0.4 * track, track] });
1231
- return /* @__PURE__ */ jsx15(
1232
- View10,
1274
+ return /* @__PURE__ */ jsx16(
1275
+ View11,
1233
1276
  {
1234
1277
  ...a11y,
1235
1278
  onLayout: known ? void 0 : (event) => setTrack(event.nativeEvent.layout.width),
1236
- style: [styles9.bar, { height: BAR[size], backgroundColor: theme.surface3 }, style],
1237
- children: /* @__PURE__ */ jsx15(Animated6.View, { style: [styles9.fill, { width }, known || reduce ? null : { transform: [{ translateX: translate }] }], children: /* @__PURE__ */ jsxs11(Svg6, { width: "100%", height: "100%", preserveAspectRatio: "none", children: [
1279
+ style: [styles10.bar, { height: BAR[size], backgroundColor: theme.surface3 }, style],
1280
+ children: /* @__PURE__ */ jsx16(Animated6.View, { style: [styles10.fill, { width }, known || reduce ? null : { transform: [{ translateX: translate }] }], children: /* @__PURE__ */ jsxs12(Svg7, { width: "100%", height: "100%", preserveAspectRatio: "none", children: [
1238
1281
  gradient,
1239
- /* @__PURE__ */ jsx15(Rect3, { x: 0, y: 0, width: "100%", height: "100%", fill: `url(#${id})` })
1282
+ /* @__PURE__ */ jsx16(Rect3, { x: 0, y: 0, width: "100%", height: "100%", fill: `url(#${id})` })
1240
1283
  ] }) })
1241
1284
  }
1242
1285
  );
1243
1286
  }
1244
- var styles9 = StyleSheet9.create({
1287
+ var styles10 = StyleSheet10.create({
1245
1288
  ring: { alignItems: "center", justifyContent: "center" },
1246
1289
  bar: { width: "100%", overflow: "hidden", borderRadius: 9999 },
1247
1290
  fill: { height: "100%", overflow: "hidden", borderRadius: 9999 }
1248
1291
  });
1249
1292
 
1293
+ // src/native/search-field.tsx
1294
+ import * as React10 from "react";
1295
+ import { Pressable as Pressable5, StyleSheet as StyleSheet11, TextInput, View as View12 } from "react-native";
1296
+ import Svg8, { Circle as Circle6, Path as Path6 } from "react-native-svg";
1297
+ import { jsx as jsx17, jsxs as jsxs13 } from "react/jsx-runtime";
1298
+ function SearchField({ label, value, defaultValue = "", onValueChange, onSearch, debounce = 300, onSubmit, clearLabel, style, placeholder, ...props }) {
1299
+ const { theme, radius: radius3 } = useTheme();
1300
+ const [own, setOwn] = React10.useState(defaultValue);
1301
+ const query = value ?? own;
1302
+ const timer2 = React10.useRef(void 0);
1303
+ React10.useEffect(() => () => clearTimeout(timer2.current), []);
1304
+ const change = (next) => {
1305
+ if (value === void 0) setOwn(next);
1306
+ onValueChange?.(next);
1307
+ clearTimeout(timer2.current);
1308
+ if (onSearch) timer2.current = setTimeout(() => onSearch(next), debounce);
1309
+ };
1310
+ return /* @__PURE__ */ jsxs13(View12, { style: [styles11.frame, { borderRadius: radius3.md, borderColor: theme.borderDefault, backgroundColor: theme.surface2 }, style], children: [
1311
+ /* @__PURE__ */ jsxs13(Svg8, { width: 18, height: 18, viewBox: "0 0 24 24", fill: "none", stroke: theme.textSecondary, strokeWidth: 2, strokeLinecap: "round", "aria-hidden": true, children: [
1312
+ /* @__PURE__ */ jsx17(Circle6, { cx: 11, cy: 11, r: 7 }),
1313
+ /* @__PURE__ */ jsx17(Path6, { d: "m20 20-3.5-3.5" })
1314
+ ] }),
1315
+ /* @__PURE__ */ jsx17(
1316
+ TextInput,
1317
+ {
1318
+ role: "searchbox",
1319
+ "aria-label": label,
1320
+ value: query,
1321
+ placeholder,
1322
+ placeholderTextColor: theme.textMuted,
1323
+ returnKeyType: "search",
1324
+ autoCorrect: false,
1325
+ autoCapitalize: "none",
1326
+ clearButtonMode: "never",
1327
+ onChangeText: change,
1328
+ onSubmitEditing: () => {
1329
+ clearTimeout(timer2.current);
1330
+ onSearch?.(query);
1331
+ onSubmit?.(query);
1332
+ },
1333
+ style: [styles11.input, { color: theme.textPrimary }],
1334
+ ...props
1335
+ }
1336
+ ),
1337
+ query ? /* @__PURE__ */ jsx17(Pressable5, { role: "button", "aria-label": clearLabel, hitSlop: 10, onPress: () => change(""), style: styles11.clear, children: /* @__PURE__ */ jsx17(Svg8, { width: 16, height: 16, viewBox: "0 0 24 24", fill: "none", stroke: theme.textSecondary, strokeWidth: 2.4, strokeLinecap: "round", "aria-hidden": true, children: /* @__PURE__ */ jsx17(Path6, { d: "M18 6 6 18M6 6l12 12" }) }) }) : null
1338
+ ] });
1339
+ }
1340
+ var styles11 = StyleSheet11.create({
1341
+ frame: { flexDirection: "row", alignItems: "center", gap: 8, height: 44, paddingLeft: 12, paddingRight: 6, borderWidth: StyleSheet11.hairlineWidth },
1342
+ input: { flex: 1, height: "100%", fontSize: 15, paddingVertical: 0 },
1343
+ clear: { width: 32, height: 32, alignItems: "center", justifyContent: "center" }
1344
+ });
1345
+
1250
1346
  // src/native/segmented.tsx
1251
- import { Pressable as Pressable4, StyleSheet as StyleSheet10, Text as Text6, View as View11 } from "react-native";
1252
- import { jsx as jsx16 } from "react/jsx-runtime";
1347
+ import { Pressable as Pressable6, StyleSheet as StyleSheet12, Text as Text7, View as View13 } from "react-native";
1348
+ import { jsx as jsx18 } from "react/jsx-runtime";
1253
1349
  function Segmented({ options, value, onValueChange, size = "md", "aria-label": label, style }) {
1254
1350
  const { theme, radius: radius3 } = useTheme();
1255
- return /* @__PURE__ */ jsx16(
1256
- View11,
1351
+ return /* @__PURE__ */ jsx18(
1352
+ View13,
1257
1353
  {
1258
1354
  role: "tablist",
1259
1355
  "aria-label": label,
1260
- style: [styles10.track, { backgroundColor: theme.surface2, borderColor: theme.borderSubtle, borderRadius: radius3.md, height: size === "sm" ? 32 : 40 }, style],
1356
+ style: [styles12.track, { backgroundColor: theme.surface2, borderColor: theme.borderSubtle, borderRadius: radius3.md, height: size === "sm" ? 32 : 40 }, style],
1261
1357
  children: options.map((option) => {
1262
1358
  const selected = option.value === value;
1263
- return /* @__PURE__ */ jsx16(
1264
- Pressable4,
1359
+ return /* @__PURE__ */ jsx18(
1360
+ Pressable6,
1265
1361
  {
1266
1362
  role: "tab",
1267
1363
  "aria-selected": selected,
@@ -1271,12 +1367,12 @@ function Segmented({ options, value, onValueChange, size = "md", "aria-label": l
1271
1367
  if (!selected) onValueChange(option.value);
1272
1368
  },
1273
1369
  style: [
1274
- styles10.segment,
1370
+ styles12.segment,
1275
1371
  { borderRadius: radius3.sm },
1276
1372
  selected ? { backgroundColor: theme.surface0, borderColor: theme.borderDefault } : null,
1277
- option.disabled ? styles10.disabled : null
1373
+ option.disabled ? styles12.disabled : null
1278
1374
  ],
1279
- children: /* @__PURE__ */ jsx16(Text6, { numberOfLines: 1, style: [styles10.label, { color: selected ? theme.textPrimary : theme.textSecondary, fontSize: size === "sm" ? 12 : 13 }], children: option.label })
1375
+ children: /* @__PURE__ */ jsx18(Text7, { numberOfLines: 1, style: [styles12.label, { color: selected ? theme.textPrimary : theme.textSecondary, fontSize: size === "sm" ? 12 : 13 }], children: option.label })
1280
1376
  },
1281
1377
  option.value
1282
1378
  );
@@ -1284,17 +1380,17 @@ function Segmented({ options, value, onValueChange, size = "md", "aria-label": l
1284
1380
  }
1285
1381
  );
1286
1382
  }
1287
- var styles10 = StyleSheet10.create({
1288
- track: { flexDirection: "row", padding: 3, gap: 3, borderWidth: StyleSheet10.hairlineWidth },
1289
- segment: { flex: 1, alignItems: "center", justifyContent: "center", paddingHorizontal: 8, borderWidth: StyleSheet10.hairlineWidth, borderColor: "transparent" },
1383
+ var styles12 = StyleSheet12.create({
1384
+ track: { flexDirection: "row", padding: 3, gap: 3, borderWidth: StyleSheet12.hairlineWidth },
1385
+ segment: { flex: 1, alignItems: "center", justifyContent: "center", paddingHorizontal: 8, borderWidth: StyleSheet12.hairlineWidth, borderColor: "transparent" },
1290
1386
  label: { fontWeight: "600" },
1291
1387
  disabled: { opacity: 0.4 }
1292
1388
  });
1293
1389
 
1294
1390
  // src/native/skeleton.tsx
1295
- import * as React10 from "react";
1391
+ import * as React11 from "react";
1296
1392
  import { Animated as Animated7 } from "react-native";
1297
- import { jsx as jsx17 } from "react/jsx-runtime";
1393
+ import { jsx as jsx19 } from "react/jsx-runtime";
1298
1394
  var SHAPE = {
1299
1395
  text: { width: "100%", height: 12, radius: 4 },
1300
1396
  circle: { width: 40, height: 40, radius: 9999 },
@@ -1303,8 +1399,8 @@ var SHAPE = {
1303
1399
  function Skeleton({ shape = "text", width, height, style, testID }) {
1304
1400
  const { theme } = useTheme();
1305
1401
  const reduce = useReducedMotion();
1306
- const [opacity] = React10.useState(() => new Animated7.Value(1));
1307
- React10.useEffect(() => {
1402
+ const [opacity] = React11.useState(() => new Animated7.Value(1));
1403
+ React11.useEffect(() => {
1308
1404
  if (reduce) return;
1309
1405
  const loop = Animated7.loop(
1310
1406
  Animated7.sequence([
@@ -1320,7 +1416,7 @@ function Skeleton({ shape = "text", width, height, style, testID }) {
1320
1416
  }, [reduce, opacity]);
1321
1417
  const s = SHAPE[shape];
1322
1418
  const side = shape === "circle" ? width ?? height ?? s.width : void 0;
1323
- return /* @__PURE__ */ jsx17(
1419
+ return /* @__PURE__ */ jsx19(
1324
1420
  Animated7.View,
1325
1421
  {
1326
1422
  testID,
@@ -1335,10 +1431,10 @@ function Skeleton({ shape = "text", width, height, style, testID }) {
1335
1431
 
1336
1432
  // src/native/spinner.tsx
1337
1433
  import { ActivityIndicator as ActivityIndicator2 } from "react-native";
1338
- import { jsx as jsx18 } from "react/jsx-runtime";
1434
+ import { jsx as jsx20 } from "react/jsx-runtime";
1339
1435
  function Spinner({ label, size = "md", ...props }) {
1340
1436
  const { theme } = useTheme();
1341
- return /* @__PURE__ */ jsx18(
1437
+ return /* @__PURE__ */ jsx20(
1342
1438
  ActivityIndicator2,
1343
1439
  {
1344
1440
  accessible: true,
@@ -1353,9 +1449,9 @@ function Spinner({ label, size = "md", ...props }) {
1353
1449
  }
1354
1450
 
1355
1451
  // src/native/toast.tsx
1356
- import * as React11 from "react";
1357
- import { AccessibilityInfo as AccessibilityInfo5, Animated as Animated8, Pressable as Pressable5, StyleSheet as StyleSheet11, Text as Text7, View as View12 } from "react-native";
1358
- import { Fragment as Fragment3, jsx as jsx19, jsxs as jsxs12 } from "react/jsx-runtime";
1452
+ import * as React12 from "react";
1453
+ import { AccessibilityInfo as AccessibilityInfo5, Animated as Animated8, Pressable as Pressable7, StyleSheet as StyleSheet13, Text as Text8, View as View14 } from "react-native";
1454
+ import { Fragment as Fragment3, jsx as jsx21, jsxs as jsxs14 } from "react/jsx-runtime";
1359
1455
  var items = [];
1360
1456
  var listeners2 = /* @__PURE__ */ new Set();
1361
1457
  var counter = 0;
@@ -1390,76 +1486,76 @@ var toast = Object.assign(show, {
1390
1486
  function ToastView({ item, closeLabel, duration }) {
1391
1487
  const { theme, radius: radius3 } = useTheme();
1392
1488
  const reduce = useReducedMotion();
1393
- const [enter] = React11.useState(() => new Animated8.Value(reduce ? 1 : 0));
1394
- React11.useEffect(() => {
1489
+ const [enter] = React12.useState(() => new Animated8.Value(reduce ? 1 : 0));
1490
+ React12.useEffect(() => {
1395
1491
  if (reduce) enter.setValue(1);
1396
1492
  else Animated8.timing(enter, { toValue: 1, duration: 220, useNativeDriver: true }).start();
1397
1493
  }, [enter, reduce]);
1398
- React11.useEffect(() => {
1494
+ React12.useEffect(() => {
1399
1495
  AccessibilityInfo5.announceForAccessibility(item.description ? `${item.title}. ${item.description}` : item.title);
1400
1496
  }, [item.title, item.description]);
1401
1497
  const ms = item.duration ?? duration;
1402
- React11.useEffect(() => {
1498
+ React12.useEffect(() => {
1403
1499
  if (!Number.isFinite(ms)) return;
1404
1500
  const timer2 = setTimeout(() => dismiss(item.id), ms);
1405
1501
  return () => clearTimeout(timer2);
1406
1502
  }, [item.id, ms]);
1407
1503
  const edge = { success: theme.success, warning: theme.warning, error: theme.danger, info: theme.info, default: theme.borderDefault }[item.tone ?? "default"];
1408
- const text = /* @__PURE__ */ jsxs12(Fragment3, { children: [
1409
- item.icon ? /* @__PURE__ */ jsx19(View12, { "aria-hidden": true, children: item.icon }) : null,
1410
- /* @__PURE__ */ jsxs12(View12, { style: styles11.content, children: [
1411
- /* @__PURE__ */ jsx19(Txt, { variant: "label", numberOfLines: 2, children: item.title }),
1412
- item.description ? /* @__PURE__ */ jsx19(Txt, { variant: "caption", tone: "secondary", numberOfLines: 3, children: item.description }) : null
1504
+ const text = /* @__PURE__ */ jsxs14(Fragment3, { children: [
1505
+ item.icon ? /* @__PURE__ */ jsx21(View14, { "aria-hidden": true, children: item.icon }) : null,
1506
+ /* @__PURE__ */ jsxs14(View14, { style: styles13.content, children: [
1507
+ /* @__PURE__ */ jsx21(Txt, { variant: "label", numberOfLines: 2, children: item.title }),
1508
+ item.description ? /* @__PURE__ */ jsx21(Txt, { variant: "caption", tone: "secondary", numberOfLines: 3, children: item.description }) : null
1413
1509
  ] })
1414
1510
  ] });
1415
- const body = /* @__PURE__ */ jsxs12(Fragment3, { children: [
1416
- item.onPress ? /* @__PURE__ */ jsx19(
1417
- Pressable5,
1511
+ const body = /* @__PURE__ */ jsxs14(Fragment3, { children: [
1512
+ item.onPress ? /* @__PURE__ */ jsx21(
1513
+ Pressable7,
1418
1514
  {
1419
1515
  role: "button",
1420
1516
  onPress: () => {
1421
1517
  item.onPress?.();
1422
1518
  dismiss(item.id);
1423
1519
  },
1424
- style: ({ pressed }) => [styles11.main, { opacity: pressed ? 0.8 : 1 }],
1520
+ style: ({ pressed }) => [styles13.main, { opacity: pressed ? 0.8 : 1 }],
1425
1521
  children: text
1426
1522
  }
1427
- ) : /* @__PURE__ */ jsx19(View12, { style: styles11.main, children: text }),
1428
- item.action ? /* @__PURE__ */ jsx19(
1429
- Pressable5,
1523
+ ) : /* @__PURE__ */ jsx21(View14, { style: styles13.main, children: text }),
1524
+ item.action ? /* @__PURE__ */ jsx21(
1525
+ Pressable7,
1430
1526
  {
1431
1527
  role: "button",
1432
1528
  onPress: () => {
1433
1529
  item.action?.onPress();
1434
1530
  dismiss(item.id);
1435
1531
  },
1436
- style: [styles11.action, { backgroundColor: theme.accent, borderRadius: radius3.sm }],
1437
- children: /* @__PURE__ */ jsx19(Text7, { style: [styles11.actionLabel, { color: theme.onAccent }], children: item.action.label })
1532
+ style: [styles13.action, { backgroundColor: theme.accent, borderRadius: radius3.sm }],
1533
+ children: /* @__PURE__ */ jsx21(Text8, { style: [styles13.actionLabel, { color: theme.onAccent }], children: item.action.label })
1438
1534
  }
1439
1535
  ) : null,
1440
- /* @__PURE__ */ jsx19(Pressable5, { role: "button", "aria-label": closeLabel, hitSlop: 10, onPress: () => dismiss(item.id), style: styles11.close, children: /* @__PURE__ */ jsx19(Text7, { style: [styles11.cross, { color: theme.textSecondary }], children: "\xD7" }) })
1536
+ /* @__PURE__ */ jsx21(Pressable7, { role: "button", "aria-label": closeLabel, hitSlop: 10, onPress: () => dismiss(item.id), style: styles13.close, children: /* @__PURE__ */ jsx21(Text8, { style: [styles13.cross, { color: theme.textSecondary }], children: "\xD7" }) })
1441
1537
  ] });
1442
1538
  const frame = [
1443
- styles11.toast,
1539
+ styles13.toast,
1444
1540
  { backgroundColor: theme.surface2, borderColor: theme.borderDefault, borderLeftColor: edge, borderRadius: radius3.lg, shadowColor: theme.scrimStrong }
1445
1541
  ];
1446
1542
  const motion3 = { transform: [{ translateY: enter.interpolate({ inputRange: [0, 1], outputRange: [-8, 0] }) }] };
1447
- return /* @__PURE__ */ jsx19(Animated8.View, { "aria-live": "polite", style: motion3, children: /* @__PURE__ */ jsx19(View12, { style: frame, children: body }) });
1543
+ return /* @__PURE__ */ jsx21(Animated8.View, { "aria-live": "polite", style: motion3, children: /* @__PURE__ */ jsx21(View14, { style: frame, children: body }) });
1448
1544
  }
1449
1545
  function Toaster({ closeLabel, position = "top", offset = 12, duration = 6e3, max = 3 }) {
1450
- const all = React11.useSyncExternalStore(subscribe2, snapshot, snapshot);
1546
+ const all = React12.useSyncExternalStore(subscribe2, snapshot, snapshot);
1451
1547
  const shown = all.slice(-max);
1452
1548
  if (shown.length === 0) return null;
1453
- return /* @__PURE__ */ jsx19(View12, { pointerEvents: "box-none", style: [styles11.stack, position === "top" ? { top: offset } : { bottom: offset }], children: (position === "top" ? shown : [...shown].reverse()).map((item) => /* @__PURE__ */ jsx19(ToastView, { item, closeLabel, duration }, item.id)) });
1549
+ return /* @__PURE__ */ jsx21(View14, { pointerEvents: "box-none", style: [styles13.stack, position === "top" ? { top: offset } : { bottom: offset }], children: (position === "top" ? shown : [...shown].reverse()).map((item) => /* @__PURE__ */ jsx21(ToastView, { item, closeLabel, duration }, item.id)) });
1454
1550
  }
1455
- var styles11 = StyleSheet11.create({
1551
+ var styles13 = StyleSheet13.create({
1456
1552
  stack: { position: "absolute", left: 12, right: 12, gap: 8, zIndex: 100 },
1457
1553
  toast: {
1458
1554
  flexDirection: "row",
1459
1555
  alignItems: "center",
1460
1556
  gap: 10,
1461
1557
  padding: 12,
1462
- borderWidth: StyleSheet11.hairlineWidth,
1558
+ borderWidth: StyleSheet13.hairlineWidth,
1463
1559
  borderLeftWidth: 4,
1464
1560
  shadowOpacity: 0.3,
1465
1561
  shadowRadius: 16,
@@ -1496,8 +1592,10 @@ export {
1496
1592
  Mascot,
1497
1593
  OrazakaMark,
1498
1594
  OrochiaMark,
1595
+ Pagination,
1499
1596
  ProductMark,
1500
1597
  Progress,
1598
+ SearchField,
1501
1599
  Segmented,
1502
1600
  Skeleton,
1503
1601
  Spinner,