@logicplanes/kaeso-ui 0.2.2 → 0.3.1

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 (349) hide show
  1. package/AGENTS.md +2 -0
  2. package/NOTICE.md +1 -1
  3. package/ai/component-guides.md +223 -24
  4. package/ai/component-registry.json +985 -91
  5. package/ai/component-registry.md +219 -52
  6. package/ai/icons.md +1 -1
  7. package/ai/tokens.md +7 -3
  8. package/dist/blocks/delete-resource.js +1 -1
  9. package/dist/blocks/pages.js +5 -5
  10. package/dist/blocks/resource-list.js +4 -4
  11. package/dist/chunks/app-frame-B9vrgwaE.js +220 -0
  12. package/dist/chunks/app-frame-B9vrgwaE.js.map +1 -0
  13. package/dist/chunks/{avatar-D2nJNbtC.js → avatar-DOzOhYJr.js} +2 -2
  14. package/dist/chunks/{avatar-D2nJNbtC.js.map → avatar-DOzOhYJr.js.map} +1 -1
  15. package/dist/chunks/{badge-Dkyhs0_j.js → badge-wUHlj7m3.js} +2 -2
  16. package/dist/chunks/{badge-Dkyhs0_j.js.map → badge-wUHlj7m3.js.map} +1 -1
  17. package/dist/chunks/{banner-DxGBPQ7p.js → banner-BBlNFHd-.js} +4 -4
  18. package/dist/chunks/{banner-DxGBPQ7p.js.map → banner-BBlNFHd-.js.map} +1 -1
  19. package/dist/chunks/{button-DQvoOxVQ.js → button-CAPyW-v8.js} +8 -8
  20. package/dist/chunks/{button-DQvoOxVQ.js.map → button-CAPyW-v8.js.map} +1 -1
  21. package/dist/chunks/{calendar-CN3YJi2k.js → calendar-CBeptQFq.js} +2 -2
  22. package/dist/chunks/{calendar-CN3YJi2k.js.map → calendar-CBeptQFq.js.map} +1 -1
  23. package/dist/chunks/{checkbox-BgRdbfCE.js → checkbox-C5yvSS7O.js} +3 -3
  24. package/dist/chunks/{checkbox-BgRdbfCE.js.map → checkbox-C5yvSS7O.js.map} +1 -1
  25. package/dist/chunks/{cn-CidVUKMm.js → cn-DUDmdLpZ.js} +3 -1
  26. package/dist/chunks/cn-DUDmdLpZ.js.map +1 -0
  27. package/dist/chunks/{code-BADhvsgC.js → code-C49NzHUQ.js} +2 -2
  28. package/dist/chunks/{code-BADhvsgC.js.map → code-C49NzHUQ.js.map} +1 -1
  29. package/dist/chunks/{code-block-DxtladFW.js → code-block-DREsvJ-g.js} +24 -21
  30. package/dist/chunks/code-block-DREsvJ-g.js.map +1 -0
  31. package/dist/chunks/{collapsible-Cw_1aem5.js → collapsible-CDQq1Y9x.js} +6 -6
  32. package/dist/chunks/collapsible-CDQq1Y9x.js.map +1 -0
  33. package/dist/chunks/combobox-DqtzsAKG.js +314 -0
  34. package/dist/chunks/combobox-DqtzsAKG.js.map +1 -0
  35. package/dist/chunks/command-list-D5k0uvkR.js +417 -0
  36. package/dist/chunks/command-list-D5k0uvkR.js.map +1 -0
  37. package/dist/chunks/{copy-button-DXxn-YYZ.js → copy-button-CNpEnS04.js} +6 -6
  38. package/dist/chunks/{copy-button-DXxn-YYZ.js.map → copy-button-CNpEnS04.js.map} +1 -1
  39. package/dist/chunks/{core-K960A4OT.js → core-CqLWVMDI.js} +36 -36
  40. package/dist/chunks/core-CqLWVMDI.js.map +1 -0
  41. package/dist/chunks/{date-popup-B-6xhb-1.js → date-popup-BgDz6SUj.js} +4 -4
  42. package/dist/chunks/{date-popup-B-6xhb-1.js.map → date-popup-BgDz6SUj.js.map} +1 -1
  43. package/dist/chunks/{de-CTAo4KL7.js → de-CkXZKaBD.js} +37 -5
  44. package/dist/chunks/de-CkXZKaBD.js.map +1 -0
  45. package/dist/chunks/dialog-truWH0qe.js +353 -0
  46. package/dist/chunks/dialog-truWH0qe.js.map +1 -0
  47. package/dist/chunks/{empty-DIbBpytW.js → empty-YXmSkKzR.js} +2 -2
  48. package/dist/chunks/{empty-DIbBpytW.js.map → empty-YXmSkKzR.js.map} +1 -1
  49. package/dist/chunks/{field-d8V94bvZ.js → field-BZriODU7.js} +3 -3
  50. package/dist/chunks/field-BZriODU7.js.map +1 -0
  51. package/dist/chunks/{icon-CeNQtobn.js → icon-BqujXDUc.js} +2 -2
  52. package/dist/chunks/{icon-CeNQtobn.js.map → icon-BqujXDUc.js.map} +1 -1
  53. package/dist/chunks/{icon-button-_x1RUphC.js → icon-button-D4O4puwH.js} +3 -3
  54. package/dist/chunks/{icon-button-_x1RUphC.js.map → icon-button-D4O4puwH.js.map} +1 -1
  55. package/dist/chunks/identity-CsZvAUwu.js +361 -0
  56. package/dist/chunks/identity-CsZvAUwu.js.map +1 -0
  57. package/dist/chunks/{input-CNTfI6YE.js → input-B0wtkcNh.js} +5 -5
  58. package/dist/chunks/{input-CNTfI6YE.js.map → input-B0wtkcNh.js.map} +1 -1
  59. package/dist/chunks/{input-group-CYA1MEoZ.js → input-group-BQLw06B0.js} +33 -27
  60. package/dist/chunks/input-group-BQLw06B0.js.map +1 -0
  61. package/dist/chunks/{inset-BLMdxX4I.js → inset-BnBj8NJV.js} +12 -2
  62. package/dist/chunks/inset-BnBj8NJV.js.map +1 -0
  63. package/dist/chunks/{iso-field-1qmg7TP8.js → iso-field-BUXgY1dB.js} +5 -3
  64. package/dist/chunks/{iso-field-1qmg7TP8.js.map → iso-field-BUXgY1dB.js.map} +1 -1
  65. package/dist/chunks/{json-view-B6KHIWzh.js → json-view-BkG2hTXV.js} +11 -10
  66. package/dist/chunks/{json-view-B6KHIWzh.js.map → json-view-BkG2hTXV.js.map} +1 -1
  67. package/dist/chunks/{kbd-CBcBDvqU.js → kbd-DqWmbr_e.js} +2 -2
  68. package/dist/chunks/{kbd-CBcBDvqU.js.map → kbd-DqWmbr_e.js.map} +1 -1
  69. package/dist/chunks/{link-vz9aV8WX.js → link-YMcxM-BZ.js} +4 -4
  70. package/dist/chunks/{link-vz9aV8WX.js.map → link-YMcxM-BZ.js.map} +1 -1
  71. package/dist/chunks/{link-provider---9JdxTg.js → link-provider-BsUxhZKG.js} +2 -2
  72. package/dist/chunks/{link-provider---9JdxTg.js.map → link-provider-BsUxhZKG.js.map} +1 -1
  73. package/dist/chunks/list-wXZIZo_s.js +492 -0
  74. package/dist/chunks/list-wXZIZo_s.js.map +1 -0
  75. package/dist/chunks/{loader-CUehxvSZ.js → loader-ENBh2Fbt.js} +2 -2
  76. package/dist/chunks/{loader-CUehxvSZ.js.map → loader-ENBh2Fbt.js.map} +1 -1
  77. package/dist/chunks/{markdown-5NyaHHfN.js → markdown-DWyxjsSY.js} +10 -10
  78. package/dist/chunks/{markdown-5NyaHHfN.js.map → markdown-DWyxjsSY.js.map} +1 -1
  79. package/dist/chunks/{menu-DyVPwgfF.js → menu-Bnfi9P3t.js} +7 -7
  80. package/dist/chunks/{menu-DyVPwgfF.js.map → menu-Bnfi9P3t.js.map} +1 -1
  81. package/dist/chunks/{meter-DWhyzFGQ.js → meter-DhTnem4k.js} +2 -2
  82. package/dist/chunks/{meter-DWhyzFGQ.js.map → meter-DhTnem4k.js.map} +1 -1
  83. package/dist/chunks/nav-sheet-QqNRHo-y.js +60 -0
  84. package/dist/chunks/nav-sheet-QqNRHo-y.js.map +1 -0
  85. package/dist/chunks/{nav-wordmark-DLkItdvo.js → nav-wordmark-DmbT1Aiw.js} +2 -2
  86. package/dist/chunks/{nav-wordmark-DLkItdvo.js.map → nav-wordmark-DmbT1Aiw.js.map} +1 -1
  87. package/dist/chunks/option-checkbox-Df7WhGn4.js +25 -0
  88. package/dist/chunks/option-checkbox-Df7WhGn4.js.map +1 -0
  89. package/dist/chunks/over-sheet-B8vzr_zU.js +8 -0
  90. package/dist/chunks/over-sheet-B8vzr_zU.js.map +1 -0
  91. package/dist/chunks/{page-header-CEPZzhRp.js → page-header-Ccnrspbp.js} +5 -5
  92. package/dist/chunks/{page-header-CEPZzhRp.js.map → page-header-Ccnrspbp.js.map} +1 -1
  93. package/dist/chunks/{pagination-CCMxQ5pH.js → pagination-CEmWZNjp.js} +5 -4
  94. package/dist/chunks/{pagination-CCMxQ5pH.js.map → pagination-CEmWZNjp.js.map} +1 -1
  95. package/dist/chunks/picker-popover-C4ElNk7t.js +102 -0
  96. package/dist/chunks/picker-popover-C4ElNk7t.js.map +1 -0
  97. package/dist/chunks/{popover-BE7VO-a4.js → popover-bjxg020P.js} +3 -3
  98. package/dist/chunks/{popover-BE7VO-a4.js.map → popover-bjxg020P.js.map} +1 -1
  99. package/dist/chunks/{radio-CUxbLCvD.js → radio-DwYcXAzv.js} +2 -2
  100. package/dist/chunks/{radio-CUxbLCvD.js.map → radio-DwYcXAzv.js.map} +1 -1
  101. package/dist/chunks/range-popup-CG9Jo5B7.js +128 -0
  102. package/dist/chunks/range-popup-CG9Jo5B7.js.map +1 -0
  103. package/dist/chunks/{release-art-DEc9HNa6.js → release-art-Ogl-L1Vh.js} +189 -183
  104. package/dist/chunks/release-art-Ogl-L1Vh.js.map +1 -0
  105. package/dist/chunks/{resize-motion-CMaidkwe.js → resize-motion-BWGMchyP.js} +27 -23
  106. package/dist/chunks/resize-motion-BWGMchyP.js.map +1 -0
  107. package/dist/chunks/{rights-BbiJ0AJB.js → rights-hMoaFasn.js} +12 -12
  108. package/dist/chunks/rights-hMoaFasn.js.map +1 -0
  109. package/dist/chunks/{section-DzOLLN1p.js → section-BsET7Fo-.js} +4 -4
  110. package/dist/chunks/{section-DzOLLN1p.js.map → section-BsET7Fo-.js.map} +1 -1
  111. package/dist/chunks/{segmented-MrinfDL8.js → segmented-DXKVF-nY.js} +4 -4
  112. package/dist/chunks/{segmented-MrinfDL8.js.map → segmented-DXKVF-nY.js.map} +1 -1
  113. package/dist/chunks/{select-Bc4kRiSG.js → select-Bbv2f5F8.js} +63 -80
  114. package/dist/chunks/select-Bbv2f5F8.js.map +1 -0
  115. package/dist/chunks/{separator-D5AzVFTS.js → separator-CpAUELNs.js} +2 -2
  116. package/dist/chunks/{separator-D5AzVFTS.js.map → separator-CpAUELNs.js.map} +1 -1
  117. package/dist/chunks/{sidebar-5IA18LuP.js → sidebar-Dey1ZfGt.js} +54 -51
  118. package/dist/chunks/sidebar-Dey1ZfGt.js.map +1 -0
  119. package/dist/chunks/{sidebar-menu-DRWRxcJ3.js → sidebar-menu-ct8IiL4z.js} +2 -2
  120. package/dist/chunks/{sidebar-menu-DRWRxcJ3.js.map → sidebar-menu-ct8IiL4z.js.map} +1 -1
  121. package/dist/chunks/{skeleton-kfuqdl1a.js → skeleton-BM797MAg.js} +2 -2
  122. package/dist/chunks/{skeleton-kfuqdl1a.js.map → skeleton-BM797MAg.js.map} +1 -1
  123. package/dist/chunks/{slider-DbhjJ3ML.js → slider-Ds-tqY-1.js} +2 -2
  124. package/dist/chunks/{slider-DbhjJ3ML.js.map → slider-Ds-tqY-1.js.map} +1 -1
  125. package/dist/chunks/{status-dot-BzMlYuMe.js → status-dot-BqVOlShY.js} +3 -3
  126. package/dist/chunks/{status-dot-BzMlYuMe.js.map → status-dot-BqVOlShY.js.map} +1 -1
  127. package/dist/chunks/{styles-Btvg2DCf.js → styles-CVJU9t9v.js} +2 -2
  128. package/dist/chunks/{styles-Btvg2DCf.js.map → styles-CVJU9t9v.js.map} +1 -1
  129. package/dist/chunks/{swap-text-BhPI8DOf.js → swap-text-Cica0pUr.js} +2 -2
  130. package/dist/chunks/{swap-text-BhPI8DOf.js.map → swap-text-Cica0pUr.js.map} +1 -1
  131. package/dist/chunks/{switch-XMY_CQE-.js → switch-CSKMEomo.js} +3 -3
  132. package/dist/chunks/{switch-XMY_CQE-.js.map → switch-CSKMEomo.js.map} +1 -1
  133. package/dist/chunks/{table-DYKa86af.js → table-D-36EM7f.js} +2 -2
  134. package/dist/chunks/{table-DYKa86af.js.map → table-D-36EM7f.js.map} +1 -1
  135. package/dist/chunks/{tag-Dg89uYpV.js → tag-CwDKXVHj.js} +4 -4
  136. package/dist/chunks/{tag-Dg89uYpV.js.map → tag-CwDKXVHj.js.map} +1 -1
  137. package/dist/chunks/{text--5MKh2G4.js → text-Dvvgg5Jt.js} +3 -3
  138. package/dist/chunks/{text--5MKh2G4.js.map → text-Dvvgg5Jt.js.map} +1 -1
  139. package/dist/chunks/{textarea-Cj8iR82R.js → textarea-2d373OyU.js} +35 -31
  140. package/dist/chunks/textarea-2d373OyU.js.map +1 -0
  141. package/dist/chunks/timeseries-LRDAZHV0.js +339 -0
  142. package/dist/chunks/timeseries-LRDAZHV0.js.map +1 -0
  143. package/dist/chunks/{toolbar-Dw3uxpsE.js → toolbar-nVLFWH2i.js} +3 -3
  144. package/dist/chunks/{toolbar-Dw3uxpsE.js.map → toolbar-nVLFWH2i.js.map} +1 -1
  145. package/dist/chunks/{tooltip-DEbCCsru.js → tooltip-S1DmyLVl.js} +4 -4
  146. package/dist/chunks/{tooltip-DEbCCsru.js.map → tooltip-S1DmyLVl.js.map} +1 -1
  147. package/dist/chunks/{tooltip-root-DRd4ciUv.js → tooltip-root-vjylFUqw.js} +4 -4
  148. package/dist/chunks/{tooltip-root-DRd4ciUv.js.map → tooltip-root-vjylFUqw.js.map} +1 -1
  149. package/dist/chunks/{virtual-rows-BZe49bKi.js → virtual-rows-yAMjeAwj.js} +4 -3
  150. package/dist/chunks/virtual-rows-yAMjeAwj.js.map +1 -0
  151. package/dist/chunks/{zh-CN-C7GmVswt.js → zh-CN-CqEA4PCM.js} +37 -5
  152. package/dist/chunks/zh-CN-CqEA4PCM.js.map +1 -0
  153. package/dist/components/app-frame.js +2 -2
  154. package/dist/components/avatar.js +1 -1
  155. package/dist/components/badge.js +1 -1
  156. package/dist/components/banner.js +1 -1
  157. package/dist/components/button-group.js +33 -32
  158. package/dist/components/button-group.js.map +1 -1
  159. package/dist/components/button.js +1 -1
  160. package/dist/components/calendar.js +1 -1
  161. package/dist/components/charts/bar.js +34 -31
  162. package/dist/components/charts/bar.js.map +1 -1
  163. package/dist/components/charts/donut.js +2 -2
  164. package/dist/components/charts/gauge.js +2 -2
  165. package/dist/components/charts/heatmap.js +1 -1
  166. package/dist/components/charts/sankey.js +2 -2
  167. package/dist/components/charts/sparkline.js +1 -1
  168. package/dist/components/charts/timeseries.js +1 -255
  169. package/dist/components/charts.js +3 -3
  170. package/dist/components/checkbox.js +1 -1
  171. package/dist/components/code-block.js +2 -2
  172. package/dist/components/code.js +1 -1
  173. package/dist/components/collapsible.js +1 -1
  174. package/dist/components/combobox.js +1 -1
  175. package/dist/components/command-list.js +4 -0
  176. package/dist/components/command-palette.js +120 -171
  177. package/dist/components/command-palette.js.map +1 -1
  178. package/dist/components/copy-button.js +1 -1
  179. package/dist/components/data-table.js +251 -193
  180. package/dist/components/data-table.js.map +1 -1
  181. package/dist/components/date-picker.js +6 -6
  182. package/dist/components/dialog.js +7 -9
  183. package/dist/components/dialog.js.map +1 -1
  184. package/dist/components/display-options.js +67 -53
  185. package/dist/components/display-options.js.map +1 -1
  186. package/dist/components/empty.js +1 -1
  187. package/dist/components/field.js +1 -1
  188. package/dist/components/filter-chip.js +138 -63
  189. package/dist/components/filter-chip.js.map +1 -1
  190. package/dist/components/filter-row.js +2 -2
  191. package/dist/components/flow.js +2 -2
  192. package/dist/components/heading.js +1 -1
  193. package/dist/components/icon-button.js +1 -1
  194. package/dist/components/icon.js +1 -1
  195. package/dist/components/input.js +56 -54
  196. package/dist/components/input.js.map +1 -1
  197. package/dist/components/kaeso/conversation.js +88 -79
  198. package/dist/components/kaeso/conversation.js.map +1 -1
  199. package/dist/components/kaeso/identity.js +1 -1
  200. package/dist/components/kaeso/moments.js +8 -8
  201. package/dist/components/kaeso/moments.js.map +1 -1
  202. package/dist/components/kaeso/rights.js +1 -1
  203. package/dist/components/kaeso/usage.js +6 -6
  204. package/dist/components/kaeso/usage.js.map +1 -1
  205. package/dist/components/kaeso.js +212 -84
  206. package/dist/components/kaeso.js.map +1 -1
  207. package/dist/components/kbd.js +1 -1
  208. package/dist/components/key-value.js +3 -3
  209. package/dist/components/label.js +1 -1
  210. package/dist/components/layout.js +1 -1
  211. package/dist/components/link.js +1 -1
  212. package/dist/components/list.js +1 -1
  213. package/dist/components/loader.js +2 -2
  214. package/dist/components/logo.js +2 -2
  215. package/dist/components/markdown.js +1 -1
  216. package/dist/components/menu.js +2 -2
  217. package/dist/components/meter.js +1 -1
  218. package/dist/components/page-header.js +1 -1
  219. package/dist/components/pagination.js +1 -1
  220. package/dist/components/playground.js +654 -381
  221. package/dist/components/playground.js.map +1 -1
  222. package/dist/components/popover.js +2 -2
  223. package/dist/components/qr-code.js +1 -1
  224. package/dist/components/radio.js +1 -1
  225. package/dist/components/release-art.js +1 -1
  226. package/dist/components/scroll-area.js +1 -1
  227. package/dist/components/section.js +1 -1
  228. package/dist/components/segmented.js +1 -1
  229. package/dist/components/select.js +1 -1
  230. package/dist/components/separator.js +1 -1
  231. package/dist/components/settings.js +3 -3
  232. package/dist/components/sheet.js +69 -52
  233. package/dist/components/sheet.js.map +1 -1
  234. package/dist/components/sidebar.js +1 -1
  235. package/dist/components/skeleton.js +1 -1
  236. package/dist/components/slider.js +1 -1
  237. package/dist/components/stat.js +88 -74
  238. package/dist/components/stat.js.map +1 -1
  239. package/dist/components/status-dot.js +1 -1
  240. package/dist/components/surface.js +1 -1
  241. package/dist/components/swap-text.js +1 -1
  242. package/dist/components/switch.js +1 -1
  243. package/dist/components/table.js +1 -1
  244. package/dist/components/tabs.js +48 -49
  245. package/dist/components/tabs.js.map +1 -1
  246. package/dist/components/tag.js +1 -1
  247. package/dist/components/text.js +1 -1
  248. package/dist/components/theme-image.js +1 -1
  249. package/dist/components/theme-menu.js +2 -2
  250. package/dist/components/theme-select.js +1 -1
  251. package/dist/components/timeline.js +1 -1
  252. package/dist/components/toast.js +4 -4
  253. package/dist/components/toc.js +1 -1
  254. package/dist/components/toolbar.js +1 -1
  255. package/dist/components/tooltip.js +1 -1
  256. package/dist/components/visually-hidden.js +1 -1
  257. package/dist/format.js +87 -50
  258. package/dist/format.js.map +1 -1
  259. package/dist/i18n-provider.js +1 -1
  260. package/dist/index.js +115 -112
  261. package/dist/kaeso.css +20 -7
  262. package/dist/styles.css +1 -1
  263. package/dist/types/components/charts/bar.d.ts +6 -0
  264. package/dist/types/components/charts/core.d.ts +2 -2
  265. package/dist/types/components/charts/docs.d.ts +7 -0
  266. package/dist/types/components/charts/time-axis.d.ts +5 -0
  267. package/dist/types/components/charts/timeseries.d.ts +9 -0
  268. package/dist/types/components/code-block/highlighter.d.ts +2 -0
  269. package/dist/types/components/combobox/combobox.d.ts +2 -0
  270. package/dist/types/components/combobox/docs.d.ts +2 -4
  271. package/dist/types/components/command-list/command-list.d.ts +84 -0
  272. package/dist/types/components/command-list/docs.d.ts +52 -0
  273. package/dist/types/components/command-list/index.d.ts +3 -0
  274. package/dist/types/components/command-list/match.d.ts +1 -0
  275. package/dist/types/components/command-list/picker-popover.d.ts +44 -0
  276. package/dist/types/components/data-table/data-table.d.ts +3 -2
  277. package/dist/types/components/data-table/docs.d.ts +1 -0
  278. package/dist/types/components/date-picker/docs.d.ts +0 -6
  279. package/dist/types/components/dialog/dialog.d.ts +24 -0
  280. package/dist/types/components/dialog/docs.d.ts +4 -0
  281. package/dist/types/components/display-options/display-options.d.ts +1 -0
  282. package/dist/types/components/filter-chip/docs.d.ts +4 -0
  283. package/dist/types/components/filter-chip/filter-chip.d.ts +7 -0
  284. package/dist/types/components/input/docs.d.ts +2 -12
  285. package/dist/types/components/input/number-input.d.ts +1 -0
  286. package/dist/types/components/input/tag-input.d.ts +1 -0
  287. package/dist/types/components/kaeso/docs.d.ts +34 -0
  288. package/dist/types/components/kaeso/identity.d.ts +10 -1
  289. package/dist/types/components/kaeso/index.d.ts +1 -0
  290. package/dist/types/components/kaeso/provider-marks.d.ts +5 -1
  291. package/dist/types/components/kaeso/provider-picker.d.ts +42 -0
  292. package/dist/types/components/list/docs.d.ts +2 -0
  293. package/dist/types/components/list/list.d.ts +2 -0
  294. package/dist/types/components/menu/styles.d.ts +1 -1
  295. package/dist/types/components/playground/docs.d.ts +32 -0
  296. package/dist/types/components/playground/index.d.ts +1 -0
  297. package/dist/types/components/playground/model-picker.d.ts +39 -4
  298. package/dist/types/components/playground/reasoning.d.ts +29 -0
  299. package/dist/types/components/playground/response-view.d.ts +7 -1
  300. package/dist/types/components/release-art/docs.d.ts +1 -0
  301. package/dist/types/components/release-art/release-art.d.ts +1 -0
  302. package/dist/types/components/select/docs.d.ts +0 -2
  303. package/dist/types/components/select/option-checkbox.d.ts +1 -0
  304. package/dist/types/components/sidebar/sidebar.d.ts +1 -0
  305. package/dist/types/components/stat/docs.d.ts +1 -0
  306. package/dist/types/components/stat/stat.d.ts +1 -0
  307. package/dist/types/format/index.d.ts +6 -0
  308. package/dist/types/index.d.ts +1 -0
  309. package/dist/types/utils/index.d.ts +1 -1
  310. package/dist/types/utils/inset.d.ts +5 -0
  311. package/dist/types/utils/over-sheet.d.ts +1 -0
  312. package/dist/types/utils/restore-focus.d.ts +1 -1
  313. package/dist/utils.js +4 -4
  314. package/foundations/layout.md +45 -0
  315. package/foundations/writing.md +1 -0
  316. package/package.json +2 -2
  317. package/dist/chunks/app-frame-BXh-06HL.js +0 -214
  318. package/dist/chunks/app-frame-BXh-06HL.js.map +0 -1
  319. package/dist/chunks/cn-CidVUKMm.js.map +0 -1
  320. package/dist/chunks/code-block-DxtladFW.js.map +0 -1
  321. package/dist/chunks/collapsible-Cw_1aem5.js.map +0 -1
  322. package/dist/chunks/combobox-D30Wt11R.js +0 -291
  323. package/dist/chunks/combobox-D30Wt11R.js.map +0 -1
  324. package/dist/chunks/core-K960A4OT.js.map +0 -1
  325. package/dist/chunks/de-CTAo4KL7.js.map +0 -1
  326. package/dist/chunks/dialog-LNKgPEsV.js +0 -319
  327. package/dist/chunks/dialog-LNKgPEsV.js.map +0 -1
  328. package/dist/chunks/field-d8V94bvZ.js.map +0 -1
  329. package/dist/chunks/field-press-DwzBFafd.js +0 -10
  330. package/dist/chunks/field-press-DwzBFafd.js.map +0 -1
  331. package/dist/chunks/identity-BtZC_d_Q.js +0 -342
  332. package/dist/chunks/identity-BtZC_d_Q.js.map +0 -1
  333. package/dist/chunks/input-group-CYA1MEoZ.js.map +0 -1
  334. package/dist/chunks/inset-BLMdxX4I.js.map +0 -1
  335. package/dist/chunks/list-CzaiyNja.js +0 -483
  336. package/dist/chunks/list-CzaiyNja.js.map +0 -1
  337. package/dist/chunks/nav-sheet-BIErlV74.js +0 -58
  338. package/dist/chunks/nav-sheet-BIErlV74.js.map +0 -1
  339. package/dist/chunks/range-popup-DGOnGGag.js +0 -111
  340. package/dist/chunks/range-popup-DGOnGGag.js.map +0 -1
  341. package/dist/chunks/release-art-DEc9HNa6.js.map +0 -1
  342. package/dist/chunks/resize-motion-CMaidkwe.js.map +0 -1
  343. package/dist/chunks/rights-BbiJ0AJB.js.map +0 -1
  344. package/dist/chunks/select-Bc4kRiSG.js.map +0 -1
  345. package/dist/chunks/sidebar-5IA18LuP.js.map +0 -1
  346. package/dist/chunks/textarea-Cj8iR82R.js.map +0 -1
  347. package/dist/chunks/virtual-rows-BZe49bKi.js.map +0 -1
  348. package/dist/chunks/zh-CN-C7GmVswt.js.map +0 -1
  349. package/dist/components/charts/timeseries.js.map +0 -1
@@ -1,10 +1,10 @@
1
1
  "use client";
2
- import { t as e } from "./cn-CidVUKMm.js";
3
- import { createElement as t, forwardRef as n, useId as r, useMemo as i } from "react";
4
- import { jsx as a, jsxs as o } from "react/jsx-runtime";
5
- import { art as s, font as c } from "@logicplanes/kaeso-tokens";
2
+ import { t as e } from "./cn-DUDmdLpZ.js";
3
+ import { createElement as t, forwardRef as n, useId as r, useMemo as i, useState as a } from "react";
4
+ import { jsx as o, jsxs as s } from "react/jsx-runtime";
5
+ import { art as c, font as l } from "@logicplanes/kaeso-tokens";
6
6
  //#region src/components/release-art/drawing.ts
7
- var l = [
7
+ var u = [
8
8
  "bauhaus",
9
9
  "albers",
10
10
  "stripes",
@@ -13,7 +13,7 @@ var l = [
13
13
  "arcs",
14
14
  "phyllotaxis",
15
15
  "spiro"
16
- ], u = {
16
+ ], d = {
17
17
  banner: {
18
18
  w: 640,
19
19
  h: 360
@@ -22,16 +22,16 @@ var l = [
22
22
  w: 840,
23
23
  h: 360
24
24
  }
25
- }, d = 40, f = {
26
- rx: d * 7.5,
27
- ry: d * 7.5
25
+ }, f = 40, p = {
26
+ rx: f * 7.5,
27
+ ry: f * 7.5
28
28
  };
29
- function p(e) {
29
+ function m(e) {
30
30
  let t = 2166136261;
31
31
  for (let n = 0; n < e.length; n++) t ^= e.charCodeAt(n), t = Math.imul(t, 16777619);
32
32
  return t >>> 0;
33
33
  }
34
- function m(e) {
34
+ function h(e) {
35
35
  let t = e >>> 0;
36
36
  return () => {
37
37
  t = t + 1831565813 >>> 0;
@@ -39,53 +39,53 @@ function m(e) {
39
39
  return e = Math.imul(e ^ e >>> 15, e | 1), e ^= e + Math.imul(e ^ e >>> 7, e | 61), ((e ^ e >>> 14) >>> 0) / 4294967296;
40
40
  };
41
41
  }
42
- function h(e) {
42
+ function g(e) {
43
43
  if (typeof e != "object" || !e) return !1;
44
44
  let t = e;
45
- return t.version === 1 && typeof t.seed == "number" && Number.isInteger(t.seed) && t.seed >= 0 && t.seed <= 4294967295 && typeof t.style == "string" && l.includes(t.style) && typeof t.palette == "number" && Number.isInteger(t.palette) && t.palette >= 0 && t.palette < s.palettes.length;
45
+ return t.version === 1 && typeof t.seed == "number" && Number.isInteger(t.seed) && t.seed >= 0 && t.seed <= 4294967295 && typeof t.style == "string" && u.includes(t.style) && typeof t.palette == "number" && Number.isInteger(t.palette) && t.palette >= 0 && t.palette < c.palettes.length;
46
46
  }
47
- function g(e = Math.random) {
47
+ function _(e = Math.random) {
48
48
  let t = (t) => Math.min(t - 1, Math.floor(e() * t));
49
49
  return {
50
50
  version: 1,
51
51
  seed: Math.min(4294967295, Math.floor(e() * 4294967296)),
52
- style: l[t(l.length)] ?? "bauhaus",
53
- palette: t(s.palettes.length)
52
+ style: u[t(u.length)] ?? "bauhaus",
53
+ palette: t(c.palettes.length)
54
54
  };
55
55
  }
56
- function _(e, t = Math.random) {
57
- let n = e.slice(-3), r = l.filter((e) => !n.some((t) => t.style === e)), i = s.palettes.map((e, t) => t).filter((t) => !e.slice(-4).some((e) => e.palette === t)), a = new Set(e.map((e) => e.seed)), o = (e) => e[Math.min(e.length - 1, Math.floor(t() * e.length))], c = Math.min(4294967295, Math.floor(t() * 4294967296));
58
- for (; a.has(c);) c = c + 1 >>> 0;
56
+ function v(e, t = Math.random) {
57
+ let n = e.slice(-3), r = u.filter((e) => !n.some((t) => t.style === e)), i = c.palettes.map((e, t) => t).filter((t) => !e.slice(-4).some((e) => e.palette === t)), a = new Set(e.map((e) => e.seed)), o = (e) => e[Math.min(e.length - 1, Math.floor(t() * e.length))], s = Math.min(4294967295, Math.floor(t() * 4294967296));
58
+ for (; a.has(s);) s = s + 1 >>> 0;
59
59
  return {
60
60
  version: 1,
61
- seed: c,
61
+ seed: s,
62
62
  style: o(r) ?? "bauhaus",
63
63
  palette: o(i) ?? 0
64
64
  };
65
65
  }
66
- function v(e) {
67
- let t = p(e);
66
+ function y(e) {
67
+ let t = m(e);
68
68
  return {
69
69
  version: 1,
70
70
  seed: t,
71
- style: l[t % l.length] ?? "bauhaus",
72
- palette: (t >>> 8) % s.palettes.length
71
+ style: u[t % u.length] ?? "bauhaus",
72
+ palette: (t >>> 8) % c.palettes.length
73
73
  };
74
74
  }
75
- var y = (e) => Math.round(e * 100) / 100, b = (e, t, n) => n ? {
75
+ var b = (e) => Math.round(e * 100) / 100, x = (e, t, n) => n ? {
76
76
  tag: e,
77
77
  attrs: t,
78
78
  children: n
79
79
  } : {
80
80
  tag: e,
81
81
  attrs: t
82
- }, x = (e, t, n) => (t / f.rx) ** 2 + ((e.h - n) / f.ry) ** 2 < 1, S = (e, t) => {
83
- let n = (e.h - t) / f.ry;
84
- return n >= 1 ? 0 : f.rx * Math.sqrt(1 - n * n);
85
- }, C = (e, t) => b("g", { mask: `url(#${e.id("clear")})` }, t);
86
- function w(e, t, n, r, i, a) {
87
- let o = [], s = e.int(0, 7), c = `rotate(${e.int(0, 3) * 90} ${y(t + r / 2)} ${y(n + r / 2)})`;
88
- e.chance(.55) && o.push(b("rect", {
82
+ }, S = (e, t, n) => (t / p.rx) ** 2 + ((e.h - n) / p.ry) ** 2 < 1, C = (e, t) => {
83
+ let n = (e.h - t) / p.ry;
84
+ return n >= 1 ? 0 : p.rx * Math.sqrt(1 - n * n);
85
+ }, w = (e, t) => x("g", { mask: `url(#${e.id("clear")})` }, t);
86
+ function T(e, t, n, r, i, a) {
87
+ let o = [], s = e.int(0, 7), c = `rotate(${e.int(0, 3) * 90} ${b(t + r / 2)} ${b(n + r / 2)})`;
88
+ e.chance(.55) && o.push(x("rect", {
89
89
  x: t,
90
90
  y: n,
91
91
  width: r,
@@ -95,21 +95,21 @@ function w(e, t, n, r, i, a) {
95
95
  let l = o.length ? a : i;
96
96
  switch (s) {
97
97
  case 0:
98
- o.push(b("path", {
98
+ o.push(x("path", {
99
99
  d: `M${t} ${n}L${t + r} ${n}A${r} ${r} 0 0 1 ${t} ${n + r}Z`,
100
100
  fill: l,
101
101
  transform: c
102
102
  }));
103
103
  break;
104
104
  case 1:
105
- o.push(b("path", {
105
+ o.push(x("path", {
106
106
  d: `M${t} ${n + r}A${r / 2} ${r / 2} 0 0 1 ${t + r} ${n + r}Z`,
107
107
  fill: l,
108
108
  transform: c
109
109
  }));
110
110
  break;
111
111
  case 2:
112
- o.push(b("circle", {
112
+ o.push(x("circle", {
113
113
  cx: t + r / 2,
114
114
  cy: n + r / 2,
115
115
  r: r / 2,
@@ -117,14 +117,14 @@ function w(e, t, n, r, i, a) {
117
117
  }));
118
118
  break;
119
119
  case 3:
120
- o.push(b("path", {
120
+ o.push(x("path", {
121
121
  d: `M${t} ${n}L${t + r} ${n + r}L${t} ${n + r}Z`,
122
122
  fill: l,
123
123
  transform: c
124
124
  }));
125
125
  break;
126
126
  case 4:
127
- o.push(b("circle", {
127
+ o.push(x("circle", {
128
128
  cx: t + r / 2,
129
129
  cy: n + r / 2,
130
130
  r: r / 4,
@@ -132,7 +132,7 @@ function w(e, t, n, r, i, a) {
132
132
  }));
133
133
  break;
134
134
  case 5:
135
- for (let e = 0; e < 3; e++) o.push(b("rect", {
135
+ for (let e = 0; e < 3; e++) o.push(x("rect", {
136
136
  x: t + e * r / 3,
137
137
  y: n,
138
138
  width: r / 6,
@@ -142,17 +142,17 @@ function w(e, t, n, r, i, a) {
142
142
  }));
143
143
  break;
144
144
  case 6:
145
- o.push(b("path", {
145
+ o.push(x("path", {
146
146
  d: `M${t} ${n}L${t + r} ${n}L${t + r / 2} ${n + r / 2}Z`,
147
147
  fill: l,
148
148
  transform: c
149
- })), o.push(b("path", {
149
+ })), o.push(x("path", {
150
150
  d: `M${t} ${n + r}L${t + r} ${n + r}L${t + r / 2} ${n + r / 2}Z`,
151
151
  fill: l,
152
152
  transform: c
153
153
  }));
154
154
  break;
155
- default: o.push(b("path", {
155
+ default: o.push(x("path", {
156
156
  d: `M${t} ${n}A${r} ${r} 0 0 1 ${t + r} ${n + r}L${t} ${n + r}Z`,
157
157
  fill: l,
158
158
  transform: c
@@ -160,8 +160,8 @@ function w(e, t, n, r, i, a) {
160
160
  }
161
161
  return o;
162
162
  }
163
- function T(e) {
164
- let t = /* @__PURE__ */ new Set(), n = (e, t) => `${e},${t}`, r = (t, n) => x(e, t * d, (n + 1) * d), i = [], a = e.int(2, 4);
163
+ function E(e) {
164
+ let t = /* @__PURE__ */ new Set(), n = (e, t) => `${e},${t}`, r = (t, n) => S(e, t * f, (n + 1) * f), i = [], a = e.int(2, 4);
165
165
  for (let o = 0; o < a; o++) {
166
166
  let a = e.int(2, 3);
167
167
  for (let o = 0; o < 20; o++) {
@@ -170,7 +170,7 @@ function T(e) {
170
170
  if (!c) continue;
171
171
  for (let e = 0; e < a; e++) for (let r = 0; r < a; r++) t.add(n(o + e, s + r));
172
172
  let l = e.int(0, 3);
173
- i.push(...w(e, o * d, s * d, a * d, e.color(l), e.color(l + e.int(1, 3))));
173
+ i.push(...T(e, o * f, s * f, a * f, e.color(l), e.color(l + e.int(1, 3))));
174
174
  break;
175
175
  }
176
176
  }
@@ -178,12 +178,12 @@ function T(e) {
178
178
  for (let a = 0; a < e.cols; a++) for (let s = 0; s < e.rows; s++) {
179
179
  if (t.has(n(a, s)) || r(a, s) || !e.chance(o)) continue;
180
180
  let c = e.int(0, 3);
181
- i.push(...w(e, a * d, s * d, d, e.color(c), e.color(c + e.int(1, 3))));
181
+ i.push(...T(e, a * f, s * f, f, e.color(c), e.color(c + e.int(1, 3))));
182
182
  }
183
183
  return i;
184
184
  }
185
- function E(e) {
186
- let t = (e.h - 240) / 2, n = f.rx - d / 2, r = e.w - t - 240, i = n + Math.round(e.next() * Math.max(0, r - n) / (d / 2)) * (d / 2), a = e.int(3, 4), o = [
185
+ function D(e) {
186
+ let t = (e.h - 240) / 2, n = p.rx - f / 2, r = e.w - t - 240, i = n + Math.round(e.next() * Math.max(0, r - n) / (f / 2)) * (f / 2), a = e.int(3, 4), o = [
187
187
  0,
188
188
  1,
189
189
  2,
@@ -193,7 +193,7 @@ function E(e) {
193
193
  let n = Math.floor(e.next() * (t + 1));
194
194
  [o[t], o[n]] = [o[n] ?? n, o[t] ?? t];
195
195
  }
196
- return Array.from({ length: a }, (n, r) => b("rect", {
196
+ return Array.from({ length: a }, (n, r) => x("rect", {
197
197
  x: i + 24 * r,
198
198
  y: t + 36 * r,
199
199
  width: 240 - 48 * r,
@@ -201,21 +201,21 @@ function E(e) {
201
201
  fill: e.color(o[r] ?? r)
202
202
  }));
203
203
  }
204
- function D(e, t, n, r) {
204
+ function O(e, t, n, r) {
205
205
  let i = Math.hypot(e.w, e.h), a = [], o = -i, s = 0;
206
206
  for (; o < i;) {
207
- let t = n[s % n.length] ?? d;
208
- a.push(b("rect", {
209
- x: y(o),
210
- y: y(-i),
207
+ let t = n[s % n.length] ?? f;
208
+ a.push(x("rect", {
209
+ x: b(o),
210
+ y: b(-i),
211
211
  width: t,
212
- height: y(i * 2),
212
+ height: b(i * 2),
213
213
  fill: e.color(s + r)
214
214
  })), o += t, s += 1;
215
215
  }
216
- return b("g", { transform: `translate(${e.w / 2} ${e.h / 2}) rotate(${t})` }, a);
216
+ return x("g", { transform: `translate(${e.w / 2} ${e.h / 2}) rotate(${t})` }, a);
217
217
  }
218
- function O(e) {
218
+ function k(e) {
219
219
  let t = [
220
220
  0,
221
221
  90,
@@ -223,40 +223,40 @@ function O(e) {
223
223
  -45,
224
224
  30,
225
225
  -60
226
- ][e.int(0, 5)] ?? 0, n = Array.from({ length: e.int(5, 9) }, () => d / 2 * e.int(1, 5)), r = e.id("disc"), i = d * e.int(2, 3) + d / 2, a = d * e.int(Math.ceil((f.rx + i) / d), e.cols - 2), o = d * e.int(3, e.rows - 3);
226
+ ][e.int(0, 5)] ?? 0, n = Array.from({ length: e.int(5, 9) }, () => f / 2 * e.int(1, 5)), r = e.id("disc"), i = f * e.int(2, 3) + f / 2, a = f * e.int(Math.ceil((p.rx + i) / f), e.cols - 2), o = f * e.int(3, e.rows - 3);
227
227
  return [
228
- b("defs", {}, [b("clipPath", { id: r }, [b("circle", {
228
+ x("defs", {}, [x("clipPath", { id: r }, [x("circle", {
229
229
  cx: a,
230
230
  cy: o,
231
231
  r: i
232
232
  })])]),
233
- C(e, [D(e, t, n, 0)]),
234
- b("g", { clipPath: `url(#${r})` }, [b("rect", {
233
+ w(e, [O(e, t, n, 0)]),
234
+ x("g", { clipPath: `url(#${r})` }, [x("rect", {
235
235
  width: e.w,
236
236
  height: e.h,
237
237
  fill: e.ground
238
- }), D(e, t + 90, n, 1)])
238
+ }), O(e, t + 90, n, 1)])
239
239
  ];
240
240
  }
241
- function k(e) {
242
- let t = [], n = e.int(14, 18), r = d * 2.5, i = (e.h - d - r) / (n - 1), a = e.w * e.between(.58, .74), o = e.w * e.between(.09, .14), s = e.chance(.6) ? e.int(2, n - 3) : -1;
241
+ function A(e) {
242
+ let t = [], n = e.int(14, 18), r = f * 2.5, i = (e.h - f - r) / (n - 1), a = e.w * e.between(.58, .74), o = e.w * e.between(.09, .14), s = e.chance(.6) ? e.int(2, n - 3) : -1;
243
243
  for (let c = 0; c < n; c++) {
244
244
  let n = r + c * i, l = Array.from({ length: e.int(3, 5) }, () => ({
245
245
  x: a + e.between(-1.2, 1.2) * o,
246
246
  h: e.between(.3, 1),
247
247
  s: e.between(9, 22)
248
- })), u = [e.between(0, 6.28), e.between(0, 6.28)], f = Math.max(d, Math.ceil((S(e, n) + d / 2) / 4) * 4), p = [];
249
- for (let t = f; t <= e.w - d; t += 4) {
248
+ })), u = [e.between(0, 6.28), e.between(0, 6.28)], d = Math.max(f, Math.ceil((C(e, n) + f / 2) / 4) * 4), p = [];
249
+ for (let t = d; t <= e.w - f; t += 4) {
250
250
  let e = Math.exp(-((t - a) ** 2) / (2 * o * o)), n = 0;
251
251
  for (let e of l) n += e.h * Math.exp(-((t - e.x) ** 2) / (2 * e.s * e.s));
252
252
  let r = Math.sin(t * .21 + (u[0] ?? 0)) * .6 + Math.sin(t * .53 + (u[1] ?? 0)) * .4;
253
253
  p.push([t, n * e + r * .04 * (.15 + e)]);
254
254
  }
255
- let m = Math.max(...p.map(([, e]) => e), .001), h = Math.min(i * e.between(2.4, 4.4), n - d), g = `M${p.map(([e, t]) => `${e} ${y(n - t / m * h)}`).join("L")}`;
256
- t.push(b("path", {
257
- d: `${g}L${e.w - d} ${y(n + i)}L${f} ${y(n + i)}Z`,
255
+ let m = Math.max(...p.map(([, e]) => e), .001), h = Math.min(i * e.between(2.4, 4.4), n - f), g = `M${p.map(([e, t]) => `${e} ${b(n - t / m * h)}`).join("L")}`;
256
+ t.push(x("path", {
257
+ d: `${g}L${e.w - f} ${b(n + i)}L${d} ${b(n + i)}Z`,
258
258
  fill: e.ground
259
- })), t.push(b("path", {
259
+ })), t.push(x("path", {
260
260
  d: g,
261
261
  fill: "none",
262
262
  stroke: c === s ? e.color(1) : e.color(0),
@@ -267,38 +267,38 @@ function k(e) {
267
267
  }
268
268
  return t;
269
269
  }
270
- function A(e) {
271
- let t = y(80 * e.between(.2, .3)), n = e.chance(.5), r = [], i = Math.ceil(e.w / 80), a = Math.ceil(e.h / 80);
270
+ function j(e) {
271
+ let t = b(80 * e.between(.2, .3)), n = e.chance(.5), r = [], i = Math.ceil(e.w / 80), a = Math.ceil(e.h / 80);
272
272
  for (let t = 0; t < i; t++) for (let n = 0; n < a; n++) {
273
273
  let i = t * 80, a = e.h - (n + 1) * 80;
274
- if (x(e, i, a + 80)) continue;
274
+ if (S(e, i, a + 80)) continue;
275
275
  let o = e.chance(.5) ? `M${i + 40} ${a}A40 40 0 0 1 ${i} ${a + 40}M${i + 80} ${a + 40}A40 40 0 0 0 ${i + 40} ${a + 80}` : `M${i + 40} ${a}A40 40 0 0 0 ${i + 80} ${a + 40}M${i} ${a + 40}A40 40 0 0 1 ${i + 40} ${a + 80}`;
276
- r.push(b("path", { d: o }));
276
+ r.push(x("path", { d: o }));
277
277
  }
278
- let o = [b("g", {
278
+ let o = [x("g", {
279
279
  fill: "none",
280
280
  stroke: e.color(0),
281
281
  strokeWidth: t
282
282
  }, r)];
283
- return n && o.push(b("g", {
283
+ return n && o.push(x("g", {
284
284
  fill: "none",
285
285
  stroke: e.color(1),
286
- strokeWidth: y(t * .34)
286
+ strokeWidth: b(t * .34)
287
287
  }, r)), o;
288
288
  }
289
- function j(e, t, n) {
289
+ function M(e, t, n) {
290
290
  let r = Infinity;
291
291
  for (let i = 0; i <= 90; i++) {
292
292
  let a = i / 90 * (Math.PI / 2);
293
- r = Math.min(r, Math.hypot(t - f.rx * Math.cos(a), n - (e.h - f.ry * Math.sin(a))));
293
+ r = Math.min(r, Math.hypot(t - p.rx * Math.cos(a), n - (e.h - p.ry * Math.sin(a))));
294
294
  }
295
- return x(e, t, n) ? 0 : r;
295
+ return S(e, t, n) ? 0 : r;
296
296
  }
297
- function M(e) {
297
+ function N(e) {
298
298
  let t = [], n = e.int(2, 3), r = [
299
- [d * e.int(4, e.cols - 2), 0],
300
- [d * e.int(11, e.cols - 1), e.h],
301
- [e.w, d * e.int(2, e.rows - 2)],
299
+ [f * e.int(4, e.cols - 2), 0],
300
+ [f * e.int(11, e.cols - 1), e.h],
301
+ [e.w, f * e.int(2, e.rows - 2)],
302
302
  [e.w, 0],
303
303
  [e.w, e.h],
304
304
  [0, 0]
@@ -310,10 +310,10 @@ function M(e) {
310
310
  let i = 0;
311
311
  for (let [a, o] of r) {
312
312
  if (i === n) break;
313
- let r = d / 2 * e.int(1, 2), s = Math.floor((j(e, a, o) - d / 2) / r), c = Math.min(s, e.int(4, 10));
313
+ let r = f / 2 * e.int(1, 2), s = Math.floor((M(e, a, o) - f / 2) / r), c = Math.min(s, e.int(4, 10));
314
314
  if (c < 3) continue;
315
315
  let l = e.int(0, 3), u = e.chance(.4);
316
- for (let n = c; n >= 1; n--) t.push(b("circle", {
316
+ for (let n = c; n >= 1; n--) t.push(x("circle", {
317
317
  cx: a,
318
318
  cy: o,
319
319
  r: n * r,
@@ -323,9 +323,9 @@ function M(e) {
323
323
  }
324
324
  return t;
325
325
  }
326
- var N = 2.399963229728653;
327
- function P(e) {
328
- let t = [], n = e.w - e.h / 2 - d * e.int(0, 2), r = e.h / 2 + d * e.int(-1, 1), i = e.between(11, 14), a = [
326
+ var P = 2.399963229728653;
327
+ function F(e) {
328
+ let t = [], n = e.w - e.h / 2 - f * e.int(0, 2), r = e.h / 2 + f * e.int(-1, 1), i = e.between(11, 14), a = [
329
329
  8,
330
330
  13,
331
331
  21
@@ -333,33 +333,33 @@ function P(e) {
333
333
  for (let c = 1;; c++) {
334
334
  let l = i * Math.sqrt(c);
335
335
  if (l > s) break;
336
- let u = n + l * Math.cos(c * N), f = r + l * Math.sin(c * N), p = i * (.3 + .12 * Math.min(1, l / (e.h / 2)));
337
- if (u < -p || u > e.w + p || f < -p || f > e.h + p || x(e, u, f) || j(e, u, f) < p + d / 4) continue;
338
- let m = o ? Math.floor(l / (d * 1.5)) % 4 : Math.floor(c % a / a * 4);
339
- t.push(b("circle", {
340
- cx: y(u),
341
- cy: y(f),
342
- r: y(p),
336
+ let u = n + l * Math.cos(c * P), d = r + l * Math.sin(c * P), p = i * (.3 + .12 * Math.min(1, l / (e.h / 2)));
337
+ if (u < -p || u > e.w + p || d < -p || d > e.h + p || S(e, u, d) || M(e, u, d) < p + f / 4) continue;
338
+ let m = o ? Math.floor(l / (f * 1.5)) % 4 : Math.floor(c % a / a * 4);
339
+ t.push(x("circle", {
340
+ cx: b(u),
341
+ cy: b(d),
342
+ r: b(p),
343
343
  fill: e.color(m)
344
344
  }));
345
345
  }
346
346
  return t;
347
347
  }
348
- function F(e, t) {
349
- return t ? F(t, e % t) : e;
348
+ function I(e, t) {
349
+ return t ? I(t, e % t) : e;
350
350
  }
351
- function I(e) {
352
- let t = [], n = e.w - e.h / 2, r = e.h / 2, i = e.h / 2 - d, a = e.int(7, 13), o = e.int(2, a - 2);
353
- for (; F(a, o) !== 1;) o = e.int(2, a - 2);
351
+ function L(e) {
352
+ let t = [], n = e.w - e.h / 2, r = e.h / 2, i = e.h / 2 - f, a = e.int(7, 13), o = e.int(2, a - 2);
353
+ for (; I(a, o) !== 1;) o = e.int(2, a - 2);
354
354
  let s = e.chance(.5) ? 2 : 1;
355
355
  for (let c = 0; c < s; c++) {
356
- let s = o * e.between(.75, 1.05), l = (a - o) / o, u = a - o + s, d = o / F(a, o), f = d * 360, p = [], m = i * (c === 0 ? 1 : e.between(.4, .55)) / u;
356
+ let s = o * e.between(.75, 1.05), l = (a - o) / o, u = a - o + s, d = o / I(a, o), f = d * 360, p = [], m = i * (c === 0 ? 1 : e.between(.4, .55)) / u;
357
357
  for (let e = 0; e <= f; e++) {
358
358
  let t = e / f * d * Math.PI * 2, i = (a - o) * Math.cos(t) + s * Math.cos(l * t), c = (a - o) * Math.sin(t) - s * Math.sin(l * t);
359
- p.push(`${y(n + i * m)} ${y(r + c * m)}`);
359
+ p.push(`${b(n + i * m)} ${b(r + c * m)}`);
360
360
  }
361
361
  let h = `M${p.join("L")}Z`;
362
- t.push(b("path", {
362
+ t.push(x("path", {
363
363
  d: h,
364
364
  fill: e.color(c),
365
365
  fillRule: "evenodd"
@@ -367,178 +367,184 @@ function I(e) {
367
367
  }
368
368
  return t;
369
369
  }
370
- var L = {
371
- bauhaus: T,
372
- albers: E,
373
- stripes: O,
374
- waves: k,
375
- truchet: A,
376
- arcs: M,
377
- phyllotaxis: P,
378
- spiro: I
379
- }, R = (e) => s.palettes[e.palette % s.palettes.length] ?? s.palettes[0];
380
- function z(e) {
370
+ var R = {
371
+ bauhaus: E,
372
+ albers: D,
373
+ stripes: k,
374
+ waves: A,
375
+ truchet: j,
376
+ arcs: N,
377
+ phyllotaxis: F,
378
+ spiro: L
379
+ }, z = (e) => c.palettes[e.palette % c.palettes.length] ?? c.palettes[0];
380
+ function B(e) {
381
381
  return {
382
- color: s.grounds[R(e).ground].text,
382
+ color: c.grounds[z(e).ground].text,
383
383
  eyebrow: {
384
- x: d,
384
+ x: f,
385
385
  bottom: 96
386
386
  },
387
387
  title: {
388
388
  x: 38,
389
- bottom: d
389
+ bottom: f
390
390
  }
391
391
  };
392
392
  }
393
- function B(e, t = {}) {
394
- let { w: n, h: r } = u[t.shape ?? "banner"], i = m(e.seed), a = (e, t) => e + i() * (t - e), o = (e, t) => Math.min(t, e + Math.floor(i() * (t - e + 1))), l = R(e), p = z(e), h = s.grounds[l.ground], g = [...l.colors];
393
+ function V(e, t = {}) {
394
+ let { w: n, h: r } = d[t.shape ?? "banner"], i = h(e.seed), a = (e, t) => e + i() * (t - e), o = (e, t) => Math.min(t, e + Math.floor(i() * (t - e + 1))), s = z(e), u = B(e), m = c.grounds[s.ground], g = [...s.colors];
395
395
  for (let e = g.length - 1; e > 0; e--) {
396
396
  let t = Math.floor(i() * (e + 1));
397
- [g[e], g[t]] = [g[t] ?? h.text, g[e] ?? h.text];
397
+ [g[e], g[t]] = [g[t] ?? m.text, g[e] ?? m.text];
398
398
  }
399
399
  let _ = t.idPrefix ?? "art", v = {
400
400
  w: n,
401
401
  h: r,
402
- cols: n / d,
403
- rows: r / d,
402
+ cols: n / f,
403
+ rows: r / f,
404
404
  next: i,
405
405
  between: a,
406
406
  int: o,
407
407
  chance: (e) => i() < e,
408
- ground: h.fill,
409
- color: (e) => g[(e % g.length + g.length) % g.length] ?? h.text,
408
+ ground: m.fill,
409
+ color: (e) => g[(e % g.length + g.length) % g.length] ?? m.text,
410
410
  id: (e) => `${_}-${e}`
411
- }, y = v.id("clear"), x = L[e.style](v), S = [];
411
+ }, y = v.id("clear"), b = R[e.style](v), S = [];
412
412
  return t.eyebrow && S.push({
413
413
  tag: "text",
414
414
  attrs: {
415
- x: p.eyebrow.x,
416
- y: r - p.eyebrow.bottom,
417
- fill: p.color,
415
+ x: u.eyebrow.x,
416
+ y: r - u.eyebrow.bottom,
417
+ fill: u.color,
418
418
  fillOpacity: .7,
419
419
  fontSize: 16,
420
420
  fontWeight: 500,
421
421
  letterSpacing: .1,
422
- fontFamily: c.sans
422
+ fontFamily: l.sans
423
423
  },
424
424
  text: t.eyebrow
425
425
  }), t.title && S.push({
426
426
  tag: "text",
427
427
  attrs: {
428
- x: p.title.x,
429
- y: r - p.title.bottom,
430
- fill: p.color,
428
+ x: u.title.x,
429
+ y: r - u.title.bottom,
430
+ fill: u.color,
431
431
  fontSize: 52,
432
432
  fontWeight: 600,
433
433
  letterSpacing: -1.5,
434
- fontFamily: c.sans
434
+ fontFamily: l.sans
435
435
  },
436
436
  text: t.title
437
- }), b("svg", {
437
+ }), x("svg", {
438
438
  xmlns: "http://www.w3.org/2000/svg",
439
439
  viewBox: `0 0 ${n} ${r}`
440
440
  }, [
441
- b("defs", {}, [b("mask", {
441
+ x("defs", {}, [x("mask", {
442
442
  id: y,
443
443
  maskUnits: "userSpaceOnUse",
444
444
  x: 0,
445
445
  y: 0,
446
446
  width: n,
447
447
  height: r
448
- }, [b("rect", {
448
+ }, [x("rect", {
449
449
  width: n,
450
450
  height: r,
451
451
  fill: "white"
452
- }), b("ellipse", {
452
+ }), x("ellipse", {
453
453
  cx: 0,
454
454
  cy: r,
455
- rx: f.rx,
456
- ry: f.ry,
455
+ rx: p.rx,
456
+ ry: p.ry,
457
457
  fill: "black"
458
458
  })])]),
459
- b("rect", {
459
+ x("rect", {
460
460
  width: n,
461
461
  height: r,
462
- fill: h.fill
462
+ fill: m.fill
463
463
  }),
464
- ...x,
464
+ ...b,
465
465
  ...S
466
466
  ]);
467
467
  }
468
- var V = /* @__PURE__ */ new Set(["viewBox", "maskUnits"]), H = (e) => V.has(e) ? e : e.replace(/[A-Z]/g, (e) => `-${e.toLowerCase()}`), U = (e) => e.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;");
469
- function W(e) {
470
- let t = Object.entries(e.attrs).map(([e, t]) => ` ${H(e)}="${U(String(t))}"`).join(""), n = e.text === void 0 ? (e.children ?? []).map(W).join("") : U(e.text);
468
+ var H = /* @__PURE__ */ new Set(["viewBox", "maskUnits"]), U = (e) => H.has(e) ? e : e.replace(/[A-Z]/g, (e) => `-${e.toLowerCase()}`), W = (e) => e.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;");
469
+ function G(e) {
470
+ let t = Object.entries(e.attrs).map(([e, t]) => ` ${U(e)}="${W(String(t))}"`).join(""), n = e.text === void 0 ? (e.children ?? []).map(G).join("") : W(e.text);
471
471
  return n ? `<${e.tag}${t}>${n}</${e.tag}>` : `<${e.tag}${t}/>`;
472
472
  }
473
473
  //#endregion
474
474
  //#region src/components/release-art/release-art.tsx
475
- var G = { shape: {
475
+ var K = { shape: {
476
476
  banner: { classes: "aspect-video" },
477
477
  wide: { classes: "aspect-21/9" }
478
- } }, K = { shape: "banner" };
479
- function q(e, n) {
478
+ } }, q = { shape: "banner" };
479
+ function J(e, n) {
480
480
  return t(e.tag, {
481
481
  ...e.attrs,
482
482
  key: n
483
- }, e.text ?? e.children?.map(q));
483
+ }, e.text ?? e.children?.map(J));
484
484
  }
485
- var J = /* @__PURE__ */ n(function({ seed: t, label: n, art: s, title: l, eyebrow: d, shape: f = "banner", className: p }, m) {
486
- let { w: h, h: g } = u[f], _ = `art${r().replace(/[^a-zA-Z0-9]/g, "")}`, y = s ?? v(t), b = i(() => B(y, {
487
- shape: f,
488
- idPrefix: _
485
+ var Y = /* @__PURE__ */ n(function({ seed: t, label: n, art: c, src: u, title: f, eyebrow: p, shape: m = "banner", className: h }, g) {
486
+ let { w: _, h: v } = d[m], [b, x] = a(null), S = `art${r().replace(/[^a-zA-Z0-9]/g, "")}`, C = c ?? y(t), w = i(() => V(C, {
487
+ shape: m,
488
+ idPrefix: S
489
489
  }), [
490
- y,
491
- f,
492
- _
493
- ]), x = z(y);
494
- return /* @__PURE__ */ o("span", {
495
- className: e("relative block w-full", p),
496
- children: [/* @__PURE__ */ o("svg", {
497
- ref: m,
498
- viewBox: `0 0 ${h} ${g}`,
490
+ C,
491
+ m,
492
+ S
493
+ ]), T = B(C);
494
+ return /* @__PURE__ */ s("span", {
495
+ className: e("relative block w-full", h),
496
+ children: [/* @__PURE__ */ s("svg", {
497
+ ref: g,
498
+ viewBox: `0 0 ${_} ${v}`,
499
499
  role: "img",
500
500
  "aria-label": n,
501
501
  preserveAspectRatio: "xMidYMid slice",
502
- className: e("block w-full overflow-hidden rounded-well", G.shape[f].classes),
502
+ className: e("block w-full overflow-hidden rounded-well", K.shape[m].classes),
503
503
  children: [
504
- b.children?.map(q),
505
- d && /* @__PURE__ */ a("text", {
506
- x: x.eyebrow.x,
507
- y: g - x.eyebrow.bottom,
508
- fill: x.color,
504
+ u && b !== u ? /* @__PURE__ */ o("image", {
505
+ href: u,
506
+ width: _,
507
+ height: v,
508
+ preserveAspectRatio: "xMidYMid slice",
509
+ onError: () => x(u)
510
+ }) : w.children?.map(J),
511
+ p && /* @__PURE__ */ o("text", {
512
+ x: T.eyebrow.x,
513
+ y: v - T.eyebrow.bottom,
514
+ fill: T.color,
509
515
  fillOpacity: .7,
510
516
  fontSize: 16,
511
517
  fontWeight: 500,
512
518
  letterSpacing: .1,
513
- fontFamily: c.sans,
514
- children: d
519
+ fontFamily: l.sans,
520
+ children: p
515
521
  }),
516
- l && /* @__PURE__ */ a("text", {
517
- x: x.title.x,
518
- y: g - x.title.bottom,
519
- fill: x.color,
522
+ f && /* @__PURE__ */ o("text", {
523
+ x: T.title.x,
524
+ y: v - T.title.bottom,
525
+ fill: T.color,
520
526
  fontSize: 52,
521
527
  fontWeight: 600,
522
528
  letterSpacing: -1.5,
523
- fontFamily: c.sans,
524
- children: l
529
+ fontFamily: l.sans,
530
+ children: f
525
531
  })
526
532
  ]
527
- }), /* @__PURE__ */ a("span", {
533
+ }), /* @__PURE__ */ o("span", {
528
534
  "aria-hidden": !0,
529
535
  className: "pointer-events-none absolute inset-0 rounded-well shadow-ring"
530
536
  })]
531
537
  });
532
538
  });
533
- process.env.NODE_ENV !== "production" && (J.displayName = "ReleaseArt");
534
- function Y({ seed: e, label: t, art: n, title: r, eyebrow: i, shape: a = "banner" }) {
535
- let { w: o, h: s } = u[a], c = B(n ?? v(e), {
539
+ process.env.NODE_ENV !== "production" && (Y.displayName = "ReleaseArt");
540
+ function X({ seed: e, label: t, art: n, title: r, eyebrow: i, shape: a = "banner" }) {
541
+ let { w: o, h: s } = d[a], c = V(n ?? y(e), {
536
542
  shape: a,
537
543
  title: r,
538
544
  eyebrow: i,
539
545
  idPrefix: "art"
540
546
  });
541
- return W({
547
+ return G({
542
548
  ...c,
543
549
  attrs: {
544
550
  ...c.attrs,
@@ -550,6 +556,6 @@ function Y({ seed: e, label: t, art: n, title: r, eyebrow: i, shape: a = "banner
550
556
  });
551
557
  }
552
558
  //#endregion
553
- export { l as a, g as c, Y as i, v as l, G as n, h as o, J as r, _ as s, K as t };
559
+ export { u as a, _ as c, X as i, y as l, K as n, g as o, Y as r, v as s, q as t };
554
560
 
555
- //# sourceMappingURL=release-art-DEc9HNa6.js.map
561
+ //# sourceMappingURL=release-art-Ogl-L1Vh.js.map