create-auto-app 0.2.2 → 0.3.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 (324) hide show
  1. package/dist/index.js +5 -0
  2. package/dist/index.js.map +1 -1
  3. package/package.json +4 -3
  4. package/templates/.gitkeep +0 -0
  5. package/templates/shopping-app/.context/schema.json +11 -51
  6. package/templates/shopping-app/.context/server/server/package.json +26 -0
  7. package/templates/shopping-app/.context/server/server/scripts/generate-schema.ts +34 -0
  8. package/templates/shopping-app/.context/server/server/src/domain/flows/seasonal-assistant/accepts-items-and-adds-to-their-cart/commands.ts +8 -0
  9. package/templates/shopping-app/.context/server/server/src/domain/flows/seasonal-assistant/accepts-items-and-adds-to-their-cart/decide.specs.ts +46 -0
  10. package/templates/shopping-app/.context/server/server/src/domain/flows/seasonal-assistant/accepts-items-and-adds-to-their-cart/decide.ts +33 -0
  11. package/templates/shopping-app/.context/server/server/src/domain/flows/seasonal-assistant/accepts-items-and-adds-to-their-cart/events.ts +10 -0
  12. package/templates/shopping-app/.context/server/server/src/domain/flows/seasonal-assistant/accepts-items-and-adds-to-their-cart/evolve.ts +28 -0
  13. package/templates/shopping-app/.context/server/server/src/domain/flows/seasonal-assistant/accepts-items-and-adds-to-their-cart/handle.ts +24 -0
  14. package/templates/shopping-app/.context/server/server/src/domain/flows/seasonal-assistant/accepts-items-and-adds-to-their-cart/mutation.resolver.ts +25 -0
  15. package/templates/shopping-app/.context/server/server/src/domain/flows/seasonal-assistant/accepts-items-and-adds-to-their-cart/register.ts +7 -0
  16. package/templates/shopping-app/.context/server/server/src/domain/flows/seasonal-assistant/accepts-items-and-adds-to-their-cart/state.ts +47 -0
  17. package/templates/shopping-app/.context/server/server/src/domain/flows/seasonal-assistant/creates-a-chat-session-/react.specs.ts +51 -0
  18. package/templates/shopping-app/.context/server/server/src/domain/flows/seasonal-assistant/creates-a-chat-session-/react.ts +43 -0
  19. package/templates/shopping-app/.context/server/server/src/domain/flows/seasonal-assistant/creates-a-chat-session-/register.ts +24 -0
  20. package/templates/shopping-app/.context/server/server/src/domain/flows/seasonal-assistant/enters-shopping-criteria-into-assistant/commands.ts +8 -0
  21. package/templates/shopping-app/.context/server/server/src/domain/flows/seasonal-assistant/enters-shopping-criteria-into-assistant/decide.specs.ts +38 -0
  22. package/templates/shopping-app/.context/server/server/src/domain/flows/seasonal-assistant/enters-shopping-criteria-into-assistant/decide.ts +33 -0
  23. package/templates/shopping-app/.context/server/server/src/domain/flows/seasonal-assistant/enters-shopping-criteria-into-assistant/events.ts +10 -0
  24. package/templates/shopping-app/.context/server/server/src/domain/flows/seasonal-assistant/enters-shopping-criteria-into-assistant/evolve.ts +28 -0
  25. package/templates/shopping-app/.context/server/server/src/domain/flows/seasonal-assistant/enters-shopping-criteria-into-assistant/handle.ts +24 -0
  26. package/templates/shopping-app/.context/server/server/src/domain/flows/seasonal-assistant/enters-shopping-criteria-into-assistant/mutation.resolver.ts +25 -0
  27. package/templates/shopping-app/.context/server/server/src/domain/flows/seasonal-assistant/enters-shopping-criteria-into-assistant/register.ts +7 -0
  28. package/templates/shopping-app/.context/server/server/src/domain/flows/seasonal-assistant/enters-shopping-criteria-into-assistant/state.ts +47 -0
  29. package/templates/shopping-app/.context/server/server/src/domain/flows/seasonal-assistant/selects-items-relevant-to-the-shopping-criteria-/commands.ts +8 -0
  30. package/templates/shopping-app/.context/server/server/src/domain/flows/seasonal-assistant/selects-items-relevant-to-the-shopping-criteria-/decide.specs.ts +61 -0
  31. package/templates/shopping-app/.context/server/server/src/domain/flows/seasonal-assistant/selects-items-relevant-to-the-shopping-criteria-/decide.ts +35 -0
  32. package/templates/shopping-app/.context/server/server/src/domain/flows/seasonal-assistant/selects-items-relevant-to-the-shopping-criteria-/events.ts +9 -0
  33. package/templates/shopping-app/.context/server/server/src/domain/flows/seasonal-assistant/selects-items-relevant-to-the-shopping-criteria-/evolve.ts +28 -0
  34. package/templates/shopping-app/.context/server/server/src/domain/flows/seasonal-assistant/selects-items-relevant-to-the-shopping-criteria-/handle.ts +49 -0
  35. package/templates/shopping-app/.context/server/server/src/domain/flows/seasonal-assistant/selects-items-relevant-to-the-shopping-criteria-/mutation.resolver.ts +25 -0
  36. package/templates/shopping-app/.context/server/server/src/domain/flows/seasonal-assistant/selects-items-relevant-to-the-shopping-criteria-/register.ts +7 -0
  37. package/templates/shopping-app/.context/server/server/src/domain/flows/seasonal-assistant/selects-items-relevant-to-the-shopping-criteria-/state.ts +47 -0
  38. package/templates/shopping-app/.context/server/server/src/domain/flows/seasonal-assistant/views-suggested-items/projection.specs.ts +94 -0
  39. package/templates/shopping-app/.context/server/server/src/domain/flows/seasonal-assistant/views-suggested-items/projection.ts +37 -0
  40. package/templates/shopping-app/.context/server/server/src/domain/flows/seasonal-assistant/views-suggested-items/query.resolver.ts +56 -0
  41. package/templates/shopping-app/.context/server/server/src/domain/flows/seasonal-assistant/views-suggested-items/state.ts +4 -0
  42. package/templates/shopping-app/.context/server/server/src/domain/shared/ReadModel.ts +26 -0
  43. package/templates/shopping-app/{server/src/domain/shared/index.d.ts → .context/server/server/src/domain/shared/index.ts} +0 -1
  44. package/templates/shopping-app/{server/src/domain/shared/reactorSpecification.js → .context/server/server/src/domain/shared/reactorSpecification.ts} +116 -22
  45. package/templates/shopping-app/.context/server/server/src/domain/shared/sendCommand.ts +21 -0
  46. package/templates/shopping-app/{server/src/domain/shared/types.d.ts → .context/server/server/src/domain/shared/types.ts} +17 -5
  47. package/templates/shopping-app/.context/server/server/src/server.ts +43 -0
  48. package/templates/shopping-app/{server/src/utils/index.d.ts → .context/server/server/src/utils/index.ts} +0 -1
  49. package/templates/shopping-app/{server/src/utils/loadProjections.js → .context/server/server/src/utils/loadProjections.ts} +11 -6
  50. package/templates/shopping-app/.context/server/server/src/utils/loadRegisterFiles.ts +41 -0
  51. package/templates/shopping-app/{server/src/utils/loadResolvers.js → .context/server/server/src/utils/loadResolvers.ts} +16 -7
  52. package/templates/shopping-app/.context/server/server/tsconfig.json +13 -0
  53. package/templates/shopping-app/.context/server/server/vitest.config.ts +7 -0
  54. package/templates/shopping-app/auto.config.ts +162 -4
  55. package/templates/shopping-app/client/package.json +1 -1
  56. package/templates/shopping-app/client/src/App.tsx +13 -13
  57. package/templates/shopping-app/client/src/components/molecules/QuantitySelector.tsx +4 -4
  58. package/templates/shopping-app/client/src/components/molecules/ShoppingCriteriaForm.tsx +4 -4
  59. package/templates/shopping-app/client/src/components/molecules/SuggestedItemCard.tsx +6 -6
  60. package/templates/shopping-app/client/src/components/organisms/AssistantChatInterface.tsx +3 -3
  61. package/templates/shopping-app/client/src/components/organisms/PageHeader.tsx +2 -3
  62. package/templates/shopping-app/client/src/components/organisms/SuggestedItemsList.tsx +3 -3
  63. package/templates/shopping-app/client/src/index.css +10 -14
  64. package/templates/shopping-app/client/src/pages/AssistantChatPage.tsx +4 -4
  65. package/templates/shopping-app/client/src/pages/SuggestedItemsPage.tsx +4 -4
  66. package/templates/shopping-app/example-integrations/ai-chat-completion/package.json +1 -1
  67. package/templates/shopping-app/example-integrations/cart/package.json +1 -1
  68. package/templates/shopping-app/example-integrations/product-catalogue/package.json +1 -1
  69. package/templates/shopping-app/example-integrations/product-catalogue/src/product-catalogue-integration.ts +122 -115
  70. package/templates/shopping-app/flows/shopping-assistant.flow.ts +0 -1
  71. package/templates/shopping-app/package.json +13 -10
  72. package/templates/shopping-app/server/package.json +2 -2
  73. package/templates/shopping-app/.env +0 -8
  74. package/templates/shopping-app/example-integrations/ai-chat-completion/.turbo/turbo-build.log +0 -4
  75. package/templates/shopping-app/example-integrations/ai-chat-completion/.turbo/turbo-format.log +0 -12
  76. package/templates/shopping-app/example-integrations/ai-chat-completion/.turbo/turbo-lint.log +0 -4
  77. package/templates/shopping-app/example-integrations/ai-chat-completion/.turbo/turbo-test.log +0 -12
  78. package/templates/shopping-app/example-integrations/ai-chat-completion/.turbo/turbo-type-check.log +0 -5
  79. package/templates/shopping-app/example-integrations/ai-chat-completion/dist/ai-integration.d.ts +0 -23
  80. package/templates/shopping-app/example-integrations/ai-chat-completion/dist/ai-integration.d.ts.map +0 -1
  81. package/templates/shopping-app/example-integrations/ai-chat-completion/dist/ai-integration.js +0 -41
  82. package/templates/shopping-app/example-integrations/ai-chat-completion/dist/ai-integration.js.map +0 -1
  83. package/templates/shopping-app/example-integrations/ai-chat-completion/dist/index.d.ts +0 -2
  84. package/templates/shopping-app/example-integrations/ai-chat-completion/dist/index.d.ts.map +0 -1
  85. package/templates/shopping-app/example-integrations/ai-chat-completion/dist/index.js +0 -2
  86. package/templates/shopping-app/example-integrations/ai-chat-completion/dist/index.js.map +0 -1
  87. package/templates/shopping-app/example-integrations/ai-chat-completion/node_modules/.bin/eslint +0 -21
  88. package/templates/shopping-app/example-integrations/ai-chat-completion/node_modules/.bin/jiti +0 -21
  89. package/templates/shopping-app/example-integrations/ai-chat-completion/node_modules/.bin/msw +0 -21
  90. package/templates/shopping-app/example-integrations/ai-chat-completion/node_modules/.bin/tsc +0 -21
  91. package/templates/shopping-app/example-integrations/ai-chat-completion/node_modules/.bin/tsserver +0 -21
  92. package/templates/shopping-app/example-integrations/ai-chat-completion/node_modules/.bin/vite +0 -21
  93. package/templates/shopping-app/example-integrations/ai-chat-completion/node_modules/.bin/vitest +0 -21
  94. package/templates/shopping-app/example-integrations/cart/.turbo/turbo-build.log +0 -4
  95. package/templates/shopping-app/example-integrations/cart/.turbo/turbo-format.log +0 -12
  96. package/templates/shopping-app/example-integrations/cart/.turbo/turbo-lint.log +0 -5
  97. package/templates/shopping-app/example-integrations/cart/.turbo/turbo-test.log +0 -12
  98. package/templates/shopping-app/example-integrations/cart/.turbo/turbo-type-check.log +0 -5
  99. package/templates/shopping-app/example-integrations/cart/dist/cart-integration.d.ts +0 -30
  100. package/templates/shopping-app/example-integrations/cart/dist/cart-integration.d.ts.map +0 -1
  101. package/templates/shopping-app/example-integrations/cart/dist/cart-integration.js +0 -134
  102. package/templates/shopping-app/example-integrations/cart/dist/cart-integration.js.map +0 -1
  103. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/client/client.gen.d.ts +0 -3
  104. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/client/client.gen.d.ts.map +0 -1
  105. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/client/client.gen.js +0 -149
  106. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/client/client.gen.js.map +0 -1
  107. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/client/index.d.ts +0 -8
  108. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/client/index.d.ts.map +0 -1
  109. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/client/index.js +0 -6
  110. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/client/index.js.map +0 -1
  111. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/client/types.gen.d.ts +0 -123
  112. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/client/types.gen.d.ts.map +0 -1
  113. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/client/types.gen.js +0 -3
  114. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/client/types.gen.js.map +0 -1
  115. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/client/utils.gen.d.ts +0 -46
  116. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/client/utils.gen.d.ts.map +0 -1
  117. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/client/utils.gen.js +0 -285
  118. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/client/utils.gen.js.map +0 -1
  119. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/client.gen.d.ts +0 -13
  120. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/client.gen.d.ts.map +0 -1
  121. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/client.gen.js +0 -6
  122. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/client.gen.js.map +0 -1
  123. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/core/auth.gen.d.ts +0 -19
  124. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/core/auth.gen.d.ts.map +0 -1
  125. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/core/auth.gen.js +0 -15
  126. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/core/auth.gen.js.map +0 -1
  127. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/core/bodySerializer.gen.d.ts +0 -18
  128. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/core/bodySerializer.gen.d.ts.map +0 -1
  129. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/core/bodySerializer.gen.js +0 -58
  130. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/core/bodySerializer.gen.js.map +0 -1
  131. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/core/params.gen.d.ts +0 -34
  132. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/core/params.gen.d.ts.map +0 -1
  133. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/core/params.gen.js +0 -89
  134. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/core/params.gen.js.map +0 -1
  135. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/core/pathSerializer.gen.d.ts +0 -34
  136. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/core/pathSerializer.gen.d.ts.map +0 -1
  137. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/core/pathSerializer.gen.js +0 -115
  138. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/core/pathSerializer.gen.js.map +0 -1
  139. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/core/types.gen.d.ts +0 -79
  140. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/core/types.gen.d.ts.map +0 -1
  141. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/core/types.gen.js +0 -3
  142. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/core/types.gen.js.map +0 -1
  143. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/index.d.ts +0 -2
  144. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/index.d.ts.map +0 -1
  145. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/index.js +0 -3
  146. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/index.js.map +0 -1
  147. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/types.gen.d.ts +0 -158
  148. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/types.gen.d.ts.map +0 -1
  149. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/types.gen.js +0 -3
  150. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/types.gen.js.map +0 -1
  151. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/zod.gen.d.ts +0 -382
  152. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/zod.gen.d.ts.map +0 -1
  153. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/zod.gen.js +0 -68
  154. package/templates/shopping-app/example-integrations/cart/dist/generated/cart/zod.gen.js.map +0 -1
  155. package/templates/shopping-app/example-integrations/cart/dist/index.d.ts +0 -2
  156. package/templates/shopping-app/example-integrations/cart/dist/index.d.ts.map +0 -1
  157. package/templates/shopping-app/example-integrations/cart/dist/index.js +0 -2
  158. package/templates/shopping-app/example-integrations/cart/dist/index.js.map +0 -1
  159. package/templates/shopping-app/example-integrations/cart/node_modules/.bin/eslint +0 -21
  160. package/templates/shopping-app/example-integrations/cart/node_modules/.bin/jiti +0 -21
  161. package/templates/shopping-app/example-integrations/cart/node_modules/.bin/msw +0 -21
  162. package/templates/shopping-app/example-integrations/cart/node_modules/.bin/tsc +0 -21
  163. package/templates/shopping-app/example-integrations/cart/node_modules/.bin/tsserver +0 -21
  164. package/templates/shopping-app/example-integrations/cart/node_modules/.bin/vitest +0 -21
  165. package/templates/shopping-app/example-integrations/cart-api/.turbo/turbo-build.log +0 -4
  166. package/templates/shopping-app/example-integrations/cart-api/.turbo/turbo-format.log +0 -10
  167. package/templates/shopping-app/example-integrations/cart-api/.turbo/turbo-lint.log +0 -4
  168. package/templates/shopping-app/example-integrations/cart-api/.turbo/turbo-test.log +0 -12
  169. package/templates/shopping-app/example-integrations/cart-api/.turbo/turbo-type-check.log +0 -4
  170. package/templates/shopping-app/example-integrations/cart-api/dist/data/cart.d.ts +0 -18
  171. package/templates/shopping-app/example-integrations/cart-api/dist/data/cart.d.ts.map +0 -1
  172. package/templates/shopping-app/example-integrations/cart-api/dist/data/cart.js +0 -28
  173. package/templates/shopping-app/example-integrations/cart-api/dist/data/cart.js.map +0 -1
  174. package/templates/shopping-app/example-integrations/cart-api/dist/index.d.ts +0 -4
  175. package/templates/shopping-app/example-integrations/cart-api/dist/index.d.ts.map +0 -1
  176. package/templates/shopping-app/example-integrations/cart-api/dist/index.js +0 -49
  177. package/templates/shopping-app/example-integrations/cart-api/dist/index.js.map +0 -1
  178. package/templates/shopping-app/example-integrations/cart-api/dist/routes/cart.d.ts +0 -4
  179. package/templates/shopping-app/example-integrations/cart-api/dist/routes/cart.d.ts.map +0 -1
  180. package/templates/shopping-app/example-integrations/cart-api/dist/routes/cart.js +0 -261
  181. package/templates/shopping-app/example-integrations/cart-api/dist/routes/cart.js.map +0 -1
  182. package/templates/shopping-app/example-integrations/cart-api/node_modules/.bin/nodemon +0 -21
  183. package/templates/shopping-app/example-integrations/cart-api/node_modules/.bin/swagger-jsdoc +0 -21
  184. package/templates/shopping-app/example-integrations/cart-api/node_modules/.bin/ts-node +0 -21
  185. package/templates/shopping-app/example-integrations/cart-api/node_modules/.bin/ts-node-cwd +0 -21
  186. package/templates/shopping-app/example-integrations/cart-api/node_modules/.bin/ts-node-esm +0 -21
  187. package/templates/shopping-app/example-integrations/cart-api/node_modules/.bin/ts-node-script +0 -21
  188. package/templates/shopping-app/example-integrations/cart-api/node_modules/.bin/ts-node-transpile-only +0 -21
  189. package/templates/shopping-app/example-integrations/cart-api/node_modules/.bin/ts-script +0 -21
  190. package/templates/shopping-app/example-integrations/cart-api/node_modules/.bin/tsc +0 -21
  191. package/templates/shopping-app/example-integrations/cart-api/node_modules/.bin/tsserver +0 -21
  192. package/templates/shopping-app/example-integrations/cart-api/node_modules/.bin/tsx +0 -21
  193. package/templates/shopping-app/example-integrations/cart-api/node_modules/.bin/vitest +0 -21
  194. package/templates/shopping-app/example-integrations/product-catalogue/.turbo/turbo-build.log +0 -4
  195. package/templates/shopping-app/example-integrations/product-catalogue/.turbo/turbo-format.log +0 -12
  196. package/templates/shopping-app/example-integrations/product-catalogue/.turbo/turbo-lint.log +0 -5
  197. package/templates/shopping-app/example-integrations/product-catalogue/.turbo/turbo-test.log +0 -12
  198. package/templates/shopping-app/example-integrations/product-catalogue/.turbo/turbo-type-check.log +0 -5
  199. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/client/client.gen.d.ts +0 -3
  200. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/client/client.gen.d.ts.map +0 -1
  201. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/client/client.gen.js +0 -149
  202. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/client/client.gen.js.map +0 -1
  203. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/client/index.d.ts +0 -8
  204. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/client/index.d.ts.map +0 -1
  205. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/client/index.js +0 -6
  206. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/client/index.js.map +0 -1
  207. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/client/types.gen.d.ts +0 -123
  208. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/client/types.gen.d.ts.map +0 -1
  209. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/client/types.gen.js +0 -3
  210. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/client/types.gen.js.map +0 -1
  211. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/client/utils.gen.d.ts +0 -46
  212. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/client/utils.gen.d.ts.map +0 -1
  213. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/client/utils.gen.js +0 -285
  214. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/client/utils.gen.js.map +0 -1
  215. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/client.gen.d.ts +0 -13
  216. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/client.gen.d.ts.map +0 -1
  217. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/client.gen.js +0 -6
  218. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/client.gen.js.map +0 -1
  219. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/core/auth.gen.d.ts +0 -19
  220. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/core/auth.gen.d.ts.map +0 -1
  221. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/core/auth.gen.js +0 -15
  222. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/core/auth.gen.js.map +0 -1
  223. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/core/bodySerializer.gen.d.ts +0 -18
  224. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/core/bodySerializer.gen.d.ts.map +0 -1
  225. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/core/bodySerializer.gen.js +0 -58
  226. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/core/bodySerializer.gen.js.map +0 -1
  227. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/core/params.gen.d.ts +0 -34
  228. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/core/params.gen.d.ts.map +0 -1
  229. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/core/params.gen.js +0 -89
  230. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/core/params.gen.js.map +0 -1
  231. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/core/pathSerializer.gen.d.ts +0 -34
  232. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/core/pathSerializer.gen.d.ts.map +0 -1
  233. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/core/pathSerializer.gen.js +0 -115
  234. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/core/pathSerializer.gen.js.map +0 -1
  235. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/core/types.gen.d.ts +0 -79
  236. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/core/types.gen.d.ts.map +0 -1
  237. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/core/types.gen.js +0 -3
  238. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/core/types.gen.js.map +0 -1
  239. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/index.d.ts +0 -2
  240. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/index.d.ts.map +0 -1
  241. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/index.js +0 -3
  242. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/index.js.map +0 -1
  243. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/types.gen.d.ts +0 -115
  244. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/types.gen.d.ts.map +0 -1
  245. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/types.gen.js +0 -3
  246. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/types.gen.js.map +0 -1
  247. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/zod.gen.d.ts +0 -206
  248. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/zod.gen.d.ts.map +0 -1
  249. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/zod.gen.js +0 -53
  250. package/templates/shopping-app/example-integrations/product-catalogue/dist/generated/product-catalog/zod.gen.js.map +0 -1
  251. package/templates/shopping-app/example-integrations/product-catalogue/dist/index.d.ts +0 -2
  252. package/templates/shopping-app/example-integrations/product-catalogue/dist/index.d.ts.map +0 -1
  253. package/templates/shopping-app/example-integrations/product-catalogue/dist/index.js +0 -2
  254. package/templates/shopping-app/example-integrations/product-catalogue/dist/index.js.map +0 -1
  255. package/templates/shopping-app/example-integrations/product-catalogue/dist/product-catalogue-integration.d.ts +0 -32
  256. package/templates/shopping-app/example-integrations/product-catalogue/dist/product-catalogue-integration.d.ts.map +0 -1
  257. package/templates/shopping-app/example-integrations/product-catalogue/dist/product-catalogue-integration.js +0 -163
  258. package/templates/shopping-app/example-integrations/product-catalogue/dist/product-catalogue-integration.js.map +0 -1
  259. package/templates/shopping-app/example-integrations/product-catalogue/node_modules/.bin/eslint +0 -21
  260. package/templates/shopping-app/example-integrations/product-catalogue/node_modules/.bin/jiti +0 -21
  261. package/templates/shopping-app/example-integrations/product-catalogue/node_modules/.bin/msw +0 -21
  262. package/templates/shopping-app/example-integrations/product-catalogue/node_modules/.bin/tsc +0 -21
  263. package/templates/shopping-app/example-integrations/product-catalogue/node_modules/.bin/tsserver +0 -21
  264. package/templates/shopping-app/example-integrations/product-catalogue/node_modules/.bin/vitest +0 -21
  265. package/templates/shopping-app/example-integrations/product-catalogue-api/.turbo/turbo-build.log +0 -4
  266. package/templates/shopping-app/example-integrations/product-catalogue-api/.turbo/turbo-format.log +0 -10
  267. package/templates/shopping-app/example-integrations/product-catalogue-api/.turbo/turbo-lint.log +0 -5
  268. package/templates/shopping-app/example-integrations/product-catalogue-api/.turbo/turbo-test.log +0 -13
  269. package/templates/shopping-app/example-integrations/product-catalogue-api/.turbo/turbo-type-check.log +0 -5
  270. package/templates/shopping-app/example-integrations/product-catalogue-api/dist/data/products.d.ts +0 -10
  271. package/templates/shopping-app/example-integrations/product-catalogue-api/dist/data/products.d.ts.map +0 -1
  272. package/templates/shopping-app/example-integrations/product-catalogue-api/dist/data/products.js +0 -75
  273. package/templates/shopping-app/example-integrations/product-catalogue-api/dist/data/products.js.map +0 -1
  274. package/templates/shopping-app/example-integrations/product-catalogue-api/dist/index.d.ts +0 -4
  275. package/templates/shopping-app/example-integrations/product-catalogue-api/dist/index.d.ts.map +0 -1
  276. package/templates/shopping-app/example-integrations/product-catalogue-api/dist/index.js +0 -49
  277. package/templates/shopping-app/example-integrations/product-catalogue-api/dist/index.js.map +0 -1
  278. package/templates/shopping-app/example-integrations/product-catalogue-api/dist/routes/products.d.ts +0 -4
  279. package/templates/shopping-app/example-integrations/product-catalogue-api/dist/routes/products.d.ts.map +0 -1
  280. package/templates/shopping-app/example-integrations/product-catalogue-api/dist/routes/products.js +0 -170
  281. package/templates/shopping-app/example-integrations/product-catalogue-api/dist/routes/products.js.map +0 -1
  282. package/templates/shopping-app/example-integrations/product-catalogue-api/node_modules/.bin/nodemon +0 -21
  283. package/templates/shopping-app/example-integrations/product-catalogue-api/node_modules/.bin/swagger-jsdoc +0 -21
  284. package/templates/shopping-app/example-integrations/product-catalogue-api/node_modules/.bin/ts-node +0 -21
  285. package/templates/shopping-app/example-integrations/product-catalogue-api/node_modules/.bin/ts-node-cwd +0 -21
  286. package/templates/shopping-app/example-integrations/product-catalogue-api/node_modules/.bin/ts-node-esm +0 -21
  287. package/templates/shopping-app/example-integrations/product-catalogue-api/node_modules/.bin/ts-node-script +0 -21
  288. package/templates/shopping-app/example-integrations/product-catalogue-api/node_modules/.bin/ts-node-transpile-only +0 -21
  289. package/templates/shopping-app/example-integrations/product-catalogue-api/node_modules/.bin/ts-script +0 -21
  290. package/templates/shopping-app/example-integrations/product-catalogue-api/node_modules/.bin/tsc +0 -21
  291. package/templates/shopping-app/example-integrations/product-catalogue-api/node_modules/.bin/tsserver +0 -21
  292. package/templates/shopping-app/example-integrations/product-catalogue-api/node_modules/.bin/tsx +0 -21
  293. package/templates/shopping-app/example-integrations/product-catalogue-api/node_modules/.bin/vitest +0 -21
  294. package/templates/shopping-app/pnpm-workspace.yaml +0 -2
  295. package/templates/shopping-app/server/src/domain/shared/ReadModel.d.ts +0 -10
  296. package/templates/shopping-app/server/src/domain/shared/ReadModel.d.ts.map +0 -1
  297. package/templates/shopping-app/server/src/domain/shared/ReadModel.js +0 -19
  298. package/templates/shopping-app/server/src/domain/shared/ReadModel.js.map +0 -1
  299. package/templates/shopping-app/server/src/domain/shared/index.d.ts.map +0 -1
  300. package/templates/shopping-app/server/src/domain/shared/index.js +0 -5
  301. package/templates/shopping-app/server/src/domain/shared/index.js.map +0 -1
  302. package/templates/shopping-app/server/src/domain/shared/reactorSpecification.d.ts +0 -56
  303. package/templates/shopping-app/server/src/domain/shared/reactorSpecification.d.ts.map +0 -1
  304. package/templates/shopping-app/server/src/domain/shared/reactorSpecification.js.map +0 -1
  305. package/templates/shopping-app/server/src/domain/shared/sendCommand.d.ts +0 -7
  306. package/templates/shopping-app/server/src/domain/shared/sendCommand.d.ts.map +0 -1
  307. package/templates/shopping-app/server/src/domain/shared/sendCommand.js +0 -16
  308. package/templates/shopping-app/server/src/domain/shared/sendCommand.js.map +0 -1
  309. package/templates/shopping-app/server/src/domain/shared/types.d.ts.map +0 -1
  310. package/templates/shopping-app/server/src/domain/shared/types.js +0 -40
  311. package/templates/shopping-app/server/src/domain/shared/types.js.map +0 -1
  312. package/templates/shopping-app/server/src/utils/index.d.ts.map +0 -1
  313. package/templates/shopping-app/server/src/utils/index.js +0 -4
  314. package/templates/shopping-app/server/src/utils/index.js.map +0 -1
  315. package/templates/shopping-app/server/src/utils/loadProjections.d.ts +0 -3
  316. package/templates/shopping-app/server/src/utils/loadProjections.d.ts.map +0 -1
  317. package/templates/shopping-app/server/src/utils/loadProjections.js.map +0 -1
  318. package/templates/shopping-app/server/src/utils/loadRegisterFiles.d.ts +0 -6
  319. package/templates/shopping-app/server/src/utils/loadRegisterFiles.d.ts.map +0 -1
  320. package/templates/shopping-app/server/src/utils/loadRegisterFiles.js +0 -26
  321. package/templates/shopping-app/server/src/utils/loadRegisterFiles.js.map +0 -1
  322. package/templates/shopping-app/server/src/utils/loadResolvers.d.ts +0 -5
  323. package/templates/shopping-app/server/src/utils/loadResolvers.d.ts.map +0 -1
  324. package/templates/shopping-app/server/src/utils/loadResolvers.js.map +0 -1
@@ -38,7 +38,7 @@ type ProductCatalogQueries = {
38
38
  ProductDetails: (params: { id: string }) => Promise<ProductDetails>;
39
39
  };
40
40
 
41
- export const ProductCatalog: Integration<'product-catalog', ProductCatalogQueries> = {
41
+ const _ProductCatalog: Integration<'product-catalog', ProductCatalogQueries> = {
42
42
  __brand: 'Integration' as const,
43
43
  type: 'product-catalog' as const,
44
44
  name: 'product-catalog',
@@ -47,9 +47,7 @@ export const ProductCatalog: Integration<'product-catalog', ProductCatalogQuerie
47
47
  // GET /api/products
48
48
  Products: async (): Promise<Products> => {
49
49
  try {
50
- const res = await productClient.get<GetApiProductsResponses, unknown, false>({
51
- url: '/api/products',
52
- });
50
+ const res = await productClient.get<GetApiProductsResponses, unknown, false>({ url: '/api/products' });
53
51
  if (res.error !== undefined) console.error('Failed to fetch products:', res.error);
54
52
  return { type: 'Products', data: { products: (res.data as Product[]) ?? [] } };
55
53
  } catch (err) {
@@ -96,9 +94,7 @@ export const ProductCatalog: Integration<'product-catalog', ProductCatalogQuerie
96
94
  path: { id },
97
95
  });
98
96
  if (res.response.status === 404 || res.error !== undefined) {
99
- if (res.response.status !== 404) {
100
- console.error(`Error fetching product "${id}":`, res.error);
101
- }
97
+ if (res.response.status !== 404) console.error(`Error fetching product "${id}":`, res.error);
102
98
  return { type: 'ProductDetails', data: { product: null } };
103
99
  }
104
100
  return { type: 'ProductDetails', data: { product: res.data ?? null } };
@@ -110,116 +106,127 @@ export const ProductCatalog: Integration<'product-catalog', ProductCatalogQuerie
110
106
  },
111
107
  };
112
108
 
113
- // ---------- MCP tools ----------
114
-
115
- // All products
116
- registerTool<Record<string, unknown>>(
117
- 'PRODUCT_CATALOGUE_PRODUCTS',
118
- {
119
- title: 'Get All Products',
120
- description: 'Fetches all products from the product catalog',
121
- inputSchema: {},
122
- schema: zGetApiProductsResponse,
123
- schemaName: 'GetApiProductsResponse',
124
- schemaDescription: 'Array of ProductCatalogItem',
125
- },
126
- async () => {
127
- const queries = ProductCatalog.Queries as ProductCatalogQueries;
128
- if (queries?.Products == null) {
129
- return {
130
- content: [{ type: 'text' as const, text: 'ProductCatalog.Queries.Products is not available' }],
131
- isError: true,
132
- };
133
- }
134
- const productsQuery = queries.Products;
135
- const result = await productsQuery();
136
- return { content: [{ type: 'text' as const, text: JSON.stringify(result.data.products, null, 2) }] };
137
- },
138
- );
109
+ // ---------- Lazy MCP tool registration ----------
110
+ let _toolsRegistered = false;
139
111
 
140
- // By category
141
- interface ProductsByCategoryParams extends Record<string, unknown> {
142
- category: string;
143
- }
144
- registerTool<ProductsByCategoryParams>(
145
- 'PRODUCT_CATALOGUE_PRODUCTS_BY_CATEGORY',
146
- {
147
- title: 'Get Products by Category',
148
- description: 'Fetches products from a specific category',
149
- inputSchema: { category: z.string().min(1, 'Category is required') },
150
- schema: zGetApiProductsCategoryByCategoryResponse,
151
- schemaName: 'GetApiProductsCategoryByCategoryResponse',
152
- schemaDescription: 'Array of ProductCatalogItem',
153
- },
154
- async ({ category }) => {
155
- const queries = ProductCatalog.Queries as ProductCatalogQueries;
156
- if (queries?.ProductsByCategory == null) {
157
- return {
158
- content: [{ type: 'text' as const, text: 'ProductCatalog.Queries.ProductsByCategory is not available' }],
159
- isError: true,
160
- };
161
- }
162
- const categoryQuery = queries.ProductsByCategory;
163
- const result = await categoryQuery({ category });
164
- return { content: [{ type: 'text' as const, text: JSON.stringify(result.data.products, null, 2) }] };
165
- },
166
- );
112
+ function registerProductCatalogToolsOnce(): void {
113
+ if (_toolsRegistered) return;
114
+ _toolsRegistered = true;
167
115
 
168
- // Search
169
- interface ProductSearchParams extends Record<string, unknown> {
170
- query: string;
171
- }
172
- registerTool<ProductSearchParams>(
173
- 'PRODUCT_CATALOGUE_SEARCH',
174
- {
175
- title: 'Search Products',
176
- description: 'Search for products using a query string',
177
- inputSchema: { query: z.string().min(1, 'Search query is required') },
178
- schema: zGetApiProductsSearchResponse,
179
- schemaName: 'GetApiProductsSearchResponse',
180
- schemaDescription: 'Array of ProductCatalogItem',
181
- },
182
- async ({ query }) => {
183
- const queries = ProductCatalog.Queries as ProductCatalogQueries;
184
- if (queries?.ProductSearchResults == null) {
185
- return {
186
- content: [{ type: 'text' as const, text: 'ProductCatalog.Queries.ProductSearchResults is not available' }],
187
- isError: true,
188
- };
189
- }
190
- const searchQuery = queries.ProductSearchResults;
191
- const result = await searchQuery({ query });
192
- return { content: [{ type: 'text' as const, text: JSON.stringify(result.data.products, null, 2) }] };
193
- },
194
- );
116
+ // All products
117
+ registerTool<Record<string, unknown>>(
118
+ 'PRODUCT_CATALOGUE_PRODUCTS',
119
+ {
120
+ title: 'Get All Products',
121
+ description: 'Fetches all products from the product catalog',
122
+ inputSchema: {},
123
+ schema: zGetApiProductsResponse,
124
+ schemaName: 'GetApiProductsResponse',
125
+ schemaDescription: 'Array of ProductCatalogItem',
126
+ },
127
+ async () => {
128
+ const queries = _ProductCatalog.Queries as ProductCatalogQueries;
129
+ if (!queries?.Products) {
130
+ return {
131
+ content: [{ type: 'text' as const, text: 'ProductCatalog.Queries.Products is not available' }],
132
+ isError: true,
133
+ };
134
+ }
135
+ const result = await queries.Products();
136
+ return { content: [{ type: 'text' as const, text: JSON.stringify(result.data.products, null, 2) }] };
137
+ },
138
+ );
195
139
 
196
- // Details
197
- interface ProductDetailsParams extends Record<string, unknown> {
198
- id: string;
140
+ // By category
141
+ interface ProductsByCategoryParams extends Record<string, unknown> {
142
+ category: string;
143
+ }
144
+ registerTool<ProductsByCategoryParams>(
145
+ 'PRODUCT_CATALOGUE_PRODUCTS_BY_CATEGORY',
146
+ {
147
+ title: 'Get Products by Category',
148
+ description: 'Fetches products from a specific category',
149
+ inputSchema: { category: z.string().min(1, 'Category is required') },
150
+ schema: zGetApiProductsCategoryByCategoryResponse,
151
+ schemaName: 'GetApiProductsCategoryByCategoryResponse',
152
+ schemaDescription: 'Array of ProductCatalogItem',
153
+ },
154
+ async ({ category }) => {
155
+ const queries = _ProductCatalog.Queries as ProductCatalogQueries;
156
+ if (!queries?.ProductsByCategory) {
157
+ return {
158
+ content: [{ type: 'text' as const, text: 'ProductCatalog.Queries.ProductsByCategory is not available' }],
159
+ isError: true,
160
+ };
161
+ }
162
+ const result = await queries.ProductsByCategory({ category });
163
+ return { content: [{ type: 'text' as const, text: JSON.stringify(result.data.products, null, 2) }] };
164
+ },
165
+ );
166
+
167
+ // Search
168
+ interface ProductSearchParams extends Record<string, unknown> {
169
+ query: string;
170
+ }
171
+ registerTool<ProductSearchParams>(
172
+ 'PRODUCT_CATALOGUE_SEARCH',
173
+ {
174
+ title: 'Search Products',
175
+ description: 'Search for products using a query string',
176
+ inputSchema: { query: z.string().min(1, 'Search query is required') },
177
+ schema: zGetApiProductsSearchResponse,
178
+ schemaName: 'GetApiProductsSearchResponse',
179
+ schemaDescription: 'Array of ProductCatalogItem',
180
+ },
181
+ async ({ query }) => {
182
+ const queries = _ProductCatalog.Queries as ProductCatalogQueries;
183
+ if (!queries?.ProductSearchResults) {
184
+ return {
185
+ content: [{ type: 'text' as const, text: 'ProductCatalog.Queries.ProductSearchResults is not available' }],
186
+ isError: true,
187
+ };
188
+ }
189
+ const result = await queries.ProductSearchResults({ query });
190
+ return { content: [{ type: 'text' as const, text: JSON.stringify(result.data.products, null, 2) }] };
191
+ },
192
+ );
193
+
194
+ // Details
195
+ interface ProductDetailsParams extends Record<string, unknown> {
196
+ id: string;
197
+ }
198
+ registerTool<ProductDetailsParams>(
199
+ 'PRODUCT_CATALOGUE_PRODUCT_DETAILS',
200
+ {
201
+ title: 'Get Product Details',
202
+ description: 'Fetches detailed information about a specific product',
203
+ inputSchema: { id: z.string().min(1, 'Product ID is required') },
204
+ schema: zGetApiProductsByIdResponse,
205
+ schemaName: 'GetApiProductsByIdResponse',
206
+ schemaDescription: 'Single ProductCatalogItem',
207
+ },
208
+ async ({ id }) => {
209
+ const queries = _ProductCatalog.Queries as ProductCatalogQueries;
210
+ if (!queries?.ProductDetails) {
211
+ return {
212
+ content: [{ type: 'text' as const, text: 'ProductCatalog.Queries.ProductDetails is not available' }],
213
+ isError: true,
214
+ };
215
+ }
216
+ const result = await queries.ProductDetails({ id });
217
+ if (result.data.product === null) {
218
+ return { content: [{ type: 'text' as const, text: `Product with ID "${id}" not found` }], isError: true };
219
+ }
220
+ return { content: [{ type: 'text' as const, text: JSON.stringify(result.data.product, null, 2) }] };
221
+ },
222
+ );
199
223
  }
200
- registerTool<ProductDetailsParams>(
201
- 'PRODUCT_CATALOGUE_PRODUCT_DETAILS',
202
- {
203
- title: 'Get Product Details',
204
- description: 'Fetches detailed information about a specific product',
205
- inputSchema: { id: z.string().min(1, 'Product ID is required') },
206
- schema: zGetApiProductsByIdResponse,
207
- schemaName: 'GetApiProductsByIdResponse',
208
- schemaDescription: 'Single ProductCatalogItem',
209
- },
210
- async ({ id }) => {
211
- const queries = ProductCatalog.Queries as ProductCatalogQueries;
212
- if (queries?.ProductDetails == null) {
213
- return {
214
- content: [{ type: 'text' as const, text: 'ProductCatalog.Queries.ProductDetails is not available' }],
215
- isError: true,
216
- };
217
- }
218
- const detailsQuery = queries.ProductDetails;
219
- const result = await detailsQuery({ id });
220
- if (result.data.product === null) {
221
- return { content: [{ type: 'text' as const, text: `Product with ID "${id}" not found` }], isError: true };
222
- }
223
- return { content: [{ type: 'text' as const, text: JSON.stringify(result.data.product, null, 2) }] };
224
+
225
+ // registers tools on *first usage* of the integration
226
+ export const ProductCatalog: Integration<'product-catalog', ProductCatalogQueries> = new Proxy(_ProductCatalog, {
227
+ get(target, prop, receiver) {
228
+ // First touch of ProductCatalog triggers tool registration
229
+ registerProductCatalogToolsOnce();
230
+ return Reflect.get(target, prop, receiver);
224
231
  },
225
- );
232
+ });
@@ -19,7 +19,6 @@ import {
19
19
 
20
20
  import { AI, ProductCatalog, type DoChat, type ChatCompleted, type Products } from '../server/src/integrations';
21
21
 
22
-
23
22
  type ShoppingCriteriaEntered = Event<
24
23
  'ShoppingCriteriaEntered',
25
24
  {
@@ -2,6 +2,7 @@
2
2
  "name": "shopping-assistant",
3
3
  "type": "module",
4
4
  "scripts": {
5
+ "auto": "auto",
5
6
  "start": "dotenv -e .env -- pnpm --parallel start",
6
7
  "build": "pnpm --parallel build",
7
8
  "start:ecommerce-site": "cd examples/ecommerce-site && pnpm start",
@@ -10,18 +11,20 @@
10
11
  "start:examples": "pnpm --parallel --filter @examples/* start 2>&1 | grep -E '(localhost|Local)' || true"
11
12
  },
12
13
  "dependencies": {
13
- "@auto-engineer/message-bus": "latest",
14
- "@auto-engineer/server-checks": "latest",
15
- "@auto-engineer/design-system-importer": "latest",
16
- "@auto-engineer/server-generator-apollo-emmett": "latest",
17
- "@auto-engineer/flow": "latest",
18
- "@auto-engineer/frontend-checks": "latest",
19
- "@auto-engineer/frontend-implementer": "latest",
20
- "@auto-engineer/information-architect": "latest",
21
- "@auto-engineer/frontend-generator-react-graphql": "latest",
22
- "@auto-engineer/server-implementer": "latest"
14
+ "@auto-engineer/cli": "workspace:*",
15
+ "@auto-engineer/design-system-importer": "workspace:*",
16
+ "@auto-engineer/flow": "workspace:*",
17
+ "@auto-engineer/frontend-checks": "workspace:*",
18
+ "@auto-engineer/frontend-generator-react-graphql": "workspace:*",
19
+ "@auto-engineer/frontend-implementer": "workspace:*",
20
+ "@auto-engineer/information-architect": "workspace:*",
21
+ "@auto-engineer/message-bus": "workspace:*",
22
+ "@auto-engineer/server-checks": "workspace:*",
23
+ "@auto-engineer/server-generator-apollo-emmett": "workspace:*",
24
+ "@auto-engineer/server-implementer": "workspace:*"
23
25
  },
24
26
  "devDependencies": {
27
+ "chokidar": "^3.6.0",
25
28
  "dotenv": "^16.4.5",
26
29
  "dotenv-cli": "^9.0.0",
27
30
  "tsx": "^3.12.7"
@@ -7,11 +7,11 @@
7
7
  "start": "tsx --no-deprecation src/server.ts",
8
8
  "type-check": "tsc --noEmit",
9
9
  "test": "vitest run",
10
- "dev": "tsx --no-deprecation src/server.ts"
10
+ "dev": "tsx watch --no-deprecation src/server.ts"
11
11
  },
12
12
  "dependencies": {
13
13
  "@auto-engineer/ai-gateway": "latest",
14
- "@auto-engineer/flow": "latest",
14
+ "@auto-engineer/flow": "^0.1.1",
15
15
  "axios": "^1.11.0",
16
16
  "@event-driven-io/emmett": "^0.38.2",
17
17
  "type-graphql": "^2.0.0-rc.2",
@@ -1,8 +0,0 @@
1
- # Auto-Engineer Environment Variables
2
- ANTHROPIC_API_KEY=
3
- OPENAI_API_KEY=
4
- XAI_API_KEY=
5
- GEMINI_API_KEY=
6
-
7
- FIGMA_PERSONAL_TOKEN=
8
- FIGMA_FILE_ID=
@@ -1,4 +0,0 @@
1
-
2
- > @auto-engineer/ai-integration@0.6.1 build /Users/sam/WebstormProjects/top/auto-engineer/integrations/ai-chat-completion
3
- > tsc
4
-
@@ -1,12 +0,0 @@
1
-
2
- 
3
- > @auto-engineer/ai-integration@0.6.1 format /Users/sam/WebstormProjects/top/auto-engineer/integrations/ai-chat-completion
4
- > prettier --write "**/*.{js,ts,json,md,yml,yaml}" --ignore-path ../../.prettierignore
5
-
6
- CHANGELOG.mdCHANGELOG.md 25ms (unchanged)
7
- eslint.config.tseslint.config.ts 27ms (unchanged)
8
- package.jsonpackage.json 12ms (unchanged)
9
- src/ai-integration.tssrc/ai-integration.ts 14ms (unchanged)
10
- src/index.tssrc/index.ts 1ms (unchanged)
11
- tsconfig.jsontsconfig.json 1ms (unchanged)
12
- tsconfig.test.jsontsconfig.test.json 1ms (unchanged)
@@ -1,4 +0,0 @@
1
-
2
- > @auto-engineer/ai-integration@0.6.1 lint /Users/sam/WebstormProjects/top/auto-engineer/integrations/ai-chat-completion
3
- > eslint 'src/**/*.ts' --max-warnings 0 --config ./eslint.config.ts
4
-
@@ -1,12 +0,0 @@
1
-
2
- > @auto-engineer/ai-integration@0.6.1 test /Users/sam/WebstormProjects/top/auto-engineer/integrations/ai-chat-completion
3
- > vitest run
4
-
5
-
6
- RUN v3.2.4 /Users/sam/WebstormProjects/top/auto-engineer/integrations/ai-chat-completion
7
-
8
- No test files found, exiting with code 0
9
-
10
- include: **/*.specs.{js,ts}
11
- exclude: **/.tmp/**, **/node_modules/**, **/dist/**
12
-
@@ -1,5 +0,0 @@
1
-
2
- 
3
- > @auto-engineer/ai-integration@0.6.1 type-check /Users/sam/WebstormProjects/top/auto-engineer/integrations/ai-chat-completion
4
- > tsc --noEmit
5
-
@@ -1,23 +0,0 @@
1
- import { Integration, Event, Command } from '@auto-engineer/flow';
2
- export type ChatCompleted = Event<'ChatCompleted', {
3
- sessionId: string;
4
- suggestedItems: {
5
- productId: string;
6
- name: string;
7
- quantity: number;
8
- reason: string;
9
- }[];
10
- timestamp: Date;
11
- }>;
12
- export type DoChat = Command<'DoChat', {
13
- sessionId: string;
14
- prompt: string;
15
- systemPrompt?: string;
16
- schemaName?: string;
17
- }>;
18
- type AICommands = {
19
- DoChat: <T>(command: DoChat) => Promise<T>;
20
- };
21
- export declare const AI: Integration<'ai', Record<string, never>, AICommands>;
22
- export {};
23
- //# sourceMappingURL=ai-integration.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ai-integration.d.ts","sourceRoot":"","sources":["../src/ai-integration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AASlE,MAAM,MAAM,aAAa,GAAG,KAAK,CAC/B,eAAe,EACf;IACE,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACxF,SAAS,EAAE,IAAI,CAAC;CACjB,CACF,CAAC;AAEF,MAAM,MAAM,MAAM,GAAG,OAAO,CAC1B,QAAQ,EACR;IACE,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CACF,CAAC;AAEF,KAAK,UAAU,GAAG;IAChB,MAAM,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;CAC5C,CAAC;AAEF,eAAO,MAAM,EAAE,EAAE,WAAW,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,UAAU,CA2CnE,CAAC"}
@@ -1,41 +0,0 @@
1
- import { generateStructuredDataWithAI, AIProvider, z, getSchemaByName, generateTextWithAI, } from '@auto-engineer/ai-gateway';
2
- export const AI = {
3
- __brand: 'Integration',
4
- type: 'ai',
5
- name: 'AI',
6
- Commands: {
7
- schema: {
8
- DoChat: z.object({
9
- sessionId: z.string(),
10
- prompt: z.string(),
11
- systemPrompt: z.string().optional(),
12
- schemaName: z.string(),
13
- }),
14
- },
15
- DoChat: async (command) => {
16
- const { prompt, systemPrompt, schemaName } = command.data;
17
- const fullPrompt = systemPrompt?.trim() != null ? `${systemPrompt.trim()}\n\n${prompt.trim()}` : prompt.trim();
18
- if (schemaName != null) {
19
- const schema = getSchemaByName(schemaName);
20
- if (schema) {
21
- return await generateStructuredDataWithAI(fullPrompt, AIProvider.Anthropic, {
22
- schema: schema,
23
- schemaName,
24
- schemaDescription: `AI output matching schema '${schemaName}'`,
25
- includeTools: true,
26
- });
27
- }
28
- }
29
- const raw = await generateTextWithAI(fullPrompt, AIProvider.Anthropic, {
30
- includeTools: true,
31
- });
32
- try {
33
- return JSON.parse(raw);
34
- }
35
- catch (err) {
36
- throw new Error(`Failed to parse unstructured AI response: ${err instanceof Error ? err.message : String(err)}`);
37
- }
38
- },
39
- },
40
- };
41
- //# sourceMappingURL=ai-integration.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ai-integration.js","sourceRoot":"","sources":["../src/ai-integration.ts"],"names":[],"mappings":"AACA,OAAO,EACL,4BAA4B,EAC5B,UAAU,EACV,CAAC,EACD,eAAe,EACf,kBAAkB,GACnB,MAAM,2BAA2B,CAAC;AAyBnC,MAAM,CAAC,MAAM,EAAE,GAAyD;IACtE,OAAO,EAAE,aAAsB;IAC/B,IAAI,EAAE,IAAa;IACnB,IAAI,EAAE,IAAI;IACV,QAAQ,EAAE;QACR,MAAM,EAAE;YACN,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;gBACf,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;gBACrB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;gBAClB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;gBACnC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;aACvB,CAAC;SACH;QACD,MAAM,EAAE,KAAK,EAAK,OAAe,EAAc,EAAE;YAC/C,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;YAE1D,MAAM,UAAU,GAAG,YAAY,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,IAAI,EAAE,OAAO,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YAE/G,IAAI,UAAU,IAAI,IAAI,EAAE,CAAC;gBACvB,MAAM,MAAM,GAAG,eAAe,CAAC,UAAU,CAAC,CAAC;gBAE3C,IAAI,MAAM,EAAE,CAAC;oBACX,OAAO,MAAM,4BAA4B,CAAC,UAAU,EAAE,UAAU,CAAC,SAAS,EAAE;wBAC1E,MAAM,EAAE,MAAwB;wBAChC,UAAU;wBACV,iBAAiB,EAAE,8BAA8B,UAAU,GAAG;wBAC9D,YAAY,EAAE,IAAI;qBACnB,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YACD,MAAM,GAAG,GAAG,MAAM,kBAAkB,CAAC,UAAU,EAAE,UAAU,CAAC,SAAS,EAAE;gBACrE,YAAY,EAAE,IAAI;aACnB,CAAC,CAAC;YAEH,IAAI,CAAC;gBACH,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAM,CAAC;YAC9B,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,IAAI,KAAK,CACb,6CAA6C,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAChG,CAAC;YACJ,CAAC;QACH,CAAC;KACF;CACF,CAAC"}
@@ -1,2 +0,0 @@
1
- export * from './ai-integration';
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC"}
@@ -1,2 +0,0 @@
1
- export * from './ai-integration';
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC"}
@@ -1,21 +0,0 @@
1
- #!/bin/sh
2
- basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3
-
4
- case `uname` in
5
- *CYGWIN*|*MINGW*|*MSYS*)
6
- if command -v cygpath > /dev/null 2>&1; then
7
- basedir=`cygpath -w "$basedir"`
8
- fi
9
- ;;
10
- esac
11
-
12
- if [ -z "$NODE_PATH" ]; then
13
- export NODE_PATH="/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/eslint@9.34.0_jiti@2.5.1/node_modules/eslint/bin/node_modules:/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/eslint@9.34.0_jiti@2.5.1/node_modules/eslint/node_modules:/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/eslint@9.34.0_jiti@2.5.1/node_modules:/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/node_modules"
14
- else
15
- export NODE_PATH="/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/eslint@9.34.0_jiti@2.5.1/node_modules/eslint/bin/node_modules:/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/eslint@9.34.0_jiti@2.5.1/node_modules/eslint/node_modules:/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/eslint@9.34.0_jiti@2.5.1/node_modules:/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/node_modules:$NODE_PATH"
16
- fi
17
- if [ -x "$basedir/node" ]; then
18
- exec "$basedir/node" "$basedir/../../../../node_modules/.pnpm/eslint@9.34.0_jiti@2.5.1/node_modules/eslint/bin/eslint.js" "$@"
19
- else
20
- exec node "$basedir/../../../../node_modules/.pnpm/eslint@9.34.0_jiti@2.5.1/node_modules/eslint/bin/eslint.js" "$@"
21
- fi
@@ -1,21 +0,0 @@
1
- #!/bin/sh
2
- basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3
-
4
- case `uname` in
5
- *CYGWIN*|*MINGW*|*MSYS*)
6
- if command -v cygpath > /dev/null 2>&1; then
7
- basedir=`cygpath -w "$basedir"`
8
- fi
9
- ;;
10
- esac
11
-
12
- if [ -z "$NODE_PATH" ]; then
13
- export NODE_PATH="/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/jiti@2.5.1/node_modules/jiti/lib/node_modules:/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/jiti@2.5.1/node_modules/jiti/node_modules:/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/jiti@2.5.1/node_modules:/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/node_modules"
14
- else
15
- export NODE_PATH="/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/jiti@2.5.1/node_modules/jiti/lib/node_modules:/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/jiti@2.5.1/node_modules/jiti/node_modules:/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/jiti@2.5.1/node_modules:/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/node_modules:$NODE_PATH"
16
- fi
17
- if [ -x "$basedir/node" ]; then
18
- exec "$basedir/node" "$basedir/../../../../node_modules/.pnpm/jiti@2.5.1/node_modules/jiti/lib/jiti-cli.mjs" "$@"
19
- else
20
- exec node "$basedir/../../../../node_modules/.pnpm/jiti@2.5.1/node_modules/jiti/lib/jiti-cli.mjs" "$@"
21
- fi
@@ -1,21 +0,0 @@
1
- #!/bin/sh
2
- basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3
-
4
- case `uname` in
5
- *CYGWIN*|*MINGW*|*MSYS*)
6
- if command -v cygpath > /dev/null 2>&1; then
7
- basedir=`cygpath -w "$basedir"`
8
- fi
9
- ;;
10
- esac
11
-
12
- if [ -z "$NODE_PATH" ]; then
13
- export NODE_PATH="/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/msw@2.10.4_@types+node@24.3.0_typescript@5.8.3/node_modules/msw/cli/node_modules:/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/msw@2.10.4_@types+node@24.3.0_typescript@5.8.3/node_modules/msw/node_modules:/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/msw@2.10.4_@types+node@24.3.0_typescript@5.8.3/node_modules:/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/node_modules"
14
- else
15
- export NODE_PATH="/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/msw@2.10.4_@types+node@24.3.0_typescript@5.8.3/node_modules/msw/cli/node_modules:/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/msw@2.10.4_@types+node@24.3.0_typescript@5.8.3/node_modules/msw/node_modules:/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/msw@2.10.4_@types+node@24.3.0_typescript@5.8.3/node_modules:/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/node_modules:$NODE_PATH"
16
- fi
17
- if [ -x "$basedir/node" ]; then
18
- exec "$basedir/node" "$basedir/../../../../node_modules/.pnpm/msw@2.10.4_@types+node@24.3.0_typescript@5.8.3/node_modules/msw/cli/index.js" "$@"
19
- else
20
- exec node "$basedir/../../../../node_modules/.pnpm/msw@2.10.4_@types+node@24.3.0_typescript@5.8.3/node_modules/msw/cli/index.js" "$@"
21
- fi
@@ -1,21 +0,0 @@
1
- #!/bin/sh
2
- basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3
-
4
- case `uname` in
5
- *CYGWIN*|*MINGW*|*MSYS*)
6
- if command -v cygpath > /dev/null 2>&1; then
7
- basedir=`cygpath -w "$basedir"`
8
- fi
9
- ;;
10
- esac
11
-
12
- if [ -z "$NODE_PATH" ]; then
13
- export NODE_PATH="/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/bin/node_modules:/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/node_modules:/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/typescript@5.8.3/node_modules:/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/node_modules"
14
- else
15
- export NODE_PATH="/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/bin/node_modules:/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/node_modules:/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/typescript@5.8.3/node_modules:/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/node_modules:$NODE_PATH"
16
- fi
17
- if [ -x "$basedir/node" ]; then
18
- exec "$basedir/node" "$basedir/../../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/bin/tsc" "$@"
19
- else
20
- exec node "$basedir/../../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/bin/tsc" "$@"
21
- fi
@@ -1,21 +0,0 @@
1
- #!/bin/sh
2
- basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3
-
4
- case `uname` in
5
- *CYGWIN*|*MINGW*|*MSYS*)
6
- if command -v cygpath > /dev/null 2>&1; then
7
- basedir=`cygpath -w "$basedir"`
8
- fi
9
- ;;
10
- esac
11
-
12
- if [ -z "$NODE_PATH" ]; then
13
- export NODE_PATH="/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/bin/node_modules:/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/node_modules:/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/typescript@5.8.3/node_modules:/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/node_modules"
14
- else
15
- export NODE_PATH="/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/bin/node_modules:/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/node_modules:/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/typescript@5.8.3/node_modules:/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/node_modules:$NODE_PATH"
16
- fi
17
- if [ -x "$basedir/node" ]; then
18
- exec "$basedir/node" "$basedir/../../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/bin/tsserver" "$@"
19
- else
20
- exec node "$basedir/../../../../node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/bin/tsserver" "$@"
21
- fi
@@ -1,21 +0,0 @@
1
- #!/bin/sh
2
- basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
3
-
4
- case `uname` in
5
- *CYGWIN*|*MINGW*|*MSYS*)
6
- if command -v cygpath > /dev/null 2>&1; then
7
- basedir=`cygpath -w "$basedir"`
8
- fi
9
- ;;
10
- esac
11
-
12
- if [ -z "$NODE_PATH" ]; then
13
- export NODE_PATH="/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/vite@5.4.19_@types+node@22.18.0/node_modules/vite/bin/node_modules:/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/vite@5.4.19_@types+node@22.18.0/node_modules/vite/node_modules:/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/vite@5.4.19_@types+node@22.18.0/node_modules:/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/node_modules"
14
- else
15
- export NODE_PATH="/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/vite@5.4.19_@types+node@22.18.0/node_modules/vite/bin/node_modules:/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/vite@5.4.19_@types+node@22.18.0/node_modules/vite/node_modules:/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/vite@5.4.19_@types+node@22.18.0/node_modules:/Users/sam/WebstormProjects/top/auto-engineer/node_modules/.pnpm/node_modules:$NODE_PATH"
16
- fi
17
- if [ -x "$basedir/node" ]; then
18
- exec "$basedir/node" "$basedir/../../../../node_modules/.pnpm/vite@5.4.19_@types+node@22.18.0/node_modules/vite/bin/vite.js" "$@"
19
- else
20
- exec node "$basedir/../../../../node_modules/.pnpm/vite@5.4.19_@types+node@22.18.0/node_modules/vite/bin/vite.js" "$@"
21
- fi