@gorgo/medusa-integration 0.0.3 → 0.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/.medusa/server/src/admin/index.js +35 -21
- package/.medusa/server/src/admin/index.mjs +35 -21
- package/.medusa/server/src/api/admin/integrations/__tests__/helpers.unit.spec.d.ts +1 -0
- package/.medusa/server/src/api/admin/integrations/__tests__/helpers.unit.spec.js +30 -0
- package/.medusa/server/src/api/admin/integrations/_helpers.d.ts +3 -3
- package/.medusa/server/src/api/admin/integrations/_helpers.js +8 -8
- package/.medusa/server/src/index.d.ts +1 -1
- package/.medusa/server/src/jobs/__tests__/test-integration-connections.unit.spec.d.ts +1 -0
- package/.medusa/server/src/jobs/__tests__/test-integration-connections.unit.spec.js +27 -0
- package/.medusa/server/src/jobs/test-integration-connections.d.ts +7 -0
- package/.medusa/server/src/jobs/test-integration-connections.js +19 -6
- package/.medusa/server/src/modules/integration/descriptor/__tests__/build-zod.unit.spec.js +43 -1
- package/.medusa/server/src/modules/integration/descriptor/__tests__/define.unit.spec.js +3 -3
- package/.medusa/server/src/modules/integration/descriptor/__tests__/introspect.unit.spec.js +3 -3
- package/.medusa/server/src/modules/integration/descriptor/__tests__/section-write.unit.spec.d.ts +1 -0
- package/.medusa/server/src/modules/integration/descriptor/__tests__/section-write.unit.spec.js +64 -0
- package/.medusa/server/src/modules/integration/descriptor/__tests__/validate.unit.spec.js +28 -2
- package/.medusa/server/src/modules/integration/descriptor/build-zod.js +7 -1
- package/.medusa/server/src/modules/integration/descriptor/define.d.ts +5 -5
- package/.medusa/server/src/modules/integration/descriptor/define.js +1 -1
- package/.medusa/server/src/modules/integration/descriptor/introspect.js +2 -2
- package/.medusa/server/src/modules/integration/descriptor/meta.d.ts +1 -1
- package/.medusa/server/src/modules/integration/descriptor/section-write.d.ts +10 -0
- package/.medusa/server/src/modules/integration/descriptor/section-write.js +24 -0
- package/.medusa/server/src/modules/integration/loaders/load-providers.js +2 -2
- package/.medusa/server/src/modules/integration/migrations/Migration20260720130920.d.ts +5 -0
- package/.medusa/server/src/modules/integration/migrations/Migration20260720130920.js +18 -0
- package/.medusa/server/src/modules/integration/models/integration.d.ts +1 -1
- package/.medusa/server/src/modules/integration/models/integration.js +3 -3
- package/.medusa/server/src/modules/integration/services/__tests__/integration-module.unit.spec.d.ts +1 -0
- package/.medusa/server/src/modules/integration/services/__tests__/integration-module.unit.spec.js +240 -0
- package/.medusa/server/src/modules/integration/services/__tests__/integration-provider.unit.spec.js +2 -2
- package/.medusa/server/src/modules/integration/services/integration-module.d.ts +3 -3
- package/.medusa/server/src/modules/integration/services/integration-module.js +3 -3
- package/.medusa/server/src/modules/integration/utils/integration.d.ts +3 -3
- package/.medusa/server/src/modules/integration/utils/integration.js +4 -4
- package/.medusa/server/src/subscribers/__tests__/invalidate-options-cache.unit.spec.d.ts +1 -0
- package/.medusa/server/src/subscribers/__tests__/invalidate-options-cache.unit.spec.js +53 -0
- package/.medusa/server/src/types/http/integration/admin/entities.d.ts +5 -4
- package/.medusa/server/src/types/integration/common.d.ts +3 -3
- package/.medusa/server/src/workflows/integration/steps/apply-integration-section.d.ts +1 -1
- package/.medusa/server/src/workflows/integration/steps/apply-integration-section.js +13 -20
- package/.medusa/server/src/workflows/integration/steps/set-integration-enabled.d.ts +1 -1
- package/.medusa/server/src/workflows/integration/steps/upsert-integration-record.d.ts +2 -2
- package/.medusa/server/src/workflows/integration/workflows/set-integration-enabled.d.ts +1 -1
- package/.medusa/server/src/workflows/integration/workflows/upsert-integration.js +2 -2
- package/README.md +41 -2
- package/README.ru.md +85 -0
- package/package.json +1 -1
package/.medusa/server/src/modules/integration/services/__tests__/integration-module.unit.spec.js
ADDED
|
@@ -0,0 +1,240 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const globals_1 = require("@jest/globals");
|
|
7
|
+
const integration_module_1 = __importDefault(require("../integration-module"));
|
|
8
|
+
const define_1 = require("../../descriptor/define");
|
|
9
|
+
// A representative descriptor: one plain required option, one required secret, one defaulted enum.
|
|
10
|
+
const descriptor = (0, define_1.defineIntegration)({
|
|
11
|
+
category: "payment",
|
|
12
|
+
displayName: "d",
|
|
13
|
+
options: {
|
|
14
|
+
apiKey: { type: "string", required: true, minLength: 1, label: "l" },
|
|
15
|
+
secretKey: { type: "string", required: true, minLength: 1, secret: true, label: "l" },
|
|
16
|
+
mode: { type: "enum", values: ["live", "test"], default: "test", label: "l" },
|
|
17
|
+
},
|
|
18
|
+
sections: [{ id: "creds", title: "t", options: ["apiKey", "secretKey", "mode"] }],
|
|
19
|
+
testConnection: async () => ({ status: "passed" }),
|
|
20
|
+
});
|
|
21
|
+
const registration = {
|
|
22
|
+
key: "int_demo",
|
|
23
|
+
identifier: "demo",
|
|
24
|
+
instanceId: null,
|
|
25
|
+
provider: {
|
|
26
|
+
descriptor,
|
|
27
|
+
getIdentifier: () => "demo",
|
|
28
|
+
getInstanceId: () => null,
|
|
29
|
+
},
|
|
30
|
+
};
|
|
31
|
+
function makeProviderService(regs = [registration]) {
|
|
32
|
+
return {
|
|
33
|
+
listRegistrations: () => regs,
|
|
34
|
+
getRegistration: (k) => regs.find((r) => r.key === k),
|
|
35
|
+
retrieveByKey: (k) => {
|
|
36
|
+
const r = regs.find((reg) => reg.key === k);
|
|
37
|
+
if (!r)
|
|
38
|
+
throw new Error(`Unknown ${k}`);
|
|
39
|
+
return r.provider;
|
|
40
|
+
},
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
function makeService(opts) {
|
|
44
|
+
const rows = opts?.rows ?? [];
|
|
45
|
+
const svc = Object.create(integration_module_1.default.prototype);
|
|
46
|
+
svc.providerService_ = opts?.providerService ?? makeProviderService();
|
|
47
|
+
svc.options_ = opts?.options ?? { encryptionKey: "unit-test-key" };
|
|
48
|
+
svc.cache_ = new Map();
|
|
49
|
+
svc.listIntegrations = globals_1.jest.fn(async (filter = {}) => rows.filter((r) => (filter?.provider_id ? r.provider_id === filter.provider_id : true)));
|
|
50
|
+
svc.createIntegrations = globals_1.jest.fn(async (data) => {
|
|
51
|
+
const row = { id: "int_demo", is_enabled: true, ...data };
|
|
52
|
+
rows.push(row);
|
|
53
|
+
return row;
|
|
54
|
+
});
|
|
55
|
+
svc.updateIntegrations = globals_1.jest.fn(async (data) => {
|
|
56
|
+
const row = rows.find((r) => r.id === data.id);
|
|
57
|
+
if (row)
|
|
58
|
+
Object.assign(row, data);
|
|
59
|
+
return row;
|
|
60
|
+
});
|
|
61
|
+
svc.deleteIntegrations = globals_1.jest.fn(async (id) => {
|
|
62
|
+
const i = rows.findIndex((r) => r.id === id);
|
|
63
|
+
if (i >= 0)
|
|
64
|
+
rows.splice(i, 1);
|
|
65
|
+
});
|
|
66
|
+
svc._rows = rows;
|
|
67
|
+
return svc;
|
|
68
|
+
}
|
|
69
|
+
/** A stored row whose `options` are what `encryptForStorage` would persist for `values`. */
|
|
70
|
+
function storedRow(svc, values, extra) {
|
|
71
|
+
return {
|
|
72
|
+
id: "int_demo",
|
|
73
|
+
provider_id: "int_demo",
|
|
74
|
+
category: "payment",
|
|
75
|
+
title: null,
|
|
76
|
+
is_enabled: true,
|
|
77
|
+
last_test_status: null,
|
|
78
|
+
options: svc.encryptForStorage(descriptor, values),
|
|
79
|
+
...extra,
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
(0, globals_1.describe)("IntegrationModuleService — encryption", () => {
|
|
83
|
+
(0, globals_1.it)("encrypts secret options inline (ciphertext, not plaintext) and leaves non-secrets", () => {
|
|
84
|
+
const svc = makeService();
|
|
85
|
+
const stored = svc.encryptForStorage(descriptor, { apiKey: "pub", secretKey: "shh", mode: "live" });
|
|
86
|
+
(0, globals_1.expect)(stored.apiKey).toBe("pub");
|
|
87
|
+
(0, globals_1.expect)(stored.mode).toBe("live");
|
|
88
|
+
(0, globals_1.expect)(stored.secretKey).not.toBe("shh"); // encrypted
|
|
89
|
+
(0, globals_1.expect)(typeof stored.secretKey).toBe("string");
|
|
90
|
+
});
|
|
91
|
+
(0, globals_1.it)("round-trips secrets back to plaintext via getStoredValues", async () => {
|
|
92
|
+
const svc = makeService();
|
|
93
|
+
const row = storedRow(svc, { apiKey: "pub", secretKey: "shh", mode: "test" });
|
|
94
|
+
svc._rows.push(row);
|
|
95
|
+
const values = await svc.getStoredValues("int_demo");
|
|
96
|
+
(0, globals_1.expect)(values).toEqual({ apiKey: "pub", secretKey: "shh", mode: "test" });
|
|
97
|
+
});
|
|
98
|
+
(0, globals_1.it)("getStoredValues returns {} when there is no row", async () => {
|
|
99
|
+
const svc = makeService();
|
|
100
|
+
(0, globals_1.expect)(await svc.getStoredValues("int_demo")).toEqual({});
|
|
101
|
+
});
|
|
102
|
+
(0, globals_1.it)("throws a helpful error when a secret must be encrypted but no key is configured", () => {
|
|
103
|
+
const svc = makeService({ options: {} }); // no encryptionKey
|
|
104
|
+
(0, globals_1.expect)(() => svc.encryptForStorage(descriptor, { apiKey: "pub", secretKey: "shh" })).toThrow(/encryptionKey is required/);
|
|
105
|
+
});
|
|
106
|
+
(0, globals_1.it)("does not require a key when the descriptor has no secrets", () => {
|
|
107
|
+
const noSecrets = (0, define_1.defineIntegration)({
|
|
108
|
+
category: "payment",
|
|
109
|
+
displayName: "d",
|
|
110
|
+
options: { apiKey: { type: "string", label: "l" } },
|
|
111
|
+
sections: [{ id: "s", title: "t", options: ["apiKey"] }],
|
|
112
|
+
});
|
|
113
|
+
const svc = makeService({ options: {} });
|
|
114
|
+
(0, globals_1.expect)(svc.encryptForStorage({ ...noSecrets, identifier: "x", instanceId: null }, { apiKey: "pub" })).toEqual({
|
|
115
|
+
apiKey: "pub",
|
|
116
|
+
});
|
|
117
|
+
});
|
|
118
|
+
});
|
|
119
|
+
(0, globals_1.describe)("IntegrationModuleService — isComplete", () => {
|
|
120
|
+
(0, globals_1.it)("is false when a required field is missing", () => {
|
|
121
|
+
const svc = makeService();
|
|
122
|
+
const row = storedRow(svc, { apiKey: "pub" }); // secretKey missing
|
|
123
|
+
(0, globals_1.expect)(svc.isComplete(row)).toBe(false);
|
|
124
|
+
});
|
|
125
|
+
(0, globals_1.it)("is true when all required present and defaults fill the rest", () => {
|
|
126
|
+
const svc = makeService();
|
|
127
|
+
const row = storedRow(svc, { apiKey: "pub", secretKey: "shh" }); // mode defaults to "test"
|
|
128
|
+
(0, globals_1.expect)(svc.isComplete(row)).toBe(true);
|
|
129
|
+
});
|
|
130
|
+
(0, globals_1.it)("is false when no provider is registered for the row", () => {
|
|
131
|
+
const svc = makeService({ providerService: makeProviderService([]) });
|
|
132
|
+
(0, globals_1.expect)(svc.isComplete({ provider_id: "int_demo", options: {} })).toBe(false);
|
|
133
|
+
});
|
|
134
|
+
});
|
|
135
|
+
(0, globals_1.describe)("IntegrationModuleService — getResolvedOptions", () => {
|
|
136
|
+
(0, globals_1.it)("throws when the provider_id is not a registered provider", async () => {
|
|
137
|
+
const svc = makeService({ providerService: makeProviderService([]) });
|
|
138
|
+
await (0, globals_1.expect)(svc.getResolvedOptions("demo", null)).rejects.toThrow(/No integration provider registered/);
|
|
139
|
+
});
|
|
140
|
+
(0, globals_1.it)("returns null when there is no stored row", async () => {
|
|
141
|
+
const svc = makeService();
|
|
142
|
+
(0, globals_1.expect)(await svc.getResolvedOptions("demo", null)).toBeNull();
|
|
143
|
+
});
|
|
144
|
+
(0, globals_1.it)("returns null when the row is disabled", async () => {
|
|
145
|
+
const svc = makeService();
|
|
146
|
+
svc._rows.push(storedRow(svc, { apiKey: "pub", secretKey: "shh" }, { is_enabled: false }));
|
|
147
|
+
(0, globals_1.expect)(await svc.getResolvedOptions("demo", null)).toBeNull();
|
|
148
|
+
});
|
|
149
|
+
(0, globals_1.it)("returns null when enabled but the config is incomplete", async () => {
|
|
150
|
+
const svc = makeService();
|
|
151
|
+
svc._rows.push(storedRow(svc, { apiKey: "pub" }, { is_enabled: true })); // secretKey missing
|
|
152
|
+
(0, globals_1.expect)(await svc.getResolvedOptions("demo", null)).toBeNull();
|
|
153
|
+
});
|
|
154
|
+
(0, globals_1.it)("returns decrypted options with defaults applied when enabled and complete", async () => {
|
|
155
|
+
const svc = makeService();
|
|
156
|
+
svc._rows.push(storedRow(svc, { apiKey: "pub", secretKey: "shh" }, { is_enabled: true }));
|
|
157
|
+
const resolved = await svc.getResolvedOptions("demo", null);
|
|
158
|
+
(0, globals_1.expect)(resolved).not.toBeNull();
|
|
159
|
+
(0, globals_1.expect)(resolved.options).toEqual({ apiKey: "pub", secretKey: "shh", mode: "test" });
|
|
160
|
+
(0, globals_1.expect)(resolved.meta).toEqual({ provider_id: "int_demo", category: "payment", is_enabled: true });
|
|
161
|
+
});
|
|
162
|
+
(0, globals_1.it)("serves a cached value within the TTL without hitting the store again", async () => {
|
|
163
|
+
const svc = makeService();
|
|
164
|
+
svc._rows.push(storedRow(svc, { apiKey: "pub", secretKey: "shh" }, { is_enabled: true }));
|
|
165
|
+
await svc.getResolvedOptions("demo", null);
|
|
166
|
+
const callsAfterFirst = svc.listIntegrations.mock.calls.length;
|
|
167
|
+
await svc.getResolvedOptions("demo", null);
|
|
168
|
+
(0, globals_1.expect)(svc.listIntegrations.mock.calls.length).toBe(callsAfterFirst); // no extra store read
|
|
169
|
+
});
|
|
170
|
+
(0, globals_1.it)("clearOptionsCache forces a re-read", async () => {
|
|
171
|
+
const svc = makeService();
|
|
172
|
+
svc._rows.push(storedRow(svc, { apiKey: "pub", secretKey: "shh" }, { is_enabled: true }));
|
|
173
|
+
await svc.getResolvedOptions("demo", null);
|
|
174
|
+
const before = svc.listIntegrations.mock.calls.length;
|
|
175
|
+
svc.clearOptionsCache("int_demo");
|
|
176
|
+
await svc.getResolvedOptions("demo", null);
|
|
177
|
+
(0, globals_1.expect)(svc.listIntegrations.mock.calls.length).toBeGreaterThan(before);
|
|
178
|
+
});
|
|
179
|
+
});
|
|
180
|
+
(0, globals_1.describe)("IntegrationModuleService — runTestConnection", () => {
|
|
181
|
+
(0, globals_1.it)("returns skipped when the descriptor has no testConnection", async () => {
|
|
182
|
+
const noTest = (0, define_1.defineIntegration)({
|
|
183
|
+
category: "payment",
|
|
184
|
+
displayName: "d",
|
|
185
|
+
options: { apiKey: { type: "string", label: "l" } },
|
|
186
|
+
sections: [{ id: "s", title: "t", options: ["apiKey"] }],
|
|
187
|
+
});
|
|
188
|
+
const reg = {
|
|
189
|
+
key: "int_demo",
|
|
190
|
+
identifier: "demo",
|
|
191
|
+
instanceId: null,
|
|
192
|
+
provider: { descriptor: noTest, getIdentifier: () => "demo", getInstanceId: () => null },
|
|
193
|
+
};
|
|
194
|
+
const svc = makeService({ providerService: makeProviderService([reg]) });
|
|
195
|
+
(0, globals_1.expect)(await svc.runTestConnection("int_demo")).toEqual({ status: "skipped", message: "No test configured" });
|
|
196
|
+
});
|
|
197
|
+
(0, globals_1.it)("returns failed 'Not configured' when options don't resolve", async () => {
|
|
198
|
+
const svc = makeService(); // no row → getResolvedOptions null
|
|
199
|
+
const res = await svc.runTestConnection("int_demo");
|
|
200
|
+
(0, globals_1.expect)(res).toEqual({ status: "failed", message: "Not configured" });
|
|
201
|
+
});
|
|
202
|
+
(0, globals_1.it)("returns failed for an unknown provider id without throwing", async () => {
|
|
203
|
+
const svc = makeService({ providerService: makeProviderService([]) });
|
|
204
|
+
const res = await svc.runTestConnection("int_missing");
|
|
205
|
+
(0, globals_1.expect)(res.status).toBe("failed");
|
|
206
|
+
(0, globals_1.expect)(res.message).toMatch(/Unknown integration provider/);
|
|
207
|
+
});
|
|
208
|
+
(0, globals_1.it)("passes through the descriptor's testConnection result on success", async () => {
|
|
209
|
+
const svc = makeService();
|
|
210
|
+
svc._rows.push(storedRow(svc, { apiKey: "pub", secretKey: "shh" }, { is_enabled: true }));
|
|
211
|
+
(0, globals_1.expect)(await svc.runTestConnection("int_demo")).toEqual({ status: "passed" });
|
|
212
|
+
});
|
|
213
|
+
});
|
|
214
|
+
(0, globals_1.describe)("IntegrationModuleService — listIntegrationsOverview", () => {
|
|
215
|
+
(0, globals_1.it)("lists a registered-but-unconfigured provider", async () => {
|
|
216
|
+
const svc = makeService();
|
|
217
|
+
const [item] = await svc.listIntegrationsOverview();
|
|
218
|
+
(0, globals_1.expect)(item).toMatchObject({
|
|
219
|
+
provider_id: "int_demo",
|
|
220
|
+
identifier: "demo",
|
|
221
|
+
is_configured: false,
|
|
222
|
+
is_enabled: false,
|
|
223
|
+
is_complete: false,
|
|
224
|
+
has_test_connection: true,
|
|
225
|
+
last_test_status: null,
|
|
226
|
+
});
|
|
227
|
+
});
|
|
228
|
+
(0, globals_1.it)("reflects a configured + complete + enabled row", async () => {
|
|
229
|
+
const svc = makeService();
|
|
230
|
+
svc._rows.push(storedRow(svc, { apiKey: "pub", secretKey: "shh" }, { is_enabled: true, last_test_status: "passed" }));
|
|
231
|
+
const [item] = await svc.listIntegrationsOverview();
|
|
232
|
+
(0, globals_1.expect)(item).toMatchObject({
|
|
233
|
+
is_configured: true,
|
|
234
|
+
is_enabled: true,
|
|
235
|
+
is_complete: true,
|
|
236
|
+
last_test_status: "passed",
|
|
237
|
+
});
|
|
238
|
+
});
|
|
239
|
+
});
|
|
240
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZWdyYXRpb24tbW9kdWxlLnVuaXQuc3BlYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9tb2R1bGVzL2ludGVncmF0aW9uL3NlcnZpY2VzL19fdGVzdHNfXy9pbnRlZ3JhdGlvbi1tb2R1bGUudW5pdC5zcGVjLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsMkNBQTBEO0FBQzFELCtFQUE0RDtBQUM1RCxvREFBMkQ7QUFFM0QsbUdBQW1HO0FBQ25HLE1BQU0sVUFBVSxHQUFHLElBQUEsMEJBQWlCLEVBQUM7SUFDbkMsUUFBUSxFQUFFLFNBQVM7SUFDbkIsV0FBVyxFQUFFLEdBQUc7SUFDaEIsT0FBTyxFQUFFO1FBQ1AsTUFBTSxFQUFFLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxDQUFDLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRTtRQUNwRSxTQUFTLEVBQUUsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUU7UUFDckYsSUFBSSxFQUFFLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFO0tBQzlFO0lBQ0QsUUFBUSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsUUFBUSxFQUFFLFdBQVcsRUFBRSxNQUFNLENBQUMsRUFBRSxDQUFDO0lBQ2pGLGNBQWMsRUFBRSxLQUFLLElBQUksRUFBRSxDQUFDLENBQUMsRUFBRSxNQUFNLEVBQUUsUUFBaUIsRUFBRSxDQUFDO0NBQzVE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
|
package/.medusa/server/src/modules/integration/services/__tests__/integration-provider.unit.spec.js
CHANGED
|
@@ -12,7 +12,7 @@ const mkProvider = (identifier, instanceId, withTest = false) => {
|
|
|
12
12
|
getInstanceId: () => instanceId,
|
|
13
13
|
get descriptor() {
|
|
14
14
|
return {
|
|
15
|
-
|
|
15
|
+
category: "payment",
|
|
16
16
|
displayName: `${identifier}.name`,
|
|
17
17
|
options: {},
|
|
18
18
|
sections: [],
|
|
@@ -75,4 +75,4 @@ const makeRegistry = () => new integration_provider_1.default({
|
|
|
75
75
|
(0, globals_1.expect)(ds.find((d) => d.identifier === "tkassa").instanceId).toBe(null);
|
|
76
76
|
});
|
|
77
77
|
});
|
|
78
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
78
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZWdyYXRpb24tcHJvdmlkZXIudW5pdC5zcGVjLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL21vZHVsZXMvaW50ZWdyYXRpb24vc2VydmljZXMvX190ZXN0c19fL2ludGVncmF0aW9uLXByb3ZpZGVyLnVuaXQuc3BlYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDJDQUFvRDtBQUNwRCxtRkFBZ0U7QUFFaEUsMkZBQTJGO0FBQzNGLE1BQU0sVUFBVSxHQUFHLENBQUMsVUFBa0IsRUFBRSxVQUF5QixFQUFFLFFBQVEsR0FBRyxLQUFLLEVBQUUsRUFBRTtJQUNyRixNQUFNLENBQUMsR0FBUTtRQUNiLGFBQWEsRUFBRSxHQUFHLEVBQUUsQ0FBQyxVQUFVO1FBQy9CLGFBQWEsRUFBRSxHQUFHLEVBQUUsQ0FBQyxVQUFVO1FBQy9CLElBQUksVUFBVTtZQUNaLE9BQU87Z0JBQ0wsUUFBUSxFQUFFLFNBQVM7Z0JBQ25CLFdBQVcsRUFBRSxHQUFHLFVBQVUsT0FBTztnQkFDakMsT0FBTyxFQUFFLEVBQUU7Z0JBQ1gsUUFBUSxFQUFFLEVBQUU7Z0JBQ1osR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBRSxjQUFjLEVBQUUsS0FBSyxJQUFJLEVBQUUsQ0FBQyxDQUFDLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO2FBQzVFLENBQUE7UUFDSCxDQUFDO0tBQ0YsQ0FBQTtJQUNELE9BQU8sQ0FBQyxDQUFBO0FBQ1YsQ0FBQyxDQUFBO0FBRUQsMEVBQTBFO0FBQzFFLE1BQU0sWUFBWSxHQUFHLEdBQUcsRUFBRSxDQUN4QixJQUFJLDhCQUEwQixDQUFDO0lBQzdCLFVBQVUsRUFBRSxVQUFVLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQztJQUN0QyxjQUFjLEVBQUUsVUFBVSxDQUFDLE1BQU0sRUFBRSxPQUFPLEVBQUUsSUFB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
|
|
@@ -13,14 +13,14 @@ export type ResolvedOptions = {
|
|
|
13
13
|
options: Record<string, unknown>;
|
|
14
14
|
meta: {
|
|
15
15
|
provider_id: string;
|
|
16
|
-
|
|
16
|
+
category: string | null;
|
|
17
17
|
is_enabled: boolean;
|
|
18
18
|
};
|
|
19
19
|
};
|
|
20
20
|
declare const IntegrationModuleService_base: import("@medusajs/framework/utils").MedusaServiceReturnType<import("@medusajs/framework/utils").ModelConfigurationsToConfigTemplate<{
|
|
21
21
|
readonly Integration: import("@medusajs/framework/utils").DmlEntity<import("@medusajs/framework/utils").DMLEntitySchemaBuilder<{
|
|
22
22
|
id: import("@medusajs/framework/utils").PrimaryKeyModifier<string, import("@medusajs/framework/utils").IdProperty>;
|
|
23
|
-
|
|
23
|
+
category: import("@medusajs/framework/utils").EnumProperty<{
|
|
24
24
|
readonly PAYMENT: "payment";
|
|
25
25
|
readonly FULFILLMENT: "fulfillment";
|
|
26
26
|
readonly MARKETPLACE: "marketplace";
|
|
@@ -66,7 +66,7 @@ export default class IntegrationModuleService extends IntegrationModuleService_b
|
|
|
66
66
|
*/
|
|
67
67
|
findByProviderId(providerId: string): Promise<{
|
|
68
68
|
id: string;
|
|
69
|
-
|
|
69
|
+
category: "payment" | "fulfillment" | "marketplace" | "crm" | "erp" | "pim" | "notification" | "feed" | "tax" | "other";
|
|
70
70
|
provider_id: string;
|
|
71
71
|
title: string | null;
|
|
72
72
|
options: Record<string, unknown>;
|
|
@@ -96,7 +96,7 @@ class IntegrationModuleService extends (0, utils_1.MedusaService)({
|
|
|
96
96
|
provider_id: r.key,
|
|
97
97
|
identifier: r.identifier,
|
|
98
98
|
instance_id: r.instanceId,
|
|
99
|
-
|
|
99
|
+
category: d.category,
|
|
100
100
|
display_name: d.displayName,
|
|
101
101
|
icon: d.icon,
|
|
102
102
|
supports_multiple_instances: d.supportsMultipleInstances ?? false,
|
|
@@ -203,7 +203,7 @@ class IntegrationModuleService extends (0, utils_1.MedusaService)({
|
|
|
203
203
|
options: parsed.success ? parsed.data : assembled,
|
|
204
204
|
meta: {
|
|
205
205
|
provider_id: record.provider_id,
|
|
206
|
-
|
|
206
|
+
category: record.category ?? null,
|
|
207
207
|
is_enabled: record.is_enabled,
|
|
208
208
|
},
|
|
209
209
|
};
|
|
@@ -214,4 +214,4 @@ class IntegrationModuleService extends (0, utils_1.MedusaService)({
|
|
|
214
214
|
}
|
|
215
215
|
}
|
|
216
216
|
exports.default = IntegrationModuleService;
|
|
217
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
217
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZWdyYXRpb24tbW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL21vZHVsZXMvaW50ZWdyYXRpb24vc2VydmljZXMvaW50ZWdyYXRpb24tbW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEscURBQXlEO0FBRXpELHdFQUErQztBQUMvQyxxQ0FBb0M7QUFDcEMsdUNBQXNFO0FBQ3RFLGtGQUErRDtBQUUvRCx5REFBb0c7QUFDcEcscURBQTZEO0FBQzdELG9DQUFpRjtBQWNqRixNQUFNLFlBQVksR0FBRyxNQUFNLENBQUE7QUFFM0IsTUFBcUIsd0JBQXlCLFNBQVEsSUFBQSxxQkFBYSxFQUFDO0lBQ2xFLFdBQVcsRUFBWCxxQkFBVztDQUNaLENBQUM7SUFNQSxZQUFZLElBQTBCO1FBQ3BDLEtBQUssQ0FBQyxHQUFHLFNBQVMsQ0FBQyxDQUFBO1FBSlgsV0FBTSxHQUFHLElBQUksR0FBRyxFQUFnRSxDQUFBO1FBS3hGLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsMEJBQTBCLENBQUE7UUFDdkQsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsK0JBQXVCLENBQUMsSUFBSSxFQUFFLENBQUE7SUFDckQsQ0FBQztJQUVELGdGQUFnRjtJQUNoRixnRUFBZ0U7SUFDaEUsaUJBQWlCO1FBQ2YsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUN6RCxJQUFBLGlDQUFvQixFQUFDLEVBQUUsR0FBRyxDQUFDLENBQUMsUUFBUSxDQUFDLFVBQVUsRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDLFVBQVUsRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQ3ZHLENBQUE7SUFDSCxDQUFDO0lBRUQsaUZBQWlGO0lBQ2pGLHFCQUFxQixDQUFDLFVBQWtCO1FBQ3RDLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxlQUFlLENBQUMsVUFBVSxDQUFDLENBQUE7UUFDM0QsSUFBSSxDQUFDLENBQUM7WUFBRSxPQUFPLFNBQVMsQ0FBQTtRQUN4QixPQUFPLEVBQUUsR0FBRyxDQUFDLENBQUMsUUFBUSxDQUFDLFVBQVUsRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDLFVBQVUsRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDLFVBQVUsRUFBRSxDQUFBO0lBQ3pGLENBQUM7SUFFRCwyREFBMkQ7SUFDM0QsdUJBQXVCLENBQUMsVUFBa0I7UUFDeEMsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGVBQWUsQ0FBQyxVQUFVLENBQUMsQ0FBQTtRQUMzRCxJQUFJLENBQUMsQ0FBQztZQUFFLE9BQU8sU0FBUyxDQUFBO1FBQ3hCLE9BQU8sSUFBQSxpQ0FBb0IsRUFBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsVUFBVSxFQUFFLENBQUMsQ0FBQyxVQUFVLEVBQUUsVUFBVSxFQUFFLENBQUMsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFBO0lBQy9HLENBQUM7SUFFRCxpRkFBaUY7SUFDakYsYUFBYSxDQUFDLFVBQWtCO1FBQzlCLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxlQUFlLENBQUMsVUFBVSxDQUFDLENBQUE7SUFDNUQsQ0FBQztJQUVEOzs7T0FHRztJQUNILEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxVQUFrQjtRQUN2QyxNQUFNLENBQUMsTUFBTSxDQUFDLEdBQUcsTUFBTSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQTtRQUN0RixPQUFPLE1BQU0sQ0FBQTtJQUNmLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsS0FBSyxDQUFDLGVBQWUsQ0FBQyxVQUFrQjtRQUN0QyxNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxVQUFVLENBQUMsQ0FBQTtRQUN0RCxPQUFPLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFBO0lBQ2xELENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsVUFBVSxDQUFDLE1BQVc7UUFDcEIsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQTtRQUNqRSxJQUFJLENBQUMsVUFBVTtZQUFFLE9BQU8sS0FBSyxDQUFBO1FBQzdCLE9BQU8sSUFBQSwrQkFBb0IsRUFBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFBO0lBQ3RFLENBQUM7SUFFRCx3RkFBd0Y7SUFDOUUsY0FBYyxDQUFDLE1BQVc7UUFDbEMsTUFBTSxPQUFPLEdBQUcsQ0FBRSxNQUFNLENBQUMsT0FBbUMsSUFBSSxFQUFFLENBQUMsQ0FBQTtRQUNuRSxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFBO1FBQ2pFLE1BQU0sVUFBVSxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsSUFBQSw2QkFBZ0IsRUFBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFBO1FBQ2pFLElBQUksVUFBVSxDQUFDLE1BQU0sS0FBSyxDQUFDO1lBQUUsT0FBTyxFQUFFLEdBQUcsT0FBTyxFQUFFLENBQUE7UUFDbEQsT0FBTyxJQUFBLDhCQUFvQixFQUFDLE9BQU8sRUFBRSxVQUFVLEVBQUUsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUE7SUFDakUsQ0FBQztJQUVEOzs7T0FHRztJQUNILEtBQUssQ0FBQyx3QkFBd0I7UUFDNUIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGlCQUFpQixFQUFFLENBQUE7UUFDdEQsTUFBTSxJQUFJLEdBQUcsTUFBTSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUE7UUFDNUQsTUFBTSxJQUFJLEdBQUcsSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQU0sRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUM5RCxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNwQixNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQTtZQUMvQixNQUFNLEdBQUcsR0FBUSxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQTtZQUNoQyxPQUFPO2dCQUNMLFdBQVcsRUFBRSxDQUFDLENBQUMsR0FBRztnQkFDbEIsVUFBVSxFQUFFLENBQUMsQ0FBQyxVQUFVO2dCQUN4QixXQUFXLEVBQUUsQ0FBQyxDQUFDLFVBQVU7Z0JBQ3pCLFFBQVEsRUFBRSxDQUFDLENBQUMsUUFBUTtnQkFDcEIsWUFBWSxFQUFFLENBQUMsQ0FBQyxXQUFXO2dCQUMzQixJQUFJLEVBQUUsQ0FBQyxDQUFDLElBQUk7Z0JBQ1osMkJBQTJCLEVBQUUsQ0FBQyxDQUFDLHlCQUF5QixJQUFJLEtBQUs7Z0JBQ2pFLG1CQUFtQixFQUFFLE9BQU8sQ0FBQyxDQUFDLGNBQWMsS0FBSyxVQUFVO2dCQUMzRCxhQUFhLEVBQUUsQ0FBQyxDQUFDLEdBQUc7Z0JBQ3BCLFVBQVUsRUFBRSxHQUFHLEVBQUUsVUFBVSxJQUFJLEtBQUs7Z0JBQ3BDLFdBQVcsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUs7Z0JBQy9DLGdCQUFnQixFQUFFLEdBQUcsRUFBRSxnQkFBZ0IsSUFBSSxJQUFJO2FBQ2hELENBQUE7UUFDSCxDQUFDLENBQUMsQ0FBQTtJQUNKLENBQUM7SUFFRDs7O09BR0c7SUFDSCxLQUFLLENBQUMsaUJBQWlCLENBQUMsVUFBa0I7UUFDeEMsSUFBSSxRQUFRLENBQUE7UUFDWixJQUFJLENBQUM7WUFDSCxRQUFRLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQTtRQUM1RCxDQUFDO1FBQUMsTUFBTSxDQUFDO1lBQ1AsT0FBTyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLGlDQUFpQyxVQUFVLEdBQUcsRUFBRSxDQUFBO1FBQ3RGLENBQUM7UUFDRCxNQUFNLGNBQWMsR0FBRyxRQUFRLENBQUMsVUFBVSxDQUFDLGNBQWMsQ0FBQTtRQUN6RCxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDcEIsT0FBTyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLENBQUE7UUFDN0QsQ0FBQztRQUNELE1BQU0sUUFBUSxHQUFHLE1BQU0sSUFBSSxDQUFDLGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxhQUFhLEVBQUUsRUFBRSxRQUFRLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FBQTtRQUNsRyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDZCxPQUFPLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsQ0FBQTtRQUN4RCxDQUFDO1FBQ0QsSUFBSSxDQUFDO1lBQ0gsT0FBTyxNQUFNLGNBQWMsQ0FBQyxFQUFFLE9BQU8sRUFBRSxRQUFRLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQTtRQUM1RCxDQUFDO1FBQUMsT0FBTyxDQUFNLEVBQUUsQ0FBQztZQUNoQixPQUFPLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLE9BQU8sSUFBSSxhQUFhLEVBQUUsQ0FBQTtRQUNuRSxDQUFDO0lBQ0gsQ0FBQztJQUVELGdGQUFnRjtJQUNoRiwyRUFBMkU7SUFDakUsVUFBVTtRQUNsQixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQTtRQUN2QyxJQUFJLEdBQUcsSUFBSSxHQUFHLENBQUMsTUFBTSxHQUFHLENBQUM7WUFBRSxPQUFPLEdBQUcsQ0FBQTtRQUNyQyxNQUFNLElBQUksS0FBSyxDQUNiLHVGQUF1RjtZQUNyRiwyRUFBMkUsQ0FDOUUsQ0FBQTtJQUNILENBQUM7SUFFRCxzRUFBc0U7SUFDNUQsTUFBTTtRQUNkLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLElBQUEsa0JBQVMsRUFBQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFBO0lBQ3JELENBQUM7SUFFRCw4RkFBOEY7SUFDOUYsYUFBYSxDQUFDLFVBQWtCO1FBQzlCLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxVQUFVLENBQUMsQ0FBQTtRQUN6RCxPQUFPLFVBQVUsQ0FBQyxDQUFDLENBQUMsSUFBQSw2QkFBZ0IsRUFBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFBO0lBQ3ZELENBQUM7SUFFRDs7O09BR0c7SUFDSCxpQkFBaUIsQ0FDZixVQUFpQyxFQUNqQyxNQUErQjtRQUUvQixNQUFNLFVBQVUsR0FBRyxJQUFBLDZCQUFnQixFQUFDLFVBQVUsQ0FBQyxDQUFBO1FBQy9DLElBQUksVUFBVSxDQUFDLE1BQU0sS0FBSyxDQUFDO1lBQUUsT0FBTyxFQUFFLEdBQUcsTUFBTSxFQUFFLENBQUE7UUFDakQsT0FBTyxJQUFBLDhCQUFvQixFQUFDLE1BQU0sRUFBRSxVQUFVLEVBQUUsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUE7SUFDaEUsQ0FBQztJQUVELGdGQUFnRjtJQUNoRixtRkFBbUY7SUFDbkYsaUJBQWlCLENBQUMsVUFBbUI7UUFDbkMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ2hCLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUE7WUFDbkIsT0FBTTtRQUNSLENBQUM7UUFDRCxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQTtJQUNoQyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsS0FBSyxDQUFDLGtCQUFrQixDQUN0QixVQUFrQixFQUNsQixVQUEwQjtRQUUxQixNQUFNLFVBQVUsR0FBRyw4QkFBMEIsQ0FBQyxHQUFHLENBQUMsVUFBVSxFQUFFLFVBQVUsQ0FBQyxDQUFBO1FBQ3pFLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFBO1FBQ3ZDLElBQUksR0FBRyxJQUFJLEdBQUcsQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRTtZQUFFLE9BQU8sR0FBRyxDQUFDLEtBQUssQ0FBQTtRQUV2RCwrRUFBK0U7UUFDL0Usa0ZBQWtGO1FBQ2xGLHlEQUF5RDtRQUN6RCxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO1lBQ3BDLE1BQU0sSUFBSSxLQUFLLENBQ2IsMkNBQTJDLFVBQVUsS0FBSztnQkFDeEQsK0VBQStFLENBQ2xGLENBQUE7UUFDSCxDQUFDO1FBRUQsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxDQUFDLENBQUE7UUFFdEQsSUFBSSxLQUFLLEdBQTJCLElBQUksQ0FBQTtRQUN4Qyx1RkFBdUY7UUFDdkYsdUZBQXVGO1FBQ3ZGLDZFQUE2RTtRQUM3RSxJQUFJLE1BQU0sSUFBSSxNQUFNLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDaEMsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixDQUFDLFVBQVUsQ0FBRSxDQUFBO1lBQzFELE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUE7WUFDN0MsSUFBSSxJQUFBLCtCQUFvQixFQUFDLFVBQVUsRUFBRSxTQUFTLENBQUMsRUFBRSxDQUFDO2dCQUNoRCxrRUFBa0U7Z0JBQ2xFLE1BQU0sTUFBTSxHQUFHLFVBQVUsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFBO2dCQUM1RCxLQUFLLEdBQUc7b0JBQ04sT0FBTyxFQUFFLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFFLE1BQU0sQ0FBQyxJQUFnQyxDQUFDLENBQUMsQ0FBQyxTQUFTO29CQUM5RSxJQUFJLEVBQUU7d0JBQ0osV0FBVyxFQUFFLE1BQU0sQ0FBQyxXQUFXO3dCQUMvQixRQUFRLEVBQUUsTUFBTSxDQUFDLFFBQVEsSUFBSSxJQUFJO3dCQUNqQyxVQUFVLEVBQUUsTUFBTSxDQUFDLFVBQVU7cUJBQzlCO2lCQUNGLENBQUE7WUFDSCxDQUFDO1FBQ0gsQ0FBQztRQUNELElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLFVBQVUsRUFBRSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsSUFBSSxDQUFDLEdBQUcsRUFBRSxHQUFHLFlBQVksRUFBRSxDQUFDLENBQUE7UUFDNUUsT0FBTyxLQUFLLENBQUE7SUFDZCxDQUFDO0NBQ0Y7QUFsT0QsMkNBa09DIn0=
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
/**
|
|
2
|
-
export declare const
|
|
1
|
+
/** Integration category — which Medusa module a provider configures. */
|
|
2
|
+
export declare const IntegrationCategory: {
|
|
3
3
|
readonly PAYMENT: "payment";
|
|
4
4
|
readonly FULFILLMENT: "fulfillment";
|
|
5
5
|
readonly MARKETPLACE: "marketplace";
|
|
@@ -11,7 +11,7 @@ export declare const IntegrationModule: {
|
|
|
11
11
|
readonly TAX: "tax";
|
|
12
12
|
readonly OTHER: "other";
|
|
13
13
|
};
|
|
14
|
-
export type
|
|
14
|
+
export type CategoryKind = (typeof IntegrationCategory)[keyof typeof IntegrationCategory];
|
|
15
15
|
/** Outcome of a provider's connection test. */
|
|
16
16
|
export declare const IntegrationTestStatus: {
|
|
17
17
|
readonly PASSED: "passed";
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.IntegrationTestStatus = exports.
|
|
4
|
-
/**
|
|
5
|
-
exports.
|
|
3
|
+
exports.IntegrationTestStatus = exports.IntegrationCategory = void 0;
|
|
4
|
+
/** Integration category — which Medusa module a provider configures. */
|
|
5
|
+
exports.IntegrationCategory = {
|
|
6
6
|
PAYMENT: "payment",
|
|
7
7
|
FULFILLMENT: "fulfillment",
|
|
8
8
|
MARKETPLACE: "marketplace",
|
|
@@ -20,4 +20,4 @@ exports.IntegrationTestStatus = {
|
|
|
20
20
|
FAILED: "failed",
|
|
21
21
|
SKIPPED: "skipped",
|
|
22
22
|
};
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZWdyYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbW9kdWxlcy9pbnRlZ3JhdGlvbi91dGlscy9pbnRlZ3JhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSx3RUFBd0U7QUFDM0QsUUFBQSxtQkFBbUIsR0FBRztJQUNqQyxPQUFPLEVBQUUsU0FBUztJQUNsQixXQUFXLEVBQUUsYUFBYTtJQUMxQixXQUFXLEVBQUUsYUFBYTtJQUMxQixHQUFHLEVBQUUsS0FBSztJQUNWLEdBQUcsRUFBRSxLQUFLO0lBQ1YsR0FBRyxFQUFFLEtBQUs7SUFDVixZQUFZLEVBQUUsY0FBYztJQUM1QixJQUFJLEVBQUUsTUFBTTtJQUNaLEdBQUcsRUFBRSxLQUFLO0lBQ1YsS0FBSyxFQUFFLE9BQU87Q0FDTixDQUFBO0FBR1YsK0NBQStDO0FBQ2xDLFFBQUEscUJBQXFCLEdBQUc7SUFDbkMsTUFBTSxFQUFFLFFBQVE7SUFDaEIsTUFBTSxFQUFFLFFBQVE7SUFDaEIsT0FBTyxFQUFFLFNBQVM7Q0FDVixDQUFBIn0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
const globals_1 = require("@jest/globals");
|
|
37
|
+
const invalidate_options_cache_1 = __importStar(require("../invalidate-options-cache"));
|
|
38
|
+
const integration_1 = require("../../modules/integration");
|
|
39
|
+
(0, globals_1.describe)("invalidate-options-cache subscriber", () => {
|
|
40
|
+
(0, globals_1.it)("clears the resolved-options cache for the event's provider_id", async () => {
|
|
41
|
+
const clearOptionsCache = globals_1.jest.fn();
|
|
42
|
+
const container = {
|
|
43
|
+
resolve: (key) => (key === integration_1.INTEGRATION_MODULE ? { clearOptionsCache } : undefined),
|
|
44
|
+
};
|
|
45
|
+
await (0, invalidate_options_cache_1.default)({ event: { data: { provider_id: "int_demo" } }, container });
|
|
46
|
+
(0, globals_1.expect)(clearOptionsCache).toHaveBeenCalledTimes(1);
|
|
47
|
+
(0, globals_1.expect)(clearOptionsCache).toHaveBeenCalledWith("int_demo");
|
|
48
|
+
});
|
|
49
|
+
(0, globals_1.it)("subscribes to integration.updated", () => {
|
|
50
|
+
(0, globals_1.expect)(invalidate_options_cache_1.config.event).toBe("integration.updated");
|
|
51
|
+
});
|
|
52
|
+
});
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW52YWxpZGF0ZS1vcHRpb25zLWNhY2hlLnVuaXQuc3BlYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9zdWJzY3JpYmVycy9fX3Rlc3RzX18vaW52YWxpZGF0ZS1vcHRpb25zLWNhY2hlLnVuaXQuc3BlYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDJDQUEwRDtBQUMxRCx3RkFBNEU7QUFDNUUsMkRBQThEO0FBRTlELElBQUEsa0JBQVEsRUFBQyxxQ0FBcUMsRUFBRSxHQUFHLEVBQUU7SUFDbkQsSUFBQSxZQUFFLEVBQUMsK0RBQStELEVBQUUsS0FBSyxJQUFJLEVBQUU7UUFDN0UsTUFBTSxpQkFBaUIsR0FBRyxjQUFJLENBQUMsRUFBRSxFQUFFLENBQUE7UUFDbkMsTUFBTSxTQUFTLEdBQVE7WUFDckIsT0FBTyxFQUFFLENBQUMsR0FBVyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsS0FBSyxnQ0FBa0IsQ0FBQyxDQUFDLENBQUMsRUFBRSxpQkFBaUIsRUFBRSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7U0FDM0YsQ0FBQTtRQUNELE1BQU0sSUFBQSxrQ0FBc0IsRUFBQyxFQUFFLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUUsRUFBRSxFQUFFLFNBQVMsRUFBUyxDQUFDLENBQUE7UUFDaEcsSUFBQSxnQkFBTSxFQUFDLGlCQUFpQixDQUFDLENBQUMscUJBQXFCLENBQUMsQ0FBQyxDQUFDLENBQUE7UUFDbEQsSUFBQSxnQkFBTSxFQUFDLGlCQUFpQixDQUFDLENBQUMsb0JBQW9CLENBQUMsVUFBVSxDQUFDLENBQUE7SUFDNUQsQ0FBQyxDQUFDLENBQUE7SUFFRixJQUFBLFlBQUUsRUFBQyxtQ0FBbUMsRUFBRSxHQUFHLEVBQUU7UUFDM0MsSUFBQSxnQkFBTSxFQUFDLGlDQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLENBQUE7SUFDbEQsQ0FBQyxDQUFDLENBQUE7QUFDSixDQUFDLENBQUMsQ0FBQSJ9
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import type { I18nKey,
|
|
1
|
+
import type { I18nKey, CategoryKind, TestStatus } from "../../../integration";
|
|
2
2
|
/** One declared integration instance (registration) merged with its current row state. */
|
|
3
3
|
export interface IntegrationOverviewItem {
|
|
4
4
|
provider_id: string;
|
|
5
5
|
identifier: string;
|
|
6
6
|
instance_id: string | null;
|
|
7
|
-
|
|
7
|
+
category: CategoryKind;
|
|
8
8
|
display_name: I18nKey;
|
|
9
9
|
/** Descriptor icon — any `<img src>` string (data URI / URL / `/static` path). */
|
|
10
10
|
icon?: string;
|
|
@@ -20,10 +20,11 @@ export interface IntegrationOverviewItem {
|
|
|
20
20
|
export interface MaskedIntegration {
|
|
21
21
|
id: string;
|
|
22
22
|
provider_id: string;
|
|
23
|
-
|
|
23
|
+
category: CategoryKind;
|
|
24
24
|
title: string | null;
|
|
25
25
|
is_enabled: boolean;
|
|
26
|
-
|
|
26
|
+
/** Secret option keys that currently have a stored value (per field; the value is never sent). */
|
|
27
|
+
configured_secrets: string[];
|
|
27
28
|
last_test_status: TestStatus | null;
|
|
28
29
|
values: Record<string, unknown>;
|
|
29
30
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { I18nKey, FieldControl } from "../../modules/integration/descriptor/meta";
|
|
2
2
|
export type { I18nKey };
|
|
3
|
-
import type {
|
|
4
|
-
export type {
|
|
3
|
+
import type { CategoryKind, TestStatus } from "../../modules/integration/utils/integration";
|
|
4
|
+
export type { CategoryKind, TestStatus };
|
|
5
5
|
export type IntegrationLayouts = "core:single-column" | "core:two-column";
|
|
6
6
|
export interface TestConnectionContext {
|
|
7
7
|
options: Record<string, unknown>;
|
|
@@ -53,7 +53,7 @@ export interface IntegrationSectionData {
|
|
|
53
53
|
isComplete: boolean;
|
|
54
54
|
}
|
|
55
55
|
export interface UiDescriptor {
|
|
56
|
-
|
|
56
|
+
category: string;
|
|
57
57
|
identifier: string;
|
|
58
58
|
instanceId: string | null;
|
|
59
59
|
displayName: I18nKey;
|
|
@@ -16,6 +16,6 @@ export type ApplyIntegrationSectionStepInput = {
|
|
|
16
16
|
* draft. Full validation happens lazily at resolve (IntegrationModuleService.getResolvedOptions).
|
|
17
17
|
*/
|
|
18
18
|
export declare const applyIntegrationSectionStep: import("@medusajs/framework/workflows-sdk").StepFunction<ApplyIntegrationSectionStepInput, {
|
|
19
|
-
|
|
19
|
+
category: import("../../..").CategoryKind;
|
|
20
20
|
options: Record<string, unknown>;
|
|
21
21
|
}>;
|