aeon-ui-engine 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (430) hide show
  1. package/.changeset/README.md +23 -0
  2. package/.changeset/combobox-and-changesets.md +9 -0
  3. package/.changeset/config.json +30 -0
  4. package/.changeset/framework-adapters.md +12 -0
  5. package/.changeset/scene-3d.md +6 -0
  6. package/.changeset/scene-plane.md +8 -0
  7. package/.changeset/site-og.md +5 -0
  8. package/.cursor/rules/aeon-ui.mdc +22 -0
  9. package/ACCESSIBILITY.md +32 -0
  10. package/AGENTS.md +226 -0
  11. package/COMPONENTS.md +36 -0
  12. package/FRAMEWORKS.md +57 -0
  13. package/INTEGRATION.md +89 -0
  14. package/LICENSE +21 -0
  15. package/PHILOSOPHY.md +71 -0
  16. package/PUBLISHING.md +85 -0
  17. package/README.md +154 -0
  18. package/SCENE.md +113 -0
  19. package/STATES.md +243 -0
  20. package/apps/demo/index.html +31 -0
  21. package/apps/demo/og.config.mjs +15 -0
  22. package/apps/demo/package.json +41 -0
  23. package/apps/demo/public/favicon.svg +16 -0
  24. package/apps/demo/public/og.png +0 -0
  25. package/apps/demo/public/og.svg +35 -0
  26. package/apps/demo/scripts/generate-og-png.mjs +60 -0
  27. package/apps/demo/src/App.tsx +31 -0
  28. package/apps/demo/src/aeonDiagrams.ts +100 -0
  29. package/apps/demo/src/app.css +16 -0
  30. package/apps/demo/src/components/ActionCluster.tsx +20 -0
  31. package/apps/demo/src/components/AsyncMachineDemo.tsx +97 -0
  32. package/apps/demo/src/components/ButtonLifecycleDemo.tsx +63 -0
  33. package/apps/demo/src/components/CodeExample.tsx +7 -0
  34. package/apps/demo/src/components/ComboboxDemo.tsx +30 -0
  35. package/apps/demo/src/components/DiagramsSection.tsx +38 -0
  36. package/apps/demo/src/components/FieldStateDemo.tsx +51 -0
  37. package/apps/demo/src/components/GridMesh.tsx +8 -0
  38. package/apps/demo/src/components/HeroInstall.tsx +10 -0
  39. package/apps/demo/src/components/LandingFaq.tsx +29 -0
  40. package/apps/demo/src/components/LandingFooter.tsx +22 -0
  41. package/apps/demo/src/components/LandingHeader.tsx +60 -0
  42. package/apps/demo/src/components/LandingHero.tsx +55 -0
  43. package/apps/demo/src/components/LayersSection.tsx +51 -0
  44. package/apps/demo/src/components/MermaidDiagram.tsx +84 -0
  45. package/apps/demo/src/components/PhilosophySection.tsx +33 -0
  46. package/apps/demo/src/components/PlaygroundBlock.tsx +23 -0
  47. package/apps/demo/src/components/PlaygroundSection.tsx +204 -0
  48. package/apps/demo/src/components/SceneSection.tsx +157 -0
  49. package/apps/demo/src/components/ScrollRegionDemo.tsx +74 -0
  50. package/apps/demo/src/components/ThemeSwitcher.tsx +76 -0
  51. package/apps/demo/src/demo-layout.css +264 -0
  52. package/apps/demo/src/landing.css +1094 -0
  53. package/apps/demo/src/main.tsx +14 -0
  54. package/apps/demo/src/nav.ts +9 -0
  55. package/apps/demo/src/site.ts +347 -0
  56. package/apps/demo/tsconfig.json +17 -0
  57. package/apps/demo/vite-plugins/og-meta.ts +30 -0
  58. package/apps/demo/vite.config.ts +69 -0
  59. package/docs/API_PATTERNS.md +234 -0
  60. package/docs/ARCHITECTURE.md +125 -0
  61. package/docs/COMPONENT_CHECKLIST.md +103 -0
  62. package/docs/FILE_MAP.md +122 -0
  63. package/docs/GLOSSARY.md +125 -0
  64. package/docs/INDEX.md +53 -0
  65. package/docs/LAYOUT_COORDINATES.md +178 -0
  66. package/docs/MACHINES.md +166 -0
  67. package/docs/MIGRATION_FROM_ARK.md +295 -0
  68. package/docs/VITE_CONSUMER.md +114 -0
  69. package/package.json +25 -0
  70. package/packages/core/README.md +69 -0
  71. package/packages/core/package.json +37 -0
  72. package/packages/core/src/anatomy.ts +144 -0
  73. package/packages/core/src/attrs.ts +47 -0
  74. package/packages/core/src/index.ts +8 -0
  75. package/packages/core/src/layout.ts +176 -0
  76. package/packages/core/src/machine.test.ts +18 -0
  77. package/packages/core/src/machine.ts +15 -0
  78. package/packages/core/src/philosophy.ts +10 -0
  79. package/packages/core/src/scroll.ts +72 -0
  80. package/packages/core/src/theme.test.ts +14 -0
  81. package/packages/core/src/theme.ts +53 -0
  82. package/packages/core/src/types.ts +25 -0
  83. package/packages/core/theme-transition.css +58 -0
  84. package/packages/core/tsconfig.json +8 -0
  85. package/packages/core/vitest.config.ts +8 -0
  86. package/packages/geometry/README.md +7 -0
  87. package/packages/geometry/package.json +35 -0
  88. package/packages/geometry/src/index.ts +3 -0
  89. package/packages/geometry/src/patterns.ts +55 -0
  90. package/packages/geometry/src/scene-attrs.ts +11 -0
  91. package/packages/geometry/src/svg.ts +60 -0
  92. package/packages/geometry/tsconfig.json +8 -0
  93. package/packages/panda/README.md +66 -0
  94. package/packages/panda/package.json +40 -0
  95. package/packages/panda/panda.config.ts +229 -0
  96. package/packages/panda/scripts/emit-theme-runtime.ts +37 -0
  97. package/packages/panda/src/recipes/accordion.ts +95 -0
  98. package/packages/panda/src/recipes/async.ts +76 -0
  99. package/packages/panda/src/recipes/badge.ts +44 -0
  100. package/packages/panda/src/recipes/button-group.ts +33 -0
  101. package/packages/panda/src/recipes/button.ts +91 -0
  102. package/packages/panda/src/recipes/checkbox.ts +41 -0
  103. package/packages/panda/src/recipes/combobox.ts +121 -0
  104. package/packages/panda/src/recipes/dialog.ts +96 -0
  105. package/packages/panda/src/recipes/field-shared.ts +29 -0
  106. package/packages/panda/src/recipes/field.ts +72 -0
  107. package/packages/panda/src/recipes/floating.ts +170 -0
  108. package/packages/panda/src/recipes/index.ts +14 -0
  109. package/packages/panda/src/recipes/scroll-region.ts +55 -0
  110. package/packages/panda/src/recipes/select.ts +111 -0
  111. package/packages/panda/src/recipes/switch.ts +51 -0
  112. package/packages/panda/src/recipes/tabs.ts +50 -0
  113. package/packages/panda/src/theme/catalog-types.ts +24 -0
  114. package/packages/panda/src/theme/catalog.ts +73 -0
  115. package/packages/panda/src/theme/chrome.css +75 -0
  116. package/packages/panda/src/theme/global-theme-css.ts +42 -0
  117. package/packages/panda/src/theme/index.ts +5 -0
  118. package/packages/panda/src/theme/palette.ts +65 -0
  119. package/packages/panda/src/theme/scrollbars.css +96 -0
  120. package/packages/panda/src/theme/semantic-tokens.ts +17 -0
  121. package/packages/panda/src/theme/themes.config.ts +516 -0
  122. package/packages/panda/src/theme/tokens.ts +51 -0
  123. package/packages/panda/styled-system/css/conditions.mjs +36 -0
  124. package/packages/panda/styled-system/css/css.d.ts +22 -0
  125. package/packages/panda/styled-system/css/css.mjs +45 -0
  126. package/packages/panda/styled-system/css/cva.d.ts +6 -0
  127. package/packages/panda/styled-system/css/cva.mjs +87 -0
  128. package/packages/panda/styled-system/css/cx.d.ts +5 -0
  129. package/packages/panda/styled-system/css/cx.mjs +15 -0
  130. package/packages/panda/styled-system/css/index.d.ts +5 -0
  131. package/packages/panda/styled-system/css/index.mjs +4 -0
  132. package/packages/panda/styled-system/css/sva.d.ts +4 -0
  133. package/packages/panda/styled-system/css/sva.mjs +41 -0
  134. package/packages/panda/styled-system/helpers.mjs +339 -0
  135. package/packages/panda/styled-system/jsx/aspect-ratio.d.ts +10 -0
  136. package/packages/panda/styled-system/jsx/aspect-ratio.mjs +14 -0
  137. package/packages/panda/styled-system/jsx/bleed.d.ts +10 -0
  138. package/packages/panda/styled-system/jsx/bleed.mjs +14 -0
  139. package/packages/panda/styled-system/jsx/box.d.ts +10 -0
  140. package/packages/panda/styled-system/jsx/box.mjs +14 -0
  141. package/packages/panda/styled-system/jsx/center.d.ts +10 -0
  142. package/packages/panda/styled-system/jsx/center.mjs +14 -0
  143. package/packages/panda/styled-system/jsx/circle.d.ts +10 -0
  144. package/packages/panda/styled-system/jsx/circle.mjs +14 -0
  145. package/packages/panda/styled-system/jsx/container.d.ts +10 -0
  146. package/packages/panda/styled-system/jsx/container.mjs +14 -0
  147. package/packages/panda/styled-system/jsx/cq.d.ts +10 -0
  148. package/packages/panda/styled-system/jsx/cq.mjs +14 -0
  149. package/packages/panda/styled-system/jsx/divider.d.ts +10 -0
  150. package/packages/panda/styled-system/jsx/divider.mjs +14 -0
  151. package/packages/panda/styled-system/jsx/factory-helper.mjs +22 -0
  152. package/packages/panda/styled-system/jsx/factory.d.ts +3 -0
  153. package/packages/panda/styled-system/jsx/factory.mjs +80 -0
  154. package/packages/panda/styled-system/jsx/flex.d.ts +10 -0
  155. package/packages/panda/styled-system/jsx/flex.mjs +14 -0
  156. package/packages/panda/styled-system/jsx/float.d.ts +10 -0
  157. package/packages/panda/styled-system/jsx/float.mjs +14 -0
  158. package/packages/panda/styled-system/jsx/grid-item.d.ts +10 -0
  159. package/packages/panda/styled-system/jsx/grid-item.mjs +14 -0
  160. package/packages/panda/styled-system/jsx/grid.d.ts +10 -0
  161. package/packages/panda/styled-system/jsx/grid.mjs +14 -0
  162. package/packages/panda/styled-system/jsx/hstack.d.ts +10 -0
  163. package/packages/panda/styled-system/jsx/hstack.mjs +14 -0
  164. package/packages/panda/styled-system/jsx/index.d.ts +24 -0
  165. package/packages/panda/styled-system/jsx/index.mjs +22 -0
  166. package/packages/panda/styled-system/jsx/is-valid-prop.d.ts +11 -0
  167. package/packages/panda/styled-system/jsx/is-valid-prop.mjs +17 -0
  168. package/packages/panda/styled-system/jsx/link-overlay.d.ts +10 -0
  169. package/packages/panda/styled-system/jsx/link-overlay.mjs +14 -0
  170. package/packages/panda/styled-system/jsx/spacer.d.ts +10 -0
  171. package/packages/panda/styled-system/jsx/spacer.mjs +14 -0
  172. package/packages/panda/styled-system/jsx/square.d.ts +10 -0
  173. package/packages/panda/styled-system/jsx/square.mjs +14 -0
  174. package/packages/panda/styled-system/jsx/stack.d.ts +10 -0
  175. package/packages/panda/styled-system/jsx/stack.mjs +14 -0
  176. package/packages/panda/styled-system/jsx/visually-hidden.d.ts +10 -0
  177. package/packages/panda/styled-system/jsx/visually-hidden.mjs +14 -0
  178. package/packages/panda/styled-system/jsx/vstack.d.ts +10 -0
  179. package/packages/panda/styled-system/jsx/vstack.mjs +14 -0
  180. package/packages/panda/styled-system/jsx/wrap.d.ts +10 -0
  181. package/packages/panda/styled-system/jsx/wrap.mjs +14 -0
  182. package/packages/panda/styled-system/patterns/aspect-ratio.d.ts +21 -0
  183. package/packages/panda/styled-system/patterns/aspect-ratio.mjs +38 -0
  184. package/packages/panda/styled-system/patterns/bleed.d.ts +22 -0
  185. package/packages/panda/styled-system/patterns/bleed.mjs +24 -0
  186. package/packages/panda/styled-system/patterns/box.d.ts +21 -0
  187. package/packages/panda/styled-system/patterns/box.mjs +15 -0
  188. package/packages/panda/styled-system/patterns/center.d.ts +21 -0
  189. package/packages/panda/styled-system/patterns/center.mjs +21 -0
  190. package/packages/panda/styled-system/patterns/circle.d.ts +21 -0
  191. package/packages/panda/styled-system/patterns/circle.mjs +25 -0
  192. package/packages/panda/styled-system/patterns/container.d.ts +21 -0
  193. package/packages/panda/styled-system/patterns/container.mjs +21 -0
  194. package/packages/panda/styled-system/patterns/cq.d.ts +22 -0
  195. package/packages/panda/styled-system/patterns/cq.mjs +21 -0
  196. package/packages/panda/styled-system/patterns/divider.d.ts +23 -0
  197. package/packages/panda/styled-system/patterns/divider.mjs +25 -0
  198. package/packages/panda/styled-system/patterns/flex.d.ts +27 -0
  199. package/packages/panda/styled-system/patterns/flex.mjs +26 -0
  200. package/packages/panda/styled-system/patterns/float.d.ts +24 -0
  201. package/packages/panda/styled-system/patterns/float.mjs +52 -0
  202. package/packages/panda/styled-system/patterns/grid-item.d.ts +26 -0
  203. package/packages/panda/styled-system/patterns/grid-item.mjs +25 -0
  204. package/packages/panda/styled-system/patterns/grid.d.ts +25 -0
  205. package/packages/panda/styled-system/patterns/grid.mjs +27 -0
  206. package/packages/panda/styled-system/patterns/hstack.d.ts +22 -0
  207. package/packages/panda/styled-system/patterns/hstack.mjs +24 -0
  208. package/packages/panda/styled-system/patterns/index.d.ts +21 -0
  209. package/packages/panda/styled-system/patterns/index.mjs +20 -0
  210. package/packages/panda/styled-system/patterns/link-overlay.d.ts +21 -0
  211. package/packages/panda/styled-system/patterns/link-overlay.mjs +24 -0
  212. package/packages/panda/styled-system/patterns/spacer.d.ts +21 -0
  213. package/packages/panda/styled-system/patterns/spacer.mjs +21 -0
  214. package/packages/panda/styled-system/patterns/square.d.ts +21 -0
  215. package/packages/panda/styled-system/patterns/square.mjs +24 -0
  216. package/packages/panda/styled-system/patterns/stack.d.ts +24 -0
  217. package/packages/panda/styled-system/patterns/stack.mjs +24 -0
  218. package/packages/panda/styled-system/patterns/visually-hidden.d.ts +21 -0
  219. package/packages/panda/styled-system/patterns/visually-hidden.mjs +18 -0
  220. package/packages/panda/styled-system/patterns/vstack.d.ts +22 -0
  221. package/packages/panda/styled-system/patterns/vstack.mjs +24 -0
  222. package/packages/panda/styled-system/patterns/wrap.d.ts +25 -0
  223. package/packages/panda/styled-system/patterns/wrap.mjs +25 -0
  224. package/packages/panda/styled-system/recipes/aeon-accordion.d.ts +32 -0
  225. package/packages/panda/styled-system/recipes/aeon-accordion.mjs +48 -0
  226. package/packages/panda/styled-system/recipes/aeon-async.d.ts +32 -0
  227. package/packages/panda/styled-system/recipes/aeon-async.mjs +56 -0
  228. package/packages/panda/styled-system/recipes/aeon-badge.d.ts +31 -0
  229. package/packages/panda/styled-system/recipes/aeon-badge.mjs +32 -0
  230. package/packages/panda/styled-system/recipes/aeon-button-group.d.ts +39 -0
  231. package/packages/panda/styled-system/recipes/aeon-button-group.mjs +37 -0
  232. package/packages/panda/styled-system/recipes/aeon-button.d.ts +39 -0
  233. package/packages/panda/styled-system/recipes/aeon-button.mjs +39 -0
  234. package/packages/panda/styled-system/recipes/aeon-checkbox.d.ts +28 -0
  235. package/packages/panda/styled-system/recipes/aeon-checkbox.mjs +48 -0
  236. package/packages/panda/styled-system/recipes/aeon-combobox.d.ts +32 -0
  237. package/packages/panda/styled-system/recipes/aeon-combobox.mjs +52 -0
  238. package/packages/panda/styled-system/recipes/aeon-dialog.d.ts +28 -0
  239. package/packages/panda/styled-system/recipes/aeon-dialog.mjs +60 -0
  240. package/packages/panda/styled-system/recipes/aeon-field.d.ts +32 -0
  241. package/packages/panda/styled-system/recipes/aeon-field.mjs +52 -0
  242. package/packages/panda/styled-system/recipes/aeon-menu.d.ts +28 -0
  243. package/packages/panda/styled-system/recipes/aeon-menu.mjs +52 -0
  244. package/packages/panda/styled-system/recipes/aeon-popover.d.ts +28 -0
  245. package/packages/panda/styled-system/recipes/aeon-popover.mjs +52 -0
  246. package/packages/panda/styled-system/recipes/aeon-scroll.d.ts +43 -0
  247. package/packages/panda/styled-system/recipes/aeon-scroll.mjs +63 -0
  248. package/packages/panda/styled-system/recipes/aeon-select.d.ts +32 -0
  249. package/packages/panda/styled-system/recipes/aeon-select.mjs +56 -0
  250. package/packages/panda/styled-system/recipes/aeon-switch.d.ts +28 -0
  251. package/packages/panda/styled-system/recipes/aeon-switch.mjs +48 -0
  252. package/packages/panda/styled-system/recipes/aeon-tabs.d.ts +28 -0
  253. package/packages/panda/styled-system/recipes/aeon-tabs.mjs +48 -0
  254. package/packages/panda/styled-system/recipes/aeon-toast.d.ts +28 -0
  255. package/packages/panda/styled-system/recipes/aeon-toast.mjs +48 -0
  256. package/packages/panda/styled-system/recipes/aeon-tooltip.d.ts +28 -0
  257. package/packages/panda/styled-system/recipes/aeon-tooltip.mjs +48 -0
  258. package/packages/panda/styled-system/recipes/create-recipe.mjs +82 -0
  259. package/packages/panda/styled-system/recipes/index.d.ts +18 -0
  260. package/packages/panda/styled-system/recipes/index.mjs +17 -0
  261. package/packages/panda/styled-system/styles.css +2157 -0
  262. package/packages/panda/styled-system/tokens/index.d.ts +9 -0
  263. package/packages/panda/styled-system/tokens/index.mjs +2156 -0
  264. package/packages/panda/styled-system/tokens/tokens.d.ts +60 -0
  265. package/packages/panda/styled-system/types/composition.d.ts +164 -0
  266. package/packages/panda/styled-system/types/conditions.d.ts +322 -0
  267. package/packages/panda/styled-system/types/csstype.d.ts +21298 -0
  268. package/packages/panda/styled-system/types/global.d.ts +20 -0
  269. package/packages/panda/styled-system/types/index.d.ts +8 -0
  270. package/packages/panda/styled-system/types/jsx.d.ts +52 -0
  271. package/packages/panda/styled-system/types/parts.d.ts +8 -0
  272. package/packages/panda/styled-system/types/pattern.d.ts +78 -0
  273. package/packages/panda/styled-system/types/prop-type.d.ts +240 -0
  274. package/packages/panda/styled-system/types/recipe.d.ts +181 -0
  275. package/packages/panda/styled-system/types/selectors.d.ts +59 -0
  276. package/packages/panda/styled-system/types/static-css.d.ts +56 -0
  277. package/packages/panda/styled-system/types/style-props.d.ts +7491 -0
  278. package/packages/panda/styled-system/types/system-types.d.ts +193 -0
  279. package/packages/panda/theme-runtime.css +842 -0
  280. package/packages/panda/tsconfig.json +8 -0
  281. package/packages/primitives/README.md +54 -0
  282. package/packages/primitives/package.json +41 -0
  283. package/packages/primitives/src/__tests__/floating-surface.test.ts +29 -0
  284. package/packages/primitives/src/index.ts +9 -0
  285. package/packages/primitives/src/machines/accordion.ts +56 -0
  286. package/packages/primitives/src/machines/async.ts +108 -0
  287. package/packages/primitives/src/machines/button.ts +66 -0
  288. package/packages/primitives/src/machines/dialog.ts +61 -0
  289. package/packages/primitives/src/machines/field.ts +85 -0
  290. package/packages/primitives/src/machines/popover.ts +52 -0
  291. package/packages/primitives/src/machines/tabs.ts +46 -0
  292. package/packages/primitives/src/machines/toast.ts +48 -0
  293. package/packages/primitives/src/machines/toggle.ts +61 -0
  294. package/packages/primitives/tsconfig.json +8 -0
  295. package/packages/primitives/vitest.config.ts +8 -0
  296. package/packages/react/README.md +65 -0
  297. package/packages/react/package.json +52 -0
  298. package/packages/react/src/accordion/index.tsx +179 -0
  299. package/packages/react/src/async/actions.tsx +22 -0
  300. package/packages/react/src/async/context.tsx +54 -0
  301. package/packages/react/src/async/index.tsx +21 -0
  302. package/packages/react/src/async/legacy-region.tsx +38 -0
  303. package/packages/react/src/async/readout.tsx +34 -0
  304. package/packages/react/src/async/root.tsx +39 -0
  305. package/packages/react/src/async/track.tsx +59 -0
  306. package/packages/react/src/avatar/avatar.test.tsx +27 -0
  307. package/packages/react/src/avatar/index.tsx +122 -0
  308. package/packages/react/src/button/index.tsx +70 -0
  309. package/packages/react/src/checkbox/index.tsx +180 -0
  310. package/packages/react/src/combobox/index.tsx +430 -0
  311. package/packages/react/src/dialog/dialog.test.tsx +50 -0
  312. package/packages/react/src/dialog/index.tsx +275 -0
  313. package/packages/react/src/field/index.tsx +172 -0
  314. package/packages/react/src/hooks/use-aeon-machine.ts +10 -0
  315. package/packages/react/src/hooks/use-anchor-position.ts +33 -0
  316. package/packages/react/src/hooks/use-focus-trap.ts +51 -0
  317. package/packages/react/src/hooks/use-layout-mode.ts +22 -0
  318. package/packages/react/src/hooks/use-outside-click.ts +19 -0
  319. package/packages/react/src/hooks/use-portalled.ts +16 -0
  320. package/packages/react/src/hooks/use-scroll-lock.ts +13 -0
  321. package/packages/react/src/index.ts +18 -0
  322. package/packages/react/src/menu/index.tsx +195 -0
  323. package/packages/react/src/popover/index.tsx +191 -0
  324. package/packages/react/src/scroll/index.tsx +98 -0
  325. package/packages/react/src/scroll/use-scroll-state.ts +30 -0
  326. package/packages/react/src/select/index.tsx +372 -0
  327. package/packages/react/src/select/select.test.tsx +60 -0
  328. package/packages/react/src/switch/index.tsx +215 -0
  329. package/packages/react/src/tabs/index.tsx +140 -0
  330. package/packages/react/src/toast/context.tsx +28 -0
  331. package/packages/react/src/toast/index.tsx +20 -0
  332. package/packages/react/src/toast/primitives.tsx +129 -0
  333. package/packages/react/src/toast/provider.tsx +111 -0
  334. package/packages/react/src/toast/toast-item.tsx +32 -0
  335. package/packages/react/src/tooltip/index.tsx +191 -0
  336. package/packages/react/src/utils/merge-props.ts +24 -0
  337. package/packages/react/tsconfig.json +8 -0
  338. package/packages/react/vitest.config.ts +9 -0
  339. package/packages/react/vitest.setup.ts +5 -0
  340. package/packages/react-scene/README.md +11 -0
  341. package/packages/react-scene/package.json +47 -0
  342. package/packages/react-scene/scene-3d.css +37 -0
  343. package/packages/react-scene/scene-room.css +95 -0
  344. package/packages/react-scene/src/index.ts +20 -0
  345. package/packages/react-scene/src/procedural-grid.tsx +35 -0
  346. package/packages/react-scene/src/scene-layer.tsx +38 -0
  347. package/packages/react-scene/src/scene-plane.tsx +69 -0
  348. package/packages/react-scene/src/scene-room.tsx +81 -0
  349. package/packages/react-scene/src/scene-root.tsx +49 -0
  350. package/packages/react-scene/src/scene-slot.tsx +41 -0
  351. package/packages/react-scene/src/scene-stage.tsx +37 -0
  352. package/packages/react-scene/src/scene-surface.tsx +20 -0
  353. package/packages/react-scene/src/signal-bars.tsx +57 -0
  354. package/packages/react-scene/src/use-signal-visualizer.ts +103 -0
  355. package/packages/react-scene/tsconfig.json +8 -0
  356. package/packages/scene/README.md +5 -0
  357. package/packages/scene/package.json +32 -0
  358. package/packages/scene/src/index.ts +2 -0
  359. package/packages/scene/src/room.ts +40 -0
  360. package/packages/scene/src/transform.ts +60 -0
  361. package/packages/scene/tsconfig.json +8 -0
  362. package/packages/signal/README.md +9 -0
  363. package/packages/signal/package.json +32 -0
  364. package/packages/signal/src/analyser.ts +113 -0
  365. package/packages/signal/src/bands.ts +33 -0
  366. package/packages/signal/src/index.ts +3 -0
  367. package/packages/signal/src/motion.ts +80 -0
  368. package/packages/signal/tsconfig.json +8 -0
  369. package/packages/site/README.md +19 -0
  370. package/packages/site/package.json +32 -0
  371. package/packages/site/src/index.ts +8 -0
  372. package/packages/site/src/open-graph.ts +90 -0
  373. package/packages/site/tsconfig.json +8 -0
  374. package/packages/solid/README.md +30 -0
  375. package/packages/solid/package.json +42 -0
  376. package/packages/solid/src/hooks/use-aeon-machine.ts +10 -0
  377. package/packages/solid/src/index.ts +2 -0
  378. package/packages/solid/src/switch/index.tsx +191 -0
  379. package/packages/solid/src/utils/merge-props.ts +3 -0
  380. package/packages/solid/tsconfig.json +10 -0
  381. package/packages/surface/README.md +10 -0
  382. package/packages/surface/package.json +33 -0
  383. package/packages/surface/src/index.ts +1 -0
  384. package/packages/surface/src/materials.ts +14 -0
  385. package/packages/surface/surface.css +113 -0
  386. package/packages/surface/tsconfig.json +8 -0
  387. package/packages/svelte/README.md +45 -0
  388. package/packages/svelte/package.json +49 -0
  389. package/packages/svelte/src/Switch.svelte +86 -0
  390. package/packages/svelte/src/SwitchControl.svelte +45 -0
  391. package/packages/svelte/src/SwitchHiddenInput.svelte +12 -0
  392. package/packages/svelte/src/SwitchLabel.svelte +9 -0
  393. package/packages/svelte/src/SwitchThumb.svelte +16 -0
  394. package/packages/svelte/src/hooks/use-aeon-machine.ts +23 -0
  395. package/packages/svelte/src/index.ts +2 -0
  396. package/packages/svelte/src/switch-context.ts +13 -0
  397. package/packages/svelte/tsconfig.json +8 -0
  398. package/packages/ui/README.md +63 -0
  399. package/packages/ui/package.json +45 -0
  400. package/packages/ui/src/accordion.tsx +27 -0
  401. package/packages/ui/src/async.tsx +43 -0
  402. package/packages/ui/src/badge.tsx +18 -0
  403. package/packages/ui/src/button.tsx +38 -0
  404. package/packages/ui/src/checkbox.tsx +24 -0
  405. package/packages/ui/src/cn.ts +1 -0
  406. package/packages/ui/src/combobox.tsx +29 -0
  407. package/packages/ui/src/dialog.tsx +32 -0
  408. package/packages/ui/src/field.tsx +33 -0
  409. package/packages/ui/src/index.ts +17 -0
  410. package/packages/ui/src/menu.tsx +25 -0
  411. package/packages/ui/src/popover.tsx +22 -0
  412. package/packages/ui/src/scroll.tsx +51 -0
  413. package/packages/ui/src/select.tsx +33 -0
  414. package/packages/ui/src/styles.css +2 -0
  415. package/packages/ui/src/switch.tsx +22 -0
  416. package/packages/ui/src/tabs.tsx +22 -0
  417. package/packages/ui/src/toast.tsx +36 -0
  418. package/packages/ui/src/tooltip.tsx +19 -0
  419. package/packages/ui/tsconfig.json +12 -0
  420. package/packages/vue/README.md +40 -0
  421. package/packages/vue/package.json +42 -0
  422. package/packages/vue/src/hooks/use-aeon-machine.ts +10 -0
  423. package/packages/vue/src/index.ts +2 -0
  424. package/packages/vue/src/switch/index.ts +208 -0
  425. package/packages/vue/src/utils/part-props.ts +8 -0
  426. package/packages/vue/tsconfig.json +8 -0
  427. package/pnpm-workspace.yaml +3 -0
  428. package/scripts/ensure-headless-built.mjs +25 -0
  429. package/tsconfig.base.json +21 -0
  430. package/vercel.json +12 -0
@@ -0,0 +1,37 @@
1
+ import { memo, splitProps } from '../helpers.mjs';
2
+ import { createRecipe, mergeRecipes } from './create-recipe.mjs';
3
+
4
+ const aeonButtonGroupFn = /* @__PURE__ */ createRecipe('aeonButtonGroup', {
5
+ "orientation": "horizontal",
6
+ "gap": "sm"
7
+ }, [])
8
+
9
+ const aeonButtonGroupVariantMap = {
10
+ "orientation": [
11
+ "horizontal",
12
+ "vertical"
13
+ ],
14
+ "gap": [
15
+ "sm",
16
+ "md",
17
+ "lg"
18
+ ]
19
+ }
20
+
21
+ const aeonButtonGroupVariantKeys = Object.keys(aeonButtonGroupVariantMap)
22
+
23
+ export const aeonButtonGroup = /* @__PURE__ */ Object.assign(memo(aeonButtonGroupFn.recipeFn), {
24
+ __recipe__: true,
25
+ __name__: 'aeonButtonGroup',
26
+ __getCompoundVariantCss__: aeonButtonGroupFn.__getCompoundVariantCss__,
27
+ raw: (props) => props,
28
+ variantKeys: aeonButtonGroupVariantKeys,
29
+ variantMap: aeonButtonGroupVariantMap,
30
+ merge(recipe) {
31
+ return mergeRecipes(this, recipe)
32
+ },
33
+ splitVariantProps(props) {
34
+ return splitProps(props, aeonButtonGroupVariantKeys)
35
+ },
36
+ getVariantProps: aeonButtonGroupFn.getVariantProps,
37
+ })
@@ -0,0 +1,39 @@
1
+ /* eslint-disable */
2
+ import type { ConditionalValue } from '../types/index';
3
+ import type { DistributiveOmit, Pretty } from '../types/system-types';
4
+
5
+ interface AeonButtonVariant {
6
+ /**
7
+ * @default "solid"
8
+ */
9
+ variant: "solid" | "outline" | "ghost"
10
+ /**
11
+ * @default "sm"
12
+ */
13
+ size: "xs" | "sm" | "md" | "lg"
14
+ }
15
+
16
+ type AeonButtonVariantMap = {
17
+ [key in keyof AeonButtonVariant]: Array<AeonButtonVariant[key]>
18
+ }
19
+
20
+ export type AeonButtonVariantProps = {
21
+ [key in keyof AeonButtonVariant]?: ConditionalValue<AeonButtonVariant[key]> | undefined
22
+ }
23
+
24
+ export interface AeonButtonRecipe {
25
+ __type: AeonButtonVariantProps
26
+ (props?: AeonButtonVariantProps): string
27
+ raw: (props?: AeonButtonVariantProps) => AeonButtonVariantProps
28
+ variantMap: AeonButtonVariantMap
29
+ variantKeys: Array<keyof AeonButtonVariant>
30
+ splitVariantProps<Props extends AeonButtonVariantProps>(props: Props): [AeonButtonVariantProps, Pretty<DistributiveOmit<Props, keyof AeonButtonVariantProps>>]
31
+ getVariantProps: (props?: AeonButtonVariantProps) => AeonButtonVariantProps
32
+ }
33
+
34
+ /**
35
+ * Aeon button styles
36
+
37
+
38
+ */
39
+ export declare const aeonButton: AeonButtonRecipe
@@ -0,0 +1,39 @@
1
+ import { memo, splitProps } from '../helpers.mjs';
2
+ import { createRecipe, mergeRecipes } from './create-recipe.mjs';
3
+
4
+ const aeonButtonFn = /* @__PURE__ */ createRecipe('aeonButton', {
5
+ "variant": "solid",
6
+ "size": "sm"
7
+ }, [])
8
+
9
+ const aeonButtonVariantMap = {
10
+ "variant": [
11
+ "solid",
12
+ "outline",
13
+ "ghost"
14
+ ],
15
+ "size": [
16
+ "xs",
17
+ "sm",
18
+ "md",
19
+ "lg"
20
+ ]
21
+ }
22
+
23
+ const aeonButtonVariantKeys = Object.keys(aeonButtonVariantMap)
24
+
25
+ export const aeonButton = /* @__PURE__ */ Object.assign(memo(aeonButtonFn.recipeFn), {
26
+ __recipe__: true,
27
+ __name__: 'aeonButton',
28
+ __getCompoundVariantCss__: aeonButtonFn.__getCompoundVariantCss__,
29
+ raw: (props) => props,
30
+ variantKeys: aeonButtonVariantKeys,
31
+ variantMap: aeonButtonVariantMap,
32
+ merge(recipe) {
33
+ return mergeRecipes(this, recipe)
34
+ },
35
+ splitVariantProps(props) {
36
+ return splitProps(props, aeonButtonVariantKeys)
37
+ },
38
+ getVariantProps: aeonButtonFn.getVariantProps,
39
+ })
@@ -0,0 +1,28 @@
1
+ /* eslint-disable */
2
+ import type { ConditionalValue } from '../types/index';
3
+ import type { DistributiveOmit, Pretty } from '../types/system-types';
4
+
5
+ interface AeonCheckboxVariant {
6
+
7
+ }
8
+
9
+ type AeonCheckboxVariantMap = {
10
+ [key in keyof AeonCheckboxVariant]: Array<AeonCheckboxVariant[key]>
11
+ }
12
+
13
+ export type AeonCheckboxVariantProps = {
14
+ [key in keyof AeonCheckboxVariant]?: ConditionalValue<AeonCheckboxVariant[key]> | undefined
15
+ }
16
+
17
+ export interface AeonCheckboxRecipe {
18
+ __type: AeonCheckboxVariantProps
19
+ (props?: AeonCheckboxVariantProps): Pretty<Record<"root" | "control" | "indicator" | "label" | "hiddenInput", string>>
20
+ raw: (props?: AeonCheckboxVariantProps) => AeonCheckboxVariantProps
21
+ variantMap: AeonCheckboxVariantMap
22
+ variantKeys: Array<keyof AeonCheckboxVariant>
23
+ splitVariantProps<Props extends AeonCheckboxVariantProps>(props: Props): [AeonCheckboxVariantProps, Pretty<DistributiveOmit<Props, keyof AeonCheckboxVariantProps>>]
24
+ getVariantProps: (props?: AeonCheckboxVariantProps) => AeonCheckboxVariantProps
25
+ }
26
+
27
+
28
+ export declare const aeonCheckbox: AeonCheckboxRecipe
@@ -0,0 +1,48 @@
1
+ import { compact, getSlotCompoundVariant, memo, splitProps } from '../helpers.mjs';
2
+ import { createRecipe } from './create-recipe.mjs';
3
+
4
+ const aeonCheckboxDefaultVariants = {}
5
+ const aeonCheckboxCompoundVariants = []
6
+
7
+ const aeonCheckboxSlotNames = [
8
+ [
9
+ "root",
10
+ "aeonCheckbox__root"
11
+ ],
12
+ [
13
+ "control",
14
+ "aeonCheckbox__control"
15
+ ],
16
+ [
17
+ "indicator",
18
+ "aeonCheckbox__indicator"
19
+ ],
20
+ [
21
+ "label",
22
+ "aeonCheckbox__label"
23
+ ],
24
+ [
25
+ "hiddenInput",
26
+ "aeonCheckbox__hiddenInput"
27
+ ]
28
+ ]
29
+ const aeonCheckboxSlotFns = /* @__PURE__ */ aeonCheckboxSlotNames.map(([slotName, slotKey]) => [slotName, createRecipe(slotKey, aeonCheckboxDefaultVariants, getSlotCompoundVariant(aeonCheckboxCompoundVariants, slotName))])
30
+
31
+ const aeonCheckboxFn = memo((props = {}) => {
32
+ return Object.fromEntries(aeonCheckboxSlotFns.map(([slotName, slotFn]) => [slotName, slotFn.recipeFn(props)]))
33
+ })
34
+
35
+ const aeonCheckboxVariantKeys = []
36
+ const getVariantProps = (variants) => ({ ...aeonCheckboxDefaultVariants, ...compact(variants) })
37
+
38
+ export const aeonCheckbox = /* @__PURE__ */ Object.assign(aeonCheckboxFn, {
39
+ __recipe__: false,
40
+ __name__: 'aeonCheckbox',
41
+ raw: (props) => props,
42
+ variantKeys: aeonCheckboxVariantKeys,
43
+ variantMap: {},
44
+ splitVariantProps(props) {
45
+ return splitProps(props, aeonCheckboxVariantKeys)
46
+ },
47
+ getVariantProps
48
+ })
@@ -0,0 +1,32 @@
1
+ /* eslint-disable */
2
+ import type { ConditionalValue } from '../types/index';
3
+ import type { DistributiveOmit, Pretty } from '../types/system-types';
4
+
5
+ interface AeonComboboxVariant {
6
+
7
+ }
8
+
9
+ type AeonComboboxVariantMap = {
10
+ [key in keyof AeonComboboxVariant]: Array<AeonComboboxVariant[key]>
11
+ }
12
+
13
+ export type AeonComboboxVariantProps = {
14
+ [key in keyof AeonComboboxVariant]?: ConditionalValue<AeonComboboxVariant[key]> | undefined
15
+ }
16
+
17
+ export interface AeonComboboxRecipe {
18
+ __type: AeonComboboxVariantProps
19
+ (props?: AeonComboboxVariantProps): Pretty<Record<"root" | "input" | "icon" | "content" | "item" | "empty", string>>
20
+ raw: (props?: AeonComboboxVariantProps) => AeonComboboxVariantProps
21
+ variantMap: AeonComboboxVariantMap
22
+ variantKeys: Array<keyof AeonComboboxVariant>
23
+ splitVariantProps<Props extends AeonComboboxVariantProps>(props: Props): [AeonComboboxVariantProps, Pretty<DistributiveOmit<Props, keyof AeonComboboxVariantProps>>]
24
+ getVariantProps: (props?: AeonComboboxVariantProps) => AeonComboboxVariantProps
25
+ }
26
+
27
+ /**
28
+ * Filterable combobox — input + listbox (extends select patterns)
29
+
30
+
31
+ */
32
+ export declare const aeonCombobox: AeonComboboxRecipe
@@ -0,0 +1,52 @@
1
+ import { compact, getSlotCompoundVariant, memo, splitProps } from '../helpers.mjs';
2
+ import { createRecipe } from './create-recipe.mjs';
3
+
4
+ const aeonComboboxDefaultVariants = {}
5
+ const aeonComboboxCompoundVariants = []
6
+
7
+ const aeonComboboxSlotNames = [
8
+ [
9
+ "root",
10
+ "aeonCombobox__root"
11
+ ],
12
+ [
13
+ "input",
14
+ "aeonCombobox__input"
15
+ ],
16
+ [
17
+ "icon",
18
+ "aeonCombobox__icon"
19
+ ],
20
+ [
21
+ "content",
22
+ "aeonCombobox__content"
23
+ ],
24
+ [
25
+ "item",
26
+ "aeonCombobox__item"
27
+ ],
28
+ [
29
+ "empty",
30
+ "aeonCombobox__empty"
31
+ ]
32
+ ]
33
+ const aeonComboboxSlotFns = /* @__PURE__ */ aeonComboboxSlotNames.map(([slotName, slotKey]) => [slotName, createRecipe(slotKey, aeonComboboxDefaultVariants, getSlotCompoundVariant(aeonComboboxCompoundVariants, slotName))])
34
+
35
+ const aeonComboboxFn = memo((props = {}) => {
36
+ return Object.fromEntries(aeonComboboxSlotFns.map(([slotName, slotFn]) => [slotName, slotFn.recipeFn(props)]))
37
+ })
38
+
39
+ const aeonComboboxVariantKeys = []
40
+ const getVariantProps = (variants) => ({ ...aeonComboboxDefaultVariants, ...compact(variants) })
41
+
42
+ export const aeonCombobox = /* @__PURE__ */ Object.assign(aeonComboboxFn, {
43
+ __recipe__: false,
44
+ __name__: 'aeonCombobox',
45
+ raw: (props) => props,
46
+ variantKeys: aeonComboboxVariantKeys,
47
+ variantMap: {},
48
+ splitVariantProps(props) {
49
+ return splitProps(props, aeonComboboxVariantKeys)
50
+ },
51
+ getVariantProps
52
+ })
@@ -0,0 +1,28 @@
1
+ /* eslint-disable */
2
+ import type { ConditionalValue } from '../types/index';
3
+ import type { DistributiveOmit, Pretty } from '../types/system-types';
4
+
5
+ interface AeonDialogVariant {
6
+
7
+ }
8
+
9
+ type AeonDialogVariantMap = {
10
+ [key in keyof AeonDialogVariant]: Array<AeonDialogVariant[key]>
11
+ }
12
+
13
+ export type AeonDialogVariantProps = {
14
+ [key in keyof AeonDialogVariant]?: ConditionalValue<AeonDialogVariant[key]> | undefined
15
+ }
16
+
17
+ export interface AeonDialogRecipe {
18
+ __type: AeonDialogVariantProps
19
+ (props?: AeonDialogVariantProps): Pretty<Record<"root" | "trigger" | "backdrop" | "positioner" | "content" | "title" | "description" | "closeTrigger", string>>
20
+ raw: (props?: AeonDialogVariantProps) => AeonDialogVariantProps
21
+ variantMap: AeonDialogVariantMap
22
+ variantKeys: Array<keyof AeonDialogVariant>
23
+ splitVariantProps<Props extends AeonDialogVariantProps>(props: Props): [AeonDialogVariantProps, Pretty<DistributiveOmit<Props, keyof AeonDialogVariantProps>>]
24
+ getVariantProps: (props?: AeonDialogVariantProps) => AeonDialogVariantProps
25
+ }
26
+
27
+
28
+ export declare const aeonDialog: AeonDialogRecipe
@@ -0,0 +1,60 @@
1
+ import { compact, getSlotCompoundVariant, memo, splitProps } from '../helpers.mjs';
2
+ import { createRecipe } from './create-recipe.mjs';
3
+
4
+ const aeonDialogDefaultVariants = {}
5
+ const aeonDialogCompoundVariants = []
6
+
7
+ const aeonDialogSlotNames = [
8
+ [
9
+ "root",
10
+ "aeonDialog__root"
11
+ ],
12
+ [
13
+ "trigger",
14
+ "aeonDialog__trigger"
15
+ ],
16
+ [
17
+ "backdrop",
18
+ "aeonDialog__backdrop"
19
+ ],
20
+ [
21
+ "positioner",
22
+ "aeonDialog__positioner"
23
+ ],
24
+ [
25
+ "content",
26
+ "aeonDialog__content"
27
+ ],
28
+ [
29
+ "title",
30
+ "aeonDialog__title"
31
+ ],
32
+ [
33
+ "description",
34
+ "aeonDialog__description"
35
+ ],
36
+ [
37
+ "closeTrigger",
38
+ "aeonDialog__closeTrigger"
39
+ ]
40
+ ]
41
+ const aeonDialogSlotFns = /* @__PURE__ */ aeonDialogSlotNames.map(([slotName, slotKey]) => [slotName, createRecipe(slotKey, aeonDialogDefaultVariants, getSlotCompoundVariant(aeonDialogCompoundVariants, slotName))])
42
+
43
+ const aeonDialogFn = memo((props = {}) => {
44
+ return Object.fromEntries(aeonDialogSlotFns.map(([slotName, slotFn]) => [slotName, slotFn.recipeFn(props)]))
45
+ })
46
+
47
+ const aeonDialogVariantKeys = []
48
+ const getVariantProps = (variants) => ({ ...aeonDialogDefaultVariants, ...compact(variants) })
49
+
50
+ export const aeonDialog = /* @__PURE__ */ Object.assign(aeonDialogFn, {
51
+ __recipe__: false,
52
+ __name__: 'aeonDialog',
53
+ raw: (props) => props,
54
+ variantKeys: aeonDialogVariantKeys,
55
+ variantMap: {},
56
+ splitVariantProps(props) {
57
+ return splitProps(props, aeonDialogVariantKeys)
58
+ },
59
+ getVariantProps
60
+ })
@@ -0,0 +1,32 @@
1
+ /* eslint-disable */
2
+ import type { ConditionalValue } from '../types/index';
3
+ import type { DistributiveOmit, Pretty } from '../types/system-types';
4
+
5
+ interface AeonFieldVariant {
6
+
7
+ }
8
+
9
+ type AeonFieldVariantMap = {
10
+ [key in keyof AeonFieldVariant]: Array<AeonFieldVariant[key]>
11
+ }
12
+
13
+ export type AeonFieldVariantProps = {
14
+ [key in keyof AeonFieldVariant]?: ConditionalValue<AeonFieldVariant[key]> | undefined
15
+ }
16
+
17
+ export interface AeonFieldRecipe {
18
+ __type: AeonFieldVariantProps
19
+ (props?: AeonFieldVariantProps): Pretty<Record<"root" | "label" | "control" | "textarea" | "message" | "hint", string>>
20
+ raw: (props?: AeonFieldVariantProps) => AeonFieldVariantProps
21
+ variantMap: AeonFieldVariantMap
22
+ variantKeys: Array<keyof AeonFieldVariant>
23
+ splitVariantProps<Props extends AeonFieldVariantProps>(props: Props): [AeonFieldVariantProps, Pretty<DistributiveOmit<Props, keyof AeonFieldVariantProps>>]
24
+ getVariantProps: (props?: AeonFieldVariantProps) => AeonFieldVariantProps
25
+ }
26
+
27
+ /**
28
+ * Form field with orthogonal interaction, validation, and submission states
29
+
30
+
31
+ */
32
+ export declare const aeonField: AeonFieldRecipe
@@ -0,0 +1,52 @@
1
+ import { compact, getSlotCompoundVariant, memo, splitProps } from '../helpers.mjs';
2
+ import { createRecipe } from './create-recipe.mjs';
3
+
4
+ const aeonFieldDefaultVariants = {}
5
+ const aeonFieldCompoundVariants = []
6
+
7
+ const aeonFieldSlotNames = [
8
+ [
9
+ "root",
10
+ "aeonField__root"
11
+ ],
12
+ [
13
+ "label",
14
+ "aeonField__label"
15
+ ],
16
+ [
17
+ "control",
18
+ "aeonField__control"
19
+ ],
20
+ [
21
+ "textarea",
22
+ "aeonField__textarea"
23
+ ],
24
+ [
25
+ "message",
26
+ "aeonField__message"
27
+ ],
28
+ [
29
+ "hint",
30
+ "aeonField__hint"
31
+ ]
32
+ ]
33
+ const aeonFieldSlotFns = /* @__PURE__ */ aeonFieldSlotNames.map(([slotName, slotKey]) => [slotName, createRecipe(slotKey, aeonFieldDefaultVariants, getSlotCompoundVariant(aeonFieldCompoundVariants, slotName))])
34
+
35
+ const aeonFieldFn = memo((props = {}) => {
36
+ return Object.fromEntries(aeonFieldSlotFns.map(([slotName, slotFn]) => [slotName, slotFn.recipeFn(props)]))
37
+ })
38
+
39
+ const aeonFieldVariantKeys = []
40
+ const getVariantProps = (variants) => ({ ...aeonFieldDefaultVariants, ...compact(variants) })
41
+
42
+ export const aeonField = /* @__PURE__ */ Object.assign(aeonFieldFn, {
43
+ __recipe__: false,
44
+ __name__: 'aeonField',
45
+ raw: (props) => props,
46
+ variantKeys: aeonFieldVariantKeys,
47
+ variantMap: {},
48
+ splitVariantProps(props) {
49
+ return splitProps(props, aeonFieldVariantKeys)
50
+ },
51
+ getVariantProps
52
+ })
@@ -0,0 +1,28 @@
1
+ /* eslint-disable */
2
+ import type { ConditionalValue } from '../types/index';
3
+ import type { DistributiveOmit, Pretty } from '../types/system-types';
4
+
5
+ interface AeonMenuVariant {
6
+
7
+ }
8
+
9
+ type AeonMenuVariantMap = {
10
+ [key in keyof AeonMenuVariant]: Array<AeonMenuVariant[key]>
11
+ }
12
+
13
+ export type AeonMenuVariantProps = {
14
+ [key in keyof AeonMenuVariant]?: ConditionalValue<AeonMenuVariant[key]> | undefined
15
+ }
16
+
17
+ export interface AeonMenuRecipe {
18
+ __type: AeonMenuVariantProps
19
+ (props?: AeonMenuVariantProps): Pretty<Record<"root" | "trigger" | "positioner" | "content" | "item" | "separator", string>>
20
+ raw: (props?: AeonMenuVariantProps) => AeonMenuVariantProps
21
+ variantMap: AeonMenuVariantMap
22
+ variantKeys: Array<keyof AeonMenuVariant>
23
+ splitVariantProps<Props extends AeonMenuVariantProps>(props: Props): [AeonMenuVariantProps, Pretty<DistributiveOmit<Props, keyof AeonMenuVariantProps>>]
24
+ getVariantProps: (props?: AeonMenuVariantProps) => AeonMenuVariantProps
25
+ }
26
+
27
+
28
+ export declare const aeonMenu: AeonMenuRecipe
@@ -0,0 +1,52 @@
1
+ import { compact, getSlotCompoundVariant, memo, splitProps } from '../helpers.mjs';
2
+ import { createRecipe } from './create-recipe.mjs';
3
+
4
+ const aeonMenuDefaultVariants = {}
5
+ const aeonMenuCompoundVariants = []
6
+
7
+ const aeonMenuSlotNames = [
8
+ [
9
+ "root",
10
+ "aeonMenu__root"
11
+ ],
12
+ [
13
+ "trigger",
14
+ "aeonMenu__trigger"
15
+ ],
16
+ [
17
+ "positioner",
18
+ "aeonMenu__positioner"
19
+ ],
20
+ [
21
+ "content",
22
+ "aeonMenu__content"
23
+ ],
24
+ [
25
+ "item",
26
+ "aeonMenu__item"
27
+ ],
28
+ [
29
+ "separator",
30
+ "aeonMenu__separator"
31
+ ]
32
+ ]
33
+ const aeonMenuSlotFns = /* @__PURE__ */ aeonMenuSlotNames.map(([slotName, slotKey]) => [slotName, createRecipe(slotKey, aeonMenuDefaultVariants, getSlotCompoundVariant(aeonMenuCompoundVariants, slotName))])
34
+
35
+ const aeonMenuFn = memo((props = {}) => {
36
+ return Object.fromEntries(aeonMenuSlotFns.map(([slotName, slotFn]) => [slotName, slotFn.recipeFn(props)]))
37
+ })
38
+
39
+ const aeonMenuVariantKeys = []
40
+ const getVariantProps = (variants) => ({ ...aeonMenuDefaultVariants, ...compact(variants) })
41
+
42
+ export const aeonMenu = /* @__PURE__ */ Object.assign(aeonMenuFn, {
43
+ __recipe__: false,
44
+ __name__: 'aeonMenu',
45
+ raw: (props) => props,
46
+ variantKeys: aeonMenuVariantKeys,
47
+ variantMap: {},
48
+ splitVariantProps(props) {
49
+ return splitProps(props, aeonMenuVariantKeys)
50
+ },
51
+ getVariantProps
52
+ })
@@ -0,0 +1,28 @@
1
+ /* eslint-disable */
2
+ import type { ConditionalValue } from '../types/index';
3
+ import type { DistributiveOmit, Pretty } from '../types/system-types';
4
+
5
+ interface AeonPopoverVariant {
6
+
7
+ }
8
+
9
+ type AeonPopoverVariantMap = {
10
+ [key in keyof AeonPopoverVariant]: Array<AeonPopoverVariant[key]>
11
+ }
12
+
13
+ export type AeonPopoverVariantProps = {
14
+ [key in keyof AeonPopoverVariant]?: ConditionalValue<AeonPopoverVariant[key]> | undefined
15
+ }
16
+
17
+ export interface AeonPopoverRecipe {
18
+ __type: AeonPopoverVariantProps
19
+ (props?: AeonPopoverVariantProps): Pretty<Record<"root" | "trigger" | "positioner" | "content" | "arrow" | "closeTrigger", string>>
20
+ raw: (props?: AeonPopoverVariantProps) => AeonPopoverVariantProps
21
+ variantMap: AeonPopoverVariantMap
22
+ variantKeys: Array<keyof AeonPopoverVariant>
23
+ splitVariantProps<Props extends AeonPopoverVariantProps>(props: Props): [AeonPopoverVariantProps, Pretty<DistributiveOmit<Props, keyof AeonPopoverVariantProps>>]
24
+ getVariantProps: (props?: AeonPopoverVariantProps) => AeonPopoverVariantProps
25
+ }
26
+
27
+
28
+ export declare const aeonPopover: AeonPopoverRecipe
@@ -0,0 +1,52 @@
1
+ import { compact, getSlotCompoundVariant, memo, splitProps } from '../helpers.mjs';
2
+ import { createRecipe } from './create-recipe.mjs';
3
+
4
+ const aeonPopoverDefaultVariants = {}
5
+ const aeonPopoverCompoundVariants = []
6
+
7
+ const aeonPopoverSlotNames = [
8
+ [
9
+ "root",
10
+ "aeonPopover__root"
11
+ ],
12
+ [
13
+ "trigger",
14
+ "aeonPopover__trigger"
15
+ ],
16
+ [
17
+ "positioner",
18
+ "aeonPopover__positioner"
19
+ ],
20
+ [
21
+ "content",
22
+ "aeonPopover__content"
23
+ ],
24
+ [
25
+ "arrow",
26
+ "aeonPopover__arrow"
27
+ ],
28
+ [
29
+ "closeTrigger",
30
+ "aeonPopover__closeTrigger"
31
+ ]
32
+ ]
33
+ const aeonPopoverSlotFns = /* @__PURE__ */ aeonPopoverSlotNames.map(([slotName, slotKey]) => [slotName, createRecipe(slotKey, aeonPopoverDefaultVariants, getSlotCompoundVariant(aeonPopoverCompoundVariants, slotName))])
34
+
35
+ const aeonPopoverFn = memo((props = {}) => {
36
+ return Object.fromEntries(aeonPopoverSlotFns.map(([slotName, slotFn]) => [slotName, slotFn.recipeFn(props)]))
37
+ })
38
+
39
+ const aeonPopoverVariantKeys = []
40
+ const getVariantProps = (variants) => ({ ...aeonPopoverDefaultVariants, ...compact(variants) })
41
+
42
+ export const aeonPopover = /* @__PURE__ */ Object.assign(aeonPopoverFn, {
43
+ __recipe__: false,
44
+ __name__: 'aeonPopover',
45
+ raw: (props) => props,
46
+ variantKeys: aeonPopoverVariantKeys,
47
+ variantMap: {},
48
+ splitVariantProps(props) {
49
+ return splitProps(props, aeonPopoverVariantKeys)
50
+ },
51
+ getVariantProps
52
+ })
@@ -0,0 +1,43 @@
1
+ /* eslint-disable */
2
+ import type { ConditionalValue } from '../types/index';
3
+ import type { DistributiveOmit, Pretty } from '../types/system-types';
4
+
5
+ interface AeonScrollVariant {
6
+ /**
7
+ * @default "both"
8
+ */
9
+ axis: "y" | "x" | "both"
10
+ /**
11
+ * @default "md"
12
+ */
13
+ maxH: "sm" | "md" | "lg"
14
+ /**
15
+ * @default "full"
16
+ */
17
+ maxW: "full" | "md"
18
+ }
19
+
20
+ type AeonScrollVariantMap = {
21
+ [key in keyof AeonScrollVariant]: Array<AeonScrollVariant[key]>
22
+ }
23
+
24
+ export type AeonScrollVariantProps = {
25
+ [key in keyof AeonScrollVariant]?: ConditionalValue<AeonScrollVariant[key]> | undefined
26
+ }
27
+
28
+ export interface AeonScrollRecipe {
29
+ __type: AeonScrollVariantProps
30
+ (props?: AeonScrollVariantProps): Pretty<Record<"root" | "viewport" | "content", string>>
31
+ raw: (props?: AeonScrollVariantProps) => AeonScrollVariantProps
32
+ variantMap: AeonScrollVariantMap
33
+ variantKeys: Array<keyof AeonScrollVariant>
34
+ splitVariantProps<Props extends AeonScrollVariantProps>(props: Props): [AeonScrollVariantProps, Pretty<DistributiveOmit<Props, keyof AeonScrollVariantProps>>]
35
+ getVariantProps: (props?: AeonScrollVariantProps) => AeonScrollVariantProps
36
+ }
37
+
38
+ /**
39
+ * Scroll viewport with axis + edge states on data-aeon-state
40
+
41
+
42
+ */
43
+ export declare const aeonScroll: AeonScrollRecipe