@specverse/engine-realize 3.5.3

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 (420) hide show
  1. package/assets/examples/09-api/ai-spec.yaml +194 -0
  2. package/assets/examples/09-api/converted.yaml +95 -0
  3. package/assets/examples/09-api/diagram-architecture.mmd +10 -0
  4. package/assets/examples/09-api/diagram-er.mmd +10 -0
  5. package/assets/examples/09-api/documentation.html +104 -0
  6. package/assets/examples/09-api/documentation.md +95 -0
  7. package/assets/examples/09-api/inferred-spec.yaml +420 -0
  8. package/assets/examples/09-api/openapi.json +61 -0
  9. package/assets/examples/10-api/README.md +216 -0
  10. package/assets/examples/10-api/ai-spec.yaml +194 -0
  11. package/assets/examples/10-api/converted.yaml +96 -0
  12. package/assets/examples/10-api/diagram-architecture.mmd +10 -0
  13. package/assets/examples/10-api/diagram-er.mmd +10 -0
  14. package/assets/examples/10-api/documentation.html +104 -0
  15. package/assets/examples/10-api/documentation.md +95 -0
  16. package/assets/examples/10-api/inferred-spec.yaml +7 -0
  17. package/assets/examples/10-api/metadata.yaml +89 -0
  18. package/assets/examples/10-api/openapi.json +61 -0
  19. package/assets/examples/10-api/package-integration-test.js +177 -0
  20. package/assets/examples/10-api/usage-example.js +323 -0
  21. package/assets/examples/10-api/usage-example.ts +363 -0
  22. package/assets/examples/10-api/workflow-test.js +113 -0
  23. package/assets/examples/manifests/01-simple-default-mappings.yaml +36 -0
  24. package/assets/examples/manifests/02-capability-mappings.yaml +55 -0
  25. package/assets/examples/manifests/03-hybrid-mappings.yaml +109 -0
  26. package/assets/examples/manifests/README.md +245 -0
  27. package/assets/examples/manifests/backend-only.yaml +43 -0
  28. package/assets/examples/manifests/blog-api.md +78 -0
  29. package/assets/examples/manifests/blog-api.specly +79 -0
  30. package/assets/examples/manifests/frontend-only.yaml +27 -0
  31. package/assets/examples/manifests/fullstack-app.yaml +44 -0
  32. package/assets/examples/manifests/fullstack-monorepo.yaml +62 -0
  33. package/assets/examples/validate-examples-with-expected-failures.cjs +328 -0
  34. package/assets/examples/validate-examples.cjs +225 -0
  35. package/assets/examples-decomposed/cloud-native-manifest.example.yaml +8 -0
  36. package/assets/examples-decomposed/cloud-native-manifest.md +379 -0
  37. package/assets/examples-decomposed/cloud-native-manifest.specly +60 -0
  38. package/assets/examples-decomposed/docker-compose-manifest.example.yaml +8 -0
  39. package/assets/examples-decomposed/docker-compose-manifest.md +326 -0
  40. package/assets/examples-decomposed/docker-compose-manifest.specly +40 -0
  41. package/assets/examples-decomposed/kubernetes-deployment-manifest.example.yaml +8 -0
  42. package/assets/examples-decomposed/kubernetes-deployment-manifest.md +237 -0
  43. package/assets/examples-decomposed/kubernetes-deployment-manifest.specly +41 -0
  44. package/assets/templates/README.md +559 -0
  45. package/assets/templates/TEMPLATE-ENHANCEMENTS-V33.md +462 -0
  46. package/assets/templates/backend-only/CLAUDE.md +73 -0
  47. package/assets/templates/backend-only/README.md +197 -0
  48. package/assets/templates/backend-only/deployments/README.md +149 -0
  49. package/assets/templates/backend-only/deployments/development.specly +53 -0
  50. package/assets/templates/backend-only/deployments/production.specly +87 -0
  51. package/assets/templates/backend-only/docs/README.md +50 -0
  52. package/assets/templates/backend-only/docs/api/README.md +7 -0
  53. package/assets/templates/backend-only/docs/diagrams/README.md +85 -0
  54. package/assets/templates/backend-only/docs/example-documentation-template.md +269 -0
  55. package/assets/templates/backend-only/docs/guides/README.md +15 -0
  56. package/assets/templates/backend-only/dot.env.example +18 -0
  57. package/assets/templates/backend-only/generated/README.md +56 -0
  58. package/assets/templates/backend-only/generated/code/integration-test.template.js +320 -0
  59. package/assets/templates/backend-only/generated/code/package.json.template +34 -0
  60. package/assets/templates/backend-only/generated/docs/README.md +49 -0
  61. package/assets/templates/backend-only/gitignore +54 -0
  62. package/assets/templates/backend-only/manifests/README.md +72 -0
  63. package/assets/templates/backend-only/manifests/docker-compose.specly +91 -0
  64. package/assets/templates/backend-only/manifests/implementation.yaml +100 -0
  65. package/assets/templates/backend-only/manifests/kubernetes.specly +140 -0
  66. package/assets/templates/backend-only/package.json +59 -0
  67. package/assets/templates/backend-only/scripts/test-all.sh +160 -0
  68. package/assets/templates/backend-only/scripts/test-generated-code.sh +165 -0
  69. package/assets/templates/backend-only/specs/main.specly +67 -0
  70. package/assets/templates/default/CLAUDE.md +141 -0
  71. package/assets/templates/default/README.md +404 -0
  72. package/assets/templates/default/deployments/README.md +149 -0
  73. package/assets/templates/default/deployments/development.specly +53 -0
  74. package/assets/templates/default/deployments/production.specly +87 -0
  75. package/assets/templates/default/docs/README.md +50 -0
  76. package/assets/templates/default/docs/api/README.md +7 -0
  77. package/assets/templates/default/docs/diagrams/README.md +85 -0
  78. package/assets/templates/default/docs/example-documentation-template.md +269 -0
  79. package/assets/templates/default/docs/guides/README.md +15 -0
  80. package/assets/templates/default/dot.env.example +18 -0
  81. package/assets/templates/default/generated/README.md +56 -0
  82. package/assets/templates/default/generated/code/integration-test.template.js +320 -0
  83. package/assets/templates/default/generated/code/package.json.template +34 -0
  84. package/assets/templates/default/generated/docs/README.md +49 -0
  85. package/assets/templates/default/gitignore +54 -0
  86. package/assets/templates/default/manifests/README.md +72 -0
  87. package/assets/templates/default/manifests/docker-compose.specly +91 -0
  88. package/assets/templates/default/manifests/implementation.yaml +176 -0
  89. package/assets/templates/default/manifests/kubernetes.specly +140 -0
  90. package/assets/templates/default/package.json +61 -0
  91. package/assets/templates/default/scripts/test-all.sh +160 -0
  92. package/assets/templates/default/scripts/test-generated-code.sh +165 -0
  93. package/assets/templates/default/specs/main.specly +67 -0
  94. package/assets/templates/frontend-only/CLAUDE.md +75 -0
  95. package/assets/templates/frontend-only/README.md +231 -0
  96. package/assets/templates/frontend-only/deployments/README.md +149 -0
  97. package/assets/templates/frontend-only/deployments/development.specly +53 -0
  98. package/assets/templates/frontend-only/deployments/production.specly +87 -0
  99. package/assets/templates/frontend-only/docs/README.md +50 -0
  100. package/assets/templates/frontend-only/docs/api/README.md +7 -0
  101. package/assets/templates/frontend-only/docs/diagrams/README.md +85 -0
  102. package/assets/templates/frontend-only/docs/example-documentation-template.md +269 -0
  103. package/assets/templates/frontend-only/docs/guides/README.md +15 -0
  104. package/assets/templates/frontend-only/dot.env.example +18 -0
  105. package/assets/templates/frontend-only/generated/README.md +56 -0
  106. package/assets/templates/frontend-only/generated/code/integration-test.template.js +320 -0
  107. package/assets/templates/frontend-only/generated/code/package.json.template +34 -0
  108. package/assets/templates/frontend-only/generated/docs/README.md +49 -0
  109. package/assets/templates/frontend-only/gitignore +54 -0
  110. package/assets/templates/frontend-only/manifests/README.md +72 -0
  111. package/assets/templates/frontend-only/manifests/docker-compose.specly +91 -0
  112. package/assets/templates/frontend-only/manifests/implementation.yaml +58 -0
  113. package/assets/templates/frontend-only/manifests/kubernetes.specly +140 -0
  114. package/assets/templates/frontend-only/package.json +59 -0
  115. package/assets/templates/frontend-only/scripts/test-all.sh +160 -0
  116. package/assets/templates/frontend-only/scripts/test-generated-code.sh +165 -0
  117. package/assets/templates/frontend-only/specs/main.specly +57 -0
  118. package/assets/templates/full-stack/AI-GUIDE.md +60 -0
  119. package/assets/templates/full-stack/CLAUDE.md +141 -0
  120. package/assets/templates/full-stack/README.md +382 -0
  121. package/assets/templates/full-stack/archive/AI-GUIDE-legacy.md +392 -0
  122. package/assets/templates/full-stack/deployments/README.md +149 -0
  123. package/assets/templates/full-stack/deployments/development.specly +53 -0
  124. package/assets/templates/full-stack/deployments/production.specly +87 -0
  125. package/assets/templates/full-stack/docs/README.md +51 -0
  126. package/assets/templates/full-stack/docs/api/README.md +7 -0
  127. package/assets/templates/full-stack/docs/diagrams/README.md +85 -0
  128. package/assets/templates/full-stack/docs/example-documentation-template.md +269 -0
  129. package/assets/templates/full-stack/docs/guides/README.md +15 -0
  130. package/assets/templates/full-stack/generated/README.md +56 -0
  131. package/assets/templates/full-stack/generated/code/integration-test.template.js +320 -0
  132. package/assets/templates/full-stack/generated/code/package.json.template +34 -0
  133. package/assets/templates/full-stack/generated/docs/README.md +49 -0
  134. package/assets/templates/full-stack/gitignore +54 -0
  135. package/assets/templates/full-stack/manifests/README.md +72 -0
  136. package/assets/templates/full-stack/manifests/docker-compose.specly +91 -0
  137. package/assets/templates/full-stack/manifests/implementation.yaml +155 -0
  138. package/assets/templates/full-stack/manifests/kubernetes.specly +140 -0
  139. package/assets/templates/full-stack/package.json +45 -0
  140. package/assets/templates/full-stack/scripts/test-all.sh +160 -0
  141. package/assets/templates/full-stack/scripts/test-generated-code.sh +165 -0
  142. package/assets/templates/full-stack/specs/example-v33.specly +297 -0
  143. package/assets/templates/full-stack/specs/main-simple.specly +73 -0
  144. package/assets/templates/full-stack/specs/main.specly +408 -0
  145. package/dist/engines/code-generator.d.ts +86 -0
  146. package/dist/engines/code-generator.d.ts.map +1 -0
  147. package/dist/engines/code-generator.js +159 -0
  148. package/dist/engines/code-generator.js.map +1 -0
  149. package/dist/engines/engine-registry.d.ts +94 -0
  150. package/dist/engines/engine-registry.d.ts.map +1 -0
  151. package/dist/engines/engine-registry.js +163 -0
  152. package/dist/engines/engine-registry.js.map +1 -0
  153. package/dist/engines/index.d.ts +10 -0
  154. package/dist/engines/index.d.ts.map +1 -0
  155. package/dist/engines/index.js +12 -0
  156. package/dist/engines/index.js.map +1 -0
  157. package/dist/engines/typescript-engine.d.ts +74 -0
  158. package/dist/engines/typescript-engine.d.ts.map +1 -0
  159. package/dist/engines/typescript-engine.js +288 -0
  160. package/dist/engines/typescript-engine.js.map +1 -0
  161. package/dist/generators/index.d.ts +11 -0
  162. package/dist/generators/index.d.ts.map +1 -0
  163. package/dist/generators/index.js +11 -0
  164. package/dist/generators/index.js.map +1 -0
  165. package/dist/index.d.ts +48 -0
  166. package/dist/index.d.ts.map +1 -0
  167. package/dist/index.js +434 -0
  168. package/dist/index.js.map +1 -0
  169. package/dist/library/index.d.ts +12 -0
  170. package/dist/library/index.d.ts.map +1 -0
  171. package/dist/library/index.js +15 -0
  172. package/dist/library/index.js.map +1 -0
  173. package/dist/library/library.d.ts +132 -0
  174. package/dist/library/library.d.ts.map +1 -0
  175. package/dist/library/library.js +343 -0
  176. package/dist/library/library.js.map +1 -0
  177. package/dist/library/loader.d.ts +73 -0
  178. package/dist/library/loader.d.ts.map +1 -0
  179. package/dist/library/loader.js +150 -0
  180. package/dist/library/loader.js.map +1 -0
  181. package/dist/library/resolver.d.ts +104 -0
  182. package/dist/library/resolver.d.ts.map +1 -0
  183. package/dist/library/resolver.js +299 -0
  184. package/dist/library/resolver.js.map +1 -0
  185. package/dist/library/validator.d.ts +65 -0
  186. package/dist/library/validator.d.ts.map +1 -0
  187. package/dist/library/validator.js +203 -0
  188. package/dist/library/validator.js.map +1 -0
  189. package/dist/types/index.d.ts +7 -0
  190. package/dist/types/index.d.ts.map +1 -0
  191. package/dist/types/index.js +7 -0
  192. package/dist/types/index.js.map +1 -0
  193. package/dist/types/instance-factory.d.ts +289 -0
  194. package/dist/types/instance-factory.d.ts.map +1 -0
  195. package/dist/types/instance-factory.js +8 -0
  196. package/dist/types/instance-factory.js.map +1 -0
  197. package/dist/types/unified-mappings.d.ts +163 -0
  198. package/dist/types/unified-mappings.d.ts.map +1 -0
  199. package/dist/types/unified-mappings.js +110 -0
  200. package/dist/types/unified-mappings.js.map +1 -0
  201. package/dist/utils/ai-spec-loader.d.ts +77 -0
  202. package/dist/utils/ai-spec-loader.d.ts.map +1 -0
  203. package/dist/utils/ai-spec-loader.js +138 -0
  204. package/dist/utils/ai-spec-loader.js.map +1 -0
  205. package/dist/utils/index.d.ts +9 -0
  206. package/dist/utils/index.d.ts.map +1 -0
  207. package/dist/utils/index.js +9 -0
  208. package/dist/utils/index.js.map +1 -0
  209. package/dist/utils/manifest-loader.d.ts +107 -0
  210. package/dist/utils/manifest-loader.d.ts.map +1 -0
  211. package/dist/utils/manifest-loader.js +168 -0
  212. package/dist/utils/manifest-loader.js.map +1 -0
  213. package/dist/utils/mapping-migration.d.ts +53 -0
  214. package/dist/utils/mapping-migration.d.ts.map +1 -0
  215. package/dist/utils/mapping-migration.js +194 -0
  216. package/dist/utils/mapping-migration.js.map +1 -0
  217. package/libs/instance-factories/CURVED-INTERFACE.md +278 -0
  218. package/libs/instance-factories/README.md +433 -0
  219. package/libs/instance-factories/applications/generic-app.yaml +52 -0
  220. package/libs/instance-factories/applications/react-app.yaml +186 -0
  221. package/libs/instance-factories/applications/templates/generic/backend-env-generator.ts +31 -0
  222. package/libs/instance-factories/applications/templates/generic/backend-package-json-generator.ts +80 -0
  223. package/libs/instance-factories/applications/templates/generic/backend-tsconfig-generator.ts +69 -0
  224. package/libs/instance-factories/applications/templates/generic/main-generator.ts +308 -0
  225. package/libs/instance-factories/applications/templates/react/_view-components-source.ts +555 -0
  226. package/libs/instance-factories/applications/templates/react/api-client-generator.ts +436 -0
  227. package/libs/instance-factories/applications/templates/react/api-types-generator.ts +153 -0
  228. package/libs/instance-factories/applications/templates/react/app-tsx-generator.ts +94 -0
  229. package/libs/instance-factories/applications/templates/react/env-example-generator.ts +24 -0
  230. package/libs/instance-factories/applications/templates/react/field-helpers-generator.ts +106 -0
  231. package/libs/instance-factories/applications/templates/react/gitignore-generator.ts +38 -0
  232. package/libs/instance-factories/applications/templates/react/index-css-generator.ts +85 -0
  233. package/libs/instance-factories/applications/templates/react/index-html-generator.ts +30 -0
  234. package/libs/instance-factories/applications/templates/react/main-tsx-generator.ts +34 -0
  235. package/libs/instance-factories/applications/templates/react/package-json-generator.ts +54 -0
  236. package/libs/instance-factories/applications/templates/react/pattern-adapter-generator.ts +179 -0
  237. package/libs/instance-factories/applications/templates/react/react-pattern-adapter.tsx +1347 -0
  238. package/libs/instance-factories/applications/templates/react/relationship-field-generator.ts +150 -0
  239. package/libs/instance-factories/applications/templates/react/tailwind-adapter-generator.ts +704 -0
  240. package/libs/instance-factories/applications/templates/react/tailwind-adapter-wrapper-generator.ts +84 -0
  241. package/libs/instance-factories/applications/templates/react/tsconfig-generator.ts +35 -0
  242. package/libs/instance-factories/applications/templates/react/use-api-hooks-generator.ts +121 -0
  243. package/libs/instance-factories/applications/templates/react/view-dashboard-generator.ts +150 -0
  244. package/libs/instance-factories/applications/templates/react/view-detail-generator.ts +150 -0
  245. package/libs/instance-factories/applications/templates/react/view-form-generator.ts +362 -0
  246. package/libs/instance-factories/applications/templates/react/view-list-generator.ts +98 -0
  247. package/libs/instance-factories/applications/templates/react/view-router-generator.ts +89 -0
  248. package/libs/instance-factories/applications/templates/react/vite-config-generator.ts +49 -0
  249. package/libs/instance-factories/archived/fastify-prisma.yaml +104 -0
  250. package/libs/instance-factories/cli/commander-js.yaml +55 -0
  251. package/libs/instance-factories/cli/templates/commander/cli-entry-generator.d.ts +12 -0
  252. package/libs/instance-factories/cli/templates/commander/cli-entry-generator.d.ts.map +1 -0
  253. package/libs/instance-factories/cli/templates/commander/cli-entry-generator.js +115 -0
  254. package/libs/instance-factories/cli/templates/commander/cli-entry-generator.js.map +1 -0
  255. package/libs/instance-factories/cli/templates/commander/cli-entry-generator.ts +145 -0
  256. package/libs/instance-factories/cli/templates/commander/command-generator.d.ts +14 -0
  257. package/libs/instance-factories/cli/templates/commander/command-generator.d.ts.map +1 -0
  258. package/libs/instance-factories/cli/templates/commander/command-generator.js +182 -0
  259. package/libs/instance-factories/cli/templates/commander/command-generator.js.map +1 -0
  260. package/libs/instance-factories/cli/templates/commander/command-generator.ts +992 -0
  261. package/libs/instance-factories/communication/event-emitter.yaml +56 -0
  262. package/libs/instance-factories/communication/rabbitmq-events.yaml +87 -0
  263. package/libs/instance-factories/communication/templates/eventemitter/bus-generator.ts +93 -0
  264. package/libs/instance-factories/communication/templates/eventemitter/publisher-generator.ts +117 -0
  265. package/libs/instance-factories/communication/templates/eventemitter/subscriber-generator.ts +101 -0
  266. package/libs/instance-factories/controllers/fastify.yaml +127 -0
  267. package/libs/instance-factories/controllers/templates/fastify/meta-routes-generator.ts +103 -0
  268. package/libs/instance-factories/controllers/templates/fastify/routes-generator.ts +389 -0
  269. package/libs/instance-factories/controllers/templates/fastify/server-generator.ts +76 -0
  270. package/libs/instance-factories/infrastructure/docker-k8s.yaml +61 -0
  271. package/libs/instance-factories/infrastructure/templates/docker-k8s/infrastructure-generator.ts +46 -0
  272. package/libs/instance-factories/orms/prisma.yaml +89 -0
  273. package/libs/instance-factories/orms/templates/prisma/schema-generator.ts +563 -0
  274. package/libs/instance-factories/orms/templates/prisma/services-generator.ts +408 -0
  275. package/libs/instance-factories/scaffolding/generic-scaffold.yaml +65 -0
  276. package/libs/instance-factories/scaffolding/templates/generic/env-example-generator.ts +73 -0
  277. package/libs/instance-factories/scaffolding/templates/generic/env-generator.ts +85 -0
  278. package/libs/instance-factories/scaffolding/templates/generic/gitignore-generator.ts +69 -0
  279. package/libs/instance-factories/scaffolding/templates/generic/package-json-generator.ts +176 -0
  280. package/libs/instance-factories/scaffolding/templates/generic/readme-generator.ts +207 -0
  281. package/libs/instance-factories/scaffolding/templates/generic/tsconfig-generator.ts +78 -0
  282. package/libs/instance-factories/scaffolding/templates/generic/tsconfig-react-generator.ts +41 -0
  283. package/libs/instance-factories/sdks/python-sdk.yaml +66 -0
  284. package/libs/instance-factories/sdks/templates/python/sdk-generator.ts +50 -0
  285. package/libs/instance-factories/sdks/templates/typescript/sdk-generator.ts +49 -0
  286. package/libs/instance-factories/sdks/typescript-sdk.yaml +59 -0
  287. package/libs/instance-factories/services/prisma-services.yaml +71 -0
  288. package/libs/instance-factories/services/templates/prisma/behavior-generator.ts +303 -0
  289. package/libs/instance-factories/services/templates/prisma/controller-generator.ts +532 -0
  290. package/libs/instance-factories/services/templates/prisma/service-generator.ts +315 -0
  291. package/libs/instance-factories/shared/path-resolver.ts +111 -0
  292. package/libs/instance-factories/storage/mongodb.yaml +79 -0
  293. package/libs/instance-factories/storage/postgresql.yaml +75 -0
  294. package/libs/instance-factories/storage/redis.yaml +79 -0
  295. package/libs/instance-factories/storage/templates/mongodb/config-generator.ts +15 -0
  296. package/libs/instance-factories/storage/templates/mongodb/docker-generator.ts +18 -0
  297. package/libs/instance-factories/storage/templates/postgresql/config-generator.ts +54 -0
  298. package/libs/instance-factories/storage/templates/postgresql/docker-generator.ts +55 -0
  299. package/libs/instance-factories/storage/templates/redis/config-generator.ts +16 -0
  300. package/libs/instance-factories/storage/templates/redis/docker-generator.ts +18 -0
  301. package/libs/instance-factories/test-generation.ts +192 -0
  302. package/libs/instance-factories/testing/templates/vitest/tests-generator.ts +51 -0
  303. package/libs/instance-factories/testing/vitest-tests.yaml +63 -0
  304. package/libs/instance-factories/tools/templates/mcp/mcp-server-generator.ts +136 -0
  305. package/libs/instance-factories/tools/templates/mcp/static/docs/DEPLOYMENT_GUIDE.md +630 -0
  306. package/libs/instance-factories/tools/templates/mcp/static/docs/HYBRID_RESOURCE_SYSTEM.md +330 -0
  307. package/libs/instance-factories/tools/templates/mcp/static/docs/deployments/EXTENSION_DEPLOYMENT.md +552 -0
  308. package/libs/instance-factories/tools/templates/mcp/static/docs/deployments/LOCAL_DEPLOYMENT.md +164 -0
  309. package/libs/instance-factories/tools/templates/mcp/static/docs/deployments/WEB_DEPLOYMENT.md +247 -0
  310. package/libs/instance-factories/tools/templates/mcp/static/package.json +92 -0
  311. package/libs/instance-factories/tools/templates/mcp/static/scripts/build-enterprise.js +284 -0
  312. package/libs/instance-factories/tools/templates/mcp/static/scripts/build-extension.js +139 -0
  313. package/libs/instance-factories/tools/templates/mcp/static/scripts/build-local.js +74 -0
  314. package/libs/instance-factories/tools/templates/mcp/static/scripts/build-web.js +156 -0
  315. package/libs/instance-factories/tools/templates/mcp/static/scripts/copy-canonical-files.js +41 -0
  316. package/libs/instance-factories/tools/templates/mcp/static/scripts/test-deployments.js +259 -0
  317. package/libs/instance-factories/tools/templates/mcp/static/scripts/test-hybrid-resources.js +231 -0
  318. package/libs/instance-factories/tools/templates/mcp/static/scripts/test-hybrid-simple.js +196 -0
  319. package/libs/instance-factories/tools/templates/mcp/static/src/controllers/MCPServerController.ts +293 -0
  320. package/libs/instance-factories/tools/templates/mcp/static/src/events/EventEmitter.ts +90 -0
  321. package/libs/instance-factories/tools/templates/mcp/static/src/index.ts +24 -0
  322. package/libs/instance-factories/tools/templates/mcp/static/src/interfaces/ResourceProvider.ts +15 -0
  323. package/libs/instance-factories/tools/templates/mcp/static/src/models/LibrarySuggestion.ts +106 -0
  324. package/libs/instance-factories/tools/templates/mcp/static/src/models/SpecVerseResource.ts +75 -0
  325. package/libs/instance-factories/tools/templates/mcp/static/src/server/mcp-server.ts +239 -0
  326. package/libs/instance-factories/tools/templates/mcp/static/src/services/CLIProxyService.ts +1501 -0
  327. package/libs/instance-factories/tools/templates/mcp/static/src/services/EmbeddedResourcesAdapter.ts +211 -0
  328. package/libs/instance-factories/tools/templates/mcp/static/src/services/EntityModuleService.ts +308 -0
  329. package/libs/instance-factories/tools/templates/mcp/static/src/services/HybridResourcesProvider.ts +210 -0
  330. package/libs/instance-factories/tools/templates/mcp/static/src/services/LibraryToolsService.ts +356 -0
  331. package/libs/instance-factories/tools/templates/mcp/static/src/services/OrchestratorBridge.ts +524 -0
  332. package/libs/instance-factories/tools/templates/mcp/static/src/services/OrchestratorToolsService.ts +530 -0
  333. package/libs/instance-factories/tools/templates/mcp/static/src/services/PromptToolsService.ts +594 -0
  334. package/libs/instance-factories/tools/templates/mcp/static/src/services/ResourcesProviderService.ts +170 -0
  335. package/libs/instance-factories/tools/templates/mcp/static/src/tests/unit/CLIProxyService.init.test.ts +544 -0
  336. package/libs/instance-factories/tools/templates/mcp/static/src/tests/unit/CLIProxyService.test.ts +189 -0
  337. package/libs/instance-factories/tools/templates/mcp/static/src/tests/unit/ResourcesProviderService.test.ts +89 -0
  338. package/libs/instance-factories/tools/templates/mcp/static/src/types/index.ts +110 -0
  339. package/libs/instance-factories/tools/templates/mcp/static/tsconfig.json +28 -0
  340. package/libs/instance-factories/tools/templates/vscode/static/extension.ts +1195 -0
  341. package/libs/instance-factories/tools/templates/vscode/static/language-configuration.json +34 -0
  342. package/libs/instance-factories/tools/templates/vscode/static/schemas/specverse-v3-schema.json +4279 -0
  343. package/libs/instance-factories/tools/templates/vscode/static/syntaxes/specverse.tmLanguage.json +138 -0
  344. package/libs/instance-factories/tools/templates/vscode/static/themes/README.md +74 -0
  345. package/libs/instance-factories/tools/templates/vscode/static/themes/complete-specverse-colors.json +122 -0
  346. package/libs/instance-factories/tools/templates/vscode/static/themes/specverse-basic-theme.json +65 -0
  347. package/libs/instance-factories/tools/templates/vscode/static/themes/specverse-complete-theme.json +123 -0
  348. package/libs/instance-factories/tools/templates/vscode/static/themes/specverse-theme-colors.json +64 -0
  349. package/libs/instance-factories/tools/templates/vscode/vscode-extension-generator.ts +214 -0
  350. package/libs/instance-factories/validation/templates/zod/validation-generator.ts +46 -0
  351. package/libs/instance-factories/validation/zod.yaml +56 -0
  352. package/libs/instance-factories/views/index.d.ts +13 -0
  353. package/libs/instance-factories/views/index.d.ts.map +1 -0
  354. package/libs/instance-factories/views/index.js +18 -0
  355. package/libs/instance-factories/views/index.js.map +1 -0
  356. package/libs/instance-factories/views/index.ts +45 -0
  357. package/libs/instance-factories/views/react-components.yaml +129 -0
  358. package/libs/instance-factories/views/templates/ARCHITECTURE.md +198 -0
  359. package/libs/instance-factories/views/templates/react/adapters/antd-adapter.ts +869 -0
  360. package/libs/instance-factories/views/templates/react/adapters/mui-adapter.ts +953 -0
  361. package/libs/instance-factories/views/templates/react/adapters/shadcn-adapter.ts +806 -0
  362. package/libs/instance-factories/views/templates/react/app-generator.ts +55 -0
  363. package/libs/instance-factories/views/templates/react/components-generator.ts +391 -0
  364. package/libs/instance-factories/views/templates/react/forms-generator.ts +343 -0
  365. package/libs/instance-factories/views/templates/react/frontend-package-json-generator.ts +54 -0
  366. package/libs/instance-factories/views/templates/react/hooks-generator.ts +122 -0
  367. package/libs/instance-factories/views/templates/react/index-css-generator.ts +209 -0
  368. package/libs/instance-factories/views/templates/react/index-html-generator.ts +34 -0
  369. package/libs/instance-factories/views/templates/react/main-tsx-generator.ts +29 -0
  370. package/libs/instance-factories/views/templates/react/react-component-generator.d.ts +152 -0
  371. package/libs/instance-factories/views/templates/react/react-component-generator.d.ts.map +1 -0
  372. package/libs/instance-factories/views/templates/react/react-component-generator.js +398 -0
  373. package/libs/instance-factories/views/templates/react/react-component-generator.js.map +1 -0
  374. package/libs/instance-factories/views/templates/react/react-component-generator.ts +533 -0
  375. package/libs/instance-factories/views/templates/react/router-generator.ts +197 -0
  376. package/libs/instance-factories/views/templates/react/router-generic-generator.ts +103 -0
  377. package/libs/instance-factories/views/templates/react/spec-json-generator.ts +17 -0
  378. package/libs/instance-factories/views/templates/react/types-generator.ts +76 -0
  379. package/libs/instance-factories/views/templates/react/views-metadata-generator.ts +42 -0
  380. package/libs/instance-factories/views/templates/react/vite-config-generator.ts +38 -0
  381. package/libs/instance-factories/views/templates/runtime/runtime-view-renderer.d.ts.map +1 -0
  382. package/libs/instance-factories/views/templates/runtime/runtime-view-renderer.js.map +1 -0
  383. package/libs/instance-factories/views/templates/runtime/runtime-view-renderer.ts +474 -0
  384. package/libs/instance-factories/views/templates/shared/__tests__/composite-patterns.test.ts +242 -0
  385. package/libs/instance-factories/views/templates/shared/adapter-types.d.ts +77 -0
  386. package/libs/instance-factories/views/templates/shared/adapter-types.d.ts.map +1 -0
  387. package/libs/instance-factories/views/templates/shared/adapter-types.js +47 -0
  388. package/libs/instance-factories/views/templates/shared/adapter-types.js.map +1 -0
  389. package/libs/instance-factories/views/templates/shared/adapter-types.ts +142 -0
  390. package/libs/instance-factories/views/templates/shared/atomic-components-registry.d.ts +63 -0
  391. package/libs/instance-factories/views/templates/shared/atomic-components-registry.d.ts.map +1 -0
  392. package/libs/instance-factories/views/templates/shared/atomic-components-registry.js +822 -0
  393. package/libs/instance-factories/views/templates/shared/atomic-components-registry.js.map +1 -0
  394. package/libs/instance-factories/views/templates/shared/atomic-components-registry.ts +908 -0
  395. package/libs/instance-factories/views/templates/shared/base-generator.d.ts +247 -0
  396. package/libs/instance-factories/views/templates/shared/base-generator.d.ts.map +1 -0
  397. package/libs/instance-factories/views/templates/shared/base-generator.js +363 -0
  398. package/libs/instance-factories/views/templates/shared/base-generator.js.map +1 -0
  399. package/libs/instance-factories/views/templates/shared/base-generator.ts +608 -0
  400. package/libs/instance-factories/views/templates/shared/component-metadata.d.ts +254 -0
  401. package/libs/instance-factories/views/templates/shared/component-metadata.d.ts.map +1 -0
  402. package/libs/instance-factories/views/templates/shared/component-metadata.js +602 -0
  403. package/libs/instance-factories/views/templates/shared/component-metadata.js.map +1 -0
  404. package/libs/instance-factories/views/templates/shared/component-metadata.ts +803 -0
  405. package/libs/instance-factories/views/templates/shared/composite-pattern-types.ts +250 -0
  406. package/libs/instance-factories/views/templates/shared/composite-patterns.ts +535 -0
  407. package/libs/instance-factories/views/templates/shared/index.ts +68 -0
  408. package/libs/instance-factories/views/templates/shared/pattern-validator.ts +279 -0
  409. package/libs/instance-factories/views/templates/shared/property-mapper.d.ts +149 -0
  410. package/libs/instance-factories/views/templates/shared/property-mapper.d.ts.map +1 -0
  411. package/libs/instance-factories/views/templates/shared/property-mapper.js +580 -0
  412. package/libs/instance-factories/views/templates/shared/property-mapper.js.map +1 -0
  413. package/libs/instance-factories/views/templates/shared/property-mapper.ts +700 -0
  414. package/libs/instance-factories/views/templates/shared/syntax-mapper.d.ts +143 -0
  415. package/libs/instance-factories/views/templates/shared/syntax-mapper.d.ts.map +1 -0
  416. package/libs/instance-factories/views/templates/shared/syntax-mapper.js +420 -0
  417. package/libs/instance-factories/views/templates/shared/syntax-mapper.js.map +1 -0
  418. package/libs/instance-factories/views/templates/shared/syntax-mapper.ts +539 -0
  419. package/package.json +42 -0
  420. package/schema/SPECVERSE-SCHEMA.json +4274 -0
@@ -0,0 +1,580 @@
1
+ /**
2
+ * Property Mapper - Multi-Framework Support
3
+ *
4
+ * Maps SpecVerse component properties to framework-specific property values.
5
+ * Supports React (shadcn, MUI, antd), Vue (Vuetify, Element Plus), Svelte (Carbon),
6
+ * Angular (Material), and runtime interpretation.
7
+ *
8
+ * Architecture:
9
+ * - PropertyTarget: All supported frameworks/libraries + semantic layer
10
+ * - COMMON_PROPERTY_MAPPINGS: Universal properties (variant, size, color, position, orientation)
11
+ * - COMPONENT_SPECIFIC_MAPPINGS: Per-component overrides
12
+ * - mapProperty(): Main mapping function with fallback chain
13
+ */
14
+ export const FRAMEWORK_TARGETS = {
15
+ react: ['shadcn', 'mui', 'antd'],
16
+ vue: ['vuetify', 'elementPlus', 'primeVue'],
17
+ svelte: ['carbon', 'svelteui'],
18
+ angular: ['angularMaterial', 'primeNg'],
19
+ runtime: ['runtime']
20
+ };
21
+ // ============================================================================
22
+ // Common Property Mappings (Universal across all component types)
23
+ // ============================================================================
24
+ /**
25
+ * Variant mappings - Primary, secondary, destructive actions
26
+ * Consistency: 60-85% across frameworks (HIGH)
27
+ */
28
+ export const VARIANT_MAPPING = {
29
+ primary: {
30
+ shadcn: 'default',
31
+ mui: 'contained',
32
+ antd: 'primary',
33
+ vuetify: 'primary',
34
+ elementPlus: 'primary',
35
+ primeVue: 'primary',
36
+ carbon: 'primary',
37
+ svelteui: 'primary',
38
+ angularMaterial: 'primary',
39
+ primeNg: 'primary',
40
+ runtime: 'primary',
41
+ semantic: 'primary-action'
42
+ },
43
+ secondary: {
44
+ shadcn: 'secondary',
45
+ mui: 'outlined',
46
+ antd: 'default',
47
+ vuetify: 'secondary',
48
+ elementPlus: 'default',
49
+ primeVue: 'secondary',
50
+ carbon: 'secondary',
51
+ svelteui: 'secondary',
52
+ angularMaterial: 'accent',
53
+ primeNg: 'secondary',
54
+ runtime: 'secondary',
55
+ semantic: 'secondary-action'
56
+ },
57
+ destructive: {
58
+ shadcn: 'destructive',
59
+ mui: 'error',
60
+ antd: 'danger',
61
+ vuetify: 'error',
62
+ elementPlus: 'danger',
63
+ primeVue: 'danger',
64
+ carbon: 'danger',
65
+ svelteui: 'error',
66
+ angularMaterial: 'warn',
67
+ primeNg: 'danger',
68
+ runtime: 'destructive',
69
+ semantic: 'destructive-action'
70
+ },
71
+ ghost: {
72
+ shadcn: 'ghost',
73
+ mui: 'text',
74
+ antd: 'link',
75
+ vuetify: 'text',
76
+ elementPlus: 'text',
77
+ primeVue: 'text',
78
+ carbon: 'ghost',
79
+ svelteui: 'ghost',
80
+ angularMaterial: 'basic',
81
+ primeNg: 'text',
82
+ runtime: 'ghost',
83
+ semantic: 'minimal-action'
84
+ },
85
+ outline: {
86
+ shadcn: 'outline',
87
+ mui: 'outlined',
88
+ antd: 'default',
89
+ vuetify: 'outlined',
90
+ elementPlus: 'plain',
91
+ primeVue: 'outlined',
92
+ carbon: 'tertiary',
93
+ svelteui: 'outline',
94
+ angularMaterial: 'stroked',
95
+ primeNg: 'outlined',
96
+ runtime: 'outline',
97
+ semantic: 'outlined-action'
98
+ }
99
+ };
100
+ /**
101
+ * Size mappings - Component dimensions
102
+ * Consistency: 85-90% across frameworks (VERY HIGH)
103
+ */
104
+ export const SIZE_MAPPING = {
105
+ small: {
106
+ shadcn: 'sm',
107
+ mui: 'small',
108
+ antd: 'small',
109
+ vuetify: 'small',
110
+ elementPlus: 'small',
111
+ primeVue: 'small',
112
+ carbon: 'sm',
113
+ svelteui: 'sm',
114
+ angularMaterial: 'small',
115
+ primeNg: 'small',
116
+ runtime: 'small',
117
+ semantic: 'compact'
118
+ },
119
+ medium: {
120
+ shadcn: 'default',
121
+ mui: 'medium',
122
+ antd: 'middle',
123
+ vuetify: 'default',
124
+ elementPlus: 'default',
125
+ primeVue: 'default',
126
+ carbon: 'md',
127
+ svelteui: 'md',
128
+ angularMaterial: 'medium',
129
+ primeNg: 'medium',
130
+ runtime: 'medium',
131
+ semantic: 'standard'
132
+ },
133
+ large: {
134
+ shadcn: 'lg',
135
+ mui: 'large',
136
+ antd: 'large',
137
+ vuetify: 'large',
138
+ elementPlus: 'large',
139
+ primeVue: 'large',
140
+ carbon: 'lg',
141
+ svelteui: 'lg',
142
+ angularMaterial: 'large',
143
+ primeNg: 'large',
144
+ runtime: 'large',
145
+ semantic: 'spacious'
146
+ }
147
+ };
148
+ /**
149
+ * Color mappings - Semantic color values
150
+ * Consistency: 70-80% across frameworks (HIGH)
151
+ */
152
+ export const COLOR_MAPPING = {
153
+ primary: {
154
+ shadcn: 'primary',
155
+ mui: 'primary',
156
+ antd: 'primary',
157
+ vuetify: 'primary',
158
+ elementPlus: 'primary',
159
+ primeVue: 'primary',
160
+ carbon: 'blue',
161
+ svelteui: 'primary',
162
+ angularMaterial: 'primary',
163
+ primeNg: 'primary',
164
+ runtime: 'primary',
165
+ semantic: 'primary-color'
166
+ },
167
+ success: {
168
+ shadcn: 'success',
169
+ mui: 'success',
170
+ antd: 'success',
171
+ vuetify: 'success',
172
+ elementPlus: 'success',
173
+ primeVue: 'success',
174
+ carbon: 'green',
175
+ svelteui: 'success',
176
+ angularMaterial: 'success',
177
+ primeNg: 'success',
178
+ runtime: 'success',
179
+ semantic: 'positive-feedback'
180
+ },
181
+ warning: {
182
+ shadcn: 'warning',
183
+ mui: 'warning',
184
+ antd: 'warning',
185
+ vuetify: 'warning',
186
+ elementPlus: 'warning',
187
+ primeVue: 'warning',
188
+ carbon: 'yellow',
189
+ svelteui: 'warning',
190
+ angularMaterial: 'warn',
191
+ primeNg: 'warning',
192
+ runtime: 'warning',
193
+ semantic: 'caution-feedback'
194
+ },
195
+ error: {
196
+ shadcn: 'destructive',
197
+ mui: 'error',
198
+ antd: 'error',
199
+ vuetify: 'error',
200
+ elementPlus: 'error',
201
+ primeVue: 'danger',
202
+ carbon: 'red',
203
+ svelteui: 'error',
204
+ angularMaterial: 'warn',
205
+ primeNg: 'danger',
206
+ runtime: 'error',
207
+ semantic: 'negative-feedback'
208
+ },
209
+ info: {
210
+ shadcn: 'default',
211
+ mui: 'info',
212
+ antd: 'info',
213
+ vuetify: 'info',
214
+ elementPlus: 'info',
215
+ primeVue: 'info',
216
+ carbon: 'cyan',
217
+ svelteui: 'info',
218
+ angularMaterial: 'primary',
219
+ primeNg: 'info',
220
+ runtime: 'info',
221
+ semantic: 'informational-feedback'
222
+ }
223
+ };
224
+ /**
225
+ * Position mappings - Spatial positioning
226
+ * Consistency: 95-100% across frameworks (UNIVERSAL)
227
+ */
228
+ export const POSITION_MAPPING = {
229
+ top: {
230
+ shadcn: 'top',
231
+ mui: 'top',
232
+ antd: 'top',
233
+ vuetify: 'top',
234
+ elementPlus: 'top',
235
+ primeVue: 'top',
236
+ carbon: 'top',
237
+ svelteui: 'top',
238
+ angularMaterial: 'above',
239
+ primeNg: 'top',
240
+ runtime: 'top',
241
+ semantic: 'top-position'
242
+ },
243
+ bottom: {
244
+ shadcn: 'bottom',
245
+ mui: 'bottom',
246
+ antd: 'bottom',
247
+ vuetify: 'bottom',
248
+ elementPlus: 'bottom',
249
+ primeVue: 'bottom',
250
+ carbon: 'bottom',
251
+ svelteui: 'bottom',
252
+ angularMaterial: 'below',
253
+ primeNg: 'bottom',
254
+ runtime: 'bottom',
255
+ semantic: 'bottom-position'
256
+ },
257
+ left: {
258
+ shadcn: 'left',
259
+ mui: 'left',
260
+ antd: 'left',
261
+ vuetify: 'left',
262
+ elementPlus: 'left',
263
+ primeVue: 'left',
264
+ carbon: 'left',
265
+ svelteui: 'left',
266
+ angularMaterial: 'before',
267
+ primeNg: 'left',
268
+ runtime: 'left',
269
+ semantic: 'left-position'
270
+ },
271
+ right: {
272
+ shadcn: 'right',
273
+ mui: 'right',
274
+ antd: 'right',
275
+ vuetify: 'right',
276
+ elementPlus: 'right',
277
+ primeVue: 'right',
278
+ carbon: 'right',
279
+ svelteui: 'right',
280
+ angularMaterial: 'after',
281
+ primeNg: 'right',
282
+ runtime: 'right',
283
+ semantic: 'right-position'
284
+ }
285
+ };
286
+ /**
287
+ * Orientation mappings - Layout direction
288
+ * Consistency: 90-95% across frameworks (VERY HIGH)
289
+ */
290
+ export const ORIENTATION_MAPPING = {
291
+ horizontal: {
292
+ shadcn: 'horizontal',
293
+ mui: 'horizontal',
294
+ antd: 'horizontal',
295
+ vuetify: 'horizontal',
296
+ elementPlus: 'horizontal',
297
+ primeVue: 'horizontal',
298
+ carbon: 'horizontal',
299
+ svelteui: 'horizontal',
300
+ angularMaterial: 'horizontal',
301
+ primeNg: 'horizontal',
302
+ runtime: 'horizontal',
303
+ semantic: 'horizontal-layout'
304
+ },
305
+ vertical: {
306
+ shadcn: 'vertical',
307
+ mui: 'vertical',
308
+ antd: 'vertical',
309
+ vuetify: 'vertical',
310
+ elementPlus: 'vertical',
311
+ primeVue: 'vertical',
312
+ carbon: 'vertical',
313
+ svelteui: 'vertical',
314
+ angularMaterial: 'vertical',
315
+ primeNg: 'vertical',
316
+ runtime: 'vertical',
317
+ semantic: 'vertical-layout'
318
+ }
319
+ };
320
+ /**
321
+ * All common property mappings
322
+ */
323
+ export const COMMON_PROPERTY_MAPPINGS = {
324
+ variant: VARIANT_MAPPING,
325
+ size: SIZE_MAPPING,
326
+ color: COLOR_MAPPING,
327
+ position: POSITION_MAPPING,
328
+ orientation: ORIENTATION_MAPPING
329
+ };
330
+ // ============================================================================
331
+ // Component-Specific Property Mappings (Overrides)
332
+ // ============================================================================
333
+ /**
334
+ * Component-specific overrides for properties that differ from common mappings
335
+ *
336
+ * Example: Table pagination size works differently than button size
337
+ */
338
+ export const COMPONENT_SPECIFIC_MAPPINGS = {
339
+ table: {
340
+ size: {
341
+ small: {
342
+ shadcn: 'sm',
343
+ mui: 'small',
344
+ antd: 'small',
345
+ vuetify: 'small',
346
+ elementPlus: 'small',
347
+ primeVue: 'small',
348
+ carbon: 'sm',
349
+ svelteui: 'compact',
350
+ angularMaterial: 'small',
351
+ primeNg: 'small',
352
+ runtime: 'small',
353
+ semantic: 'compact-table'
354
+ },
355
+ medium: {
356
+ shadcn: 'default',
357
+ mui: 'medium',
358
+ antd: 'middle',
359
+ vuetify: 'default',
360
+ elementPlus: 'default',
361
+ primeVue: 'default',
362
+ carbon: 'md',
363
+ svelteui: 'default',
364
+ angularMaterial: 'medium',
365
+ primeNg: 'medium',
366
+ runtime: 'medium',
367
+ semantic: 'standard-table'
368
+ },
369
+ large: {
370
+ shadcn: 'lg',
371
+ mui: 'large',
372
+ antd: 'large',
373
+ vuetify: 'large',
374
+ elementPlus: 'large',
375
+ primeVue: 'large',
376
+ carbon: 'lg',
377
+ svelteui: 'relaxed',
378
+ angularMaterial: 'large',
379
+ primeNg: 'large',
380
+ runtime: 'large',
381
+ semantic: 'spacious-table'
382
+ }
383
+ }
384
+ },
385
+ input: {
386
+ variant: {
387
+ // Inputs use different variant semantics
388
+ filled: {
389
+ shadcn: 'default',
390
+ mui: 'filled',
391
+ antd: 'filled',
392
+ vuetify: 'filled',
393
+ elementPlus: 'default',
394
+ primeVue: 'filled',
395
+ carbon: 'default',
396
+ svelteui: 'filled',
397
+ angularMaterial: 'fill',
398
+ primeNg: 'filled',
399
+ runtime: 'filled',
400
+ semantic: 'filled-input'
401
+ },
402
+ outlined: {
403
+ shadcn: 'outline',
404
+ mui: 'outlined',
405
+ antd: 'outlined',
406
+ vuetify: 'outlined',
407
+ elementPlus: 'default',
408
+ primeVue: 'outlined',
409
+ carbon: 'outline',
410
+ svelteui: 'outlined',
411
+ angularMaterial: 'outline',
412
+ primeNg: 'outlined',
413
+ runtime: 'outlined',
414
+ semantic: 'outlined-input'
415
+ },
416
+ standard: {
417
+ shadcn: 'default',
418
+ mui: 'standard',
419
+ antd: 'borderless',
420
+ vuetify: 'underlined',
421
+ elementPlus: 'default',
422
+ primeVue: 'standard',
423
+ carbon: 'default',
424
+ svelteui: 'standard',
425
+ angularMaterial: 'standard',
426
+ primeNg: 'standard',
427
+ runtime: 'standard',
428
+ semantic: 'standard-input'
429
+ }
430
+ }
431
+ },
432
+ badge: {
433
+ variant: {
434
+ // Badges use different variant semantics
435
+ dot: {
436
+ shadcn: 'default',
437
+ mui: 'dot',
438
+ antd: 'default',
439
+ vuetify: 'dot',
440
+ elementPlus: 'default',
441
+ primeVue: 'default',
442
+ carbon: 'default',
443
+ svelteui: 'dot',
444
+ angularMaterial: 'default',
445
+ primeNg: 'default',
446
+ runtime: 'dot',
447
+ semantic: 'notification-indicator'
448
+ },
449
+ standard: {
450
+ shadcn: 'default',
451
+ mui: 'standard',
452
+ antd: 'default',
453
+ vuetify: 'default',
454
+ elementPlus: 'default',
455
+ primeVue: 'default',
456
+ carbon: 'default',
457
+ svelteui: 'default',
458
+ angularMaterial: 'default',
459
+ primeNg: 'default',
460
+ runtime: 'standard',
461
+ semantic: 'count-indicator'
462
+ }
463
+ }
464
+ }
465
+ };
466
+ // ============================================================================
467
+ // Mapping Functions
468
+ // ============================================================================
469
+ /**
470
+ * Maps a single property value from SpecVerse to a target framework/library
471
+ *
472
+ * Fallback chain:
473
+ * 1. Component-specific mapping
474
+ * 2. Common property mapping
475
+ * 3. Original value (passthrough)
476
+ *
477
+ * @param componentType - Component type (e.g., 'button', 'table')
478
+ * @param propertyName - Property name (e.g., 'variant', 'size')
479
+ * @param specverseValue - SpecVerse property value (e.g., 'primary', 'large')
480
+ * @param target - Target framework/library
481
+ * @returns Mapped property value for target
482
+ */
483
+ export function mapProperty(componentType, propertyName, specverseValue, target) {
484
+ // Handle non-string primitive values (numbers, booleans) - pass through
485
+ if (typeof specverseValue !== 'string') {
486
+ return specverseValue;
487
+ }
488
+ // 1. Try component-specific mapping
489
+ const componentMapping = COMPONENT_SPECIFIC_MAPPINGS[componentType]?.[propertyName]?.[specverseValue];
490
+ if (componentMapping && target in componentMapping) {
491
+ return componentMapping[target];
492
+ }
493
+ // 2. Try common property mapping
494
+ const commonMapping = COMMON_PROPERTY_MAPPINGS[propertyName]?.[specverseValue];
495
+ if (commonMapping && target in commonMapping) {
496
+ return commonMapping[target];
497
+ }
498
+ // 3. Fallback: Return original value
499
+ return specverseValue;
500
+ }
501
+ /**
502
+ * Gets the semantic meaning of a property value (universal across frameworks)
503
+ *
504
+ * @param propertyName - Property name
505
+ * @param specverseValue - SpecVerse property value
506
+ * @returns Semantic meaning string
507
+ */
508
+ export function getSemanticMeaning(propertyName, specverseValue) {
509
+ const commonMapping = COMMON_PROPERTY_MAPPINGS[propertyName]?.[specverseValue];
510
+ if (commonMapping && 'semantic' in commonMapping) {
511
+ return commonMapping.semantic;
512
+ }
513
+ return `${propertyName}-${specverseValue}`;
514
+ }
515
+ /**
516
+ * Maps all properties of a component to a target framework/library
517
+ *
518
+ * @param componentType - Component type
519
+ * @param properties - Object containing all component properties
520
+ * @param target - Target framework/library
521
+ * @returns Object with all properties mapped to target
522
+ */
523
+ export function mapProperties(componentType, properties, target) {
524
+ const mappedProperties = {};
525
+ for (const [propName, propValue] of Object.entries(properties)) {
526
+ mappedProperties[propName] = mapProperty(componentType, propName, propValue, target);
527
+ }
528
+ return mappedProperties;
529
+ }
530
+ /**
531
+ * Gets all framework targets for a given framework category
532
+ *
533
+ * @param category - Framework category
534
+ * @returns Array of property targets for that framework
535
+ */
536
+ export function getFrameworkTargets(category) {
537
+ return FRAMEWORK_TARGETS[category];
538
+ }
539
+ /**
540
+ * Checks if a property value has a mapping for a specific target
541
+ *
542
+ * @param componentType - Component type
543
+ * @param propertyName - Property name
544
+ * @param specverseValue - SpecVerse property value
545
+ * @param target - Target framework/library
546
+ * @returns True if mapping exists, false otherwise
547
+ */
548
+ export function hasMapping(componentType, propertyName, specverseValue, target) {
549
+ const componentMapping = COMPONENT_SPECIFIC_MAPPINGS[componentType]?.[propertyName]?.[specverseValue];
550
+ if (componentMapping && target in componentMapping) {
551
+ return true;
552
+ }
553
+ const commonMapping = COMMON_PROPERTY_MAPPINGS[propertyName]?.[specverseValue];
554
+ if (commonMapping && target in commonMapping) {
555
+ return true;
556
+ }
557
+ return false;
558
+ }
559
+ /**
560
+ * Gets all available mappings for a property across all frameworks
561
+ *
562
+ * Useful for debugging and documentation generation
563
+ *
564
+ * @param componentType - Component type
565
+ * @param propertyName - Property name
566
+ * @param specverseValue - SpecVerse property value
567
+ * @returns Object with all target mappings
568
+ */
569
+ export function getAllMappings(componentType, propertyName, specverseValue) {
570
+ const componentMapping = COMPONENT_SPECIFIC_MAPPINGS[componentType]?.[propertyName]?.[specverseValue];
571
+ if (componentMapping) {
572
+ return componentMapping;
573
+ }
574
+ const commonMapping = COMMON_PROPERTY_MAPPINGS[propertyName]?.[specverseValue];
575
+ if (commonMapping) {
576
+ return commonMapping;
577
+ }
578
+ return null;
579
+ }
580
+ //# sourceMappingURL=property-mapper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"property-mapper.js","sourceRoot":"","sources":["property-mapper.ts"],"names":[],"mappings":"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"}