@nikkory/vibe-engine 4.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 (333) hide show
  1. package/PUBLISH-GUIDE.md +250 -0
  2. package/README.md +1267 -0
  3. package/bin/vibe.js +22 -0
  4. package/dist/adapters/index.d.ts +19 -0
  5. package/dist/browser.d.ts +25 -0
  6. package/dist/browser.js +15083 -0
  7. package/dist/browser.mjs +15000 -0
  8. package/dist/cli/batch-command.d.ts +142 -0
  9. package/dist/cli/generate-command.d.ts +119 -0
  10. package/dist/cli/index.d.ts +34 -0
  11. package/dist/constants/ComponentTypes.d.ts +65 -0
  12. package/dist/constants/DesignSystems.d.ts +64 -0
  13. package/dist/constants/Frameworks.d.ts +71 -0
  14. package/dist/constants/Tiers.d.ts +72 -0
  15. package/dist/constants/index.d.ts +10 -0
  16. package/dist/converters/index.d.ts +12 -0
  17. package/dist/converters/section-converter.d.ts +176 -0
  18. package/dist/index.d.ts +58 -0
  19. package/dist/index.js +19819 -0
  20. package/dist/index.mjs +19496 -0
  21. package/dist/resolution/basic/groups-basic.d.ts +80 -0
  22. package/dist/resolution/basic/index.d.ts +21 -0
  23. package/dist/resolution/basic/intents-basic.d.ts +195 -0
  24. package/dist/resolution/basic/presets-basic.d.ts +96 -0
  25. package/dist/resolution/basic/resolver-basic.d.ts +127 -0
  26. package/dist/resolution/basic/shorthands-basic.d.ts +88 -0
  27. package/dist/resolution/core/groups-core.d.ts +160 -0
  28. package/dist/resolution/core/index.d.ts +21 -0
  29. package/dist/resolution/core/intents-core.d.ts +355 -0
  30. package/dist/resolution/core/presets-core.d.ts +160 -0
  31. package/dist/resolution/core/resolver-core.d.ts +207 -0
  32. package/dist/resolution/core/shorthands-core.d.ts +144 -0
  33. package/dist/resolution/core/types-core.d.ts +167 -0
  34. package/dist/resolution/debugger.d.ts +183 -0
  35. package/dist/resolution/demo.d.ts +57 -0
  36. package/dist/resolution/enterprise/index.d.ts +22 -0
  37. package/dist/resolution/enterprise/metrics.d.ts +152 -0
  38. package/dist/resolution/enterprise/resolver-enterprise.d.ts +108 -0
  39. package/dist/resolution/examples.d.ts +486 -0
  40. package/dist/resolution/groups/experience-group.d.ts +197 -0
  41. package/dist/resolution/groups/index.d.ts +196 -0
  42. package/dist/resolution/groups/layout-group.d.ts +192 -0
  43. package/dist/resolution/groups/motion-group.d.ts +127 -0
  44. package/dist/resolution/groups/visual-group.d.ts +146 -0
  45. package/dist/resolution/index.d.ts +41 -0
  46. package/dist/resolution/intents/button-intents.d.ts +231 -0
  47. package/dist/resolution/intents/card-intents.d.ts +177 -0
  48. package/dist/resolution/intents/feedback-intents.d.ts +222 -0
  49. package/dist/resolution/intents/index.d.ts +189 -0
  50. package/dist/resolution/intents/input-intents.d.ts +231 -0
  51. package/dist/resolution/intents/mood-modifiers.d.ts +154 -0
  52. package/dist/resolution/performance.d.ts +264 -0
  53. package/dist/resolution/presets/button-presets.d.ts +243 -0
  54. package/dist/resolution/presets/card-presets.d.ts +216 -0
  55. package/dist/resolution/presets/data-display-presets.d.ts +290 -0
  56. package/dist/resolution/presets/feedback-presets.d.ts +335 -0
  57. package/dist/resolution/presets/form-presets.d.ts +308 -0
  58. package/dist/resolution/presets/index.d.ts +22 -0
  59. package/dist/resolution/presets/input-presets.d.ts +207 -0
  60. package/dist/resolution/presets/nav-presets.d.ts +235 -0
  61. package/dist/resolution/presets/overlay-presets.d.ts +216 -0
  62. package/dist/resolution/presets/preset-registry.d.ts +212 -0
  63. package/dist/resolution/resolveProps.d.ts +235 -0
  64. package/dist/resolution/shorthand/feel-mappings.d.ts +140 -0
  65. package/dist/resolution/shorthand/index.d.ts +172 -0
  66. package/dist/resolution/shorthand/look-mappings.d.ts +107 -0
  67. package/dist/resolution/shorthand/spacing-mappings.d.ts +164 -0
  68. package/dist/resolution/shorthand/surface-mappings.d.ts +139 -0
  69. package/dist/resolution/standard/groups-standard.d.ts +98 -0
  70. package/dist/resolution/standard/index.d.ts +28 -0
  71. package/dist/resolution/standard/intents-standard.d.ts +232 -0
  72. package/dist/resolution/standard/presets-standard.d.ts +123 -0
  73. package/dist/resolution/standard/resolver-standard.d.ts +204 -0
  74. package/dist/resolution/standard/shorthands-standard.d.ts +98 -0
  75. package/dist/resolution/standard/validators.d.ts +141 -0
  76. package/dist/resolution/types.d.ts +461 -0
  77. package/dist/resolution/validators/factor24-validator.d.ts +418 -0
  78. package/dist/resolution/validators/index.d.ts +14 -0
  79. package/dist/scripts/generate-react-library.d.ts +15 -0
  80. package/dist/scripts/write-react-library.d.ts +18 -0
  81. package/dist/storage/cloud-sync.d.ts +182 -0
  82. package/dist/storage/index.d.ts +69 -0
  83. package/dist/storage/local-storage.d.ts +131 -0
  84. package/dist/storage/section-storage.d.ts +191 -0
  85. package/dist/styling/StyleGenerator.d.ts +76 -0
  86. package/dist/styling/TokenStyleResolver.d.ts +163 -0
  87. package/dist/styling/factor-migration.d.ts +192 -0
  88. package/dist/styling/factor-validators.d.ts +327 -0
  89. package/dist/styling/factors-1-6.d.ts +674 -0
  90. package/dist/styling/factors-12-16.d.ts +700 -0
  91. package/dist/styling/factors-17-24.d.ts +668 -0
  92. package/dist/styling/factors-all.d.ts +348 -0
  93. package/dist/styling/factors.d.ts +291 -0
  94. package/dist/styling/index.d.ts +31 -0
  95. package/dist/styling/types.d.ts +400 -0
  96. package/dist/tokens/schema.d.ts +486 -0
  97. package/dist/types/Option.d.ts +178 -0
  98. package/dist/types/Result.d.ts +148 -0
  99. package/dist/types/algorithm-engine.types.d.ts +298 -0
  100. package/dist/types/granularity/base.types.d.ts +268 -0
  101. package/dist/types/granularity/config.types.d.ts +177 -0
  102. package/dist/types/granularity/factors.types.d.ts +194 -0
  103. package/dist/types/granularity/index.d.ts +57 -0
  104. package/dist/types/granularity/slot.types.d.ts +128 -0
  105. package/dist/types/granularity/template.types.d.ts +179 -0
  106. package/dist/types/granularity-levels/atom.config.d.ts +151 -0
  107. package/dist/types/granularity-levels/component.config.d.ts +175 -0
  108. package/dist/types/granularity-levels/index.d.ts +47 -0
  109. package/dist/types/granularity-levels/layout.config.d.ts +278 -0
  110. package/dist/types/granularity-levels/page.config.d.ts +210 -0
  111. package/dist/types/granularity-levels/section.config.d.ts +188 -0
  112. package/dist/types/granularity-levels/template.config.d.ts +340 -0
  113. package/dist/types/index.d.ts +152 -0
  114. package/dist/types/section-slot.types.d.ts +169 -0
  115. package/dist/types/section-storage.types.d.ts +298 -0
  116. package/dist/types/section-template.types.d.ts +170 -0
  117. package/dist/types/section.types.d.ts +326 -0
  118. package/dist/ui-studio/ComponentGenerator.d.ts +219 -0
  119. package/dist/ui-studio/composition/FactorPropagator.d.ts +268 -0
  120. package/dist/ui-studio/composition/PageGenerator.d.ts +176 -0
  121. package/dist/ui-studio/composition/SectionGenerator.d.ts +312 -0
  122. package/dist/ui-studio/composition/SlotResolver.d.ts +295 -0
  123. package/dist/ui-studio/composition/section-orchestrator.d.ts +306 -0
  124. package/dist/ui-studio/granularity/FactorCascade.d.ts +328 -0
  125. package/dist/ui-studio/granularity/GranularityGenerator.d.ts +266 -0
  126. package/dist/ui-studio/granularity/RecursiveGenerator.d.ts +328 -0
  127. package/dist/ui-studio/index.d.ts +94 -0
  128. package/dist/ui-studio/matrix/ClassMapper.d.ts +128 -0
  129. package/dist/ui-studio/matrix/MatrixResolver.d.ts +203 -0
  130. package/dist/ui-studio/matrix/types.d.ts +96 -0
  131. package/dist/ui-studio/presets/IndustryDetector.d.ts +183 -0
  132. package/dist/ui-studio/presets/component-registry.d.ts +213 -0
  133. package/dist/ui-studio/presets/factor-registry.d.ts +364 -0
  134. package/dist/ui-studio/presets/granularity-registry.d.ts +252 -0
  135. package/dist/ui-studio/presets/index.d.ts +32 -0
  136. package/dist/ui-studio/presets/industries.d.ts +143 -0
  137. package/dist/ui-studio/presets/layout-registry.d.ts +21 -0
  138. package/dist/ui-studio/presets/matrix-groups.d.ts +195 -0
  139. package/dist/ui-studio/presets/page-registry.d.ts +24 -0
  140. package/dist/ui-studio/presets/registry.constants.d.ts +69 -0
  141. package/dist/ui-studio/presets/registry.types.d.ts +166 -0
  142. package/dist/ui-studio/presets/section-defaults.d.ts +175 -0
  143. package/dist/ui-studio/presets/section-registry.d.ts +83 -0
  144. package/dist/ui-studio/presets/section-registry.defaults.d.ts +106 -0
  145. package/dist/ui-studio/presets/section-registry.helpers.d.ts +112 -0
  146. package/dist/ui-studio/presets/section-registry.types.d.ts +181 -0
  147. package/dist/ui-studio/presets/template-registry.d.ts +23 -0
  148. package/dist/ui-studio/presets/variants.d.ts +1038 -0
  149. package/dist/ui-studio/registries/components-registry.d.ts +193 -0
  150. package/dist/ui-studio/registries/design-systems-registry.d.ts +153 -0
  151. package/dist/ui-studio/registries/factors-registry.d.ts +145 -0
  152. package/dist/ui-studio/registries/tiers-registry.d.ts +150 -0
  153. package/dist/ui-studio/resolution/FactorResolver.d.ts +201 -0
  154. package/dist/ui-studio/templates/TestGenerator.d.ts +55 -0
  155. package/dist/ui-studio/templates/TierGenerator.d.ts +153 -0
  156. package/dist/ui-studio/templates/TypesGenerator.d.ts +51 -0
  157. package/dist/ui-studio/types/granularity/base.types.d.ts +268 -0
  158. package/dist/ui-studio/types/granularity/config.types.d.ts +177 -0
  159. package/dist/ui-studio/types/granularity/factors.types.d.ts +194 -0
  160. package/dist/ui-studio/types/granularity/index.d.ts +57 -0
  161. package/dist/ui-studio/types/granularity/slot.types.d.ts +128 -0
  162. package/dist/ui-studio/types/granularity/template.types.d.ts +179 -0
  163. package/dist/ui-studio/types/granularity-levels/atom.config.d.ts +151 -0
  164. package/dist/ui-studio/types/granularity-levels/component.config.d.ts +175 -0
  165. package/dist/ui-studio/types/granularity-levels/index.d.ts +47 -0
  166. package/dist/ui-studio/types/granularity-levels/layout.config.d.ts +278 -0
  167. package/dist/ui-studio/types/granularity-levels/page.config.d.ts +210 -0
  168. package/dist/ui-studio/types/granularity-levels/section.config.d.ts +188 -0
  169. package/dist/ui-studio/types/granularity-levels/template.config.d.ts +340 -0
  170. package/dist/ui-studio/types.d.ts +323 -0
  171. package/dist/utils/CodeUtils.d.ts +103 -0
  172. package/dist/utils/GenerateComponentValidator.d.ts +35 -0
  173. package/dist/utils/Logger.d.ts +101 -0
  174. package/dist/utils/StringUtils.d.ts +120 -0
  175. package/dist/utils/ValidationUtils.d.ts +71 -0
  176. package/dist/utils/errors/BaseError.d.ts +23 -0
  177. package/dist/utils/errors/GenerationError.d.ts +14 -0
  178. package/dist/utils/errors/TemplateNotFoundError.d.ts +13 -0
  179. package/dist/utils/errors/ValidationError.d.ts +13 -0
  180. package/dist/utils/errors/index.d.ts +12 -0
  181. package/dist/utils/factor-resolver.d.ts +294 -0
  182. package/dist/utils/granularity-helpers.d.ts +359 -0
  183. package/dist/utils/index.d.ts +20 -0
  184. package/dist/utils/performance.d.ts +26 -0
  185. package/dist/utils/stringify.d.ts +28 -0
  186. package/dist/validators/component-validator.d.ts +86 -0
  187. package/dist/validators/design-system-validator.d.ts +95 -0
  188. package/dist/validators/factor-validator.d.ts +101 -0
  189. package/dist/validators/index.d.ts +263 -0
  190. package/dist/validators/section-validator.d.ts +120 -0
  191. package/dist/validators/slot-validator.d.ts +161 -0
  192. package/dist/validators/tier-validator.d.ts +102 -0
  193. package/package.json +67 -0
  194. package/tests/16-factor-integration.test.d.ts +14 -0
  195. package/tests/16-factor-visual.test.d.ts +14 -0
  196. package/tests/5-level-integration.test.d.ts +14 -0
  197. package/tests/CodeUtils.test.d.ts +7 -0
  198. package/tests/DesignSystems.test.d.ts +7 -0
  199. package/tests/GenerateComponentValidator.test.d.ts +7 -0
  200. package/tests/Logger.test.d.ts +7 -0
  201. package/tests/StringUtils.test.d.ts +7 -0
  202. package/tests/StyleGenerator.test.d.ts +13 -0
  203. package/tests/Tiers.test.d.ts +7 -0
  204. package/tests/TokenRegistry.test.d.ts +14 -0
  205. package/tests/TokenStyleResolver.test.d.ts +13 -0
  206. package/tests/ValidationUtils.test.d.ts +7 -0
  207. package/tests/_pending_fix/Accordion.test.d.ts +13 -0
  208. package/tests/_pending_fix/Alert.test.d.ts +13 -0
  209. package/tests/_pending_fix/AlertDialog.test.d.ts +13 -0
  210. package/tests/_pending_fix/AspectRatio.test.d.ts +13 -0
  211. package/tests/_pending_fix/Autocomplete.test.d.ts +13 -0
  212. package/tests/_pending_fix/Avatar.test.d.ts +13 -0
  213. package/tests/_pending_fix/Badge.test.d.ts +13 -0
  214. package/tests/_pending_fix/Banner.test.d.ts +13 -0
  215. package/tests/_pending_fix/Box.test.d.ts +13 -0
  216. package/tests/_pending_fix/Breadcrumb.test.d.ts +13 -0
  217. package/tests/_pending_fix/Callout.test.d.ts +13 -0
  218. package/tests/_pending_fix/Card.test.d.ts +13 -0
  219. package/tests/_pending_fix/Center.test.d.ts +13 -0
  220. package/tests/_pending_fix/Checkbox.test.d.ts +13 -0
  221. package/tests/_pending_fix/Chip.test.d.ts +13 -0
  222. package/tests/_pending_fix/ColorPicker.test.d.ts +13 -0
  223. package/tests/_pending_fix/Combobox.test.d.ts +13 -0
  224. package/tests/_pending_fix/CommandPalette.test.d.ts +13 -0
  225. package/tests/_pending_fix/ConfirmationModal.test.d.ts +13 -0
  226. package/tests/_pending_fix/Container.test.d.ts +13 -0
  227. package/tests/_pending_fix/DataTable.test.d.ts +13 -0
  228. package/tests/_pending_fix/DatePicker.test.d.ts +13 -0
  229. package/tests/_pending_fix/DateRangePicker.test.d.ts +13 -0
  230. package/tests/_pending_fix/DateTimePicker.test.d.ts +13 -0
  231. package/tests/_pending_fix/Divider.test.d.ts +13 -0
  232. package/tests/_pending_fix/Drawer.test.d.ts +13 -0
  233. package/tests/_pending_fix/Dropdown.test.d.ts +13 -0
  234. package/tests/_pending_fix/EmptyState.test.d.ts +13 -0
  235. package/tests/_pending_fix/ErrorState.test.d.ts +13 -0
  236. package/tests/_pending_fix/FileDropzone.test.d.ts +13 -0
  237. package/tests/_pending_fix/FileUpload.test.d.ts +13 -0
  238. package/tests/_pending_fix/Flex.test.d.ts +13 -0
  239. package/tests/_pending_fix/Grid.test.d.ts +13 -0
  240. package/tests/_pending_fix/GridItem.test.d.ts +13 -0
  241. package/tests/_pending_fix/HStack.test.d.ts +13 -0
  242. package/tests/_pending_fix/Input.test.d.ts +13 -0
  243. package/tests/_pending_fix/InputCurrency.test.d.ts +13 -0
  244. package/tests/_pending_fix/InputGroup.test.d.ts +13 -0
  245. package/tests/_pending_fix/InputOTP.test.d.ts +13 -0
  246. package/tests/_pending_fix/InputPassword.test.d.ts +13 -0
  247. package/tests/_pending_fix/InputPhone.test.d.ts +13 -0
  248. package/tests/_pending_fix/InputSearch.test.d.ts +13 -0
  249. package/tests/_pending_fix/Link.test.d.ts +13 -0
  250. package/tests/_pending_fix/List.test.d.ts +13 -0
  251. package/tests/_pending_fix/LoadingOverlay.test.d.ts +13 -0
  252. package/tests/_pending_fix/Menu.test.d.ts +13 -0
  253. package/tests/_pending_fix/Modal.test.d.ts +13 -0
  254. package/tests/_pending_fix/MultiSelect.test.d.ts +13 -0
  255. package/tests/_pending_fix/NavGroup.test.d.ts +13 -0
  256. package/tests/_pending_fix/NavItem.test.d.ts +13 -0
  257. package/tests/_pending_fix/NavLink.test.d.ts +13 -0
  258. package/tests/_pending_fix/Navbar.test.d.ts +13 -0
  259. package/tests/_pending_fix/Notification.test.d.ts +13 -0
  260. package/tests/_pending_fix/NotificationBadge.test.d.ts +13 -0
  261. package/tests/_pending_fix/NumberInput.test.d.ts +13 -0
  262. package/tests/_pending_fix/Pagination.test.d.ts +13 -0
  263. package/tests/_pending_fix/Popover.test.d.ts +13 -0
  264. package/tests/_pending_fix/Progress.test.d.ts +13 -0
  265. package/tests/_pending_fix/ProgressCircle.test.d.ts +13 -0
  266. package/tests/_pending_fix/ProgressSteps.test.d.ts +13 -0
  267. package/tests/_pending_fix/Radio.test.d.ts +13 -0
  268. package/tests/_pending_fix/RangeSlider.test.d.ts +13 -0
  269. package/tests/_pending_fix/ResizablePanel.test.d.ts +13 -0
  270. package/tests/_pending_fix/ResultState.test.d.ts +13 -0
  271. package/tests/_pending_fix/ScrollArea.test.d.ts +13 -0
  272. package/tests/_pending_fix/Select.test.d.ts +14 -0
  273. package/tests/_pending_fix/Sheet.test.d.ts +13 -0
  274. package/tests/_pending_fix/Sidebar.test.d.ts +13 -0
  275. package/tests/_pending_fix/SimpleGrid.test.d.ts +13 -0
  276. package/tests/_pending_fix/Skeleton.test.d.ts +13 -0
  277. package/tests/_pending_fix/Slider.test.d.ts +13 -0
  278. package/tests/_pending_fix/Spacer.test.d.ts +13 -0
  279. package/tests/_pending_fix/Spinner.test.d.ts +13 -0
  280. package/tests/_pending_fix/Stack.test.d.ts +13 -0
  281. package/tests/_pending_fix/Stat.test.d.ts +13 -0
  282. package/tests/_pending_fix/Stepper.test.d.ts +14 -0
  283. package/tests/_pending_fix/Switch.test.d.ts +13 -0
  284. package/tests/_pending_fix/Table.test.d.ts +13 -0
  285. package/tests/_pending_fix/Tabs.test.d.ts +13 -0
  286. package/tests/_pending_fix/Textarea.test.d.ts +13 -0
  287. package/tests/_pending_fix/Timeline.test.d.ts +13 -0
  288. package/tests/_pending_fix/Toast.test.d.ts +14 -0
  289. package/tests/_pending_fix/Tooltip.test.d.ts +14 -0
  290. package/tests/_pending_fix/VStack.test.d.ts +13 -0
  291. package/tests/alert.test.d.ts +13 -0
  292. package/tests/badge.test.d.ts +13 -0
  293. package/tests/benchmarks/factor-resolution.bench.d.ts +41 -0
  294. package/tests/button.test.d.ts +16 -0
  295. package/tests/card.test.d.ts +19 -0
  296. package/tests/checkbox.test.d.ts +13 -0
  297. package/tests/component-16-factor-types.test.d.ts +13 -0
  298. package/tests/component-5level-integration.test.d.ts +14 -0
  299. package/tests/component-registry-ui.test.d.ts +13 -0
  300. package/tests/e2e/16-factor-visual.test.d.ts +14 -0
  301. package/tests/edge-cases.test.d.ts +14 -0
  302. package/tests/factor-17-24-integration.test.d.ts +14 -0
  303. package/tests/factor-17-24-performance.test.d.ts +14 -0
  304. package/tests/factor-validators.test.d.ts +13 -0
  305. package/tests/factors-1-6.test.d.ts +13 -0
  306. package/tests/factors-12-16.test.d.ts +13 -0
  307. package/tests/factors-17-24.test.d.ts +21 -0
  308. package/tests/factors-all.test.d.ts +13 -0
  309. package/tests/factors-registry.test.d.ts +11 -0
  310. package/tests/factors.test.d.ts +13 -0
  311. package/tests/granularity-types.test.d.ts +18 -0
  312. package/tests/groups.test.d.ts +14 -0
  313. package/tests/input.test.d.ts +16 -0
  314. package/tests/intents.test.d.ts +14 -0
  315. package/tests/memory-leak.test.d.ts +14 -0
  316. package/tests/modal.test.d.ts +19 -0
  317. package/tests/presets.test.d.ts +14 -0
  318. package/tests/radio.test.d.ts +13 -0
  319. package/tests/resolution-intents.test.d.ts +13 -0
  320. package/tests/resolution-presets.test.d.ts +13 -0
  321. package/tests/resolveProps.test.d.ts +14 -0
  322. package/tests/section-integration.test.d.ts +16 -0
  323. package/tests/section-types.test.d.ts +11 -0
  324. package/tests/setup.d.ts +13 -0
  325. package/tests/shorthands.test.d.ts +14 -0
  326. package/tests/switch.test.d.ts +13 -0
  327. package/tests/tabs.test.d.ts +13 -0
  328. package/tests/tiers-registry.test.d.ts +11 -0
  329. package/tests/useComponentStyles.test.d.ts +11 -0
  330. package/tests/useFactors.test.d.ts +13 -0
  331. package/tests/validators-invalid-input.test.d.ts +13 -0
  332. package/tsup.config.d.ts +11 -0
  333. package/vitest.config.d.ts +3 -0
@@ -0,0 +1,326 @@
1
+ /**
2
+ * Section Architecture Types
3
+ * Core type definitions for Section configuration
4
+ *
5
+ * @packageDocumentation
6
+ * @module types/section
7
+ * @since 4.0.0
8
+ *
9
+ * Powered by Nikkory
10
+ */
11
+ import type { DesignSystem, Tier, ComponentType } from './index';
12
+ /**
13
+ * Section categories - 10 total
14
+ */
15
+ export type SectionCategory = 'hero' | 'features' | 'testimonials' | 'pricing' | 'cta' | 'faq' | 'team' | 'contact' | 'gallery' | 'stats';
16
+ /**
17
+ * Layout types for sections
18
+ *
19
+ * @remarks
20
+ * Base layout types:
21
+ * - grid: Grid-based layout
22
+ * - flex: Flexbox layout
23
+ * - stack: Vertical stacked layout
24
+ * - masonry: Pinterest-style masonry
25
+ * - carousel: Horizontal scrolling carousel
26
+ *
27
+ * Section-specific layouts:
28
+ * - centered: Content centered on page
29
+ * - split: Two-column split (content + media)
30
+ * - fullwidth: Full-width edge-to-edge
31
+ * - alternating: Alternating left/right pattern
32
+ * - sidebar: Main content with sidebar
33
+ * - asymmetric: Non-uniform grid layout
34
+ */
35
+ export type LayoutType = 'grid' | 'flex' | 'stack' | 'masonry' | 'carousel' | 'centered' | 'split' | 'fullwidth' | 'alternating' | 'sidebar' | 'asymmetric';
36
+ /**
37
+ * Spacing levels
38
+ */
39
+ export type SpacingLevel = 'none' | 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl';
40
+ /**
41
+ * Typography scales
42
+ */
43
+ export type TypographyScale = 'compact' | 'default' | 'relaxed' | 'spacious';
44
+ /**
45
+ * Border radius levels
46
+ */
47
+ export type RadiusLevel = 'none' | 'sm' | 'md' | 'lg' | 'xl' | 'full';
48
+ /**
49
+ * Elevation/shadow levels
50
+ */
51
+ export type ElevationLevel = 'none' | 'sm' | 'md' | 'lg' | 'xl';
52
+ /**
53
+ * Alignment types
54
+ */
55
+ export type AlignmentType = 'start' | 'center' | 'end' | 'stretch' | 'between';
56
+ /**
57
+ * Max width constraints
58
+ */
59
+ export type MaxWidthLevel = 'sm' | 'md' | 'lg' | 'xl' | '2xl' | 'full';
60
+ /**
61
+ * Animation presets
62
+ */
63
+ export type AnimationPreset = 'none' | 'subtle' | 'smooth' | 'dynamic' | 'playful';
64
+ /**
65
+ * Accessibility levels
66
+ */
67
+ export type A11yLevel = 'standard' | 'enhanced' | 'maximum';
68
+ /**
69
+ * Responsive configuration
70
+ */
71
+ export interface ResponsiveConfig {
72
+ readonly mobile: LayoutType;
73
+ readonly tablet: LayoutType;
74
+ readonly desktop: LayoutType;
75
+ }
76
+ /**
77
+ * Style overrides for customization
78
+ */
79
+ export interface StyleOverrides {
80
+ readonly className?: string;
81
+ readonly style?: Record<string, string>;
82
+ readonly tailwindClasses?: string;
83
+ }
84
+ /**
85
+ * Slot position within section
86
+ */
87
+ export type SlotPosition = 'header' | 'content' | 'footer' | 'sidebar' | 'overlay';
88
+ /**
89
+ * Slot configuration
90
+ */
91
+ export interface SlotConfig {
92
+ /** Slot identifier */
93
+ readonly slotId: string;
94
+ /** Slot position */
95
+ readonly position: SlotPosition;
96
+ /** Allowed component types */
97
+ readonly allowedComponents: readonly ComponentType[];
98
+ /** Maximum components in slot */
99
+ readonly maxComponents: number;
100
+ /** Default component to place */
101
+ readonly defaultComponent?: ComponentType;
102
+ }
103
+ /**
104
+ * Stored component instance in slot
105
+ *
106
+ * @remarks
107
+ * Represents a component placed in a section slot with user customizations.
108
+ * This allows users to customize component props while maintaining the base
109
+ * component definition.
110
+ *
111
+ * @example
112
+ * ```typescript
113
+ * const storedButton: StoredComponentInSlot = {
114
+ * componentRef: 'button',
115
+ * instanceId: 'hero-cta-button-1',
116
+ * propOverrides: {
117
+ * variant: 'filled',
118
+ * size: 'lg',
119
+ * label: 'Get Started'
120
+ * },
121
+ * order: 0,
122
+ * visible: true
123
+ * };
124
+ * ```
125
+ */
126
+ export interface StoredComponentInSlot {
127
+ /** Reference to component definition (ComponentType) */
128
+ readonly componentRef: ComponentType;
129
+ /** Instance ID for this placement (unique within section) */
130
+ readonly instanceId: string;
131
+ /** User's prop overrides for this instance */
132
+ readonly propOverrides: Record<string, unknown>;
133
+ /** Position within slot (order, 0-indexed) */
134
+ readonly order: number;
135
+ /** Visibility in this section */
136
+ readonly visible: boolean;
137
+ }
138
+ /**
139
+ * Section-Level Fields (6 fields)
140
+ *
141
+ * @remarks
142
+ * Core identification and configuration for a section.
143
+ *
144
+ * Field Mapping from RegistrySectionDefinition:
145
+ * - `sectionId` ← Registry `id` (unique identifier)
146
+ * - `sectionType` ← Registry `category` (hero, features, pricing, etc.)
147
+ *
148
+ * Use `toSectionConfig()` from `converters/section-converter` to convert
149
+ * a RegistrySectionDefinition to SectionConfig automatically.
150
+ */
151
+ export interface SectionLevelFields {
152
+ /**
153
+ * Unique section identifier
154
+ * @remarks Maps from Registry `id` field
155
+ */
156
+ readonly sectionId: string;
157
+ /**
158
+ * Section type (hero, features, pricing, etc.)
159
+ * @remarks Maps from Registry `category` field
160
+ */
161
+ readonly sectionType: SectionCategory;
162
+ /** Title displayed in section */
163
+ readonly title: string;
164
+ /** Subtitle/description */
165
+ readonly subtitle?: string;
166
+ /** Design system to use */
167
+ readonly designSystem: DesignSystem;
168
+ /** Quality tier */
169
+ readonly tier: Tier;
170
+ }
171
+ /**
172
+ * Layout Fields (3 fields)
173
+ *
174
+ * @remarks
175
+ * Controls the visual arrangement of section content.
176
+ *
177
+ * Field Mapping from RegistrySectionDefinition:
178
+ * - `layout` ← Registry `sectionLayout` (grid, flex, stack, etc.)
179
+ *
180
+ * Note: Registry has two layout fields:
181
+ * - `sectionLayout` (LayoutType) - used for generation
182
+ * - `layout` (display pattern) - used for UI preview only
183
+ */
184
+ export interface LayoutFields {
185
+ /**
186
+ * Grid/Flex layout type
187
+ * @remarks Maps from Registry `sectionLayout` field
188
+ */
189
+ readonly layout: LayoutType;
190
+ /** Number of columns (for grid) */
191
+ readonly columns: 1 | 2 | 3 | 4 | 6;
192
+ /** Spacing between elements */
193
+ readonly spacing: SpacingLevel;
194
+ }
195
+ /**
196
+ * Generation Fields (2 fields)
197
+ *
198
+ * @remarks
199
+ * Configuration for dynamic content generation
200
+ */
201
+ export interface GenerationFields {
202
+ /** Optional slots configuration */
203
+ readonly slots?: readonly SlotConfig[];
204
+ /** Number of items to generate */
205
+ readonly itemCount?: number;
206
+ }
207
+ /**
208
+ * Component-Specific Fields (3 fields)
209
+ *
210
+ * @remarks
211
+ * Optional features for section rendering
212
+ */
213
+ export interface ComponentSpecificFields {
214
+ /** Show CTA button */
215
+ readonly showCta?: boolean;
216
+ /** Show images/media */
217
+ readonly showMedia?: boolean;
218
+ /** Custom styling overrides */
219
+ readonly styleOverrides?: StyleOverrides;
220
+ }
221
+ /**
222
+ * Complete SectionConfig - 14 Fields
223
+ *
224
+ * @remarks
225
+ * Intersection of all 4 groups forming the complete section configuration.
226
+ * This is the primary interface for defining section behavior and appearance.
227
+ *
228
+ * @example
229
+ * ```typescript
230
+ * const heroConfig: SectionConfig = {
231
+ * // Section-Level (6)
232
+ * sectionId: 'hero-1',
233
+ * sectionType: 'hero',
234
+ * title: 'Welcome to Our Platform',
235
+ * subtitle: 'Build amazing experiences',
236
+ * designSystem: 'material-design',
237
+ * tier: 'enterprise',
238
+ * // Layout (3)
239
+ * layout: 'flex',
240
+ * columns: 2,
241
+ * spacing: 'lg',
242
+ * // Generation (2)
243
+ * slots: [],
244
+ * itemCount: 1,
245
+ * // Component-Specific (3)
246
+ * showCta: true,
247
+ * showMedia: true,
248
+ * styleOverrides: { className: 'hero-custom' }
249
+ * };
250
+ * ```
251
+ */
252
+ export interface SectionConfig extends SectionLevelFields, LayoutFields, GenerationFields, ComponentSpecificFields {
253
+ }
254
+ /**
255
+ * 13 Factors that Section defines for Components
256
+ *
257
+ * @remarks
258
+ * When Section sets these, Components inherit automatically.
259
+ * This enables consistent styling across all components within a section.
260
+ *
261
+ * @example
262
+ * ```typescript
263
+ * const factors: SectionFactors = {
264
+ * // Visual (6)
265
+ * colorPrimary: '#2196f3',
266
+ * colorText: '#1a1a1a',
267
+ * colorBackground: '#ffffff',
268
+ * typography: 'default',
269
+ * borderRadius: 'md',
270
+ * elevation: 'sm',
271
+ * // Layout (4)
272
+ * padding: 'lg',
273
+ * gap: 'md',
274
+ * alignment: 'center',
275
+ * maxWidth: 'xl',
276
+ * // Behavior (3)
277
+ * animation: 'smooth',
278
+ * responsive: { mobile: 'stack', tablet: 'grid', desktop: 'grid' },
279
+ * a11yLevel: 'enhanced'
280
+ * };
281
+ * ```
282
+ */
283
+ export interface SectionFactors {
284
+ /** Factor 1: Primary color palette */
285
+ readonly colorPrimary: string;
286
+ /** Factor 2: Text color */
287
+ readonly colorText: string;
288
+ /** Factor 3: Background color */
289
+ readonly colorBackground: string;
290
+ /** Factor 4: Typography scale */
291
+ readonly typography: TypographyScale;
292
+ /** Factor 5: Border radius */
293
+ readonly borderRadius: RadiusLevel;
294
+ /** Factor 6: Shadow level */
295
+ readonly elevation: ElevationLevel;
296
+ /** Factor 7: Padding level */
297
+ readonly padding: SpacingLevel;
298
+ /** Factor 8: Gap between items */
299
+ readonly gap: SpacingLevel;
300
+ /** Factor 9: Alignment */
301
+ readonly alignment: AlignmentType;
302
+ /** Factor 10: Max width constraint */
303
+ readonly maxWidth: MaxWidthLevel;
304
+ /** Factor 11: Animation preset */
305
+ readonly animation: AnimationPreset;
306
+ /** Factor 12: Responsive breakpoint behavior */
307
+ readonly responsive: ResponsiveConfig;
308
+ /** Factor 13: Accessibility level */
309
+ readonly a11yLevel: A11yLevel;
310
+ }
311
+ /**
312
+ * Partial section factors for overrides
313
+ */
314
+ export type PartialSectionFactors = Partial<SectionFactors>;
315
+ /**
316
+ * Section configuration with factors
317
+ *
318
+ * @remarks
319
+ * Combines SectionConfig with SectionFactors for complete section definition.
320
+ * Use this when you need both configuration and styling factors.
321
+ */
322
+ export interface SectionWithFactors extends SectionConfig {
323
+ /** Section styling factors */
324
+ readonly factors: SectionFactors;
325
+ }
326
+ //# sourceMappingURL=section.types.d.ts.map
@@ -0,0 +1,219 @@
1
+ /**
2
+ * Component Generator - Orchestrator
3
+ * Uses Matrix Multiplication system (M1×M2×M3×M4) for complete component generation
4
+ *
5
+ * @packageDocumentation
6
+ * @module generators/ComponentGenerator
7
+ * @since 4.0.0
8
+ *
9
+ * The ComponentGenerator is the main orchestrator that:
10
+ * 1. Validates input (component, design system, tier)
11
+ * 2. Uses MatrixResolver for M1×M2×M3×M4 multiplication
12
+ * 3. Uses TemplateEngine for code generation
13
+ * 4. Wraps output in legacy format for backward compatibility
14
+ *
15
+ * Powered by Nikkory
16
+ */
17
+ import type { Tier, DesignSystem, ComponentType } from '../types';
18
+ import type { GenerationInput, GenerationOutput, GenerationMetadata, FactorId, ResolvedFactors } from '../types/algorithm-engine.types';
19
+ /**
20
+ * Style Output
21
+ * Contains all style-related generation output
22
+ */
23
+ export interface StyleOutput {
24
+ /** Combined Tailwind classes */
25
+ readonly tailwindClasses: string;
26
+ /** CSS variables for theme integration */
27
+ readonly cssVariables: Record<string, string>;
28
+ /** Data attributes for state-based styling */
29
+ readonly dataAttributes: string[];
30
+ /** Generated theme CSS (@theme block for Tailwind v4) */
31
+ readonly themeCss?: string;
32
+ }
33
+ /**
34
+ * Code Output
35
+ * Contains all code-related generation output
36
+ */
37
+ export interface CodeOutput {
38
+ /** Component code */
39
+ readonly componentCode: string;
40
+ /** Types file content (if requested) */
41
+ readonly typesCode?: string;
42
+ /** Test file content (if requested) */
43
+ readonly testCode?: string;
44
+ /** Storybook story content (if requested) */
45
+ readonly storyCode?: string;
46
+ }
47
+ /**
48
+ * Component Generation Result
49
+ * Extended result including both code and style outputs
50
+ */
51
+ export interface ComponentGenerationResult {
52
+ /** Whether generation succeeded */
53
+ readonly success: boolean;
54
+ /** Error message if failed */
55
+ readonly error?: string;
56
+ /** Generated code output */
57
+ readonly code: CodeOutput;
58
+ /** Generated style output */
59
+ readonly style: StyleOutput;
60
+ /** Resolved factors used in generation */
61
+ readonly resolvedFactors: ResolvedFactors;
62
+ /** Generation metadata */
63
+ readonly metadata: GenerationMetadata;
64
+ }
65
+ /**
66
+ * Component Generator
67
+ *
68
+ * Main orchestrator that uses Matrix Multiplication system (System 3)
69
+ * for component generation with full backward compatibility.
70
+ *
71
+ * @example
72
+ * ```typescript
73
+ * const generator = new ComponentGenerator();
74
+ *
75
+ * const result = generator.generate({
76
+ * componentType: 'button',
77
+ * designSystem: 'material-design',
78
+ * tier: 'enterprise',
79
+ * factorOverrides: { 2: 'lg' }, // Override size
80
+ * });
81
+ *
82
+ * console.log(result.code.componentCode); // 45 lines, clean code
83
+ * console.log(result.style.tailwindClasses);
84
+ * ```
85
+ */
86
+ export declare class ComponentGenerator {
87
+ private readonly factorResolver;
88
+ private readonly matrixResolver;
89
+ private readonly tierGenerator;
90
+ private readonly typesGenerator;
91
+ private readonly testGenerator;
92
+ /**
93
+ * Create a new ComponentGenerator instance
94
+ */
95
+ constructor();
96
+ /**
97
+ * Generate a complete component with code and styles
98
+ * REFACTORED to use Matrix Multiplication system (System 3)
99
+ *
100
+ * @param input - Generation input parameters
101
+ * @returns Complete generation result with code and styles
102
+ *
103
+ * @remarks
104
+ * Generation flow (NEW):
105
+ * 1. Validate input (component, design system, tier)
106
+ * 2. Convert to Matrix input format
107
+ * 3. Resolve using MatrixResolver (M1×M2×M3×M4)
108
+ * 4. Generate code using TemplateEngine
109
+ * 5. Wrap in legacy format for backward compatibility
110
+ */
111
+ generate(input: GenerationInput): ComponentGenerationResult;
112
+ /**
113
+ * Generate component output in the standard format
114
+ *
115
+ * @param input - Generation input
116
+ * @returns GenerationOutput compatible with existing interfaces
117
+ */
118
+ generateOutput(input: GenerationInput): GenerationOutput;
119
+ /**
120
+ * Get Tailwind classes for a component configuration
121
+ *
122
+ * @param input - Generation input
123
+ * @returns Tailwind class string
124
+ */
125
+ getTailwindClasses(input: GenerationInput): string;
126
+ /**
127
+ * Get CSS variables for a component configuration
128
+ *
129
+ * @param input - Generation input
130
+ * @returns CSS variables object
131
+ */
132
+ getCssVariables(input: GenerationInput): Record<string, string>;
133
+ /**
134
+ * Get data attributes for a component configuration
135
+ *
136
+ * @param input - Generation input
137
+ * @returns Array of data attribute strings
138
+ */
139
+ getDataAttributes(input: GenerationInput): string[];
140
+ /**
141
+ * Generate theme CSS for Tailwind v4 @theme block
142
+ *
143
+ * @param designSystem - Design system to generate theme for
144
+ * @returns CSS string with @theme block
145
+ */
146
+ generateThemeCss(designSystem: DesignSystem): string;
147
+ /**
148
+ * Validate generation input
149
+ *
150
+ * @param componentType - Component type
151
+ * @param designSystem - Design system
152
+ * @param tier - Quality tier
153
+ * @returns Validation result
154
+ */
155
+ validateInput(componentType: ComponentType, designSystem: DesignSystem, tier: Tier): {
156
+ valid: boolean;
157
+ error?: string;
158
+ };
159
+ /**
160
+ * Build data attributes for Hybrid integration
161
+ */
162
+ private buildDataAttributes;
163
+ /**
164
+ * Get data attribute name for a factor
165
+ *
166
+ * @param factorId - Factor ID (1-24)
167
+ * @returns Data attribute name (e.g., 'color', 'size') or 'factor-N' fallback for unknown IDs
168
+ */
169
+ getDataAttributeName(factorId: FactorId): string;
170
+ /**
171
+ * Convert GenerationInput → MatrixResolverInput
172
+ * Translates legacy API format to Matrix system format
173
+ *
174
+ * @param input - Legacy generation input
175
+ * @returns Matrix resolver input
176
+ */
177
+ private convertToMatrixInput;
178
+ /**
179
+ * Wrap Matrix output → ComponentGenerationResult (legacy format)
180
+ * Maintains backward compatibility with existing API consumers
181
+ *
182
+ * @param componentCode - Generated TypeScript component code
183
+ * @param typesCode - Generated TypeScript types code
184
+ * @param testCode - Generated test code
185
+ * @param resolved - Resolved component configuration from Matrix
186
+ * @param input - Original generation input (for metadata)
187
+ * @returns Legacy-format generation result
188
+ */
189
+ private wrapInLegacyFormat;
190
+ /**
191
+ * Format component name from type, design system, and tier
192
+ */
193
+ private formatComponentName;
194
+ /**
195
+ * Create error result
196
+ */
197
+ private createErrorResult;
198
+ }
199
+ /**
200
+ * Create a new ComponentGenerator instance
201
+ *
202
+ * @returns New ComponentGenerator instance
203
+ */
204
+ export declare function createComponentGenerator(): ComponentGenerator;
205
+ /**
206
+ * Generate a component with default options (convenience wrapper)
207
+ *
208
+ * @param input - Generation input
209
+ * @returns Component generation result
210
+ */
211
+ export declare function generateComponent(input: GenerationInput): ComponentGenerationResult;
212
+ /**
213
+ * Generate a component and return standard output format
214
+ *
215
+ * @param input - Generation input
216
+ * @returns GenerationOutput
217
+ */
218
+ export declare function generateComponentOutput(input: GenerationInput): GenerationOutput;
219
+ //# sourceMappingURL=ComponentGenerator.d.ts.map