@epilot/sdk 2.0.3 → 2.0.4
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.
- package/definitions/access-token-runtime.json +1 -0
- package/definitions/access-token.json +663 -0
- package/definitions/address-runtime.json +1 -0
- package/definitions/address-suggestions-runtime.json +1 -0
- package/definitions/address-suggestions.json +582 -0
- package/definitions/address.json +578 -0
- package/definitions/ai-agents-runtime.json +1 -0
- package/definitions/ai-agents.json +1711 -0
- package/definitions/app-runtime.json +1 -0
- package/definitions/app.json +4443 -0
- package/definitions/audit-logs-runtime.json +1 -0
- package/definitions/audit-logs.json +305 -0
- package/definitions/automation-runtime.json +1 -0
- package/definitions/automation.json +4850 -0
- package/definitions/billing-runtime.json +1 -0
- package/definitions/billing.json +837 -0
- package/definitions/blueprint-manifest-runtime.json +1 -0
- package/definitions/blueprint-manifest.json +3376 -0
- package/definitions/consent-runtime.json +1 -0
- package/definitions/consent.json +344 -0
- package/definitions/customer-portal-runtime.json +1 -0
- package/definitions/customer-portal.json +15000 -0
- package/definitions/dashboard-runtime.json +1 -0
- package/definitions/dashboard.json +484 -0
- package/definitions/data-management-runtime.json +1 -0
- package/definitions/data-management.json +962 -0
- package/definitions/deduplication-runtime.json +1 -0
- package/definitions/deduplication.json +183 -0
- package/definitions/design-runtime.json +1 -0
- package/definitions/design.json +1423 -0
- package/definitions/document-runtime.json +1 -0
- package/definitions/document.json +758 -0
- package/definitions/email-settings-runtime.json +1 -0
- package/definitions/email-settings.json +2627 -0
- package/definitions/email-template-runtime.json +1 -0
- package/definitions/email-template.json +1419 -0
- package/definitions/entity-mapping-runtime.json +1 -0
- package/definitions/entity-mapping.json +1642 -0
- package/definitions/entity-runtime.json +1 -0
- package/definitions/entity.json +10074 -0
- package/definitions/environments-runtime.json +1 -0
- package/definitions/environments.json +363 -0
- package/definitions/erp-integration-runtime.json +1 -0
- package/definitions/erp-integration.json +5845 -0
- package/definitions/event-catalog-runtime.json +1 -0
- package/definitions/event-catalog.json +1051 -0
- package/definitions/file-runtime.json +1 -0
- package/definitions/file.json +2842 -0
- package/definitions/iban-runtime.json +1 -0
- package/definitions/iban.json +132 -0
- package/definitions/journey-runtime.json +1 -0
- package/definitions/journey.json +2341 -0
- package/definitions/kanban-runtime.json +1 -0
- package/definitions/kanban.json +929 -0
- package/definitions/message-runtime.json +1 -0
- package/definitions/message.json +2660 -0
- package/definitions/metering-runtime.json +1 -0
- package/definitions/metering.json +2321 -0
- package/definitions/notes-runtime.json +1 -0
- package/definitions/notes.json +1531 -0
- package/definitions/notification-runtime.json +1 -0
- package/definitions/notification.json +1425 -0
- package/definitions/organization-runtime.json +1 -0
- package/definitions/organization.json +629 -0
- package/definitions/partner-directory-runtime.json +1 -0
- package/definitions/partner-directory.json +1718 -0
- package/definitions/permissions-runtime.json +1 -0
- package/definitions/permissions.json +1480 -0
- package/definitions/pricing-runtime.json +1 -0
- package/definitions/pricing-tier-runtime.json +1 -0
- package/definitions/pricing-tier.json +105 -0
- package/definitions/pricing.json +9884 -0
- package/definitions/purpose-runtime.json +1 -0
- package/definitions/purpose.json +524 -0
- package/definitions/sandbox-runtime.json +1 -0
- package/definitions/sandbox.json +453 -0
- package/definitions/submission-runtime.json +1 -0
- package/definitions/submission.json +313 -0
- package/definitions/targeting-runtime.json +1 -0
- package/definitions/targeting.json +1474 -0
- package/definitions/template-variables-runtime.json +1 -0
- package/definitions/template-variables.json +1408 -0
- package/definitions/user-runtime.json +1 -0
- package/definitions/user.json +2408 -0
- package/definitions/validation-rules-runtime.json +1 -0
- package/definitions/validation-rules.json +1491 -0
- package/definitions/webhooks-runtime.json +1 -0
- package/definitions/webhooks.json +1525 -0
- package/definitions/workflow-definition-runtime.json +1 -0
- package/definitions/workflow-definition.json +3417 -0
- package/definitions/workflow-runtime.json +1 -0
- package/definitions/workflow.json +4106 -0
- package/dist/apis/access-token.cjs +7 -7
- package/dist/apis/access-token.js +1 -1
- package/dist/apis/address-suggestions.cjs +7 -7
- package/dist/apis/address-suggestions.js +1 -1
- package/dist/apis/address.cjs +7 -7
- package/dist/apis/address.js +1 -1
- package/dist/apis/ai-agents.cjs +7 -7
- package/dist/apis/ai-agents.js +1 -1
- package/dist/apis/app.cjs +7 -7
- package/dist/apis/app.js +1 -1
- package/dist/apis/audit-logs.cjs +7 -7
- package/dist/apis/audit-logs.js +1 -1
- package/dist/apis/automation.cjs +7 -7
- package/dist/apis/automation.js +1 -1
- package/dist/apis/billing.cjs +7 -7
- package/dist/apis/billing.js +1 -1
- package/dist/apis/blueprint-manifest.cjs +7 -7
- package/dist/apis/blueprint-manifest.js +1 -1
- package/dist/apis/consent.cjs +7 -7
- package/dist/apis/consent.js +1 -1
- package/dist/apis/customer-portal.cjs +7 -7
- package/dist/apis/customer-portal.js +1 -1
- package/dist/apis/dashboard.cjs +7 -7
- package/dist/apis/dashboard.js +1 -1
- package/dist/apis/data-management.cjs +7 -7
- package/dist/apis/data-management.d.cts +2 -2
- package/dist/apis/data-management.d.ts +2 -2
- package/dist/apis/data-management.js +1 -1
- package/dist/apis/deduplication.cjs +7 -7
- package/dist/apis/deduplication.js +1 -1
- package/dist/apis/design.cjs +7 -7
- package/dist/apis/design.js +1 -1
- package/dist/apis/document.cjs +7 -7
- package/dist/apis/document.js +1 -1
- package/dist/apis/email-settings.cjs +7 -7
- package/dist/apis/email-settings.js +1 -1
- package/dist/apis/email-template.cjs +7 -7
- package/dist/apis/email-template.js +1 -1
- package/dist/apis/entity-mapping.cjs +7 -7
- package/dist/apis/entity-mapping.js +1 -1
- package/dist/apis/entity.cjs +8 -8
- package/dist/apis/entity.d.cts +2 -2
- package/dist/apis/entity.d.ts +2 -2
- package/dist/apis/entity.js +2 -2
- package/dist/apis/environments.cjs +7 -7
- package/dist/apis/environments.js +1 -1
- package/dist/apis/erp-integration.cjs +7 -7
- package/dist/apis/erp-integration.js +1 -1
- package/dist/apis/event-catalog.cjs +7 -7
- package/dist/apis/event-catalog.js +1 -1
- package/dist/apis/file.cjs +7 -7
- package/dist/apis/file.js +1 -1
- package/dist/apis/iban.cjs +7 -7
- package/dist/apis/iban.js +1 -1
- package/dist/apis/journey.cjs +7 -7
- package/dist/apis/journey.js +1 -1
- package/dist/apis/kanban.cjs +7 -7
- package/dist/apis/kanban.js +1 -1
- package/dist/apis/message.cjs +7 -7
- package/dist/apis/message.js +1 -1
- package/dist/apis/metering.cjs +7 -7
- package/dist/apis/metering.js +1 -1
- package/dist/apis/notes.cjs +7 -7
- package/dist/apis/notes.js +1 -1
- package/dist/apis/notification.cjs +7 -7
- package/dist/apis/notification.js +1 -1
- package/dist/apis/organization.cjs +7 -7
- package/dist/apis/organization.js +1 -1
- package/dist/apis/partner-directory.cjs +7 -7
- package/dist/apis/partner-directory.js +1 -1
- package/dist/apis/permissions.cjs +7 -7
- package/dist/apis/permissions.js +1 -1
- package/dist/apis/pricing-tier.cjs +7 -7
- package/dist/apis/pricing-tier.js +1 -1
- package/dist/apis/pricing.cjs +7 -7
- package/dist/apis/pricing.js +1 -1
- package/dist/apis/purpose.cjs +7 -7
- package/dist/apis/purpose.js +1 -1
- package/dist/apis/sandbox.cjs +7 -7
- package/dist/apis/sandbox.js +1 -1
- package/dist/apis/submission.cjs +7 -7
- package/dist/apis/submission.js +1 -1
- package/dist/apis/targeting.cjs +7 -7
- package/dist/apis/targeting.js +1 -1
- package/dist/apis/template-variables.cjs +7 -7
- package/dist/apis/template-variables.js +1 -1
- package/dist/apis/user.cjs +7 -7
- package/dist/apis/user.js +1 -1
- package/dist/apis/validation-rules.cjs +7 -7
- package/dist/apis/validation-rules.js +1 -1
- package/dist/apis/webhooks.cjs +7 -7
- package/dist/apis/webhooks.js +1 -1
- package/dist/apis/workflow-definition.cjs +7 -7
- package/dist/apis/workflow-definition.js +1 -1
- package/dist/apis/workflow.cjs +7 -7
- package/dist/apis/workflow.js +1 -1
- package/dist/bin/cli.js +123 -25
- package/dist/{chunk-QMQNMCOC.js → chunk-XE25WERA.js} +1 -1
- package/dist/{chunk-5LXNSDG2.cjs → chunk-XEQMAKGA.cjs} +1 -1
- package/dist/{data-management.d-pnuiRU2h.d.ts → data-management.d-CkDmJwpx.d.cts} +1 -2
- package/dist/{data-management.d-pnuiRU2h.d.cts → data-management.d-CkDmJwpx.d.ts} +1 -2
- package/dist/{entity.d-CrtZaZr8.d.cts → entity.d-DtiajmaY.d.cts} +292 -10
- package/dist/{entity.d-CrtZaZr8.d.ts → entity.d-DtiajmaY.d.ts} +292 -10
- package/dist/index.cjs +7 -7
- package/dist/index.d.cts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.js +1 -1
- package/dist/js-yaml-UPZKYVRY.js +2645 -0
- package/package.json +11 -10
- package/LICENSE +0 -21
package/dist/bin/cli.js
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
#!/usr/bin/env node
|
|
3
2
|
|
|
4
3
|
// src/bin/cli.ts
|
|
5
4
|
import { existsSync, mkdirSync, readFileSync, writeFileSync } from "fs";
|
|
@@ -21,6 +20,11 @@ Examples:
|
|
|
21
20
|
npx epilot-sdk typegen
|
|
22
21
|
`);
|
|
23
22
|
};
|
|
23
|
+
var isYamlFile = (filePath) => filePath.endsWith(".yaml") || filePath.endsWith(".yml");
|
|
24
|
+
var parseYaml = async (content) => {
|
|
25
|
+
const { load } = await import("../js-yaml-UPZKYVRY.js");
|
|
26
|
+
return load(content);
|
|
27
|
+
};
|
|
24
28
|
var readOverrides = () => {
|
|
25
29
|
const filePath = resolve(process.cwd(), OVERRIDES_PATH);
|
|
26
30
|
if (!existsSync(filePath)) return {};
|
|
@@ -42,6 +46,81 @@ var fetchSpec = async (specPath) => {
|
|
|
42
46
|
if (!existsSync(absolutePath)) throw new Error(`Spec file not found: ${absolutePath}`);
|
|
43
47
|
return readFileSync(absolutePath, "utf-8");
|
|
44
48
|
};
|
|
49
|
+
var parseSpec = async (content, specPath) => {
|
|
50
|
+
if (isYamlFile(specPath)) {
|
|
51
|
+
return await parseYaml(content);
|
|
52
|
+
}
|
|
53
|
+
return JSON.parse(content);
|
|
54
|
+
};
|
|
55
|
+
var toKebabCase = (name) => name.replace(/([a-z])([A-Z])/g, "$1-$2").toLowerCase();
|
|
56
|
+
var compactifyParam = (p) => {
|
|
57
|
+
if (p.$ref) {
|
|
58
|
+
return [p.$ref.split("/").pop()];
|
|
59
|
+
}
|
|
60
|
+
const loc = { path: "p", query: "q", header: "h", cookie: "c" }[p.in] || "q";
|
|
61
|
+
const cp = [p.name, loc];
|
|
62
|
+
if (p.required) cp.push(true);
|
|
63
|
+
if (p.style) {
|
|
64
|
+
if (!p.required) cp.push(false);
|
|
65
|
+
cp.push(p.style);
|
|
66
|
+
}
|
|
67
|
+
if (p.explode !== void 0) {
|
|
68
|
+
cp.push(p.explode);
|
|
69
|
+
}
|
|
70
|
+
return cp;
|
|
71
|
+
};
|
|
72
|
+
var compactifySpec = (spec) => {
|
|
73
|
+
const server = spec.servers?.[0]?.url || "";
|
|
74
|
+
const openapiVersion = spec.openapi || "3.0.2";
|
|
75
|
+
const paths = spec.paths || {};
|
|
76
|
+
const ops = [];
|
|
77
|
+
const pathParams = {};
|
|
78
|
+
for (const [path, methods] of Object.entries(paths)) {
|
|
79
|
+
if (methods.parameters) {
|
|
80
|
+
pathParams[path] = methods.parameters.map(compactifyParam);
|
|
81
|
+
}
|
|
82
|
+
for (const [method, rawOp] of Object.entries(methods)) {
|
|
83
|
+
if (method === "parameters") continue;
|
|
84
|
+
const op = rawOp;
|
|
85
|
+
if (typeof op !== "object" || !op.operationId) continue;
|
|
86
|
+
const params = op.parameters || [];
|
|
87
|
+
const compactParams = params.map(compactifyParam);
|
|
88
|
+
const hasBody = op.requestBody ? 1 : 0;
|
|
89
|
+
const entry = [op.operationId, method, path];
|
|
90
|
+
if (compactParams.length > 0 || hasBody) entry.push(compactParams.length > 0 ? compactParams : void 0);
|
|
91
|
+
if (hasBody) entry.push(1);
|
|
92
|
+
ops.push(entry);
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
const componentParams = spec.components?.parameters;
|
|
96
|
+
const result = { s: server, o: ops };
|
|
97
|
+
if (openapiVersion !== "3.0.2") result.v = openapiVersion;
|
|
98
|
+
if (componentParams && Object.keys(componentParams).length > 0) {
|
|
99
|
+
const cpObj = {};
|
|
100
|
+
for (const [refName, p] of Object.entries(componentParams)) {
|
|
101
|
+
cpObj[refName] = compactifyParam(p);
|
|
102
|
+
}
|
|
103
|
+
result.cp = cpObj;
|
|
104
|
+
}
|
|
105
|
+
if (Object.keys(pathParams).length > 0) {
|
|
106
|
+
result.pp = pathParams;
|
|
107
|
+
}
|
|
108
|
+
return result;
|
|
109
|
+
};
|
|
110
|
+
var findSdkRoot = () => {
|
|
111
|
+
try {
|
|
112
|
+
let dir = process.cwd();
|
|
113
|
+
while (true) {
|
|
114
|
+
const candidate = resolve(dir, "node_modules/@epilot/sdk");
|
|
115
|
+
if (existsSync(candidate)) return candidate;
|
|
116
|
+
const parent = dirname(dir);
|
|
117
|
+
if (parent === dir) break;
|
|
118
|
+
dir = parent;
|
|
119
|
+
}
|
|
120
|
+
} catch {
|
|
121
|
+
}
|
|
122
|
+
return null;
|
|
123
|
+
};
|
|
45
124
|
var overrideCmd = async (args) => {
|
|
46
125
|
if (args.length === 2) {
|
|
47
126
|
const [apiName, specPath] = args;
|
|
@@ -49,7 +128,7 @@ var overrideCmd = async (args) => {
|
|
|
49
128
|
overrides2[apiName] = specPath;
|
|
50
129
|
writeOverrides(overrides2);
|
|
51
130
|
console.log(`Added override: ${apiName} -> ${specPath}`);
|
|
52
|
-
console.log(`Run 'npx epilot-sdk typegen' to regenerate types.`);
|
|
131
|
+
console.log(`Run 'npx epilot-sdk override' to apply, then 'npx epilot-sdk typegen' to regenerate types.`);
|
|
53
132
|
return;
|
|
54
133
|
}
|
|
55
134
|
const overrides = readOverrides();
|
|
@@ -59,19 +138,27 @@ var overrideCmd = async (args) => {
|
|
|
59
138
|
console.log(`Create one with: npx epilot-sdk override <api-name> <spec-path>`);
|
|
60
139
|
return;
|
|
61
140
|
}
|
|
141
|
+
const sdkRoot = findSdkRoot();
|
|
142
|
+
if (!sdkRoot) {
|
|
143
|
+
console.error("Could not find @epilot/sdk in node_modules. Is it installed?");
|
|
144
|
+
process.exit(1);
|
|
145
|
+
}
|
|
146
|
+
const defsDir = resolve(sdkRoot, "definitions");
|
|
62
147
|
console.log(`Applying ${entries.length} override(s)...`);
|
|
63
148
|
for (const [apiName, specPath] of entries) {
|
|
64
149
|
try {
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
const
|
|
68
|
-
|
|
69
|
-
const
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
|
|
150
|
+
const kebabName = toKebabCase(apiName);
|
|
151
|
+
console.log(` ${apiName} (${kebabName}): ${specPath}`);
|
|
152
|
+
const rawContent = await fetchSpec(specPath);
|
|
153
|
+
const spec = await parseSpec(rawContent, specPath);
|
|
154
|
+
const fullSpecDest = resolve(defsDir, `${kebabName}.json`);
|
|
155
|
+
writeFileSync(fullSpecDest, `${JSON.stringify(spec, null, 2)}
|
|
156
|
+
`);
|
|
157
|
+
console.log(` -> definitions/${kebabName}.json`);
|
|
158
|
+
const compactSpec = compactifySpec(spec);
|
|
159
|
+
const runtimeDest = resolve(defsDir, `${kebabName}-runtime.json`);
|
|
160
|
+
writeFileSync(runtimeDest, JSON.stringify(compactSpec));
|
|
161
|
+
console.log(` -> definitions/${kebabName}-runtime.json`);
|
|
75
162
|
} catch (err) {
|
|
76
163
|
console.error(` Error: ${err.message}`);
|
|
77
164
|
}
|
|
@@ -82,28 +169,39 @@ Done. Run 'npx epilot-sdk typegen' to regenerate types.`);
|
|
|
82
169
|
var typegenCmd = async () => {
|
|
83
170
|
try {
|
|
84
171
|
const { execSync } = await import("child_process");
|
|
85
|
-
const
|
|
86
|
-
if (!
|
|
87
|
-
console.
|
|
172
|
+
const sdkRoot = findSdkRoot();
|
|
173
|
+
if (!sdkRoot) {
|
|
174
|
+
console.error("Could not find @epilot/sdk in node_modules. Is it installed?");
|
|
175
|
+
process.exit(1);
|
|
176
|
+
}
|
|
177
|
+
const overrides = readOverrides();
|
|
178
|
+
const entries = Object.entries(overrides);
|
|
179
|
+
if (entries.length === 0) {
|
|
180
|
+
console.log('No overrides found. Run "npx epilot-sdk override" first.');
|
|
88
181
|
return;
|
|
89
182
|
}
|
|
90
|
-
const
|
|
91
|
-
const
|
|
92
|
-
const
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
183
|
+
const defsDir = resolve(sdkRoot, "definitions");
|
|
184
|
+
const distDir = resolve(sdkRoot, "dist");
|
|
185
|
+
for (const [apiName] of entries) {
|
|
186
|
+
const kebabName = toKebabCase(apiName);
|
|
187
|
+
const specPath = resolve(defsDir, `${kebabName}.json`);
|
|
188
|
+
if (!existsSync(specPath)) {
|
|
189
|
+
console.error(` No spec found for ${apiName}. Run "npx epilot-sdk override" first.`);
|
|
190
|
+
continue;
|
|
191
|
+
}
|
|
98
192
|
console.log(`Generating types for ${apiName}...`);
|
|
99
193
|
try {
|
|
194
|
+
const typesPath = resolve(distDir, `apis/${kebabName}.d.ts`);
|
|
100
195
|
execSync(`npx openapi-client-axios-typegen ${specPath} --client > ${typesPath}`, { stdio: "pipe" });
|
|
101
|
-
console.log(` ->
|
|
196
|
+
console.log(` -> dist/apis/${kebabName}.d.ts`);
|
|
197
|
+
const ctypesPath = resolve(distDir, `apis/${kebabName}.d.cts`);
|
|
198
|
+
execSync(`npx openapi-client-axios-typegen ${specPath} --client > ${ctypesPath}`, { stdio: "pipe" });
|
|
199
|
+
console.log(` -> dist/apis/${kebabName}.d.cts`);
|
|
102
200
|
} catch (err) {
|
|
103
201
|
console.error(` Error generating types for ${apiName}: ${err.message}`);
|
|
104
202
|
}
|
|
105
203
|
}
|
|
106
|
-
console.log("\nDone.
|
|
204
|
+
console.log("\nDone.");
|
|
107
205
|
} catch (err) {
|
|
108
206
|
console.error(`Error: ${err.message}`);
|
|
109
207
|
}
|
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
import { OpenAPIClient, Parameters, AxiosRequestConfig, OperationResponse } from 'openapi-client-axios';
|
|
2
2
|
|
|
3
3
|
/* Auto-copied from data-management-client */
|
|
4
|
-
/* eslint-disable */
|
|
5
|
-
|
|
6
4
|
|
|
7
5
|
|
|
8
6
|
declare namespace Components {
|
|
@@ -112,6 +110,7 @@ declare namespace Components {
|
|
|
112
110
|
type: QueryFilterType;
|
|
113
111
|
related_entity_schemas?: string[];
|
|
114
112
|
lookback_period_days?: number;
|
|
113
|
+
message_type?: ("SENT" | "RECEIVED")[];
|
|
115
114
|
}
|
|
116
115
|
export type QueryFilterType = "entity_workflows_only_in_closed_or_cancelled_status" | "no_related_entities" | "related_entities_all_in_closed_or_cancelled_status" | "related_entities_workflows_only_in_closed_or_cancelled_status" | "no_email_communication_since";
|
|
117
116
|
export interface UpdateJobRequest {
|
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
import { OpenAPIClient, Parameters, AxiosRequestConfig, OperationResponse } from 'openapi-client-axios';
|
|
2
2
|
|
|
3
3
|
/* Auto-copied from data-management-client */
|
|
4
|
-
/* eslint-disable */
|
|
5
|
-
|
|
6
4
|
|
|
7
5
|
|
|
8
6
|
declare namespace Components {
|
|
@@ -112,6 +110,7 @@ declare namespace Components {
|
|
|
112
110
|
type: QueryFilterType;
|
|
113
111
|
related_entity_schemas?: string[];
|
|
114
112
|
lookback_period_days?: number;
|
|
113
|
+
message_type?: ("SENT" | "RECEIVED")[];
|
|
115
114
|
}
|
|
116
115
|
export type QueryFilterType = "entity_workflows_only_in_closed_or_cancelled_status" | "no_related_entities" | "related_entities_all_in_closed_or_cancelled_status" | "related_entities_workflows_only_in_closed_or_cancelled_status" | "no_email_communication_since";
|
|
117
116
|
export interface UpdateJobRequest {
|