@specverse/engines 4.1.30 → 4.2.1

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 (285) hide show
  1. package/assets/examples/manifests/frontend-only.yaml +3 -6
  2. package/assets/examples/manifests/fullstack-app.yaml +5 -7
  3. package/assets/examples/manifests/fullstack-monorepo.yaml +3 -6
  4. package/assets/templates/default/specs/main.specly +65 -0
  5. package/dist/inference/comprehensive-engine.d.ts.map +1 -1
  6. package/dist/inference/comprehensive-engine.js +3 -19
  7. package/dist/inference/comprehensive-engine.js.map +1 -1
  8. package/dist/inference/core/rule-engine.d.ts +31 -0
  9. package/dist/inference/core/rule-engine.d.ts.map +1 -1
  10. package/dist/inference/core/rule-engine.js +117 -33
  11. package/dist/inference/core/rule-engine.js.map +1 -1
  12. package/dist/inference/core/rule-file-types.d.ts +0 -2
  13. package/dist/inference/core/rule-file-types.d.ts.map +1 -1
  14. package/dist/inference/core/rule-file-types.js +3 -6
  15. package/dist/inference/core/rule-file-types.js.map +1 -1
  16. package/dist/inference/core/rule-loader.d.ts +5 -15
  17. package/dist/inference/core/rule-loader.d.ts.map +1 -1
  18. package/dist/inference/core/rule-loader.js +43 -132
  19. package/dist/inference/core/rule-loader.js.map +1 -1
  20. package/dist/inference/core/types.d.ts +0 -6
  21. package/dist/inference/core/types.d.ts.map +1 -1
  22. package/dist/inference/core/types.js +0 -4
  23. package/dist/inference/core/types.js.map +1 -1
  24. package/dist/inference/logical/generators/component-type-resolver.d.ts +0 -26
  25. package/dist/inference/logical/generators/component-type-resolver.d.ts.map +1 -1
  26. package/dist/inference/logical/generators/component-type-resolver.js +0 -19
  27. package/dist/inference/logical/generators/component-type-resolver.js.map +1 -1
  28. package/dist/inference/logical/generators/specialist-view-expander.d.ts +1 -17
  29. package/dist/inference/logical/generators/specialist-view-expander.d.ts.map +1 -1
  30. package/dist/inference/logical/generators/specialist-view-expander.js +0 -15
  31. package/dist/inference/logical/generators/specialist-view-expander.js.map +1 -1
  32. package/dist/inference/logical/generators/view-generator.d.ts +4 -14
  33. package/dist/inference/logical/generators/view-generator.d.ts.map +1 -1
  34. package/dist/inference/logical/generators/view-generator.js +6 -26
  35. package/dist/inference/logical/generators/view-generator.js.map +1 -1
  36. package/dist/inference/logical/index.d.ts +2 -2
  37. package/dist/inference/logical/index.d.ts.map +1 -1
  38. package/dist/inference/logical/logical-engine.d.ts.map +1 -1
  39. package/dist/inference/logical/logical-engine.js +17 -80
  40. package/dist/inference/logical/logical-engine.js.map +1 -1
  41. package/dist/inference/quint-transpiler.d.ts +5 -3
  42. package/dist/inference/quint-transpiler.d.ts.map +1 -1
  43. package/dist/inference/quint-transpiler.js +11 -6
  44. package/dist/inference/quint-transpiler.js.map +1 -1
  45. package/dist/libs/instance-factories/CURVED-INTERFACE.md +278 -0
  46. package/dist/libs/instance-factories/README.md +73 -0
  47. package/dist/libs/instance-factories/applications/README.md +51 -0
  48. package/dist/libs/instance-factories/applications/generic-app.yaml +52 -0
  49. package/{libs/instance-factories/applications/react-app.yaml → dist/libs/instance-factories/applications/react-app-runtime.yaml} +30 -77
  50. package/dist/libs/instance-factories/applications/react-app-starter.yaml +143 -0
  51. package/dist/libs/instance-factories/applications/templates/react/env-example-generator.js +24 -2
  52. package/dist/libs/instance-factories/applications/templates/react/vite-config-generator.js +54 -33
  53. package/dist/libs/instance-factories/applications/templates/react-starter/README.md +211 -0
  54. package/dist/libs/instance-factories/applications/templates/react-starter/api-types-starter-generator.js +69 -0
  55. package/dist/libs/instance-factories/applications/templates/react-starter/app-tsx-generator.js +110 -0
  56. package/dist/libs/instance-factories/applications/templates/react-starter/belongs-to.js +40 -0
  57. package/dist/libs/instance-factories/applications/templates/react-starter/dashboard-body-composer.js +129 -0
  58. package/dist/libs/instance-factories/applications/templates/react-starter/detail-body-composer.js +80 -0
  59. package/dist/libs/instance-factories/applications/templates/react-starter/form-body-composer.js +217 -0
  60. package/dist/libs/instance-factories/applications/templates/react-starter/helpers-emitter.js +51 -0
  61. package/dist/libs/instance-factories/applications/templates/react-starter/html-to-jsx.js +192 -0
  62. package/dist/libs/instance-factories/applications/templates/react-starter/list-body-composer.js +56 -0
  63. package/dist/libs/instance-factories/applications/templates/react-starter/orchestrator.js +41 -0
  64. package/dist/libs/instance-factories/applications/templates/react-starter/package-json-generator.js +38 -0
  65. package/dist/libs/instance-factories/applications/templates/react-starter/regen-safety.js +89 -0
  66. package/dist/libs/instance-factories/applications/templates/react-starter/skeletons/dashboard.tsx.template +49 -0
  67. package/dist/libs/instance-factories/applications/templates/react-starter/skeletons/detail.tsx.template +96 -0
  68. package/dist/libs/instance-factories/applications/templates/react-starter/skeletons/form.tsx.template +116 -0
  69. package/dist/libs/instance-factories/applications/templates/react-starter/skeletons/list.tsx.template +74 -0
  70. package/dist/libs/instance-factories/applications/templates/react-starter/use-api-hooks-starter-generator.js +95 -0
  71. package/dist/libs/instance-factories/applications/templates/react-starter/view-emitter.js +81 -0
  72. package/dist/libs/instance-factories/applications/templates/react-starter/views-generator.js +66 -0
  73. package/dist/libs/instance-factories/archived/fastify-prisma.yaml +104 -0
  74. package/dist/libs/instance-factories/cli/README.md +43 -0
  75. package/dist/libs/instance-factories/cli/commander-js.yaml +55 -0
  76. package/dist/libs/instance-factories/cli/templates/commander/command-generator.js +63 -12
  77. package/dist/libs/instance-factories/communication/README.md +47 -0
  78. package/dist/libs/instance-factories/communication/event-emitter.yaml +60 -0
  79. package/dist/libs/instance-factories/communication/rabbitmq-events.yaml +87 -0
  80. package/dist/libs/instance-factories/controllers/README.md +42 -0
  81. package/dist/libs/instance-factories/controllers/fastify.yaml +139 -0
  82. package/dist/libs/instance-factories/controllers/templates/fastify/server-generator.js +29 -2
  83. package/dist/libs/instance-factories/infrastructure/README.md +29 -0
  84. package/dist/libs/instance-factories/infrastructure/docker-k8s.yaml +61 -0
  85. package/dist/libs/instance-factories/orms/README.md +54 -0
  86. package/dist/libs/instance-factories/orms/prisma.yaml +89 -0
  87. package/dist/libs/instance-factories/orms/templates/prisma/schema-generator.js +2 -2
  88. package/dist/libs/instance-factories/scaffolding/README.md +49 -0
  89. package/dist/libs/instance-factories/scaffolding/generic-scaffold.yaml +65 -0
  90. package/dist/libs/instance-factories/sdks/README.md +28 -0
  91. package/dist/libs/instance-factories/sdks/python-sdk.yaml +66 -0
  92. package/dist/libs/instance-factories/sdks/typescript-sdk.yaml +59 -0
  93. package/dist/libs/instance-factories/services/README.md +55 -0
  94. package/dist/libs/instance-factories/services/prisma-services.yaml +71 -0
  95. package/dist/libs/instance-factories/storage/README.md +34 -0
  96. package/dist/libs/instance-factories/storage/mongodb.yaml +79 -0
  97. package/dist/libs/instance-factories/storage/postgresql.yaml +75 -0
  98. package/dist/libs/instance-factories/storage/redis.yaml +79 -0
  99. package/dist/libs/instance-factories/testing/README.md +40 -0
  100. package/dist/libs/instance-factories/testing/vitest-tests.yaml +63 -0
  101. package/dist/libs/instance-factories/tools/README.md +70 -0
  102. package/dist/libs/instance-factories/tools/mcp.yaml +36 -0
  103. package/dist/libs/instance-factories/tools/vscode.yaml +35 -0
  104. package/dist/libs/instance-factories/validation/README.md +38 -0
  105. package/dist/libs/instance-factories/validation/zod.yaml +56 -0
  106. package/dist/realize/engines/code-generator.d.ts.map +1 -1
  107. package/dist/realize/engines/code-generator.js +3 -0
  108. package/dist/realize/engines/code-generator.js.map +1 -1
  109. package/dist/realize/index.d.ts.map +1 -1
  110. package/dist/realize/index.js +15 -22
  111. package/dist/realize/index.js.map +1 -1
  112. package/dist/registry/utils/manifest-adapter.d.ts +8 -1
  113. package/dist/registry/utils/manifest-adapter.d.ts.map +1 -1
  114. package/dist/registry/utils/manifest-adapter.js +8 -1
  115. package/dist/registry/utils/manifest-adapter.js.map +1 -1
  116. package/libs/instance-factories/applications/react-app-starter.yaml +143 -0
  117. package/libs/instance-factories/applications/templates/react/env-example-generator.ts +24 -2
  118. package/libs/instance-factories/applications/templates/react/vite-config-generator.ts +54 -33
  119. package/libs/instance-factories/applications/templates/react-starter/README.md +211 -0
  120. package/libs/instance-factories/applications/templates/react-starter/__tests__/dashboard-body-composer.test.ts +153 -0
  121. package/libs/instance-factories/applications/templates/react-starter/__tests__/detail-body-composer.test.ts +146 -0
  122. package/libs/instance-factories/applications/templates/react-starter/__tests__/form-body-composer.test.ts +188 -0
  123. package/libs/instance-factories/applications/templates/react-starter/__tests__/helpers-emitter.test.ts +55 -0
  124. package/libs/instance-factories/applications/templates/react-starter/__tests__/html-to-jsx.test.ts +140 -0
  125. package/libs/instance-factories/applications/templates/react-starter/__tests__/list-body-composer.test.ts +146 -0
  126. package/libs/instance-factories/applications/templates/react-starter/__tests__/orchestrator.test.ts +184 -0
  127. package/libs/instance-factories/applications/templates/react-starter/__tests__/parity-p2-factory-imports.test.ts +116 -0
  128. package/libs/instance-factories/applications/templates/react-starter/__tests__/parity-p3-rendered-output.test.ts +183 -0
  129. package/libs/instance-factories/applications/templates/react-starter/__tests__/regen-safety.test.ts +144 -0
  130. package/libs/instance-factories/applications/templates/react-starter/__tests__/starter-generators.test.ts +114 -0
  131. package/libs/instance-factories/applications/templates/react-starter/__tests__/view-emitter.test.ts +107 -0
  132. package/libs/instance-factories/applications/templates/react-starter/__tests__/views-generator.test.ts +139 -0
  133. package/libs/instance-factories/applications/templates/react-starter/api-types-starter-generator.ts +98 -0
  134. package/libs/instance-factories/applications/templates/react-starter/app-tsx-generator.ts +141 -0
  135. package/libs/instance-factories/applications/templates/react-starter/belongs-to.ts +82 -0
  136. package/libs/instance-factories/applications/templates/react-starter/dashboard-body-composer.ts +189 -0
  137. package/libs/instance-factories/applications/templates/react-starter/detail-body-composer.ts +135 -0
  138. package/libs/instance-factories/applications/templates/react-starter/form-body-composer.ts +383 -0
  139. package/libs/instance-factories/applications/templates/react-starter/helpers-emitter.ts +66 -0
  140. package/libs/instance-factories/applications/templates/react-starter/html-to-jsx.ts +334 -0
  141. package/libs/instance-factories/applications/templates/react-starter/list-body-composer.ts +146 -0
  142. package/libs/instance-factories/applications/templates/react-starter/orchestrator.ts +95 -0
  143. package/libs/instance-factories/applications/templates/react-starter/package-json-generator.ts +57 -0
  144. package/libs/instance-factories/applications/templates/react-starter/regen-safety.ts +157 -0
  145. package/libs/instance-factories/applications/templates/react-starter/skeletons/dashboard.tsx.template +49 -0
  146. package/libs/instance-factories/applications/templates/react-starter/skeletons/detail.tsx.template +96 -0
  147. package/libs/instance-factories/applications/templates/react-starter/skeletons/form.tsx.template +116 -0
  148. package/libs/instance-factories/applications/templates/react-starter/skeletons/list.tsx.template +74 -0
  149. package/libs/instance-factories/applications/templates/react-starter/use-api-hooks-starter-generator.ts +124 -0
  150. package/libs/instance-factories/applications/templates/react-starter/view-emitter.ts +209 -0
  151. package/libs/instance-factories/applications/templates/react-starter/views-generator.ts +137 -0
  152. package/libs/instance-factories/cli/templates/commander/command-generator.ts +63 -12
  153. package/libs/instance-factories/controllers/fastify.yaml +7 -0
  154. package/libs/instance-factories/controllers/templates/fastify/server-generator.ts +36 -2
  155. package/libs/instance-factories/orms/templates/prisma/schema-generator.ts +11 -4
  156. package/package.json +3 -3
  157. package/dist/libs/instance-factories/applications/templates/react/_view-components-source.js +0 -530
  158. package/dist/libs/instance-factories/applications/templates/react/app-tsx-generator.js +0 -73
  159. package/dist/libs/instance-factories/applications/templates/react/field-helpers-generator.js +0 -99
  160. package/dist/libs/instance-factories/applications/templates/react/package-json-generator.js +0 -49
  161. package/dist/libs/instance-factories/applications/templates/react/pattern-adapter-generator.js +0 -156
  162. package/dist/libs/instance-factories/applications/templates/react/react-pattern-adapter.js +0 -935
  163. package/dist/libs/instance-factories/applications/templates/react/relationship-field-generator.js +0 -143
  164. package/dist/libs/instance-factories/applications/templates/react/tailwind-adapter-generator.js +0 -646
  165. package/dist/libs/instance-factories/applications/templates/react/tailwind-adapter-wrapper-generator.js +0 -65
  166. package/dist/libs/instance-factories/applications/templates/react/view-dashboard-generator.js +0 -143
  167. package/dist/libs/instance-factories/applications/templates/react/view-detail-generator.js +0 -143
  168. package/dist/libs/instance-factories/applications/templates/react/view-form-generator.js +0 -355
  169. package/dist/libs/instance-factories/applications/templates/react/view-list-generator.js +0 -91
  170. package/dist/libs/instance-factories/applications/templates/react/view-router-generator.js +0 -79
  171. package/dist/libs/instance-factories/views/index.js +0 -48
  172. package/dist/libs/instance-factories/views/templates/react/adapters/antd-adapter.js +0 -742
  173. package/dist/libs/instance-factories/views/templates/react/adapters/mui-adapter.js +0 -824
  174. package/dist/libs/instance-factories/views/templates/react/adapters/shadcn-adapter.js +0 -719
  175. package/dist/libs/instance-factories/views/templates/react/app-generator.js +0 -45
  176. package/dist/libs/instance-factories/views/templates/react/components-generator.js +0 -820
  177. package/dist/libs/instance-factories/views/templates/react/forms-generator.js +0 -275
  178. package/dist/libs/instance-factories/views/templates/react/frontend-package-json-generator.js +0 -46
  179. package/dist/libs/instance-factories/views/templates/react/hooks-generator.js +0 -81
  180. package/dist/libs/instance-factories/views/templates/react/index-css-generator.js +0 -9
  181. package/dist/libs/instance-factories/views/templates/react/index-html-generator.js +0 -23
  182. package/dist/libs/instance-factories/views/templates/react/main-tsx-generator.js +0 -21
  183. package/dist/libs/instance-factories/views/templates/react/react-component-generator.js +0 -299
  184. package/dist/libs/instance-factories/views/templates/react/router-generator.js +0 -136
  185. package/dist/libs/instance-factories/views/templates/react/router-generic-generator.js +0 -107
  186. package/dist/libs/instance-factories/views/templates/react/shared-utils-generator.js +0 -187
  187. package/dist/libs/instance-factories/views/templates/react/spec-json-generator.js +0 -7
  188. package/dist/libs/instance-factories/views/templates/react/types-generator.js +0 -56
  189. package/dist/libs/instance-factories/views/templates/react/views-metadata-generator.js +0 -27
  190. package/dist/libs/instance-factories/views/templates/react/vite-config-generator.js +0 -29
  191. package/dist/libs/instance-factories/views/templates/runtime/runtime-view-renderer.js +0 -261
  192. package/dist/libs/instance-factories/views/templates/shared/adapter-types.js +0 -34
  193. package/dist/libs/instance-factories/views/templates/shared/atomic-components-registry.js +0 -800
  194. package/dist/libs/instance-factories/views/templates/shared/base-generator.js +0 -305
  195. package/dist/libs/instance-factories/views/templates/shared/component-metadata.js +0 -517
  196. package/dist/libs/instance-factories/views/templates/shared/composite-pattern-types.js +0 -0
  197. package/dist/libs/instance-factories/views/templates/shared/composite-patterns.js +0 -445
  198. package/dist/libs/instance-factories/views/templates/shared/index.js +0 -80
  199. package/dist/libs/instance-factories/views/templates/shared/pattern-validator.js +0 -210
  200. package/dist/libs/instance-factories/views/templates/shared/property-mapper.js +0 -492
  201. package/dist/libs/instance-factories/views/templates/shared/syntax-mapper.js +0 -321
  202. package/dist/realize/index.js.bak +0 -758
  203. package/libs/instance-factories/applications/templates/react/_view-components-source.ts +0 -555
  204. package/libs/instance-factories/applications/templates/react/app-tsx-generator.ts +0 -94
  205. package/libs/instance-factories/applications/templates/react/field-helpers-generator.ts +0 -106
  206. package/libs/instance-factories/applications/templates/react/package-json-generator.ts +0 -57
  207. package/libs/instance-factories/applications/templates/react/pattern-adapter-generator.ts +0 -179
  208. package/libs/instance-factories/applications/templates/react/react-pattern-adapter.tsx +0 -1347
  209. package/libs/instance-factories/applications/templates/react/relationship-field-generator.ts +0 -150
  210. package/libs/instance-factories/applications/templates/react/tailwind-adapter-generator.ts +0 -704
  211. package/libs/instance-factories/applications/templates/react/tailwind-adapter-wrapper-generator.ts +0 -84
  212. package/libs/instance-factories/applications/templates/react/view-dashboard-generator.ts +0 -150
  213. package/libs/instance-factories/applications/templates/react/view-detail-generator.ts +0 -150
  214. package/libs/instance-factories/applications/templates/react/view-form-generator.ts +0 -362
  215. package/libs/instance-factories/applications/templates/react/view-list-generator.ts +0 -98
  216. package/libs/instance-factories/applications/templates/react/view-router-generator.ts +0 -89
  217. package/libs/instance-factories/views/README.md +0 -62
  218. package/libs/instance-factories/views/index.d.ts +0 -13
  219. package/libs/instance-factories/views/index.d.ts.map +0 -1
  220. package/libs/instance-factories/views/index.js +0 -18
  221. package/libs/instance-factories/views/index.js.map +0 -1
  222. package/libs/instance-factories/views/index.ts +0 -45
  223. package/libs/instance-factories/views/react-components.yaml +0 -129
  224. package/libs/instance-factories/views/templates/ARCHITECTURE.md +0 -198
  225. package/libs/instance-factories/views/templates/react/adapters/antd-adapter.ts +0 -869
  226. package/libs/instance-factories/views/templates/react/adapters/mui-adapter.ts +0 -953
  227. package/libs/instance-factories/views/templates/react/adapters/shadcn-adapter.ts +0 -806
  228. package/libs/instance-factories/views/templates/react/app-generator.ts +0 -55
  229. package/libs/instance-factories/views/templates/react/components-generator.ts +0 -938
  230. package/libs/instance-factories/views/templates/react/forms-generator.ts +0 -325
  231. package/libs/instance-factories/views/templates/react/frontend-package-json-generator.ts +0 -57
  232. package/libs/instance-factories/views/templates/react/hooks-generator.ts +0 -106
  233. package/libs/instance-factories/views/templates/react/index-css-generator.ts +0 -14
  234. package/libs/instance-factories/views/templates/react/index-html-generator.ts +0 -34
  235. package/libs/instance-factories/views/templates/react/main-tsx-generator.ts +0 -29
  236. package/libs/instance-factories/views/templates/react/react-component-generator.d.ts +0 -152
  237. package/libs/instance-factories/views/templates/react/react-component-generator.d.ts.map +0 -1
  238. package/libs/instance-factories/views/templates/react/react-component-generator.js +0 -398
  239. package/libs/instance-factories/views/templates/react/react-component-generator.js.map +0 -1
  240. package/libs/instance-factories/views/templates/react/react-component-generator.ts +0 -533
  241. package/libs/instance-factories/views/templates/react/router-generator.ts +0 -197
  242. package/libs/instance-factories/views/templates/react/router-generic-generator.ts +0 -132
  243. package/libs/instance-factories/views/templates/react/shared-utils-generator.ts +0 -196
  244. package/libs/instance-factories/views/templates/react/spec-json-generator.ts +0 -17
  245. package/libs/instance-factories/views/templates/react/types-generator.ts +0 -76
  246. package/libs/instance-factories/views/templates/react/views-metadata-generator.ts +0 -42
  247. package/libs/instance-factories/views/templates/react/vite-config-generator.ts +0 -38
  248. package/libs/instance-factories/views/templates/runtime/runtime-view-renderer.d.ts.map +0 -1
  249. package/libs/instance-factories/views/templates/runtime/runtime-view-renderer.js.map +0 -1
  250. package/libs/instance-factories/views/templates/runtime/runtime-view-renderer.ts +0 -474
  251. package/libs/instance-factories/views/templates/shared/__tests__/composite-patterns.test.ts +0 -242
  252. package/libs/instance-factories/views/templates/shared/adapter-types.d.ts +0 -77
  253. package/libs/instance-factories/views/templates/shared/adapter-types.d.ts.map +0 -1
  254. package/libs/instance-factories/views/templates/shared/adapter-types.js +0 -47
  255. package/libs/instance-factories/views/templates/shared/adapter-types.js.map +0 -1
  256. package/libs/instance-factories/views/templates/shared/adapter-types.ts +0 -142
  257. package/libs/instance-factories/views/templates/shared/atomic-components-registry.d.ts +0 -63
  258. package/libs/instance-factories/views/templates/shared/atomic-components-registry.d.ts.map +0 -1
  259. package/libs/instance-factories/views/templates/shared/atomic-components-registry.js +0 -822
  260. package/libs/instance-factories/views/templates/shared/atomic-components-registry.js.map +0 -1
  261. package/libs/instance-factories/views/templates/shared/atomic-components-registry.ts +0 -908
  262. package/libs/instance-factories/views/templates/shared/base-generator.d.ts +0 -247
  263. package/libs/instance-factories/views/templates/shared/base-generator.d.ts.map +0 -1
  264. package/libs/instance-factories/views/templates/shared/base-generator.js +0 -363
  265. package/libs/instance-factories/views/templates/shared/base-generator.js.map +0 -1
  266. package/libs/instance-factories/views/templates/shared/base-generator.ts +0 -608
  267. package/libs/instance-factories/views/templates/shared/component-metadata.d.ts +0 -254
  268. package/libs/instance-factories/views/templates/shared/component-metadata.d.ts.map +0 -1
  269. package/libs/instance-factories/views/templates/shared/component-metadata.js +0 -602
  270. package/libs/instance-factories/views/templates/shared/component-metadata.js.map +0 -1
  271. package/libs/instance-factories/views/templates/shared/component-metadata.ts +0 -803
  272. package/libs/instance-factories/views/templates/shared/composite-pattern-types.ts +0 -250
  273. package/libs/instance-factories/views/templates/shared/composite-patterns.ts +0 -535
  274. package/libs/instance-factories/views/templates/shared/index.ts +0 -68
  275. package/libs/instance-factories/views/templates/shared/pattern-validator.ts +0 -279
  276. package/libs/instance-factories/views/templates/shared/property-mapper.d.ts +0 -149
  277. package/libs/instance-factories/views/templates/shared/property-mapper.d.ts.map +0 -1
  278. package/libs/instance-factories/views/templates/shared/property-mapper.js +0 -580
  279. package/libs/instance-factories/views/templates/shared/property-mapper.js.map +0 -1
  280. package/libs/instance-factories/views/templates/shared/property-mapper.ts +0 -700
  281. package/libs/instance-factories/views/templates/shared/syntax-mapper.d.ts +0 -143
  282. package/libs/instance-factories/views/templates/shared/syntax-mapper.d.ts.map +0 -1
  283. package/libs/instance-factories/views/templates/shared/syntax-mapper.js +0 -420
  284. package/libs/instance-factories/views/templates/shared/syntax-mapper.js.map +0 -1
  285. package/libs/instance-factories/views/templates/shared/syntax-mapper.ts +0 -539
@@ -1,602 +0,0 @@
1
- /**
2
- * Component Metadata - Runtime Rendering Hints
3
- *
4
- * Provides metadata for runtime interpretation and dynamic rendering.
5
- * Bridges the static atomic components registry with dynamic runtime engines.
6
- *
7
- * Used by:
8
- * - app-demo runtime engine for dynamic component rendering
9
- * - Documentation generation for component catalogs
10
- * - AI-powered component suggestions
11
- * - IDE tooling and autocomplete
12
- *
13
- * Architecture:
14
- * - Enriches atomic component definitions with runtime hints
15
- * - Provides property descriptions and validation rules
16
- * - Includes rendering capabilities and constraints
17
- * - Supports dynamic component discovery
18
- */
19
- import { ATOMIC_COMPONENTS_REGISTRY } from './atomic-components-registry.js';
20
- // ============================================================================
21
- // Common Property Metadata
22
- // ============================================================================
23
- /**
24
- * Metadata for the 5 universal properties
25
- */
26
- export const COMMON_PROPERTY_METADATA = {
27
- variant: {
28
- name: 'variant',
29
- type: 'enum',
30
- required: false,
31
- default: 'primary',
32
- description: 'Visual style variant for the component',
33
- enumValues: ['primary', 'secondary', 'destructive', 'ghost', 'outline'],
34
- isCommon: true,
35
- affectsLayout: false
36
- },
37
- size: {
38
- name: 'size',
39
- type: 'enum',
40
- required: false,
41
- default: 'medium',
42
- description: 'Size of the component',
43
- enumValues: ['small', 'medium', 'large'],
44
- isCommon: true,
45
- affectsLayout: true
46
- },
47
- color: {
48
- name: 'color',
49
- type: 'enum',
50
- required: false,
51
- default: 'primary',
52
- description: 'Color scheme for the component',
53
- enumValues: ['primary', 'success', 'warning', 'error', 'info'],
54
- isCommon: true,
55
- affectsLayout: false
56
- },
57
- position: {
58
- name: 'position',
59
- type: 'enum',
60
- required: false,
61
- default: 'top',
62
- description: 'Position or alignment of the component',
63
- enumValues: ['top', 'bottom', 'left', 'right'],
64
- isCommon: true,
65
- affectsLayout: true
66
- },
67
- orientation: {
68
- name: 'orientation',
69
- type: 'enum',
70
- required: false,
71
- default: 'horizontal',
72
- description: 'Layout orientation of the component',
73
- enumValues: ['horizontal', 'vertical'],
74
- isCommon: true,
75
- affectsLayout: true
76
- }
77
- };
78
- // ============================================================================
79
- // Component-Specific Metadata Registry
80
- // ============================================================================
81
- /**
82
- * Enhanced metadata for all atomic components
83
- */
84
- export const COMPONENT_METADATA_REGISTRY = {
85
- // Data Display Components
86
- table: {
87
- ...ATOMIC_COMPONENTS_REGISTRY.table,
88
- propertyMetadata: [
89
- {
90
- name: 'columns',
91
- type: 'array',
92
- required: true,
93
- description: 'Column definitions for the table',
94
- validation: { min: 1 }
95
- },
96
- {
97
- name: 'dataSource',
98
- type: 'string',
99
- required: true,
100
- description: 'Model array name for table data'
101
- },
102
- {
103
- name: 'sortable',
104
- type: 'boolean',
105
- required: false,
106
- default: false,
107
- description: 'Enable column sorting',
108
- affectsLayout: false
109
- },
110
- {
111
- name: 'filterable',
112
- type: 'boolean',
113
- required: false,
114
- default: false,
115
- description: 'Enable filtering',
116
- affectsLayout: true
117
- },
118
- {
119
- name: 'pagination',
120
- type: 'boolean',
121
- required: false,
122
- default: true,
123
- description: 'Enable pagination',
124
- affectsLayout: true
125
- },
126
- COMMON_PROPERTY_METADATA.size
127
- ],
128
- eventMetadata: [
129
- {
130
- name: 'onRowClick',
131
- description: 'Fired when a row is clicked',
132
- parameters: [
133
- { name: 'row', type: 'object', description: 'Clicked row data' },
134
- { name: 'index', type: 'number', description: 'Row index' }
135
- ]
136
- },
137
- {
138
- name: 'onSort',
139
- description: 'Fired when column sort changes',
140
- parameters: [
141
- { name: 'column', type: 'string', description: 'Column key' },
142
- { name: 'direction', type: 'string', description: 'Sort direction (asc/desc)' }
143
- ]
144
- }
145
- ],
146
- capabilities: {
147
- supportsChildren: false,
148
- supportsConditional: true,
149
- supportsList: true,
150
- supportsSlots: false,
151
- maxDepth: 1,
152
- preferredPosition: 'leaf'
153
- },
154
- accessibility: {
155
- role: 'table',
156
- keyboardNavigable: true,
157
- requiredAriaAttrs: ['aria-label'],
158
- screenReaderDescription: 'Data table with {columns.length} columns'
159
- },
160
- state: {
161
- hasInternalState: true,
162
- stateProperties: [
163
- { name: 'sortColumn', type: 'string', description: 'Currently sorted column' },
164
- { name: 'sortDirection', type: 'string', description: 'Sort direction (asc/desc)' },
165
- { name: 'currentPage', type: 'number', description: 'Current page number', defaultValue: 1 }
166
- ]
167
- },
168
- related: {
169
- alternatives: ['list', 'grid'],
170
- compositions: ['pagination', 'search'],
171
- containers: ['card', 'container']
172
- }
173
- },
174
- button: {
175
- ...ATOMIC_COMPONENTS_REGISTRY.button,
176
- propertyMetadata: [
177
- COMMON_PROPERTY_METADATA.variant,
178
- COMMON_PROPERTY_METADATA.size,
179
- {
180
- name: 'disabled',
181
- type: 'boolean',
182
- required: false,
183
- default: false,
184
- description: 'Disable button interaction'
185
- },
186
- {
187
- name: 'loading',
188
- type: 'boolean',
189
- required: false,
190
- default: false,
191
- description: 'Show loading state'
192
- },
193
- {
194
- name: 'label',
195
- type: 'string',
196
- required: false,
197
- description: 'Button text label'
198
- }
199
- ],
200
- eventMetadata: [
201
- {
202
- name: 'onClick',
203
- description: 'Fired when button is clicked',
204
- parameters: [
205
- { name: 'event', type: 'MouseEvent', description: 'Click event' }
206
- ],
207
- bubbles: true
208
- }
209
- ],
210
- capabilities: {
211
- supportsChildren: true,
212
- supportsConditional: true,
213
- supportsList: false,
214
- supportsSlots: false,
215
- maxDepth: 1,
216
- preferredPosition: 'leaf'
217
- },
218
- accessibility: {
219
- role: 'button',
220
- keyboardNavigable: true,
221
- requiredAriaAttrs: ['aria-label'],
222
- screenReaderDescription: '{variant} button: {label}'
223
- },
224
- state: {
225
- hasInternalState: false
226
- },
227
- related: {
228
- alternatives: ['link', 'icon-button'],
229
- compositions: ['icon', 'badge'],
230
- containers: ['form', 'card', 'toolbar']
231
- }
232
- },
233
- card: {
234
- ...ATOMIC_COMPONENTS_REGISTRY.card,
235
- propertyMetadata: [
236
- {
237
- name: 'title',
238
- type: 'string',
239
- required: false,
240
- description: 'Card title'
241
- },
242
- {
243
- name: 'elevation',
244
- type: 'enum',
245
- required: false,
246
- default: 'medium',
247
- description: 'Shadow depth',
248
- enumValues: ['none', 'low', 'medium', 'high']
249
- },
250
- COMMON_PROPERTY_METADATA.size
251
- ],
252
- capabilities: {
253
- supportsChildren: true,
254
- supportsConditional: true,
255
- supportsList: true,
256
- supportsSlots: true,
257
- maxDepth: 3,
258
- preferredPosition: 'container'
259
- },
260
- accessibility: {
261
- role: 'article',
262
- keyboardNavigable: false,
263
- screenReaderDescription: 'Card: {title}'
264
- },
265
- state: {
266
- hasInternalState: false
267
- },
268
- related: {
269
- alternatives: ['panel', 'container'],
270
- compositions: ['button', 'image', 'text', 'list'],
271
- containers: ['grid', 'container']
272
- }
273
- },
274
- input: {
275
- ...ATOMIC_COMPONENTS_REGISTRY.input,
276
- propertyMetadata: [
277
- {
278
- name: 'type',
279
- type: 'enum',
280
- required: false,
281
- default: 'text',
282
- description: 'Input type',
283
- enumValues: ['text', 'email', 'password', 'number', 'tel', 'url']
284
- },
285
- {
286
- name: 'placeholder',
287
- type: 'string',
288
- required: false,
289
- description: 'Placeholder text'
290
- },
291
- {
292
- name: 'required',
293
- type: 'boolean',
294
- required: false,
295
- default: false,
296
- description: 'Field is required'
297
- },
298
- {
299
- name: 'disabled',
300
- type: 'boolean',
301
- required: false,
302
- default: false,
303
- description: 'Disable input'
304
- },
305
- COMMON_PROPERTY_METADATA.size,
306
- {
307
- name: 'variant',
308
- type: 'enum',
309
- required: false,
310
- default: 'outlined',
311
- description: 'Visual style variant',
312
- enumValues: ['filled', 'outlined', 'standard'],
313
- isCommon: true
314
- }
315
- ],
316
- eventMetadata: [
317
- {
318
- name: 'onChange',
319
- description: 'Fired when input value changes',
320
- parameters: [
321
- { name: 'value', type: 'string', description: 'New value' },
322
- { name: 'event', type: 'Event', description: 'Change event' }
323
- ]
324
- },
325
- {
326
- name: 'onBlur',
327
- description: 'Fired when input loses focus',
328
- parameters: [
329
- { name: 'event', type: 'FocusEvent', description: 'Blur event' }
330
- ]
331
- }
332
- ],
333
- capabilities: {
334
- supportsChildren: false,
335
- supportsConditional: true,
336
- supportsList: false,
337
- supportsSlots: false,
338
- maxDepth: 0,
339
- preferredPosition: 'leaf'
340
- },
341
- accessibility: {
342
- role: 'textbox',
343
- keyboardNavigable: true,
344
- requiredAriaAttrs: ['aria-label', 'aria-required'],
345
- screenReaderDescription: '{type} input: {placeholder}'
346
- },
347
- state: {
348
- hasInternalState: true,
349
- stateProperties: [
350
- { name: 'value', type: 'string', description: 'Current input value', defaultValue: '' },
351
- { name: 'isFocused', type: 'boolean', description: 'Input has focus', defaultValue: false }
352
- ]
353
- },
354
- related: {
355
- alternatives: ['textarea', 'select'],
356
- compositions: ['label', 'validation-message'],
357
- containers: ['form', 'form-field']
358
- }
359
- },
360
- modal: {
361
- ...ATOMIC_COMPONENTS_REGISTRY.modal,
362
- propertyMetadata: [
363
- {
364
- name: 'title',
365
- type: 'string',
366
- required: false,
367
- description: 'Modal title'
368
- },
369
- {
370
- name: 'open',
371
- type: 'boolean',
372
- required: true,
373
- description: 'Modal visibility state'
374
- },
375
- {
376
- name: 'closable',
377
- type: 'boolean',
378
- required: false,
379
- default: true,
380
- description: 'Show close button'
381
- },
382
- COMMON_PROPERTY_METADATA.size
383
- ],
384
- eventMetadata: [
385
- {
386
- name: 'onClose',
387
- description: 'Fired when modal is closed',
388
- parameters: []
389
- }
390
- ],
391
- capabilities: {
392
- supportsChildren: true,
393
- supportsConditional: true,
394
- supportsList: false,
395
- supportsSlots: true,
396
- maxDepth: 2,
397
- preferredPosition: 'root'
398
- },
399
- accessibility: {
400
- role: 'dialog',
401
- keyboardNavigable: true,
402
- requiredAriaAttrs: ['aria-modal', 'aria-labelledby'],
403
- screenReaderDescription: 'Modal dialog: {title}'
404
- },
405
- state: {
406
- hasInternalState: true,
407
- stateProperties: [
408
- { name: 'open', type: 'boolean', description: 'Modal open state', defaultValue: false }
409
- ]
410
- },
411
- related: {
412
- alternatives: ['drawer', 'popover'],
413
- compositions: ['button', 'form', 'card'],
414
- containers: ['root']
415
- }
416
- },
417
- badge: {
418
- ...ATOMIC_COMPONENTS_REGISTRY.badge,
419
- propertyMetadata: [
420
- {
421
- name: 'content',
422
- type: 'string',
423
- required: false,
424
- description: 'Badge content/label'
425
- },
426
- COMMON_PROPERTY_METADATA.variant,
427
- COMMON_PROPERTY_METADATA.color,
428
- {
429
- name: 'variant',
430
- type: 'enum',
431
- required: false,
432
- default: 'standard',
433
- description: 'Badge style',
434
- enumValues: ['dot', 'standard'],
435
- isCommon: true
436
- }
437
- ],
438
- capabilities: {
439
- supportsChildren: false,
440
- supportsConditional: true,
441
- supportsList: false,
442
- supportsSlots: false,
443
- maxDepth: 0,
444
- preferredPosition: 'leaf'
445
- },
446
- accessibility: {
447
- role: 'status',
448
- keyboardNavigable: false,
449
- screenReaderDescription: 'Badge: {content}'
450
- },
451
- state: {
452
- hasInternalState: false
453
- },
454
- related: {
455
- alternatives: ['chip', 'tag'],
456
- compositions: ['icon', 'avatar'],
457
- containers: ['button', 'card']
458
- }
459
- }
460
- };
461
- // ============================================================================
462
- // Helper Functions
463
- // ============================================================================
464
- /**
465
- * Get metadata for a component type
466
- *
467
- * @param componentType - Component type from atomic registry
468
- * @returns Component metadata or undefined
469
- */
470
- export function getComponentMetadata(componentType) {
471
- return COMPONENT_METADATA_REGISTRY[componentType];
472
- }
473
- /**
474
- * Get all available component types with metadata
475
- *
476
- * @returns Array of component type names
477
- */
478
- export function getAllComponentTypes() {
479
- return Object.keys(COMPONENT_METADATA_REGISTRY);
480
- }
481
- /**
482
- * Get components by category
483
- *
484
- * @param category - Component category
485
- * @returns Array of component metadata
486
- */
487
- export function getComponentsByCategory(category) {
488
- return Object.values(COMPONENT_METADATA_REGISTRY).filter(comp => comp.category === category);
489
- }
490
- /**
491
- * Get components that can contain children
492
- *
493
- * @returns Array of container component metadata
494
- */
495
- export function getContainerComponents() {
496
- return Object.values(COMPONENT_METADATA_REGISTRY).filter(comp => comp.capabilities.supportsChildren);
497
- }
498
- /**
499
- * Get leaf components (cannot contain children)
500
- *
501
- * @returns Array of leaf component metadata
502
- */
503
- export function getLeafComponents() {
504
- return Object.values(COMPONENT_METADATA_REGISTRY).filter(comp => !comp.capabilities.supportsChildren);
505
- }
506
- /**
507
- * Check if a component supports a specific property
508
- *
509
- * @param componentType - Component type
510
- * @param propertyName - Property name
511
- * @returns True if property is supported
512
- */
513
- export function supportsProperty(componentType, propertyName) {
514
- const metadata = getComponentMetadata(componentType);
515
- if (!metadata)
516
- return false;
517
- return metadata.propertyMetadata.some(prop => prop.name === propertyName);
518
- }
519
- /**
520
- * Get property metadata for a component
521
- *
522
- * @param componentType - Component type
523
- * @param propertyName - Property name
524
- * @returns Property metadata or undefined
525
- */
526
- export function getPropertyMetadata(componentType, propertyName) {
527
- const metadata = getComponentMetadata(componentType);
528
- if (!metadata)
529
- return undefined;
530
- return metadata.propertyMetadata.find(prop => prop.name === propertyName);
531
- }
532
- /**
533
- * Validate property value against metadata
534
- *
535
- * @param componentType - Component type
536
- * @param propertyName - Property name
537
- * @param value - Property value
538
- * @returns Validation result with errors
539
- */
540
- export function validatePropertyValue(componentType, propertyName, value) {
541
- const propMeta = getPropertyMetadata(componentType, propertyName);
542
- if (!propMeta) {
543
- return { valid: false, errors: [`Unknown property: ${propertyName}`] };
544
- }
545
- const errors = [];
546
- // Type validation
547
- if (propMeta.type === 'enum' && propMeta.enumValues) {
548
- if (!propMeta.enumValues.includes(value)) {
549
- errors.push(`Invalid enum value. Expected one of: ${propMeta.enumValues.join(', ')}`);
550
- }
551
- }
552
- // Validation rules
553
- if (propMeta.validation) {
554
- if (propMeta.validation.min !== undefined && value < propMeta.validation.min) {
555
- errors.push(`Value must be >= ${propMeta.validation.min}`);
556
- }
557
- if (propMeta.validation.max !== undefined && value > propMeta.validation.max) {
558
- errors.push(`Value must be <= ${propMeta.validation.max}`);
559
- }
560
- if (propMeta.validation.pattern && typeof value === 'string') {
561
- const regex = new RegExp(propMeta.validation.pattern);
562
- if (!regex.test(value)) {
563
- errors.push(`Value must match pattern: ${propMeta.validation.pattern}`);
564
- }
565
- }
566
- }
567
- return {
568
- valid: errors.length === 0,
569
- errors
570
- };
571
- }
572
- /**
573
- * Get recommended components for composition
574
- *
575
- * @param componentType - Component type
576
- * @returns Array of recommended component types
577
- */
578
- export function getRecommendedCompositions(componentType) {
579
- const metadata = getComponentMetadata(componentType);
580
- return metadata?.related?.compositions || [];
581
- }
582
- /**
583
- * Check if two components can be nested
584
- *
585
- * @param parentType - Parent component type
586
- * @param childType - Child component type
587
- * @returns True if nesting is allowed
588
- */
589
- export function canNest(parentType, childType) {
590
- const parentMeta = getComponentMetadata(parentType);
591
- const childMeta = getComponentMetadata(childType);
592
- if (!parentMeta || !childMeta)
593
- return false;
594
- // Parent must support children
595
- if (!parentMeta.capabilities.supportsChildren)
596
- return false;
597
- // Check depth constraints
598
- if (childMeta.capabilities.preferredPosition === 'root')
599
- return false;
600
- return true;
601
- }
602
- //# sourceMappingURL=component-metadata.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"component-metadata.js","sourceRoot":"","sources":["component-metadata.ts"],"names":[],"mappings":"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"}