@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,112 @@
1
+ /**
2
+ * Section Registry Helpers
3
+ * Factory functions for creating section definitions
4
+ *
5
+ * @packageDocumentation
6
+ * @module presets/section-registry-helpers
7
+ * @since 4.1.0
8
+ *
9
+ * Powered by Nikkory
10
+ */
11
+ import type { RegistrySectionDefinition } from './registry.types';
12
+ import type { BaseSectionDefinition } from './section-registry.types';
13
+ /**
14
+ * Factory function to extend base section with auto-generated fields
15
+ *
16
+ * @remarks
17
+ * Reduces 700+ duplicate lines to ~50 lines per category by:
18
+ * 1. Taking minimal required fields (BaseSectionDefinition)
19
+ * 2. Auto-generating remaining fields from category defaults
20
+ * 3. Maintaining backward compatibility with legacy field names
21
+ *
22
+ * Field Mapping:
23
+ * - sectionId → id (backward compat) + sectionId (unified)
24
+ * - sectionType → category (backward compat) + sectionType (unified)
25
+ * - layout → sectionLayout (backward compat) + layout (unified)
26
+ *
27
+ * @param base - Base section definition with minimal required fields
28
+ * @returns Full registry section definition with all fields populated
29
+ *
30
+ * @example
31
+ * ```typescript
32
+ * // Input: Minimal definition
33
+ * const base: BaseSectionDefinition = {
34
+ * sectionId: 'hero-centered',
35
+ * name: 'Hero - Centered',
36
+ * sectionType: 'hero',
37
+ * status: 'stable',
38
+ * description: 'Centered hero section',
39
+ * keywords: ['hero', 'landing', 'cta'],
40
+ * layout: 'centered',
41
+ * columns: 1,
42
+ * spacing: 'lg',
43
+ * };
44
+ *
45
+ * // Output: Full definition with 25+ fields
46
+ * const full = withSectionDefaults(base);
47
+ * console.log(full.icon); // 'Rocket' (auto-generated)
48
+ * console.log(full.emoji); // '🚀' (auto-generated)
49
+ * console.log(full.showCta); // true (from category default)
50
+ * ```
51
+ */
52
+ export declare function withSectionDefaults(base: BaseSectionDefinition): RegistrySectionDefinition;
53
+ /**
54
+ * Process array of base definitions through the factory
55
+ *
56
+ * @remarks
57
+ * Convenience function to apply `withSectionDefaults()` to an array of
58
+ * base definitions. Useful when defining multiple sections at once.
59
+ *
60
+ * @param sections - Array of base section definitions
61
+ * @returns Array of full registry section definitions
62
+ *
63
+ * @example
64
+ * ```typescript
65
+ * const HERO_SECTIONS_BASE: BaseSectionDefinition[] = [
66
+ * { sectionId: 'hero-centered', ... },
67
+ * { sectionId: 'hero-split', ... },
68
+ * { sectionId: 'hero-video', ... },
69
+ * ];
70
+ *
71
+ * const HERO_SECTIONS = withSectionDefaultsArray(HERO_SECTIONS_BASE);
72
+ * // All 3 sections now have full definitions with 25+ fields each
73
+ * ```
74
+ */
75
+ export declare function withSectionDefaultsArray(sections: readonly BaseSectionDefinition[]): readonly RegistrySectionDefinition[];
76
+ /**
77
+ * Validate a base section definition
78
+ *
79
+ * @param section - Section to validate
80
+ * @returns Validation result with errors if any
81
+ *
82
+ * @example
83
+ * ```typescript
84
+ * const result = validateBaseSectionDefinition(section);
85
+ * if (!result.valid) {
86
+ * console.error('Validation errors:', result.errors);
87
+ * }
88
+ * ```
89
+ */
90
+ export declare function validateBaseSectionDefinition(section: BaseSectionDefinition): {
91
+ valid: boolean;
92
+ errors: readonly string[];
93
+ };
94
+ /**
95
+ * Validate an array of base section definitions
96
+ *
97
+ * @param sections - Sections to validate
98
+ * @returns Validation results for all sections
99
+ */
100
+ export declare function validateBaseSectionDefinitions(sections: readonly BaseSectionDefinition[]): {
101
+ valid: boolean;
102
+ sectionErrors: Record<string, readonly string[]>;
103
+ };
104
+ /**
105
+ * Check if an object is a valid BaseSectionDefinition
106
+ */
107
+ export declare function isBaseSectionDefinition(obj: unknown): obj is BaseSectionDefinition;
108
+ /**
109
+ * Check if an object is a valid RegistrySectionDefinition
110
+ */
111
+ export declare function isRegistrySectionDefinition(obj: unknown): obj is RegistrySectionDefinition;
112
+ //# sourceMappingURL=section-registry.helpers.d.ts.map
@@ -0,0 +1,181 @@
1
+ /**
2
+ * Section Registry Types
3
+ * Type definitions for factory pattern infrastructure
4
+ *
5
+ * @packageDocumentation
6
+ * @module presets/section-registry-types
7
+ * @since 4.1.0
8
+ *
9
+ * Powered by Nikkory
10
+ */
11
+ import type { DesignSystem, Tier, SectionCategory, LayoutType, SpacingLevel, SlotConfig, StyleOverrides } from '../types';
12
+ /**
13
+ * Base section definition - MINIMAL fields only
14
+ * Factory function will auto-generate remaining fields
15
+ *
16
+ * @remarks
17
+ * This interface defines the minimal set of fields required to define a section.
18
+ * The factory function `withSectionDefaults()` will expand this into a full
19
+ * `RegistrySectionDefinition` by applying category-specific defaults.
20
+ *
21
+ * @example
22
+ * ```typescript
23
+ * const heroSection: BaseSectionDefinition = {
24
+ * sectionId: 'hero-centered',
25
+ * name: 'Hero - Centered',
26
+ * sectionType: 'hero',
27
+ * status: 'stable',
28
+ * description: 'Centered hero section with headline, subheadline, and CTA',
29
+ * keywords: ['hero', 'landing', 'cta', 'centered'],
30
+ * layout: 'centered',
31
+ * columns: 1,
32
+ * spacing: 'lg',
33
+ * showCta: true,
34
+ * showMedia: false,
35
+ * };
36
+ *
37
+ * // Expand to full definition using factory
38
+ * const fullDefinition = withSectionDefaults(heroSection);
39
+ * ```
40
+ */
41
+ export interface BaseSectionDefinition {
42
+ /**
43
+ * Unique section identifier (kebab-case)
44
+ * @example 'hero-centered', 'pricing-three-tier', 'testimonials-carousel'
45
+ */
46
+ readonly sectionId: string;
47
+ /**
48
+ * Section name (human-readable)
49
+ * @example 'Hero - Centered', 'Pricing - Three Tier'
50
+ */
51
+ readonly name: string;
52
+ /**
53
+ * Section type/category (10 categories)
54
+ */
55
+ readonly sectionType: SectionCategory;
56
+ /**
57
+ * Description for documentation and search
58
+ */
59
+ readonly description: string;
60
+ /**
61
+ * Search keywords for filtering
62
+ * @example ['hero', 'landing', 'cta', 'centered']
63
+ */
64
+ readonly keywords: readonly string[];
65
+ /**
66
+ * Status of the section
67
+ */
68
+ readonly status: 'stable' | 'beta' | 'planned';
69
+ /**
70
+ * Layout type for the section
71
+ */
72
+ readonly layout: LayoutType;
73
+ /**
74
+ * Number of columns (for grid layouts)
75
+ */
76
+ readonly columns: 1 | 2 | 3 | 4 | 6;
77
+ /**
78
+ * Spacing between elements
79
+ */
80
+ readonly spacing: SpacingLevel;
81
+ /**
82
+ * Override default design system for this section
83
+ * @remarks If not provided, uses category default
84
+ */
85
+ readonly defaultDesignSystem?: DesignSystem;
86
+ /**
87
+ * Override default tier for this section
88
+ * @remarks If not provided, uses category default
89
+ */
90
+ readonly defaultTier?: Tier;
91
+ /**
92
+ * Slot configurations for component placement
93
+ */
94
+ readonly slots?: readonly SlotConfig[];
95
+ /**
96
+ * Number of items to generate (for list-based sections)
97
+ * @example 3 for testimonials, 3-5 for pricing tiers
98
+ */
99
+ readonly itemCount?: number;
100
+ /**
101
+ * Override showCta default
102
+ */
103
+ readonly showCta?: boolean;
104
+ /**
105
+ * Override showMedia default
106
+ */
107
+ readonly showMedia?: boolean;
108
+ /**
109
+ * Custom styling overrides
110
+ */
111
+ readonly styleOverrides?: StyleOverrides;
112
+ }
113
+ /**
114
+ * Category defaults - auto-applied by factory
115
+ *
116
+ * @remarks
117
+ * Each of the 10 section categories has its own set of default values.
118
+ * These are applied automatically by `withSectionDefaults()` when creating
119
+ * full section definitions.
120
+ *
121
+ * @example
122
+ * ```typescript
123
+ * const heroDefaults: SectionCategoryDefaults = {
124
+ * defaultDesignSystem: 'material-design',
125
+ * defaultTier: 'standard',
126
+ * icon: 'Rocket',
127
+ * emoji: '🚀',
128
+ * height: 'fullscreen',
129
+ * alignment: 'center',
130
+ * showCta: true,
131
+ * showMedia: false,
132
+ * designSystems: ['material-design', 'ios-hig', ...],
133
+ * tiers: ['basic', 'standard', 'enterprise'],
134
+ * };
135
+ * ```
136
+ */
137
+ export interface SectionCategoryDefaults {
138
+ /**
139
+ * Default design system for this category
140
+ */
141
+ readonly defaultDesignSystem: DesignSystem;
142
+ /**
143
+ * Default tier for this category
144
+ */
145
+ readonly defaultTier: Tier;
146
+ /**
147
+ * Lucide icon name for this category
148
+ * @example 'Rocket', 'Sparkles', 'Quote'
149
+ */
150
+ readonly icon: string;
151
+ /**
152
+ * Emoji for this category
153
+ * @example '🚀', '✨', '💬'
154
+ */
155
+ readonly emoji: string;
156
+ /**
157
+ * Default section height
158
+ */
159
+ readonly height: 'compact' | 'standard' | 'tall' | 'fullscreen';
160
+ /**
161
+ * Default content alignment
162
+ */
163
+ readonly alignment: 'left' | 'center' | 'right';
164
+ /**
165
+ * Whether to show CTA by default
166
+ */
167
+ readonly showCta: boolean;
168
+ /**
169
+ * Whether to show media by default
170
+ */
171
+ readonly showMedia: boolean;
172
+ /**
173
+ * Supported design systems for this category
174
+ */
175
+ readonly designSystems: readonly DesignSystem[];
176
+ /**
177
+ * Supported tiers for this category
178
+ */
179
+ readonly tiers: readonly Tier[];
180
+ }
181
+ //# sourceMappingURL=section-registry.types.d.ts.map
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Template Registry - 20 Template Definitions
3
+ * @packageDocumentation
4
+ * @module presets/template-registry
5
+ * @since 4.0.0
6
+ *
7
+ * Powered by Nikkory
8
+ */
9
+ import type { RegistryTemplateDefinition } from './registry.types';
10
+ /**
11
+ * All template definitions (20 total)
12
+ *
13
+ * Categories:
14
+ * - SaaS (5): B2B SaaS applications
15
+ * - E-commerce (4): Online stores
16
+ * - Portfolio (3): Creative portfolios
17
+ * - Blog (3): Content sites
18
+ * - Startup (3): Startup landing sites
19
+ * - Agency (2): Agency websites
20
+ */
21
+ export declare const ALL_TEMPLATES: readonly RegistryTemplateDefinition[];
22
+ export type { RegistryTemplateDefinition };
23
+ //# sourceMappingURL=template-registry.d.ts.map