@tailor-platform/create-sdk 2.0.0-next.0 → 2.0.0-next.10
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/CHANGELOG.md +181 -0
- package/dist/index.js +1 -1
- package/package.json +10 -9
- package/templates/executor/.oxlintrc.json +9 -1
- package/templates/executor/__dot__gitignore +1 -1
- package/templates/executor/package.json +11 -9
- package/templates/executor/src/db/auditLog.ts +1 -1
- package/templates/executor/src/db/notification.ts +1 -1
- package/templates/executor/src/db/user.ts +1 -1
- package/templates/executor/src/generated/db.ts +3 -3
- package/templates/executor/tailor.d.ts +4 -2
- package/templates/generators/.oxlintrc.json +9 -1
- package/templates/generators/README.md +1 -1
- package/templates/generators/__dot__gitignore +1 -1
- package/templates/generators/package.json +14 -9
- package/templates/generators/src/db/category.ts +1 -1
- package/templates/generators/src/db/order.ts +1 -1
- package/templates/generators/src/db/product.ts +1 -1
- package/templates/generators/src/db/user.ts +1 -1
- package/templates/generators/src/generated/db.ts +3 -3
- package/templates/generators/src/generated/files.ts +5 -5
- package/templates/generators/src/resolver/getProduct.test.ts +31 -27
- package/templates/generators/src/seed/data/Order.schema.ts +2 -2
- package/templates/generators/src/seed/data/Product.schema.ts +2 -2
- package/templates/generators/src/seed/data/User.schema.ts +2 -2
- package/templates/generators/tailor.d.ts +4 -2
- package/templates/hello-world/.oxlintrc.json +9 -1
- package/templates/hello-world/README.md +6 -6
- package/templates/hello-world/__dot__gitignore +1 -1
- package/templates/hello-world/package.json +10 -8
- package/templates/hello-world/src/db/user.ts +1 -1
- package/templates/hello-world/src/generated/kysely-tailordb.ts +1 -1
- package/templates/hello-world/tailor.d.ts +4 -2
- package/templates/inventory-management/.oxlintrc.json +9 -1
- package/templates/inventory-management/README.md +8 -8
- package/templates/inventory-management/__dot__gitignore +1 -1
- package/templates/inventory-management/package.json +10 -8
- package/templates/inventory-management/src/db/category.ts +1 -1
- package/templates/inventory-management/src/db/contact.ts +1 -1
- package/templates/inventory-management/src/db/inventory.ts +2 -2
- package/templates/inventory-management/src/db/notification.ts +1 -1
- package/templates/inventory-management/src/db/order.ts +1 -1
- package/templates/inventory-management/src/db/orderItem.ts +12 -8
- package/templates/inventory-management/src/db/product.ts +1 -1
- package/templates/inventory-management/src/db/user.ts +1 -1
- package/templates/inventory-management/src/executor/checkInventory.ts +0 -2
- package/templates/inventory-management/src/generated/kysely-tailordb.ts +9 -9
- package/templates/inventory-management/src/resolver/registerOrder.ts +4 -2
- package/templates/inventory-management/tailor.d.ts +4 -2
- package/templates/multi-application/.oxlintrc.json +9 -1
- package/templates/multi-application/README.md +2 -2
- package/templates/multi-application/__dot__gitignore +1 -1
- package/templates/multi-application/apps/admin/db/adminNote.ts +2 -2
- package/templates/multi-application/apps/admin/tailor.config.ts +1 -1
- package/templates/multi-application/apps/user/db/user.ts +1 -1
- package/templates/multi-application/apps/user/tailor.config.ts +1 -1
- package/templates/multi-application/package.json +10 -8
- package/templates/resolver/.oxlintrc.json +9 -1
- package/templates/resolver/README.md +2 -2
- package/templates/resolver/__dot__gitignore +1 -1
- package/templates/resolver/package.json +11 -9
- package/templates/resolver/src/db/user.ts +1 -1
- package/templates/resolver/src/generated/db.ts +1 -1
- package/templates/resolver/src/resolver/add.test.ts +4 -3
- package/templates/resolver/src/resolver/incrementUserAge.test.ts +6 -5
- package/templates/resolver/src/resolver/showEnv.test.ts +2 -2
- package/templates/resolver/src/resolver/showUserInfo.test.ts +12 -9
- package/templates/resolver/src/resolver/showUserInfo.ts +3 -3
- package/templates/resolver/src/resolver/upsertUsers.test.ts +2 -2
- package/templates/resolver/tailor.d.ts +4 -2
- package/templates/static-web-site/.oxlintrc.json +9 -1
- package/templates/static-web-site/__dot__gitignore +1 -1
- package/templates/static-web-site/package.json +10 -8
- package/templates/static-web-site/src/db/user.ts +1 -1
- package/templates/static-web-site/tailor.d.ts +4 -2
- package/templates/tailordb/.oxlintrc.json +9 -1
- package/templates/tailordb/README.md +1 -1
- package/templates/tailordb/__dot__gitignore +1 -1
- package/templates/tailordb/package.json +11 -9
- package/templates/tailordb/src/db/category.ts +1 -1
- package/templates/tailordb/src/db/comment.ts +4 -2
- package/templates/tailordb/src/db/task.ts +19 -27
- package/templates/tailordb/src/db/user.ts +1 -1
- package/templates/tailordb/src/generated/db.ts +3 -3
- package/templates/tailordb/tailor.d.ts +4 -2
- package/templates/workflow/.oxlintrc.json +9 -1
- package/templates/workflow/README.md +3 -3
- package/templates/workflow/__dot__gitignore +1 -1
- package/templates/workflow/e2e/globalSetup.ts +1 -1
- package/templates/workflow/e2e/workflow.test.ts +1 -2
- package/templates/workflow/package.json +12 -10
- package/templates/workflow/src/db/order.ts +1 -1
- package/templates/workflow/src/db/user.ts +1 -1
- package/templates/workflow/src/generated/db.ts +2 -2
- package/templates/workflow/src/resolver/resolveApproval.test.ts +18 -13
- package/templates/workflow/src/workflow/approval.test.ts +16 -11
- package/templates/workflow/src/workflow/approval.ts +2 -2
- package/templates/workflow/src/workflow/order-fulfillment.test.ts +34 -21
- package/templates/workflow/src/workflow/order-fulfillment.ts +4 -4
- package/templates/workflow/tailor.d.ts +4 -2
- package/templates/workflow/vitest.config.ts +1 -0
- package/templates/generators/src/seed/exec.mjs +0 -485
|
@@ -55,7 +55,7 @@ export async function setup(project: TestProject): Promise<void> {
|
|
|
55
55
|
process.env.TAILOR_PLATFORM_WORKSPACE_ID = createdWorkspace.id;
|
|
56
56
|
// This pipeline deploys a fresh app into a per-run workspace, so let the
|
|
57
57
|
// SDK inject a missing app id even in CI (normally a hard error there).
|
|
58
|
-
process.env.
|
|
58
|
+
process.env.TAILOR_CI_ALLOW_ID_INJECTION = "true";
|
|
59
59
|
await deployApplication();
|
|
60
60
|
}
|
|
61
61
|
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { randomUUID } from "node:crypto";
|
|
2
2
|
import { describe, expect, test } from "vitest";
|
|
3
3
|
import { startWorkflow } from "@tailor-platform/sdk/cli";
|
|
4
|
-
import config from "../tailor.config";
|
|
5
4
|
import userProfileSyncWorkflow from "../src/workflow/sync-profile";
|
|
6
5
|
|
|
7
6
|
describe("workflow", () => {
|
|
@@ -11,7 +10,7 @@ describe("workflow", () => {
|
|
|
11
10
|
|
|
12
11
|
const { executionId, wait } = await startWorkflow({
|
|
13
12
|
workflow: userProfileSyncWorkflow,
|
|
14
|
-
|
|
13
|
+
invoker: "admin",
|
|
15
14
|
arg: {
|
|
16
15
|
name: "workflow-test-user",
|
|
17
16
|
email: testEmail,
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "workflow",
|
|
3
|
+
"version": "0.0.0",
|
|
3
4
|
"private": true,
|
|
4
5
|
"type": "module",
|
|
5
6
|
"scripts": {
|
|
6
|
-
"generate": "tailor
|
|
7
|
-
"deploy": "tailor
|
|
7
|
+
"generate": "tailor generate",
|
|
8
|
+
"deploy": "tailor deploy",
|
|
8
9
|
"test": "vitest --project unit",
|
|
9
10
|
"test:unit": "vitest --project unit",
|
|
10
11
|
"test:e2e": "vitest --project e2e",
|
|
@@ -15,14 +16,15 @@
|
|
|
15
16
|
"typecheck": "tsc --noEmit"
|
|
16
17
|
},
|
|
17
18
|
"devDependencies": {
|
|
18
|
-
"@tailor-platform/sdk": "2.0
|
|
19
|
-
"@
|
|
20
|
-
"
|
|
19
|
+
"@tailor-platform/eslint-plugin-sdk": "0.2.0-next.0",
|
|
20
|
+
"@tailor-platform/sdk": "2.0.0-next.10",
|
|
21
|
+
"@types/node": "24.13.3",
|
|
22
|
+
"graphql": "17.0.2",
|
|
21
23
|
"graphql-request": "7.4.0",
|
|
22
|
-
"oxfmt": "0.
|
|
23
|
-
"oxlint": "1.
|
|
24
|
-
"oxlint-tsgolint": "0.
|
|
25
|
-
"typescript": "
|
|
26
|
-
"vitest": "4.1.
|
|
24
|
+
"oxfmt": "0.59.0",
|
|
25
|
+
"oxlint": "1.74.0",
|
|
26
|
+
"oxlint-tsgolint": "0.25.0",
|
|
27
|
+
"typescript": "6.0.3",
|
|
28
|
+
"vitest": "4.1.10"
|
|
27
29
|
}
|
|
28
30
|
}
|
|
@@ -19,7 +19,7 @@ export interface Namespace {
|
|
|
19
19
|
amount: number;
|
|
20
20
|
status: "PENDING" | "PROCESSING" | "COMPLETED" | "FAILED";
|
|
21
21
|
createdAt: Generated<Timestamp>;
|
|
22
|
-
updatedAt: Timestamp
|
|
22
|
+
updatedAt: Generated<Timestamp>;
|
|
23
23
|
}
|
|
24
24
|
|
|
25
25
|
User: {
|
|
@@ -28,7 +28,7 @@ export interface Namespace {
|
|
|
28
28
|
email: string;
|
|
29
29
|
age: number;
|
|
30
30
|
createdAt: Generated<Timestamp>;
|
|
31
|
-
updatedAt: Timestamp
|
|
31
|
+
updatedAt: Generated<Timestamp>;
|
|
32
32
|
}
|
|
33
33
|
}
|
|
34
34
|
}
|
|
@@ -1,42 +1,47 @@
|
|
|
1
1
|
import { describe, expect, test } from "vitest";
|
|
2
2
|
import { mockWorkflow } from "@tailor-platform/sdk/vitest";
|
|
3
|
-
import {
|
|
3
|
+
import { approval } from "../workflow/approval";
|
|
4
4
|
import resolver from "./resolveApproval";
|
|
5
5
|
|
|
6
6
|
describe("resolveApproval resolver", () => {
|
|
7
7
|
test("resolves approval with approved=true", async () => {
|
|
8
8
|
using wf = mockWorkflow();
|
|
9
|
-
wf.
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
9
|
+
const approvalMock = wf.waitPoint(approval);
|
|
10
|
+
const payload = {
|
|
11
|
+
message: "Please approve order order-1",
|
|
12
|
+
orderId: "order-1",
|
|
13
|
+
};
|
|
14
|
+
approvalMock.resolve.mockImplementation(async (_executionId, callback) => {
|
|
15
|
+
expect(await callback(payload)).toEqual({ approved: true });
|
|
15
16
|
});
|
|
16
17
|
|
|
17
18
|
const result = await resolver.body({
|
|
18
19
|
input: { executionId: "exec-1", approved: true },
|
|
19
|
-
|
|
20
|
+
caller: null,
|
|
21
|
+
invoker: null,
|
|
20
22
|
env: {},
|
|
21
23
|
});
|
|
22
24
|
|
|
23
25
|
expect(result).toEqual({ resolved: true });
|
|
24
|
-
expect(
|
|
26
|
+
expect(approvalMock.resolve).toHaveBeenCalledWith("exec-1", expect.any(Function));
|
|
25
27
|
});
|
|
26
28
|
|
|
27
29
|
test("resolves approval with approved=false", async () => {
|
|
28
30
|
using wf = mockWorkflow();
|
|
29
|
-
wf.
|
|
30
|
-
|
|
31
|
-
|
|
31
|
+
const approvalMock = wf.waitPoint(approval);
|
|
32
|
+
const payload = { message: "Please approve", orderId: "order-2" };
|
|
33
|
+
approvalMock.resolve.mockImplementation(async (_executionId, callback) => {
|
|
34
|
+
expect(await callback(payload)).toEqual({ approved: false });
|
|
32
35
|
});
|
|
33
36
|
|
|
34
37
|
const result = await resolver.body({
|
|
35
38
|
input: { executionId: "exec-2", approved: false },
|
|
36
|
-
|
|
39
|
+
caller: null,
|
|
40
|
+
invoker: null,
|
|
37
41
|
env: {},
|
|
38
42
|
});
|
|
39
43
|
|
|
40
44
|
expect(result).toEqual({ resolved: true });
|
|
45
|
+
expect(approvalMock.resolve).toHaveBeenCalledWith("exec-2", expect.any(Function));
|
|
41
46
|
});
|
|
42
47
|
});
|
|
@@ -1,28 +1,33 @@
|
|
|
1
1
|
import { describe, expect, test } from "vitest";
|
|
2
2
|
import { mockWorkflow } from "@tailor-platform/sdk/vitest";
|
|
3
|
-
import workflow, { processWithApproval } from "./approval";
|
|
3
|
+
import workflow, { approval, processWithApproval } from "./approval";
|
|
4
4
|
|
|
5
5
|
describe("approval workflow", () => {
|
|
6
6
|
test("approved flow returns approved status", async () => {
|
|
7
7
|
using wf = mockWorkflow();
|
|
8
|
-
|
|
8
|
+
const approvalMock = wf.waitPoint(approval);
|
|
9
|
+
approvalMock.wait.mockResolvedValue({ approved: true });
|
|
9
10
|
|
|
10
|
-
const result = await processWithApproval.body(
|
|
11
|
+
const result = await processWithApproval.body(
|
|
12
|
+
{ orderId: "order-1" },
|
|
13
|
+
{ env: {}, invoker: null },
|
|
14
|
+
);
|
|
11
15
|
|
|
12
16
|
expect(result).toEqual({ orderId: "order-1", status: "approved" });
|
|
13
|
-
expect(
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
},
|
|
18
|
-
]);
|
|
17
|
+
expect(approvalMock.wait).toHaveBeenCalledWith({
|
|
18
|
+
message: "Please approve order order-1",
|
|
19
|
+
orderId: "order-1",
|
|
20
|
+
});
|
|
19
21
|
});
|
|
20
22
|
|
|
21
23
|
test("rejected flow returns rejected status", async () => {
|
|
22
24
|
using wf = mockWorkflow();
|
|
23
|
-
wf.
|
|
25
|
+
wf.waitPoint(approval).wait.mockResolvedValue({ approved: false });
|
|
24
26
|
|
|
25
|
-
const result = await processWithApproval.body(
|
|
27
|
+
const result = await processWithApproval.body(
|
|
28
|
+
{ orderId: "order-2" },
|
|
29
|
+
{ env: {}, invoker: null },
|
|
30
|
+
);
|
|
26
31
|
|
|
27
32
|
expect(result).toEqual({ orderId: "order-2", status: "rejected" });
|
|
28
33
|
});
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { createWorkflow, createWorkflowJob
|
|
1
|
+
import { createWaitPoints, createWorkflow, createWorkflowJob } from "@tailor-platform/sdk";
|
|
2
2
|
|
|
3
|
-
export const { approval } =
|
|
3
|
+
export const { approval } = createWaitPoints((define) => ({
|
|
4
4
|
/** Approval for order processing */
|
|
5
5
|
approval: define<{ message: string; orderId: string }, { approved: boolean }>(),
|
|
6
6
|
}));
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { runWorkflowLocally } from "@tailor-platform/sdk/vitest";
|
|
1
2
|
import { describe, expect, test, vi } from "vitest";
|
|
2
3
|
import workflow, {
|
|
3
4
|
fulfillOrder,
|
|
@@ -9,18 +10,24 @@ import workflow, {
|
|
|
9
10
|
describe("order fulfillment workflow", () => {
|
|
10
11
|
describe("individual job tests with .body()", () => {
|
|
11
12
|
test("validateOrder accepts valid order", () => {
|
|
12
|
-
const result = validateOrder.body(
|
|
13
|
+
const result = validateOrder.body(
|
|
14
|
+
{ orderId: "order-1", amount: 100 },
|
|
15
|
+
{ env: {}, invoker: null },
|
|
16
|
+
);
|
|
13
17
|
expect(result).toEqual({ valid: true, orderId: "order-1" });
|
|
14
18
|
});
|
|
15
19
|
|
|
16
20
|
test("validateOrder rejects zero amount", () => {
|
|
17
|
-
expect(() =>
|
|
18
|
-
"
|
|
19
|
-
);
|
|
21
|
+
expect(() =>
|
|
22
|
+
validateOrder.body({ orderId: "order-1", amount: 0 }, { env: {}, invoker: null }),
|
|
23
|
+
).toThrow("Order amount must be positive");
|
|
20
24
|
});
|
|
21
25
|
|
|
22
26
|
test("processPayment returns transaction", () => {
|
|
23
|
-
const result = processPayment.body(
|
|
27
|
+
const result = processPayment.body(
|
|
28
|
+
{ orderId: "order-1", amount: 100 },
|
|
29
|
+
{ env: {}, invoker: null },
|
|
30
|
+
);
|
|
24
31
|
expect(result).toEqual({
|
|
25
32
|
transactionId: "txn-order-1",
|
|
26
33
|
amount: 100,
|
|
@@ -31,7 +38,7 @@ describe("order fulfillment workflow", () => {
|
|
|
31
38
|
test("sendConfirmation returns confirmation", () => {
|
|
32
39
|
const result = sendConfirmation.body(
|
|
33
40
|
{ orderId: "order-1", transactionId: "txn-1" },
|
|
34
|
-
{ env: {} },
|
|
41
|
+
{ env: {}, invoker: null },
|
|
35
42
|
);
|
|
36
43
|
expect(result).toEqual({
|
|
37
44
|
orderId: "order-1",
|
|
@@ -41,34 +48,37 @@ describe("order fulfillment workflow", () => {
|
|
|
41
48
|
});
|
|
42
49
|
});
|
|
43
50
|
|
|
44
|
-
describe("orchestration tests with mocked
|
|
51
|
+
describe("orchestration tests with mocked starts", () => {
|
|
45
52
|
test("fulfillOrder chains all jobs", async () => {
|
|
46
|
-
using _validateSpy = vi.spyOn(validateOrder, "
|
|
53
|
+
using _validateSpy = vi.spyOn(validateOrder, "start").mockReturnValue({
|
|
47
54
|
valid: true,
|
|
48
55
|
orderId: "order-1",
|
|
49
56
|
});
|
|
50
|
-
using _paymentSpy = vi.spyOn(processPayment, "
|
|
57
|
+
using _paymentSpy = vi.spyOn(processPayment, "start").mockReturnValue({
|
|
51
58
|
transactionId: "txn-order-1",
|
|
52
59
|
amount: 100,
|
|
53
60
|
status: "completed" as const,
|
|
54
61
|
});
|
|
55
|
-
using _confirmSpy = vi.spyOn(sendConfirmation, "
|
|
62
|
+
using _confirmSpy = vi.spyOn(sendConfirmation, "start").mockReturnValue({
|
|
56
63
|
orderId: "order-1",
|
|
57
64
|
transactionId: "txn-order-1",
|
|
58
65
|
confirmed: true,
|
|
59
66
|
});
|
|
60
67
|
|
|
61
|
-
const result = await fulfillOrder.body(
|
|
68
|
+
const result = await fulfillOrder.body(
|
|
69
|
+
{ orderId: "order-1", amount: 100 },
|
|
70
|
+
{ env: {}, invoker: null },
|
|
71
|
+
);
|
|
62
72
|
|
|
63
|
-
expect(validateOrder.
|
|
73
|
+
expect(validateOrder.start).toHaveBeenCalledWith({
|
|
64
74
|
orderId: "order-1",
|
|
65
75
|
amount: 100,
|
|
66
76
|
});
|
|
67
|
-
expect(processPayment.
|
|
77
|
+
expect(processPayment.start).toHaveBeenCalledWith({
|
|
68
78
|
orderId: "order-1",
|
|
69
79
|
amount: 100,
|
|
70
80
|
});
|
|
71
|
-
expect(sendConfirmation.
|
|
81
|
+
expect(sendConfirmation.start).toHaveBeenCalledWith({
|
|
72
82
|
orderId: "order-1",
|
|
73
83
|
transactionId: "txn-order-1",
|
|
74
84
|
});
|
|
@@ -81,22 +91,25 @@ describe("order fulfillment workflow", () => {
|
|
|
81
91
|
});
|
|
82
92
|
|
|
83
93
|
test("workflow.mainJob.body() chains all jobs", async () => {
|
|
84
|
-
using _validateSpy = vi.spyOn(validateOrder, "
|
|
94
|
+
using _validateSpy = vi.spyOn(validateOrder, "start").mockReturnValue({
|
|
85
95
|
valid: true,
|
|
86
96
|
orderId: "order-2",
|
|
87
97
|
});
|
|
88
|
-
using _paymentSpy = vi.spyOn(processPayment, "
|
|
98
|
+
using _paymentSpy = vi.spyOn(processPayment, "start").mockReturnValue({
|
|
89
99
|
transactionId: "txn-order-2",
|
|
90
100
|
amount: 200,
|
|
91
101
|
status: "completed" as const,
|
|
92
102
|
});
|
|
93
|
-
using _confirmSpy = vi.spyOn(sendConfirmation, "
|
|
103
|
+
using _confirmSpy = vi.spyOn(sendConfirmation, "start").mockReturnValue({
|
|
94
104
|
orderId: "order-2",
|
|
95
105
|
transactionId: "txn-order-2",
|
|
96
106
|
confirmed: true,
|
|
97
107
|
});
|
|
98
108
|
|
|
99
|
-
const result = await workflow.mainJob.body(
|
|
109
|
+
const result = await workflow.mainJob.body(
|
|
110
|
+
{ orderId: "order-2", amount: 200 },
|
|
111
|
+
{ env: {}, invoker: null },
|
|
112
|
+
);
|
|
100
113
|
|
|
101
114
|
expect(result).toEqual({
|
|
102
115
|
orderId: "order-2",
|
|
@@ -107,9 +120,9 @@ describe("order fulfillment workflow", () => {
|
|
|
107
120
|
});
|
|
108
121
|
});
|
|
109
122
|
|
|
110
|
-
describe("integration tests with
|
|
111
|
-
test("
|
|
112
|
-
const result = await workflow
|
|
123
|
+
describe("integration tests with runWorkflowLocally()", () => {
|
|
124
|
+
test("runWorkflowLocally() executes all jobs", async () => {
|
|
125
|
+
const result = await runWorkflowLocally(workflow, {
|
|
113
126
|
orderId: "order-3",
|
|
114
127
|
amount: 300,
|
|
115
128
|
});
|
|
@@ -34,8 +34,8 @@ export const sendConfirmation = createWorkflowJob({
|
|
|
34
34
|
|
|
35
35
|
export const fulfillOrder = createWorkflowJob({
|
|
36
36
|
name: "fulfill-order",
|
|
37
|
-
body:
|
|
38
|
-
const validation =
|
|
37
|
+
body: (input: { orderId: string; amount: number }) => {
|
|
38
|
+
const validation = validateOrder.start({
|
|
39
39
|
orderId: input.orderId,
|
|
40
40
|
amount: input.amount,
|
|
41
41
|
});
|
|
@@ -44,12 +44,12 @@ export const fulfillOrder = createWorkflowJob({
|
|
|
44
44
|
throw new Error("Order validation failed");
|
|
45
45
|
}
|
|
46
46
|
|
|
47
|
-
const payment =
|
|
47
|
+
const payment = processPayment.start({
|
|
48
48
|
orderId: input.orderId,
|
|
49
49
|
amount: input.amount,
|
|
50
50
|
});
|
|
51
51
|
|
|
52
|
-
const confirmation =
|
|
52
|
+
const confirmation = sendConfirmation.start({
|
|
53
53
|
orderId: input.orderId,
|
|
54
54
|
transactionId: payment.transactionId,
|
|
55
55
|
});
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
// This file is auto-generated by @tailor-platform/sdk
|
|
2
2
|
// Do not edit this file manually
|
|
3
|
-
// Regenerated automatically when running 'tailor
|
|
3
|
+
// Regenerated automatically when running 'tailor deploy' or 'tailor generate'
|
|
4
4
|
|
|
5
5
|
declare module "@tailor-platform/sdk" {
|
|
6
|
-
interface
|
|
6
|
+
interface Attributes {
|
|
7
7
|
role: string;
|
|
8
8
|
}
|
|
9
9
|
interface AttributeList {
|
|
@@ -14,6 +14,8 @@ declare module "@tailor-platform/sdk" {
|
|
|
14
14
|
admin: true;
|
|
15
15
|
}
|
|
16
16
|
interface IdpNameRegistry {}
|
|
17
|
+
interface ConnectionNameRegistry {}
|
|
18
|
+
interface AIGatewayNameRegistry {}
|
|
17
19
|
}
|
|
18
20
|
|
|
19
21
|
export {};
|