@loopstack/common 0.31.0 → 0.32.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (160) hide show
  1. package/dist/base/base-tool.d.ts +8 -8
  2. package/dist/base/base-tool.d.ts.map +1 -1
  3. package/dist/base/base-tool.js +11 -17
  4. package/dist/base/base-tool.js.map +1 -1
  5. package/dist/base/base-workflow.d.ts +7 -13
  6. package/dist/base/base-workflow.d.ts.map +1 -1
  7. package/dist/base/base-workflow.js +9 -21
  8. package/dist/base/base-workflow.js.map +1 -1
  9. package/dist/base/index.d.ts +0 -1
  10. package/dist/base/index.d.ts.map +1 -1
  11. package/dist/base/index.js +0 -1
  12. package/dist/base/index.js.map +1 -1
  13. package/dist/decorators/block.decorator.d.ts +26 -40
  14. package/dist/decorators/block.decorator.d.ts.map +1 -1
  15. package/dist/decorators/block.decorator.js +7 -101
  16. package/dist/decorators/block.decorator.js.map +1 -1
  17. package/dist/decorators/index.d.ts +2 -0
  18. package/dist/decorators/index.d.ts.map +1 -1
  19. package/dist/decorators/index.js +2 -0
  20. package/dist/decorators/index.js.map +1 -1
  21. package/dist/decorators/studio.decorator.d.ts +26 -0
  22. package/dist/decorators/studio.decorator.d.ts.map +1 -0
  23. package/dist/decorators/studio.decorator.js +12 -0
  24. package/dist/decorators/studio.decorator.js.map +1 -0
  25. package/dist/decorators/user-id.decorator.d.ts +2 -0
  26. package/dist/decorators/user-id.decorator.d.ts.map +1 -0
  27. package/dist/decorators/user-id.decorator.js +6 -0
  28. package/dist/decorators/user-id.decorator.js.map +1 -0
  29. package/dist/documents/error-document.d.ts.map +1 -1
  30. package/dist/documents/error-document.js +2 -1
  31. package/dist/documents/error-document.js.map +1 -1
  32. package/dist/documents/error-document.yaml +1 -5
  33. package/dist/documents/link-document.js +1 -1
  34. package/dist/documents/link-document.js.map +1 -1
  35. package/dist/documents/link-document.yaml +1 -3
  36. package/dist/documents/markdown-document.js +1 -1
  37. package/dist/documents/markdown-document.js.map +1 -1
  38. package/dist/documents/markdown-document.yaml +1 -3
  39. package/dist/documents/message-document.d.ts.map +1 -1
  40. package/dist/documents/message-document.js +2 -1
  41. package/dist/documents/message-document.js.map +1 -1
  42. package/dist/documents/message-document.yaml +1 -5
  43. package/dist/documents/plain-document.js +1 -1
  44. package/dist/documents/plain-document.js.map +1 -1
  45. package/dist/documents/plain-document.yaml +1 -3
  46. package/dist/dtos/index.d.ts +0 -1
  47. package/dist/dtos/index.d.ts.map +1 -1
  48. package/dist/dtos/index.js +0 -1
  49. package/dist/dtos/index.js.map +1 -1
  50. package/dist/dtos/run-context.d.ts +1 -6
  51. package/dist/dtos/run-context.d.ts.map +1 -1
  52. package/dist/dtos/run-context.js +1 -16
  53. package/dist/dtos/run-context.js.map +1 -1
  54. package/dist/entities/document.entity.d.ts +1 -8
  55. package/dist/entities/document.entity.d.ts.map +1 -1
  56. package/dist/entities/document.entity.js +4 -47
  57. package/dist/entities/document.entity.js.map +1 -1
  58. package/dist/entities/index.d.ts +0 -1
  59. package/dist/entities/index.d.ts.map +1 -1
  60. package/dist/entities/index.js +0 -1
  61. package/dist/entities/index.js.map +1 -1
  62. package/dist/entities/workflow-checkpoint.entity.d.ts +0 -1
  63. package/dist/entities/workflow-checkpoint.entity.d.ts.map +1 -1
  64. package/dist/entities/workflow-checkpoint.entity.js +0 -5
  65. package/dist/entities/workflow-checkpoint.entity.js.map +1 -1
  66. package/dist/entities/workflow.entity.d.ts +1 -5
  67. package/dist/entities/workflow.entity.d.ts.map +1 -1
  68. package/dist/entities/workflow.entity.js +4 -37
  69. package/dist/entities/workflow.entity.js.map +1 -1
  70. package/dist/entities/workspace.entity.d.ts +1 -3
  71. package/dist/entities/workspace.entity.d.ts.map +1 -1
  72. package/dist/entities/workspace.entity.js +3 -12
  73. package/dist/entities/workspace.entity.js.map +1 -1
  74. package/dist/interfaces/block.interface.d.ts +0 -3
  75. package/dist/interfaces/block.interface.d.ts.map +1 -1
  76. package/dist/interfaces/document-repository.interface.d.ts +0 -8
  77. package/dist/interfaces/document-repository.interface.d.ts.map +1 -1
  78. package/dist/interfaces/document-store.interface.d.ts +10 -0
  79. package/dist/interfaces/document-store.interface.d.ts.map +1 -0
  80. package/dist/interfaces/document-store.interface.js +2 -0
  81. package/dist/interfaces/document-store.interface.js.map +1 -0
  82. package/dist/interfaces/index.d.ts +5 -3
  83. package/dist/interfaces/index.d.ts.map +1 -1
  84. package/dist/interfaces/index.js +5 -3
  85. package/dist/interfaces/index.js.map +1 -1
  86. package/dist/interfaces/loopstack-context.interface.d.ts +11 -0
  87. package/dist/interfaces/loopstack-context.interface.d.ts.map +1 -0
  88. package/dist/interfaces/loopstack-context.interface.js +2 -0
  89. package/dist/interfaces/loopstack-context.interface.js.map +1 -0
  90. package/dist/interfaces/tool-execution-interceptor.interface.d.ts +2 -4
  91. package/dist/interfaces/tool-execution-interceptor.interface.d.ts.map +1 -1
  92. package/dist/interfaces/tool-execution-interceptor.interface.js.map +1 -1
  93. package/dist/interfaces/tool-pipeline.interface.d.ts +6 -0
  94. package/dist/interfaces/tool-pipeline.interface.d.ts.map +1 -0
  95. package/dist/interfaces/tool-pipeline.interface.js +2 -0
  96. package/dist/interfaces/tool-pipeline.interface.js.map +1 -0
  97. package/dist/interfaces/tool-registry.interface.d.ts +8 -0
  98. package/dist/interfaces/tool-registry.interface.d.ts.map +1 -0
  99. package/dist/interfaces/tool-registry.interface.js +2 -0
  100. package/dist/interfaces/tool-registry.interface.js.map +1 -0
  101. package/dist/interfaces/workflow-orchestrator.interface.d.ts +2 -1
  102. package/dist/interfaces/workflow-orchestrator.interface.d.ts.map +1 -1
  103. package/dist/interfaces/workflow-payload.interface.d.ts +18 -0
  104. package/dist/interfaces/workflow-payload.interface.d.ts.map +1 -0
  105. package/dist/interfaces/workflow-payload.interface.js +2 -0
  106. package/dist/interfaces/workflow-payload.interface.js.map +1 -0
  107. package/dist/interfaces/workflow-runner.interface.d.ts +2 -3
  108. package/dist/interfaces/workflow-runner.interface.d.ts.map +1 -1
  109. package/dist/tokens.d.ts +8 -2
  110. package/dist/tokens.d.ts.map +1 -1
  111. package/dist/tokens.js +8 -2
  112. package/dist/tokens.js.map +1 -1
  113. package/dist/utils/block-config.builder.d.ts +2 -2
  114. package/dist/utils/block-config.builder.d.ts.map +1 -1
  115. package/dist/utils/block-config.builder.js +30 -18
  116. package/dist/utils/block-config.builder.js.map +1 -1
  117. package/dist/utils/block-metadata.utils.d.ts +2 -12
  118. package/dist/utils/block-metadata.utils.d.ts.map +1 -1
  119. package/dist/utils/block-metadata.utils.js +10 -62
  120. package/dist/utils/block-metadata.utils.js.map +1 -1
  121. package/dist/utils/feature-registration.d.ts +10 -0
  122. package/dist/utils/feature-registration.d.ts.map +1 -0
  123. package/dist/utils/feature-registration.js +23 -0
  124. package/dist/utils/feature-registration.js.map +1 -0
  125. package/dist/utils/identifier.utils.d.ts +5 -0
  126. package/dist/utils/identifier.utils.d.ts.map +1 -0
  127. package/dist/utils/identifier.utils.js +37 -0
  128. package/dist/utils/identifier.utils.js.map +1 -0
  129. package/dist/utils/index.d.ts +3 -0
  130. package/dist/utils/index.d.ts.map +1 -1
  131. package/dist/utils/index.js +3 -0
  132. package/dist/utils/index.js.map +1 -1
  133. package/dist/utils/studio-app-extension.d.ts +7 -0
  134. package/dist/utils/studio-app-extension.d.ts.map +1 -0
  135. package/dist/{base/base-app.js → utils/studio-app-extension.js} +11 -10
  136. package/dist/utils/studio-app-extension.js.map +1 -0
  137. package/package.json +2 -2
  138. package/dist/base/base-app.d.ts +0 -7
  139. package/dist/base/base-app.d.ts.map +0 -1
  140. package/dist/base/base-app.js.map +0 -1
  141. package/dist/dtos/workspace-environment-context.dto.d.ts +0 -12
  142. package/dist/dtos/workspace-environment-context.dto.d.ts.map +0 -1
  143. package/dist/dtos/workspace-environment-context.dto.js +0 -53
  144. package/dist/dtos/workspace-environment-context.dto.js.map +0 -1
  145. package/dist/entities/workspace-environment.entity.d.ts +0 -19
  146. package/dist/entities/workspace-environment.entity.d.ts.map +0 -1
  147. package/dist/entities/workspace-environment.entity.js +0 -92
  148. package/dist/entities/workspace-environment.entity.js.map +0 -1
  149. package/dist/interfaces/execution-context.interface.d.ts +0 -25
  150. package/dist/interfaces/execution-context.interface.d.ts.map +0 -1
  151. package/dist/interfaces/execution-context.interface.js +0 -2
  152. package/dist/interfaces/execution-context.interface.js.map +0 -1
  153. package/dist/interfaces/workflow-execution.interface.d.ts +0 -8
  154. package/dist/interfaces/workflow-execution.interface.d.ts.map +0 -1
  155. package/dist/interfaces/workflow-execution.interface.js +0 -2
  156. package/dist/interfaces/workflow-execution.interface.js.map +0 -1
  157. package/dist/interfaces/workflow-state.interface.d.ts +0 -13
  158. package/dist/interfaces/workflow-state.interface.d.ts.map +0 -1
  159. package/dist/interfaces/workflow-state.interface.js +0 -2
  160. package/dist/interfaces/workflow-state.interface.js.map +0 -1
@@ -1,11 +1,11 @@
1
- import { DocumentRepository, FrameworkContext, ToolCallOptions, ToolResult } from '../interfaces/index.js';
2
- import { TemplateRenderFn } from './workflow-templates.js';
3
- export declare abstract class BaseTool<TArgs extends object = object, TConfig extends object = object> {
4
- readonly repository: DocumentRepository;
5
- readonly ctx: FrameworkContext;
6
- readonly render: TemplateRenderFn;
7
- abstract call(args?: TArgs, options?: ToolCallOptions<TConfig>): Promise<ToolResult>;
1
+ import type { DocumentStore } from '../interfaces/document-store.interface.js';
2
+ import type { ToolCallOptions, ToolResult } from '../interfaces/handler.interface.js';
3
+ import type { LoopstackContext } from '../interfaces/loopstack-context.interface.js';
4
+ export declare abstract class BaseTool<TArgs extends object = object, TConfig extends object = object, TResult = unknown, TMeta = Record<string, unknown>> {
5
+ private readonly __pipeline;
6
+ protected readonly documentStore: DocumentStore;
7
+ call(args?: TArgs, options?: ToolCallOptions<TConfig>): Promise<ToolResult<TResult, TMeta>>;
8
+ protected abstract handle(args: TArgs, ctx: LoopstackContext, options?: ToolCallOptions<TConfig>): Promise<ToolResult<TResult, TMeta>>;
8
9
  complete(result: Record<string, unknown>): Promise<ToolResult>;
9
- protected assertToolsAvailable(toolNames: string[]): void;
10
10
  }
11
11
  //# sourceMappingURL=base-tool.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"base-tool.d.ts","sourceRoot":"","sources":["../../src/base/base-tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAG3G,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AA+B3D,8BACsB,QAAQ,CAAC,KAAK,SAAS,MAAM,GAAG,MAAM,EAAE,OAAO,SAAS,MAAM,GAAG,MAAM;IAE9D,QAAQ,CAAC,UAAU,EAAG,kBAAkB,CAAC;IAG3C,QAAQ,CAAC,GAAG,EAAG,gBAAgB,CAAC;IAGhC,QAAQ,CAAC,MAAM,EAAG,gBAAgB,CAAC;IAS9D,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,eAAe,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC;IAOpF,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC;IAU9D,SAAS,CAAC,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI;CAG1D"}
1
+ {"version":3,"file":"base-tool.d.ts","sourceRoot":"","sources":["../../src/base/base-tool.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC;AAC/E,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAC;AACtF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8CAA8C,CAAC;AA0BrF,8BACsB,QAAQ,CAC5B,KAAK,SAAS,MAAM,GAAG,MAAM,EAC7B,OAAO,SAAS,MAAM,GAAG,MAAM,EAC/B,OAAO,GAAG,OAAO,EACjB,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAGR,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAgB;IAG1C,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAG,aAAa,CAAC;IAMnE,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,eAAe,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAYjG,SAAS,CAAC,QAAQ,CAAC,MAAM,CACvB,IAAI,EAAE,KAAK,EACX,GAAG,EAAE,gBAAgB,EACrB,OAAO,CAAC,EAAE,eAAe,CAAC,OAAO,CAAC,GACjC,OAAO,CAAC,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAOhC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC;CAGrE"}
@@ -8,31 +8,25 @@ var __metadata = (this && this.__metadata) || function (k, v) {
8
8
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
9
  };
10
10
  import { Inject, Injectable } from '@nestjs/common';
11
- import { DOCUMENT_REPOSITORY, FRAMEWORK_CONTEXT, TEMPLATE_RENDERER } from '../tokens.js';
12
- import { assertToolsAvailable } from '../utils/block-metadata.utils.js';
11
+ import { DOCUMENT_STORE, TOOL_PIPELINE } from '../tokens.js';
13
12
  let BaseTool = class BaseTool {
14
- repository;
15
- ctx;
16
- render;
17
- complete(result) {
18
- return Promise.resolve({ data: result.data ?? result });
13
+ __pipeline;
14
+ documentStore;
15
+ async call(args, options) {
16
+ return this.__pipeline.execute(this, args, options);
19
17
  }
20
- assertToolsAvailable(toolNames) {
21
- assertToolsAvailable(this.constructor.name, this.ctx.workflow, toolNames, this.ctx.app);
18
+ async complete(result) {
19
+ return { data: result.data ?? result };
22
20
  }
23
21
  };
24
22
  __decorate([
25
- Inject(DOCUMENT_REPOSITORY),
23
+ Inject(TOOL_PIPELINE),
26
24
  __metadata("design:type", Object)
27
- ], BaseTool.prototype, "repository", void 0);
25
+ ], BaseTool.prototype, "__pipeline", void 0);
28
26
  __decorate([
29
- Inject(FRAMEWORK_CONTEXT),
27
+ Inject(DOCUMENT_STORE),
30
28
  __metadata("design:type", Object)
31
- ], BaseTool.prototype, "ctx", void 0);
32
- __decorate([
33
- Inject(TEMPLATE_RENDERER),
34
- __metadata("design:type", Function)
35
- ], BaseTool.prototype, "render", void 0);
29
+ ], BaseTool.prototype, "documentStore", void 0);
36
30
  BaseTool = __decorate([
37
31
  Injectable()
38
32
  ], BaseTool);
@@ -1 +1 @@
1
- {"version":3,"file":"base-tool.js","sourceRoot":"","sources":["../../src/base/base-tool.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEpD,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACzF,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAiCjE,IAAe,QAAQ,GAAvB,MAAe,QAAQ;IAEU,UAAU,CAAsB;IAGlC,GAAG,CAAoB;IAGvB,MAAM,CAAoB;IAgB9D,QAAQ,CAAC,MAA+B;QACtC,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,IAAI,EAAG,MAA6B,CAAC,IAAI,IAAI,MAAM,EAAE,CAAC,CAAC;IAClF,CAAC;IAQS,oBAAoB,CAAC,SAAmB;QAChD,oBAAoB,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC1F,CAAC;CACF,CAAA;AAnCuC;IAArC,MAAM,CAAC,mBAAmB,CAAC;;4CAA0C;AAGlC;IAAnC,MAAM,CAAC,iBAAiB,CAAC;;qCAAiC;AAGvB;IAAnC,MAAM,CAAC,iBAAiB,CAAC;;wCAAoC;AAR1C,QAAQ;IAD7B,UAAU,EAAE;GACS,QAAQ,CAqC7B"}
1
+ {"version":3,"file":"base-tool.js","sourceRoot":"","sources":["../../src/base/base-tool.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAKpD,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAyBtD,IAAe,QAAQ,GAAvB,MAAe,QAAQ;IAOY,UAAU,CAAgB;IAGvB,aAAa,CAAiB;IAMzE,KAAK,CAAC,IAAI,CAAC,IAAY,EAAE,OAAkC;QACzD,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACtD,CAAC;IAqBD,KAAK,CAAC,QAAQ,CAAC,MAA+B;QAC5C,OAAO,EAAE,IAAI,EAAG,MAA6B,CAAC,IAAI,IAAI,MAAM,EAAE,CAAC;IACjE,CAAC;CACF,CAAA;AAnCyC;IAAvC,MAAM,CAAC,aAAa,CAAC;;4CAA4C;AAGvB;IAA1C,MAAM,CAAC,cAAc,CAAC;;+CAAkD;AAVrD,QAAQ;IAD7B,UAAU,EAAE;GACS,QAAQ,CA0C7B"}
@@ -1,15 +1,11 @@
1
1
  import { z } from 'zod';
2
- import { DocumentRepository, FrameworkContext, WorkflowOrchestrator } from '../interfaces/index.js';
3
- import type { BaseApp } from './base-app.js';
4
- import { TemplateRenderFn } from './workflow-templates.js';
2
+ import type { DocumentStore } from '../interfaces/document-store.interface.js';
3
+ import type { TemplateRenderFn } from './workflow-templates.js';
5
4
  export interface RunOptions {
6
- alias?: string;
7
5
  callback?: {
8
6
  transition: string;
9
7
  metadata?: Record<string, unknown>;
10
8
  };
11
- _workflowInstance?: object;
12
- _config?: Record<string, unknown>;
13
9
  }
14
10
  export interface QueueResult {
15
11
  workflowId: string;
@@ -19,12 +15,10 @@ export declare const CallbackSchema: z.ZodObject<{
19
15
  status: z.ZodString;
20
16
  data: z.ZodUnknown;
21
17
  }, z.core.$strip>;
22
- export declare abstract class BaseWorkflow<TArgs = Record<string, unknown>, _TConfig = Record<string, unknown>, TApp extends BaseApp = BaseApp> {
23
- readonly repository: DocumentRepository;
24
- readonly ctx: FrameworkContext<TApp>;
25
- readonly orchestrator: WorkflowOrchestrator;
26
- readonly render: TemplateRenderFn;
27
- protected assertToolsAvailable(toolNames: string[]): void;
28
- run(args: TArgs, options?: RunOptions): Promise<QueueResult>;
18
+ export declare abstract class BaseWorkflow<TArgs = Record<string, unknown>, _TState = Record<string, unknown>> {
19
+ private readonly __orchestrator;
20
+ protected readonly documentStore: DocumentStore;
21
+ protected readonly render: TemplateRenderFn;
22
+ run(args?: TArgs, options?: RunOptions): Promise<QueueResult>;
29
23
  }
30
24
  //# sourceMappingURL=base-workflow.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"base-workflow.d.ts","sourceRoot":"","sources":["../../src/base/base-workflow.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAGpG,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,MAAM,WAAW,UAAU;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAC;IAEtE,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,MAAM,CAAC;CACpB;AAGD,eAAO,MAAM,cAAc;;;;iBAIzB,CAAC;AAqBH,8BACsB,YAAY,CAChC,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAClC,IAAI,SAAS,OAAO,GAAG,OAAO;IAGD,QAAQ,CAAC,UAAU,EAAG,kBAAkB,CAAC;IAG3C,QAAQ,CAAC,GAAG,EAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;IAGlC,QAAQ,CAAC,YAAY,EAAG,oBAAoB,CAAC;IAGjD,QAAQ,CAAC,MAAM,EAAG,gBAAgB,CAAC;IAM9D,SAAS,CAAC,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI;IAKzD,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC;CAM7D"}
1
+ {"version":3,"file":"base-workflow.d.ts","sourceRoot":"","sources":["../../src/base/base-workflow.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC;AAG/E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAC;CACvE;AAED,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,MAAM,CAAC;CACpB;AAGD,eAAO,MAAM,cAAc;;;;iBAIzB,CAAC;AA4BH,8BACsB,YAAY,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAEpE,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAwB;IAG9D,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAG,aAAa,CAAC;IAG9C,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAG,gBAAgB,CAAC;IAQlE,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC;CAGpE"}
@@ -9,40 +9,28 @@ var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  };
10
10
  import { Inject, Injectable } from '@nestjs/common';
11
11
  import { z } from 'zod';
12
- import { DOCUMENT_REPOSITORY, FRAMEWORK_CONTEXT, TEMPLATE_RENDERER, WORKFLOW_ORCHESTRATOR } from '../tokens.js';
13
- import { assertToolsAvailable } from '../utils/block-metadata.utils.js';
12
+ import { DOCUMENT_STORE, TEMPLATE_RENDERER, WORKFLOW_ORCHESTRATOR } from '../tokens.js';
14
13
  export const CallbackSchema = z.object({
15
14
  workflowId: z.string(),
16
15
  status: z.string(),
17
16
  data: z.unknown(),
18
17
  });
19
18
  let BaseWorkflow = class BaseWorkflow {
20
- repository;
21
- ctx;
22
- orchestrator;
19
+ __orchestrator;
20
+ documentStore;
23
21
  render;
24
- assertToolsAvailable(toolNames) {
25
- assertToolsAvailable(this.constructor.name, this, toolNames, this.ctx.app);
26
- }
27
- run(args, options) {
28
- return this.orchestrator.queue(args, {
29
- ...options,
30
- _workflowInstance: this,
31
- });
22
+ async run(args, options) {
23
+ return this.__orchestrator.queue(this.constructor, args, options);
32
24
  }
33
25
  };
34
26
  __decorate([
35
- Inject(DOCUMENT_REPOSITORY),
36
- __metadata("design:type", Object)
37
- ], BaseWorkflow.prototype, "repository", void 0);
38
- __decorate([
39
- Inject(FRAMEWORK_CONTEXT),
27
+ Inject(WORKFLOW_ORCHESTRATOR),
40
28
  __metadata("design:type", Object)
41
- ], BaseWorkflow.prototype, "ctx", void 0);
29
+ ], BaseWorkflow.prototype, "__orchestrator", void 0);
42
30
  __decorate([
43
- Inject(WORKFLOW_ORCHESTRATOR),
31
+ Inject(DOCUMENT_STORE),
44
32
  __metadata("design:type", Object)
45
- ], BaseWorkflow.prototype, "orchestrator", void 0);
33
+ ], BaseWorkflow.prototype, "documentStore", void 0);
46
34
  __decorate([
47
35
  Inject(TEMPLATE_RENDERER),
48
36
  __metadata("design:type", Function)
@@ -1 +1 @@
1
- {"version":3,"file":"base-workflow.js","sourceRoot":"","sources":["../../src/base/base-workflow.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAChH,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAkBxE,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;IACtB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE;CAClB,CAAC,CAAC;AAsBI,IAAe,YAAY,GAA3B,MAAe,YAAY;IAMM,UAAU,CAAsB;IAGlC,GAAG,CAA0B;IAGzB,YAAY,CAAwB;IAGxC,MAAM,CAAoB;IAMpD,oBAAoB,CAAC,SAAmB;QAChD,oBAAoB,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC7E,CAAC;IAGD,GAAG,CAAC,IAAW,EAAE,OAAoB;QACnC,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,IAA+B,EAAE;YAC9D,GAAG,OAAO;YACV,iBAAiB,EAAE,IAAI;SACxB,CAAC,CAAC;IACL,CAAC;CACF,CAAA;AA1BuC;IAArC,MAAM,CAAC,mBAAmB,CAAC;;gDAA0C;AAGlC;IAAnC,MAAM,CAAC,iBAAiB,CAAC;;yCAAuC;AAGzB;IAAvC,MAAM,CAAC,qBAAqB,CAAC;;kDAA8C;AAGxC;IAAnC,MAAM,CAAC,iBAAiB,CAAC;;4CAAoC;AAf1C,YAAY;IADjC,UAAU,EAAE;GACS,YAAY,CAgCjC"}
1
+ {"version":3,"file":"base-workflow.js","sourceRoot":"","sources":["../../src/base/base-workflow.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAQ,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAYxF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;IACtB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE;CAClB,CAAC,CAAC;AA6BI,IAAe,YAAY,GAA3B,MAAe,YAAY;IAEgB,cAAc,CAAwB;IAG3C,aAAa,CAAiB;IAG3B,MAAM,CAAoB;IAQxE,KAAK,CAAC,GAAG,CAAC,IAAY,EAAE,OAAoB;QAC1C,OAAO,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,WAAmB,EAAE,IAA+B,EAAE,OAAO,CAAC,CAAC;IACvG,CAAC;CACF,CAAA;AAjBiD;IAA/C,MAAM,CAAC,qBAAqB,CAAC;;oDAAwD;AAG3C;IAA1C,MAAM,CAAC,cAAc,CAAC;;mDAAkD;AAG3B;IAA7C,MAAM,CAAC,iBAAiB,CAAC;;4CAA8C;AARpD,YAAY;IADjC,UAAU,EAAE;GACS,YAAY,CAmBjC"}
@@ -1,6 +1,5 @@
1
1
  export * from './base-tool.js';
2
2
  export * from './base-workflow.js';
3
- export * from './base-app.js';
4
3
  export * from './server-tool.js';
5
4
  export * from './workflow-templates.js';
6
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/base/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/base/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,yBAAyB,CAAC"}
@@ -1,6 +1,5 @@
1
1
  export * from './base-tool.js';
2
2
  export * from './base-workflow.js';
3
- export * from './base-app.js';
4
3
  export * from './server-tool.js';
5
4
  export * from './workflow-templates.js';
6
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/base/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/base/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,yBAAyB,CAAC"}
@@ -1,48 +1,53 @@
1
- import { InjectionToken } from '@nestjs/common';
2
1
  import { z } from 'zod';
3
- import type { AppType, BlockConfigType, DocumentConfigType, ToolConfigType, WorkflowType } from '@loopstack/contracts/types';
2
+ import type { StaticDocumentMeta, UiWidgetType } from '@loopstack/contracts/types';
3
+ export type WidgetRef = string | UiWidgetType;
4
4
  export declare const BLOCK_CONFIG_METADATA_KEY: unique symbol;
5
5
  export declare const BLOCK_TYPE_METADATA_KEY: unique symbol;
6
- export declare const INJECTED_TOOLS_METADATA_KEY: unique symbol;
7
- export declare const INJECTED_DOCUMENTS_METADATA_KEY: unique symbol;
8
- export declare const INJECTED_WORKFLOWS_METADATA_KEY: unique symbol;
9
6
  export declare const TRANSITIONS_METADATA_KEY: unique symbol;
10
7
  export declare const GUARDS_METADATA_KEY: unique symbol;
11
- export declare const PASS_THROUGH_METADATA_KEY: unique symbol;
12
- export declare const INJECT_TOOL_DEFAULTS_KEY: unique symbol;
13
- export declare const INJECT_WORKFLOW_DEFAULTS_KEY: unique symbol;
14
- export type BlockType = 'workflow' | 'tool' | 'document' | 'app';
8
+ export declare const globalDocumentRegistry: Set<Function>;
9
+ export declare function getRegisteredDocuments(): Set<Function>;
10
+ export type BlockType = 'workflow' | 'tool' | 'document';
15
11
  export interface BlockOptions {
16
- uiConfig?: string | Partial<BlockConfigType>;
12
+ name?: string;
13
+ title?: string;
14
+ description?: string;
15
+ widget?: WidgetRef | WidgetRef[];
17
16
  schema?: z.ZodType;
18
17
  configSchema?: z.ZodType;
18
+ tags?: string[];
19
+ meta?: StaticDocumentMeta;
19
20
  }
20
21
  export interface ToolOptions {
21
- uiConfig?: string | Partial<ToolConfigType>;
22
+ name?: string;
23
+ description?: string;
24
+ widget?: WidgetRef | WidgetRef[];
22
25
  schema?: z.ZodType;
23
26
  configSchema?: z.ZodType;
24
27
  }
25
28
  export interface WorkflowOptions {
26
- uiConfig?: string | Partial<WorkflowType>;
29
+ name?: string;
30
+ title?: string;
31
+ description?: string;
32
+ widget?: WidgetRef | WidgetRef[];
27
33
  schema?: z.ZodType;
28
34
  configSchema?: z.ZodType;
35
+ stateSchema?: z.ZodType;
29
36
  }
30
37
  export interface DocumentOptions {
31
- uiConfig?: string | Partial<DocumentConfigType>;
38
+ name?: string;
39
+ title?: string;
40
+ description?: string;
41
+ widget?: WidgetRef | WidgetRef[];
32
42
  schema?: z.ZodType;
33
- }
34
- export interface AppOptions {
35
- uiConfig?: string | Partial<AppType>;
43
+ tags?: string[];
44
+ meta?: StaticDocumentMeta;
36
45
  }
37
46
  export declare function Block(type: BlockType, options?: BlockOptions): ClassDecorator;
38
47
  export declare function Workflow(options?: WorkflowOptions): ClassDecorator;
39
48
  export declare function Tool(options?: ToolOptions): ClassDecorator;
40
49
  export declare function Document(options?: DocumentOptions): ClassDecorator;
41
- export declare function App(options?: AppOptions): ClassDecorator;
42
50
  export declare function getBlockType(target: object): BlockType | undefined;
43
- export declare function InjectTool(tokenOrConfig?: InjectionToken | Record<string, unknown>, config?: Record<string, unknown>): PropertyDecorator & MethodDecorator;
44
- export declare function InjectDocument(_token?: InjectionToken): PropertyDecorator & MethodDecorator;
45
- export declare function InjectWorkflow(tokenOrConfig?: InjectionToken | Record<string, unknown>, config?: Record<string, unknown>): PropertyDecorator & MethodDecorator;
46
51
  export type RetryConfig = number | {
47
52
  attempts?: number;
48
53
  delay?: number;
@@ -72,16 +77,8 @@ export interface GuardMetadata {
72
77
  transitionMethodName: string;
73
78
  guardMethodName: string;
74
79
  }
75
- export interface InitialOptions {
76
- to: string;
77
- wait?: boolean;
78
- priority?: number;
79
- schema?: z.ZodType;
80
- retry?: RetryConfig;
81
- timeout?: number;
82
- }
83
80
  export interface TransitionOptions {
84
- from: string;
81
+ from?: string;
85
82
  to: string;
86
83
  wait?: boolean;
87
84
  priority?: number;
@@ -89,17 +86,6 @@ export interface TransitionOptions {
89
86
  retry?: RetryConfig;
90
87
  timeout?: number;
91
88
  }
92
- export interface FinalOptions {
93
- from: string;
94
- wait?: boolean;
95
- priority?: number;
96
- schema?: z.ZodType;
97
- retry?: RetryConfig;
98
- timeout?: number;
99
- }
100
- export declare function Initial(options: InitialOptions): MethodDecorator;
101
89
  export declare function Transition(options: TransitionOptions): MethodDecorator;
102
- export declare function Final(options: FinalOptions): MethodDecorator;
103
90
  export declare function Guard(guardMethodName: string): MethodDecorator;
104
- export declare function PassThrough(): PropertyDecorator;
105
91
  //# sourceMappingURL=block.decorator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"block.decorator.d.ts","sourceRoot":"","sources":["../../src/decorators/block.decorator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"block.decorator.d.ts","sourceRoot":"","sources":["../../src/decorators/block.decorator.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,12 @@
1
- import { Inject, Injectable } from '@nestjs/common';
1
+ import { Injectable } from '@nestjs/common';
2
2
  export const BLOCK_CONFIG_METADATA_KEY = Symbol('blockConfig');
3
3
  export const BLOCK_TYPE_METADATA_KEY = Symbol('blockType');
4
- export const INJECTED_TOOLS_METADATA_KEY = Symbol('injectedTools');
5
- export const INJECTED_DOCUMENTS_METADATA_KEY = Symbol('injectedDocuments');
6
- export const INJECTED_WORKFLOWS_METADATA_KEY = Symbol('injectedWorkflows');
7
4
  export const TRANSITIONS_METADATA_KEY = Symbol('transitions');
8
5
  export const GUARDS_METADATA_KEY = Symbol('guards');
9
- export const PASS_THROUGH_METADATA_KEY = Symbol('passThrough');
10
- export const INJECT_TOOL_DEFAULTS_KEY = Symbol('injectToolDefaults');
11
- export const INJECT_WORKFLOW_DEFAULTS_KEY = Symbol('injectWorkflowDefaults');
6
+ export const globalDocumentRegistry = new Set();
7
+ export function getRegisteredDocuments() {
8
+ return globalDocumentRegistry;
9
+ }
12
10
  export function Block(type, options) {
13
11
  return (target) => {
14
12
  Injectable()(target);
@@ -28,70 +26,12 @@ export function Document(options) {
28
26
  if (options) {
29
27
  Reflect.defineMetadata(BLOCK_CONFIG_METADATA_KEY, options, target);
30
28
  }
29
+ globalDocumentRegistry.add(target);
31
30
  };
32
31
  }
33
- export function App(options) {
34
- return Block('app', options);
35
- }
36
32
  export function getBlockType(target) {
37
33
  return Reflect.getMetadata(BLOCK_TYPE_METADATA_KEY, target.constructor);
38
34
  }
39
- export function InjectTool(tokenOrConfig, config) {
40
- return (target, propertyKey) => {
41
- let token;
42
- let defaults;
43
- if (typeof tokenOrConfig === 'string' || typeof tokenOrConfig === 'symbol') {
44
- token = tokenOrConfig;
45
- defaults = config;
46
- }
47
- else if (tokenOrConfig !== null && typeof tokenOrConfig === 'object') {
48
- defaults = tokenOrConfig;
49
- }
50
- else if (typeof tokenOrConfig === 'function') {
51
- token = tokenOrConfig;
52
- }
53
- const resolvedToken = token ?? Reflect.getMetadata('design:type', target, propertyKey);
54
- if (resolvedToken) {
55
- Inject(resolvedToken)(target, propertyKey);
56
- }
57
- const existingTools = Reflect.getMetadata(INJECTED_TOOLS_METADATA_KEY, target) ?? [];
58
- Reflect.defineMetadata(INJECTED_TOOLS_METADATA_KEY, [...existingTools, propertyKey], target);
59
- if (defaults) {
60
- const existing = Reflect.getMetadata(INJECT_TOOL_DEFAULTS_KEY, target) ?? {};
61
- Reflect.defineMetadata(INJECT_TOOL_DEFAULTS_KEY, { ...existing, [propertyKey]: defaults }, target);
62
- }
63
- };
64
- }
65
- export function InjectDocument(_token) {
66
- return (_target, _propertyKey) => {
67
- };
68
- }
69
- export function InjectWorkflow(tokenOrConfig, config) {
70
- return (target, propertyKey) => {
71
- let token;
72
- let defaults;
73
- if (typeof tokenOrConfig === 'string' || typeof tokenOrConfig === 'symbol') {
74
- token = tokenOrConfig;
75
- defaults = config;
76
- }
77
- else if (typeof tokenOrConfig === 'function') {
78
- token = tokenOrConfig;
79
- }
80
- else if (tokenOrConfig !== null && typeof tokenOrConfig === 'object') {
81
- defaults = tokenOrConfig;
82
- }
83
- const resolvedToken = token ?? Reflect.getMetadata('design:type', target, propertyKey);
84
- if (resolvedToken) {
85
- Inject(resolvedToken)(target, propertyKey);
86
- }
87
- const existingWorkflows = Reflect.getMetadata(INJECTED_WORKFLOWS_METADATA_KEY, target) ?? [];
88
- Reflect.defineMetadata(INJECTED_WORKFLOWS_METADATA_KEY, [...existingWorkflows, propertyKey], target);
89
- if (defaults) {
90
- const existing = Reflect.getMetadata(INJECT_WORKFLOW_DEFAULTS_KEY, target) ?? {};
91
- Reflect.defineMetadata(INJECT_WORKFLOW_DEFAULTS_KEY, { ...existing, [propertyKey]: defaults }, target);
92
- }
93
- };
94
- }
95
35
  const RETRY_DEFAULTS = {
96
36
  attempts: -1,
97
37
  delay: 1000,
@@ -118,25 +58,11 @@ function addTransitionMetadata(target, metadata) {
118
58
  const existing = Reflect.getMetadata(TRANSITIONS_METADATA_KEY, target.constructor) ?? [];
119
59
  Reflect.defineMetadata(TRANSITIONS_METADATA_KEY, [...existing, metadata], target.constructor);
120
60
  }
121
- export function Initial(options) {
122
- return (target, propertyKey) => {
123
- addTransitionMetadata(target, {
124
- methodName: String(propertyKey),
125
- from: 'start',
126
- to: options.to,
127
- wait: options.wait,
128
- priority: options.priority,
129
- schema: options.schema,
130
- retry: normalizeRetryConfig(options.retry),
131
- timeout: options.timeout,
132
- });
133
- };
134
- }
135
61
  export function Transition(options) {
136
62
  return (target, propertyKey) => {
137
63
  addTransitionMetadata(target, {
138
64
  methodName: String(propertyKey),
139
- from: options.from,
65
+ from: options.from ?? 'start',
140
66
  to: options.to,
141
67
  wait: options.wait,
142
68
  priority: options.priority,
@@ -146,30 +72,10 @@ export function Transition(options) {
146
72
  });
147
73
  };
148
74
  }
149
- export function Final(options) {
150
- return (target, propertyKey) => {
151
- addTransitionMetadata(target, {
152
- methodName: String(propertyKey),
153
- from: options.from,
154
- to: 'end',
155
- wait: options.wait,
156
- priority: options.priority,
157
- schema: options.schema,
158
- retry: normalizeRetryConfig(options.retry),
159
- timeout: options.timeout,
160
- });
161
- };
162
- }
163
75
  export function Guard(guardMethodName) {
164
76
  return (target, propertyKey) => {
165
77
  const existing = Reflect.getMetadata(GUARDS_METADATA_KEY, target.constructor) ?? [];
166
78
  Reflect.defineMetadata(GUARDS_METADATA_KEY, [...existing, { transitionMethodName: String(propertyKey), guardMethodName }], target.constructor);
167
79
  };
168
80
  }
169
- export function PassThrough() {
170
- return (target, propertyKey) => {
171
- const existing = Reflect.getMetadata(PASS_THROUGH_METADATA_KEY, target) ?? [];
172
- Reflect.defineMetadata(PASS_THROUGH_METADATA_KEY, [...existing, propertyKey], target);
173
- };
174
- }
175
81
  //# sourceMappingURL=block.decorator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"block.decorator.js","sourceRoot":"","sources":["../../src/decorators/block.decorator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"block.decorator.js","sourceRoot":"","sources":["../../src/decorators/block.decorator.ts"],"names":[],"mappings":"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"}
@@ -4,4 +4,6 @@ export * from './roles.decorator.js';
4
4
  export * from './ai-provider.decorator.js';
5
5
  export * from './block.decorator.js';
6
6
  export * from './capability-decorator.js';
7
+ export * from './studio.decorator.js';
8
+ export * from './user-id.decorator.js';
7
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/decorators/index.ts"],"names":[],"mappings":"AAAA,cAAc,6BAA6B,CAAC;AAC5C,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sBAAsB,CAAC;AACrC,cAAc,2BAA2B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/decorators/index.ts"],"names":[],"mappings":"AAAA,cAAc,6BAA6B,CAAC;AAC5C,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sBAAsB,CAAC;AACrC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC"}
@@ -4,4 +4,6 @@ export * from './roles.decorator.js';
4
4
  export * from './ai-provider.decorator.js';
5
5
  export * from './block.decorator.js';
6
6
  export * from './capability-decorator.js';
7
+ export * from './studio.decorator.js';
8
+ export * from './user-id.decorator.js';
7
9
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/decorators/index.ts"],"names":[],"mappings":"AAAA,cAAc,6BAA6B,CAAC;AAC5C,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sBAAsB,CAAC;AACrC,cAAc,2BAA2B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/decorators/index.ts"],"names":[],"mappings":"AAAA,cAAc,6BAA6B,CAAC;AAC5C,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sBAAsB,CAAC;AACrC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC"}
@@ -0,0 +1,26 @@
1
+ import type { Type } from '@nestjs/common';
2
+ import type { BaseWorkflow } from '../base/base-workflow.js';
3
+ export declare const STUDIO_APP_KEY = "loopstack:studio-app";
4
+ export interface StudioWidgetConfig {
5
+ widget: string;
6
+ options?: Record<string, unknown>;
7
+ }
8
+ export interface StudioUiConfig {
9
+ widgets?: StudioWidgetConfig[];
10
+ sidebar?: boolean;
11
+ workflowHistory?: boolean;
12
+ workflowNavigation?: boolean;
13
+ debugWorkflow?: boolean;
14
+ }
15
+ export interface StudioAppOptions {
16
+ app?: string;
17
+ title: string;
18
+ description?: string;
19
+ ui?: StudioUiConfig;
20
+ workflows?: Type<BaseWorkflow<any, any>>[];
21
+ }
22
+ export interface StudioAppMetadata extends StudioAppOptions {
23
+ app: string;
24
+ }
25
+ export declare function StudioApp(options: StudioAppOptions): ClassDecorator;
26
+ //# sourceMappingURL=studio.decorator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"studio.decorator.d.ts","sourceRoot":"","sources":["../../src/decorators/studio.decorator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAG7D,eAAO,MAAM,cAAc,yBAAyB,CAAC;AAErD,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE,kBAAkB,EAAE,CAAC;IAC/B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,gBAAgB;IAE/B,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb,KAAK,EAAE,MAAM,CAAC;IAEd,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,EAAE,CAAC,EAAE,cAAc,CAAC;IAEpB,SAAS,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;CAC5C;AAGD,MAAM,WAAW,iBAAkB,SAAQ,gBAAgB;IAEzD,GAAG,EAAE,MAAM,CAAC;CACb;AAMD,wBAAgB,SAAS,CAAC,OAAO,EAAE,gBAAgB,GAAG,cAAc,CAQnE"}
@@ -0,0 +1,12 @@
1
+ import { deriveAppIdentifier } from '../utils/identifier.utils.js';
2
+ export const STUDIO_APP_KEY = 'loopstack:studio-app';
3
+ export function StudioApp(options) {
4
+ return (target) => {
5
+ const metadata = {
6
+ ...options,
7
+ app: options.app ?? deriveAppIdentifier(target.name),
8
+ };
9
+ Reflect.defineMetadata(STUDIO_APP_KEY, metadata, target);
10
+ };
11
+ }
12
+ //# sourceMappingURL=studio.decorator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"studio.decorator.js","sourceRoot":"","sources":["../../src/decorators/studio.decorator.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAEnE,MAAM,CAAC,MAAM,cAAc,GAAG,sBAAsB,CAAC;AAsCrD,MAAM,UAAU,SAAS,CAAC,OAAyB;IACjD,OAAO,CAAC,MAAM,EAAE,EAAE;QAChB,MAAM,QAAQ,GAAsB;YAClC,GAAG,OAAO;YACV,GAAG,EAAE,OAAO,CAAC,GAAG,IAAI,mBAAmB,CAAC,MAAM,CAAC,IAAI,CAAC;SACrD,CAAC;QACF,OAAO,CAAC,cAAc,CAAC,cAAc,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC3D,CAAC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const UserId: (...dataOrPipes: unknown[]) => ParameterDecorator;
2
+ //# sourceMappingURL=user-id.decorator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user-id.decorator.d.ts","sourceRoot":"","sources":["../../src/decorators/user-id.decorator.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,MAAM,mDAGjB,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { createParamDecorator } from '@nestjs/common';
2
+ export const UserId = createParamDecorator((data, ctx) => {
3
+ const request = ctx.switchToHttp().getRequest();
4
+ return request.user?.userId;
5
+ });
6
+ //# sourceMappingURL=user-id.decorator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user-id.decorator.js","sourceRoot":"","sources":["../../src/decorators/user-id.decorator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAGxE,MAAM,CAAC,MAAM,MAAM,GAAG,oBAAoB,CAAC,CAAC,IAAa,EAAE,GAAqB,EAAE,EAAE;IAClF,MAAM,OAAO,GAAG,GAAG,CAAC,YAAY,EAAE,CAAC,UAAU,EAAkC,CAAC;IAChF,OAAO,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;AAC9B,CAAC,CAAC,CAAC"}