@lssm/bundle.contractspec-workspace 0.0.0-canary-20251217080011 → 1.41.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (378) hide show
  1. package/dist/_virtual/rolldown_runtime.js +1 -22
  2. package/dist/adapters/ai.js +1 -82
  3. package/dist/adapters/factory.js +1 -36
  4. package/dist/adapters/fs.js +1 -118
  5. package/dist/adapters/git.js +1 -54
  6. package/dist/adapters/index.js +1 -7
  7. package/dist/adapters/logger.js +1 -80
  8. package/dist/adapters/watcher.js +1 -69
  9. package/dist/adapters/workspace.js +2 -190
  10. package/dist/ai/agents/claude-code-agent.js +9 -146
  11. package/dist/ai/agents/cursor-agent.js +17 -286
  12. package/dist/ai/agents/index.js +1 -5
  13. package/dist/ai/agents/openai-codex-agent.js +8 -140
  14. package/dist/ai/agents/orchestrator.js +1 -142
  15. package/dist/ai/agents/simple-agent.js +4 -80
  16. package/dist/ai/client.js +1 -162
  17. package/dist/ai/index.js +1 -27
  18. package/dist/ai/prompts/code-generation.js +13 -55
  19. package/dist/ai/prompts/index.js +1 -12
  20. package/dist/ai/prompts/spec-creation.js +20 -61
  21. package/dist/ai/providers.js +1 -40
  22. package/dist/formatters/index.js +1 -18
  23. package/dist/formatters/json.js +1 -71
  24. package/dist/formatters/sarif.js +1 -163
  25. package/dist/formatters/text.js +2 -208
  26. package/dist/index.js +1 -81
  27. package/dist/node_modules/@ai-sdk/anthropic/dist/index.js +1 -0
  28. package/dist/node_modules/@ai-sdk/openai/dist/index.js +11 -0
  29. package/dist/node_modules/@ai-sdk/provider/dist/index.js +3 -0
  30. package/dist/node_modules/@ai-sdk/provider-utils/dist/index.js +5 -0
  31. package/dist/node_modules/chalk/source/index.js +2 -0
  32. package/dist/node_modules/chalk/source/utilities.js +4 -0
  33. package/dist/node_modules/chalk/source/vendor/ansi-styles/index.js +1 -0
  34. package/dist/node_modules/chalk/source/vendor/supports-color/browser.js +1 -0
  35. package/dist/node_modules/cli-cursor/index.js +1 -0
  36. package/dist/node_modules/cli-spinners/index.js +1 -0
  37. package/dist/node_modules/cli-spinners/spinners.js +1 -0
  38. package/dist/node_modules/eventsource-parser/dist/index.js +5 -0
  39. package/dist/node_modules/eventsource-parser/dist/stream.js +1 -0
  40. package/dist/node_modules/get-east-asian-width/index.js +1 -0
  41. package/dist/node_modules/get-east-asian-width/lookup.js +1 -0
  42. package/dist/node_modules/is-interactive/index.js +1 -0
  43. package/dist/node_modules/is-unicode-supported/index.js +1 -0
  44. package/dist/node_modules/log-symbols/browser-symbols.js +1 -0
  45. package/dist/node_modules/mimic-function/index.js +1 -0
  46. package/dist/node_modules/onetime/index.js +1 -0
  47. package/dist/node_modules/ora/index.js +6 -0
  48. package/dist/node_modules/restore-cursor/index.js +1 -0
  49. package/dist/node_modules/signal-exit/dist/mjs/index.js +1 -0
  50. package/dist/node_modules/signal-exit/dist/mjs/signals.js +1 -0
  51. package/dist/node_modules/stdin-discarder/index.js +1 -0
  52. package/dist/node_modules/string-width/index.js +1 -0
  53. package/dist/node_modules/strip-ansi/index.js +1 -0
  54. package/dist/node_modules/strip-ansi/node_modules/ansi-regex/index.js +1 -0
  55. package/dist/services/agent-guide/adapters/claude-code.js +3 -144
  56. package/dist/services/agent-guide/adapters/cursor-cli.js +3 -135
  57. package/dist/services/agent-guide/adapters/generic-mcp.js +3 -159
  58. package/dist/services/agent-guide/adapters/index.js +1 -30
  59. package/dist/services/agent-guide/agent-guide-service.js +1 -148
  60. package/dist/services/agent-guide/index.js +1 -5
  61. package/dist/services/build.js +1 -140
  62. package/dist/services/ci-check/ci-check-service.js +1 -393
  63. package/dist/services/ci-check/index.js +1 -2
  64. package/dist/services/ci-check/types.js +1 -28
  65. package/dist/services/clean.js +1 -71
  66. package/dist/services/config.js +1 -76
  67. package/dist/services/deps.js +1 -62
  68. package/dist/services/diff.js +1 -33
  69. package/dist/services/doctor/checks/ai.js +2 -118
  70. package/dist/services/doctor/checks/cli.js +1 -146
  71. package/dist/services/doctor/checks/config.js +1 -170
  72. package/dist/services/doctor/checks/deps.js +1 -180
  73. package/dist/services/doctor/checks/index.js +1 -6
  74. package/dist/services/doctor/checks/mcp.js +1 -144
  75. package/dist/services/doctor/checks/workspace.js +1 -243
  76. package/dist/services/doctor/doctor-service.js +2 -115
  77. package/dist/services/doctor/index.js +1 -2
  78. package/dist/services/doctor/types.js +1 -26
  79. package/dist/services/implementation/discovery.js +2 -143
  80. package/dist/services/implementation/index.js +1 -2
  81. package/dist/services/implementation/resolver.js +1 -223
  82. package/dist/services/index.js +1 -53
  83. package/dist/services/integrity-diagram.js +6 -274
  84. package/dist/services/integrity.js +1 -272
  85. package/dist/services/list.js +1 -35
  86. package/dist/services/openapi/export-service.js +2 -51
  87. package/dist/services/openapi/import-service.js +1 -75
  88. package/dist/services/openapi/index.js +1 -4
  89. package/dist/services/openapi/sync-service.js +1 -121
  90. package/dist/services/openapi/validate-service.js +1 -130
  91. package/dist/services/regenerator.js +1 -23
  92. package/dist/services/registry.js +1 -73
  93. package/dist/services/setup/config-generators.js +26 -113
  94. package/dist/services/setup/file-merger.js +2 -60
  95. package/dist/services/setup/index.js +1 -4
  96. package/dist/services/setup/setup-service.js +1 -95
  97. package/dist/services/setup/targets/agents-md.js +1 -46
  98. package/dist/services/setup/targets/cli-config.js +1 -59
  99. package/dist/services/setup/targets/cursor-rules.js +1 -47
  100. package/dist/services/setup/targets/mcp-claude.js +1 -59
  101. package/dist/services/setup/targets/mcp-cursor.js +1 -58
  102. package/dist/services/setup/targets/vscode-settings.js +1 -62
  103. package/dist/services/setup/types.js +1 -26
  104. package/dist/services/sync.js +1 -62
  105. package/dist/services/test.js +1 -30
  106. package/dist/services/validate-implementation.js +1 -69
  107. package/dist/services/validate.js +1 -47
  108. package/dist/services/verification-cache/adapters/filesystem.js +1 -121
  109. package/dist/services/verification-cache/adapters/in-memory.js +1 -45
  110. package/dist/services/verification-cache/adapters/index.js +1 -3
  111. package/dist/services/verification-cache/adapters/workspace-state.js +1 -90
  112. package/dist/services/verification-cache/cache-service.js +1 -255
  113. package/dist/services/verification-cache/index.js +1 -6
  114. package/dist/services/verification-cache/types.js +1 -15
  115. package/dist/services/verify/ai-verifier.js +9 -336
  116. package/dist/services/verify/behavior-verifier.js +1 -185
  117. package/dist/services/verify/index.js +1 -4
  118. package/dist/services/verify/structure-verifier.js +2 -195
  119. package/dist/services/verify/verify-service.js +3 -203
  120. package/dist/services/watch.js +1 -31
  121. package/dist/services/workspace-info.js +2 -102
  122. package/dist/templates/app-config.template.js +28 -101
  123. package/dist/templates/data-view.template.js +27 -42
  124. package/dist/templates/event.template.js +14 -29
  125. package/dist/templates/experiment.template.js +51 -77
  126. package/dist/templates/handler.template.js +17 -53
  127. package/dist/templates/index.js +1 -36
  128. package/dist/templates/integration.template.js +50 -134
  129. package/dist/templates/knowledge.template.js +21 -62
  130. package/dist/templates/migration.template.js +26 -50
  131. package/dist/templates/operation.template.js +28 -44
  132. package/dist/templates/presentation.template.js +20 -46
  133. package/dist/templates/telemetry.template.js +53 -74
  134. package/dist/templates/workflow-runner.template.js +6 -12
  135. package/dist/templates/workflow.template.js +24 -51
  136. package/package.json +10 -16
  137. package/dist/adapters/ai.d.ts +0 -11
  138. package/dist/adapters/factory.d.ts +0 -28
  139. package/dist/adapters/fs.d.ts +0 -10
  140. package/dist/adapters/git.d.ts +0 -10
  141. package/dist/adapters/logger.d.ts +0 -17
  142. package/dist/adapters/watcher.d.ts +0 -10
  143. package/dist/adapters/workspace.d.ts +0 -93
  144. package/dist/ai/agents/claude-code-agent.d.ts +0 -21
  145. package/dist/ai/agents/cursor-agent.d.ts +0 -67
  146. package/dist/ai/agents/openai-codex-agent.d.ts +0 -21
  147. package/dist/ai/agents/orchestrator.d.ts +0 -49
  148. package/dist/ai/agents/simple-agent.d.ts +0 -16
  149. package/dist/ai/agents/types.d.ts +0 -35
  150. package/dist/ai/client.d.ts +0 -82
  151. package/dist/ai/index.d.ts +0 -16
  152. package/dist/ai/prompts/code-generation.d.ts +0 -25
  153. package/dist/ai/prompts/index.d.ts +0 -9
  154. package/dist/ai/prompts/spec-creation.d.ts +0 -28
  155. package/dist/ai/providers.d.ts +0 -28
  156. package/dist/formatters/index.d.ts +0 -10
  157. package/dist/formatters/json.d.ts +0 -88
  158. package/dist/formatters/sarif.d.ts +0 -100
  159. package/dist/formatters/text.d.ts +0 -34
  160. package/dist/index.d.ts +0 -66
  161. package/dist/libs/ai-providers/dist/factory.js +0 -154
  162. package/dist/libs/ai-providers/dist/index.js +0 -4
  163. package/dist/libs/ai-providers/dist/legacy.js +0 -72
  164. package/dist/libs/ai-providers/dist/models.js +0 -287
  165. package/dist/libs/ai-providers/dist/validation.js +0 -1
  166. package/dist/libs/contracts/dist/capabilities/openbanking.js +0 -88
  167. package/dist/libs/contracts/dist/client/index.js +0 -5
  168. package/dist/libs/contracts/dist/client/react/feature-render.js +0 -2
  169. package/dist/libs/contracts/dist/client/react/form-render.js +0 -4
  170. package/dist/libs/contracts/dist/client/react/index.js +0 -4
  171. package/dist/libs/contracts/dist/contract-registry/index.js +0 -1
  172. package/dist/libs/contracts/dist/contract-registry/schemas.js +0 -60
  173. package/dist/libs/contracts/dist/docs/PUBLISHING.docblock.js +0 -16
  174. package/dist/libs/contracts/dist/docs/accessibility_wcag_compliance_specs.docblock.js +0 -16
  175. package/dist/libs/contracts/dist/docs/index.js +0 -29
  176. package/dist/libs/contracts/dist/docs/presentations.js +0 -71
  177. package/dist/libs/contracts/dist/docs/registry.js +0 -44
  178. package/dist/libs/contracts/dist/docs/tech/PHASE_1_QUICKSTART.docblock.js +0 -16
  179. package/dist/libs/contracts/dist/docs/tech/PHASE_2_AI_NATIVE_OPERATIONS.docblock.js +0 -16
  180. package/dist/libs/contracts/dist/docs/tech/PHASE_3_AUTO_EVOLUTION.docblock.js +0 -16
  181. package/dist/libs/contracts/dist/docs/tech/PHASE_4_PERSONALIZATION_ENGINE.docblock.js +0 -16
  182. package/dist/libs/contracts/dist/docs/tech/PHASE_5_ZERO_TOUCH_OPERATIONS.docblock.js +0 -16
  183. package/dist/libs/contracts/dist/docs/tech/auth/better-auth-nextjs.docblock.js +0 -80
  184. package/dist/libs/contracts/dist/docs/tech/contracts/openapi-export.docblock.js +0 -57
  185. package/dist/libs/contracts/dist/docs/tech/lifecycle-stage-system.docblock.js +0 -16
  186. package/dist/libs/contracts/dist/docs/tech/llm/llm-integration.docblock.js +0 -357
  187. package/dist/libs/contracts/dist/docs/tech/mcp-endpoints.docblock.js +0 -37
  188. package/dist/libs/contracts/dist/docs/tech/presentation-runtime.docblock.js +0 -16
  189. package/dist/libs/contracts/dist/docs/tech/schema/README.docblock.js +0 -20
  190. package/dist/libs/contracts/dist/docs/tech/studio/learning-events.docblock.js +0 -48
  191. package/dist/libs/contracts/dist/docs/tech/studio/learning-journeys.docblock.js +0 -79
  192. package/dist/libs/contracts/dist/docs/tech/studio/platform-admin-panel.docblock.js +0 -84
  193. package/dist/libs/contracts/dist/docs/tech/studio/project-access-teams.docblock.js +0 -45
  194. package/dist/libs/contracts/dist/docs/tech/studio/project-routing.docblock.js +0 -67
  195. package/dist/libs/contracts/dist/docs/tech/studio/sandbox-unlogged.docblock.js +0 -40
  196. package/dist/libs/contracts/dist/docs/tech/studio/team-invitations.docblock.js +0 -69
  197. package/dist/libs/contracts/dist/docs/tech/studio/workspace-ops.docblock.js +0 -47
  198. package/dist/libs/contracts/dist/docs/tech/studio/workspaces.docblock.js +0 -62
  199. package/dist/libs/contracts/dist/docs/tech/telemetry-ingest.docblock.js +0 -155
  200. package/dist/libs/contracts/dist/docs/tech/templates/runtime.docblock.js +0 -20
  201. package/dist/libs/contracts/dist/docs/tech/vscode-extension.docblock.js +0 -101
  202. package/dist/libs/contracts/dist/docs/tech/workflows/overview.docblock.js +0 -20
  203. package/dist/libs/contracts/dist/events.js +0 -8
  204. package/dist/libs/contracts/dist/experiments/evaluator.js +0 -1
  205. package/dist/libs/contracts/dist/index.js +0 -72
  206. package/dist/libs/contracts/dist/install.js +0 -2
  207. package/dist/libs/contracts/dist/integrations/contracts.js +0 -377
  208. package/dist/libs/contracts/dist/integrations/index.js +0 -18
  209. package/dist/libs/contracts/dist/integrations/openbanking/contracts/accounts.js +0 -228
  210. package/dist/libs/contracts/dist/integrations/openbanking/contracts/balances.js +0 -159
  211. package/dist/libs/contracts/dist/integrations/openbanking/contracts/index.js +0 -3
  212. package/dist/libs/contracts/dist/integrations/openbanking/contracts/transactions.js +0 -210
  213. package/dist/libs/contracts/dist/integrations/openbanking/models.js +0 -242
  214. package/dist/libs/contracts/dist/integrations/openbanking/telemetry.js +0 -13
  215. package/dist/libs/contracts/dist/integrations/providers/elevenlabs.js +0 -52
  216. package/dist/libs/contracts/dist/integrations/providers/gcs-storage.js +0 -75
  217. package/dist/libs/contracts/dist/integrations/providers/gmail.js +0 -87
  218. package/dist/libs/contracts/dist/integrations/providers/google-calendar.js +0 -66
  219. package/dist/libs/contracts/dist/integrations/providers/index.js +0 -11
  220. package/dist/libs/contracts/dist/integrations/providers/mistral.js +0 -68
  221. package/dist/libs/contracts/dist/integrations/providers/postmark.js +0 -68
  222. package/dist/libs/contracts/dist/integrations/providers/powens.js +0 -116
  223. package/dist/libs/contracts/dist/integrations/providers/qdrant.js +0 -73
  224. package/dist/libs/contracts/dist/integrations/providers/registry.js +0 -10
  225. package/dist/libs/contracts/dist/integrations/providers/stripe.js +0 -83
  226. package/dist/libs/contracts/dist/integrations/providers/twilio-sms.js +0 -61
  227. package/dist/libs/contracts/dist/jsonschema.js +0 -24
  228. package/dist/libs/contracts/dist/knowledge/contracts.js +0 -306
  229. package/dist/libs/contracts/dist/knowledge/index.js +0 -7
  230. package/dist/libs/contracts/dist/knowledge/spaces/email-threads.js +0 -34
  231. package/dist/libs/contracts/dist/knowledge/spaces/financial-docs.js +0 -34
  232. package/dist/libs/contracts/dist/knowledge/spaces/financial-overview.js +0 -38
  233. package/dist/libs/contracts/dist/knowledge/spaces/index.js +0 -6
  234. package/dist/libs/contracts/dist/knowledge/spaces/product-canon.js +0 -34
  235. package/dist/libs/contracts/dist/knowledge/spaces/support-faq.js +0 -37
  236. package/dist/libs/contracts/dist/knowledge/spaces/uploaded-docs.js +0 -34
  237. package/dist/libs/contracts/dist/llm/exporters.js +0 -352
  238. package/dist/libs/contracts/dist/llm/index.js +0 -2
  239. package/dist/libs/contracts/dist/llm/prompts.js +0 -211
  240. package/dist/libs/contracts/dist/onboarding-base.js +0 -196
  241. package/dist/libs/contracts/dist/openapi.js +0 -75
  242. package/dist/libs/contracts/dist/ownership.js +0 -21
  243. package/dist/libs/contracts/dist/presentations.js +0 -1
  244. package/dist/libs/contracts/dist/presentations.v2.js +0 -11
  245. package/dist/libs/contracts/dist/prompt.js +0 -1
  246. package/dist/libs/contracts/dist/promptRegistry.js +0 -1
  247. package/dist/libs/contracts/dist/regenerator/index.js +0 -2
  248. package/dist/libs/contracts/dist/regenerator/service.js +0 -92
  249. package/dist/libs/contracts/dist/regenerator/utils.js +0 -51
  250. package/dist/libs/contracts/dist/registry.js +0 -208
  251. package/dist/libs/contracts/dist/resources.js +0 -1
  252. package/dist/libs/contracts/dist/schema/dist/EnumType.js +0 -2
  253. package/dist/libs/contracts/dist/schema/dist/FieldType.js +0 -49
  254. package/dist/libs/contracts/dist/schema/dist/ScalarTypeEnum.js +0 -236
  255. package/dist/libs/contracts/dist/schema/dist/SchemaModel.js +0 -34
  256. package/dist/libs/contracts/dist/schema/dist/entity/defineEntity.js +0 -1
  257. package/dist/libs/contracts/dist/schema/dist/entity/index.js +0 -2
  258. package/dist/libs/contracts/dist/schema/dist/entity/types.js +0 -1
  259. package/dist/libs/contracts/dist/schema/dist/index.js +0 -6
  260. package/dist/libs/contracts/dist/server/graphql-pothos.js +0 -6
  261. package/dist/libs/contracts/dist/server/index.js +0 -8
  262. package/dist/libs/contracts/dist/server/mcp/createMcpServer.js +0 -4
  263. package/dist/libs/contracts/dist/server/mcp/registerPresentations.js +0 -2
  264. package/dist/libs/contracts/dist/server/mcp/registerPrompts.js +0 -1
  265. package/dist/libs/contracts/dist/server/mcp/registerResources.js +0 -2
  266. package/dist/libs/contracts/dist/server/mcp/registerTools.js +0 -1
  267. package/dist/libs/contracts/dist/server/provider-mcp.js +0 -1
  268. package/dist/libs/contracts/dist/server/rest-elysia.js +0 -1
  269. package/dist/libs/contracts/dist/server/rest-express.js +0 -1
  270. package/dist/libs/contracts/dist/server/rest-generic.js +0 -1
  271. package/dist/libs/contracts/dist/server/rest-next-app.js +0 -1
  272. package/dist/libs/contracts/dist/server/rest-next-pages.js +0 -1
  273. package/dist/libs/contracts/dist/spec.js +0 -35
  274. package/dist/libs/contracts/dist/telemetry/index.js +0 -1
  275. package/dist/libs/contracts/dist/telemetry/tracker.js +0 -1
  276. package/dist/libs/contracts/dist/tests/index.js +0 -1
  277. package/dist/libs/contracts/dist/tests/runner.js +0 -150
  278. package/dist/libs/contracts/dist/workflow/index.js +0 -1
  279. package/dist/libs/contracts/dist/workflow/runner.js +0 -1
  280. package/dist/libs/contracts-transformers/dist/common/utils.js +0 -47
  281. package/dist/libs/contracts-transformers/dist/openapi/exporter.js +0 -1
  282. package/dist/libs/contracts-transformers/dist/openapi/importer.js +0 -255
  283. package/dist/libs/contracts-transformers/dist/openapi/index.js +0 -4
  284. package/dist/libs/contracts-transformers/dist/openapi/parser.js +0 -231
  285. package/dist/libs/contracts-transformers/dist/openapi/schema-converter.js +0 -201
  286. package/dist/modules/contractspec-workspace/dist/ai/code-generation.js +0 -137
  287. package/dist/modules/contractspec-workspace/dist/ai/spec-creation.js +0 -101
  288. package/dist/modules/contractspec-workspace/dist/analysis/deps/graph.js +0 -84
  289. package/dist/modules/contractspec-workspace/dist/analysis/deps/parse-imports.js +0 -30
  290. package/dist/modules/contractspec-workspace/dist/analysis/diff/semantic.js +0 -96
  291. package/dist/modules/contractspec-workspace/dist/analysis/feature-scan.js +0 -151
  292. package/dist/modules/contractspec-workspace/dist/analysis/spec-scan.js +0 -344
  293. package/dist/modules/contractspec-workspace/dist/analysis/validate/spec-structure.js +0 -122
  294. package/dist/modules/contractspec-workspace/dist/templates/app-config.js +0 -105
  295. package/dist/modules/contractspec-workspace/dist/templates/data-view.js +0 -68
  296. package/dist/modules/contractspec-workspace/dist/templates/event.js +0 -38
  297. package/dist/modules/contractspec-workspace/dist/templates/experiment.js +0 -87
  298. package/dist/modules/contractspec-workspace/dist/templates/handler.js +0 -95
  299. package/dist/modules/contractspec-workspace/dist/templates/integration-utils.js +0 -104
  300. package/dist/modules/contractspec-workspace/dist/templates/integration.js +0 -62
  301. package/dist/modules/contractspec-workspace/dist/templates/knowledge.js +0 -68
  302. package/dist/modules/contractspec-workspace/dist/templates/migration.js +0 -60
  303. package/dist/modules/contractspec-workspace/dist/templates/operation.js +0 -100
  304. package/dist/modules/contractspec-workspace/dist/templates/presentation.js +0 -78
  305. package/dist/modules/contractspec-workspace/dist/templates/telemetry.js +0 -89
  306. package/dist/modules/contractspec-workspace/dist/templates/utils.js +0 -38
  307. package/dist/modules/contractspec-workspace/dist/templates/workflow-runner.js +0 -48
  308. package/dist/modules/contractspec-workspace/dist/templates/workflow.js +0 -67
  309. package/dist/modules/contractspec-workspace/dist/types/generation-types.js +0 -20
  310. package/dist/ports/ai.d.ts +0 -58
  311. package/dist/ports/fs.d.ts +0 -80
  312. package/dist/ports/git.d.ts +0 -32
  313. package/dist/ports/logger.d.ts +0 -87
  314. package/dist/ports/watcher.d.ts +0 -51
  315. package/dist/services/agent-guide/adapters/claude-code.d.ts +0 -34
  316. package/dist/services/agent-guide/adapters/cursor-cli.d.ts +0 -38
  317. package/dist/services/agent-guide/adapters/generic-mcp.d.ts +0 -52
  318. package/dist/services/agent-guide/adapters/index.d.ts +0 -22
  319. package/dist/services/agent-guide/agent-guide-service.d.ts +0 -55
  320. package/dist/services/agent-guide/types.d.ts +0 -57
  321. package/dist/services/build.d.ts +0 -58
  322. package/dist/services/ci-check/ci-check-service.d.ts +0 -15
  323. package/dist/services/ci-check/types.d.ts +0 -142
  324. package/dist/services/clean.d.ts +0 -40
  325. package/dist/services/config.d.ts +0 -25
  326. package/dist/services/deps.d.ts +0 -52
  327. package/dist/services/diff.d.ts +0 -33
  328. package/dist/services/doctor/doctor-service.d.ts +0 -23
  329. package/dist/services/doctor/types.d.ts +0 -117
  330. package/dist/services/implementation/discovery.d.ts +0 -29
  331. package/dist/services/implementation/resolver.d.ts +0 -43
  332. package/dist/services/implementation/types.d.ts +0 -78
  333. package/dist/services/integrity-diagram.d.ts +0 -35
  334. package/dist/services/integrity.d.ts +0 -133
  335. package/dist/services/list.d.ts +0 -30
  336. package/dist/services/openapi/export-service.d.ts +0 -52
  337. package/dist/services/openapi/import-service.d.ts +0 -15
  338. package/dist/services/openapi/sync-service.d.ts +0 -18
  339. package/dist/services/openapi/types.d.ts +0 -184
  340. package/dist/services/openapi/validate-service.d.ts +0 -15
  341. package/dist/services/regenerator.d.ts +0 -17
  342. package/dist/services/registry.d.ts +0 -52
  343. package/dist/services/setup/config-generators.d.ts +0 -41
  344. package/dist/services/setup/file-merger.d.ts +0 -26
  345. package/dist/services/setup/setup-service.d.ts +0 -11
  346. package/dist/services/setup/types.d.ts +0 -84
  347. package/dist/services/sync.d.ts +0 -40
  348. package/dist/services/test.d.ts +0 -14
  349. package/dist/services/validate-implementation.d.ts +0 -31
  350. package/dist/services/validate.d.ts +0 -40
  351. package/dist/services/verification-cache/adapters/filesystem.d.ts +0 -45
  352. package/dist/services/verification-cache/adapters/in-memory.d.ts +0 -26
  353. package/dist/services/verification-cache/adapters/workspace-state.d.ts +0 -48
  354. package/dist/services/verification-cache/cache-service.d.ts +0 -69
  355. package/dist/services/verification-cache/types.d.ts +0 -123
  356. package/dist/services/verify/ai-verifier.d.ts +0 -24
  357. package/dist/services/verify/behavior-verifier.d.ts +0 -11
  358. package/dist/services/verify/structure-verifier.d.ts +0 -11
  359. package/dist/services/verify/types.d.ts +0 -136
  360. package/dist/services/verify/verify-service.d.ts +0 -59
  361. package/dist/services/watch.d.ts +0 -24
  362. package/dist/services/workspace-info.d.ts +0 -61
  363. package/dist/templates/app-config.template.d.ts +0 -6
  364. package/dist/templates/data-view.template.d.ts +0 -6
  365. package/dist/templates/event.template.d.ts +0 -10
  366. package/dist/templates/experiment.template.d.ts +0 -6
  367. package/dist/templates/handler.template.d.ts +0 -15
  368. package/dist/templates/index.d.ts +0 -20
  369. package/dist/templates/integration.template.d.ts +0 -6
  370. package/dist/templates/knowledge.template.d.ts +0 -6
  371. package/dist/templates/migration.template.d.ts +0 -6
  372. package/dist/templates/operation.template.d.ts +0 -10
  373. package/dist/templates/presentation.template.d.ts +0 -10
  374. package/dist/templates/telemetry.template.d.ts +0 -6
  375. package/dist/templates/workflow-runner.template.d.ts +0 -15
  376. package/dist/templates/workflow.template.d.ts +0 -6
  377. package/dist/types/config.d.ts +0 -33
  378. package/dist/types.d.ts +0 -323
@@ -1,49 +0,0 @@
1
- import "zod";
2
- import { GraphQLScalarType } from "graphql";
3
-
4
- //#region ../../libs/contracts/dist/schema/dist/FieldType.js
5
- /**
6
- * GraphQL scalar wrapper that carries zod and JSON Schema metadata.
7
- *
8
- * TInternal is the runtime representation; TExternal is the GraphQL output.
9
- */
10
- var FieldType = class extends GraphQLScalarType {
11
- zodSchema;
12
- jsonSchemaDef;
13
- constructor(config) {
14
- super(config);
15
- this.zodSchema = config.zod;
16
- this.jsonSchemaDef = config.jsonSchema;
17
- }
18
- /** Return the attached zod schema for validation. */
19
- getZod() {
20
- return this.zodSchema;
21
- }
22
- /** GraphQL scalar instance usable by Pothos or vanilla GraphQL. */
23
- getPothos() {
24
- return this;
25
- }
26
- /** Return the JSON Schema (evaluates factory if provided). */
27
- getJson() {
28
- return typeof this.jsonSchemaDef === "function" ? this.jsonSchemaDef() : this.jsonSchemaDef;
29
- }
30
- getJsonSchemaDef() {
31
- return this.jsonSchemaDef;
32
- }
33
- getJsonSchema() {
34
- const deepResolve = (v) => {
35
- const value = typeof v === "function" ? v() : v;
36
- if (Array.isArray(value)) return value.map((item) => deepResolve(item));
37
- if (value && typeof value === "object") {
38
- const obj = {};
39
- for (const [k, val] of Object.entries(value)) obj[k] = deepResolve(val);
40
- return obj;
41
- }
42
- return value;
43
- };
44
- return deepResolve(this.getJson());
45
- }
46
- };
47
-
48
- //#endregion
49
- export { FieldType };
@@ -1,236 +0,0 @@
1
- import { FieldType } from "./FieldType.js";
2
- import * as z$1 from "zod";
3
- import { Kind } from "graphql";
4
-
5
- //#region ../../libs/contracts/dist/schema/dist/ScalarTypeEnum.js
6
- const localeRegex = /^[A-Za-z]{2}(?:-[A-Za-z0-9]{2,8})*$/;
7
- const timezoneRegex = /^(?:UTC|[A-Za-z_]+\/[A-Za-z_]+)$/;
8
- const phoneRegex = /^[+]?\d[\d\s().-]{3,}$/;
9
- const currencyRegex = /^[A-Z]{3}$/;
10
- const countryRegex = /^[A-Z]{2}$/;
11
- const latMin = -90;
12
- const latMax = 90;
13
- const lonMin = -180;
14
- const lonMax = 180;
15
- /**
16
- * Factory functions for common scalar FieldTypes with zod/GraphQL/JSON Schema.
17
- */
18
- const ScalarTypeEnum = {
19
- String_unsecure: () => new FieldType({
20
- name: "String_unsecure",
21
- description: "Unvalidated string scalar",
22
- zod: z$1.string(),
23
- parseValue: (v) => z$1.string().parse(v),
24
- serialize: (v) => String(v),
25
- parseLiteral: (ast) => {
26
- if (ast.kind !== Kind.STRING) throw new TypeError("Invalid literal");
27
- return ast.value;
28
- },
29
- jsonSchema: { type: "string" }
30
- }),
31
- Int_unsecure: () => new FieldType({
32
- name: "Int_unsecure",
33
- description: "Unvalidated integer scalar",
34
- zod: z$1.number().int(),
35
- parseValue: (v) => {
36
- const num = typeof v === "number" ? v : Number(v);
37
- return z$1.number().int().parse(num);
38
- },
39
- serialize: (v) => Math.trunc(typeof v === "number" ? v : Number(v)),
40
- parseLiteral: (ast) => {
41
- if (ast.kind !== Kind.INT) throw new TypeError("Invalid literal");
42
- return Number(ast.value);
43
- },
44
- jsonSchema: { type: "integer" }
45
- }),
46
- Float_unsecure: () => new FieldType({
47
- name: "Float_unsecure",
48
- description: "Unvalidated float scalar",
49
- zod: z$1.number(),
50
- parseValue: (v) => {
51
- const num = typeof v === "number" ? v : Number(v);
52
- return z$1.number().parse(num);
53
- },
54
- serialize: (v) => Number(v),
55
- parseLiteral: (ast) => {
56
- if (ast.kind !== Kind.FLOAT && ast.kind !== Kind.INT) throw new TypeError("Invalid literal");
57
- return Number(ast.value);
58
- },
59
- jsonSchema: { type: "number" }
60
- }),
61
- Boolean: () => new FieldType({
62
- name: "Boolean",
63
- description: "Unvalidated boolean scalar",
64
- zod: z$1.boolean(),
65
- parseValue: (v) => z$1.coerce.boolean().parse(v),
66
- serialize: (v) => Boolean(v),
67
- parseLiteral: (ast) => {
68
- if (ast.kind !== Kind.BOOLEAN) throw new TypeError("Invalid literal");
69
- return ast.value;
70
- },
71
- jsonSchema: { type: "boolean" }
72
- }),
73
- ID: () => new FieldType({
74
- name: "ID",
75
- description: "Unvalidated id scalar",
76
- zod: z$1.string(),
77
- parseValue: (v) => z$1.string().parse(v),
78
- serialize: (v) => String(v),
79
- parseLiteral: (ast) => {
80
- if (ast.kind !== Kind.STRING) throw new TypeError("Invalid literal");
81
- return ast.value;
82
- },
83
- jsonSchema: { type: "string" }
84
- }),
85
- JSON: () => new FieldType({
86
- name: "JSON",
87
- zod: z$1.any(),
88
- parseValue: (v) => v,
89
- serialize: (v) => v,
90
- jsonSchema: {}
91
- }),
92
- JSONObject: () => new FieldType({
93
- name: "JSONObject",
94
- zod: z$1.record(z$1.string(), z$1.any()),
95
- parseValue: (v) => z$1.record(z$1.string(), z$1.any()).parse(v),
96
- serialize: (v) => v ?? {},
97
- jsonSchema: { type: "object" }
98
- }),
99
- Date: () => new FieldType({
100
- name: "Date",
101
- zod: z$1.date(),
102
- parseValue: (v) => v instanceof Date ? v : new Date(String(v)),
103
- serialize: (v) => v instanceof Date ? v.toISOString().split("T")[0] : String(v),
104
- jsonSchema: {
105
- type: "string",
106
- format: "date"
107
- }
108
- }),
109
- DateTime: () => new FieldType({
110
- name: "DateTime",
111
- zod: z$1.date(),
112
- parseValue: (v) => v instanceof Date ? v : new Date(String(v)),
113
- serialize: (v) => {
114
- return v instanceof Date ? v.toISOString() : String(v);
115
- },
116
- jsonSchema: {
117
- type: "string",
118
- format: "date-time"
119
- }
120
- }),
121
- Time: () => new FieldType({
122
- name: "Time",
123
- zod: z$1.string().regex(/^\d{2}:\d{2}(:\d{2})?$/),
124
- parseValue: (v) => z$1.string().regex(/^\d{2}:\d{2}(:\d{2})?$/).parse(v),
125
- serialize: (v) => String(v),
126
- jsonSchema: {
127
- type: "string",
128
- pattern: "^\\d{2}:\\d{2}(:\\d{2})?$"
129
- }
130
- }),
131
- EmailAddress: () => new FieldType({
132
- name: "EmailAddress",
133
- zod: z$1.string().email(),
134
- parseValue: (v) => z$1.string().email().parse(v),
135
- serialize: (v) => String(v),
136
- jsonSchema: {
137
- type: "string",
138
- format: "email"
139
- }
140
- }),
141
- URL: () => new FieldType({
142
- name: "URL",
143
- zod: z$1.string().url(),
144
- parseValue: (v) => z$1.string().url().parse(v),
145
- serialize: (v) => String(v),
146
- jsonSchema: {
147
- type: "string",
148
- format: "uri"
149
- }
150
- }),
151
- PhoneNumber: () => new FieldType({
152
- name: "PhoneNumber",
153
- zod: z$1.string().regex(phoneRegex),
154
- parseValue: (v) => z$1.string().regex(phoneRegex).parse(v),
155
- serialize: (v) => String(v),
156
- jsonSchema: {
157
- type: "string",
158
- pattern: phoneRegex.source
159
- }
160
- }),
161
- NonEmptyString: () => new FieldType({
162
- name: "NonEmptyString",
163
- zod: z$1.string().min(1),
164
- parseValue: (v) => z$1.string().min(1).parse(v),
165
- serialize: (v) => String(v),
166
- jsonSchema: {
167
- type: "string",
168
- minLength: 1
169
- }
170
- }),
171
- Locale: () => new FieldType({
172
- name: "Locale",
173
- zod: z$1.string().regex(localeRegex),
174
- parseValue: (v) => z$1.string().regex(localeRegex).parse(v),
175
- serialize: (v) => String(v),
176
- jsonSchema: {
177
- type: "string",
178
- pattern: localeRegex.source
179
- }
180
- }),
181
- TimeZone: () => new FieldType({
182
- name: "TimeZone",
183
- zod: z$1.string().regex(timezoneRegex),
184
- parseValue: (v) => z$1.string().regex(timezoneRegex).parse(v),
185
- serialize: (v) => String(v),
186
- jsonSchema: {
187
- type: "string",
188
- pattern: timezoneRegex.source
189
- }
190
- }),
191
- Latitude: () => new FieldType({
192
- name: "Latitude",
193
- zod: z$1.number().min(latMin).max(latMax),
194
- parseValue: (v) => z$1.coerce.number().min(latMin).max(latMax).parse(v),
195
- serialize: (v) => Number(v),
196
- jsonSchema: {
197
- type: "number",
198
- minimum: latMin,
199
- maximum: latMax
200
- }
201
- }),
202
- Longitude: () => new FieldType({
203
- name: "Longitude",
204
- zod: z$1.number().min(lonMin).max(lonMax),
205
- parseValue: (v) => z$1.coerce.number().min(lonMin).max(lonMax).parse(v),
206
- serialize: (v) => Number(v),
207
- jsonSchema: {
208
- type: "number",
209
- minimum: lonMin,
210
- maximum: lonMax
211
- }
212
- }),
213
- Currency: () => new FieldType({
214
- name: "Currency",
215
- zod: z$1.string().regex(currencyRegex),
216
- parseValue: (v) => z$1.string().regex(currencyRegex).parse(v),
217
- serialize: (v) => String(v),
218
- jsonSchema: {
219
- type: "string",
220
- pattern: currencyRegex.source
221
- }
222
- }),
223
- CountryCode: () => new FieldType({
224
- name: "CountryCode",
225
- zod: z$1.string().regex(countryRegex),
226
- parseValue: (v) => z$1.string().regex(countryRegex).parse(v),
227
- serialize: (v) => String(v),
228
- jsonSchema: {
229
- type: "string",
230
- pattern: countryRegex.source
231
- }
232
- })
233
- };
234
-
235
- //#endregion
236
- export { ScalarTypeEnum };
@@ -1,34 +0,0 @@
1
- import "./EnumType.js";
2
- import "./FieldType.js";
3
- import * as z$1 from "zod";
4
-
5
- //#region ../../libs/contracts/dist/schema/dist/SchemaModel.js
6
- /**
7
- * Named object model built from FieldType/EnumType/SchemaModel fields.
8
- * Provides zod and GraphQL input helpers, and supports arrays/optional fields.
9
- */
10
- var SchemaModel = class {
11
- constructor(config) {
12
- this.config = config;
13
- }
14
- /**
15
- * Build a typed ZodObject from the model fields, preserving each field's
16
- * Zod schema and optionality at the type level when possible.
17
- */
18
- getZod() {
19
- const shape = Object.entries(this.config.fields).reduce((acc, [key, def]) => {
20
- const base = def.type.getZod();
21
- const withArray = def.isArray ? z$1.array(base) : base;
22
- acc[key] = def.isOptional ? withArray.optional() : withArray;
23
- return acc;
24
- }, {});
25
- return z$1.object(shape);
26
- }
27
- /** Input object name for GraphQL builder adapters. */
28
- getPothosInput() {
29
- return this.config.name;
30
- }
31
- };
32
-
33
- //#endregion
34
- export { SchemaModel };
@@ -1,2 +0,0 @@
1
- import "./defineEntity.js";
2
- import "./types.js";
@@ -1 +0,0 @@
1
- import "zod";
@@ -1,6 +0,0 @@
1
- import "./EnumType.js";
2
- import "./FieldType.js";
3
- import "./SchemaModel.js";
4
- import "./ScalarTypeEnum.js";
5
- import "./entity/defineEntity.js";
6
- import "./entity/index.js";
@@ -1,6 +0,0 @@
1
- import "../jsonschema.js";
2
- import "@pothos/plugin-prisma";
3
- import "@pothos/plugin-complexity";
4
- import "@pothos/plugin-relay";
5
- import "@pothos/plugin-dataloader";
6
- import "@pothos/plugin-tracing";
@@ -1,8 +0,0 @@
1
- import "./graphql-pothos.js";
2
- import "./mcp/createMcpServer.js";
3
- import "./rest-generic.js";
4
- import "./rest-elysia.js";
5
- import "./rest-express.js";
6
- import "./rest-next-app.js";
7
- import "./rest-next-pages.js";
8
- import "./provider-mcp.js";
@@ -1,4 +0,0 @@
1
- import "./registerTools.js";
2
- import "./registerResources.js";
3
- import "./registerPrompts.js";
4
- import "./registerPresentations.js";
@@ -1,2 +0,0 @@
1
- import "../../presentations.v2.js";
2
- import "../../presentations.js";
@@ -1 +0,0 @@
1
- import z from "zod";
@@ -1,2 +0,0 @@
1
- import "@modelcontextprotocol/sdk/server/mcp.js";
2
- import "node:buffer";
@@ -1 +0,0 @@
1
- import "../../jsonschema.js";
@@ -1 +0,0 @@
1
- import "./mcp/createMcpServer.js";
@@ -1 +0,0 @@
1
- import "./rest-generic.js";
@@ -1 +0,0 @@
1
- import "./rest-generic.js";
@@ -1 +0,0 @@
1
- import "../jsonschema.js";
@@ -1 +0,0 @@
1
- import "./rest-generic.js";
@@ -1 +0,0 @@
1
- import "./rest-generic.js";
@@ -1,35 +0,0 @@
1
- //#region ../../libs/contracts/dist/spec.js
2
- const isEmitDeclRef = (e) => "ref" in e;
3
- /**
4
- * Helper to define a Command (write operation).
5
- * Sets `kind: 'command'` and defaults `idempotent: false`.
6
- */
7
- const defineCommand = (spec) => ({
8
- ...spec,
9
- meta: {
10
- ...spec.meta,
11
- kind: "command"
12
- },
13
- policy: {
14
- ...spec.policy,
15
- idempotent: spec.policy?.["policy"]?.idempotent ?? false
16
- }
17
- });
18
- /**
19
- * Helper to define a Query (read-only operation).
20
- * Sets `kind: 'query'` and forces `idempotent: true`.
21
- */
22
- const defineQuery = (spec) => ({
23
- ...spec,
24
- meta: {
25
- ...spec.meta,
26
- kind: "query"
27
- },
28
- policy: {
29
- ...spec.policy,
30
- idempotent: true
31
- }
32
- });
33
-
34
- //#endregion
35
- export { defineCommand, defineQuery, isEmitDeclRef };
@@ -1 +0,0 @@
1
- import "./tracker.js";
@@ -1 +0,0 @@
1
- import "crypto";
@@ -1 +0,0 @@
1
- import { TestRunner } from "./runner.js";
@@ -1,150 +0,0 @@
1
- import "../index.js";
2
- import { deepStrictEqual } from "node:assert";
3
-
4
- //#region ../../libs/contracts/dist/tests/runner.js
5
- var TestRunner = class {
6
- constructor(config) {
7
- this.config = config;
8
- }
9
- async run(spec) {
10
- const scenarios = [];
11
- let passed = 0;
12
- let failed = 0;
13
- for (const scenario of spec.scenarios) {
14
- await this.config.beforeEach?.(scenario);
15
- const result = await this.runScenario(spec, scenario);
16
- scenarios.push(result);
17
- if (result.status === "passed") passed += 1;
18
- else failed += 1;
19
- await this.config.afterEach?.(scenario, result);
20
- }
21
- return {
22
- spec,
23
- scenarios,
24
- passed,
25
- failed
26
- };
27
- }
28
- async runScenario(spec, scenario) {
29
- const assertionResults = [];
30
- try {
31
- const context = await this.createContext();
32
- const fixtures = [...spec.fixtures ?? [], ...scenario.given ?? []];
33
- const events = [];
34
- for (const fixture of fixtures) await this.executeOperation(fixture, context, events);
35
- const actionResult = await this.executeOperation(scenario.when, context, events);
36
- const assertions = scenario.then ?? [];
37
- for (const assertion of assertions) {
38
- const assertionResult = this.evaluateAssertion(assertion, actionResult, events);
39
- assertionResults.push(assertionResult);
40
- }
41
- return {
42
- scenario,
43
- status: assertionResults.some((assertion) => assertion.status === "failed") ? "failed" : "passed",
44
- assertionResults
45
- };
46
- } catch (error) {
47
- return {
48
- scenario,
49
- status: "failed",
50
- error,
51
- assertionResults
52
- };
53
- }
54
- }
55
- async createContext() {
56
- return { ...await this.config.createContext?.() ?? {} };
57
- }
58
- async executeOperation(action, baseCtx, recordedEvents) {
59
- const ctx = {
60
- ...baseCtx,
61
- eventPublisher: async (event) => {
62
- recordedEvents.push({
63
- name: event.name,
64
- version: event.version,
65
- payload: event.payload
66
- });
67
- await baseCtx.eventPublisher?.(event);
68
- }
69
- };
70
- try {
71
- return {
72
- output: await this.config.registry.execute(action.operation.name, action.operation.version, action.input ?? null, ctx),
73
- events: recordedEvents
74
- };
75
- } catch (error) {
76
- return {
77
- error,
78
- events: recordedEvents
79
- };
80
- }
81
- }
82
- evaluateAssertion(assertion, result, events) {
83
- switch (assertion.type) {
84
- case "expectOutput": return this.evaluateOutputAssertion(assertion, result);
85
- case "expectError": return this.evaluateErrorAssertion(assertion, result);
86
- case "expectEvents": return this.evaluateEventsAssertion(assertion, events);
87
- default: return {
88
- assertion,
89
- status: "failed",
90
- message: `Unknown assertion type ${assertion.type}`
91
- };
92
- }
93
- }
94
- evaluateOutputAssertion(assertion, result) {
95
- if (result.error) return {
96
- assertion,
97
- status: "failed",
98
- message: `Expected output but operation threw error: ${result.error.message}`
99
- };
100
- try {
101
- deepStrictEqual(result.output, assertion.match);
102
- return {
103
- assertion,
104
- status: "passed"
105
- };
106
- } catch (error) {
107
- return {
108
- assertion,
109
- status: "failed",
110
- message: error instanceof Error ? error.message : "Output assertion failed"
111
- };
112
- }
113
- }
114
- evaluateErrorAssertion(assertion, result) {
115
- if (!result.error) return {
116
- assertion,
117
- status: "failed",
118
- message: "Expected an error but operation completed successfully"
119
- };
120
- if (assertion.messageIncludes && !result.error.message.includes(assertion.messageIncludes)) return {
121
- assertion,
122
- status: "failed",
123
- message: `Error message "${result.error.message}" did not include expected substring "${assertion.messageIncludes}"`
124
- };
125
- return {
126
- assertion,
127
- status: "passed"
128
- };
129
- }
130
- evaluateEventsAssertion(assertion, events) {
131
- const failures = [];
132
- for (const expected of assertion.events) {
133
- const count = events.filter((event) => event.name === expected.name && event.version === expected.version).length;
134
- if (typeof expected.min === "number" && count < expected.min || typeof expected.max === "number" && count > expected.max) failures.push(`Event ${expected.name}.v${expected.version} occurred ${count} times (expected ${expected.min ?? 0} - ${expected.max ?? "∞"})`);
135
- else if (typeof expected.min === "undefined" && typeof expected.max === "undefined" && count === 0) failures.push(`Event ${expected.name}.v${expected.version} did not occur`);
136
- }
137
- if (failures.length > 0) return {
138
- assertion,
139
- status: "failed",
140
- message: failures.join("; ")
141
- };
142
- return {
143
- assertion,
144
- status: "passed"
145
- };
146
- }
147
- };
148
-
149
- //#endregion
150
- export { TestRunner };
@@ -1 +0,0 @@
1
- import "./runner.js";
@@ -1 +0,0 @@
1
- import "node:crypto";
@@ -1,47 +0,0 @@
1
- //#region ../../libs/contracts-transformers/dist/common/utils.js
2
- /**
3
- * Common utilities for contract transformations.
4
- */
5
- /**
6
- * Convert a string to PascalCase.
7
- */
8
- function toPascalCase(str) {
9
- return str.replace(/[-_./\s]+(.)?/g, (_, c) => c ? c.toUpperCase() : "").replace(/^./, (c) => c.toUpperCase());
10
- }
11
- /**
12
- * Convert a string to camelCase.
13
- */
14
- function toCamelCase(str) {
15
- const pascal = toPascalCase(str);
16
- return pascal.charAt(0).toLowerCase() + pascal.slice(1);
17
- }
18
- /**
19
- * Convert a string to kebab-case.
20
- */
21
- function toKebabCase(str) {
22
- return str.replace(/([a-z])([A-Z])/g, "$1-$2").replace(/[\s_./]+/g, "-").toLowerCase();
23
- }
24
- /**
25
- * Sanitize a string to be a valid TypeScript identifier.
26
- */
27
- function toValidIdentifier(str) {
28
- let result = str.replace(/[^a-zA-Z0-9_$]/g, "_");
29
- if (/^[0-9]/.test(result)) result = "_" + result;
30
- return result;
31
- }
32
- /**
33
- * Generate a ContractSpec name from an operation identifier.
34
- */
35
- function toSpecName(operationId, prefix) {
36
- const name = toCamelCase(operationId);
37
- return prefix ? `${prefix}.${name}` : name;
38
- }
39
- /**
40
- * Generate a file name from a spec name.
41
- */
42
- function toFileName(specName) {
43
- return toKebabCase(specName.replace(/\./g, "-")) + ".ts";
44
- }
45
-
46
- //#endregion
47
- export { toCamelCase, toFileName, toPascalCase, toSpecName, toValidIdentifier };
@@ -1 +0,0 @@
1
- import "zod";