@marktoflow/core 2.0.0-alpha.3

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 (125) hide show
  1. package/dist/bundle.d.ts +43 -0
  2. package/dist/bundle.d.ts.map +1 -0
  3. package/dist/bundle.js +202 -0
  4. package/dist/bundle.js.map +1 -0
  5. package/dist/config.d.ts +33 -0
  6. package/dist/config.d.ts.map +1 -0
  7. package/dist/config.js +27 -0
  8. package/dist/config.js.map +1 -0
  9. package/dist/costs.d.ts +182 -0
  10. package/dist/costs.d.ts.map +1 -0
  11. package/dist/costs.js +464 -0
  12. package/dist/costs.js.map +1 -0
  13. package/dist/credentials.d.ts +162 -0
  14. package/dist/credentials.d.ts.map +1 -0
  15. package/dist/credentials.js +646 -0
  16. package/dist/credentials.js.map +1 -0
  17. package/dist/engine.d.ts +137 -0
  18. package/dist/engine.d.ts.map +1 -0
  19. package/dist/engine.js +514 -0
  20. package/dist/engine.js.map +1 -0
  21. package/dist/env.d.ts +59 -0
  22. package/dist/env.d.ts.map +1 -0
  23. package/dist/env.js +256 -0
  24. package/dist/env.js.map +1 -0
  25. package/dist/failover.d.ts +43 -0
  26. package/dist/failover.d.ts.map +1 -0
  27. package/dist/failover.js +53 -0
  28. package/dist/failover.js.map +1 -0
  29. package/dist/filewatcher.d.ts +32 -0
  30. package/dist/filewatcher.d.ts.map +1 -0
  31. package/dist/filewatcher.js +92 -0
  32. package/dist/filewatcher.js.map +1 -0
  33. package/dist/index.d.ts +36 -0
  34. package/dist/index.d.ts.map +1 -0
  35. package/dist/index.js +69 -0
  36. package/dist/index.js.map +1 -0
  37. package/dist/logging.d.ts +62 -0
  38. package/dist/logging.d.ts.map +1 -0
  39. package/dist/logging.js +211 -0
  40. package/dist/logging.js.map +1 -0
  41. package/dist/mcp-loader.d.ts +29 -0
  42. package/dist/mcp-loader.d.ts.map +1 -0
  43. package/dist/mcp-loader.js +60 -0
  44. package/dist/mcp-loader.js.map +1 -0
  45. package/dist/metrics.d.ts +19 -0
  46. package/dist/metrics.d.ts.map +1 -0
  47. package/dist/metrics.js +65 -0
  48. package/dist/metrics.js.map +1 -0
  49. package/dist/models.d.ts +419 -0
  50. package/dist/models.d.ts.map +1 -0
  51. package/dist/models.js +111 -0
  52. package/dist/models.js.map +1 -0
  53. package/dist/parser.d.ts +40 -0
  54. package/dist/parser.d.ts.map +1 -0
  55. package/dist/parser.js +287 -0
  56. package/dist/parser.js.map +1 -0
  57. package/dist/plugins.d.ts +105 -0
  58. package/dist/plugins.d.ts.map +1 -0
  59. package/dist/plugins.js +182 -0
  60. package/dist/plugins.js.map +1 -0
  61. package/dist/queue.d.ts +114 -0
  62. package/dist/queue.d.ts.map +1 -0
  63. package/dist/queue.js +385 -0
  64. package/dist/queue.js.map +1 -0
  65. package/dist/rollback.d.ts +117 -0
  66. package/dist/rollback.d.ts.map +1 -0
  67. package/dist/rollback.js +374 -0
  68. package/dist/rollback.js.map +1 -0
  69. package/dist/routing.d.ts +144 -0
  70. package/dist/routing.d.ts.map +1 -0
  71. package/dist/routing.js +457 -0
  72. package/dist/routing.js.map +1 -0
  73. package/dist/scheduler.d.ts +91 -0
  74. package/dist/scheduler.d.ts.map +1 -0
  75. package/dist/scheduler.js +259 -0
  76. package/dist/scheduler.js.map +1 -0
  77. package/dist/script-tool.d.ts +22 -0
  78. package/dist/script-tool.d.ts.map +1 -0
  79. package/dist/script-tool.js +90 -0
  80. package/dist/script-tool.js.map +1 -0
  81. package/dist/sdk-registry.d.ts +81 -0
  82. package/dist/sdk-registry.d.ts.map +1 -0
  83. package/dist/sdk-registry.js +264 -0
  84. package/dist/sdk-registry.js.map +1 -0
  85. package/dist/security.d.ts +155 -0
  86. package/dist/security.d.ts.map +1 -0
  87. package/dist/security.js +362 -0
  88. package/dist/security.js.map +1 -0
  89. package/dist/state.d.ts +67 -0
  90. package/dist/state.d.ts.map +1 -0
  91. package/dist/state.js +276 -0
  92. package/dist/state.js.map +1 -0
  93. package/dist/templates.d.ts +70 -0
  94. package/dist/templates.d.ts.map +1 -0
  95. package/dist/templates.js +244 -0
  96. package/dist/templates.js.map +1 -0
  97. package/dist/tool-base.d.ts +54 -0
  98. package/dist/tool-base.d.ts.map +1 -0
  99. package/dist/tool-base.js +43 -0
  100. package/dist/tool-base.js.map +1 -0
  101. package/dist/tool-registry.d.ts +24 -0
  102. package/dist/tool-registry.d.ts.map +1 -0
  103. package/dist/tool-registry.js +164 -0
  104. package/dist/tool-registry.js.map +1 -0
  105. package/dist/tools/custom-tool.d.ts +16 -0
  106. package/dist/tools/custom-tool.d.ts.map +1 -0
  107. package/dist/tools/custom-tool.js +85 -0
  108. package/dist/tools/custom-tool.js.map +1 -0
  109. package/dist/tools/mcp-tool.d.ts +16 -0
  110. package/dist/tools/mcp-tool.d.ts.map +1 -0
  111. package/dist/tools/mcp-tool.js +98 -0
  112. package/dist/tools/mcp-tool.js.map +1 -0
  113. package/dist/tools/openapi-tool.d.ts +17 -0
  114. package/dist/tools/openapi-tool.d.ts.map +1 -0
  115. package/dist/tools/openapi-tool.js +165 -0
  116. package/dist/tools/openapi-tool.js.map +1 -0
  117. package/dist/trigger-manager.d.ts +26 -0
  118. package/dist/trigger-manager.d.ts.map +1 -0
  119. package/dist/trigger-manager.js +107 -0
  120. package/dist/trigger-manager.js.map +1 -0
  121. package/dist/webhook.d.ts +95 -0
  122. package/dist/webhook.d.ts.map +1 -0
  123. package/dist/webhook.js +261 -0
  124. package/dist/webhook.js.map +1 -0
  125. package/package.json +60 -0
@@ -0,0 +1,259 @@
1
+ /**
2
+ * Scheduler for marktoflow v2.0
3
+ *
4
+ * Handles cron-based scheduling of workflow execution.
5
+ */
6
+ // ============================================================================
7
+ // Cron Parser
8
+ // ============================================================================
9
+ export class CronParser {
10
+ /**
11
+ * Parse a cron expression into component values.
12
+ * Format: minute hour day month weekday
13
+ * Special values: * (any), * /N (every N), N-M (range), N,M (list)
14
+ */
15
+ static parse(expression) {
16
+ const parts = expression.trim().split(/\s+/);
17
+ if (parts.length !== 5) {
18
+ throw new Error(`Invalid cron expression: ${expression}. Expected 5 fields.`);
19
+ }
20
+ const ranges = {
21
+ minute: [0, 59],
22
+ hour: [0, 23],
23
+ day: [1, 31],
24
+ month: [1, 12],
25
+ weekday: [0, 6],
26
+ };
27
+ const fieldNames = ['minute', 'hour', 'day', 'month', 'weekday'];
28
+ const result = {
29
+ minute: [],
30
+ hour: [],
31
+ day: [],
32
+ month: [],
33
+ weekday: [],
34
+ };
35
+ for (let i = 0; i < fieldNames.length; i++) {
36
+ const name = fieldNames[i];
37
+ const [min, max] = ranges[name];
38
+ result[name] = this.parseField(parts[i], min, max);
39
+ }
40
+ return result;
41
+ }
42
+ static parseField(field, minVal, maxVal) {
43
+ const values = new Set();
44
+ for (const part of field.split(',')) {
45
+ if (part === '*') {
46
+ for (let i = minVal; i <= maxVal; i++) {
47
+ values.add(i);
48
+ }
49
+ }
50
+ else if (part.includes('/')) {
51
+ const [base, stepStr] = part.split('/');
52
+ const step = parseInt(stepStr, 10);
53
+ const start = base === '*' ? minVal : parseInt(base, 10);
54
+ for (let i = start; i <= maxVal; i += step) {
55
+ values.add(i);
56
+ }
57
+ }
58
+ else if (part.includes('-')) {
59
+ const [startStr, endStr] = part.split('-');
60
+ const start = parseInt(startStr, 10);
61
+ const end = parseInt(endStr, 10);
62
+ for (let i = start; i <= end; i++) {
63
+ values.add(i);
64
+ }
65
+ }
66
+ else {
67
+ values.add(parseInt(part, 10));
68
+ }
69
+ }
70
+ return Array.from(values).sort((a, b) => a - b);
71
+ }
72
+ /**
73
+ * Check if a date matches a cron expression.
74
+ */
75
+ static matches(expression, date) {
76
+ try {
77
+ const fields = this.parse(expression);
78
+ return (fields.minute.includes(date.getMinutes()) &&
79
+ fields.hour.includes(date.getHours()) &&
80
+ fields.day.includes(date.getDate()) &&
81
+ fields.month.includes(date.getMonth() + 1) &&
82
+ fields.weekday.includes(date.getDay()));
83
+ }
84
+ catch {
85
+ return false;
86
+ }
87
+ }
88
+ /**
89
+ * Calculate the next run time for a cron expression.
90
+ */
91
+ static nextRun(expression, after) {
92
+ const start = after || new Date();
93
+ try {
94
+ this.parse(expression);
95
+ }
96
+ catch {
97
+ return null;
98
+ }
99
+ // Start from next minute
100
+ const current = new Date(start);
101
+ current.setSeconds(0, 0);
102
+ current.setMinutes(current.getMinutes() + 1);
103
+ // Search up to 1 year ahead
104
+ const maxIterations = 366 * 24 * 60;
105
+ for (let i = 0; i < maxIterations; i++) {
106
+ if (this.matches(expression, current)) {
107
+ return current;
108
+ }
109
+ current.setMinutes(current.getMinutes() + 1);
110
+ }
111
+ return null;
112
+ }
113
+ }
114
+ // ============================================================================
115
+ // Scheduler Implementation
116
+ // ============================================================================
117
+ export class Scheduler {
118
+ checkIntervalMs;
119
+ jobs = new Map();
120
+ running = false;
121
+ intervalId = null;
122
+ callbacks = [];
123
+ constructor(checkIntervalMs = 60000) {
124
+ this.checkIntervalMs = checkIntervalMs;
125
+ }
126
+ /**
127
+ * Add a scheduled job.
128
+ */
129
+ addJob(job) {
130
+ // Calculate next run time
131
+ job.nextRun = CronParser.nextRun(job.schedule);
132
+ this.jobs.set(job.id, job);
133
+ }
134
+ /**
135
+ * Remove a scheduled job.
136
+ */
137
+ removeJob(jobId) {
138
+ return this.jobs.delete(jobId);
139
+ }
140
+ /**
141
+ * Get a scheduled job by ID.
142
+ */
143
+ getJob(jobId) {
144
+ return this.jobs.get(jobId);
145
+ }
146
+ /**
147
+ * List all scheduled jobs.
148
+ */
149
+ listJobs() {
150
+ return Array.from(this.jobs.values());
151
+ }
152
+ /**
153
+ * Register a callback for when a job is due.
154
+ */
155
+ onJobDue(callback) {
156
+ this.callbacks.push(callback);
157
+ }
158
+ /**
159
+ * Start the scheduler.
160
+ */
161
+ start() {
162
+ if (this.running)
163
+ return;
164
+ this.running = true;
165
+ // Calculate time until next minute
166
+ const now = new Date();
167
+ const msUntilNextMinute = (60 - now.getSeconds()) * 1000 - now.getMilliseconds();
168
+ // Start checking at the next minute boundary
169
+ setTimeout(() => {
170
+ this.checkJobs();
171
+ this.intervalId = setInterval(() => this.checkJobs(), this.checkIntervalMs);
172
+ }, msUntilNextMinute);
173
+ }
174
+ /**
175
+ * Stop the scheduler.
176
+ */
177
+ stop() {
178
+ this.running = false;
179
+ if (this.intervalId) {
180
+ clearInterval(this.intervalId);
181
+ this.intervalId = null;
182
+ }
183
+ }
184
+ /**
185
+ * Check and run due jobs.
186
+ */
187
+ async checkJobs() {
188
+ const now = new Date();
189
+ for (const job of this.jobs.values()) {
190
+ if (!job.enabled)
191
+ continue;
192
+ if (!job.nextRun || now < job.nextRun)
193
+ continue;
194
+ // Job is due - execute callbacks
195
+ for (const callback of this.callbacks) {
196
+ try {
197
+ await callback(job);
198
+ }
199
+ catch (error) {
200
+ console.error(`Error executing job ${job.id}:`, error);
201
+ }
202
+ }
203
+ // Update job state
204
+ job.lastRun = now;
205
+ job.runCount++;
206
+ job.nextRun = CronParser.nextRun(job.schedule, now);
207
+ }
208
+ }
209
+ /**
210
+ * Run due jobs once (non-blocking check).
211
+ */
212
+ async runOnce() {
213
+ const results = new Map();
214
+ const now = new Date();
215
+ for (const job of this.jobs.values()) {
216
+ if (!job.enabled)
217
+ continue;
218
+ if (!job.nextRun || now < job.nextRun)
219
+ continue;
220
+ // Job is due
221
+ for (const callback of this.callbacks) {
222
+ try {
223
+ await callback(job);
224
+ }
225
+ catch (error) {
226
+ console.error(`Error executing job ${job.id}:`, error);
227
+ }
228
+ }
229
+ job.lastRun = now;
230
+ job.runCount++;
231
+ job.nextRun = CronParser.nextRun(job.schedule, now);
232
+ results.set(job.id, now);
233
+ }
234
+ return results;
235
+ }
236
+ /**
237
+ * Check if scheduler is running.
238
+ */
239
+ isRunning() {
240
+ return this.running;
241
+ }
242
+ }
243
+ // ============================================================================
244
+ // Helper Functions
245
+ // ============================================================================
246
+ export function createJob(id, workflowPath, schedule, inputs = {}) {
247
+ return {
248
+ id,
249
+ workflowPath,
250
+ schedule,
251
+ timezone: 'UTC',
252
+ enabled: true,
253
+ lastRun: null,
254
+ nextRun: CronParser.nextRun(schedule),
255
+ runCount: 0,
256
+ inputs,
257
+ };
258
+ }
259
+ //# sourceMappingURL=scheduler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scheduler.js","sourceRoot":"","sources":["../src/scheduler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ export interface ScriptOperation {
2
+ name: string;
3
+ description?: string;
4
+ parameters?: Record<string, any>;
5
+ timeout?: number;
6
+ }
7
+ export interface ScriptToolConfig {
8
+ script: string;
9
+ description?: string;
10
+ operations?: Record<string, ScriptOperation>;
11
+ timeout?: number;
12
+ env?: Record<string, string>;
13
+ }
14
+ export declare class ScriptTool {
15
+ private scriptPath;
16
+ private config;
17
+ private isMultiOperation;
18
+ constructor(scriptPath: string, toolsDir?: string);
19
+ private loadMetadata;
20
+ execute(operation: string, params: Record<string, any>): Promise<any>;
21
+ }
22
+ //# sourceMappingURL=script-tool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"script-tool.d.ts","sourceRoot":"","sources":["../src/script-tool.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAC7C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9B;AAED,qBAAa,UAAU;IACrB,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,MAAM,CAAmB;IACjC,OAAO,CAAC,gBAAgB,CAAkB;gBAE9B,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM;IAKjD,OAAO,CAAC,YAAY;IAoBd,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;CA6D5E"}
@@ -0,0 +1,90 @@
1
+ import { spawn } from 'node:child_process';
2
+ import { join, isAbsolute } from 'node:path';
3
+ import { existsSync, readFileSync } from 'node:fs';
4
+ import { parse } from 'yaml';
5
+ export class ScriptTool {
6
+ scriptPath;
7
+ config;
8
+ isMultiOperation = false;
9
+ constructor(scriptPath, toolsDir) {
10
+ this.scriptPath = isAbsolute(scriptPath) ? scriptPath : (toolsDir ? join(toolsDir, scriptPath) : scriptPath);
11
+ this.config = this.loadMetadata();
12
+ }
13
+ loadMetadata() {
14
+ const yamlPath = this.scriptPath.replace(/\.[^/.]+$/, "") + ".yaml";
15
+ let config = { script: this.scriptPath };
16
+ if (existsSync(yamlPath)) {
17
+ try {
18
+ const content = readFileSync(yamlPath, 'utf-8');
19
+ const data = parse(content);
20
+ config = { ...config, ...data };
21
+ if (config.operations && Object.keys(config.operations).length > 0) {
22
+ this.isMultiOperation = true;
23
+ }
24
+ }
25
+ catch (e) {
26
+ console.warn(`Failed to parse script metadata at ${yamlPath}: ${e}`);
27
+ }
28
+ }
29
+ return config;
30
+ }
31
+ async execute(operation, params) {
32
+ const args = [];
33
+ if (this.isMultiOperation) {
34
+ args.push(operation);
35
+ }
36
+ for (const [key, value] of Object.entries(params)) {
37
+ if (value === null || value === undefined)
38
+ continue;
39
+ if (typeof value === 'boolean') {
40
+ if (value)
41
+ args.push(`--${key}`);
42
+ }
43
+ else if (typeof value === 'object') {
44
+ args.push(`--${key}=${JSON.stringify(value)}`);
45
+ }
46
+ else {
47
+ args.push(`--${key}=${value}`);
48
+ }
49
+ }
50
+ const timeout = (this.config.operations?.[operation]?.timeout || this.config.timeout || 300) * 1000;
51
+ const env = { ...process.env, ...this.config.env };
52
+ return new Promise((resolve, reject) => {
53
+ const proc = spawn(this.scriptPath, args, {
54
+ env
55
+ });
56
+ let stdout = '';
57
+ let stderr = '';
58
+ proc.stdout.on('data', d => stdout += d.toString());
59
+ proc.stderr.on('data', d => stderr += d.toString());
60
+ const timer = setTimeout(() => {
61
+ proc.kill();
62
+ reject(new Error(`Script timed out after ${timeout}ms\nSTDOUT: ${stdout}\nSTDERR: ${stderr}`));
63
+ }, timeout);
64
+ proc.on('close', code => {
65
+ clearTimeout(timer);
66
+ if (code === 0) {
67
+ const output = stdout.trim();
68
+ if (!output) {
69
+ resolve({ success: true, stderr: stderr.trim() });
70
+ return;
71
+ }
72
+ try {
73
+ resolve(JSON.parse(output));
74
+ }
75
+ catch (e) {
76
+ resolve(output);
77
+ }
78
+ }
79
+ else {
80
+ reject(new Error(`Script failed with exit code ${code}\nSTDOUT: ${stdout}\nSTDERR: ${stderr}`));
81
+ }
82
+ });
83
+ proc.on('error', err => {
84
+ clearTimeout(timer);
85
+ reject(err);
86
+ });
87
+ });
88
+ }
89
+ }
90
+ //# sourceMappingURL=script-tool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"script-tool.js","sourceRoot":"","sources":["../src/script-tool.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,81 @@
1
+ /**
2
+ * SDK Registry for marktoflow v2.0
3
+ *
4
+ * Dynamically loads and manages SDK instances for workflow execution.
5
+ * Supports lazy loading and caching of SDK instances.
6
+ */
7
+ import { ToolConfig } from './models.js';
8
+ import { McpLoader } from './mcp-loader.js';
9
+ export interface SDKInstance {
10
+ name: string;
11
+ sdk: unknown;
12
+ config: ToolConfig;
13
+ }
14
+ export interface SDKLoader {
15
+ /**
16
+ * Load an SDK module.
17
+ * @param packageName - npm package name (e.g., "@slack/web-api")
18
+ * @returns The loaded module
19
+ */
20
+ load(packageName: string): Promise<unknown>;
21
+ }
22
+ export interface SDKInitializer {
23
+ /**
24
+ * Initialize an SDK with configuration.
25
+ * @param module - The loaded SDK module
26
+ * @param config - Tool configuration from workflow
27
+ * @returns Initialized SDK client
28
+ */
29
+ initialize(module: unknown, config: ToolConfig): Promise<unknown>;
30
+ }
31
+ export declare const defaultSDKLoader: SDKLoader;
32
+ export declare const defaultInitializers: Record<string, SDKInitializer>;
33
+ export declare class SDKRegistry {
34
+ private sdks;
35
+ private loader;
36
+ private initializers;
37
+ private mcpLoader;
38
+ constructor(loader?: SDKLoader, initializers?: Record<string, SDKInitializer>, mcpLoader?: McpLoader);
39
+ /**
40
+ * Register tool configurations from a workflow.
41
+ */
42
+ registerTools(tools: Record<string, ToolConfig>): void;
43
+ /**
44
+ * Check if an SDK is registered.
45
+ */
46
+ has(name: string): boolean;
47
+ /**
48
+ * Load and initialize an SDK.
49
+ */
50
+ load(name: string): Promise<unknown>;
51
+ private isMcpModule;
52
+ private createMcpProxy;
53
+ /**
54
+ * Generic SDK initialization for unknown packages.
55
+ */
56
+ private genericInitialize;
57
+ /**
58
+ * Register a custom initializer for an SDK.
59
+ */
60
+ registerInitializer(sdkName: string, initializer: SDKInitializer): void;
61
+ /**
62
+ * Get all registered SDK names.
63
+ */
64
+ getRegisteredNames(): string[];
65
+ /**
66
+ * Clear all cached SDK instances.
67
+ */
68
+ clear(): void;
69
+ }
70
+ export interface SDKRegistryLike {
71
+ load(sdkName: string): Promise<unknown>;
72
+ has(sdkName: string): boolean;
73
+ }
74
+ /**
75
+ * Create a step executor that invokes SDK methods.
76
+ */
77
+ export declare function createSDKStepExecutor(): (step: {
78
+ action: string;
79
+ inputs: Record<string, unknown>;
80
+ }, _context: unknown, sdkRegistry: SDKRegistryLike) => Promise<unknown>;
81
+ //# sourceMappingURL=sdk-registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sdk-registry.d.ts","sourceRoot":"","sources":["../src/sdk-registry.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAO5C,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,OAAO,CAAC;IACb,MAAM,EAAE,UAAU,CAAC;CACpB;AAED,MAAM,WAAW,SAAS;IACxB;;;;OAIG;IACH,IAAI,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAC7C;AAED,MAAM,WAAW,cAAc;IAC7B;;;;;OAKG;IACH,UAAU,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACnE;AAMD,eAAO,MAAM,gBAAgB,EAAE,SAa9B,CAAC;AAMF,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CA+D9D,CAAC;AAMF,qBAAa,WAAW;IACtB,OAAO,CAAC,IAAI,CAAuC;IACnD,OAAO,CAAC,MAAM,CAAY;IAC1B,OAAO,CAAC,YAAY,CAA8B;IAClD,OAAO,CAAC,SAAS,CAAY;gBAG3B,MAAM,GAAE,SAA4B,EACpC,YAAY,GAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAuB,EAClE,SAAS,CAAC,EAAE,SAAS;IAOvB;;OAEG;IACH,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,IAAI;IAatD;;OAEG;IACH,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI1B;;OAEG;IACG,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA8C1C,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,cAAc;IAgCtB;;OAEG;YACW,iBAAiB;IAoB/B;;OAEG;IACH,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,cAAc,GAAG,IAAI;IAIvE;;OAEG;IACH,kBAAkB,IAAI,MAAM,EAAE;IAI9B;;OAEG;IACH,KAAK,IAAI,IAAI;CAGd;AAMD,MAAM,WAAW,eAAe;IAC9B,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACxC,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;CAC/B;AAED;;GAEG;AACH,wBAAgB,qBAAqB,KAEjC,MAAM;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,EACzD,UAAU,OAAO,EACjB,aAAa,eAAe,KAC3B,OAAO,CAAC,OAAO,CAAC,CA6BpB"}