@xapps-platform/backend-kit 0.1.1 → 0.1.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.
- package/README.md +35 -0
- package/dist/backend/modes/gateway-managed/policy.d.ts +2 -2
- package/dist/backend/modes/owner-managed/policy.d.ts +2 -2
- package/dist/backend/modes/publisher-delegated/policy.d.ts +2 -2
- package/dist/backend/modes/tenant-delegated/policy.d.ts +2 -2
- package/dist/backend/modules.d.ts +75 -24
- package/dist/backend/modules.d.ts.map +1 -1
- package/dist/backend/modules.js +6 -2
- package/dist/backend/modules.js.map +2 -2
- package/dist/backend/options.d.ts +40 -28
- package/dist/backend/options.d.ts.map +1 -1
- package/dist/backend/options.js +14 -12
- package/dist/backend/options.js.map +2 -2
- package/dist/backend/paymentRuntime.d.ts +3 -3
- package/dist/backend/paymentRuntime.d.ts.map +1 -1
- package/dist/backend/paymentRuntime.js +1 -1
- package/dist/backend/paymentRuntime.js.map +1 -1
- package/dist/backend/policies/common.d.ts +2 -2
- package/dist/backend/policies/common.d.ts.map +1 -1
- package/dist/backend/policies/common.js +1 -1
- package/dist/backend/policies/common.js.map +1 -1
- package/dist/backend/routes/gateway/shared.js +1 -1
- package/dist/backend/routes/gateway/shared.js.map +1 -1
- package/dist/backend/routes/health.d.ts +23 -1
- package/dist/backend/routes/health.d.ts.map +1 -1
- package/dist/backend/routes/health.js.map +2 -2
- package/dist/backend/routes/reference.js +4 -4
- package/dist/backend/routes/reference.js.map +1 -1
- package/dist/index.d.ts +45 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +11 -8
- package/dist/index.js.map +3 -3
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -2,6 +2,18 @@
|
|
|
2
2
|
|
|
3
3
|
Modular Node backend kit for the current Xapps backend contract.
|
|
4
4
|
|
|
5
|
+
## Install
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
npm install @xapps-platform/backend-kit
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## When to use it
|
|
12
|
+
|
|
13
|
+
Use `@xapps-platform/backend-kit` when you want a higher-level backend assembly with default routes, payment runtime composition, and override seams.
|
|
14
|
+
|
|
15
|
+
Use `@xapps-platform/server-sdk` directly only when you need lower-level primitives that the backend kit intentionally does not own.
|
|
16
|
+
|
|
5
17
|
Current public surface:
|
|
6
18
|
|
|
7
19
|
- backend composition for the shipped integrator contract
|
|
@@ -38,6 +50,22 @@ Consumer rule:
|
|
|
38
50
|
- import package entry surfaces such as `@xapps-platform/backend-kit/backend/...`
|
|
39
51
|
- do not consume raw `src/...` files directly from apps
|
|
40
52
|
|
|
53
|
+
## Minimal usage
|
|
54
|
+
|
|
55
|
+
```ts
|
|
56
|
+
import { createBackendKit } from "@xapps-platform/backend-kit";
|
|
57
|
+
|
|
58
|
+
const backendKit = await createBackendKit(
|
|
59
|
+
{
|
|
60
|
+
gateway: { baseUrl: "https://gateway.example.test", apiKey: "gateway_key" },
|
|
61
|
+
host: { allowedOrigins: ["https://tenant.example.test"] },
|
|
62
|
+
payments: { enabledModes: ["gateway_managed"] },
|
|
63
|
+
reference: { hostSurfaces: [{ key: "single-panel", label: "Single Panel" }] },
|
|
64
|
+
},
|
|
65
|
+
deps,
|
|
66
|
+
);
|
|
67
|
+
```
|
|
68
|
+
|
|
41
69
|
## What It Gives You
|
|
42
70
|
|
|
43
71
|
The current package surface provides:
|
|
@@ -194,3 +222,10 @@ Keep internals:
|
|
|
194
222
|
|
|
195
223
|
Node and PHP should keep the same backend behavior in the end. Differences
|
|
196
224
|
should be runtime-adapter concerns, not separate platform feature lines.
|
|
225
|
+
|
|
226
|
+
## Verify locally
|
|
227
|
+
|
|
228
|
+
```bash
|
|
229
|
+
npm run build --workspace packages/backend-kit
|
|
230
|
+
npm run smoke --workspace packages/backend-kit
|
|
231
|
+
```
|
|
@@ -8,7 +8,7 @@ export declare function buildBlockedResult(input: any, runtime?: {}): Promise<{
|
|
|
8
8
|
allowed: boolean;
|
|
9
9
|
reason: any;
|
|
10
10
|
message: any;
|
|
11
|
-
action: import("@xapps/server-sdk").PaymentGuardAction;
|
|
11
|
+
action: import("@xapps-platform/server-sdk").PaymentGuardAction;
|
|
12
12
|
details: {
|
|
13
13
|
verification_failure?: any;
|
|
14
14
|
uiRequired: boolean;
|
|
@@ -44,7 +44,7 @@ export declare function resolvePolicyResult(input: any, runtime?: {}): Promise<{
|
|
|
44
44
|
allowed: boolean;
|
|
45
45
|
reason: any;
|
|
46
46
|
message: any;
|
|
47
|
-
action: import("@xapps/server-sdk").PaymentGuardAction;
|
|
47
|
+
action: import("@xapps-platform/server-sdk").PaymentGuardAction;
|
|
48
48
|
details: {
|
|
49
49
|
verification_failure?: any;
|
|
50
50
|
uiRequired: boolean;
|
|
@@ -8,7 +8,7 @@ export declare function buildBlockedResult(input: any, runtime?: {}): Promise<{
|
|
|
8
8
|
allowed: boolean;
|
|
9
9
|
reason: any;
|
|
10
10
|
message: any;
|
|
11
|
-
action: import("@xapps/server-sdk").PaymentGuardAction;
|
|
11
|
+
action: import("@xapps-platform/server-sdk").PaymentGuardAction;
|
|
12
12
|
details: {
|
|
13
13
|
verification_failure?: any;
|
|
14
14
|
uiRequired: boolean;
|
|
@@ -44,7 +44,7 @@ export declare function resolvePolicyResult(input: any, runtime?: {}): Promise<{
|
|
|
44
44
|
allowed: boolean;
|
|
45
45
|
reason: any;
|
|
46
46
|
message: any;
|
|
47
|
-
action: import("@xapps/server-sdk").PaymentGuardAction;
|
|
47
|
+
action: import("@xapps-platform/server-sdk").PaymentGuardAction;
|
|
48
48
|
details: {
|
|
49
49
|
verification_failure?: any;
|
|
50
50
|
uiRequired: boolean;
|
|
@@ -8,7 +8,7 @@ export declare function buildBlockedResult(input: any, runtime?: {}): Promise<{
|
|
|
8
8
|
allowed: boolean;
|
|
9
9
|
reason: any;
|
|
10
10
|
message: any;
|
|
11
|
-
action: import("@xapps/server-sdk").PaymentGuardAction;
|
|
11
|
+
action: import("@xapps-platform/server-sdk").PaymentGuardAction;
|
|
12
12
|
details: {
|
|
13
13
|
verification_failure?: any;
|
|
14
14
|
uiRequired: boolean;
|
|
@@ -44,7 +44,7 @@ export declare function resolvePolicyResult(input: any, runtime?: {}): Promise<{
|
|
|
44
44
|
allowed: boolean;
|
|
45
45
|
reason: any;
|
|
46
46
|
message: any;
|
|
47
|
-
action: import("@xapps/server-sdk").PaymentGuardAction;
|
|
47
|
+
action: import("@xapps-platform/server-sdk").PaymentGuardAction;
|
|
48
48
|
details: {
|
|
49
49
|
verification_failure?: any;
|
|
50
50
|
uiRequired: boolean;
|
|
@@ -8,7 +8,7 @@ export declare function buildBlockedResult(input: any, runtime?: {}): Promise<{
|
|
|
8
8
|
allowed: boolean;
|
|
9
9
|
reason: any;
|
|
10
10
|
message: any;
|
|
11
|
-
action: import("@xapps/server-sdk").PaymentGuardAction;
|
|
11
|
+
action: import("@xapps-platform/server-sdk").PaymentGuardAction;
|
|
12
12
|
details: {
|
|
13
13
|
verification_failure?: any;
|
|
14
14
|
uiRequired: boolean;
|
|
@@ -44,7 +44,7 @@ export declare function resolvePolicyResult(input: any, runtime?: {}): Promise<{
|
|
|
44
44
|
allowed: boolean;
|
|
45
45
|
reason: any;
|
|
46
46
|
message: any;
|
|
47
|
-
action: import("@xapps/server-sdk").PaymentGuardAction;
|
|
47
|
+
action: import("@xapps-platform/server-sdk").PaymentGuardAction;
|
|
48
48
|
details: {
|
|
49
49
|
verification_failure?: any;
|
|
50
50
|
uiRequired: boolean;
|
|
@@ -1,33 +1,84 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
import type { BackendKitNormalizedOptions, HostSurface, StringRecord } from "./options.js";
|
|
2
|
+
type RegisterableApp = unknown;
|
|
3
|
+
type RouteModule = {
|
|
4
|
+
registerRoutes: (app: RegisterableApp) => Promise<void> | void;
|
|
5
|
+
};
|
|
6
|
+
type HostReferenceModuleInput = {
|
|
7
|
+
gateway?: StringRecord;
|
|
8
|
+
branding?: StringRecord;
|
|
9
|
+
reference?: StringRecord;
|
|
5
10
|
enableLifecycle?: boolean;
|
|
6
11
|
enableBridge?: boolean;
|
|
7
|
-
allowedOrigins?:
|
|
8
|
-
bootstrap?:
|
|
9
|
-
hostProxyService?:
|
|
10
|
-
}, deps?: {}): {
|
|
11
|
-
registerRoutes(app: any): Promise<void>;
|
|
12
|
+
allowedOrigins?: string[];
|
|
13
|
+
bootstrap?: BackendKitNormalizedOptions["host"]["bootstrap"];
|
|
14
|
+
hostProxyService?: unknown;
|
|
12
15
|
};
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
16
|
+
type HostReferenceModuleDeps = {
|
|
17
|
+
createHostProxyService?: (input: {
|
|
18
|
+
gateway?: StringRecord;
|
|
19
|
+
branding?: StringRecord;
|
|
20
|
+
reference?: StringRecord;
|
|
21
|
+
}) => unknown;
|
|
22
|
+
registerHostRoutes?: (app: RegisterableApp, options: {
|
|
23
|
+
enableLifecycle: boolean;
|
|
24
|
+
enableBridge: boolean;
|
|
25
|
+
allowedOrigins: string[];
|
|
26
|
+
bootstrap: BackendKitNormalizedOptions["host"]["bootstrap"];
|
|
27
|
+
branding: StringRecord;
|
|
28
|
+
hostProxyService: unknown;
|
|
29
|
+
}) => Promise<void> | void;
|
|
30
|
+
};
|
|
31
|
+
type HostProxyServiceDeps = {
|
|
32
|
+
createGatewayClient?: (input: {
|
|
33
|
+
baseUrl: string;
|
|
34
|
+
apiKey: string;
|
|
35
|
+
}) => unknown;
|
|
36
|
+
createEmbedHostProxyService?: (input: {
|
|
37
|
+
gatewayClient: unknown;
|
|
38
|
+
gatewayUrl: string;
|
|
39
|
+
hostModes?: HostSurface[];
|
|
40
|
+
}) => unknown;
|
|
41
|
+
};
|
|
42
|
+
type GatewayExecutionModuleDeps = {
|
|
43
|
+
registerPaymentRoutes?: (app: RegisterableApp, options: {
|
|
44
|
+
enabledModes: string[];
|
|
45
|
+
paymentRuntime: unknown;
|
|
46
|
+
}) => Promise<void> | void;
|
|
47
|
+
registerGuardRoutes?: (app: RegisterableApp, options: {
|
|
48
|
+
enabledModes: string[];
|
|
49
|
+
paymentRuntime: unknown;
|
|
50
|
+
}) => Promise<void> | void;
|
|
51
|
+
registerSubjectProfileRoutes?: (app: RegisterableApp, subjectProfiles: StringRecord) => Promise<void> | void;
|
|
22
52
|
};
|
|
53
|
+
type ReferenceSurfaceModuleDeps = {
|
|
54
|
+
registerReferenceRoutes?: (app: RegisterableApp, options: {
|
|
55
|
+
enableReference: boolean;
|
|
56
|
+
enableLifecycle: boolean;
|
|
57
|
+
enableBridge: boolean;
|
|
58
|
+
enabledModes?: string[];
|
|
59
|
+
gateway: StringRecord;
|
|
60
|
+
branding: StringRecord;
|
|
61
|
+
reference: StringRecord;
|
|
62
|
+
}) => Promise<void> | void;
|
|
63
|
+
};
|
|
64
|
+
export declare function createHostReferenceModule({ gateway, branding, reference, enableLifecycle, enableBridge, allowedOrigins, bootstrap, hostProxyService, }?: HostReferenceModuleInput, deps?: HostReferenceModuleDeps): RouteModule;
|
|
65
|
+
export declare function createHostProxyService({ gateway, reference }?: {
|
|
66
|
+
gateway?: StringRecord;
|
|
67
|
+
reference?: StringRecord;
|
|
68
|
+
}, deps?: HostProxyServiceDeps): unknown;
|
|
69
|
+
export declare function createGatewayExecutionModule({ enabledModes, subjectProfiles, paymentRuntime, }?: {
|
|
70
|
+
enabledModes?: string[];
|
|
71
|
+
subjectProfiles?: StringRecord;
|
|
72
|
+
paymentRuntime?: unknown;
|
|
73
|
+
}, deps?: GatewayExecutionModuleDeps): RouteModule;
|
|
23
74
|
export declare function createReferenceSurfaceModule({ gateway, branding, enableReference, enableLifecycle, enableBridge, enabledModes, reference, }?: {
|
|
24
|
-
gateway?:
|
|
25
|
-
branding?:
|
|
75
|
+
gateway?: StringRecord;
|
|
76
|
+
branding?: StringRecord;
|
|
26
77
|
enableReference?: boolean;
|
|
27
78
|
enableLifecycle?: boolean;
|
|
28
79
|
enableBridge?: boolean;
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
};
|
|
80
|
+
enabledModes?: string[];
|
|
81
|
+
reference?: StringRecord;
|
|
82
|
+
}, deps?: ReferenceSurfaceModuleDeps): RouteModule;
|
|
83
|
+
export {};
|
|
33
84
|
//# sourceMappingURL=modules.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modules.d.ts","sourceRoot":"","sources":["../../src/backend/modules.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"modules.d.ts","sourceRoot":"","sources":["../../src/backend/modules.ts"],"names":[],"mappings":"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"}
|
package/dist/backend/modules.js
CHANGED
|
@@ -6,7 +6,7 @@ function createHostReferenceModule({
|
|
|
6
6
|
enableLifecycle = true,
|
|
7
7
|
enableBridge = true,
|
|
8
8
|
allowedOrigins = [],
|
|
9
|
-
bootstrap = {},
|
|
9
|
+
bootstrap = { apiKeys: [], signingSecret: "", ttlSeconds: 300 },
|
|
10
10
|
hostProxyService = null
|
|
11
11
|
} = {}, deps = {}) {
|
|
12
12
|
const createHostProxyService2 = typeof deps.createHostProxyService === "function" ? deps.createHostProxyService : null;
|
|
@@ -48,7 +48,11 @@ function createHostProxyService({ gateway = {}, reference = {} } = {}, deps = {}
|
|
|
48
48
|
hostModes: hostModes.length > 0 ? hostModes : void 0
|
|
49
49
|
});
|
|
50
50
|
}
|
|
51
|
-
function createGatewayExecutionModule({
|
|
51
|
+
function createGatewayExecutionModule({
|
|
52
|
+
enabledModes = [],
|
|
53
|
+
subjectProfiles = {},
|
|
54
|
+
paymentRuntime = {}
|
|
55
|
+
} = {}, deps = {}) {
|
|
52
56
|
const registerPaymentRoutes = typeof deps.registerPaymentRoutes === "function" ? deps.registerPaymentRoutes : null;
|
|
53
57
|
const registerGuardRoutes = typeof deps.registerGuardRoutes === "function" ? deps.registerGuardRoutes : null;
|
|
54
58
|
const registerSubjectProfileRoutes = typeof deps.registerSubjectProfileRoutes === "function" ? deps.registerSubjectProfileRoutes : null;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/backend/modules.ts"],
|
|
4
|
-
"sourcesContent": ["
|
|
5
|
-
"mappings": "AACA,SAAS,oBAAoB,kBAAkB;
|
|
4
|
+
"sourcesContent": ["import type { BackendKitNormalizedOptions, HostSurface, StringRecord } from \"./options.js\";\nimport { normalizeHostModes, readString } from \"./options.js\";\n\ntype RegisterableApp = unknown;\n\ntype RouteModule = {\n registerRoutes: (app: RegisterableApp) => Promise<void> | void;\n};\n\ntype HostReferenceModuleInput = {\n gateway?: StringRecord;\n branding?: StringRecord;\n reference?: StringRecord;\n enableLifecycle?: boolean;\n enableBridge?: boolean;\n allowedOrigins?: string[];\n bootstrap?: BackendKitNormalizedOptions[\"host\"][\"bootstrap\"];\n hostProxyService?: unknown;\n};\n\ntype HostReferenceModuleDeps = {\n createHostProxyService?: (input: {\n gateway?: StringRecord;\n branding?: StringRecord;\n reference?: StringRecord;\n }) => unknown;\n registerHostRoutes?: (\n app: RegisterableApp,\n options: {\n enableLifecycle: boolean;\n enableBridge: boolean;\n allowedOrigins: string[];\n bootstrap: BackendKitNormalizedOptions[\"host\"][\"bootstrap\"];\n branding: StringRecord;\n hostProxyService: unknown;\n },\n ) => Promise<void> | void;\n};\n\ntype HostProxyServiceDeps = {\n createGatewayClient?: (input: { baseUrl: string; apiKey: string }) => unknown;\n createEmbedHostProxyService?: (input: {\n gatewayClient: unknown;\n gatewayUrl: string;\n hostModes?: HostSurface[];\n }) => unknown;\n};\n\ntype GatewayExecutionModuleDeps = {\n registerPaymentRoutes?: (\n app: RegisterableApp,\n options: { enabledModes: string[]; paymentRuntime: unknown },\n ) => Promise<void> | void;\n registerGuardRoutes?: (\n app: RegisterableApp,\n options: { enabledModes: string[]; paymentRuntime: unknown },\n ) => Promise<void> | void;\n registerSubjectProfileRoutes?: (\n app: RegisterableApp,\n subjectProfiles: StringRecord,\n ) => Promise<void> | void;\n};\n\ntype ReferenceSurfaceModuleDeps = {\n registerReferenceRoutes?: (\n app: RegisterableApp,\n options: {\n enableReference: boolean;\n enableLifecycle: boolean;\n enableBridge: boolean;\n enabledModes?: string[];\n gateway: StringRecord;\n branding: StringRecord;\n reference: StringRecord;\n },\n ) => Promise<void> | void;\n};\n\nexport function createHostReferenceModule(\n {\n gateway = {},\n branding = {},\n reference = {},\n enableLifecycle = true,\n enableBridge = true,\n allowedOrigins = [],\n bootstrap = { apiKeys: [], signingSecret: \"\", ttlSeconds: 300 },\n hostProxyService = null,\n }: HostReferenceModuleInput = {},\n deps: HostReferenceModuleDeps = {},\n): RouteModule {\n const createHostProxyService =\n typeof deps.createHostProxyService === \"function\" ? deps.createHostProxyService : null;\n const registerHostRoutes =\n typeof deps.registerHostRoutes === \"function\" ? deps.registerHostRoutes : null;\n if (!createHostProxyService || !registerHostRoutes) {\n throw new TypeError(\"host reference module dependencies are incomplete\");\n }\n\n const resolvedHostProxyService =\n hostProxyService ||\n createHostProxyService({\n gateway,\n branding,\n reference,\n });\n const hostOptions = {\n enableLifecycle,\n enableBridge,\n allowedOrigins,\n bootstrap,\n branding,\n hostProxyService: resolvedHostProxyService,\n };\n\n return {\n async registerRoutes(app) {\n await registerHostRoutes(app, hostOptions);\n },\n };\n}\n\nexport function createHostProxyService(\n { gateway = {}, reference = {} }: { gateway?: StringRecord; reference?: StringRecord } = {},\n deps: HostProxyServiceDeps = {},\n): unknown {\n const createGatewayClient =\n typeof deps.createGatewayClient === \"function\" ? deps.createGatewayClient : null;\n const createEmbedHostProxyService =\n typeof deps.createEmbedHostProxyService === \"function\"\n ? deps.createEmbedHostProxyService\n : null;\n if (!createGatewayClient || !createEmbedHostProxyService) {\n throw new TypeError(\"backend host proxy dependencies are incomplete\");\n }\n\n const gatewayUrl = readString(gateway.baseUrl).trim();\n const apiKey = readString(gateway.apiKey).trim();\n const hostModes = normalizeHostModes(reference.hostSurfaces);\n\n return createEmbedHostProxyService({\n gatewayClient: createGatewayClient({ baseUrl: gatewayUrl, apiKey }),\n gatewayUrl,\n hostModes: hostModes.length > 0 ? hostModes : undefined,\n });\n}\n\nexport function createGatewayExecutionModule(\n {\n enabledModes = [],\n subjectProfiles = {},\n paymentRuntime = {},\n }: {\n enabledModes?: string[];\n subjectProfiles?: StringRecord;\n paymentRuntime?: unknown;\n } = {},\n deps: GatewayExecutionModuleDeps = {},\n): RouteModule {\n const registerPaymentRoutes =\n typeof deps.registerPaymentRoutes === \"function\" ? deps.registerPaymentRoutes : null;\n const registerGuardRoutes =\n typeof deps.registerGuardRoutes === \"function\" ? deps.registerGuardRoutes : null;\n const registerSubjectProfileRoutes =\n typeof deps.registerSubjectProfileRoutes === \"function\"\n ? deps.registerSubjectProfileRoutes\n : null;\n if (!registerPaymentRoutes || !registerGuardRoutes || !registerSubjectProfileRoutes) {\n throw new TypeError(\"gateway execution module dependencies are incomplete\");\n }\n\n return {\n async registerRoutes(app) {\n await registerPaymentRoutes(app, { enabledModes, paymentRuntime });\n await registerGuardRoutes(app, { enabledModes, paymentRuntime });\n await registerSubjectProfileRoutes(app, subjectProfiles);\n },\n };\n}\n\nexport function createReferenceSurfaceModule(\n {\n gateway = {},\n branding = {},\n enableReference = true,\n enableLifecycle = true,\n enableBridge = true,\n enabledModes,\n reference = {},\n }: {\n gateway?: StringRecord;\n branding?: StringRecord;\n enableReference?: boolean;\n enableLifecycle?: boolean;\n enableBridge?: boolean;\n enabledModes?: string[];\n reference?: StringRecord;\n } = {},\n deps: ReferenceSurfaceModuleDeps = {},\n): RouteModule {\n const registerReferenceRoutes =\n typeof deps.registerReferenceRoutes === \"function\" ? deps.registerReferenceRoutes : null;\n if (!registerReferenceRoutes) {\n throw new TypeError(\"reference surface module dependencies are incomplete\");\n }\n\n const referenceOptions = {\n enableReference,\n enableLifecycle,\n enableBridge,\n enabledModes,\n gateway,\n branding,\n reference,\n };\n\n return {\n async registerRoutes(app) {\n await registerReferenceRoutes(app, referenceOptions);\n },\n };\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["createHostProxyService"]
|
|
7
7
|
}
|
|
@@ -1,15 +1,9 @@
|
|
|
1
|
-
export
|
|
2
|
-
export
|
|
3
|
-
export declare function readList(value: any): any[];
|
|
4
|
-
export declare function normalizeAllowedOrigins(value: any): string[];
|
|
5
|
-
export declare function normalizeApiKeys(value: any): string[];
|
|
6
|
-
export declare function normalizeOwnerIssuer(value: any, fallback?: string): "tenant" | "publisher";
|
|
7
|
-
export declare function normalizeHostModes(hostSurfaces: any): {
|
|
1
|
+
export type StringRecord = Record<string, unknown>;
|
|
2
|
+
export type HostSurface = {
|
|
8
3
|
key: string;
|
|
9
4
|
label: string;
|
|
10
|
-
}
|
|
11
|
-
export
|
|
12
|
-
export declare function normalizeBackendKitOptions(input?: {}, deps?: {}): {
|
|
5
|
+
};
|
|
6
|
+
export type BackendKitNormalizedOptions = {
|
|
13
7
|
host: {
|
|
14
8
|
enableReference: boolean;
|
|
15
9
|
enableLifecycle: boolean;
|
|
@@ -22,12 +16,12 @@ export declare function normalizeBackendKitOptions(input?: {}, deps?: {}): {
|
|
|
22
16
|
};
|
|
23
17
|
};
|
|
24
18
|
payments: {
|
|
25
|
-
enabledModes:
|
|
26
|
-
ownerIssuer:
|
|
19
|
+
enabledModes: string[];
|
|
20
|
+
ownerIssuer: "tenant" | "publisher";
|
|
27
21
|
paymentUrl: string;
|
|
28
|
-
returnSecret:
|
|
29
|
-
returnSecretRef:
|
|
30
|
-
returnUrlAllowlist:
|
|
22
|
+
returnSecret: string;
|
|
23
|
+
returnSecretRef: string;
|
|
24
|
+
returnUrlAllowlist: string;
|
|
31
25
|
};
|
|
32
26
|
assets: {
|
|
33
27
|
seedLogo: {
|
|
@@ -53,26 +47,44 @@ export declare function normalizeBackendKitOptions(input?: {}, deps?: {}): {
|
|
|
53
47
|
workspace: string;
|
|
54
48
|
stack: string;
|
|
55
49
|
mode: string;
|
|
56
|
-
tenantPolicySlugs:
|
|
57
|
-
proofSources:
|
|
58
|
-
sdkPaths:
|
|
59
|
-
hostSurfaces:
|
|
60
|
-
notes:
|
|
61
|
-
embedSdkCandidateFiles:
|
|
62
|
-
referenceAssets:
|
|
50
|
+
tenantPolicySlugs: unknown[];
|
|
51
|
+
proofSources: unknown[];
|
|
52
|
+
sdkPaths: StringRecord;
|
|
53
|
+
hostSurfaces: unknown[];
|
|
54
|
+
notes: unknown[];
|
|
55
|
+
embedSdkCandidateFiles: unknown[];
|
|
56
|
+
referenceAssets: StringRecord;
|
|
63
57
|
};
|
|
64
58
|
subjectProfiles: {
|
|
65
59
|
workspace: string;
|
|
66
60
|
source: string;
|
|
67
61
|
catalogJson: string;
|
|
68
|
-
defaultProfiles:
|
|
69
|
-
resolveCandidates:
|
|
62
|
+
defaultProfiles: unknown[];
|
|
63
|
+
resolveCandidates: ((...args: unknown[]) => unknown) | null;
|
|
70
64
|
};
|
|
71
65
|
overrides: {
|
|
72
|
-
hostProxyService:
|
|
73
|
-
gatewayClient:
|
|
74
|
-
paymentHandler:
|
|
75
|
-
resolvePolicyRequest:
|
|
66
|
+
hostProxyService: StringRecord | null;
|
|
67
|
+
gatewayClient: StringRecord | null;
|
|
68
|
+
paymentHandler: StringRecord | null;
|
|
69
|
+
resolvePolicyRequest: ((...args: unknown[]) => unknown) | null;
|
|
76
70
|
};
|
|
77
71
|
};
|
|
72
|
+
type NormalizeOptionsDeps = {
|
|
73
|
+
defaults?: StringRecord;
|
|
74
|
+
normalizeEnabledModes?: (value: unknown) => string[];
|
|
75
|
+
};
|
|
76
|
+
export declare function readRecord(value: unknown): StringRecord;
|
|
77
|
+
export declare function readString(value: unknown, fallback?: string): string;
|
|
78
|
+
export declare function readList(value: unknown): unknown[];
|
|
79
|
+
export declare function normalizeAllowedOrigins(value: unknown): string[];
|
|
80
|
+
export declare function normalizeApiKeys(value: unknown): string[];
|
|
81
|
+
export declare function normalizeOwnerIssuer(value: unknown, fallback?: "tenant" | "publisher"): "tenant" | "publisher";
|
|
82
|
+
export declare function normalizeHostModes(hostSurfaces: unknown): HostSurface[];
|
|
83
|
+
export declare function resolvePlatformSecretRefFromEnv(input?: {
|
|
84
|
+
name?: string | null;
|
|
85
|
+
scope?: string | null;
|
|
86
|
+
scopeId?: string | null;
|
|
87
|
+
}): string;
|
|
88
|
+
export declare function normalizeBackendKitOptions(input?: StringRecord, deps?: NormalizeOptionsDeps): BackendKitNormalizedOptions;
|
|
89
|
+
export {};
|
|
78
90
|
//# sourceMappingURL=options.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../src/backend/options.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../src/backend/options.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAEnD,MAAM,MAAM,WAAW,GAAG;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG;IACxC,IAAI,EAAE;QACJ,eAAe,EAAE,OAAO,CAAC;QACzB,eAAe,EAAE,OAAO,CAAC;QACzB,YAAY,EAAE,OAAO,CAAC;QACtB,cAAc,EAAE,MAAM,EAAE,CAAC;QACzB,SAAS,EAAE;YACT,OAAO,EAAE,MAAM,EAAE,CAAC;YAClB,aAAa,EAAE,MAAM,CAAC;YACtB,UAAU,EAAE,MAAM,CAAC;SACpB,CAAC;KACH,CAAC;IACF,QAAQ,EAAE;QACR,YAAY,EAAE,MAAM,EAAE,CAAC;QACvB,WAAW,EAAE,QAAQ,GAAG,WAAW,CAAC;QACpC,UAAU,EAAE,MAAM,CAAC;QACnB,YAAY,EAAE,MAAM,CAAC;QACrB,eAAe,EAAE,MAAM,CAAC;QACxB,kBAAkB,EAAE,MAAM,CAAC;KAC5B,CAAC;IACF,MAAM,EAAE;QACN,QAAQ,EAAE;YACR,QAAQ,EAAE,MAAM,CAAC;YACjB,SAAS,EAAE,MAAM,CAAC;YAClB,WAAW,EAAE,MAAM,CAAC;SACrB,CAAC;QACF,WAAW,EAAE;YACX,QAAQ,EAAE,MAAM,CAAC;SAClB,CAAC;KACH,CAAC;IACF,OAAO,EAAE;QACP,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,QAAQ,EAAE;QACR,UAAU,EAAE,MAAM,CAAC;QACnB,WAAW,EAAE,MAAM,CAAC;QACpB,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,SAAS,EAAE;QACT,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,MAAM,CAAC;QAClB,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,iBAAiB,EAAE,OAAO,EAAE,CAAC;QAC7B,YAAY,EAAE,OAAO,EAAE,CAAC;QACxB,QAAQ,EAAE,YAAY,CAAC;QACvB,YAAY,EAAE,OAAO,EAAE,CAAC;QACxB,KAAK,EAAE,OAAO,EAAE,CAAC;QACjB,sBAAsB,EAAE,OAAO,EAAE,CAAC;QAClC,eAAe,EAAE,YAAY,CAAC;KAC/B,CAAC;IACF,eAAe,EAAE;QACf,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,EAAE,MAAM,CAAC;QACf,WAAW,EAAE,MAAM,CAAC;QACpB,eAAe,EAAE,OAAO,EAAE,CAAC;QAC3B,iBAAiB,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC,GAAG,IAAI,CAAC;KAC7D,CAAC;IACF,SAAS,EAAE;QACT,gBAAgB,EAAE,YAAY,GAAG,IAAI,CAAC;QACtC,aAAa,EAAE,YAAY,GAAG,IAAI,CAAC;QACnC,cAAc,EAAE,YAAY,GAAG,IAAI,CAAC;QACpC,oBAAoB,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,CAAC,GAAG,IAAI,CAAC;KAChE,CAAC;CACH,CAAC;AAEF,KAAK,oBAAoB,GAAG;IAC1B,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,qBAAqB,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,MAAM,EAAE,CAAC;CACtD,CAAC;AAEF,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,YAAY,CAEvD;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,SAAK,GAAG,MAAM,CAEhE;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,EAAE,CAElD;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,EAAE,CAUhE;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,EAAE,CAUzD;AAED,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,OAAO,EACd,QAAQ,GAAE,QAAQ,GAAG,WAAsB,GAC1C,QAAQ,GAAG,WAAW,CAGxB;AAED,wBAAgB,kBAAkB,CAAC,YAAY,EAAE,OAAO,GAAG,WAAW,EAAE,CAWvE;AAED,wBAAgB,+BAA+B,CAC7C,KAAK,GAAE;IAAE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAO,GACnF,MAAM,CAuBR;AAED,wBAAgB,0BAA0B,CACxC,KAAK,GAAE,YAAiB,EACxB,IAAI,GAAE,oBAAyB,GAC9B,2BAA2B,CA4H7B"}
|
package/dist/backend/options.js
CHANGED
|
@@ -33,7 +33,7 @@ function normalizeHostModes(hostSurfaces) {
|
|
|
33
33
|
key: readString(entry.key).trim(),
|
|
34
34
|
label: readString(entry.label).trim()
|
|
35
35
|
} : null
|
|
36
|
-
).filter((entry) => entry && entry.key && entry.label);
|
|
36
|
+
).filter((entry) => Boolean(entry && entry.key && entry.label));
|
|
37
37
|
}
|
|
38
38
|
function resolvePlatformSecretRefFromEnv(input = {}) {
|
|
39
39
|
const name = String(input?.name || "").trim().replace(/[^A-Za-z0-9_]+/g, "_").toUpperCase();
|
|
@@ -60,6 +60,7 @@ function normalizeBackendKitOptions(input = {}, deps = {}) {
|
|
|
60
60
|
const payments = readRecord(input.payments);
|
|
61
61
|
const assets = readRecord(input.assets);
|
|
62
62
|
const seedLogo = readRecord(assets.seedLogo);
|
|
63
|
+
const paymentPage = readRecord(assets.paymentPage);
|
|
63
64
|
const gateway = readRecord(input.gateway);
|
|
64
65
|
const branding = readRecord(input.branding);
|
|
65
66
|
const reference = readRecord(input.reference);
|
|
@@ -68,6 +69,8 @@ function normalizeBackendKitOptions(input = {}, deps = {}) {
|
|
|
68
69
|
const defaultHost = readRecord(defaults.host);
|
|
69
70
|
const defaultPayments = readRecord(defaults.payments);
|
|
70
71
|
const defaultGateway = readRecord(defaults.gateway);
|
|
72
|
+
const hostBootstrap = readRecord(host.bootstrap);
|
|
73
|
+
const defaultHostBootstrap = readRecord(defaultHost.bootstrap);
|
|
71
74
|
return {
|
|
72
75
|
host: {
|
|
73
76
|
enableReference: host.enableReference !== false && defaultHost.enableReference !== false,
|
|
@@ -75,18 +78,17 @@ function normalizeBackendKitOptions(input = {}, deps = {}) {
|
|
|
75
78
|
enableBridge: host.enableBridge !== false && defaultHost.enableBridge !== false,
|
|
76
79
|
allowedOrigins: normalizeAllowedOrigins(host.allowedOrigins ?? defaultHost.allowedOrigins),
|
|
77
80
|
bootstrap: {
|
|
78
|
-
apiKeys: normalizeApiKeys(
|
|
79
|
-
|
|
80
|
-
)
|
|
81
|
-
signingSecret: readString(readRecord(host.bootstrap).signingSecret).trim() || readString(defaultHost.bootstrap?.signingSecret).trim(),
|
|
82
|
-
ttlSeconds: Number(readRecord(host.bootstrap).ttlSeconds ?? defaultHost.bootstrap?.ttlSeconds) > 0 ? Math.floor(
|
|
83
|
-
Number(readRecord(host.bootstrap).ttlSeconds ?? defaultHost.bootstrap?.ttlSeconds)
|
|
84
|
-
) : 300
|
|
81
|
+
apiKeys: normalizeApiKeys(hostBootstrap.apiKeys ?? defaultHostBootstrap.apiKeys),
|
|
82
|
+
signingSecret: readString(hostBootstrap.signingSecret).trim() || readString(defaultHostBootstrap.signingSecret).trim(),
|
|
83
|
+
ttlSeconds: Number(hostBootstrap.ttlSeconds ?? defaultHostBootstrap.ttlSeconds) > 0 ? Math.floor(Number(hostBootstrap.ttlSeconds ?? defaultHostBootstrap.ttlSeconds)) : 300
|
|
85
84
|
}
|
|
86
85
|
},
|
|
87
86
|
payments: {
|
|
88
87
|
enabledModes: normalizeEnabledModes(payments.enabledModes),
|
|
89
|
-
ownerIssuer: normalizeOwnerIssuer(
|
|
88
|
+
ownerIssuer: normalizeOwnerIssuer(
|
|
89
|
+
payments.ownerIssuer,
|
|
90
|
+
normalizeOwnerIssuer(defaultPayments.ownerIssuer)
|
|
91
|
+
),
|
|
90
92
|
paymentUrl: readString(payments.paymentUrl).trim() || readString(defaultPayments.paymentUrl),
|
|
91
93
|
returnSecret: typeof payments.returnSecret === "string" ? payments.returnSecret : readString(defaultPayments.returnSecret),
|
|
92
94
|
returnSecretRef: typeof payments.returnSecretRef === "string" ? payments.returnSecretRef : readString(defaultPayments.returnSecretRef),
|
|
@@ -99,7 +101,7 @@ function normalizeBackendKitOptions(input = {}, deps = {}) {
|
|
|
99
101
|
contentType: readString(seedLogo.contentType, "image/svg+xml").trim() || "image/svg+xml"
|
|
100
102
|
},
|
|
101
103
|
paymentPage: {
|
|
102
|
-
filePath: readString(
|
|
104
|
+
filePath: readString(paymentPage.filePath)
|
|
103
105
|
}
|
|
104
106
|
},
|
|
105
107
|
gateway: {
|
|
@@ -129,13 +131,13 @@ function normalizeBackendKitOptions(input = {}, deps = {}) {
|
|
|
129
131
|
source: readString(subjectProfiles.source),
|
|
130
132
|
catalogJson: readString(subjectProfiles.catalogJson),
|
|
131
133
|
defaultProfiles: readList(subjectProfiles.defaultProfiles),
|
|
132
|
-
resolveCandidates: typeof subjectProfiles.resolveCandidates === "function" ? subjectProfiles.resolveCandidates : null
|
|
134
|
+
resolveCandidates: typeof subjectProfiles.resolveCandidates === "function" ? (...args) => subjectProfiles.resolveCandidates(...args) : null
|
|
133
135
|
},
|
|
134
136
|
overrides: {
|
|
135
137
|
hostProxyService: overrides.hostProxyService && typeof overrides.hostProxyService === "object" ? overrides.hostProxyService : null,
|
|
136
138
|
gatewayClient: overrides.gatewayClient && typeof overrides.gatewayClient === "object" ? overrides.gatewayClient : null,
|
|
137
139
|
paymentHandler: overrides.paymentHandler && typeof overrides.paymentHandler === "object" ? overrides.paymentHandler : null,
|
|
138
|
-
resolvePolicyRequest: typeof overrides.resolvePolicyRequest === "function" ? overrides.resolvePolicyRequest : null
|
|
140
|
+
resolvePolicyRequest: typeof overrides.resolvePolicyRequest === "function" ? (...args) => overrides.resolvePolicyRequest(...args) : null
|
|
139
141
|
}
|
|
140
142
|
};
|
|
141
143
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/backend/options.ts"],
|
|
4
|
-
"sourcesContent": ["// @ts-nocheck\nexport function readRecord(value) {\n return value && typeof value === \"object\" ? value : {};\n}\n\nexport function readString(value, fallback = \"\") {\n return typeof value === \"string\" ? value : fallback;\n}\n\nexport function readList(value) {\n return Array.isArray(value) ? value : [];\n}\n\nexport function normalizeAllowedOrigins(value) {\n if (Array.isArray(value)) {\n return value.map((entry) => readString(entry).trim().replace(/\\/+$/, \"\")).filter(Boolean);\n }\n const raw = readString(value).trim();\n if (!raw) return [];\n return raw\n .split(/[,\\n]/)\n .map((entry) => readString(entry).trim().replace(/\\/+$/, \"\"))\n .filter(Boolean);\n}\n\nexport function normalizeApiKeys(value) {\n if (Array.isArray(value)) {\n return value.map((entry) => readString(entry).trim()).filter(Boolean);\n }\n const raw = readString(value).trim();\n if (!raw) return [];\n return raw\n .split(/[,\\n]/)\n .map((entry) => readString(entry).trim())\n .filter(Boolean);\n}\n\nexport function normalizeOwnerIssuer(value, fallback = \"tenant\") {\n const normalized = readString(value, fallback).trim().toLowerCase();\n return normalized === \"publisher\" ? \"publisher\" : \"tenant\";\n}\n\nexport function normalizeHostModes(hostSurfaces) {\n return readList(hostSurfaces)\n .map((entry) =>\n entry && typeof entry === \"object\"\n ? {\n key: readString(entry.key).trim(),\n label: readString(entry.label).trim(),\n }\n : null,\n )\n .filter((entry) => entry && entry.key && entry.label);\n}\n\nexport function resolvePlatformSecretRefFromEnv(input = {}) {\n const name = String(input?.name || \"\")\n .trim()\n .replace(/[^A-Za-z0-9_]+/g, \"_\")\n .toUpperCase();\n const scope = String(input?.scope || \"\")\n .trim()\n .replace(/[^A-Za-z0-9_]+/g, \"_\")\n .toUpperCase();\n const scopeId = String(input?.scopeId || \"\")\n .trim()\n .replace(/[^A-Za-z0-9_]+/g, \"_\")\n .toUpperCase();\n const candidates = [\n scope && scopeId && name ? `PLATFORM_SECRET__${scope}__${scopeId}__${name}` : \"\",\n scope && name ? `PLATFORM_SECRET__${scope}__${name}` : \"\",\n name ? `PLATFORM_SECRET__${name}` : \"\",\n ].filter(Boolean);\n for (const key of candidates) {\n const value = String(process.env[key] || \"\").trim();\n if (value) return value;\n }\n return \"\";\n}\n\nexport function normalizeBackendKitOptions(input = {}, deps = {}) {\n const defaults = readRecord(deps.defaults);\n const normalizeEnabledModes =\n typeof deps.normalizeEnabledModes === \"function\" ? deps.normalizeEnabledModes : null;\n if (!normalizeEnabledModes) {\n throw new TypeError(\"normalizeEnabledModes is required\");\n }\n\n const host = readRecord(input.host);\n const payments = readRecord(input.payments);\n const assets = readRecord(input.assets);\n const seedLogo = readRecord(assets.seedLogo);\n const gateway = readRecord(input.gateway);\n const branding = readRecord(input.branding);\n const reference = readRecord(input.reference);\n const subjectProfiles = readRecord(input.subjectProfiles);\n const overrides = readRecord(input.overrides);\n const defaultHost = readRecord(defaults.host);\n const defaultPayments = readRecord(defaults.payments);\n const defaultGateway = readRecord(defaults.gateway);\n\n return {\n host: {\n enableReference: host.enableReference !== false && defaultHost.enableReference !== false,\n enableLifecycle: host.enableLifecycle !== false && defaultHost.enableLifecycle !== false,\n enableBridge: host.enableBridge !== false && defaultHost.enableBridge !== false,\n allowedOrigins: normalizeAllowedOrigins(host.allowedOrigins ?? defaultHost.allowedOrigins),\n bootstrap: {\n apiKeys: normalizeApiKeys(\n readRecord(host.bootstrap).apiKeys ?? defaultHost.bootstrap?.apiKeys,\n ),\n signingSecret:\n readString(readRecord(host.bootstrap).signingSecret).trim() ||\n readString(defaultHost.bootstrap?.signingSecret).trim(),\n ttlSeconds:\n Number(readRecord(host.bootstrap).ttlSeconds ?? defaultHost.bootstrap?.ttlSeconds) > 0\n ? Math.floor(\n Number(readRecord(host.bootstrap).ttlSeconds ?? defaultHost.bootstrap?.ttlSeconds),\n )\n : 300,\n },\n },\n payments: {\n enabledModes: normalizeEnabledModes(payments.enabledModes),\n ownerIssuer: normalizeOwnerIssuer(payments.ownerIssuer, defaultPayments.ownerIssuer),\n paymentUrl: readString(payments.paymentUrl).trim() || readString(defaultPayments.paymentUrl),\n returnSecret:\n typeof payments.returnSecret === \"string\"\n ? payments.returnSecret\n : readString(defaultPayments.returnSecret),\n returnSecretRef:\n typeof payments.returnSecretRef === \"string\"\n ? payments.returnSecretRef\n : readString(defaultPayments.returnSecretRef),\n returnUrlAllowlist:\n typeof payments.returnUrlAllowlist === \"string\"\n ? payments.returnUrlAllowlist\n : readString(defaultPayments.returnUrlAllowlist),\n },\n assets: {\n seedLogo: {\n filePath: readString(seedLogo.filePath),\n routePath: readString(seedLogo.routePath),\n contentType: readString(seedLogo.contentType, \"image/svg+xml\").trim() || \"image/svg+xml\",\n },\n paymentPage: {\n filePath: readString(readRecord(assets.paymentPage).filePath),\n },\n },\n gateway: {\n baseUrl: readString(gateway.baseUrl).trim() || readString(defaultGateway.baseUrl),\n apiKey: readString(gateway.apiKey).trim() || readString(defaultGateway.apiKey),\n },\n branding: {\n tenantName: readString(branding.tenantName),\n serviceName: readString(branding.serviceName),\n stackLabel: readString(branding.stackLabel),\n },\n reference: {\n tenant: readString(reference.tenant),\n workspace: readString(reference.workspace),\n stack: readString(reference.stack),\n mode: readString(reference.mode),\n tenantPolicySlugs: readList(reference.tenantPolicySlugs),\n proofSources: readList(reference.proofSources),\n sdkPaths: readRecord(reference.sdkPaths),\n hostSurfaces: readList(reference.hostSurfaces),\n notes: readList(reference.notes),\n embedSdkCandidateFiles: readList(reference.embedSdkCandidateFiles),\n referenceAssets: readRecord(reference.referenceAssets),\n },\n subjectProfiles: {\n workspace: readString(subjectProfiles.workspace),\n source: readString(subjectProfiles.source),\n catalogJson: readString(subjectProfiles.catalogJson),\n defaultProfiles: readList(subjectProfiles.defaultProfiles),\n resolveCandidates:\n typeof subjectProfiles.resolveCandidates === \"function\"\n ? subjectProfiles.resolveCandidates\n : null,\n },\n overrides: {\n hostProxyService:\n overrides.hostProxyService && typeof overrides.hostProxyService === \"object\"\n ? overrides.hostProxyService\n : null,\n gatewayClient:\n overrides.gatewayClient && typeof overrides.gatewayClient === \"object\"\n ? overrides.gatewayClient\n : null,\n paymentHandler:\n overrides.paymentHandler && typeof overrides.paymentHandler === \"object\"\n ? overrides.paymentHandler\n : null,\n resolvePolicyRequest:\n typeof overrides.resolvePolicyRequest === \"function\"\n ? overrides.resolvePolicyRequest\n : null,\n },\n };\n}\n"],
|
|
5
|
-
"mappings": "
|
|
4
|
+
"sourcesContent": ["export type StringRecord = Record<string, unknown>;\n\nexport type HostSurface = {\n key: string;\n label: string;\n};\n\nexport type BackendKitNormalizedOptions = {\n host: {\n enableReference: boolean;\n enableLifecycle: boolean;\n enableBridge: boolean;\n allowedOrigins: string[];\n bootstrap: {\n apiKeys: string[];\n signingSecret: string;\n ttlSeconds: number;\n };\n };\n payments: {\n enabledModes: string[];\n ownerIssuer: \"tenant\" | \"publisher\";\n paymentUrl: string;\n returnSecret: string;\n returnSecretRef: string;\n returnUrlAllowlist: string;\n };\n assets: {\n seedLogo: {\n filePath: string;\n routePath: string;\n contentType: string;\n };\n paymentPage: {\n filePath: string;\n };\n };\n gateway: {\n baseUrl: string;\n apiKey: string;\n };\n branding: {\n tenantName: string;\n serviceName: string;\n stackLabel: string;\n };\n reference: {\n tenant: string;\n workspace: string;\n stack: string;\n mode: string;\n tenantPolicySlugs: unknown[];\n proofSources: unknown[];\n sdkPaths: StringRecord;\n hostSurfaces: unknown[];\n notes: unknown[];\n embedSdkCandidateFiles: unknown[];\n referenceAssets: StringRecord;\n };\n subjectProfiles: {\n workspace: string;\n source: string;\n catalogJson: string;\n defaultProfiles: unknown[];\n resolveCandidates: ((...args: unknown[]) => unknown) | null;\n };\n overrides: {\n hostProxyService: StringRecord | null;\n gatewayClient: StringRecord | null;\n paymentHandler: StringRecord | null;\n resolvePolicyRequest: ((...args: unknown[]) => unknown) | null;\n };\n};\n\ntype NormalizeOptionsDeps = {\n defaults?: StringRecord;\n normalizeEnabledModes?: (value: unknown) => string[];\n};\n\nexport function readRecord(value: unknown): StringRecord {\n return value && typeof value === \"object\" ? (value as StringRecord) : {};\n}\n\nexport function readString(value: unknown, fallback = \"\"): string {\n return typeof value === \"string\" ? value : fallback;\n}\n\nexport function readList(value: unknown): unknown[] {\n return Array.isArray(value) ? value : [];\n}\n\nexport function normalizeAllowedOrigins(value: unknown): string[] {\n if (Array.isArray(value)) {\n return value.map((entry) => readString(entry).trim().replace(/\\/+$/, \"\")).filter(Boolean);\n }\n const raw = readString(value).trim();\n if (!raw) return [];\n return raw\n .split(/[,\\n]/)\n .map((entry) => readString(entry).trim().replace(/\\/+$/, \"\"))\n .filter(Boolean);\n}\n\nexport function normalizeApiKeys(value: unknown): string[] {\n if (Array.isArray(value)) {\n return value.map((entry) => readString(entry).trim()).filter(Boolean);\n }\n const raw = readString(value).trim();\n if (!raw) return [];\n return raw\n .split(/[,\\n]/)\n .map((entry) => readString(entry).trim())\n .filter(Boolean);\n}\n\nexport function normalizeOwnerIssuer(\n value: unknown,\n fallback: \"tenant\" | \"publisher\" = \"tenant\",\n): \"tenant\" | \"publisher\" {\n const normalized = readString(value, fallback).trim().toLowerCase();\n return normalized === \"publisher\" ? \"publisher\" : \"tenant\";\n}\n\nexport function normalizeHostModes(hostSurfaces: unknown): HostSurface[] {\n return readList(hostSurfaces)\n .map((entry) =>\n entry && typeof entry === \"object\"\n ? {\n key: readString((entry as StringRecord).key).trim(),\n label: readString((entry as StringRecord).label).trim(),\n }\n : null,\n )\n .filter((entry): entry is HostSurface => Boolean(entry && entry.key && entry.label));\n}\n\nexport function resolvePlatformSecretRefFromEnv(\n input: { name?: string | null; scope?: string | null; scopeId?: string | null } = {},\n): string {\n const name = String(input?.name || \"\")\n .trim()\n .replace(/[^A-Za-z0-9_]+/g, \"_\")\n .toUpperCase();\n const scope = String(input?.scope || \"\")\n .trim()\n .replace(/[^A-Za-z0-9_]+/g, \"_\")\n .toUpperCase();\n const scopeId = String(input?.scopeId || \"\")\n .trim()\n .replace(/[^A-Za-z0-9_]+/g, \"_\")\n .toUpperCase();\n const candidates = [\n scope && scopeId && name ? `PLATFORM_SECRET__${scope}__${scopeId}__${name}` : \"\",\n scope && name ? `PLATFORM_SECRET__${scope}__${name}` : \"\",\n name ? `PLATFORM_SECRET__${name}` : \"\",\n ].filter(Boolean);\n for (const key of candidates) {\n const value = String(process.env[key] || \"\").trim();\n if (value) return value;\n }\n return \"\";\n}\n\nexport function normalizeBackendKitOptions(\n input: StringRecord = {},\n deps: NormalizeOptionsDeps = {},\n): BackendKitNormalizedOptions {\n const defaults = readRecord(deps.defaults);\n const normalizeEnabledModes =\n typeof deps.normalizeEnabledModes === \"function\" ? deps.normalizeEnabledModes : null;\n if (!normalizeEnabledModes) {\n throw new TypeError(\"normalizeEnabledModes is required\");\n }\n\n const host = readRecord(input.host);\n const payments = readRecord(input.payments);\n const assets = readRecord(input.assets);\n const seedLogo = readRecord(assets.seedLogo);\n const paymentPage = readRecord(assets.paymentPage);\n const gateway = readRecord(input.gateway);\n const branding = readRecord(input.branding);\n const reference = readRecord(input.reference);\n const subjectProfiles = readRecord(input.subjectProfiles);\n const overrides = readRecord(input.overrides);\n const defaultHost = readRecord(defaults.host);\n const defaultPayments = readRecord(defaults.payments);\n const defaultGateway = readRecord(defaults.gateway);\n const hostBootstrap = readRecord(host.bootstrap);\n const defaultHostBootstrap = readRecord(defaultHost.bootstrap);\n\n return {\n host: {\n enableReference: host.enableReference !== false && defaultHost.enableReference !== false,\n enableLifecycle: host.enableLifecycle !== false && defaultHost.enableLifecycle !== false,\n enableBridge: host.enableBridge !== false && defaultHost.enableBridge !== false,\n allowedOrigins: normalizeAllowedOrigins(host.allowedOrigins ?? defaultHost.allowedOrigins),\n bootstrap: {\n apiKeys: normalizeApiKeys(hostBootstrap.apiKeys ?? defaultHostBootstrap.apiKeys),\n signingSecret:\n readString(hostBootstrap.signingSecret).trim() ||\n readString(defaultHostBootstrap.signingSecret).trim(),\n ttlSeconds:\n Number(hostBootstrap.ttlSeconds ?? defaultHostBootstrap.ttlSeconds) > 0\n ? Math.floor(Number(hostBootstrap.ttlSeconds ?? defaultHostBootstrap.ttlSeconds))\n : 300,\n },\n },\n payments: {\n enabledModes: normalizeEnabledModes(payments.enabledModes),\n ownerIssuer: normalizeOwnerIssuer(\n payments.ownerIssuer,\n normalizeOwnerIssuer(defaultPayments.ownerIssuer),\n ),\n paymentUrl: readString(payments.paymentUrl).trim() || readString(defaultPayments.paymentUrl),\n returnSecret:\n typeof payments.returnSecret === \"string\"\n ? payments.returnSecret\n : readString(defaultPayments.returnSecret),\n returnSecretRef:\n typeof payments.returnSecretRef === \"string\"\n ? payments.returnSecretRef\n : readString(defaultPayments.returnSecretRef),\n returnUrlAllowlist:\n typeof payments.returnUrlAllowlist === \"string\"\n ? payments.returnUrlAllowlist\n : readString(defaultPayments.returnUrlAllowlist),\n },\n assets: {\n seedLogo: {\n filePath: readString(seedLogo.filePath),\n routePath: readString(seedLogo.routePath),\n contentType: readString(seedLogo.contentType, \"image/svg+xml\").trim() || \"image/svg+xml\",\n },\n paymentPage: {\n filePath: readString(paymentPage.filePath),\n },\n },\n gateway: {\n baseUrl: readString(gateway.baseUrl).trim() || readString(defaultGateway.baseUrl),\n apiKey: readString(gateway.apiKey).trim() || readString(defaultGateway.apiKey),\n },\n branding: {\n tenantName: readString(branding.tenantName),\n serviceName: readString(branding.serviceName),\n stackLabel: readString(branding.stackLabel),\n },\n reference: {\n tenant: readString(reference.tenant),\n workspace: readString(reference.workspace),\n stack: readString(reference.stack),\n mode: readString(reference.mode),\n tenantPolicySlugs: readList(reference.tenantPolicySlugs),\n proofSources: readList(reference.proofSources),\n sdkPaths: readRecord(reference.sdkPaths),\n hostSurfaces: readList(reference.hostSurfaces),\n notes: readList(reference.notes),\n embedSdkCandidateFiles: readList(reference.embedSdkCandidateFiles),\n referenceAssets: readRecord(reference.referenceAssets),\n },\n subjectProfiles: {\n workspace: readString(subjectProfiles.workspace),\n source: readString(subjectProfiles.source),\n catalogJson: readString(subjectProfiles.catalogJson),\n defaultProfiles: readList(subjectProfiles.defaultProfiles),\n resolveCandidates:\n typeof subjectProfiles.resolveCandidates === \"function\"\n ? (...args: unknown[]) =>\n (subjectProfiles.resolveCandidates as (...args: unknown[]) => unknown)(...args)\n : null,\n },\n overrides: {\n hostProxyService:\n overrides.hostProxyService && typeof overrides.hostProxyService === \"object\"\n ? (overrides.hostProxyService as StringRecord)\n : null,\n gatewayClient:\n overrides.gatewayClient && typeof overrides.gatewayClient === \"object\"\n ? (overrides.gatewayClient as StringRecord)\n : null,\n paymentHandler:\n overrides.paymentHandler && typeof overrides.paymentHandler === \"object\"\n ? (overrides.paymentHandler as StringRecord)\n : null,\n resolvePolicyRequest:\n typeof overrides.resolvePolicyRequest === \"function\"\n ? (...args: unknown[]) =>\n (overrides.resolvePolicyRequest as (...args: unknown[]) => unknown)(...args)\n : null,\n },\n };\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { extractHostedPaymentSessionId } from "@xapps/server-sdk";
|
|
1
|
+
import { extractHostedPaymentSessionId } from "@xapps-platform/server-sdk";
|
|
2
2
|
export declare function createPaymentRuntime(options?: {}, deps?: {}): Promise<{
|
|
3
3
|
gatewayClient: any;
|
|
4
4
|
paymentHandler: any;
|
|
5
5
|
paymentSettings: {
|
|
6
|
-
ownerIssuer:
|
|
6
|
+
ownerIssuer: "tenant" | "publisher";
|
|
7
7
|
paymentUrl: any;
|
|
8
8
|
returnSecret: any;
|
|
9
9
|
returnSecretRef: any;
|
|
@@ -16,7 +16,7 @@ export declare function createPaymentEvidenceHandler({ payments, gatewayClient,
|
|
|
16
16
|
payments?: {};
|
|
17
17
|
gatewayClient?: any;
|
|
18
18
|
issuer?: string;
|
|
19
|
-
}): Promise<import("@xapps/server-sdk").PaymentHandler>;
|
|
19
|
+
}): Promise<import("@xapps-platform/server-sdk").PaymentHandler>;
|
|
20
20
|
export declare function buildHostedGatewayPaymentUrl(input?: {}, runtime?: {}): Promise<string>;
|
|
21
21
|
export declare function buildModeHostedGatewayPaymentUrl(input?: {}, defaults?: {}, runtime?: {}): Promise<string>;
|
|
22
22
|
export declare function registerPaymentPageAssetRoute(fastify: any, { pagePath, pageFile }?: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"paymentRuntime.d.ts","sourceRoot":"","sources":["../../src/backend/paymentRuntime.ts"],"names":[],"mappings":"AAEA,OAAO,EAGL,6BAA6B,EAC9B,MAAM,
|
|
1
|
+
{"version":3,"file":"paymentRuntime.d.ts","sourceRoot":"","sources":["../../src/backend/paymentRuntime.ts"],"names":[],"mappings":"AAEA,OAAO,EAGL,6BAA6B,EAC9B,MAAM,4BAA4B,CAAC;AA6CpC,wBAAsB,oBAAoB,CAAC,OAAO,KAAK,EAAE,IAAI,KAAK;;;;;;;;;;;;GAoCjE;AAED,wBAAsB,4BAA4B,CAAC,EACjD,QAAa,EACb,aAAoB,EACpB,MAAW,EACX,wBAAwB,GACzB;;;;CAAK,gEAeL;AAED,wBAAsB,4BAA4B,CAAC,KAAK,KAAK,EAAE,OAAO,KAAK,mBAmC1E;AAED,wBAAsB,gCAAgC,CAAC,KAAK,KAAK,EAAE,QAAQ,KAAK,EAAE,OAAO,KAAK,mBA+B7F;AAED,wBAAsB,6BAA6B,CACjD,OAAO,KAAA,EACP,EAAE,QAAiC,EAAE,QAAa,EAAE;;;CAAK,iBAM1D;AAED,wBAAsB,4BAA4B,CAChD,OAAO,KAAA,EACP,EAAE,aAAoB,EAAE,UAAkC,EAAE;;;CAAK,iBAuElE;AAED,OAAO,EAAE,6BAA6B,EAAE,CAAC"}
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
buildHostedGatewayPaymentUrlFromGuardContext,
|
|
4
4
|
createPaymentHandlerAsync,
|
|
5
5
|
extractHostedPaymentSessionId
|
|
6
|
-
} from "@xapps/server-sdk";
|
|
6
|
+
} from "@xapps-platform/server-sdk";
|
|
7
7
|
import { normalizeOwnerIssuer, readRecord, readString } from "./options.js";
|
|
8
8
|
function mapHostedSessionResult(input = {}) {
|
|
9
9
|
return {
|