@once-ui-system/core 1.7.12 → 1.8.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 (409) hide show
  1. package/AGENTS.md +53 -0
  2. package/README.md +27 -0
  3. package/agent/once-ui-codegen.mdc +27 -0
  4. package/ai/catalog.json +195 -634
  5. package/ai/components/Banner.json +2 -2
  6. package/ai/components/BlobFx.json +2 -2
  7. package/ai/components/Carousel.json +1 -0
  8. package/ai/components/ChartHeader.json +2 -2
  9. package/ai/components/Checkbox.json +2 -1
  10. package/ai/components/CompareImage.json +2 -1
  11. package/ai/components/ContextMenu.json +2 -2
  12. package/ai/components/Dialog.json +2 -0
  13. package/ai/components/HoverCard.json +2 -2
  14. package/ai/components/InfiniteScroll.json +2 -2
  15. package/ai/components/OgCard.json +3 -2
  16. package/ai/components/RadioButton.json +2 -1
  17. package/ai/components/ScrollContainer.json +2 -2
  18. package/ai/components/SegmentedControl.json +2 -2
  19. package/ai/components/Select.json +1 -1
  20. package/ai/components/SplitView.json +2 -2
  21. package/ai/components/Swiper.json +1 -0
  22. package/ai/components/Table.json +17 -2
  23. package/ai/components/ThemeSwitcher.json +2 -2
  24. package/ai/components/Tooltip.json +2 -2
  25. package/ai/examples/blocks/content/chat1content.ts +2 -0
  26. package/ai/examples/dashboard.tsx +1 -1
  27. package/ai/examples/settings.tsx +32 -28
  28. package/ai/manifest.json +2 -2
  29. package/ai/spec.json +64 -68
  30. package/dist/AGENTS.md +53 -0
  31. package/dist/README.md +27 -0
  32. package/dist/agent/once-ui-codegen.mdc +27 -0
  33. package/dist/ai/catalog.json +195 -634
  34. package/dist/ai/components/Banner.json +2 -2
  35. package/dist/ai/components/BlobFx.json +2 -2
  36. package/dist/ai/components/Carousel.json +1 -0
  37. package/dist/ai/components/ChartHeader.json +2 -2
  38. package/dist/ai/components/Checkbox.json +2 -1
  39. package/dist/ai/components/CompareImage.json +2 -1
  40. package/dist/ai/components/ContextMenu.json +2 -2
  41. package/dist/ai/components/Dialog.json +2 -0
  42. package/dist/ai/components/HoverCard.json +2 -2
  43. package/dist/ai/components/InfiniteScroll.json +2 -2
  44. package/dist/ai/components/OgCard.json +3 -2
  45. package/dist/ai/components/RadioButton.json +2 -1
  46. package/dist/ai/components/ScrollContainer.json +2 -2
  47. package/dist/ai/components/SegmentedControl.json +2 -2
  48. package/dist/ai/components/Select.json +1 -1
  49. package/dist/ai/components/SplitView.json +2 -2
  50. package/dist/ai/components/Swiper.json +1 -0
  51. package/dist/ai/components/Table.json +17 -2
  52. package/dist/ai/components/ThemeSwitcher.json +2 -2
  53. package/dist/ai/components/Tooltip.json +2 -2
  54. package/dist/ai/manifest.json +2 -2
  55. package/dist/ai/spec.json +64 -68
  56. package/dist/components/Accordion.js +1 -1
  57. package/dist/components/Accordion.js.map +1 -1
  58. package/dist/components/AccordionGroup.d.ts +1 -1
  59. package/dist/components/AccordionGroup.d.ts.map +1 -1
  60. package/dist/components/AccordionGroup.js +3 -3
  61. package/dist/components/AccordionGroup.js.map +1 -1
  62. package/dist/components/Animation.d.ts +1 -1
  63. package/dist/components/Animation.d.ts.map +1 -1
  64. package/dist/components/Arrow.d.ts +1 -1
  65. package/dist/components/Arrow.d.ts.map +1 -1
  66. package/dist/components/Arrow.js +4 -4
  67. package/dist/components/Arrow.js.map +1 -1
  68. package/dist/components/ArrowNavigationContext.d.ts +2 -1
  69. package/dist/components/ArrowNavigationContext.d.ts.map +1 -1
  70. package/dist/components/ArrowNavigationContext.js +5 -3
  71. package/dist/components/ArrowNavigationContext.js.map +1 -1
  72. package/dist/components/Avatar.d.ts +2 -2
  73. package/dist/components/Avatar.d.ts.map +1 -1
  74. package/dist/components/AvatarGroup.js +1 -1
  75. package/dist/components/AvatarGroup.js.map +1 -1
  76. package/dist/components/Background.js +1 -1
  77. package/dist/components/Background.js.map +1 -1
  78. package/dist/components/Badge.js +1 -1
  79. package/dist/components/Badge.js.map +1 -1
  80. package/dist/components/Banner.d.ts.map +1 -1
  81. package/dist/components/Banner.js +1 -0
  82. package/dist/components/Banner.js.map +1 -1
  83. package/dist/components/BlobFx.d.ts +1 -1
  84. package/dist/components/BlobFx.d.ts.map +1 -1
  85. package/dist/components/BlobFx.js +3 -2
  86. package/dist/components/BlobFx.js.map +1 -1
  87. package/dist/components/Button.js +1 -1
  88. package/dist/components/Button.js.map +1 -1
  89. package/dist/components/Card.js +1 -1
  90. package/dist/components/Card.js.map +1 -1
  91. package/dist/components/Carousel.d.ts +3 -2
  92. package/dist/components/Carousel.d.ts.map +1 -1
  93. package/dist/components/Carousel.js +5 -5
  94. package/dist/components/Carousel.js.map +1 -1
  95. package/dist/components/Checkbox.d.ts +1 -0
  96. package/dist/components/Checkbox.d.ts.map +1 -1
  97. package/dist/components/Checkbox.js +5 -5
  98. package/dist/components/Checkbox.js.map +1 -1
  99. package/dist/components/Chip.js +1 -1
  100. package/dist/components/Chip.js.map +1 -1
  101. package/dist/components/ClientFlex.d.ts.map +1 -1
  102. package/dist/components/ClientFlex.js +124 -5
  103. package/dist/components/ClientFlex.js.map +1 -1
  104. package/dist/components/CompareImage.d.ts +2 -1
  105. package/dist/components/CompareImage.d.ts.map +1 -1
  106. package/dist/components/CompareImage.js +4 -4
  107. package/dist/components/CompareImage.js.map +1 -1
  108. package/dist/components/ContextMenu.d.ts +2 -2
  109. package/dist/components/ContextMenu.d.ts.map +1 -1
  110. package/dist/components/ContextMenu.js +3 -3
  111. package/dist/components/ContextMenu.js.map +1 -1
  112. package/dist/components/CountFx.d.ts +1 -1
  113. package/dist/components/CountFx.d.ts.map +1 -1
  114. package/dist/components/CountFx.js +6 -6
  115. package/dist/components/CountFx.js.map +1 -1
  116. package/dist/components/CountdownFx.d.ts +1 -1
  117. package/dist/components/CountdownFx.d.ts.map +1 -1
  118. package/dist/components/CountdownFx.js +4 -4
  119. package/dist/components/CountdownFx.js.map +1 -1
  120. package/dist/components/Cursor.d.ts +1 -1
  121. package/dist/components/Cursor.d.ts.map +1 -1
  122. package/dist/components/Cursor.js +6 -6
  123. package/dist/components/Cursor.js.map +1 -1
  124. package/dist/components/DateInput.d.ts +1 -1
  125. package/dist/components/DateInput.d.ts.map +1 -1
  126. package/dist/components/DateInput.js +6 -5
  127. package/dist/components/DateInput.js.map +1 -1
  128. package/dist/components/DatePicker.d.ts.map +1 -1
  129. package/dist/components/DatePicker.js +5 -5
  130. package/dist/components/DatePicker.js.map +1 -1
  131. package/dist/components/DateRangeInput.d.ts +2 -2
  132. package/dist/components/DateRangeInput.d.ts.map +1 -1
  133. package/dist/components/DateRangeInput.js +6 -4
  134. package/dist/components/DateRangeInput.js.map +1 -1
  135. package/dist/components/DateRangePicker.d.ts +1 -1
  136. package/dist/components/DateRangePicker.d.ts.map +1 -1
  137. package/dist/components/DateRangePicker.js +3 -3
  138. package/dist/components/DateRangePicker.js.map +1 -1
  139. package/dist/components/Dialog.d.ts +2 -0
  140. package/dist/components/Dialog.d.ts.map +1 -1
  141. package/dist/components/Dialog.js +32 -15
  142. package/dist/components/Dialog.js.map +1 -1
  143. package/dist/components/Dropdown.d.ts.map +1 -1
  144. package/dist/components/Dropdown.js +1 -1
  145. package/dist/components/Dropdown.js.map +1 -1
  146. package/dist/components/DropdownWrapper.d.ts.map +1 -1
  147. package/dist/components/DropdownWrapper.js +14 -11
  148. package/dist/components/DropdownWrapper.js.map +1 -1
  149. package/dist/components/ElementType.d.ts +1 -1
  150. package/dist/components/ElementType.d.ts.map +1 -1
  151. package/dist/components/ElementType.js +6 -4
  152. package/dist/components/ElementType.js.map +1 -1
  153. package/dist/components/EmojiPickerDropdown.d.ts +1 -1
  154. package/dist/components/EmojiPickerDropdown.d.ts.map +1 -1
  155. package/dist/components/EmojiPickerDropdown.js +4 -2
  156. package/dist/components/EmojiPickerDropdown.js.map +1 -1
  157. package/dist/components/Fade.js +1 -1
  158. package/dist/components/Fade.js.map +1 -1
  159. package/dist/components/FlipFx.d.ts.map +1 -1
  160. package/dist/components/FlipFx.js +2 -4
  161. package/dist/components/FlipFx.js.map +1 -1
  162. package/dist/components/FocusTrap.d.ts +1 -1
  163. package/dist/components/FocusTrap.d.ts.map +1 -1
  164. package/dist/components/FocusTrap.js +3 -3
  165. package/dist/components/FocusTrap.js.map +1 -1
  166. package/dist/components/GlitchFx.js +1 -1
  167. package/dist/components/GlitchFx.js.map +1 -1
  168. package/dist/components/Heading.js +1 -1
  169. package/dist/components/Heading.js.map +1 -1
  170. package/dist/components/HoloFx.d.ts +1 -1
  171. package/dist/components/HoloFx.d.ts.map +1 -1
  172. package/dist/components/HoloFx.js +17 -8
  173. package/dist/components/HoloFx.js.map +1 -1
  174. package/dist/components/Icon.js +1 -1
  175. package/dist/components/Icon.js.map +1 -1
  176. package/dist/components/IconButton.js +1 -1
  177. package/dist/components/IconButton.js.map +1 -1
  178. package/dist/components/InlineCode.js +1 -1
  179. package/dist/components/InlineCode.js.map +1 -1
  180. package/dist/components/Input.js +1 -1
  181. package/dist/components/Input.js.map +1 -1
  182. package/dist/components/LetterFx.js +1 -1
  183. package/dist/components/LetterFx.js.map +1 -1
  184. package/dist/components/ListItem.js +1 -1
  185. package/dist/components/ListItem.js.map +1 -1
  186. package/dist/components/Logo.d.ts +1 -1
  187. package/dist/components/Logo.d.ts.map +1 -1
  188. package/dist/components/Logo.js +6 -10
  189. package/dist/components/Logo.js.map +1 -1
  190. package/dist/components/LogoCloud.js +1 -1
  191. package/dist/components/LogoCloud.js.map +1 -1
  192. package/dist/components/Mask.js +1 -1
  193. package/dist/components/Mask.js.map +1 -1
  194. package/dist/components/MasonryGrid.js +1 -1
  195. package/dist/components/MasonryGrid.js.map +1 -1
  196. package/dist/components/Media.d.ts +1 -1
  197. package/dist/components/Media.d.ts.map +1 -1
  198. package/dist/components/Media.js +10 -7
  199. package/dist/components/Media.js.map +1 -1
  200. package/dist/components/MediaVideoPlayer.d.ts +12 -0
  201. package/dist/components/MediaVideoPlayer.d.ts.map +1 -0
  202. package/dist/components/MediaVideoPlayer.js +246 -0
  203. package/dist/components/MediaVideoPlayer.js.map +1 -0
  204. package/dist/components/MediaVideoPlayer.module.scss +90 -0
  205. package/dist/components/Modal.d.ts +1 -1
  206. package/dist/components/Modal.d.ts.map +1 -1
  207. package/dist/components/Modal.js +3 -3
  208. package/dist/components/Modal.js.map +1 -1
  209. package/dist/components/NavIcon.js +1 -1
  210. package/dist/components/NavIcon.js.map +1 -1
  211. package/dist/components/NumberInput.js +1 -1
  212. package/dist/components/NumberInput.js.map +1 -1
  213. package/dist/components/OgCard.d.ts +3 -2
  214. package/dist/components/OgCard.d.ts.map +1 -1
  215. package/dist/components/OgCard.js +2 -2
  216. package/dist/components/OgCard.js.map +1 -1
  217. package/dist/components/Option.js +1 -1
  218. package/dist/components/Option.js.map +1 -1
  219. package/dist/components/ProgressBar.d.ts +1 -1
  220. package/dist/components/ProgressBar.d.ts.map +1 -1
  221. package/dist/components/ProgressBar.js +1 -1
  222. package/dist/components/ProgressBar.js.map +1 -1
  223. package/dist/components/RadioButton.d.ts +1 -0
  224. package/dist/components/RadioButton.d.ts.map +1 -1
  225. package/dist/components/RadioButton.js +6 -6
  226. package/dist/components/RadioButton.js.map +1 -1
  227. package/dist/components/ScrollContainer.d.ts +1 -1
  228. package/dist/components/ScrollContainer.d.ts.map +1 -1
  229. package/dist/components/ScrollContainer.js +3 -3
  230. package/dist/components/ScrollContainer.js.map +1 -1
  231. package/dist/components/ScrollLock.d.ts +6 -1
  232. package/dist/components/ScrollLock.d.ts.map +1 -1
  233. package/dist/components/ScrollLock.js +39 -13
  234. package/dist/components/ScrollLock.js.map +1 -1
  235. package/dist/components/ScrollToTop.d.ts +4 -1
  236. package/dist/components/ScrollToTop.d.ts.map +1 -1
  237. package/dist/components/ScrollToTop.js +2 -1
  238. package/dist/components/ScrollToTop.js.map +1 -1
  239. package/dist/components/Scroller.d.ts +2 -2
  240. package/dist/components/Scroller.d.ts.map +1 -1
  241. package/dist/components/Scroller.js +4 -4
  242. package/dist/components/Scroller.js.map +1 -1
  243. package/dist/components/SegmentedControl.d.ts +1 -1
  244. package/dist/components/SegmentedControl.d.ts.map +1 -1
  245. package/dist/components/SegmentedControl.js +3 -3
  246. package/dist/components/SegmentedControl.js.map +1 -1
  247. package/dist/components/Select.d.ts +1 -1
  248. package/dist/components/Select.d.ts.map +1 -1
  249. package/dist/components/Select.js +1 -1
  250. package/dist/components/Select.js.map +1 -1
  251. package/dist/components/ServerFlex.d.ts.map +1 -1
  252. package/dist/components/ServerFlex.js +4 -2
  253. package/dist/components/ServerFlex.js.map +1 -1
  254. package/dist/components/ServerGrid.js +1 -1
  255. package/dist/components/ServerGrid.js.map +1 -1
  256. package/dist/components/SharedInteractiveStyles.module.scss +4 -0
  257. package/dist/components/ShineFx.d.ts +1 -1
  258. package/dist/components/ShineFx.d.ts.map +1 -1
  259. package/dist/components/ShineFx.js +4 -3
  260. package/dist/components/ShineFx.js.map +1 -1
  261. package/dist/components/Skeleton.js +1 -1
  262. package/dist/components/Skeleton.js.map +1 -1
  263. package/dist/components/Slider.js +1 -1
  264. package/dist/components/Slider.js.map +1 -1
  265. package/dist/components/Slider.module.scss +2 -2
  266. package/dist/components/SmartLink.js +1 -1
  267. package/dist/components/SmartLink.js.map +1 -1
  268. package/dist/components/Spinner.js +1 -1
  269. package/dist/components/Spinner.js.map +1 -1
  270. package/dist/components/StatusIndicator.js +1 -1
  271. package/dist/components/StatusIndicator.js.map +1 -1
  272. package/dist/components/StylePanel.js +1 -1
  273. package/dist/components/StylePanel.js.map +1 -1
  274. package/dist/components/Swiper.d.ts +2 -1
  275. package/dist/components/Swiper.d.ts.map +1 -1
  276. package/dist/components/Swiper.js +5 -5
  277. package/dist/components/Swiper.js.map +1 -1
  278. package/dist/components/Switch.js +1 -1
  279. package/dist/components/Switch.js.map +1 -1
  280. package/dist/components/Table.d.ts +37 -6
  281. package/dist/components/Table.d.ts.map +1 -1
  282. package/dist/components/Table.js +115 -30
  283. package/dist/components/Table.js.map +1 -1
  284. package/dist/components/Table.module.scss +174 -3
  285. package/dist/components/Tag.d.ts +1 -1
  286. package/dist/components/Tag.d.ts.map +1 -1
  287. package/dist/components/Tag.js +1 -1
  288. package/dist/components/Tag.js.map +1 -1
  289. package/dist/components/Text.js +1 -1
  290. package/dist/components/Text.js.map +1 -1
  291. package/dist/components/Textarea.d.ts.map +1 -1
  292. package/dist/components/Textarea.js +1 -2
  293. package/dist/components/Textarea.js.map +1 -1
  294. package/dist/components/ThemeInit.d.ts.map +1 -1
  295. package/dist/components/ThemeInit.js +6 -2
  296. package/dist/components/ThemeInit.js.map +1 -1
  297. package/dist/components/TiltFx.d.ts +1 -1
  298. package/dist/components/TiltFx.d.ts.map +1 -1
  299. package/dist/components/TiltFx.js +16 -7
  300. package/dist/components/TiltFx.js.map +1 -1
  301. package/dist/components/Timeline.d.ts +3 -3
  302. package/dist/components/Timeline.d.ts.map +1 -1
  303. package/dist/components/Timeline.js +19 -54
  304. package/dist/components/Timeline.js.map +1 -1
  305. package/dist/components/Toast.js +1 -1
  306. package/dist/components/Toast.js.map +1 -1
  307. package/dist/components/Toaster.d.ts +1 -1
  308. package/dist/components/Toaster.d.ts.map +1 -1
  309. package/dist/components/Toaster.js +4 -4
  310. package/dist/components/Toaster.js.map +1 -1
  311. package/dist/components/Toaster.module.scss +0 -2
  312. package/dist/components/ToggleButton.js +1 -1
  313. package/dist/components/ToggleButton.js.map +1 -1
  314. package/dist/components/Tooltip.js +1 -1
  315. package/dist/components/Tooltip.js.map +1 -1
  316. package/dist/components/TypeFx.d.ts +1 -1
  317. package/dist/components/TypeFx.d.ts.map +1 -1
  318. package/dist/components/TypeFx.js +3 -3
  319. package/dist/components/TypeFx.js.map +1 -1
  320. package/dist/components/User.js +1 -1
  321. package/dist/components/User.js.map +1 -1
  322. package/dist/components/UserMenu.d.ts +1 -1
  323. package/dist/components/UserMenu.d.ts.map +1 -1
  324. package/dist/components/UserMenu.js +4 -3
  325. package/dist/components/UserMenu.js.map +1 -1
  326. package/dist/css/styles.css +1 -1
  327. package/dist/css/styles.css.map +1 -1
  328. package/dist/css/tokens.css +1 -1
  329. package/dist/css/tokens.css.map +1 -1
  330. package/dist/data/emoji-data.json +8 -0
  331. package/dist/hooks/index.d.ts +2 -0
  332. package/dist/hooks/index.d.ts.map +1 -1
  333. package/dist/hooks/index.js +2 -0
  334. package/dist/hooks/index.js.map +1 -1
  335. package/dist/hooks/useArrowNavigation.d.ts.map +1 -1
  336. package/dist/hooks/useArrowNavigation.js +1 -0
  337. package/dist/hooks/useArrowNavigation.js.map +1 -1
  338. package/dist/hooks/useDebounce.d.ts +1 -1
  339. package/dist/hooks/useDebounce.d.ts.map +1 -1
  340. package/dist/hooks/useDebounce.js.map +1 -1
  341. package/dist/hooks/useResponsiveClasses.d.ts.map +1 -1
  342. package/dist/hooks/useResponsiveClasses.js +45 -2
  343. package/dist/hooks/useResponsiveClasses.js.map +1 -1
  344. package/dist/icons.d.ts.map +1 -1
  345. package/dist/icons.js +7 -2
  346. package/dist/icons.js.map +1 -1
  347. package/dist/index.d.ts +0 -1
  348. package/dist/index.d.ts.map +1 -1
  349. package/dist/index.js +0 -1
  350. package/dist/index.js.map +1 -1
  351. package/dist/interfaces.d.ts +21 -36
  352. package/dist/interfaces.d.ts.map +1 -1
  353. package/dist/internal/scrollLockState.d.ts +2 -0
  354. package/dist/internal/scrollLockState.d.ts.map +1 -0
  355. package/dist/internal/scrollLockState.js +12 -0
  356. package/dist/internal/scrollLockState.js.map +1 -0
  357. package/dist/modules/code/CodeBlock.impl.d.ts +2 -0
  358. package/dist/modules/code/CodeBlock.impl.d.ts.map +1 -1
  359. package/dist/modules/code/CodeBlock.impl.js +57 -17
  360. package/dist/modules/code/CodeBlock.impl.js.map +1 -1
  361. package/dist/modules/data/BarChart.impl.js +1 -1
  362. package/dist/modules/data/BarChart.impl.js.map +1 -1
  363. package/dist/modules/data/LineBarChart.impl.js +1 -1
  364. package/dist/modules/data/LineBarChart.impl.js.map +1 -1
  365. package/dist/modules/data/LineChart.impl.js +1 -1
  366. package/dist/modules/data/LineChart.impl.js.map +1 -1
  367. package/dist/modules/data/PieChart.impl.js +1 -1
  368. package/dist/modules/data/PieChart.impl.js.map +1 -1
  369. package/dist/modules/data/utils/formatDate.js +1 -1
  370. package/dist/modules/data/utils/formatDate.js.map +1 -1
  371. package/dist/modules/index.d.ts +2 -1
  372. package/dist/modules/index.d.ts.map +1 -1
  373. package/dist/modules/index.js +2 -1
  374. package/dist/modules/index.js.map +1 -1
  375. package/dist/modules/seo/Schema.d.ts.map +1 -1
  376. package/dist/modules/seo/Schema.js +3 -4
  377. package/dist/modules/seo/Schema.js.map +1 -1
  378. package/dist/package.json +38 -8
  379. package/dist/server/og-url-validation.d.ts +10 -0
  380. package/dist/server/og-url-validation.d.ts.map +1 -0
  381. package/dist/server/og-url-validation.js +234 -0
  382. package/dist/server/og-url-validation.js.map +1 -0
  383. package/dist/server/og-utils.d.ts +5 -2
  384. package/dist/server/og-utils.d.ts.map +1 -1
  385. package/dist/server/og-utils.js +39 -14
  386. package/dist/server/og-utils.js.map +1 -1
  387. package/dist/styles/typography.scss +8 -0
  388. package/dist/tokens/typography.scss +2 -0
  389. package/dist/types.d.ts +1 -1
  390. package/dist/types.d.ts.map +1 -1
  391. package/dist/utils/index.d.ts +1 -0
  392. package/dist/utils/index.d.ts.map +1 -1
  393. package/dist/utils/index.js +1 -0
  394. package/dist/utils/index.js.map +1 -1
  395. package/dist/utils/safe-html.d.ts +19 -0
  396. package/dist/utils/safe-html.d.ts.map +1 -0
  397. package/dist/utils/safe-html.js +43 -0
  398. package/dist/utils/safe-html.js.map +1 -0
  399. package/next-env.d.ts +5 -0
  400. package/package.json +55 -21
  401. package/scripts/copy-files.js +103 -0
  402. package/scripts/generate-ai-spec.js +464 -0
  403. package/scripts/generate-emoji-data.js +128 -0
  404. package/scripts/init-agent.js +156 -0
  405. package/scripts/validate-ai-code.js +149 -0
  406. package/.eslintrc.json +0 -3
  407. package/ai/catalog.seed.json +0 -411
  408. package/dist/ai/catalog.seed.json +0 -411
  409. package/next.config.mjs +0 -14
package/AGENTS.md ADDED
@@ -0,0 +1,53 @@
1
+ # @once-ui-system/core — agent harness
2
+
3
+ This package ships an agent-first codegen harness under `ai/`. Use it when **writing Once UI code**, not full MDX documentation pages.
4
+
5
+ ## Entry point
6
+
7
+ ```
8
+ @once-ui-system/core/ai/manifest.json
9
+ ```
10
+
11
+ Or from disk:
12
+
13
+ ```
14
+ node_modules/@once-ui-system/core/ai/manifest.json
15
+ ```
16
+
17
+ ## Bootstrap workflow
18
+
19
+ 1. Read `ai/manifest.json`
20
+ 2. Load bootstrap files: `ai/rules.compact.md` + `ai/catalog.json` (~6KB)
21
+ 3. Match intent via `ai/tasks/index.json` → e.g. `ai/tasks/pricing.json`
22
+ 4. Fetch component slices listed in the task bundle (`ai/components/*.json`)
23
+ 5. Read the gold example referenced by the task; for production fidelity, read Pro blocks from `ai/examples/blocks/manifest.json`
24
+ 6. Validate generated code: `npx once-ui-validate-ai-code path/to/file.tsx`
25
+
26
+ ## npm exports
27
+
28
+ ```tsx
29
+ // Readable paths (version-pinned to your install)
30
+ import manifest from '@once-ui-system/core/ai/manifest.json';
31
+ ```
32
+
33
+ ```bash
34
+ # One-time project setup (writes AGENTS.md + Cursor rule in consumer app)
35
+ npx once-ui-init-agent
36
+ ```
37
+
38
+ ## Remote fallback
39
+
40
+ If you cannot read `node_modules`, use the docs host (may not match your installed version exactly):
41
+
42
+ - https://docs.once-ui.com/ai/manifest.json
43
+ - https://docs.once-ui.com/ai/rules.compact.md
44
+ - https://docs.once-ui.com/once-ui/ai-coding
45
+
46
+ ## Key rules (summary)
47
+
48
+ - Use `Column` / `Row`, not `Flex` unless direction changes at breakpoints
49
+ - Use `fill`, not `fillWidth fillHeight`; use `center`, not `horizontal="center" vertical="center"`
50
+ - Static panels: `Column background="surface" border="neutral-alpha-weak" radius="l" padding="24"`
51
+ - `Card` is interactive only (`href` or `onClick`)
52
+
53
+ Full rules: `@once-ui-system/core/ai/rules.compact.md`
package/README.md CHANGED
@@ -35,6 +35,33 @@ Learn how to set up and build with Once UI at [docs.once-ui.com](https://docs.on
35
35
  npm install @once-ui-system/core
36
36
  ```
37
37
 
38
+ ## AI codegen harness
39
+
40
+ This package includes an agent-first harness under `ai/` for generating Once UI code with minimal context (~6–10KB per task).
41
+
42
+ | Resource | Path |
43
+ |----------|------|
44
+ | Entry point | `@once-ui-system/core/ai/manifest.json` |
45
+ | Compact rules | `@once-ui-system/core/ai/rules.compact.md` |
46
+ | Component catalog | `@once-ui-system/core/ai/catalog.json` |
47
+ | Task bundles | `@once-ui-system/core/ai/tasks/index.json` |
48
+
49
+ **One-time setup in your app** (writes project `AGENTS.md` + Cursor rule):
50
+
51
+ ```bash
52
+ npx once-ui-init-agent
53
+ ```
54
+
55
+ **Validate generated code:**
56
+
57
+ ```bash
58
+ npx once-ui-validate-ai-code src/app/page.tsx
59
+ ```
60
+
61
+ Full guide: [docs.once-ui.com/once-ui/ai-coding](https://docs.once-ui.com/once-ui/ai-coding)
62
+
63
+ Machine-readable discovery: see the `onceUi` field in this package's `package.json`.
64
+
38
65
  ## Authors
39
66
 
40
67
  Built and maintained by [**Lorant One**](https://lorant.one).
@@ -0,0 +1,27 @@
1
+ ---
2
+ description: Load Once UI agent harness before generating UI code
3
+ globs: "**/*.{tsx,jsx}"
4
+ alwaysApply: false
5
+ ---
6
+
7
+ # Once UI codegen harness
8
+
9
+ Before generating or editing Once UI UI code in this project:
10
+
11
+ 1. Read `@once-ui-system/core/ai/manifest.json` (or `node_modules/@once-ui-system/core/ai/manifest.json`)
12
+ 2. Load bootstrap files from the manifest: `rules.compact.md` + `catalog.json`
13
+ 3. Resolve intent via `ai/tasks/index.json` → fetch the matching task bundle
14
+ 4. Fetch only the component slices listed in that task (`ai/components/*.json`)
15
+ 5. Read the task's gold example; for production layouts, read matching Pro blocks from `ai/examples/blocks/manifest.json`
16
+ 6. Validate output: `npx once-ui-validate-ai-code path/to/file.tsx`
17
+
18
+ ## Do not
19
+
20
+ - Use full documentation MDX pages for codegen (too large; use the harness)
21
+ - Use `Flex direction="column"` when `Column` works; same for `Row`
22
+ - Use `fillWidth fillHeight` when `fill` works
23
+ - Use `Card` for static panels (use the surface recipe on `Column`)
24
+
25
+ ## Remote fallback
26
+
27
+ https://docs.once-ui.com/ai/manifest.json