@epilot/zenith-react 0.2.0-next.3 → 0.2.0-next.5

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 (274) hide show
  1. package/README.md +37 -1
  2. package/codemods/README.md +182 -0
  3. package/codemods/format.ts +86 -0
  4. package/codemods/migrate/base-elements/accordion.ts +132 -0
  5. package/codemods/migrate/base-elements/alert.ts +81 -0
  6. package/codemods/migrate/base-elements/avatar.ts +116 -0
  7. package/codemods/migrate/base-elements/button.ts +188 -0
  8. package/codemods/migrate/base-elements/checkbox.ts +17 -0
  9. package/codemods/migrate/base-elements/chip.ts +87 -0
  10. package/codemods/migrate/base-elements/chip360.ts +162 -0
  11. package/codemods/migrate/base-elements/circular-progress.ts +73 -0
  12. package/codemods/migrate/base-elements/dialog.ts +323 -0
  13. package/codemods/migrate/base-elements/divider.ts +61 -0
  14. package/codemods/migrate/base-elements/feedback-message.ts +95 -0
  15. package/codemods/migrate/base-elements/icon-button.ts +203 -0
  16. package/codemods/migrate/base-elements/index.ts +55 -0
  17. package/codemods/migrate/base-elements/mui-props.ts +29 -0
  18. package/codemods/migrate/base-elements/notification.ts +98 -0
  19. package/codemods/migrate/base-elements/paper.ts +78 -0
  20. package/codemods/migrate/base-elements/select.ts +328 -0
  21. package/codemods/migrate/base-elements/shared.ts +910 -0
  22. package/codemods/migrate/base-elements/skeleton.ts +83 -0
  23. package/codemods/migrate/base-elements/switch.ts +19 -0
  24. package/codemods/migrate/base-elements/tabs.ts +222 -0
  25. package/codemods/migrate/base-elements/text-field.ts +425 -0
  26. package/codemods/migrate/base-elements/toggle-button.ts +185 -0
  27. package/codemods/migrate/base-elements/tooltip.ts +231 -0
  28. package/codemods/migrate/base-elements/typography.ts +247 -0
  29. package/codemods/migrate/base-elements/unsupported.ts +277 -0
  30. package/codemods/migrate/from-base-elements.ts +26 -0
  31. package/codemods/migrate/from-volt.ts +26 -0
  32. package/codemods/migrate/lib/imports.ts +399 -0
  33. package/codemods/migrate/lib/jsx.ts +313 -0
  34. package/codemods/migrate/lib/run-migration.ts +528 -0
  35. package/codemods/migrate/lib/source.ts +6 -0
  36. package/codemods/migrate/lib/todo.ts +107 -0
  37. package/codemods/migrate/lib/types.ts +114 -0
  38. package/codemods/migrate/volt/class-helpers.ts +37 -0
  39. package/codemods/migrate/volt/index.ts +18 -0
  40. package/codemods/migrate/volt/pagination.ts +26 -0
  41. package/codemods/migrate/volt/same-name.ts +293 -0
  42. package/codemods/migrate/volt/stylesheets.ts +18 -0
  43. package/codemods/migrate/volt/tanstack-types.ts +20 -0
  44. package/codemods/radix-to-base-ui.ts +677 -0
  45. package/dist/_virtual/_zenith-runtime-family_accordion.js +7 -0
  46. package/dist/_virtual/_zenith-runtime-family_accordion.js.map +1 -0
  47. package/dist/_virtual/_zenith-runtime-family_alert-dialog.js +7 -0
  48. package/dist/_virtual/_zenith-runtime-family_alert-dialog.js.map +1 -0
  49. package/dist/_virtual/_zenith-runtime-family_avatar.js +7 -0
  50. package/dist/_virtual/_zenith-runtime-family_avatar.js.map +1 -0
  51. package/dist/_virtual/_zenith-runtime-family_button.js +7 -0
  52. package/dist/_virtual/_zenith-runtime-family_button.js.map +1 -0
  53. package/dist/_virtual/_zenith-runtime-family_checkbox.js +7 -0
  54. package/dist/_virtual/_zenith-runtime-family_checkbox.js.map +1 -0
  55. package/dist/_virtual/_zenith-runtime-family_csp-provider.js +7 -0
  56. package/dist/_virtual/_zenith-runtime-family_csp-provider.js.map +1 -0
  57. package/dist/_virtual/_zenith-runtime-family_dialog.js +7 -0
  58. package/dist/_virtual/_zenith-runtime-family_dialog.js.map +1 -0
  59. package/dist/_virtual/_zenith-runtime-family_direction-provider.js +8 -0
  60. package/dist/_virtual/_zenith-runtime-family_direction-provider.js.map +1 -0
  61. package/dist/_virtual/_zenith-runtime-family_menu.js +7 -0
  62. package/dist/_virtual/_zenith-runtime-family_menu.js.map +1 -0
  63. package/dist/_virtual/_zenith-runtime-family_merge-props.js +11 -0
  64. package/dist/_virtual/_zenith-runtime-family_merge-props.js.map +1 -0
  65. package/dist/_virtual/_zenith-runtime-family_popover.js +7 -0
  66. package/dist/_virtual/_zenith-runtime-family_popover.js.map +1 -0
  67. package/dist/_virtual/_zenith-runtime-family_radio-group.js +7 -0
  68. package/dist/_virtual/_zenith-runtime-family_radio-group.js.map +1 -0
  69. package/dist/_virtual/_zenith-runtime-family_radio.js +7 -0
  70. package/dist/_virtual/_zenith-runtime-family_radio.js.map +1 -0
  71. package/dist/_virtual/_zenith-runtime-family_scroll-area.js +7 -0
  72. package/dist/_virtual/_zenith-runtime-family_scroll-area.js.map +1 -0
  73. package/dist/_virtual/_zenith-runtime-family_select.js +7 -0
  74. package/dist/_virtual/_zenith-runtime-family_select.js.map +1 -0
  75. package/dist/_virtual/_zenith-runtime-family_separator.js +7 -0
  76. package/dist/_virtual/_zenith-runtime-family_separator.js.map +1 -0
  77. package/dist/_virtual/_zenith-runtime-family_switch.js +7 -0
  78. package/dist/_virtual/_zenith-runtime-family_switch.js.map +1 -0
  79. package/dist/_virtual/_zenith-runtime-family_tabs.js +7 -0
  80. package/dist/_virtual/_zenith-runtime-family_tabs.js.map +1 -0
  81. package/dist/_virtual/_zenith-runtime-family_toast.js +7 -0
  82. package/dist/_virtual/_zenith-runtime-family_toast.js.map +1 -0
  83. package/dist/_virtual/_zenith-runtime-family_toggle-group.js +7 -0
  84. package/dist/_virtual/_zenith-runtime-family_toggle-group.js.map +1 -0
  85. package/dist/_virtual/_zenith-runtime-family_toggle.js +7 -0
  86. package/dist/_virtual/_zenith-runtime-family_toggle.js.map +1 -0
  87. package/dist/_virtual/_zenith-runtime-family_tooltip.js +7 -0
  88. package/dist/_virtual/_zenith-runtime-family_tooltip.js.map +1 -0
  89. package/dist/_virtual/_zenith-runtime-family_use-render.js +7 -0
  90. package/dist/_virtual/_zenith-runtime-family_use-render.js.map +1 -0
  91. package/dist/components/accordion/accordion.js +179 -96
  92. package/dist/components/accordion/accordion.js.map +1 -1
  93. package/dist/components/alert-dialog/alert-dialog.js +243 -206
  94. package/dist/components/alert-dialog/alert-dialog.js.map +1 -1
  95. package/dist/components/avatar/avatar.js +94 -82
  96. package/dist/components/avatar/avatar.js.map +1 -1
  97. package/dist/components/badge/badge.js +11 -11
  98. package/dist/components/breadcrumb/breadcrumb.js +69 -70
  99. package/dist/components/breadcrumb/breadcrumb.js.map +1 -1
  100. package/dist/components/button/button.js +119 -102
  101. package/dist/components/button/button.js.map +1 -1
  102. package/dist/components/checkbox/checkbox.js +68 -51
  103. package/dist/components/checkbox/checkbox.js.map +1 -1
  104. package/dist/components/date-range-picker/date-range-picker.js +100 -90
  105. package/dist/components/date-range-picker/date-range-picker.js.map +1 -1
  106. package/dist/components/date-time-picker/date-time-picker-input.js +118 -108
  107. package/dist/components/date-time-picker/date-time-picker-input.js.map +1 -1
  108. package/dist/components/date-time-picker/date-time-picker-panel.js +91 -94
  109. package/dist/components/date-time-picker/date-time-picker-panel.js.map +1 -1
  110. package/dist/components/dialog/dialog.js +238 -228
  111. package/dist/components/dialog/dialog.js.map +1 -1
  112. package/dist/components/drawer/drawer.js +259 -321
  113. package/dist/components/drawer/drawer.js.map +1 -1
  114. package/dist/components/dropdown-menu/dropdown-menu.js +533 -279
  115. package/dist/components/dropdown-menu/dropdown-menu.js.map +1 -1
  116. package/dist/components/field/field-combobox.js +205 -186
  117. package/dist/components/field/field-combobox.js.map +1 -1
  118. package/dist/components/field/field-select.js +37 -22
  119. package/dist/components/field/field-select.js.map +1 -1
  120. package/dist/components/list/list-sortable.js +104 -0
  121. package/dist/components/list/list-sortable.js.map +1 -0
  122. package/dist/components/list/list.js +246 -324
  123. package/dist/components/list/list.js.map +1 -1
  124. package/dist/components/option-card/option-card.js +121 -117
  125. package/dist/components/option-card/option-card.js.map +1 -1
  126. package/dist/components/pill/pill.js +7 -7
  127. package/dist/components/popover/popover.js +223 -127
  128. package/dist/components/popover/popover.js.map +1 -1
  129. package/dist/components/radio/radio-group-base.js +54 -0
  130. package/dist/components/radio/radio-group-base.js.map +1 -0
  131. package/dist/components/radio/radio.js +71 -60
  132. package/dist/components/radio/radio.js.map +1 -1
  133. package/dist/components/scroll-area/scroll-area.js +142 -108
  134. package/dist/components/scroll-area/scroll-area.js.map +1 -1
  135. package/dist/components/scroll-overflow/scroll-overflow.js +156 -127
  136. package/dist/components/scroll-overflow/scroll-overflow.js.map +1 -1
  137. package/dist/components/segmented-control/segmented-control.js +93 -81
  138. package/dist/components/segmented-control/segmented-control.js.map +1 -1
  139. package/dist/components/select/select.js +485 -310
  140. package/dist/components/select/select.js.map +1 -1
  141. package/dist/components/separator/separator.js.map +1 -1
  142. package/dist/components/slot/compose-as-child.js +15 -12
  143. package/dist/components/slot/compose-as-child.js.map +1 -1
  144. package/dist/components/switch/switch.js +75 -68
  145. package/dist/components/switch/switch.js.map +1 -1
  146. package/dist/components/table/table-pagination.js +212 -175
  147. package/dist/components/table/table-pagination.js.map +1 -1
  148. package/dist/components/tabs/tabs.js +193 -190
  149. package/dist/components/tabs/tabs.js.map +1 -1
  150. package/dist/components/toast/toast.js +610 -148
  151. package/dist/components/toast/toast.js.map +1 -1
  152. package/dist/components/toggle/toggle-group.js +143 -32
  153. package/dist/components/toggle/toggle-group.js.map +1 -1
  154. package/dist/components/toggle/toggle.js +82 -49
  155. package/dist/components/toggle/toggle.js.map +1 -1
  156. package/dist/components/tooltip/tooltip.js +298 -138
  157. package/dist/components/tooltip/tooltip.js.map +1 -1
  158. package/dist/index.d.ts +2336 -2130
  159. package/dist/index.js +24 -23
  160. package/dist/list/sortable/index.d.ts +29 -0
  161. package/dist/list/sortable/index.js +5 -0
  162. package/dist/{_virtual → list/sortable}/index.js.map +1 -1
  163. package/dist/packages/tokens/dist/delivery/index.js +10 -10
  164. package/dist/packages/tokens/dist/delivery/index.js.map +1 -1
  165. package/dist/packages/tokens/dist/generated/core.generated.js +6 -15
  166. package/dist/packages/tokens/dist/generated/core.generated.js.map +1 -1
  167. package/dist/packages/tokens/dist/generated/palette.generated.js +4 -5
  168. package/dist/packages/tokens/dist/generated/palette.generated.js.map +1 -1
  169. package/dist/packages/tokens/dist/generated/palette.meta.generated.js +5 -0
  170. package/dist/packages/tokens/dist/generated/palette.meta.generated.js.map +1 -0
  171. package/dist/packages/tokens/dist/install.js +40 -17
  172. package/dist/packages/tokens/dist/install.js.map +1 -1
  173. package/dist/renderer/runtime-contract.generated.js +8 -0
  174. package/dist/renderer/runtime-contract.generated.js.map +1 -0
  175. package/dist/renderer/served.js +39 -0
  176. package/dist/renderer/served.js.map +1 -0
  177. package/dist/tokens/core.meta.generated.js +2 -2
  178. package/dist/tokens/core.meta.generated.js.map +1 -1
  179. package/dist/tokens/index.d.ts +1028 -1028
  180. package/dist/tokens/index.js +863 -863
  181. package/dist/tokens/index.js.map +1 -1
  182. package/dist/tokens/palette.meta.generated.js +5 -0
  183. package/dist/tokens/palette.meta.generated.js.map +1 -0
  184. package/dist/tokens.json +1 -1
  185. package/dist/vendor/.bun/@radix-ui_react-dialog@1.1.15_2b23df507bdda662/vendor/@radix-ui/react-dialog/dist/index.js +57 -62
  186. package/dist/vendor/.bun/@radix-ui_react-dialog@1.1.15_2b23df507bdda662/vendor/@radix-ui/react-dialog/dist/index.js.map +1 -1
  187. package/dist/vendor/.bun/@radix-ui_react-slot@1.2.3_0ac650c021fb1b59/vendor/@radix-ui/react-slot/dist/index.js +32 -38
  188. package/dist/vendor/.bun/@radix-ui_react-slot@1.2.3_0ac650c021fb1b59/vendor/@radix-ui/react-slot/dist/index.js.map +1 -1
  189. package/package.json +29 -21
  190. package/scripts/migration-diagnostics-core.mjs +302 -10
  191. package/scripts/migration-diagnostics.mjs +31 -8
  192. package/scripts/migration-sweep.mjs +10 -10
  193. package/testing/setup.cjs +87 -0
  194. package/dist/_virtual/index.js +0 -6
  195. package/dist/_virtual/index2.js +0 -5
  196. package/dist/_virtual/index2.js.map +0 -1
  197. package/dist/_virtual/use-sync-external-store-shim.development.js +0 -5
  198. package/dist/_virtual/use-sync-external-store-shim.development.js.map +0 -1
  199. package/dist/_virtual/use-sync-external-store-shim.production.js +0 -5
  200. package/dist/_virtual/use-sync-external-store-shim.production.js.map +0 -1
  201. package/dist/tokens/palette.generated.js +0 -5
  202. package/dist/tokens/palette.generated.js.map +0 -1
  203. package/dist/vendor/.bun/@floating-ui_core@1.8.0/vendor/@floating-ui/core/dist/floating-ui.core.js +0 -512
  204. package/dist/vendor/.bun/@floating-ui_core@1.8.0/vendor/@floating-ui/core/dist/floating-ui.core.js.map +0 -1
  205. package/dist/vendor/.bun/@floating-ui_dom@1.8.0/vendor/@floating-ui/dom/dist/floating-ui.dom.js +0 -396
  206. package/dist/vendor/.bun/@floating-ui_dom@1.8.0/vendor/@floating-ui/dom/dist/floating-ui.dom.js.map +0 -1
  207. package/dist/vendor/.bun/@floating-ui_react-dom@2.1.9_6f4b9a1cfb20c0ae/vendor/@floating-ui/react-dom/dist/floating-ui.react-dom.js +0 -233
  208. package/dist/vendor/.bun/@floating-ui_react-dom@2.1.9_6f4b9a1cfb20c0ae/vendor/@floating-ui/react-dom/dist/floating-ui.react-dom.js.map +0 -1
  209. package/dist/vendor/.bun/@floating-ui_utils@0.2.12/vendor/@floating-ui/utils/dist/floating-ui.utils.dom.js +0 -137
  210. package/dist/vendor/.bun/@floating-ui_utils@0.2.12/vendor/@floating-ui/utils/dist/floating-ui.utils.dom.js.map +0 -1
  211. package/dist/vendor/.bun/@floating-ui_utils@0.2.12/vendor/@floating-ui/utils/dist/floating-ui.utils.js +0 -129
  212. package/dist/vendor/.bun/@floating-ui_utils@0.2.12/vendor/@floating-ui/utils/dist/floating-ui.utils.js.map +0 -1
  213. package/dist/vendor/.bun/@radix-ui_number@1.1.1/vendor/@radix-ui/number/dist/index.js +0 -7
  214. package/dist/vendor/.bun/@radix-ui_number@1.1.1/vendor/@radix-ui/number/dist/index.js.map +0 -1
  215. package/dist/vendor/.bun/@radix-ui_react-accordion@1.2.12_2b23df507bdda662/vendor/@radix-ui/react-accordion/dist/index.js +0 -240
  216. package/dist/vendor/.bun/@radix-ui_react-accordion@1.2.12_2b23df507bdda662/vendor/@radix-ui/react-accordion/dist/index.js.map +0 -1
  217. package/dist/vendor/.bun/@radix-ui_react-alert-dialog@1.1.15_2b23df507bdda662/vendor/@radix-ui/react-alert-dialog/dist/index.js +0 -128
  218. package/dist/vendor/.bun/@radix-ui_react-alert-dialog@1.1.15_2b23df507bdda662/vendor/@radix-ui/react-alert-dialog/dist/index.js.map +0 -1
  219. package/dist/vendor/.bun/@radix-ui_react-arrow@1.1.7_2b23df507bdda662/vendor/@radix-ui/react-arrow/dist/index.js +0 -25
  220. package/dist/vendor/.bun/@radix-ui_react-arrow@1.1.7_2b23df507bdda662/vendor/@radix-ui/react-arrow/dist/index.js.map +0 -1
  221. package/dist/vendor/.bun/@radix-ui_react-avatar@1.1.10_2b23df507bdda662/vendor/@radix-ui/react-avatar/dist/index.js +0 -76
  222. package/dist/vendor/.bun/@radix-ui_react-avatar@1.1.10_2b23df507bdda662/vendor/@radix-ui/react-avatar/dist/index.js.map +0 -1
  223. package/dist/vendor/.bun/@radix-ui_react-checkbox@1.3.3_2b23df507bdda662/vendor/@radix-ui/react-checkbox/dist/index.js +0 -252
  224. package/dist/vendor/.bun/@radix-ui_react-checkbox@1.3.3_2b23df507bdda662/vendor/@radix-ui/react-checkbox/dist/index.js.map +0 -1
  225. package/dist/vendor/.bun/@radix-ui_react-collapsible@1.1.12_2b23df507bdda662/vendor/@radix-ui/react-collapsible/dist/index.js +0 -121
  226. package/dist/vendor/.bun/@radix-ui_react-collapsible@1.1.12_2b23df507bdda662/vendor/@radix-ui/react-collapsible/dist/index.js.map +0 -1
  227. package/dist/vendor/.bun/@radix-ui_react-collection@1.1.7_2b23df507bdda662/vendor/@radix-ui/react-collection/dist/index.js +0 -49
  228. package/dist/vendor/.bun/@radix-ui_react-collection@1.1.7_2b23df507bdda662/vendor/@radix-ui/react-collection/dist/index.js.map +0 -1
  229. package/dist/vendor/.bun/@radix-ui_react-direction@1.1.1_0ac650c021fb1b59/vendor/@radix-ui/react-direction/dist/index.js +0 -11
  230. package/dist/vendor/.bun/@radix-ui_react-direction@1.1.1_0ac650c021fb1b59/vendor/@radix-ui/react-direction/dist/index.js.map +0 -1
  231. package/dist/vendor/.bun/@radix-ui_react-dropdown-menu@2.1.16_2b23df507bdda662/vendor/@radix-ui/react-dropdown-menu/dist/index.js +0 -228
  232. package/dist/vendor/.bun/@radix-ui_react-dropdown-menu@2.1.16_2b23df507bdda662/vendor/@radix-ui/react-dropdown-menu/dist/index.js.map +0 -1
  233. package/dist/vendor/.bun/@radix-ui_react-menu@2.1.16_2b23df507bdda662/vendor/@radix-ui/react-menu/dist/index.js +0 -653
  234. package/dist/vendor/.bun/@radix-ui_react-menu@2.1.16_2b23df507bdda662/vendor/@radix-ui/react-menu/dist/index.js.map +0 -1
  235. package/dist/vendor/.bun/@radix-ui_react-popover@1.1.15_2b23df507bdda662/vendor/@radix-ui/react-popover/dist/index.js +0 -244
  236. package/dist/vendor/.bun/@radix-ui_react-popover@1.1.15_2b23df507bdda662/vendor/@radix-ui/react-popover/dist/index.js.map +0 -1
  237. package/dist/vendor/.bun/@radix-ui_react-popper@1.2.8_2b23df507bdda662/vendor/@radix-ui/react-popper/dist/index.js +0 -222
  238. package/dist/vendor/.bun/@radix-ui_react-popper@1.2.8_2b23df507bdda662/vendor/@radix-ui/react-popper/dist/index.js.map +0 -1
  239. package/dist/vendor/.bun/@radix-ui_react-radio-group@1.3.8_2b23df507bdda662/vendor/@radix-ui/react-radio-group/dist/index.js +0 -239
  240. package/dist/vendor/.bun/@radix-ui_react-radio-group@1.3.8_2b23df507bdda662/vendor/@radix-ui/react-radio-group/dist/index.js.map +0 -1
  241. package/dist/vendor/.bun/@radix-ui_react-roving-focus@1.1.11_2b23df507bdda662/vendor/@radix-ui/react-roving-focus/dist/index.js +0 -184
  242. package/dist/vendor/.bun/@radix-ui_react-roving-focus@1.1.11_2b23df507bdda662/vendor/@radix-ui/react-roving-focus/dist/index.js.map +0 -1
  243. package/dist/vendor/.bun/@radix-ui_react-scroll-area@1.2.10_2b23df507bdda662/vendor/@radix-ui/react-scroll-area/dist/index.js +0 -535
  244. package/dist/vendor/.bun/@radix-ui_react-scroll-area@1.2.10_2b23df507bdda662/vendor/@radix-ui/react-scroll-area/dist/index.js.map +0 -1
  245. package/dist/vendor/.bun/@radix-ui_react-select@2.2.6_2b23df507bdda662/vendor/@radix-ui/react-select/dist/index.js +0 -863
  246. package/dist/vendor/.bun/@radix-ui_react-select@2.2.6_2b23df507bdda662/vendor/@radix-ui/react-select/dist/index.js.map +0 -1
  247. package/dist/vendor/.bun/@radix-ui_react-slot@1.2.4_0ac650c021fb1b59/vendor/@radix-ui/react-slot/dist/index.js +0 -63
  248. package/dist/vendor/.bun/@radix-ui_react-slot@1.2.4_0ac650c021fb1b59/vendor/@radix-ui/react-slot/dist/index.js.map +0 -1
  249. package/dist/vendor/.bun/@radix-ui_react-switch@1.2.6_2b23df507bdda662/vendor/@radix-ui/react-switch/dist/index.js +0 -133
  250. package/dist/vendor/.bun/@radix-ui_react-switch@1.2.6_2b23df507bdda662/vendor/@radix-ui/react-switch/dist/index.js.map +0 -1
  251. package/dist/vendor/.bun/@radix-ui_react-tabs@1.1.13_2b23df507bdda662/vendor/@radix-ui/react-tabs/dist/index.js +0 -164
  252. package/dist/vendor/.bun/@radix-ui_react-tabs@1.1.13_2b23df507bdda662/vendor/@radix-ui/react-tabs/dist/index.js.map +0 -1
  253. package/dist/vendor/.bun/@radix-ui_react-toggle-group@1.1.11_2b23df507bdda662/vendor/@radix-ui/react-toggle-group/dist/index.js +0 -138
  254. package/dist/vendor/.bun/@radix-ui_react-toggle-group@1.1.11_2b23df507bdda662/vendor/@radix-ui/react-toggle-group/dist/index.js.map +0 -1
  255. package/dist/vendor/.bun/@radix-ui_react-toggle@1.1.10_2b23df507bdda662/vendor/@radix-ui/react-toggle/dist/index.js +0 -34
  256. package/dist/vendor/.bun/@radix-ui_react-toggle@1.1.10_2b23df507bdda662/vendor/@radix-ui/react-toggle/dist/index.js.map +0 -1
  257. package/dist/vendor/.bun/@radix-ui_react-tooltip@1.2.8_2b23df507bdda662/vendor/@radix-ui/react-tooltip/dist/index.js +0 -340
  258. package/dist/vendor/.bun/@radix-ui_react-tooltip@1.2.8_2b23df507bdda662/vendor/@radix-ui/react-tooltip/dist/index.js.map +0 -1
  259. package/dist/vendor/.bun/@radix-ui_react-use-is-hydrated@0.1.0_0ac650c021fb1b59/vendor/@radix-ui/react-use-is-hydrated/dist/index.js +0 -16
  260. package/dist/vendor/.bun/@radix-ui_react-use-is-hydrated@0.1.0_0ac650c021fb1b59/vendor/@radix-ui/react-use-is-hydrated/dist/index.js.map +0 -1
  261. package/dist/vendor/.bun/@radix-ui_react-use-previous@1.1.1_0ac650c021fb1b59/vendor/@radix-ui/react-use-previous/dist/index.js +0 -9
  262. package/dist/vendor/.bun/@radix-ui_react-use-previous@1.1.1_0ac650c021fb1b59/vendor/@radix-ui/react-use-previous/dist/index.js.map +0 -1
  263. package/dist/vendor/.bun/@radix-ui_react-use-size@1.1.1_0ac650c021fb1b59/vendor/@radix-ui/react-use-size/dist/index.js +0 -28
  264. package/dist/vendor/.bun/@radix-ui_react-use-size@1.1.1_0ac650c021fb1b59/vendor/@radix-ui/react-use-size/dist/index.js.map +0 -1
  265. package/dist/vendor/.bun/@radix-ui_react-visually-hidden@1.2.3_2b23df507bdda662/vendor/@radix-ui/react-visually-hidden/dist/index.js +0 -33
  266. package/dist/vendor/.bun/@radix-ui_react-visually-hidden@1.2.3_2b23df507bdda662/vendor/@radix-ui/react-visually-hidden/dist/index.js.map +0 -1
  267. package/dist/vendor/.bun/sonner@2.0.7_6f4b9a1cfb20c0ae/vendor/sonner/dist/index.js +0 -747
  268. package/dist/vendor/.bun/sonner@2.0.7_6f4b9a1cfb20c0ae/vendor/sonner/dist/index.js.map +0 -1
  269. package/dist/vendor/.bun/use-sync-external-store@1.7.0_62547eec5a2188e3/vendor/use-sync-external-store/cjs/use-sync-external-store-shim.development.js +0 -68
  270. package/dist/vendor/.bun/use-sync-external-store@1.7.0_62547eec5a2188e3/vendor/use-sync-external-store/cjs/use-sync-external-store-shim.development.js.map +0 -1
  271. package/dist/vendor/.bun/use-sync-external-store@1.7.0_62547eec5a2188e3/vendor/use-sync-external-store/cjs/use-sync-external-store-shim.production.js +0 -56
  272. package/dist/vendor/.bun/use-sync-external-store@1.7.0_62547eec5a2188e3/vendor/use-sync-external-store/cjs/use-sync-external-store-shim.production.js.map +0 -1
  273. package/dist/vendor/.bun/use-sync-external-store@1.7.0_62547eec5a2188e3/vendor/use-sync-external-store/shim/index.js +0 -11
  274. package/dist/vendor/.bun/use-sync-external-store@1.7.0_62547eec5a2188e3/vendor/use-sync-external-store/shim/index.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"alert-dialog.js","sources":["../../../src/components/alert-dialog/alert-dialog.tsx"],"sourcesContent":["import * as React from \"react\"\n\nimport * as AlertDialogPrimitive from \"@radix-ui/react-alert-dialog\"\nimport { mergeClasses, shorthands } from \"@epilot/zenith-runtime/v1\"\n\nimport { useAppearanceAttributes } from \"../appearance-boundary/appearance-boundary\"\nimport { useDensity } from \"../density-provider/density-provider\"\nimport { SLOT_ATTR } from \"../../renderer/contract\"\nimport { makeZenithStyles } from \"../../styles/make-styles\"\nimport { boxModel, nativeControl } from \"../../styles/host-reset\"\nimport { OVERLAY_Z_INDEX } from \"../../styles/overlay-layer\"\nimport * as tokens from \"../../tokens\"\nimport {\n Button,\n type ButtonProps,\n type ButtonSize,\n type ButtonVariant,\n} from \"../button/button\"\n\nconst useStyles = makeZenithStyles({\n // For the bare native `<button>` a Trigger/Close renders. Not applied under `asChild`, where the\n // child owns its own element and two atom sets would race for the same properties.\n nativeTrigger: {\n ...nativeControl,\n },\n overlay: {\n position: \"fixed\",\n top: 0,\n right: 0,\n bottom: 0,\n left: 0,\n zIndex: OVERLAY_Z_INDEX,\n backgroundColor: \"rgba(0, 0, 0, 0.5)\",\n \"&[data-state='open']\": {\n animationName: {\n from: { opacity: 0 },\n to: { opacity: 1 },\n },\n animationDuration: \"150ms\",\n animationTimingFunction: \"cubic-bezier(0.4, 0, 0.2, 1)\",\n },\n \"&[data-state='closed']\": {\n animationName: {\n from: { opacity: 1 },\n to: { opacity: 0 },\n },\n animationDuration: \"100ms\",\n animationTimingFunction: \"cubic-bezier(0.4, 0, 1, 1)\",\n },\n },\n content: {\n ...boxModel,\n backgroundColor: tokens.body,\n position: \"fixed\",\n top: \"50%\",\n left: \"50%\",\n transform: \"translate(-50%, -50%)\",\n zIndex: OVERLAY_Z_INDEX,\n display: \"grid\",\n width: \"100%\",\n maxWidth: \"calc(100% - 2rem)\",\n ...shorthands.gap(tokens.spacingGroup2),\n ...shorthands.borderRadius(tokens.radiusXl),\n ...shorthands.border(\"1px\", \"solid\", tokens.grayA1),\n ...shorthands.padding(tokens.spacingGroup2),\n // v1 shadow-lg\n boxShadow: \"0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a\",\n outlineStyle: \"none\",\n \"@media (prefers-reduced-motion: reduce)\": {\n animationDuration: \"0.01ms\",\n animationIterationCount: \"1\",\n \"&[data-state='open']\": {\n animationDuration: \"0.01ms\",\n },\n \"&[data-state='closed']\": {\n animationDuration: \"0.01ms\",\n },\n },\n \"&[data-state='open']\": {\n animationName: {\n from: {\n opacity: 0,\n transform: \"translate(-50%, -50%) scale(0.95)\",\n },\n to: {\n opacity: 1,\n transform: \"translate(-50%, -50%) scale(1)\",\n },\n },\n animationDuration: \"150ms\",\n animationTimingFunction: \"cubic-bezier(0.4, 0, 0.2, 1)\",\n },\n \"&[data-state='closed']\": {\n animationName: {\n from: {\n opacity: 1,\n transform: \"translate(-50%, -50%) scale(1)\",\n },\n to: {\n opacity: 0,\n transform: \"translate(-50%, -50%) scale(0.95)\",\n },\n },\n animationDuration: \"100ms\",\n animationTimingFunction: \"cubic-bezier(0.4, 0, 1, 1)\",\n },\n },\n sm: {\n ...boxModel,\n maxWidth: tokens.containerSm,\n },\n md: {\n ...boxModel,\n maxWidth: tokens.containerMd,\n },\n lg: {\n ...boxModel,\n maxWidth: tokens.containerLg,\n },\n xl: {\n ...boxModel,\n \"@media (min-width: 640px)\": {\n maxWidth: tokens.containerXl,\n },\n },\n header: {\n display: \"flex\",\n flexDirection: \"column\",\n ...shorthands.gap(tokens.spacingElement2),\n textAlign: \"left\",\n },\n footer: {\n display: \"flex\",\n ...shorthands.gap(tokens.spacingElement2),\n justifyContent: \"flex-end\",\n },\n title: {\n ...shorthands.margin(0),\n fontSize: tokens.textXl,\n lineHeight: tokens.leadingXl,\n fontWeight: tokens.fontWeightSemibold,\n color: tokens.grayA12,\n },\n description: {\n ...shorthands.margin(0),\n fontSize: tokens.textSm,\n lineHeight: tokens.leadingSm,\n color: tokens.grayA11,\n },\n})\n\nexport type AlertDialogProps = React.ComponentProps<\n typeof AlertDialogPrimitive.Root\n>\n\nexport type AlertDialogTriggerProps = React.ComponentProps<\n typeof AlertDialogPrimitive.Trigger\n>\n\nexport type AlertDialogPortalProps = React.ComponentProps<\n typeof AlertDialogPrimitive.Portal\n>\n\nexport type AlertDialogOverlayProps = React.ComponentProps<\n typeof AlertDialogPrimitive.Overlay\n>\n\nexport type AlertDialogSize = \"xl\" | \"lg\" | \"md\" | \"sm\"\n\nexport type AlertDialogContentProps = React.ComponentProps<\n typeof AlertDialogPrimitive.Content\n> & {\n size?: AlertDialogSize\n}\n\nexport type AlertDialogHeaderProps = React.ComponentProps<\"div\">\nexport type AlertDialogFooterProps = React.ComponentProps<\"div\">\n\nexport type AlertDialogTitleProps = React.ComponentProps<\n typeof AlertDialogPrimitive.Title\n>\n\nexport type AlertDialogDescriptionProps = React.ComponentProps<\n typeof AlertDialogPrimitive.Description\n>\n\nexport type AlertDialogActionProps = Omit<\n ButtonProps,\n \"variant\" | \"size\" | \"destructive\"\n> & {\n variant?: ButtonVariant\n size?: ButtonSize\n destructive?: boolean\n}\n\nexport type AlertDialogCancelProps = Omit<\n ButtonProps,\n \"variant\" | \"size\" | \"destructive\"\n> & {\n variant?: ButtonVariant\n size?: ButtonSize\n destructive?: boolean\n}\n\nexport const AlertDialog = React.forwardRef<HTMLElement, AlertDialogProps>(\n function AlertDialog(props, _ref) {\n return <AlertDialogPrimitive.Root data-slot=\"alert-dialog\" {...props} />\n }\n)\n\nexport const AlertDialogTrigger = React.forwardRef<\n React.ElementRef<typeof AlertDialogPrimitive.Trigger>,\n AlertDialogTriggerProps\n>(function AlertDialogTrigger({ className, ...props }, ref) {\n const styles = useStyles()\n\n return (\n <AlertDialogPrimitive.Trigger\n ref={ref}\n data-slot=\"alert-dialog-trigger\"\n {...{ [SLOT_ATTR]: \"alert-dialog-trigger\" }}\n className={mergeClasses(\n !props.asChild && styles.nativeTrigger,\n className\n )}\n {...props}\n />\n )\n})\n\nexport const AlertDialogPortal = React.forwardRef<\n HTMLElement,\n AlertDialogPortalProps\n>(function AlertDialogPortal(props, _ref) {\n return (\n <AlertDialogPrimitive.Portal\n data-slot=\"alert-dialog-portal\"\n {...{ [SLOT_ATTR]: \"alert-dialog-portal\" }}\n {...props}\n />\n )\n})\n\nexport const AlertDialogOverlay = React.forwardRef<\n React.ElementRef<typeof AlertDialogPrimitive.Overlay>,\n AlertDialogOverlayProps\n>(function AlertDialogOverlay({ className, ...props }, ref) {\n const styles = useStyles()\n // The overlay is portalled too, so it re-stamps the boundary's appearance like the content (#8).\n const appearance = useAppearanceAttributes()\n\n return (\n <AlertDialogPrimitive.Overlay\n ref={ref}\n data-slot=\"alert-dialog-overlay\"\n {...{ [SLOT_ATTR]: \"alert-dialog-overlay\" }}\n {...appearance}\n className={mergeClasses(styles.overlay, className)}\n {...props}\n />\n )\n})\n\nexport const AlertDialogContent = React.forwardRef<\n React.ElementRef<typeof AlertDialogPrimitive.Content>,\n AlertDialogContentProps\n>(function AlertDialogContent(\n { className, size = \"xl\", children, ...props },\n ref\n) {\n const styles = useStyles()\n // DENSITY-SPEC.md §4.4 — portal content boundary; see dialog.tsx's identical comment.\n const override = useDensity()\n // SPEC.md §2 rule 3 — the same portal asymmetry, for the appearance pair: re-stamp the\n // nearest explicit AppearanceBoundary's mode+surface, or neither attribute when there is\n // none, leaving live shell inheritance in place.\n const appearance = useAppearanceAttributes()\n\n return (\n <>\n <AlertDialogOverlay />\n <AlertDialogPrimitive.Content\n ref={ref}\n data-slot=\"alert-dialog-content\"\n {...{ [SLOT_ATTR]: \"alert-dialog-content\" }}\n {...(override !== undefined ? { \"data-density\": override } : {})}\n {...appearance}\n className={mergeClasses(styles.content, styles[size], className)}\n {...props}\n >\n {children}\n </AlertDialogPrimitive.Content>\n </>\n )\n})\n\nexport const AlertDialogHeader = React.forwardRef<\n HTMLDivElement,\n AlertDialogHeaderProps\n>(function AlertDialogHeader({ className, ...props }, ref) {\n const styles = useStyles()\n\n return (\n <div\n ref={ref}\n data-slot=\"alert-dialog-header\"\n {...{ [SLOT_ATTR]: \"alert-dialog-header\" }}\n className={mergeClasses(styles.header, className)}\n {...props}\n />\n )\n})\n\nexport const AlertDialogFooter = React.forwardRef<\n HTMLDivElement,\n AlertDialogFooterProps\n>(function AlertDialogFooter({ className, ...props }, ref) {\n const styles = useStyles()\n\n return (\n <div\n ref={ref}\n data-slot=\"alert-dialog-footer\"\n {...{ [SLOT_ATTR]: \"alert-dialog-footer\" }}\n className={mergeClasses(styles.footer, className)}\n {...props}\n />\n )\n})\n\nexport const AlertDialogTitle = React.forwardRef<\n React.ElementRef<typeof AlertDialogPrimitive.Title>,\n AlertDialogTitleProps\n>(function AlertDialogTitle({ className, ...props }, ref) {\n const styles = useStyles()\n\n return (\n <AlertDialogPrimitive.Title\n ref={ref}\n data-slot=\"alert-dialog-title\"\n {...{ [SLOT_ATTR]: \"alert-dialog-title\" }}\n className={mergeClasses(styles.title, className)}\n {...props}\n />\n )\n})\n\nexport const AlertDialogDescription = React.forwardRef<\n React.ElementRef<typeof AlertDialogPrimitive.Description>,\n AlertDialogDescriptionProps\n>(function AlertDialogDescription({ className, ...props }, ref) {\n const styles = useStyles()\n\n return (\n <AlertDialogPrimitive.Description\n ref={ref}\n data-slot=\"alert-dialog-description\"\n {...{ [SLOT_ATTR]: \"alert-dialog-description\" }}\n className={mergeClasses(styles.description, className)}\n {...props}\n />\n )\n})\n\nexport const AlertDialogAction = React.forwardRef<\n HTMLButtonElement,\n AlertDialogActionProps\n>(function AlertDialogAction(\n {\n variant = \"primary\",\n size = \"base\",\n destructive = false,\n className,\n ...props\n },\n ref\n) {\n return (\n <AlertDialogPrimitive.Action asChild>\n <Button\n ref={ref}\n data-slot=\"alert-dialog-action\"\n {...{ [SLOT_ATTR]: \"alert-dialog-action\" }}\n variant={variant}\n size={size}\n destructive={destructive}\n className={className}\n {...props}\n />\n </AlertDialogPrimitive.Action>\n )\n})\n\nexport const AlertDialogCancel = React.forwardRef<\n HTMLButtonElement,\n AlertDialogCancelProps\n>(function AlertDialogCancel(\n {\n variant = \"secondary\",\n size = \"base\",\n destructive = false,\n className,\n ...props\n },\n ref\n) {\n return (\n <AlertDialogPrimitive.Cancel asChild>\n <Button\n ref={ref}\n data-slot=\"alert-dialog-cancel\"\n {...{ [SLOT_ATTR]: \"alert-dialog-cancel\" }}\n variant={variant}\n size={size}\n destructive={destructive}\n className={className}\n {...props}\n />\n </AlertDialogPrimitive.Cancel>\n )\n})\n"],"names":["useStyles","makeZenithStyles","nativeControl","OVERLAY_Z_INDEX","boxModel","tokens.body","shorthands","tokens.spacingGroup2","tokens.radiusXl","tokens.grayA1","tokens.containerSm","tokens.containerMd","tokens.containerLg","tokens.containerXl","tokens.spacingElement2","tokens.textXl","tokens.leadingXl","tokens.fontWeightSemibold","tokens.grayA12","tokens.textSm","tokens.leadingSm","tokens.grayA11","AlertDialog","React","props","_ref","AlertDialogPrimitive.Root","AlertDialogTrigger","className","ref","styles","jsx","AlertDialogPrimitive.Trigger","SLOT_ATTR","mergeClasses","AlertDialogPortal","AlertDialogPrimitive.Portal","AlertDialogOverlay","appearance","useAppearanceAttributes","AlertDialogPrimitive.Overlay","AlertDialogContent","size","children","override","useDensity","jsxs","Fragment","AlertDialogPrimitive.Content","AlertDialogHeader","AlertDialogFooter","AlertDialogTitle","AlertDialogPrimitive.Title","AlertDialogDescription","AlertDialogPrimitive.Description","AlertDialogAction","variant","destructive","AlertDialogPrimitive.Action","Button","AlertDialogCancel","AlertDialogPrimitive.Cancel"],"mappings":"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"}
1
+ {"version":3,"file":"alert-dialog.js","sources":["../../../src/components/alert-dialog/alert-dialog.tsx"],"sourcesContent":["import * as React from \"react\"\n\nimport { AlertDialog as AlertDialogPrimitive } from \"@base-ui/react/alert-dialog\"\nimport { mergeClasses, shorthands } from \"@epilot/zenith-runtime/v1\"\n\nimport { useAppearanceAttributes } from \"../appearance-boundary/appearance-boundary\"\nimport { useDensity } from \"../density-provider/density-provider\"\nimport { SLOT_ATTR } from \"../../renderer/contract\"\nimport { makeZenithStyles } from \"../../styles/make-styles\"\nimport { boxModel, nativeControl } from \"../../styles/host-reset\"\nimport { OVERLAY_Z_INDEX } from \"../../styles/overlay-layer\"\nimport * as tokens from \"../../tokens\"\nimport {\n Button,\n type ButtonProps,\n type ButtonSize,\n type ButtonVariant,\n} from \"../button/button\"\n\nconst easeOut = \"cubic-bezier(0.4, 0, 0.2, 1)\"\nconst easeIn = \"cubic-bezier(0.4, 0, 1, 1)\"\n\nconst useStyles = makeZenithStyles({\n // For the bare native `<button>` a Trigger/Close renders. Not applied under `asChild`, where the\n // child owns its own element and two atom sets would race for the same properties.\n nativeTrigger: {\n ...nativeControl,\n },\n overlay: {\n position: \"fixed\",\n top: 0,\n right: 0,\n bottom: 0,\n left: 0,\n zIndex: OVERLAY_Z_INDEX,\n backgroundColor: \"rgba(0, 0, 0, 0.5)\",\n transitionProperty: \"opacity\",\n transitionDuration: \"150ms\",\n transitionTimingFunction: easeOut,\n \"&[data-starting-style]\": { opacity: 0 },\n \"&[data-ending-style]\": {\n opacity: 0,\n transitionDuration: \"100ms\",\n transitionTimingFunction: easeIn,\n },\n \"@media (prefers-reduced-motion: reduce)\": {\n transitionDuration: \"0.01ms\",\n \"&[data-ending-style]\": { transitionDuration: \"0.01ms\" },\n },\n },\n content: {\n ...boxModel,\n backgroundColor: tokens.body,\n position: \"fixed\",\n top: \"50%\",\n left: \"50%\",\n transform: \"translate(-50%, -50%)\",\n zIndex: OVERLAY_Z_INDEX,\n display: \"grid\",\n width: \"100%\",\n maxWidth: \"calc(100% - 2rem)\",\n ...shorthands.gap(tokens.spacingGroup2),\n ...shorthands.borderRadius(tokens.radiusXl),\n ...shorthands.border(\"1px\", \"solid\", tokens.grayA1),\n ...shorthands.padding(tokens.spacingGroup2),\n // v1 shadow-lg\n boxShadow: \"0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a\",\n outlineStyle: \"none\",\n transitionProperty: \"opacity, transform\",\n transitionDuration: \"150ms\",\n transitionTimingFunction: easeOut,\n \"&[data-starting-style]\": {\n opacity: 0,\n transform: \"translate(-50%, -50%) scale(0.95)\",\n },\n \"&[data-ending-style]\": {\n opacity: 0,\n transform: \"translate(-50%, -50%) scale(0.95)\",\n transitionDuration: \"100ms\",\n transitionTimingFunction: easeIn,\n },\n \"@media (prefers-reduced-motion: reduce)\": {\n transitionDuration: \"0.01ms\",\n \"&[data-ending-style]\": { transitionDuration: \"0.01ms\" },\n },\n },\n sm: {\n ...boxModel,\n maxWidth: tokens.containerSm,\n },\n md: {\n ...boxModel,\n maxWidth: tokens.containerMd,\n },\n lg: {\n ...boxModel,\n maxWidth: tokens.containerLg,\n },\n xl: {\n ...boxModel,\n \"@media (min-width: 640px)\": {\n maxWidth: tokens.containerXl,\n },\n },\n header: {\n display: \"flex\",\n flexDirection: \"column\",\n ...shorthands.gap(tokens.spacingElement2),\n textAlign: \"left\",\n },\n footer: {\n display: \"flex\",\n ...shorthands.gap(tokens.spacingElement2),\n justifyContent: \"flex-end\",\n },\n title: {\n ...shorthands.margin(0),\n fontSize: tokens.textXl,\n lineHeight: tokens.leadingXl,\n fontWeight: tokens.fontWeightSemibold,\n color: tokens.grayA12,\n },\n description: {\n ...shorthands.margin(0),\n fontSize: tokens.textSm,\n lineHeight: tokens.leadingSm,\n color: tokens.grayA11,\n },\n})\n\n// A single child can arrive wrapped in a one-element array depending on the JSX runtime (MDX call\n// sites do this). Radix's Slot normalised that, so the `asChild` shim has to as well.\nfunction onlySlotChild(children: React.ReactNode) {\n const elements = React.Children.toArray(children).filter(React.isValidElement)\n return elements.length === 1 ? elements[0] : undefined\n}\n\n/**\n * Radix's `asChild` over Base UI's `render`: the single child element becomes the part and keeps\n * its own children, since Base UI lets the rendered element's props win the merge.\n */\nfunction slotProps(asChild: boolean, children: React.ReactNode) {\n const child = asChild ? onlySlotChild(children) : undefined\n return child ? { render: child } : { children }\n}\n\n/**\n * A part's props as they were under Radix: its native element's own (DOM attributes, React's\n * handler types, a `CSSProperties` style, a string `className`, `ref`) plus `asChild`. Base UI's\n * prop types widen `style` and `className` to functions of the part's state, wrap every handler's\n * event in `BaseUIEvent` and add props of their own; none of that reaches the public surface.\n */\ntype NativePartProps<Tag extends \"button\" | \"div\" | \"h2\" | \"p\"> =\n React.ComponentProps<Tag> & {\n /** Renders the single child element as this part, merging its props and behaviour onto it. */\n asChild?: boolean\n }\n\n/**\n * Radix-shaped focus interception over Base UI's `initialFocus`/`finalFocus`. `preventDefault()`\n * leaves focus where it is; otherwise the default move happens, because Base UI reads a callback\n * that returns `undefined` as \"move nothing\".\n */\nfunction radixFocusCallback(handler: ((event: Event) => void) | undefined) {\n if (!handler) return undefined\n\n return () => {\n const event = new Event(\"focus\", { cancelable: true })\n const before = document.activeElement\n handler(event)\n const moved = document.activeElement\n // Base UI calls `finalFocus` inside React's commit, and React then restores the focus it saw\n // before the commit. Radix ran this handler after the commit, so a handler that moves focus\n // itself has its move applied again once the commit is done.\n if (moved !== before && moved instanceof HTMLElement) {\n queueMicrotask(() => moved.focus())\n }\n return !event.defaultPrevented\n }\n}\n\n/**\n * What `onOpenChange` receives as its second argument: Base UI's change details, declared in\n * Zenith. Base UI's own type drags its dialog store into the published declarations, and\n * TypeScript 4 cannot parse that store. `event` narrows with `reason`, as it does in Base UI.\n */\ntype AlertDialogOpenChangeDetails = (\n | {\n reason: \"trigger-press\"\n event: MouseEvent | PointerEvent | TouchEvent | KeyboardEvent\n }\n | { reason: \"outside-press\"; event: MouseEvent | PointerEvent | TouchEvent }\n | { reason: \"escape-key\"; event: KeyboardEvent }\n | { reason: \"close-press\"; event: MouseEvent | KeyboardEvent | PointerEvent }\n | { reason: \"focus-out\"; event: FocusEvent | KeyboardEvent }\n | { reason: \"imperative-action\"; event: Event }\n | { reason: \"none\"; event: Event }\n) & {\n /** Keeps the alert dialog in its current state. */\n cancel: () => void\n /** Lets the event propagate where the alert dialog would otherwise stop it. */\n allowPropagation: () => void\n isCanceled: boolean\n isPropagationAllowed: boolean\n /** The element that caused the change, if any. */\n trigger: Element | undefined\n /** Keeps the alert dialog's elements mounted after it closes. */\n preventUnmountOnClose: () => void\n}\n\nexport type AlertDialogProps = {\n children?: React.ReactNode\n open?: boolean\n defaultOpen?: boolean\n /**\n * Called when the alert dialog opens or closes. `eventDetails.reason` says why (`trigger-press`,\n * `escape-key`, `close-press`) and `eventDetails.cancel()` keeps the alert dialog in its current\n * state.\n */\n onOpenChange?: (\n open: boolean,\n eventDetails: AlertDialogOpenChangeDetails\n ) => void\n}\n\nexport const AlertDialog = React.forwardRef<HTMLElement, AlertDialogProps>(\n function AlertDialog({ onOpenChange, ...props }, _ref) {\n return (\n <AlertDialogPrimitive.Root\n data-slot=\"alert-dialog\"\n onOpenChange={(open, eventDetails) => {\n // A layer above (a Volt select or tooltip, which run on Radix, or a control handling\n // the key itself) prevents the Escape it consumes, but Base UI dismisses regardless, so\n // one Escape would close both. Honour the handled event. Consumers still mix Zenith with\n // Volt on one page, so this stays after the Radix teardown (D12).\n if (\n eventDetails.reason === \"escape-key\" &&\n eventDetails.event.defaultPrevented\n ) {\n eventDetails.cancel()\n return\n }\n onOpenChange?.(open, eventDetails)\n }}\n {...props}\n />\n )\n }\n)\n\nexport type AlertDialogTriggerProps = NativePartProps<\"button\">\n\nexport const AlertDialogTrigger = React.forwardRef<\n HTMLButtonElement,\n AlertDialogTriggerProps\n>(function AlertDialogTrigger(\n { asChild = false, children, className, ...props },\n ref\n) {\n const styles = useStyles()\n\n return (\n <AlertDialogPrimitive.Trigger\n ref={ref}\n data-slot=\"alert-dialog-trigger\"\n {...{ [SLOT_ATTR]: \"alert-dialog-trigger\" }}\n className={mergeClasses(!asChild && styles.nativeTrigger, className)}\n {...props}\n {...slotProps(asChild, children)}\n />\n )\n})\n\n// Lets AlertDialogContent supply Base UI's required Portal itself when no AlertDialogPortal wraps\n// it, as Radix rendered content inline without one.\nconst AlertDialogPortalPresenceContext = React.createContext(false)\n\nexport type AlertDialogPortalProps = {\n children?: React.ReactNode\n /** The element the overlay and the content portal into; `document.body` when omitted or null. */\n container?: Element | DocumentFragment | null\n /** Keeps the overlay and the content mounted while the alert dialog is closed. */\n forceMount?: true\n}\n\nexport const AlertDialogPortal = React.forwardRef<\n HTMLElement,\n AlertDialogPortalProps\n>(function AlertDialogPortal({ container, forceMount, ...props }, ref) {\n return (\n <AlertDialogPortalPresenceContext.Provider value={true}>\n <AlertDialogPrimitive.Portal\n // Base UI types the ref as its portal div, which any HTMLElement ref can hold.\n ref={ref as React.Ref<HTMLDivElement>}\n data-slot=\"alert-dialog-portal\"\n {...{ [SLOT_ATTR]: \"alert-dialog-portal\" }}\n // Radix took any Element or DocumentFragment, null meaning the body. Base UI hands a node\n // straight to createPortal, which takes either, but reads null as \"wait for one\".\n container={(container ?? undefined) as HTMLElement | undefined}\n keepMounted={forceMount}\n {...props}\n />\n </AlertDialogPortalPresenceContext.Provider>\n )\n})\n\nexport type AlertDialogOverlayProps = NativePartProps<\"div\"> & {\n /** Kept for compatibility: the overlay stays mounted whenever AlertDialogPortal's `forceMount` keeps the portal mounted. */\n forceMount?: true\n}\n\nexport const AlertDialogOverlay = React.forwardRef<\n HTMLDivElement,\n AlertDialogOverlayProps\n>(function AlertDialogOverlay(\n { asChild = false, children, className, forceMount: _forceMount, ...props },\n ref\n) {\n const styles = useStyles()\n // The overlay is portalled too, so it re-stamps the boundary's appearance like the content (#8).\n const appearance = useAppearanceAttributes()\n\n return (\n <AlertDialogPrimitive.Backdrop\n ref={ref}\n // Base UI renders no backdrop for a dialog nested in another; Radix's overlay always rendered,\n // dimming the dialog an alert dialog confirms over.\n forceRender\n data-slot=\"alert-dialog-overlay\"\n {...{ [SLOT_ATTR]: \"alert-dialog-overlay\" }}\n {...appearance}\n className={mergeClasses(styles.overlay, className)}\n {...props}\n {...slotProps(asChild, children)}\n />\n )\n})\n\n// Radix moved focus to Cancel on open, wherever it sits in the content; Base UI moves it to the\n// first tabbable element. AlertDialogCancel registers its button here so the content can keep\n// Radix's target.\nconst AlertDialogCancelRegistryContext = React.createContext<\n ((node: HTMLButtonElement | null) => void) | undefined\n>(undefined)\n\nexport type AlertDialogSize = \"xl\" | \"lg\" | \"md\" | \"sm\"\n\nexport type AlertDialogContentProps = NativePartProps<\"div\"> & {\n size?: AlertDialogSize\n /**\n * Keeps the content mounted while the alert dialog is closed. Inside AlertDialogPortal, the\n * portal's `forceMount` decides.\n */\n forceMount?: true\n /**\n * Called before focus moves into the alert dialog, to AlertDialogCancel; `preventDefault()`\n * leaves focus where it is.\n */\n onOpenAutoFocus?: (event: Event) => void\n /** Called before focus returns on close; `preventDefault()` skips the return. */\n onCloseAutoFocus?: (event: Event) => void\n}\n\nexport const AlertDialogContent = React.forwardRef<\n HTMLDivElement,\n AlertDialogContentProps\n>(function AlertDialogContent(\n {\n asChild = false,\n className,\n size = \"xl\",\n children,\n forceMount,\n onOpenAutoFocus,\n onCloseAutoFocus,\n ...props\n },\n ref\n) {\n const styles = useStyles()\n const hasPortal = React.useContext(AlertDialogPortalPresenceContext)\n // DENSITY-SPEC.md §4.4 — portal content boundary; see dialog.tsx's identical comment.\n const override = useDensity()\n // SPEC.md §2 rule 3 — the same portal asymmetry, for the appearance pair: re-stamp the\n // nearest explicit AppearanceBoundary's mode+surface, or neither attribute when there is\n // none, leaving live shell inheritance in place.\n const appearance = useAppearanceAttributes()\n const cancelRef = React.useRef<HTMLButtonElement | null>(null)\n const registerCancel = React.useCallback((node: HTMLButtonElement | null) => {\n cancelRef.current = node\n }, [])\n const openAutoFocus = radixFocusCallback(onOpenAutoFocus)\n\n const popup = (\n <AlertDialogPrimitive.Popup\n ref={ref}\n data-slot=\"alert-dialog-content\"\n {...{ [SLOT_ATTR]: \"alert-dialog-content\" }}\n {...(override !== undefined ? { \"data-density\": override } : {})}\n {...appearance}\n // Cancel when there is one; otherwise Base UI's default (`true`), the first tabbable element.\n initialFocus={() =>\n openAutoFocus?.() === false ? false : (cancelRef.current ?? true)\n }\n finalFocus={radixFocusCallback(onCloseAutoFocus)}\n className={mergeClasses(styles.content, styles[size], className)}\n {...props}\n {...slotProps(asChild, children)}\n />\n )\n\n const content = (\n <AlertDialogCancelRegistryContext.Provider value={registerCancel}>\n <AlertDialogOverlay />\n {popup}\n </AlertDialogCancelRegistryContext.Provider>\n )\n\n // Base UI's Popup requires a Portal ancestor; Radix rendered inline without one.\n return hasPortal ? (\n content\n ) : (\n <AlertDialogPrimitive.Portal keepMounted={forceMount}>\n {content}\n </AlertDialogPrimitive.Portal>\n )\n})\n\nexport type AlertDialogHeaderProps = React.ComponentProps<\"div\">\n\nexport const AlertDialogHeader = React.forwardRef<\n HTMLDivElement,\n AlertDialogHeaderProps\n>(function AlertDialogHeader({ className, ...props }, ref) {\n const styles = useStyles()\n\n return (\n <div\n ref={ref}\n data-slot=\"alert-dialog-header\"\n {...{ [SLOT_ATTR]: \"alert-dialog-header\" }}\n className={mergeClasses(styles.header, className)}\n {...props}\n />\n )\n})\n\nexport type AlertDialogFooterProps = React.ComponentProps<\"div\">\n\nexport const AlertDialogFooter = React.forwardRef<\n HTMLDivElement,\n AlertDialogFooterProps\n>(function AlertDialogFooter({ className, ...props }, ref) {\n const styles = useStyles()\n\n return (\n <div\n ref={ref}\n data-slot=\"alert-dialog-footer\"\n {...{ [SLOT_ATTR]: \"alert-dialog-footer\" }}\n className={mergeClasses(styles.footer, className)}\n {...props}\n />\n )\n})\n\nexport type AlertDialogTitleProps = NativePartProps<\"h2\">\n\nexport const AlertDialogTitle = React.forwardRef<\n HTMLHeadingElement,\n AlertDialogTitleProps\n>(function AlertDialogTitle(\n { asChild = false, children, className, ...props },\n ref\n) {\n const styles = useStyles()\n\n return (\n <AlertDialogPrimitive.Title\n ref={ref}\n data-slot=\"alert-dialog-title\"\n {...{ [SLOT_ATTR]: \"alert-dialog-title\" }}\n className={mergeClasses(styles.title, className)}\n {...props}\n {...slotProps(asChild, children)}\n />\n )\n})\n\nexport type AlertDialogDescriptionProps = NativePartProps<\"p\">\n\nexport const AlertDialogDescription = React.forwardRef<\n HTMLParagraphElement,\n AlertDialogDescriptionProps\n>(function AlertDialogDescription(\n { asChild = false, children, className, ...props },\n ref\n) {\n const styles = useStyles()\n\n return (\n <AlertDialogPrimitive.Description\n ref={ref}\n data-slot=\"alert-dialog-description\"\n {...{ [SLOT_ATTR]: \"alert-dialog-description\" }}\n className={mergeClasses(styles.description, className)}\n {...props}\n {...slotProps(asChild, children)}\n />\n )\n})\n\nexport type AlertDialogActionProps = Omit<\n ButtonProps,\n \"variant\" | \"size\" | \"destructive\"\n> & {\n variant?: ButtonVariant\n size?: ButtonSize\n destructive?: boolean\n}\n\n// Radix's Action closed the alert dialog on click, like Cancel; both compose Base UI's Close and\n// differ only in their default variant.\nexport const AlertDialogAction = React.forwardRef<\n HTMLButtonElement,\n AlertDialogActionProps\n>(function AlertDialogAction(\n {\n variant = \"primary\",\n size = \"base\",\n destructive = false,\n className,\n ...props\n },\n ref\n) {\n return (\n <AlertDialogPrimitive.Close\n render={\n <Button\n ref={ref}\n data-slot=\"alert-dialog-action\"\n {...{ [SLOT_ATTR]: \"alert-dialog-action\" }}\n variant={variant}\n size={size}\n destructive={destructive}\n className={className}\n {...props}\n />\n }\n />\n )\n})\n\nexport type AlertDialogCancelProps = Omit<\n ButtonProps,\n \"variant\" | \"size\" | \"destructive\"\n> & {\n variant?: ButtonVariant\n size?: ButtonSize\n destructive?: boolean\n}\n\nexport const AlertDialogCancel = React.forwardRef<\n HTMLButtonElement,\n AlertDialogCancelProps\n>(function AlertDialogCancel(\n {\n variant = \"secondary\",\n size = \"base\",\n destructive = false,\n className,\n ...props\n },\n ref\n) {\n const registerCancel = React.useContext(AlertDialogCancelRegistryContext)\n\n return (\n <AlertDialogPrimitive.Close\n ref={registerCancel}\n render={\n <Button\n ref={ref}\n data-slot=\"alert-dialog-cancel\"\n {...{ [SLOT_ATTR]: \"alert-dialog-cancel\" }}\n variant={variant}\n size={size}\n destructive={destructive}\n className={className}\n {...props}\n />\n }\n />\n )\n})\n"],"names":["easeOut","easeIn","useStyles","makeZenithStyles","nativeControl","OVERLAY_Z_INDEX","boxModel","tokens.body","shorthands","tokens.spacingGroup2","tokens.radiusXl","tokens.grayA1","tokens.containerSm","tokens.containerMd","tokens.containerLg","tokens.containerXl","tokens.spacingElement2","tokens.textXl","tokens.leadingXl","tokens.fontWeightSemibold","tokens.grayA12","tokens.textSm","tokens.leadingSm","tokens.grayA11","onlySlotChild","children","elements","React","slotProps","asChild","child","radixFocusCallback","handler","event","before","moved","AlertDialog","onOpenChange","props","_ref","jsx","AlertDialogPrimitive","open","eventDetails","AlertDialogTrigger","className","ref","styles","SLOT_ATTR","mergeClasses","AlertDialogPortalPresenceContext","AlertDialogPortal","container","forceMount","AlertDialogOverlay","_forceMount","appearance","useAppearanceAttributes","AlertDialogCancelRegistryContext","AlertDialogContent","size","onOpenAutoFocus","onCloseAutoFocus","hasPortal","override","useDensity","cancelRef","registerCancel","node","openAutoFocus","popup","content","jsxs","AlertDialogHeader","AlertDialogFooter","AlertDialogTitle","AlertDialogDescription","AlertDialogAction","variant","destructive","Button","AlertDialogCancel"],"mappings":"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"}
@@ -1,12 +1,12 @@
1
- import { jsxs as p, jsx as c } from "react/jsx-runtime";
2
- import * as l from "react";
3
- import { Root as y, Image as A, Fallback as x } from "../../vendor/.bun/@radix-ui_react-avatar@1.1.10_2b23df507bdda662/vendor/@radix-ui/react-avatar/dist/index.js";
4
- import { SLOT_ATTR as i, mergeClasses as S } from "@epilot/zenith-runtime/v1";
5
- import { makeZenithStyles as w } from "../../styles/make-styles.js";
1
+ import { jsxs as A, jsx as u } from "react/jsx-runtime";
2
+ import * as d from "react";
3
+ import { Avatar as i } from "../../_virtual/_zenith-runtime-family_avatar.js";
4
+ import { SLOT_ATTR as l, mergeClasses as y } from "@epilot/zenith-runtime/v1";
5
+ import { makeZenithStyles as x } from "../../styles/make-styles.js";
6
6
  import { boxModel as a } from "../../styles/host-reset.js";
7
7
  import { useZenithPaletteTokensFor as C } from "../../tokens/use-palette-tokens.js";
8
- import { indigoA12 as z, indigo3 as R, purpleA12 as T, purple3 as j, pinkA12 as F, pink3 as O, redA12 as H, red3 as I, bronzeA12 as N, bronze3 as X, orangeA12 as B, orange3 as L, yellowA12 as M, yellow3 as W, limeA12 as Z, lime3 as _, greenA12 as G, green3 as P, mintA12 as U, mint3 as V, tealA12 as Y, teal3 as q, cyanA12 as D, cyan3 as E, skyA12 as J, sky3 as K, blueA12 as Q, blue3 as $, grayA12 as aa, gray3 as ra, leadingBase as ea, textBase as ta, leadingSm as oa, textSm as na, leadingXs as ia, textXs as la, fontWeightMedium as ga } from "../../tokens/index.js";
9
- const u = [
8
+ import { indigoA12 as S, indigo3 as w, purpleA12 as z, purple3 as R, pinkA12 as T, pink3 as j, redA12 as F, red3 as O, bronzeA12 as H, bronze3 as I, orangeA12 as N, orange3 as X, yellowA12 as _, yellow3 as B, limeA12 as L, lime3 as M, greenA12 as W, green3 as Z, mintA12 as G, mint3 as P, tealA12 as U, teal3 as V, cyanA12 as Y, cyan3 as $, skyA12 as q, sky3 as D, blueA12 as E, blue3 as J, grayA12 as K, gray3 as Q, leadingBase as aa, textBase as ra, leadingSm as ea, textSm as ta, leadingXs as oa, textXs as na, fontWeightMedium as ia } from "../../tokens/index.js";
9
+ const v = [
10
10
  "blue",
11
11
  "sky",
12
12
  "cyan",
@@ -19,75 +19,75 @@ const u = [
19
19
  "pink",
20
20
  "purple",
21
21
  "indigo"
22
- ], da = (o) => {
22
+ ], la = (o) => {
23
23
  let r = 0;
24
24
  for (let e = 0; e < o.length; e++)
25
25
  r = r * 31 + o.charCodeAt(e) >>> 0;
26
- return u[r % u.length];
27
- }, sa = {
26
+ return v[r % v.length];
27
+ }, da = {
28
28
  gray: {
29
- "--avatar-background": ra,
30
- "--avatar-foreground": aa
29
+ "--avatar-background": Q,
30
+ "--avatar-foreground": K
31
31
  },
32
32
  blue: {
33
- "--avatar-background": $,
34
- "--avatar-foreground": Q
33
+ "--avatar-background": J,
34
+ "--avatar-foreground": E
35
35
  },
36
36
  sky: {
37
- "--avatar-background": K,
38
- "--avatar-foreground": J
37
+ "--avatar-background": D,
38
+ "--avatar-foreground": q
39
39
  },
40
40
  cyan: {
41
- "--avatar-background": E,
42
- "--avatar-foreground": D
43
- },
44
- teal: {
45
- "--avatar-background": q,
41
+ "--avatar-background": $,
46
42
  "--avatar-foreground": Y
47
43
  },
48
- mint: {
44
+ teal: {
49
45
  "--avatar-background": V,
50
46
  "--avatar-foreground": U
51
47
  },
52
- green: {
48
+ mint: {
53
49
  "--avatar-background": P,
54
50
  "--avatar-foreground": G
55
51
  },
52
+ green: {
53
+ "--avatar-background": Z,
54
+ "--avatar-foreground": W
55
+ },
56
56
  lime: {
57
- "--avatar-background": _,
58
- "--avatar-foreground": Z
57
+ "--avatar-background": M,
58
+ "--avatar-foreground": L
59
59
  },
60
60
  yellow: {
61
- "--avatar-background": W,
62
- "--avatar-foreground": M
61
+ "--avatar-background": B,
62
+ "--avatar-foreground": _
63
63
  },
64
64
  orange: {
65
- "--avatar-background": L,
66
- "--avatar-foreground": B
67
- },
68
- bronze: {
69
65
  "--avatar-background": X,
70
66
  "--avatar-foreground": N
71
67
  },
72
- red: {
68
+ bronze: {
73
69
  "--avatar-background": I,
74
70
  "--avatar-foreground": H
75
71
  },
76
- pink: {
72
+ red: {
77
73
  "--avatar-background": O,
78
74
  "--avatar-foreground": F
79
75
  },
80
- purple: {
76
+ pink: {
81
77
  "--avatar-background": j,
82
78
  "--avatar-foreground": T
83
79
  },
84
- indigo: {
80
+ purple: {
85
81
  "--avatar-background": R,
86
82
  "--avatar-foreground": z
83
+ },
84
+ indigo: {
85
+ "--avatar-background": w,
86
+ "--avatar-foreground": S
87
87
  }
88
- }, ca = l.createContext(
88
+ }, ga = d.createContext(
89
89
  null
90
- ), ua = w({
90
+ ), sa = x({
91
91
  root: {
92
92
  ...a,
93
93
  position: "relative",
@@ -100,29 +100,29 @@ const u = [
100
100
  borderRadius: "9999px",
101
101
  backgroundColor: "var(--avatar-background)",
102
102
  color: "var(--avatar-foreground)",
103
- fontWeight: ga,
103
+ fontWeight: ia,
104
104
  textTransform: "uppercase"
105
105
  },
106
106
  sm: {
107
107
  ...a,
108
108
  width: "1.5rem",
109
109
  height: "1.5rem",
110
- fontSize: la,
111
- lineHeight: ia
110
+ fontSize: na,
111
+ lineHeight: oa
112
112
  },
113
113
  base: {
114
114
  ...a,
115
115
  width: "2rem",
116
116
  height: "2rem",
117
- fontSize: na,
118
- lineHeight: oa
117
+ fontSize: ta,
118
+ lineHeight: ea
119
119
  },
120
120
  lg: {
121
121
  ...a,
122
122
  width: "2.5rem",
123
123
  height: "2.5rem",
124
- fontSize: ta,
125
- lineHeight: ea
124
+ fontSize: ra,
125
+ lineHeight: aa
126
126
  },
127
127
  image: {
128
128
  ...a,
@@ -138,44 +138,56 @@ const u = [
138
138
  width: "100%",
139
139
  height: "100%"
140
140
  }
141
- }), ya = l.forwardRef(function({ className: r, src: e, alt: g, initials: d, color: v, size: m, style: f, ...b }, h) {
142
- const t = ua(), n = l.useContext(ca), k = m ?? (n == null ? void 0 : n.size) ?? "base", s = v ?? da(g ?? d ?? "");
143
- return C(s), /* @__PURE__ */ p(
144
- y,
145
- {
146
- ref: h,
147
- "data-slot": "avatar",
148
- [i]: "avatar",
149
- className: S(t.root, t[k], r),
150
- style: { ...sa[s], ...f },
151
- ...b,
152
- children: [
153
- /* @__PURE__ */ c(
154
- A,
155
- {
156
- "data-slot": "avatar-image",
157
- [i]: "avatar-image",
158
- src: e,
159
- alt: g,
160
- className: t.image
161
- }
162
- ),
163
- /* @__PURE__ */ c(
164
- x,
165
- {
166
- "data-slot": "avatar-fallback",
167
- [i]: "avatar-fallback",
168
- className: t.fallback,
169
- "aria-hidden": "true",
170
- children: d
171
- }
172
- )
173
- ]
174
- }
175
- );
176
- });
141
+ }), pa = d.forwardRef(
142
+ function({
143
+ className: r,
144
+ src: e,
145
+ alt: g,
146
+ initials: s,
147
+ color: m,
148
+ size: f,
149
+ style: b,
150
+ asChild: ca,
151
+ ...h
152
+ }, k) {
153
+ const t = sa(), n = d.useContext(ga), p = f ?? (n == null ? void 0 : n.size) ?? "base", c = m ?? la(g ?? s ?? "");
154
+ return C(c), /* @__PURE__ */ A(
155
+ i.Root,
156
+ {
157
+ ref: k,
158
+ "data-slot": "avatar",
159
+ [l]: "avatar",
160
+ className: y(t.root, t[p], r),
161
+ style: { ...da[c], ...b },
162
+ ...h,
163
+ children: [
164
+ /* @__PURE__ */ u(
165
+ i.Image,
166
+ {
167
+ "data-slot": "avatar-image",
168
+ [l]: "avatar-image",
169
+ src: e,
170
+ alt: g,
171
+ className: t.image
172
+ }
173
+ ),
174
+ /* @__PURE__ */ u(
175
+ i.Fallback,
176
+ {
177
+ "data-slot": "avatar-fallback",
178
+ [l]: "avatar-fallback",
179
+ className: t.fallback,
180
+ "aria-hidden": "true",
181
+ children: s
182
+ }
183
+ )
184
+ ]
185
+ }
186
+ );
187
+ }
188
+ );
177
189
  export {
178
- ya as Avatar,
179
- ca as AvatarGroupContext
190
+ pa as Avatar,
191
+ ga as AvatarGroupContext
180
192
  };
181
193
  //# sourceMappingURL=avatar.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"avatar.js","sources":["../../../src/components/avatar/avatar.tsx"],"sourcesContent":["import * as React from \"react\"\nimport * as AvatarPrimitive from \"@radix-ui/react-avatar\"\nimport { mergeClasses } from \"@epilot/zenith-runtime/v1\"\n\nimport { SLOT_ATTR } from \"../../renderer/contract\"\nimport { makeZenithStyles } from \"../../styles/make-styles\"\nimport { boxModel } from \"../../styles/host-reset\"\nimport { useZenithPaletteTokensFor } from \"../../tokens/use-palette-tokens\"\nimport * as tokens from \"../../tokens\"\n\nexport type AvatarColor =\n | \"gray\"\n | \"blue\"\n | \"sky\"\n | \"cyan\"\n | \"teal\"\n | \"mint\"\n | \"green\"\n | \"lime\"\n | \"yellow\"\n | \"orange\"\n | \"bronze\"\n | \"red\"\n | \"pink\"\n | \"purple\"\n | \"indigo\"\nexport type AvatarSize = \"sm\" | \"base\" | \"lg\"\n\nconst AUTO_COLORS: AvatarColor[] = [\n \"blue\",\n \"sky\",\n \"cyan\",\n \"teal\",\n \"mint\",\n \"green\",\n \"lime\",\n \"orange\",\n \"bronze\",\n \"pink\",\n \"purple\",\n \"indigo\",\n]\n\nconst colorForSeed = (seed: string): AvatarColor => {\n let hash = 0\n for (let i = 0; i < seed.length; i++) {\n hash = (hash * 31 + seed.charCodeAt(i)) >>> 0\n }\n return AUTO_COLORS[hash % AUTO_COLORS.length]\n}\n\nconst colorVars: Record<AvatarColor, React.CSSProperties> = {\n gray: {\n \"--avatar-background\": tokens.gray3,\n \"--avatar-foreground\": tokens.grayA12,\n } as React.CSSProperties,\n blue: {\n \"--avatar-background\": tokens.blue3,\n \"--avatar-foreground\": tokens.blueA12,\n } as React.CSSProperties,\n sky: {\n \"--avatar-background\": tokens.sky3,\n \"--avatar-foreground\": tokens.skyA12,\n } as React.CSSProperties,\n cyan: {\n \"--avatar-background\": tokens.cyan3,\n \"--avatar-foreground\": tokens.cyanA12,\n } as React.CSSProperties,\n teal: {\n \"--avatar-background\": tokens.teal3,\n \"--avatar-foreground\": tokens.tealA12,\n } as React.CSSProperties,\n mint: {\n \"--avatar-background\": tokens.mint3,\n \"--avatar-foreground\": tokens.mintA12,\n } as React.CSSProperties,\n green: {\n \"--avatar-background\": tokens.green3,\n \"--avatar-foreground\": tokens.greenA12,\n } as React.CSSProperties,\n lime: {\n \"--avatar-background\": tokens.lime3,\n \"--avatar-foreground\": tokens.limeA12,\n } as React.CSSProperties,\n yellow: {\n \"--avatar-background\": tokens.yellow3,\n \"--avatar-foreground\": tokens.yellowA12,\n } as React.CSSProperties,\n orange: {\n \"--avatar-background\": tokens.orange3,\n \"--avatar-foreground\": tokens.orangeA12,\n } as React.CSSProperties,\n bronze: {\n \"--avatar-background\": tokens.bronze3,\n \"--avatar-foreground\": tokens.bronzeA12,\n } as React.CSSProperties,\n red: {\n \"--avatar-background\": tokens.red3,\n \"--avatar-foreground\": tokens.redA12,\n } as React.CSSProperties,\n pink: {\n \"--avatar-background\": tokens.pink3,\n \"--avatar-foreground\": tokens.pinkA12,\n } as React.CSSProperties,\n purple: {\n \"--avatar-background\": tokens.purple3,\n \"--avatar-foreground\": tokens.purpleA12,\n } as React.CSSProperties,\n indigo: {\n \"--avatar-background\": tokens.indigo3,\n \"--avatar-foreground\": tokens.indigoA12,\n } as React.CSSProperties,\n}\n\nconst AvatarGroupContext = React.createContext<{ size?: AvatarSize } | null>(\n null\n)\n\nconst useStyles = makeZenithStyles({\n root: {\n ...boxModel,\n position: \"relative\",\n display: \"inline-flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n flexShrink: 0,\n overflowX: \"hidden\",\n overflowY: \"hidden\",\n borderRadius: \"9999px\",\n backgroundColor: \"var(--avatar-background)\",\n color: \"var(--avatar-foreground)\",\n fontWeight: tokens.fontWeightMedium,\n textTransform: \"uppercase\",\n },\n sm: {\n ...boxModel,\n width: \"1.5rem\",\n height: \"1.5rem\",\n fontSize: tokens.textXs,\n lineHeight: tokens.leadingXs,\n },\n base: {\n ...boxModel,\n width: \"2rem\",\n height: \"2rem\",\n fontSize: tokens.textSm,\n lineHeight: tokens.leadingSm,\n },\n lg: {\n ...boxModel,\n width: \"2.5rem\",\n height: \"2.5rem\",\n fontSize: tokens.textBase,\n lineHeight: tokens.leadingBase,\n },\n image: {\n ...boxModel,\n width: \"100%\",\n height: \"100%\",\n objectFit: \"cover\",\n },\n fallback: {\n ...boxModel,\n display: \"inline-flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n width: \"100%\",\n height: \"100%\",\n },\n})\n\nexport type AvatarProps = Omit<\n React.ComponentProps<typeof AvatarPrimitive.Root>,\n \"className\" | \"color\" | \"children\"\n> & {\n className?: string\n src?: string\n /** Accessible name for the image, and the seed for the automatic colour. */\n alt?: string\n /** Shown when no `src` loads. Also seeds the automatic colour when `alt` is absent. */\n initials?: string\n /**\n * Leave this unset and the colour is derived by hashing `alt`, falling back to\n * `initials` — so the same person keeps the same colour everywhere, and two\n * people rarely collide. Set it only to override that.\n */\n color?: AvatarColor\n /** @default \"base\" */\n size?: AvatarSize\n}\n\nexport const Avatar = React.forwardRef<\n React.ComponentRef<typeof AvatarPrimitive.Root>,\n AvatarProps\n>(function Avatar(\n { className, src, alt, initials, color, size, style, ...props },\n ref\n) {\n const styles = useStyles()\n const group = React.useContext(AvatarGroupContext)\n const resolvedSize = size ?? group?.size ?? \"base\"\n const resolvedColor = color ?? colorForSeed(alt ?? initials ?? \"\")\n\n // Was a module-scope call, so merely IMPORTING Avatar installed 63 kB of palette CSS whether one\n // ever rendered. Now it is per-instance and keyed on the resolved family, installed at commit\n // time (WP2B2) via a hook called unconditionally every render. Every auto colour is decorative,\n // so a seeded avatar still installs the sheet; an explicit `color=\"gray\"` no longer does, and\n // neither does an import that never renders.\n useZenithPaletteTokensFor(resolvedColor)\n\n return (\n <AvatarPrimitive.Root\n ref={ref}\n data-slot=\"avatar\"\n {...{ [SLOT_ATTR]: \"avatar\" }}\n className={mergeClasses(styles.root, styles[resolvedSize], className)}\n style={{ ...colorVars[resolvedColor], ...style }}\n {...props}\n >\n <AvatarPrimitive.Image\n data-slot=\"avatar-image\"\n {...{ [SLOT_ATTR]: \"avatar-image\" }}\n src={src}\n alt={alt}\n className={styles.image}\n />\n <AvatarPrimitive.Fallback\n data-slot=\"avatar-fallback\"\n {...{ [SLOT_ATTR]: \"avatar-fallback\" }}\n className={styles.fallback}\n aria-hidden=\"true\"\n >\n {initials}\n </AvatarPrimitive.Fallback>\n </AvatarPrimitive.Root>\n )\n})\n\nexport { AvatarGroupContext }\n"],"names":["AUTO_COLORS","colorForSeed","seed","hash","i","colorVars","tokens.gray3","tokens.grayA12","tokens.blue3","tokens.blueA12","tokens.sky3","tokens.skyA12","tokens.cyan3","tokens.cyanA12","tokens.teal3","tokens.tealA12","tokens.mint3","tokens.mintA12","tokens.green3","tokens.greenA12","tokens.lime3","tokens.limeA12","tokens.yellow3","tokens.yellowA12","tokens.orange3","tokens.orangeA12","tokens.bronze3","tokens.bronzeA12","tokens.red3","tokens.redA12","tokens.pink3","tokens.pinkA12","tokens.purple3","tokens.purpleA12","tokens.indigo3","tokens.indigoA12","AvatarGroupContext","React","useStyles","makeZenithStyles","boxModel","tokens.fontWeightMedium","tokens.textXs","tokens.leadingXs","tokens.textSm","tokens.leadingSm","tokens.textBase","tokens.leadingBase","Avatar","className","src","alt","initials","color","size","style","props","ref","styles","group","resolvedSize","resolvedColor","useZenithPaletteTokensFor","jsxs","AvatarPrimitive.Root","SLOT_ATTR","mergeClasses","jsx","AvatarPrimitive.Image","AvatarPrimitive.Fallback"],"mappings":"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"}
1
+ {"version":3,"file":"avatar.js","sources":["../../../src/components/avatar/avatar.tsx"],"sourcesContent":["import * as React from \"react\"\nimport { Avatar as AvatarPrimitive } from \"@base-ui/react/avatar\"\nimport { mergeClasses } from \"@epilot/zenith-runtime/v1\"\n\nimport { SLOT_ATTR } from \"../../renderer/contract\"\nimport { makeZenithStyles } from \"../../styles/make-styles\"\nimport { boxModel } from \"../../styles/host-reset\"\nimport { useZenithPaletteTokensFor } from \"../../tokens/use-palette-tokens\"\nimport * as tokens from \"../../tokens\"\n\nexport type AvatarColor =\n | \"gray\"\n | \"blue\"\n | \"sky\"\n | \"cyan\"\n | \"teal\"\n | \"mint\"\n | \"green\"\n | \"lime\"\n | \"yellow\"\n | \"orange\"\n | \"bronze\"\n | \"red\"\n | \"pink\"\n | \"purple\"\n | \"indigo\"\nexport type AvatarSize = \"sm\" | \"base\" | \"lg\"\n\nconst AUTO_COLORS: AvatarColor[] = [\n \"blue\",\n \"sky\",\n \"cyan\",\n \"teal\",\n \"mint\",\n \"green\",\n \"lime\",\n \"orange\",\n \"bronze\",\n \"pink\",\n \"purple\",\n \"indigo\",\n]\n\nconst colorForSeed = (seed: string): AvatarColor => {\n let hash = 0\n for (let i = 0; i < seed.length; i++) {\n hash = (hash * 31 + seed.charCodeAt(i)) >>> 0\n }\n return AUTO_COLORS[hash % AUTO_COLORS.length]\n}\n\nconst colorVars: Record<AvatarColor, React.CSSProperties> = {\n gray: {\n \"--avatar-background\": tokens.gray3,\n \"--avatar-foreground\": tokens.grayA12,\n } as React.CSSProperties,\n blue: {\n \"--avatar-background\": tokens.blue3,\n \"--avatar-foreground\": tokens.blueA12,\n } as React.CSSProperties,\n sky: {\n \"--avatar-background\": tokens.sky3,\n \"--avatar-foreground\": tokens.skyA12,\n } as React.CSSProperties,\n cyan: {\n \"--avatar-background\": tokens.cyan3,\n \"--avatar-foreground\": tokens.cyanA12,\n } as React.CSSProperties,\n teal: {\n \"--avatar-background\": tokens.teal3,\n \"--avatar-foreground\": tokens.tealA12,\n } as React.CSSProperties,\n mint: {\n \"--avatar-background\": tokens.mint3,\n \"--avatar-foreground\": tokens.mintA12,\n } as React.CSSProperties,\n green: {\n \"--avatar-background\": tokens.green3,\n \"--avatar-foreground\": tokens.greenA12,\n } as React.CSSProperties,\n lime: {\n \"--avatar-background\": tokens.lime3,\n \"--avatar-foreground\": tokens.limeA12,\n } as React.CSSProperties,\n yellow: {\n \"--avatar-background\": tokens.yellow3,\n \"--avatar-foreground\": tokens.yellowA12,\n } as React.CSSProperties,\n orange: {\n \"--avatar-background\": tokens.orange3,\n \"--avatar-foreground\": tokens.orangeA12,\n } as React.CSSProperties,\n bronze: {\n \"--avatar-background\": tokens.bronze3,\n \"--avatar-foreground\": tokens.bronzeA12,\n } as React.CSSProperties,\n red: {\n \"--avatar-background\": tokens.red3,\n \"--avatar-foreground\": tokens.redA12,\n } as React.CSSProperties,\n pink: {\n \"--avatar-background\": tokens.pink3,\n \"--avatar-foreground\": tokens.pinkA12,\n } as React.CSSProperties,\n purple: {\n \"--avatar-background\": tokens.purple3,\n \"--avatar-foreground\": tokens.purpleA12,\n } as React.CSSProperties,\n indigo: {\n \"--avatar-background\": tokens.indigo3,\n \"--avatar-foreground\": tokens.indigoA12,\n } as React.CSSProperties,\n}\n\nconst AvatarGroupContext = React.createContext<{ size?: AvatarSize } | null>(\n null\n)\n\nconst useStyles = makeZenithStyles({\n root: {\n ...boxModel,\n position: \"relative\",\n display: \"inline-flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n flexShrink: 0,\n overflowX: \"hidden\",\n overflowY: \"hidden\",\n borderRadius: \"9999px\",\n backgroundColor: \"var(--avatar-background)\",\n color: \"var(--avatar-foreground)\",\n fontWeight: tokens.fontWeightMedium,\n textTransform: \"uppercase\",\n },\n sm: {\n ...boxModel,\n width: \"1.5rem\",\n height: \"1.5rem\",\n fontSize: tokens.textXs,\n lineHeight: tokens.leadingXs,\n },\n base: {\n ...boxModel,\n width: \"2rem\",\n height: \"2rem\",\n fontSize: tokens.textSm,\n lineHeight: tokens.leadingSm,\n },\n lg: {\n ...boxModel,\n width: \"2.5rem\",\n height: \"2.5rem\",\n fontSize: tokens.textBase,\n lineHeight: tokens.leadingBase,\n },\n image: {\n ...boxModel,\n width: \"100%\",\n height: \"100%\",\n objectFit: \"cover\",\n },\n fallback: {\n ...boxModel,\n display: \"inline-flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n width: \"100%\",\n height: \"100%\",\n },\n})\n\nexport type AvatarProps = Omit<\n React.ComponentPropsWithoutRef<\"span\"> & React.RefAttributes<HTMLSpanElement>,\n \"className\" | \"color\" | \"children\"\n> & {\n className?: string\n /**\n * @deprecated Has no effect. The root's only children are the image and its fallback, so on\n * Radix this tried to turn one of them into the avatar. Remove it.\n */\n asChild?: boolean\n src?: string\n /** Accessible name for the image, and the seed for the automatic colour. */\n alt?: string\n /** Shown when no `src` loads. Also seeds the automatic colour when `alt` is absent. */\n initials?: string\n /**\n * Leave this unset and the colour is derived by hashing `alt`, falling back to\n * `initials` — so the same person keeps the same colour everywhere, and two\n * people rarely collide. Set it only to override that.\n */\n color?: AvatarColor\n /** @default \"base\" */\n size?: AvatarSize\n}\n\nexport const Avatar = React.forwardRef<HTMLSpanElement, AvatarProps>(\n function Avatar(\n {\n className,\n src,\n alt,\n initials,\n color,\n size,\n style,\n asChild: _asChild,\n ...props\n },\n ref\n ) {\n const styles = useStyles()\n const group = React.useContext(AvatarGroupContext)\n const resolvedSize = size ?? group?.size ?? \"base\"\n const resolvedColor = color ?? colorForSeed(alt ?? initials ?? \"\")\n\n // Was a module-scope call, so merely IMPORTING Avatar installed 63 kB of palette CSS whether one\n // ever rendered. Now it is per-instance and keyed on the resolved family, installed at commit\n // time (WP2B2) via a hook called unconditionally every render. Every auto colour is decorative,\n // so a seeded avatar still installs the sheet; an explicit `color=\"gray\"` no longer does, and\n // neither does an import that never renders.\n useZenithPaletteTokensFor(resolvedColor)\n\n return (\n <AvatarPrimitive.Root\n ref={ref}\n data-slot=\"avatar\"\n {...{ [SLOT_ATTR]: \"avatar\" }}\n className={mergeClasses(styles.root, styles[resolvedSize], className)}\n style={{ ...colorVars[resolvedColor], ...style }}\n {...props}\n >\n <AvatarPrimitive.Image\n data-slot=\"avatar-image\"\n {...{ [SLOT_ATTR]: \"avatar-image\" }}\n src={src}\n alt={alt}\n className={styles.image}\n />\n <AvatarPrimitive.Fallback\n data-slot=\"avatar-fallback\"\n {...{ [SLOT_ATTR]: \"avatar-fallback\" }}\n className={styles.fallback}\n aria-hidden=\"true\"\n >\n {initials}\n </AvatarPrimitive.Fallback>\n </AvatarPrimitive.Root>\n )\n }\n)\n\nexport { AvatarGroupContext }\n"],"names":["AUTO_COLORS","colorForSeed","seed","hash","i","colorVars","tokens.gray3","tokens.grayA12","tokens.blue3","tokens.blueA12","tokens.sky3","tokens.skyA12","tokens.cyan3","tokens.cyanA12","tokens.teal3","tokens.tealA12","tokens.mint3","tokens.mintA12","tokens.green3","tokens.greenA12","tokens.lime3","tokens.limeA12","tokens.yellow3","tokens.yellowA12","tokens.orange3","tokens.orangeA12","tokens.bronze3","tokens.bronzeA12","tokens.red3","tokens.redA12","tokens.pink3","tokens.pinkA12","tokens.purple3","tokens.purpleA12","tokens.indigo3","tokens.indigoA12","AvatarGroupContext","React","useStyles","makeZenithStyles","boxModel","tokens.fontWeightMedium","tokens.textXs","tokens.leadingXs","tokens.textSm","tokens.leadingSm","tokens.textBase","tokens.leadingBase","Avatar","className","src","alt","initials","color","size","style","_asChild","props","ref","styles","group","resolvedSize","resolvedColor","useZenithPaletteTokensFor","jsxs","AvatarPrimitive","SLOT_ATTR","mergeClasses","jsx"],"mappings":"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"}
@@ -3,10 +3,10 @@ import * as S from "react";
3
3
  import { mergeClasses as y, SLOT_ATTR as v, shorthands as x } from "@epilot/zenith-runtime/v1";
4
4
  import { makeZenithStyles as w } from "../../styles/make-styles.js";
5
5
  import { boxModel as o } from "../../styles/host-reset.js";
6
- import { radiusMd as $, spacingElement3 as z, spacingElement1 as i, textBase as C, radiusSm as R, spacingElement2 as O, textSm as k, textXs as A, errorA8 as B, accentA8 as N, fontWeightNormal as T } from "../../tokens/index.js";
6
+ import { radiusMd as $, spacingElement3 as z, spacingElement1 as i, textBase as C, radiusSm as R, spacingElement2 as O, textSm as T, textXs as k, errorA8 as A, accentA8 as B, fontWeightNormal as N } from "../../tokens/index.js";
7
7
  import { useZenithPaletteTokensFor as W } from "../../tokens/use-palette-tokens.js";
8
8
  import { NS as E } from "../../tokens/core.meta.generated.js";
9
- import { NS as I } from "../../tokens/palette.generated.js";
9
+ import { NS as I } from "../../tokens/palette.meta.generated.js";
10
10
  import { isCoreFamily as F } from "../../packages/tokens/dist/install.js";
11
11
  const J = [
12
12
  "accent",
@@ -62,7 +62,7 @@ const J = [
62
62
  whiteSpace: "nowrap",
63
63
  flexShrink: 0,
64
64
  overflow: "hidden",
65
- fontWeight: T,
65
+ fontWeight: N,
66
66
  // NEVER write a CSS shorthand in a Griffel style object. Atoms are one declaration each, so a
67
67
  // shorthand cannot be resolved against a longhand — `border` and a later `borderColor` would
68
68
  // both survive with the winner decided by insertion order. Griffel warns at runtime, which
@@ -77,18 +77,18 @@ const J = [
77
77
  outlineWidth: "2px",
78
78
  outlineStyle: "solid",
79
79
  outlineOffset: "2px",
80
- outlineColor: N
80
+ outlineColor: B
81
81
  },
82
82
  // v1 `aria-invalid:outline-error-a8`. Declared after the focus ring so an invalid focused
83
83
  // badge paints the error ring, matching v1's variant ordering.
84
84
  "&[aria-invalid]": {
85
- outlineColor: B
85
+ outlineColor: A
86
86
  },
87
87
  "& > svg": { pointerEvents: "none" }
88
88
  },
89
89
  sm: {
90
90
  ...o,
91
- fontSize: A,
91
+ fontSize: k,
92
92
  lineHeight: "1rem",
93
93
  letterSpacing: "0.04px",
94
94
  gap: i,
@@ -99,7 +99,7 @@ const J = [
99
99
  },
100
100
  base: {
101
101
  ...o,
102
- fontSize: k,
102
+ fontSize: T,
103
103
  lineHeight: "1.25rem",
104
104
  gap: i,
105
105
  paddingInline: O,
@@ -122,8 +122,8 @@ const J = [
122
122
  className: n,
123
123
  color: t = "accent",
124
124
  variant: p = "soft",
125
- size: f = "base",
126
- style: c,
125
+ size: c = "base",
126
+ style: f,
127
127
  ...h
128
128
  }, u) {
129
129
  W(t);
@@ -134,8 +134,8 @@ const J = [
134
134
  ref: u,
135
135
  "data-slot": "badge",
136
136
  [v]: "badge",
137
- className: y(m.root, m[f], n),
138
- style: { ...G[p](t), ...c },
137
+ className: y(m.root, m[c], n),
138
+ style: { ...G[p](t), ...f },
139
139
  ...h
140
140
  }
141
141
  );