@squidcloud/local-backend 1.0.151 → 1.0.153

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 (35) hide show
  1. package/dist/common/src/ai-assistant.types.d.ts +1 -0
  2. package/dist/common/src/ai-chatbot.types.d.ts +2 -1
  3. package/dist/common/src/ai-chatbot.types.js +10 -1
  4. package/dist/common/src/ai-chatbot.types.js.map +1 -1
  5. package/dist/common/src/application.types.d.ts +7 -2
  6. package/dist/common/src/backend-run.types.d.ts +1 -1
  7. package/dist/common/src/backend-run.types.js +23 -2
  8. package/dist/common/src/backend-run.types.js.map +1 -1
  9. package/dist/common/src/bundle-api.types.d.ts +2 -2
  10. package/dist/common/src/bundle-data.types.d.ts +6 -0
  11. package/dist/common/src/index.d.ts +2 -0
  12. package/dist/common/src/index.js +2 -0
  13. package/dist/common/src/index.js.map +1 -1
  14. package/dist/common/src/openapi-response.d.ts +6 -0
  15. package/dist/common/src/openapi-response.js +3 -0
  16. package/dist/common/src/openapi-response.js.map +1 -0
  17. package/dist/common/src/openapi.types.d.ts +26 -0
  18. package/dist/common/src/openapi.types.js +3 -0
  19. package/dist/common/src/openapi.types.js.map +1 -0
  20. package/dist/common/src/query/pagination.js +2 -0
  21. package/dist/common/src/query/pagination.js.map +1 -1
  22. package/dist/common/src/utils/http.js +2 -0
  23. package/dist/common/src/utils/http.js.map +1 -1
  24. package/dist/internal-common/src/local-dev.types.d.ts +21 -4
  25. package/dist/internal-common/src/local-dev.types.js +8 -0
  26. package/dist/internal-common/src/local-dev.types.js.map +1 -1
  27. package/dist/local-backend/package.json +5 -3
  28. package/dist/local-backend/src/local-backend-socket.service.d.ts +4 -0
  29. package/dist/local-backend/src/local-backend-socket.service.js +100 -1
  30. package/dist/local-backend/src/local-backend-socket.service.js.map +1 -1
  31. package/dist/local-backend/src/utils/shell-runner.d.ts +4 -0
  32. package/dist/local-backend/src/utils/shell-runner.js +28 -0
  33. package/dist/local-backend/src/utils/shell-runner.js.map +1 -0
  34. package/dist/tsconfig.build.tsbuildinfo +1 -1
  35. package/package.json +5 -3
@@ -47,4 +47,5 @@ export interface CreateAssistantThreadResponse {
47
47
  }
48
48
  export interface QueryAssistantResponse {
49
49
  answer: string;
50
+ annotations: Record<string, string>;
50
51
  }
@@ -1,6 +1,6 @@
1
1
  import { ClientRequestId, IntegrationId } from './communication.types';
2
2
  import { AiChatbotProfileMetadata } from './integrations';
3
- export declare const AI_MODEL_NAMES: readonly ["gpt-3.5-turbo", "gpt-4", "claude-2", "gpt-4-1106-preview"];
3
+ export declare const AI_MODEL_NAMES: readonly ["gpt-3.5-turbo", "gpt-3.5-turbo-1106", "gpt-4", "claude-2", "gpt-4-1106-preview"];
4
4
  export type AiModelName = (typeof AI_MODEL_NAMES)[number];
5
5
  export type ApiKeySource = 'user' | 'system';
6
6
  type ModelDataType = {
@@ -20,6 +20,7 @@ export interface AskQuestionInternalRequest {
20
20
  model: AiModelName;
21
21
  prompt: string;
22
22
  temperature?: number;
23
+ responseFormat?: OpenAiResponseFormat;
23
24
  }
24
25
  export interface AskQuestionInternalResponse {
25
26
  answer: string;
@@ -1,7 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.AiModelData = exports.AI_MODEL_NAMES = void 0;
4
- exports.AI_MODEL_NAMES = ['gpt-3.5-turbo', 'gpt-4', 'claude-2', 'gpt-4-1106-preview'];
4
+ exports.AI_MODEL_NAMES = [
5
+ 'gpt-3.5-turbo',
6
+ 'gpt-3.5-turbo-1106',
7
+ 'gpt-4',
8
+ 'claude-2',
9
+ 'gpt-4-1106-preview',
10
+ ];
5
11
  exports.AiModelData = {
6
12
  'gpt-4': {
7
13
  tokens: 8192,
@@ -9,6 +15,9 @@ exports.AiModelData = {
9
15
  'gpt-3.5-turbo': {
10
16
  tokens: 4096,
11
17
  },
18
+ 'gpt-3.5-turbo-1106': {
19
+ tokens: 16385,
20
+ },
12
21
  'claude-2': {
13
22
  tokens: 100000,
14
23
  },
@@ -1 +1 @@
1
- {"version":3,"file":"ai-chatbot.types.js","sourceRoot":"","sources":["../../../../common/src/ai-chatbot.types.ts"],"names":[],"mappings":";;;AAIa,QAAA,cAAc,GAAG,CAAC,eAAe,EAAE,OAAO,EAAE,UAAU,EAAE,oBAAoB,CAAU,CAAC;AAWvF,QAAA,WAAW,GAAuC;IAC7D,OAAO,EAAE;QACP,MAAM,EAAE,IAAI;KACb;IACD,eAAe,EAAE;QACf,MAAM,EAAE,IAAI;KACb;IACD,UAAU,EAAE;QACV,MAAM,EAAE,MAAO;KAChB;IACD,oBAAoB,EAAE;QACpB,MAAM,EAAE,IAAI;KACb;CACF,CAAC"}
1
+ {"version":3,"file":"ai-chatbot.types.js","sourceRoot":"","sources":["../../../../common/src/ai-chatbot.types.ts"],"names":[],"mappings":";;;AAIa,QAAA,cAAc,GAAG;IAC5B,eAAe;IACf,oBAAoB;IACpB,OAAO;IACP,UAAU;IACV,oBAAoB;CACZ,CAAC;AAWE,QAAA,WAAW,GAAuC;IAC7D,OAAO,EAAE;QACP,MAAM,EAAE,IAAI;KACb;IACD,eAAe,EAAE;QACf,MAAM,EAAE,IAAI;KACb;IACD,oBAAoB,EAAE;QACpB,MAAM,EAAE,KAAM;KACf;IACD,UAAU,EAAE;QACV,MAAM,EAAE,MAAO;KAChB;IACD,oBAAoB,EAAE;QACpB,MAAM,EAAE,IAAI;KACb;CACF,CAAC"}
@@ -115,8 +115,8 @@ export interface OpenIdProvider {
115
115
  export interface Application {
116
116
  appId: AppId;
117
117
  organizationId: string;
118
- createdAt: Date;
119
- updatedAt: Date;
118
+ creationDate: Date;
119
+ updateDate: Date;
120
120
  allowedHosts: string[];
121
121
  openIdProvider?: OpenIdProvider;
122
122
  integrations: Record<IntegrationId, IntegrationConfig>;
@@ -155,6 +155,11 @@ export interface CreateEnvironmentRequest {
155
155
  sourceAppId: AppId;
156
156
  environmentId: EnvironmentId;
157
157
  }
158
+ export interface UpdateApplicationCodeRequest {
159
+ appId: AppId;
160
+ openApiSpecStr?: string;
161
+ openApiControllersStr?: string;
162
+ }
158
163
  interface BaseUpsertIntegrationRequest<T extends IntegrationTypeWithConfig, C extends IntegrationConfig> {
159
164
  id: IntegrationId;
160
165
  type: T;
@@ -23,7 +23,7 @@ export interface LoadJsPayload {
23
23
  }
24
24
  export declare const ExecuteFunctionSecureAnnotations: readonly ["secureDistributedLock", "secureQuery", "secureMutation", "secureNamedQuery", "secureNativeQuery", "secureGraphQL", "secureApi", "secureAiChatbotChat", "secureAiChatbotMutation"];
25
25
  export type ExecuteFunctionSecureAnnotationType = (typeof ExecuteFunctionSecureAnnotations)[number];
26
- export type ExecuteFunctionAnnotationType = 'executable' | 'webhook' | 'scheduler' | 'trigger' | 'transformRead' | 'transformWrite' | 'metadata' | 'aiFunction' | ExecuteFunctionSecureAnnotationType;
26
+ export type ExecuteFunctionAnnotationType = 'executable' | 'webhook' | 'scheduler' | 'trigger' | 'transformRead' | 'transformWrite' | 'metadata' | 'aiFunction' | 'openapi' | ExecuteFunctionSecureAnnotationType;
27
27
  export interface ExecuteFunctionPayload {
28
28
  functionName: string;
29
29
  params: Array<unknown>;
@@ -7,7 +7,6 @@ const graphql_context_1 = require("./graphql.context");
7
7
  const mutation_context_1 = require("./mutation.context");
8
8
  const query_1 = require("./query");
9
9
  const secret_types_1 = require("./secret.types");
10
- const serialization_1 = require("./utils/serialization");
11
10
  const assertic_1 = require("assertic");
12
11
  const native_query_context_1 = require("./native-query.context");
13
12
  const ai_chatbot_context_1 = require("./ai-chatbot.context");
@@ -65,7 +64,7 @@ function transformResponse(functionResponse, executeFunctionAnnotationType) {
65
64
  'content-type': isStringOrNullBody ? 'text/plain' : 'application/json',
66
65
  'cache-control': 'no-cache',
67
66
  };
68
- const body = isStringOrNullBody ? functionResponse || '' : (0, serialization_1.serializeObj)(functionResponse);
67
+ const body = isStringOrNullBody ? functionResponse || '' : JSON.stringify(functionResponse);
69
68
  const webhookResponse = {
70
69
  headers,
71
70
  body,
@@ -73,6 +72,25 @@ function transformResponse(functionResponse, executeFunctionAnnotationType) {
73
72
  };
74
73
  return webhookResponse;
75
74
  }
75
+ if (executeFunctionAnnotationType === 'openapi') {
76
+ if (isOpenApiResponse(functionResponse)) {
77
+ delete functionResponse['__isOpenApiResponse__'];
78
+ return functionResponse;
79
+ }
80
+ functionResponse = functionResponse !== null && functionResponse !== void 0 ? functionResponse : null;
81
+ const isStringOrNullBody = functionResponse === null || typeof functionResponse === 'string';
82
+ const headers = {
83
+ 'content-type': isStringOrNullBody ? 'text/plain' : 'application/json',
84
+ 'cache-control': 'no-cache',
85
+ };
86
+ const body = isStringOrNullBody ? functionResponse || '' : JSON.stringify(functionResponse);
87
+ const openApiResponse = {
88
+ headers,
89
+ body,
90
+ statusCode: functionResponse === null ? 204 : 200,
91
+ };
92
+ return openApiResponse;
93
+ }
76
94
  return functionResponse;
77
95
  }
78
96
  exports.transformResponse = transformResponse;
@@ -90,4 +108,7 @@ exports.convertToRunSecrets = convertToRunSecrets;
90
108
  function isWebhookResponse(response) {
91
109
  return response && response.__isWebhookResponse__;
92
110
  }
111
+ function isOpenApiResponse(response) {
112
+ return response && response.__isOpenApiResponse__;
113
+ }
93
114
  //# sourceMappingURL=backend-run.types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"backend-run.types.js","sourceRoot":"","sources":["../../../../common/src/backend-run.types.ts"],"names":[],"mappings":";;;AAAA,yDAAoD;AAEpD,yEAAoE;AACpE,uDAAmD;AACnD,yDAAqD;AACrD,mCAAuC;AACvC,iDAA6F;AAE7F,yDAAqD;AACrD,uCAAkC;AAClC,iEAA4D;AAC5D,6DAAsF;AAkCzE,QAAA,gCAAgC,GAAG;IAC9C,uBAAuB;IACvB,aAAa;IACb,gBAAgB;IAChB,kBAAkB;IAClB,mBAAmB;IACnB,eAAe;IACf,WAAW;IACX,qBAAqB;IACrB,yBAAyB;CACjB,CAAC;AA8BX,SAAgB,eAAe,CAC7B,MAAkB,EAClB,6BAA4D;IAE5D,QAAQ,6BAA6B,EAAE;QACrC,KAAK,WAAW;YACd,OAAO,EAAE,CAAC;QACZ,KAAK,aAAa;YAChB,OAAO,CAAC,IAAI,oBAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;QAC7C,KAAK,gBAAgB;YACnB,OAAO,CAAC,IAAI,kCAAe,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;QAClH,KAAK,mBAAmB;YACtB,OAAO,CAAC,IAAI,yCAAkB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACnE,KAAK,uBAAuB;YAC1B,OAAO,CAAC,IAAI,iDAAsB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;QACvD,KAAK,eAAe;YAClB,OAAO,CAAC,IAAI,gCAAc,CAAC,MAAM,CAAC,CAAC,CAAQ,CAAC,CAAC,CAAC;QAChD,KAAK,WAAW;YACd,OAAO,CAAC,IAAI,iCAAc,CAAC,MAAM,CAAC,CAAC,CAAQ,CAAC,CAAC,CAAC;QAChD,KAAK,qBAAqB;YACxB,OAAO,CAAC,IAAI,yCAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/C,KAAK,yBAAyB;YAC5B,OAAO,CAAC,IAAI,6CAAwB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACnD;YACE,OAAO,MAAM,CAAC;KACjB;AACH,CAAC;AA1BD,0CA0BC;AAGD,SAAgB,iBAAiB,CAC/B,gBAAqB,EACrB,6BAA4D;IAE5D,IAAI,wCAAgC,CAAC,QAAQ,CAAC,6BAAoE,CAAC,EAAE;QACnH,OAAO;YACL,WAAW,EAAE,gBAAgB;YAC7B,UAAU,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS;SAC9C,CAAC;KACH;IACD,IAAI,6BAA6B,KAAK,SAAS,EAAE;QAC/C,IAAI,iBAAiB,CAAC,gBAAgB,CAAC,EAAE;YACvC,OAAQ,gBAA6C,CAAC,uBAAuB,CAAC,CAAC;YAC/E,OAAO,gBAAgB,CAAC;SACzB;QAED,gBAAgB,GAAG,gBAAgB,aAAhB,gBAAgB,cAAhB,gBAAgB,GAAI,IAAI,CAAC;QAC5C,MAAM,kBAAkB,GAAG,gBAAgB,KAAK,IAAI,IAAI,OAAO,gBAAgB,KAAK,QAAQ,CAAC;QAC7F,MAAM,OAAO,GAAG;YACd,cAAc,EAAE,kBAAkB,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,kBAAkB;YACtE,eAAe,EAAE,UAAU;SAC5B,CAAC;QACF,MAAM,IAAI,GAAG,kBAAkB,CAAC,CAAC,CAAC,gBAAgB,IAAI,EAAE,CAAC,CAAC,CAAC,IAAA,4BAAY,EAAC,gBAAgB,CAAC,CAAC;QAG1F,MAAM,eAAe,GAAmD;YACtE,OAAO;YACP,IAAI;YACJ,UAAU,EAAE,gBAAgB,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG;SAClD,CAAC;QACF,OAAO,eAAe,CAAC;KACxB;IACD,OAAO,gBAAgB,CAAC;AAC1B,CAAC;AAjCD,8CAiCC;AA6BD,SAAgB,mBAAmB,CAAC,UAA8B;IAChE,MAAM,MAAM,GAAe;QACzB,aAAa,EAAE,IAAA,iBAAM,EAAC,UAAU,CAAC,OAAO,CAAC,8BAAe,CAAC,CAAC,KAAK,EAAE,6BAA6B,CAAW;QACzG,MAAM,EAAE,EAAE;KACX,CAAC;IAEF,KAAK,MAAM,CAAC,GAAG,EAAE,YAAY,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;QACnE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC,KAAK,CAAC;KACzC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAVD,kDAUC;AAED,SAAS,iBAAiB,CAAC,QAAa;IACtC,OAAO,QAAQ,IAAI,QAAQ,CAAC,qBAAqB,CAAC;AACpD,CAAC"}
1
+ {"version":3,"file":"backend-run.types.js","sourceRoot":"","sources":["../../../../common/src/backend-run.types.ts"],"names":[],"mappings":"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"}
@@ -46,8 +46,8 @@ export interface TriggerRequest<T extends DocumentData = any> {
46
46
  }
47
47
  export type SchedulerAction = () => void | Promise<void>;
48
48
  export type WebhookAction = ((request: WebhookRequest) => any) | (() => any);
49
- export interface WebhookRequest {
50
- body: any;
49
+ export interface WebhookRequest<T = any> {
50
+ body: T;
51
51
  rawBody?: string;
52
52
  queryParams: Record<string, string>;
53
53
  headers: Record<string, string>;
@@ -2,6 +2,7 @@ import { SchedulerConfig, SchedulerId, TriggerConfig, TriggerId, WebhookConfig,
2
2
  import { IntegrationId } from './communication.types';
3
3
  import { CollectionName } from './document.types';
4
4
  import { ApiEndpointId } from './integrations';
5
+ import { OpenApiController } from './openapi.types';
5
6
  export type DatabaseActionType = 'read' | 'write' | 'update' | 'insert' | 'delete' | 'all';
6
7
  export type AiChatbotActionType = 'chat' | 'mutate' | 'all';
7
8
  export type ServiceName = string;
@@ -29,6 +30,11 @@ export interface ApplicationBundleData {
29
30
  } & AiChatbotMetadata>;
30
31
  clientConnectionStateChangeHandlers?: Array<ServiceFunctionName>;
31
32
  aiFunctions?: Record<FunctionName, AiFunctionMetadata>;
33
+ openApiControllers?: Array<OpenApiController>;
34
+ }
35
+ export interface LocalBackendData {
36
+ applicationBundleData: ApplicationBundleData;
37
+ openApiSpecStr?: string;
32
38
  }
33
39
  export type AiFunctionParamType = 'string' | 'number' | 'boolean' | 'date';
34
40
  export interface AiFunctionParam {
@@ -14,6 +14,7 @@ export * from './communication.types';
14
14
  export * from './context.types';
15
15
  export * from './distributed-lock.context';
16
16
  export * from './document.types';
17
+ export * from './openapi.types';
17
18
  export * from './graphql.context';
18
19
  export * from './graphql.types';
19
20
  export * from './http-status.enum';
@@ -49,6 +50,7 @@ export * from './utils/transforms';
49
50
  export * from './utils/url';
50
51
  export * from './utils/validation';
51
52
  export * from './webhook-response';
53
+ export * from './openapi-response';
52
54
  export * from './heartbeat.types';
53
55
  export * from './utils/global.utils';
54
56
  export * from './websocket.impl';
@@ -30,6 +30,7 @@ __exportStar(require("./communication.types"), exports);
30
30
  __exportStar(require("./context.types"), exports);
31
31
  __exportStar(require("./distributed-lock.context"), exports);
32
32
  __exportStar(require("./document.types"), exports);
33
+ __exportStar(require("./openapi.types"), exports);
33
34
  __exportStar(require("./graphql.context"), exports);
34
35
  __exportStar(require("./graphql.types"), exports);
35
36
  __exportStar(require("./http-status.enum"), exports);
@@ -65,6 +66,7 @@ __exportStar(require("./utils/transforms"), exports);
65
66
  __exportStar(require("./utils/url"), exports);
66
67
  __exportStar(require("./utils/validation"), exports);
67
68
  __exportStar(require("./webhook-response"), exports);
69
+ __exportStar(require("./openapi-response"), exports);
68
70
  __exportStar(require("./heartbeat.types"), exports);
69
71
  __exportStar(require("./utils/global.utils"), exports);
70
72
  __exportStar(require("./websocket.impl"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../common/src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,uDAAqC;AACrC,qDAAmC;AACnC,uDAAqC;AACrC,qDAAmC;AACnC,8CAA4B;AAC5B,wDAAsC;AACtC,sDAAoC;AACpC,6DAA2C;AAC3C,2DAAyC;AACzC,sDAAoC;AACpC,qDAAmC;AACnC,sDAAoC;AACpC,wDAAsC;AACtC,kDAAgC;AAChC,6DAA2C;AAC3C,mDAAiC;AACjC,oDAAkC;AAClC,kDAAgC;AAChC,qDAAmC;AACnC,iDAA+B;AAC/B,iDAA+B;AAC/B,kDAAgC;AAChC,qDAAmC;AACnC,qDAAmC;AACnC,mDAAiC;AACjC,yDAAuC;AACvC,uDAAqC;AACrC,0CAAwB;AACxB,gDAA8B;AAC9B,4CAA0B;AAC1B,wDAAsC;AACtC,mDAAiC;AACjC,iDAA+B;AAC/B,mDAAiC;AACjC,mDAAiC;AACjC,iDAA+B;AAC/B,+CAA6B;AAC7B,kDAAgC;AAChC,0CAAwB;AACxB,gDAA8B;AAC9B,iDAA+B;AAC/B,gDAA8B;AAC9B,+CAA6B;AAC7B,6CAA2B;AAC3B,uDAAqC;AACrC,iDAA+B;AAC/B,wDAAsC;AACtC,qDAAmC;AACnC,8CAA4B;AAC5B,qDAAmC;AACnC,qDAAmC;AACnC,oDAAkC;AAClC,uDAAqC;AACrC,mDAAiC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../common/src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,uDAAqC;AACrC,qDAAmC;AACnC,uDAAqC;AACrC,qDAAmC;AACnC,8CAA4B;AAC5B,wDAAsC;AACtC,sDAAoC;AACpC,6DAA2C;AAC3C,2DAAyC;AACzC,sDAAoC;AACpC,qDAAmC;AACnC,sDAAoC;AACpC,wDAAsC;AACtC,kDAAgC;AAChC,6DAA2C;AAC3C,mDAAiC;AACjC,kDAAgC;AAChC,oDAAkC;AAClC,kDAAgC;AAChC,qDAAmC;AACnC,iDAA+B;AAC/B,iDAA+B;AAC/B,kDAAgC;AAChC,qDAAmC;AACnC,qDAAmC;AACnC,mDAAiC;AACjC,yDAAuC;AACvC,uDAAqC;AACrC,0CAAwB;AACxB,gDAA8B;AAC9B,4CAA0B;AAC1B,wDAAsC;AACtC,mDAAiC;AACjC,iDAA+B;AAC/B,mDAAiC;AACjC,mDAAiC;AACjC,iDAA+B;AAC/B,+CAA6B;AAC7B,kDAAgC;AAChC,0CAAwB;AACxB,gDAA8B;AAC9B,iDAA+B;AAC/B,gDAA8B;AAC9B,+CAA6B;AAC7B,6CAA2B;AAC3B,uDAAqC;AACrC,iDAA+B;AAC/B,wDAAsC;AACtC,qDAAmC;AACnC,8CAA4B;AAC5B,qDAAmC;AACnC,qDAAmC;AACnC,qDAAmC;AACnC,oDAAkC;AAClC,uDAAqC;AACrC,mDAAiC"}
@@ -0,0 +1,6 @@
1
+ export interface OpenApiResponse {
2
+ headers: Record<string, any>;
3
+ body: any;
4
+ statusCode: number;
5
+ __isOpenApiResponse__: true;
6
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=openapi-response.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openapi-response.js","sourceRoot":"","sources":["../../../../common/src/openapi-response.ts"],"names":[],"mappings":""}
@@ -0,0 +1,26 @@
1
+ export interface OpenApiController {
2
+ actions: OpenApiAction[];
3
+ modulePath: string;
4
+ name: string;
5
+ path: string;
6
+ }
7
+ export interface OpenApiAction {
8
+ fullPath: string;
9
+ method: OpenApiHttpMethod;
10
+ name: string;
11
+ parameters: Record<string, OpenApiParameter>;
12
+ path: string;
13
+ uploadFile: boolean;
14
+ uploadFiles: boolean;
15
+ security: any[];
16
+ successStatus: string | null;
17
+ }
18
+ export interface OpenApiParameter {
19
+ in: OpenApiParameterLocation;
20
+ name: string;
21
+ required?: boolean;
22
+ dataType?: string;
23
+ ref?: string;
24
+ }
25
+ export type OpenApiHttpMethod = 'get' | 'post' | 'put' | 'delete';
26
+ export type OpenApiParameterLocation = 'path' | 'query' | 'header' | 'body';
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=openapi.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openapi.types.js","sourceRoot":"","sources":["../../../../common/src/openapi.types.ts"],"names":[],"mappings":""}
@@ -4,6 +4,7 @@ exports.Pagination = void 0;
4
4
  const rxjs_1 = require("rxjs");
5
5
  const object_1 = require("../utils/object");
6
6
  const lodash_1 = require("lodash");
7
+ const assertic_1 = require("assertic");
7
8
  class Pagination {
8
9
  constructor(snapshotEmitter, options = {}) {
9
10
  this.internalStateObserver = new rxjs_1.BehaviorSubject(null);
@@ -13,6 +14,7 @@ class Pagination {
13
14
  this.onFirstPage = true;
14
15
  this.navigatingToLastPage = false;
15
16
  this.lastElement = null;
17
+ (0, assertic_1.assertTruthy)(snapshotEmitter.getSortOrders().length > 0, 'Unable to paginate results. Please specify a sort order.');
16
18
  this.snapshotSubject.pipe((0, rxjs_1.switchAll)()).subscribe(data => this.dataReceived(data));
17
19
  this.templateSnapshotEmitter = snapshotEmitter.clone();
18
20
  this.options = Object.assign({ pageSize: 100, subscribe: true }, options);
@@ -1 +1 @@
1
- {"version":3,"file":"pagination.js","sourceRoot":"","sources":["../../../../../common/src/query/pagination.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pagination.js","sourceRoot":"","sources":["../../../../../common/src/query/pagination.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,8 @@ const kotlinControllers = [
11
11
  'quota',
12
12
  'named-query',
13
13
  'native-query',
14
+ 'application-kotlin',
15
+ 'openapi',
14
16
  ];
15
17
  function getApplicationUrl(regionPrefix, appId, path) {
16
18
  const baseUrl = 'https://squid.cloud';
@@ -1 +1 @@
1
- {"version":3,"file":"http.js","sourceRoot":"","sources":["../../../../../common/src/utils/http.ts"],"names":[],"mappings":";;;AAAA,MAAM,iBAAiB,GAAG;IACxB,OAAO;IACP,QAAQ;IACR,KAAK;IACL,kBAAkB;IAClB,UAAU;IACV,IAAI;IACJ,OAAO;IACP,aAAa;IACb,cAAc;CACf,CAAC;AAEF,SAAgB,iBAAiB,CAAC,YAAoB,EAAE,KAAa,EAAE,IAAY;IACjF,MAAM,OAAO,GAAG,qBAAqB,CAAC;IACtC,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;IACvC,aAAa,CAAC,IAAI,GAAG,GAAG,KAAK,IAAI,YAAY,IAAI,aAAa,CAAC,IAAI,EAAE,CAAC;IACtE,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAE5C,IAAI,OAAO,CAAC,YAAY,CAAC,EAAE;QACzB,aAAa,CAAC,QAAQ,GAAG,MAAM,CAAC;QAChC,aAAa,CAAC,IAAI,GAAG,iBAAiB,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;QAC9E,IAAI,SAAS,CAAC,YAAY,CAAC,EAAE;YAC3B,aAAa,CAAC,IAAI,GAAG,UAAU,CAAC;SACjC;aAAM,IAAI,KAAK,CAAC,YAAY,CAAC,EAAE;YAC9B,aAAa,CAAC,IAAI,GAAG,WAAW,CAAC;SAClC;KACF;IAED,MAAM,GAAG,GAAG,aAAa,CAAC,QAAQ,EAAE,CAAC;IACrC,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACnD,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC;AACtD,CAAC;AAnBD,8CAmBC;AAED,SAAgB,yBAAyB,CAAC,YAAoB,EAAE,KAAa;IAC3E,MAAM,OAAO,GAA2B,EAAE,CAAC;IAC3C,IAAI,OAAO,CAAC,YAAY,CAAC,EAAE;QACzB,OAAO,CAAC,eAAe,CAAC,GAAG,KAAK,CAAC;KAClC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAPD,8DAOC;AAED,SAAS,OAAO,CAAC,YAAoB;IACnC,OAAO,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AACrC,CAAC;AAED,SAAS,SAAS,CAAC,YAAoB;IACrC,OAAO,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AACvC,CAAC;AAED,SAAS,KAAK,CAAC,YAAoB;IACjC,OAAO,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AACnC,CAAC"}
1
+ {"version":3,"file":"http.js","sourceRoot":"","sources":["../../../../../common/src/utils/http.ts"],"names":[],"mappings":";;;AAAA,MAAM,iBAAiB,GAAG;IACxB,OAAO;IACP,QAAQ;IACR,KAAK;IACL,kBAAkB;IAClB,UAAU;IACV,IAAI;IACJ,OAAO;IACP,aAAa;IACb,cAAc;IACd,oBAAoB;IACpB,SAAS;CACV,CAAC;AAEF,SAAgB,iBAAiB,CAAC,YAAoB,EAAE,KAAa,EAAE,IAAY;IACjF,MAAM,OAAO,GAAG,qBAAqB,CAAC;IACtC,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;IACvC,aAAa,CAAC,IAAI,GAAG,GAAG,KAAK,IAAI,YAAY,IAAI,aAAa,CAAC,IAAI,EAAE,CAAC;IACtE,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAE5C,IAAI,OAAO,CAAC,YAAY,CAAC,EAAE;QACzB,aAAa,CAAC,QAAQ,GAAG,MAAM,CAAC;QAChC,aAAa,CAAC,IAAI,GAAG,iBAAiB,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;QAC9E,IAAI,SAAS,CAAC,YAAY,CAAC,EAAE;YAC3B,aAAa,CAAC,IAAI,GAAG,UAAU,CAAC;SACjC;aAAM,IAAI,KAAK,CAAC,YAAY,CAAC,EAAE;YAC9B,aAAa,CAAC,IAAI,GAAG,WAAW,CAAC;SAClC;KACF;IAED,MAAM,GAAG,GAAG,aAAa,CAAC,QAAQ,EAAE,CAAC;IACrC,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACnD,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC;AACtD,CAAC;AAnBD,8CAmBC;AAED,SAAgB,yBAAyB,CAAC,YAAoB,EAAE,KAAa;IAC3E,MAAM,OAAO,GAA2B,EAAE,CAAC;IAC3C,IAAI,OAAO,CAAC,YAAY,CAAC,EAAE;QACzB,OAAO,CAAC,eAAe,CAAC,GAAG,KAAK,CAAC;KAClC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAPD,8DAOC;AAED,SAAS,OAAO,CAAC,YAAoB;IACnC,OAAO,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AACrC,CAAC;AAED,SAAS,SAAS,CAAC,YAAoB;IACrC,OAAO,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AACvC,CAAC;AAED,SAAS,KAAK,CAAC,YAAoB;IACjC,OAAO,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AACnC,CAAC"}
@@ -1,4 +1,4 @@
1
- import { RunSecrets } from '@squidcloud/common';
1
+ import { LocalBackendData, LogLevel, RunSecrets } from '@squidcloud/common';
2
2
  import { BatchRunConfigurationRequest } from './code-executor.types';
3
3
  export type MessageFromDeveloperType = 'bundleData' | 'response';
4
4
  interface BaseMessageFromDeveloper {
@@ -13,15 +13,15 @@ export interface ResponseMessageFromDeveloper extends BaseMessageFromDeveloper {
13
13
  }
14
14
  export interface BundleDataMessageFromDeveloper extends BaseMessageFromDeveloper {
15
15
  type: 'bundleData';
16
- payload: any;
16
+ payload: LocalBackendData;
17
17
  }
18
- export type MessageToDeveloperType = 'executeFunction' | 'localBackendData';
18
+ export type MessageToDeveloperType = 'executeFunction' | 'localBackendData' | 'logMessage';
19
19
  interface BaseMessageToDeveloper {
20
20
  type: MessageToDeveloperType;
21
21
  payload: unknown;
22
22
  requestId: string;
23
23
  }
24
- export type MessageToDeveloper = ExecuteFunctionMessageToDeveloper | LocalBackendDataMessageToDeveloper;
24
+ export type MessageToDeveloper = ExecuteFunctionMessageToDeveloper | LocalBackendDataMessageToDeveloper | LogMessageToDeveloper;
25
25
  export interface ExecuteFunctionMessageToDeveloper extends BaseMessageToDeveloper {
26
26
  type: 'executeFunction';
27
27
  payload: BatchRunConfigurationRequest;
@@ -32,4 +32,21 @@ export interface LocalBackendDataMessageToDeveloper extends BaseMessageToDevelop
32
32
  secrets: RunSecrets;
33
33
  };
34
34
  }
35
+ export interface LogMessageToDeveloper extends BaseMessageToDeveloper {
36
+ type: 'logMessage';
37
+ payload: LogRequest;
38
+ }
39
+ export declare enum LogType {
40
+ ALL = "ALL",
41
+ QUERY = "QUERY",
42
+ MUTATIONS = "MUTATIONS",
43
+ AI = "AI"
44
+ }
45
+ export interface LogRequest {
46
+ tag: string;
47
+ type: LogType;
48
+ timestamp: number;
49
+ level: LogLevel;
50
+ message: string;
51
+ }
35
52
  export {};
@@ -1,3 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LogType = void 0;
4
+ var LogType;
5
+ (function (LogType) {
6
+ LogType["ALL"] = "ALL";
7
+ LogType["QUERY"] = "QUERY";
8
+ LogType["MUTATIONS"] = "MUTATIONS";
9
+ LogType["AI"] = "AI";
10
+ })(LogType || (exports.LogType = LogType = {}));
3
11
  //# sourceMappingURL=local-dev.types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"local-dev.types.js","sourceRoot":"","sources":["../../../../internal-common/src/local-dev.types.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"local-dev.types.js","sourceRoot":"","sources":["../../../../internal-common/src/local-dev.types.ts"],"names":[],"mappings":";;;AA4DA,IAAY,OAKX;AALD,WAAY,OAAO;IACjB,sBAAW,CAAA;IACX,0BAAe,CAAA;IACf,kCAAuB,CAAA;IACvB,oBAAS,CAAA;AACX,CAAC,EALW,OAAO,uBAAP,OAAO,QAKlB"}
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@squidcloud/local-backend",
3
- "version": "1.0.151",
3
+ "version": "1.0.153",
4
4
  "description": "",
5
5
  "main": "dist/local-backend/src/index.js",
6
6
  "types": "dist/local-backend/src/index.d.ts",
@@ -21,7 +21,8 @@
21
21
  "start:debug": "nest start --debug --watch",
22
22
  "start:prod": "node dist/main",
23
23
  "lint": "eslint \"{src,apps,libs,test}/**/*.ts\" --fix",
24
- "publish:public": "npm run build && npm publish --access public"
24
+ "publish:public": "npm run build && npm publish --access public",
25
+ "tsoa": "tsoa"
25
26
  },
26
27
  "engines": {
27
28
  "node": ">=18.0.0"
@@ -36,7 +37,8 @@
36
37
  "reflect-metadata": "^0.1.13",
37
38
  "rxjs": ">=7.5.7 <8.0.0",
38
39
  "semver": "^7.5.4",
39
- "ws": "^8.13.0"
40
+ "ws": "^8.13.0",
41
+ "tsoa": "^5.1.1"
40
42
  },
41
43
  "devDependencies": {
42
44
  "@types/cli-box": "^6.0.1",
@@ -6,6 +6,7 @@ export declare class LocalBackendSocketService {
6
6
  private readonly appId;
7
7
  private readonly region;
8
8
  private readonly apiKey;
9
+ private readonly logTypes;
9
10
  private readonly environmentId;
10
11
  private readonly squidDeveloperId;
11
12
  private readonly connectionReady;
@@ -13,6 +14,9 @@ export declare class LocalBackendSocketService {
13
14
  constructor(localBackendService: LocalBackendService);
14
15
  private onMessage;
15
16
  private handleExecuteFunctionMessage;
17
+ private handleLogMessage;
16
18
  private sendMessageThroughSocket;
17
19
  private printInfoAboutBundleData;
20
+ private readLogTypes;
21
+ private generateOpenApiSpecAndControllers;
18
22
  }
@@ -15,6 +15,9 @@ const common_2 = require("@nestjs/common");
15
15
  const local_backend_service_1 = require("./local-backend.service");
16
16
  const rxjs_1 = require("rxjs");
17
17
  const assertic_1 = require("assertic");
18
+ const local_dev_types_1 = require("../../internal-common/src/local-dev.types");
19
+ const shell_runner_1 = require("./utils/shell-runner");
20
+ const promises_1 = require("fs/promises");
18
21
  const cliBox = require('cli-box');
19
22
  let LocalBackendSocketService = exports.LocalBackendSocketService = class LocalBackendSocketService {
20
23
  constructor(localBackendService) {
@@ -26,6 +29,8 @@ let LocalBackendSocketService = exports.LocalBackendSocketService = class LocalB
26
29
  this.squidDeveloperId = (0, assertic_1.truthy)(process.env['SQUID_DEVELOPER_ID'], 'SQUID_DEVELOPER_ID_MUST_BE_PROVIDED');
27
30
  this.connectionReady = new rxjs_1.BehaviorSubject(false);
28
31
  this.fullAppId = (0, common_1.appIdWithEnvironmentIdAndDevId)(this.appId, this.environmentId, this.squidDeveloperId);
32
+ this.logTypes = new Set();
33
+ this.readLogTypes();
29
34
  if (this.squidDeveloperId === 'prod') {
30
35
  console.error('The local backend can only be run using the "dev" environment. Please follow the instructions in: https://docs.squid.cloud/docs/development-tools/local-dev-cli');
31
36
  process.exit(1);
@@ -61,10 +66,18 @@ let LocalBackendSocketService = exports.LocalBackendSocketService = class LocalB
61
66
  case 'localBackendData':
62
67
  this.connectionReady.next(true);
63
68
  const bundleData = await this.localBackendService.initializeAndGetBackendData(message.payload.secrets, this.appId);
69
+ const openApiSpecAndControllers = await this.generateOpenApiSpecAndControllers();
70
+ if (openApiSpecAndControllers === null || openApiSpecAndControllers === void 0 ? void 0 : openApiSpecAndControllers.openApiControllersStr) {
71
+ bundleData.openApiControllers = (0, common_1.deserializeObj)(openApiSpecAndControllers.openApiControllersStr);
72
+ }
73
+ const payload = {
74
+ applicationBundleData: bundleData,
75
+ openApiSpecStr: openApiSpecAndControllers === null || openApiSpecAndControllers === void 0 ? void 0 : openApiSpecAndControllers.openApiSpecStr,
76
+ };
64
77
  const bundleDataMessage = {
65
78
  type: 'bundleData',
66
79
  requestId: message.requestId,
67
- payload: bundleData,
80
+ payload,
68
81
  };
69
82
  await this.sendMessageThroughSocket(bundleDataMessage);
70
83
  this.printInfoAboutBundleData(bundleData);
@@ -72,6 +85,9 @@ let LocalBackendSocketService = exports.LocalBackendSocketService = class LocalB
72
85
  case 'executeFunction':
73
86
  await this.handleExecuteFunctionMessage(message);
74
87
  break;
88
+ case 'logMessage':
89
+ await this.handleLogMessage(message);
90
+ break;
75
91
  default:
76
92
  console.error('Unsupported message type: ', message.type);
77
93
  break;
@@ -86,6 +102,35 @@ let LocalBackendSocketService = exports.LocalBackendSocketService = class LocalB
86
102
  };
87
103
  await this.sendMessageThroughSocket(response);
88
104
  }
105
+ async handleLogMessage(message) {
106
+ if (!this.logTypes.has(message.payload.type)) {
107
+ return;
108
+ }
109
+ const outputMessage = `[${new Date(message.payload.timestamp).toISOString()}][Squid Core][${message.payload.level}][${message.payload.tag}]: ${message.payload.message}`;
110
+ switch (message.payload.level) {
111
+ case common_1.LogLevel.ERROR:
112
+ console.error(outputMessage);
113
+ break;
114
+ case common_1.LogLevel.WARN:
115
+ console.warn(outputMessage);
116
+ break;
117
+ case common_1.LogLevel.DEBUG:
118
+ console.debug(outputMessage);
119
+ break;
120
+ case common_1.LogLevel.TRACE:
121
+ console.trace(outputMessage);
122
+ break;
123
+ case common_1.LogLevel.INFO:
124
+ default:
125
+ console.log(outputMessage);
126
+ }
127
+ const response = {
128
+ type: 'response',
129
+ requestId: message.requestId,
130
+ payload: {},
131
+ };
132
+ await this.sendMessageThroughSocket(response);
133
+ }
89
134
  async sendMessageThroughSocket(message) {
90
135
  await (0, rxjs_1.firstValueFrom)(this.connectionReady.pipe((0, rxjs_1.filter)(Boolean)));
91
136
  this.socket.send((0, common_1.serializeObj)(message));
@@ -99,6 +144,60 @@ let LocalBackendSocketService = exports.LocalBackendSocketService = class LocalB
99
144
  }
100
145
  console.log(cliBox({ w: 200, h: webhooks.length + 3, marks: { w: '| ', ne: '─┐', se: '─┘' } }, { text: message, autoEOL: true, vAlign: 'center', hAlign: 'left', stretch: false }));
101
146
  }
147
+ const openApiControllers = bundleData.openApiControllers || [];
148
+ if (openApiControllers.length) {
149
+ const baseUrl = (0, common_1.getApplicationUrl)(this.region, this.fullAppId, `openapi`);
150
+ let message = `Available OpenAPI controllers (spec file: ${baseUrl}/spec.json):`;
151
+ let itemCount = openApiControllers.length;
152
+ for (const controller of openApiControllers) {
153
+ message += `\nController ${controller.path}:`;
154
+ for (const action of controller.actions) {
155
+ itemCount += 1;
156
+ message += `\n\ ${action.method.toUpperCase()} ${baseUrl}${action.fullPath}`;
157
+ }
158
+ }
159
+ console.log(cliBox({ w: 200, h: itemCount + 3, marks: { w: '| ', ne: '─┐', se: '─┘' } }, { text: message, autoEOL: true, vAlign: 'center', hAlign: 'left', stretch: false }));
160
+ }
161
+ }
162
+ readLogTypes() {
163
+ const logTypes = process.env['SQUID_LOG_TYPES'];
164
+ if (logTypes) {
165
+ const supportedTypes = Object.values(local_dev_types_1.LogType);
166
+ const typeList = logTypes.split(',');
167
+ for (let type of typeList) {
168
+ type = type.trim();
169
+ if (!supportedTypes.includes(type)) {
170
+ console.error(`Error: Log type ${type} provided to "SQUID_LOG_TYPES" in '.env' file is not valid.
171
+
172
+ Expected one of: ${supportedTypes.join(', ')}.`);
173
+ process.exit(1);
174
+ }
175
+ this.logTypes.add(type);
176
+ }
177
+ }
178
+ }
179
+ async generateOpenApiSpecAndControllers() {
180
+ try {
181
+ await Promise.all([
182
+ (0, shell_runner_1.runInShell)('npm run tsoa -- spec', process.cwd()),
183
+ (0, shell_runner_1.runInShell)('npm run tsoa -- routes', process.cwd()),
184
+ ]);
185
+ }
186
+ catch (e) {
187
+ return;
188
+ }
189
+ try {
190
+ const swaggerData = await promises_1.default.readFile('dist/swagger.json', { encoding: 'utf8' });
191
+ const routesData = await promises_1.default.readFile('dist/routes.ts', { encoding: 'utf8' });
192
+ return {
193
+ openApiSpecStr: swaggerData,
194
+ openApiControllersStr: routesData,
195
+ };
196
+ }
197
+ catch (e) {
198
+ console.error('Unable to deploy OpenAPI spec and controllers', e);
199
+ }
200
+ return undefined;
102
201
  }
103
202
  };
104
203
  exports.LocalBackendSocketService = LocalBackendSocketService = __decorate([