@xapps-platform/backend-kit 0.1.1
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 +196 -0
- package/dist/backend/modes/gateway-managed/payment.d.ts +23 -0
- package/dist/backend/modes/gateway-managed/payment.d.ts.map +1 -0
- package/dist/backend/modes/gateway-managed/payment.js +49 -0
- package/dist/backend/modes/gateway-managed/payment.js.map +7 -0
- package/dist/backend/modes/gateway-managed/paymentSession.d.ts +4 -0
- package/dist/backend/modes/gateway-managed/paymentSession.d.ts.map +1 -0
- package/dist/backend/modes/gateway-managed/paymentSession.js +16 -0
- package/dist/backend/modes/gateway-managed/paymentSession.js.map +7 -0
- package/dist/backend/modes/gateway-managed/policy.d.ts +68 -0
- package/dist/backend/modes/gateway-managed/policy.d.ts.map +1 -0
- package/dist/backend/modes/gateway-managed/policy.js +53 -0
- package/dist/backend/modes/gateway-managed/policy.js.map +7 -0
- package/dist/backend/modes/gateway-managed/policyContext.d.ts +5 -0
- package/dist/backend/modes/gateway-managed/policyContext.d.ts.map +1 -0
- package/dist/backend/modes/gateway-managed/policyContext.js +22 -0
- package/dist/backend/modes/gateway-managed/policyContext.js.map +7 -0
- package/dist/backend/modes/index.d.ts +72 -0
- package/dist/backend/modes/index.d.ts.map +1 -0
- package/dist/backend/modes/index.js +159 -0
- package/dist/backend/modes/index.js.map +7 -0
- package/dist/backend/modes/owner-managed/payment.d.ts +34 -0
- package/dist/backend/modes/owner-managed/payment.d.ts.map +1 -0
- package/dist/backend/modes/owner-managed/payment.js +75 -0
- package/dist/backend/modes/owner-managed/payment.js.map +7 -0
- package/dist/backend/modes/owner-managed/paymentAssets.d.ts +4 -0
- package/dist/backend/modes/owner-managed/paymentAssets.d.ts.map +1 -0
- package/dist/backend/modes/owner-managed/paymentAssets.js +11 -0
- package/dist/backend/modes/owner-managed/paymentAssets.js.map +7 -0
- package/dist/backend/modes/owner-managed/paymentPageApi.d.ts +4 -0
- package/dist/backend/modes/owner-managed/paymentPageApi.d.ts.map +1 -0
- package/dist/backend/modes/owner-managed/paymentPageApi.js +11 -0
- package/dist/backend/modes/owner-managed/paymentPageApi.js.map +7 -0
- package/dist/backend/modes/owner-managed/paymentSession.d.ts +4 -0
- package/dist/backend/modes/owner-managed/paymentSession.d.ts.map +1 -0
- package/dist/backend/modes/owner-managed/paymentSession.js +18 -0
- package/dist/backend/modes/owner-managed/paymentSession.js.map +7 -0
- package/dist/backend/modes/owner-managed/policy.d.ts +68 -0
- package/dist/backend/modes/owner-managed/policy.d.ts.map +1 -0
- package/dist/backend/modes/owner-managed/policy.js +53 -0
- package/dist/backend/modes/owner-managed/policy.js.map +7 -0
- package/dist/backend/modes/owner-managed/policyContext.d.ts +5 -0
- package/dist/backend/modes/owner-managed/policyContext.d.ts.map +1 -0
- package/dist/backend/modes/owner-managed/policyContext.js +26 -0
- package/dist/backend/modes/owner-managed/policyContext.js.map +7 -0
- package/dist/backend/modes/publisher-delegated/payment.d.ts +23 -0
- package/dist/backend/modes/publisher-delegated/payment.d.ts.map +1 -0
- package/dist/backend/modes/publisher-delegated/payment.js +50 -0
- package/dist/backend/modes/publisher-delegated/payment.js.map +7 -0
- package/dist/backend/modes/publisher-delegated/paymentSession.d.ts +4 -0
- package/dist/backend/modes/publisher-delegated/paymentSession.d.ts.map +1 -0
- package/dist/backend/modes/publisher-delegated/paymentSession.js +16 -0
- package/dist/backend/modes/publisher-delegated/paymentSession.js.map +7 -0
- package/dist/backend/modes/publisher-delegated/policy.d.ts +68 -0
- package/dist/backend/modes/publisher-delegated/policy.d.ts.map +1 -0
- package/dist/backend/modes/publisher-delegated/policy.js +53 -0
- package/dist/backend/modes/publisher-delegated/policy.js.map +7 -0
- package/dist/backend/modes/publisher-delegated/policyContext.d.ts +5 -0
- package/dist/backend/modes/publisher-delegated/policyContext.d.ts.map +1 -0
- package/dist/backend/modes/publisher-delegated/policyContext.js +22 -0
- package/dist/backend/modes/publisher-delegated/policyContext.js.map +7 -0
- package/dist/backend/modes/tenant-delegated/payment.d.ts +23 -0
- package/dist/backend/modes/tenant-delegated/payment.d.ts.map +1 -0
- package/dist/backend/modes/tenant-delegated/payment.js +50 -0
- package/dist/backend/modes/tenant-delegated/payment.js.map +7 -0
- package/dist/backend/modes/tenant-delegated/paymentSession.d.ts +4 -0
- package/dist/backend/modes/tenant-delegated/paymentSession.d.ts.map +1 -0
- package/dist/backend/modes/tenant-delegated/paymentSession.js +16 -0
- package/dist/backend/modes/tenant-delegated/paymentSession.js.map +7 -0
- package/dist/backend/modes/tenant-delegated/policy.d.ts +68 -0
- package/dist/backend/modes/tenant-delegated/policy.d.ts.map +1 -0
- package/dist/backend/modes/tenant-delegated/policy.js +53 -0
- package/dist/backend/modes/tenant-delegated/policy.js.map +7 -0
- package/dist/backend/modes/tenant-delegated/policyContext.d.ts +5 -0
- package/dist/backend/modes/tenant-delegated/policyContext.d.ts.map +1 -0
- package/dist/backend/modes/tenant-delegated/policyContext.js +22 -0
- package/dist/backend/modes/tenant-delegated/policyContext.js.map +7 -0
- package/dist/backend/modules.d.ts +33 -0
- package/dist/backend/modules.d.ts.map +1 -0
- package/dist/backend/modules.js +100 -0
- package/dist/backend/modules.js.map +7 -0
- package/dist/backend/options.d.ts +78 -0
- package/dist/backend/options.d.ts.map +1 -0
- package/dist/backend/options.js +153 -0
- package/dist/backend/options.js.map +7 -0
- package/dist/backend/paymentRuntime.d.ts +31 -0
- package/dist/backend/paymentRuntime.d.ts.map +1 -0
- package/dist/backend/paymentRuntime.js +231 -0
- package/dist/backend/paymentRuntime.js.map +7 -0
- package/dist/backend/policies/common.d.ts +102 -0
- package/dist/backend/policies/common.d.ts.map +1 -0
- package/dist/backend/policies/common.js +226 -0
- package/dist/backend/policies/common.js.map +7 -0
- package/dist/backend/routes/gateway/guard.d.ts +7 -0
- package/dist/backend/routes/gateway/guard.d.ts.map +1 -0
- package/dist/backend/routes/gateway/guard.js +89 -0
- package/dist/backend/routes/gateway/guard.js.map +7 -0
- package/dist/backend/routes/gateway/hostApi.d.ts +8 -0
- package/dist/backend/routes/gateway/hostApi.d.ts.map +1 -0
- package/dist/backend/routes/gateway/hostApi.js +45 -0
- package/dist/backend/routes/gateway/hostApi.js.map +7 -0
- package/dist/backend/routes/gateway/hostApiBridge.d.ts +5 -0
- package/dist/backend/routes/gateway/hostApiBridge.d.ts.map +1 -0
- package/dist/backend/routes/gateway/hostApiBridge.js +61 -0
- package/dist/backend/routes/gateway/hostApiBridge.js.map +7 -0
- package/dist/backend/routes/gateway/hostApiCore.d.ts +5 -0
- package/dist/backend/routes/gateway/hostApiCore.d.ts.map +1 -0
- package/dist/backend/routes/gateway/hostApiCore.js +95 -0
- package/dist/backend/routes/gateway/hostApiCore.js.map +7 -0
- package/dist/backend/routes/gateway/hostApiLifecycle.d.ts +5 -0
- package/dist/backend/routes/gateway/hostApiLifecycle.d.ts.map +1 -0
- package/dist/backend/routes/gateway/hostApiLifecycle.js +80 -0
- package/dist/backend/routes/gateway/hostApiLifecycle.js.map +7 -0
- package/dist/backend/routes/gateway/hostContractBoundary.d.ts +25 -0
- package/dist/backend/routes/gateway/hostContractBoundary.d.ts.map +1 -0
- package/dist/backend/routes/gateway/hostContractBoundary.js +43 -0
- package/dist/backend/routes/gateway/hostContractBoundary.js.map +7 -0
- package/dist/backend/routes/gateway/payment.d.ts +4 -0
- package/dist/backend/routes/gateway/payment.d.ts.map +1 -0
- package/dist/backend/routes/gateway/payment.js +10 -0
- package/dist/backend/routes/gateway/payment.js.map +7 -0
- package/dist/backend/routes/gateway/shared.d.ts +36 -0
- package/dist/backend/routes/gateway/shared.d.ts.map +1 -0
- package/dist/backend/routes/gateway/shared.js +208 -0
- package/dist/backend/routes/gateway/shared.js.map +7 -0
- package/dist/backend/routes/gateway/subjectProfiles.d.ts +2 -0
- package/dist/backend/routes/gateway/subjectProfiles.d.ts.map +1 -0
- package/dist/backend/routes/gateway/subjectProfiles.js +150 -0
- package/dist/backend/routes/gateway/subjectProfiles.js.map +7 -0
- package/dist/backend/routes/health.d.ts +2 -0
- package/dist/backend/routes/health.d.ts.map +1 -0
- package/dist/backend/routes/health.js +20 -0
- package/dist/backend/routes/health.js.map +7 -0
- package/dist/backend/routes/reference.d.ts +2 -0
- package/dist/backend/routes/reference.d.ts.map +1 -0
- package/dist/backend/routes/reference.js +414 -0
- package/dist/backend/routes/reference.js.map +7 -0
- package/dist/index.d.ts +10 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +81 -0
- package/dist/index.js.map +7 -0
- package/package.json +42 -0
package/README.md
ADDED
|
@@ -0,0 +1,196 @@
|
|
|
1
|
+
# @xapps-platform/backend-kit
|
|
2
|
+
|
|
3
|
+
Modular Node backend kit for the current Xapps backend contract.
|
|
4
|
+
|
|
5
|
+
Current public surface:
|
|
6
|
+
|
|
7
|
+
- backend composition for the shipped integrator contract
|
|
8
|
+
|
|
9
|
+
Direction:
|
|
10
|
+
|
|
11
|
+
- Node and PHP variants should converge on the same backend contract
|
|
12
|
+
- actor differences should live in adapters, rights/scope, config, and data access
|
|
13
|
+
- not in duplicated platform backend logic
|
|
14
|
+
|
|
15
|
+
This package sits above:
|
|
16
|
+
|
|
17
|
+
- `@xapps-platform/server-sdk`
|
|
18
|
+
|
|
19
|
+
Use it when you want a working backend with default routes, default modes, and
|
|
20
|
+
override seams, while keeping the later shared tenant/publisher direction
|
|
21
|
+
open. The current shipped reference consumers are still tenant backends, but
|
|
22
|
+
the package direction is actor-agnostic where possible.
|
|
23
|
+
|
|
24
|
+
This is now a real package, not a placeholder or extraction stub. Keep the
|
|
25
|
+
public entry surface stable and split internal package code behind it.
|
|
26
|
+
|
|
27
|
+
Current package shape:
|
|
28
|
+
|
|
29
|
+
- TypeScript source in `src/*`
|
|
30
|
+
- ESM Node outputs in `dist/*`
|
|
31
|
+
- public package exports stay stable while internal modules remain split
|
|
32
|
+
|
|
33
|
+
## Start Here
|
|
34
|
+
|
|
35
|
+
Consumer rule:
|
|
36
|
+
|
|
37
|
+
- import `@xapps-platform/backend-kit`
|
|
38
|
+
- import package entry surfaces such as `@xapps-platform/backend-kit/backend/...`
|
|
39
|
+
- do not consume raw `src/...` files directly from apps
|
|
40
|
+
|
|
41
|
+
## What It Gives You
|
|
42
|
+
|
|
43
|
+
The current package surface provides:
|
|
44
|
+
|
|
45
|
+
- backend-kit option normalization
|
|
46
|
+
- backend-kit composition
|
|
47
|
+
- default route surface
|
|
48
|
+
- default mode tree
|
|
49
|
+
- payment runtime assembly
|
|
50
|
+
- host-proxy service assembly
|
|
51
|
+
- subject-profile sourcing hooks
|
|
52
|
+
|
|
53
|
+
Internal package structure is intentionally modular:
|
|
54
|
+
|
|
55
|
+
- `src/index.ts`
|
|
56
|
+
thin public facade
|
|
57
|
+
- `src/backend/options.ts`
|
|
58
|
+
option normalization and config shaping
|
|
59
|
+
- `src/backend/paymentRuntime.ts`
|
|
60
|
+
payment runtime assembly and payment-page API helpers
|
|
61
|
+
- `src/backend/modules.ts`
|
|
62
|
+
backend module composition
|
|
63
|
+
- `src/backend/modes/*`
|
|
64
|
+
explicit default mode tree
|
|
65
|
+
- `src/backend/routes/*`
|
|
66
|
+
explicit default route tree
|
|
67
|
+
|
|
68
|
+
Current route surface includes:
|
|
69
|
+
|
|
70
|
+
- health
|
|
71
|
+
- reference
|
|
72
|
+
- host core
|
|
73
|
+
- lifecycle
|
|
74
|
+
- bridge
|
|
75
|
+
- payment
|
|
76
|
+
- guard
|
|
77
|
+
- subject profiles
|
|
78
|
+
|
|
79
|
+
For hosted-integrator mode, the host API surface can also enforce explicit
|
|
80
|
+
frontend-origin allowlists through `host.allowedOrigins`. Leave it empty for
|
|
81
|
+
same-origin consumers; set it when the browser host runs on another domain and
|
|
82
|
+
must call the tenant backend cross-origin. In practice that allowlist covers
|
|
83
|
+
the browser-facing host API surface, including:
|
|
84
|
+
|
|
85
|
+
- `/api/host-config`
|
|
86
|
+
- `/api/resolve-subject`
|
|
87
|
+
- `/api/create-catalog-session`
|
|
88
|
+
- `/api/create-widget-session`
|
|
89
|
+
- lifecycle routes under `/api/install*`
|
|
90
|
+
- bridge routes under `/api/bridge/*`
|
|
91
|
+
|
|
92
|
+
For the secure long-term hosted-integrator path, use a short-lived bootstrap
|
|
93
|
+
token instead of trusting browser subject input:
|
|
94
|
+
|
|
95
|
+
- integrator backend calls `POST /api/host-bootstrap`
|
|
96
|
+
- tenant backend authenticates with `X-API-Key`
|
|
97
|
+
- tenant backend resolves the subject through the gateway/host proxy
|
|
98
|
+
- tenant backend returns a short-lived `bootstrapToken`
|
|
99
|
+
- browser host sends that token in `X-Xapps-Host-Bootstrap`
|
|
100
|
+
|
|
101
|
+
In the current design, the tenant backend signs that bootstrap token locally.
|
|
102
|
+
The gateway participates in subject resolution, but does not issue the browser
|
|
103
|
+
bootstrap token itself.
|
|
104
|
+
|
|
105
|
+
That token should be treated as temporary bootstrap state. After expiry, the
|
|
106
|
+
frontend should re-run bootstrap instead of trying to continue on stored
|
|
107
|
+
`subjectId` alone.
|
|
108
|
+
|
|
109
|
+
Recommended host config for that mode:
|
|
110
|
+
|
|
111
|
+
- `host.allowedOrigins`
|
|
112
|
+
- `host.bootstrap.apiKeys`
|
|
113
|
+
- `host.bootstrap.signingSecret`
|
|
114
|
+
- optional `host.bootstrap.ttlSeconds`
|
|
115
|
+
|
|
116
|
+
Current default mode tree includes:
|
|
117
|
+
|
|
118
|
+
- `gateway_managed`
|
|
119
|
+
- `tenant_delegated`
|
|
120
|
+
- `publisher_delegated`
|
|
121
|
+
- `owner_managed`
|
|
122
|
+
|
|
123
|
+
For `owner_managed`, the packaged default can run tenant-owned or
|
|
124
|
+
publisher-owned. Use `payments.ownerIssuer` when the backend should default the
|
|
125
|
+
owner-managed lane to `publisher` instead of `tenant` when the guard config
|
|
126
|
+
does not narrow the issuer explicitly.
|
|
127
|
+
|
|
128
|
+
If the owner-managed payment page redirects back to an integrator frontend on a
|
|
129
|
+
different domain, include that frontend origin in the payment return URL
|
|
130
|
+
allowlist as well.
|
|
131
|
+
|
|
132
|
+
## What Should Stay Local
|
|
133
|
+
|
|
134
|
+
A consuming app should still keep these local when they are actor-specific:
|
|
135
|
+
|
|
136
|
+
- startup and env/config mapping
|
|
137
|
+
- branding and host pages/assets
|
|
138
|
+
- actor-specific subject-profile catalogs or resolver hooks
|
|
139
|
+
- explicit mode or route overrides
|
|
140
|
+
|
|
141
|
+
## Recommended Consumer Structure
|
|
142
|
+
|
|
143
|
+
Start small and keep local ownership obvious.
|
|
144
|
+
|
|
145
|
+
```text
|
|
146
|
+
tenant-backend/
|
|
147
|
+
server.js
|
|
148
|
+
lib/
|
|
149
|
+
config.js
|
|
150
|
+
appSurfaceModule.js
|
|
151
|
+
subjectProfiles/defaultProfiles.js
|
|
152
|
+
routes/
|
|
153
|
+
host.js
|
|
154
|
+
host/
|
|
155
|
+
pages.js
|
|
156
|
+
shared.js
|
|
157
|
+
modes/
|
|
158
|
+
index.js
|
|
159
|
+
*/README.md
|
|
160
|
+
public/
|
|
161
|
+
branding-assets...
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
Recommended override order:
|
|
165
|
+
|
|
166
|
+
1. backend-kit options
|
|
167
|
+
2. local branding/assets and subject-profile data
|
|
168
|
+
3. injected services or resolver hooks
|
|
169
|
+
4. explicit route or mode overrides
|
|
170
|
+
|
|
171
|
+
Do not copy package default route implementations into the app just to mirror
|
|
172
|
+
the package layout.
|
|
173
|
+
|
|
174
|
+
## When To Drop Lower
|
|
175
|
+
|
|
176
|
+
Use `@xapps-platform/server-sdk` directly only when the consumer needs a lower-level
|
|
177
|
+
seam that the backend kit intentionally does not own.
|
|
178
|
+
|
|
179
|
+
## Rule
|
|
180
|
+
|
|
181
|
+
Do not add route-level wrapper aliases here.
|
|
182
|
+
|
|
183
|
+
Keep the public surface:
|
|
184
|
+
|
|
185
|
+
- module oriented
|
|
186
|
+
- config driven
|
|
187
|
+
- hook based
|
|
188
|
+
|
|
189
|
+
Keep internals:
|
|
190
|
+
|
|
191
|
+
- explicit
|
|
192
|
+
- modular
|
|
193
|
+
- safe to refactor behind the stable entry surface
|
|
194
|
+
|
|
195
|
+
Node and PHP should keep the same backend behavior in the end. Differences
|
|
196
|
+
should be runtime-adapter concerns, not separate platform feature lines.
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export declare const paymentMode = "gateway_managed";
|
|
2
|
+
export declare const paymentModeLabel = "Gateway managed";
|
|
3
|
+
export declare const paymentModeDescription = "Gateway owns hosted checkout and provider execution. Tenant mainly consumes the lane.";
|
|
4
|
+
export declare const paymentSessionModel: {
|
|
5
|
+
uses_gateway_payment_session: boolean;
|
|
6
|
+
tenant_owns_payment_page: boolean;
|
|
7
|
+
tenant_owns_payment_session_endpoints: boolean;
|
|
8
|
+
tenant_calls_gateway_payment_session_api_directly: boolean;
|
|
9
|
+
tenant_session_reference: string;
|
|
10
|
+
};
|
|
11
|
+
export declare const requiredSettings: string[];
|
|
12
|
+
export declare const paymentResponsibilities: string[];
|
|
13
|
+
export declare const paymentEndpoints: any[];
|
|
14
|
+
export declare const referenceEndpointGroup: {
|
|
15
|
+
key: string;
|
|
16
|
+
label: string;
|
|
17
|
+
when_to_use: string;
|
|
18
|
+
endpoints: any[];
|
|
19
|
+
notes: string[];
|
|
20
|
+
};
|
|
21
|
+
export declare function buildPaymentUrl(input: any, runtime?: {}): Promise<string>;
|
|
22
|
+
export declare function registerRoutes(): Promise<void>;
|
|
23
|
+
//# sourceMappingURL=payment.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"payment.d.ts","sourceRoot":"","sources":["../../../../src/backend/modes/gateway-managed/payment.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,WAAW,oBAAoB,CAAC;AAC7C,eAAO,MAAM,gBAAgB,oBAAoB,CAAC;AAClD,eAAO,MAAM,sBAAsB,0FACsD,CAAC;AAC1F,eAAO,MAAM,mBAAmB;;;;;;CAM/B,CAAC;AACF,eAAO,MAAM,gBAAgB,UAG5B,CAAC;AACF,eAAO,MAAM,uBAAuB,UAInC,CAAC;AACF,eAAO,MAAM,gBAAgB,OAAK,CAAC;AAEnC,eAAO,MAAM,sBAAsB;;;;;;CAUlC,CAAC;AAEF,wBAAsB,eAAe,CAAC,KAAK,KAAA,EAAE,OAAO,KAAK,mBAExD;AAED,wBAAsB,cAAc,kBAAK"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { buildPaymentUrl as buildGatewayManagedPaymentUrl } from "./paymentSession.js";
|
|
2
|
+
const paymentMode = "gateway_managed";
|
|
3
|
+
const paymentModeLabel = "Gateway managed";
|
|
4
|
+
const paymentModeDescription = "Gateway owns hosted checkout and provider execution. Tenant mainly consumes the lane.";
|
|
5
|
+
const paymentSessionModel = {
|
|
6
|
+
uses_gateway_payment_session: true,
|
|
7
|
+
tenant_owns_payment_page: false,
|
|
8
|
+
tenant_owns_payment_session_endpoints: false,
|
|
9
|
+
tenant_calls_gateway_payment_session_api_directly: false,
|
|
10
|
+
tenant_session_reference: "gateway-hosted session only"
|
|
11
|
+
};
|
|
12
|
+
const requiredSettings = [
|
|
13
|
+
"XCONECT_GUARD_INGEST_API_KEY",
|
|
14
|
+
"XCONECT_TENANT_PAYMENT_RETURN_SECRET or XCONECT_TENANT_PAYMENT_RETURN_SECRET_REF"
|
|
15
|
+
];
|
|
16
|
+
const paymentResponsibilities = [
|
|
17
|
+
"keep gateway-managed payment lane configured",
|
|
18
|
+
"do not implement a tenant payment page for this mode",
|
|
19
|
+
"reuse gateway-hosted checkout returned by the platform"
|
|
20
|
+
];
|
|
21
|
+
const paymentEndpoints = [];
|
|
22
|
+
const referenceEndpointGroup = {
|
|
23
|
+
key: "gateway_managed_payment_reference",
|
|
24
|
+
label: "Gateway-managed payment reference",
|
|
25
|
+
when_to_use: "Use this when the tenant keeps the first-lane managed payment flow and the gateway owns checkout orchestration.",
|
|
26
|
+
endpoints: [],
|
|
27
|
+
notes: [
|
|
28
|
+
"Existing xapps use the gateway-hosted payment page for this mode.",
|
|
29
|
+
"The tenant backend participates through guard execution and tenant configuration, not through a tenant payment page."
|
|
30
|
+
]
|
|
31
|
+
};
|
|
32
|
+
async function buildPaymentUrl(input, runtime = {}) {
|
|
33
|
+
return buildGatewayManagedPaymentUrl(input, runtime);
|
|
34
|
+
}
|
|
35
|
+
async function registerRoutes() {
|
|
36
|
+
}
|
|
37
|
+
export {
|
|
38
|
+
buildPaymentUrl,
|
|
39
|
+
paymentEndpoints,
|
|
40
|
+
paymentMode,
|
|
41
|
+
paymentModeDescription,
|
|
42
|
+
paymentModeLabel,
|
|
43
|
+
paymentResponsibilities,
|
|
44
|
+
paymentSessionModel,
|
|
45
|
+
referenceEndpointGroup,
|
|
46
|
+
registerRoutes,
|
|
47
|
+
requiredSettings
|
|
48
|
+
};
|
|
49
|
+
//# sourceMappingURL=payment.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/backend/modes/gateway-managed/payment.ts"],
|
|
4
|
+
"sourcesContent": ["// @ts-nocheck\nimport { buildPaymentUrl as buildGatewayManagedPaymentUrl } from \"./paymentSession.js\";\n\nexport const paymentMode = \"gateway_managed\";\nexport const paymentModeLabel = \"Gateway managed\";\nexport const paymentModeDescription =\n \"Gateway owns hosted checkout and provider execution. Tenant mainly consumes the lane.\";\nexport const paymentSessionModel = {\n uses_gateway_payment_session: true,\n tenant_owns_payment_page: false,\n tenant_owns_payment_session_endpoints: false,\n tenant_calls_gateway_payment_session_api_directly: false,\n tenant_session_reference: \"gateway-hosted session only\",\n};\nexport const requiredSettings = [\n \"XCONECT_GUARD_INGEST_API_KEY\",\n \"XCONECT_TENANT_PAYMENT_RETURN_SECRET or XCONECT_TENANT_PAYMENT_RETURN_SECRET_REF\",\n];\nexport const paymentResponsibilities = [\n \"keep gateway-managed payment lane configured\",\n \"do not implement a tenant payment page for this mode\",\n \"reuse gateway-hosted checkout returned by the platform\",\n];\nexport const paymentEndpoints = [];\n\nexport const referenceEndpointGroup = {\n key: \"gateway_managed_payment_reference\",\n label: \"Gateway-managed payment reference\",\n when_to_use:\n \"Use this when the tenant keeps the first-lane managed payment flow and the gateway owns checkout orchestration.\",\n endpoints: [],\n notes: [\n \"Existing xapps use the gateway-hosted payment page for this mode.\",\n \"The tenant backend participates through guard execution and tenant configuration, not through a tenant payment page.\",\n ],\n};\n\nexport async function buildPaymentUrl(input, runtime = {}) {\n return buildGatewayManagedPaymentUrl(input, runtime);\n}\n\nexport async function registerRoutes() {}\n"],
|
|
5
|
+
"mappings": "AACA,SAAS,mBAAmB,qCAAqC;AAE1D,MAAM,cAAc;AACpB,MAAM,mBAAmB;AACzB,MAAM,yBACX;AACK,MAAM,sBAAsB;AAAA,EACjC,8BAA8B;AAAA,EAC9B,0BAA0B;AAAA,EAC1B,uCAAuC;AAAA,EACvC,mDAAmD;AAAA,EACnD,0BAA0B;AAC5B;AACO,MAAM,mBAAmB;AAAA,EAC9B;AAAA,EACA;AACF;AACO,MAAM,0BAA0B;AAAA,EACrC;AAAA,EACA;AAAA,EACA;AACF;AACO,MAAM,mBAAmB,CAAC;AAE1B,MAAM,yBAAyB;AAAA,EACpC,KAAK;AAAA,EACL,OAAO;AAAA,EACP,aACE;AAAA,EACF,WAAW,CAAC;AAAA,EACZ,OAAO;AAAA,IACL;AAAA,IACA;AAAA,EACF;AACF;AAEA,eAAsB,gBAAgB,OAAO,UAAU,CAAC,GAAG;AACzD,SAAO,8BAA8B,OAAO,OAAO;AACrD;AAEA,eAAsB,iBAAiB;AAAC;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"paymentSession.d.ts","sourceRoot":"","sources":["../../../../src/backend/modes/gateway-managed/paymentSession.ts"],"names":[],"mappings":"AACA,OAAO,EAAoC,6BAA6B,EAAE,MAAM,mBAAmB,CAAC;AAEpG,wBAAsB,eAAe,CAAC,KAAK,KAAA,EAAE,OAAO,KAAK,mBASxD;AAED,OAAO,EAAE,6BAA6B,EAAE,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { buildModeHostedGatewayPaymentUrl, extractHostedPaymentSessionId } from "../../../index.js";
|
|
2
|
+
async function buildPaymentUrl(input, runtime = {}) {
|
|
3
|
+
return buildModeHostedGatewayPaymentUrl(
|
|
4
|
+
input,
|
|
5
|
+
{
|
|
6
|
+
fallbackIssuer: "gateway",
|
|
7
|
+
storedIssuer: "gateway"
|
|
8
|
+
},
|
|
9
|
+
runtime
|
|
10
|
+
);
|
|
11
|
+
}
|
|
12
|
+
export {
|
|
13
|
+
buildPaymentUrl,
|
|
14
|
+
extractHostedPaymentSessionId
|
|
15
|
+
};
|
|
16
|
+
//# sourceMappingURL=paymentSession.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/backend/modes/gateway-managed/paymentSession.ts"],
|
|
4
|
+
"sourcesContent": ["// @ts-nocheck\nimport { buildModeHostedGatewayPaymentUrl, extractHostedPaymentSessionId } from \"../../../index.js\";\n\nexport async function buildPaymentUrl(input, runtime = {}) {\n return buildModeHostedGatewayPaymentUrl(\n input,\n {\n fallbackIssuer: \"gateway\",\n storedIssuer: \"gateway\",\n },\n runtime,\n );\n}\n\nexport { extractHostedPaymentSessionId };\n"],
|
|
5
|
+
"mappings": "AACA,SAAS,kCAAkC,qCAAqC;AAEhF,eAAsB,gBAAgB,OAAO,UAAU,CAAC,GAAG;AACzD,SAAO;AAAA,IACL;AAAA,IACA;AAAA,MACE,gBAAgB;AAAA,MAChB,cAAc;AAAA,IAChB;AAAA,IACA;AAAA,EACF;AACF;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
export declare const policyResponsibilities: string[];
|
|
2
|
+
export declare const policyEndpoints: {
|
|
3
|
+
method: string;
|
|
4
|
+
path: string;
|
|
5
|
+
purpose: string;
|
|
6
|
+
}[];
|
|
7
|
+
export declare function buildBlockedResult(input: any, runtime?: {}): Promise<{
|
|
8
|
+
allowed: boolean;
|
|
9
|
+
reason: any;
|
|
10
|
+
message: any;
|
|
11
|
+
action: import("@xapps/server-sdk").PaymentGuardAction;
|
|
12
|
+
details: {
|
|
13
|
+
verification_failure?: any;
|
|
14
|
+
uiRequired: boolean;
|
|
15
|
+
orchestration: {
|
|
16
|
+
reference_mode?: any;
|
|
17
|
+
mode: string;
|
|
18
|
+
surface: string;
|
|
19
|
+
status: string;
|
|
20
|
+
payment_session_id: any;
|
|
21
|
+
payment_mode: any;
|
|
22
|
+
};
|
|
23
|
+
payment_status: any;
|
|
24
|
+
expected_amount: any;
|
|
25
|
+
expected_currency: any;
|
|
26
|
+
};
|
|
27
|
+
}>;
|
|
28
|
+
export declare function resolvePolicyResult(input: any, runtime?: {}): Promise<{
|
|
29
|
+
allowed: boolean;
|
|
30
|
+
reason: string;
|
|
31
|
+
message: string;
|
|
32
|
+
details: {
|
|
33
|
+
reference_mode?: any;
|
|
34
|
+
payment_status: any;
|
|
35
|
+
orchestrationApproved: any;
|
|
36
|
+
gatewayPaymentVerified: any;
|
|
37
|
+
paidByGatewayHint: boolean;
|
|
38
|
+
paidByPlainStatusFallback: boolean;
|
|
39
|
+
paidByVerifiedEvidence: any;
|
|
40
|
+
verified_contract: any;
|
|
41
|
+
payment_mode: any;
|
|
42
|
+
};
|
|
43
|
+
} | {
|
|
44
|
+
allowed: boolean;
|
|
45
|
+
reason: any;
|
|
46
|
+
message: any;
|
|
47
|
+
action: import("@xapps/server-sdk").PaymentGuardAction;
|
|
48
|
+
details: {
|
|
49
|
+
verification_failure?: any;
|
|
50
|
+
uiRequired: boolean;
|
|
51
|
+
orchestration: {
|
|
52
|
+
reference_mode?: any;
|
|
53
|
+
mode: string;
|
|
54
|
+
surface: string;
|
|
55
|
+
status: string;
|
|
56
|
+
payment_session_id: any;
|
|
57
|
+
payment_mode: any;
|
|
58
|
+
};
|
|
59
|
+
payment_status: any;
|
|
60
|
+
expected_amount: any;
|
|
61
|
+
expected_currency: any;
|
|
62
|
+
};
|
|
63
|
+
}>;
|
|
64
|
+
export declare function resolvePolicyRequest(payloadInput: any, { log, paymentRuntime }: {
|
|
65
|
+
log: any;
|
|
66
|
+
paymentRuntime?: {};
|
|
67
|
+
}): Promise<any>;
|
|
68
|
+
//# sourceMappingURL=policy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../../../../src/backend/modes/gateway-managed/policy.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,sBAAsB,UAGlC,CAAC;AACF,eAAO,MAAM,eAAe;;;;GAM3B,CAAC;AAMF,wBAAsB,kBAAkB,CAAC,KAAK,KAAA,EAAE,OAAO,KAAK;;;;;;;;;;;;;;;;;;;;GAM3D;AAED,wBAAsB,mBAAmB,CAAC,KAAK,KAAA,EAAE,OAAO,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAK5D;AAED,wBAAsB,oBAAoB,CAAC,YAAY,KAAA,EAAE,EAAE,GAAG,EAAE,cAAmB,EAAE;;;CAAA,gBASpF"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { resolveAllowedIssuers, resolveExpectedPaymentIssuer } from "./policyContext.js";
|
|
2
|
+
import {
|
|
3
|
+
buildPaymentPolicyAllowedResult,
|
|
4
|
+
buildPaymentPolicyBlockedResult,
|
|
5
|
+
resolvePolicyRequestCommon
|
|
6
|
+
} from "../../policies/common.js";
|
|
7
|
+
import { extractHostedPaymentSessionId } from "./paymentSession.js";
|
|
8
|
+
import { buildPaymentUrl, paymentMode } from "./payment.js";
|
|
9
|
+
const policyResponsibilities = [
|
|
10
|
+
"verify signed payment evidence for the gateway-managed lane",
|
|
11
|
+
"block and return the gateway-hosted payment action when evidence is missing"
|
|
12
|
+
];
|
|
13
|
+
const policyEndpoints = [
|
|
14
|
+
{
|
|
15
|
+
method: "POST",
|
|
16
|
+
path: "/xapps/requests",
|
|
17
|
+
purpose: "Runs the tenant payment policy for gateway-managed xapps."
|
|
18
|
+
}
|
|
19
|
+
];
|
|
20
|
+
function buildAllowedResult(input) {
|
|
21
|
+
return buildPaymentPolicyAllowedResult(input, { paymentMode });
|
|
22
|
+
}
|
|
23
|
+
async function buildBlockedResult(input, runtime = {}) {
|
|
24
|
+
return buildPaymentPolicyBlockedResult(input, {
|
|
25
|
+
buildPaymentUrl: (payload) => buildPaymentUrl(payload, runtime),
|
|
26
|
+
extractHostedPaymentSessionId,
|
|
27
|
+
modeMeta: { paymentMode }
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
async function resolvePolicyResult(input, runtime = {}) {
|
|
31
|
+
if (input.paidByVerifiedEvidence && !input.verificationFailure) {
|
|
32
|
+
return buildAllowedResult(input);
|
|
33
|
+
}
|
|
34
|
+
return buildBlockedResult(input, runtime);
|
|
35
|
+
}
|
|
36
|
+
async function resolvePolicyRequest(payloadInput, { log, paymentRuntime = {} }) {
|
|
37
|
+
return resolvePolicyRequestCommon({
|
|
38
|
+
payloadInput,
|
|
39
|
+
log,
|
|
40
|
+
resolveAllowedIssuers,
|
|
41
|
+
resolveExpectedPaymentIssuer,
|
|
42
|
+
resolveModeResult: resolvePolicyResult,
|
|
43
|
+
paymentRuntime
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
export {
|
|
47
|
+
buildBlockedResult,
|
|
48
|
+
policyEndpoints,
|
|
49
|
+
policyResponsibilities,
|
|
50
|
+
resolvePolicyRequest,
|
|
51
|
+
resolvePolicyResult
|
|
52
|
+
};
|
|
53
|
+
//# sourceMappingURL=policy.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/backend/modes/gateway-managed/policy.ts"],
|
|
4
|
+
"sourcesContent": ["// @ts-nocheck\nimport { resolveAllowedIssuers, resolveExpectedPaymentIssuer } from \"./policyContext.js\";\nimport {\n buildPaymentPolicyAllowedResult,\n buildPaymentPolicyBlockedResult,\n resolvePolicyRequestCommon,\n} from \"../../policies/common.js\";\nimport { extractHostedPaymentSessionId } from \"./paymentSession.js\";\nimport { buildPaymentUrl, paymentMode } from \"./payment.js\";\n\nexport const policyResponsibilities = [\n \"verify signed payment evidence for the gateway-managed lane\",\n \"block and return the gateway-hosted payment action when evidence is missing\",\n];\nexport const policyEndpoints = [\n {\n method: \"POST\",\n path: \"/xapps/requests\",\n purpose: \"Runs the tenant payment policy for gateway-managed xapps.\",\n },\n];\n\nfunction buildAllowedResult(input) {\n return buildPaymentPolicyAllowedResult(input, { paymentMode });\n}\n\nexport async function buildBlockedResult(input, runtime = {}) {\n return buildPaymentPolicyBlockedResult(input, {\n buildPaymentUrl: (payload) => buildPaymentUrl(payload, runtime),\n extractHostedPaymentSessionId,\n modeMeta: { paymentMode },\n });\n}\n\nexport async function resolvePolicyResult(input, runtime = {}) {\n if (input.paidByVerifiedEvidence && !input.verificationFailure) {\n return buildAllowedResult(input);\n }\n return buildBlockedResult(input, runtime);\n}\n\nexport async function resolvePolicyRequest(payloadInput, { log, paymentRuntime = {} }) {\n return resolvePolicyRequestCommon({\n payloadInput,\n log,\n resolveAllowedIssuers,\n resolveExpectedPaymentIssuer,\n resolveModeResult: resolvePolicyResult,\n paymentRuntime,\n });\n}\n"],
|
|
5
|
+
"mappings": "AACA,SAAS,uBAAuB,oCAAoC;AACpE;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP,SAAS,qCAAqC;AAC9C,SAAS,iBAAiB,mBAAmB;AAEtC,MAAM,yBAAyB;AAAA,EACpC;AAAA,EACA;AACF;AACO,MAAM,kBAAkB;AAAA,EAC7B;AAAA,IACE,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,SAAS;AAAA,EACX;AACF;AAEA,SAAS,mBAAmB,OAAO;AACjC,SAAO,gCAAgC,OAAO,EAAE,YAAY,CAAC;AAC/D;AAEA,eAAsB,mBAAmB,OAAO,UAAU,CAAC,GAAG;AAC5D,SAAO,gCAAgC,OAAO;AAAA,IAC5C,iBAAiB,CAAC,YAAY,gBAAgB,SAAS,OAAO;AAAA,IAC9D;AAAA,IACA,UAAU,EAAE,YAAY;AAAA,EAC1B,CAAC;AACH;AAEA,eAAsB,oBAAoB,OAAO,UAAU,CAAC,GAAG;AAC7D,MAAI,MAAM,0BAA0B,CAAC,MAAM,qBAAqB;AAC9D,WAAO,mBAAmB,KAAK;AAAA,EACjC;AACA,SAAO,mBAAmB,OAAO,OAAO;AAC1C;AAEA,eAAsB,qBAAqB,cAAc,EAAE,KAAK,iBAAiB,CAAC,EAAE,GAAG;AACrF,SAAO,2BAA2B;AAAA,IAChC;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,mBAAmB;AAAA,IACnB;AAAA,EACF,CAAC;AACH;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { buildPaymentAction, hasUpstreamPaymentVerified, resolveMergedContext, resolvePriceAmount } from "../../policies/common.js";
|
|
2
|
+
export { buildPaymentAction, hasUpstreamPaymentVerified, resolveMergedContext, resolvePriceAmount };
|
|
3
|
+
export declare function resolveExpectedPaymentIssuer(): string;
|
|
4
|
+
export declare function resolveAllowedIssuers(guardConfig: any): string[];
|
|
5
|
+
//# sourceMappingURL=policyContext.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"policyContext.d.ts","sourceRoot":"","sources":["../../../../src/backend/modes/gateway-managed/policyContext.ts"],"names":[],"mappings":"AACA,OAAO,EACL,kBAAkB,EAClB,0BAA0B,EAE1B,oBAAoB,EACpB,kBAAkB,EACnB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,kBAAkB,EAAE,0BAA0B,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,CAAC;AAEpG,wBAAgB,4BAA4B,WAE3C;AAED,wBAAgB,qBAAqB,CAAC,WAAW,KAAA,YAEhD"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import {
|
|
2
|
+
buildPaymentAction,
|
|
3
|
+
hasUpstreamPaymentVerified,
|
|
4
|
+
normalizeAllowedIssuers,
|
|
5
|
+
resolveMergedContext,
|
|
6
|
+
resolvePriceAmount
|
|
7
|
+
} from "../../policies/common.js";
|
|
8
|
+
function resolveExpectedPaymentIssuer() {
|
|
9
|
+
return "gateway";
|
|
10
|
+
}
|
|
11
|
+
function resolveAllowedIssuers(guardConfig) {
|
|
12
|
+
return normalizeAllowedIssuers(guardConfig, "gateway");
|
|
13
|
+
}
|
|
14
|
+
export {
|
|
15
|
+
buildPaymentAction,
|
|
16
|
+
hasUpstreamPaymentVerified,
|
|
17
|
+
resolveAllowedIssuers,
|
|
18
|
+
resolveExpectedPaymentIssuer,
|
|
19
|
+
resolveMergedContext,
|
|
20
|
+
resolvePriceAmount
|
|
21
|
+
};
|
|
22
|
+
//# sourceMappingURL=policyContext.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/backend/modes/gateway-managed/policyContext.ts"],
|
|
4
|
+
"sourcesContent": ["// @ts-nocheck\nimport {\n buildPaymentAction,\n hasUpstreamPaymentVerified,\n normalizeAllowedIssuers,\n resolveMergedContext,\n resolvePriceAmount,\n} from \"../../policies/common.js\";\n\nexport { buildPaymentAction, hasUpstreamPaymentVerified, resolveMergedContext, resolvePriceAmount };\n\nexport function resolveExpectedPaymentIssuer() {\n return \"gateway\";\n}\n\nexport function resolveAllowedIssuers(guardConfig) {\n return normalizeAllowedIssuers(guardConfig, \"gateway\");\n}\n"],
|
|
5
|
+
"mappings": "AACA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAIA,SAAS,+BAA+B;AAC7C,SAAO;AACT;AAEO,SAAS,sBAAsB,aAAa;AACjD,SAAO,wBAAwB,aAAa,SAAS;AACvD;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
export declare const ALL_BACKEND_MODE_KEYS: readonly string[];
|
|
2
|
+
export declare function normalizeEnabledBackendModes(enabledModes: any): any[];
|
|
3
|
+
export declare function getBackendModeHandlers(enabledModes: any): any;
|
|
4
|
+
export declare function getBackendModeEndpointGroups(enabledModes: any): ({
|
|
5
|
+
key: string;
|
|
6
|
+
label: string;
|
|
7
|
+
when_to_use: string;
|
|
8
|
+
endpoints: any[];
|
|
9
|
+
notes: string[];
|
|
10
|
+
} | {
|
|
11
|
+
key: string;
|
|
12
|
+
label: string;
|
|
13
|
+
when_to_use: string;
|
|
14
|
+
endpoints: {
|
|
15
|
+
method: string;
|
|
16
|
+
path: string;
|
|
17
|
+
purpose: string;
|
|
18
|
+
}[];
|
|
19
|
+
})[];
|
|
20
|
+
export declare function getBackendModeReferenceDetails(enabledModes: any): ({
|
|
21
|
+
key: string;
|
|
22
|
+
label: string;
|
|
23
|
+
description: string;
|
|
24
|
+
payment_session_model: {
|
|
25
|
+
uses_gateway_payment_session: boolean;
|
|
26
|
+
tenant_owns_payment_page: boolean;
|
|
27
|
+
tenant_owns_payment_session_endpoints: boolean;
|
|
28
|
+
tenant_calls_gateway_payment_session_api_directly: boolean;
|
|
29
|
+
tenant_session_reference: string;
|
|
30
|
+
};
|
|
31
|
+
required_settings: string[];
|
|
32
|
+
payment_responsibilities: string[];
|
|
33
|
+
payment_endpoints: any[];
|
|
34
|
+
policy_responsibilities: string[];
|
|
35
|
+
policy_endpoints: {
|
|
36
|
+
method: string;
|
|
37
|
+
path: string;
|
|
38
|
+
purpose: string;
|
|
39
|
+
}[];
|
|
40
|
+
guide_path: string;
|
|
41
|
+
reference_key?: undefined;
|
|
42
|
+
} | {
|
|
43
|
+
key: string;
|
|
44
|
+
reference_key: string;
|
|
45
|
+
label: string;
|
|
46
|
+
description: string;
|
|
47
|
+
payment_session_model: {
|
|
48
|
+
uses_gateway_payment_session: boolean;
|
|
49
|
+
tenant_owns_payment_page: boolean;
|
|
50
|
+
tenant_owns_payment_session_endpoints: boolean;
|
|
51
|
+
tenant_calls_gateway_payment_session_api_directly: boolean;
|
|
52
|
+
tenant_session_reference: string;
|
|
53
|
+
};
|
|
54
|
+
required_settings: string[];
|
|
55
|
+
payment_responsibilities: string[];
|
|
56
|
+
payment_endpoints: {
|
|
57
|
+
method: string;
|
|
58
|
+
path: string;
|
|
59
|
+
purpose: string;
|
|
60
|
+
}[];
|
|
61
|
+
policy_responsibilities: string[];
|
|
62
|
+
policy_endpoints: {
|
|
63
|
+
method: string;
|
|
64
|
+
path: string;
|
|
65
|
+
purpose: string;
|
|
66
|
+
}[];
|
|
67
|
+
guide_path: string;
|
|
68
|
+
})[];
|
|
69
|
+
export declare function resolveBackendPaymentPolicy(payloadInput: any, { log, enabledModes, paymentRuntime }?: {
|
|
70
|
+
paymentRuntime?: {};
|
|
71
|
+
}): Promise<any>;
|
|
72
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/backend/modes/index.ts"],"names":[],"mappings":"AAwFA,eAAO,MAAM,qBAAqB,mBAAoD,CAAC;AAUvF,wBAAgB,4BAA4B,CAAC,YAAY,KAAA,SAYxD;AAED,wBAAgB,sBAAsB,CAAC,YAAY,KAAA,OAGlD;AAED,wBAAgB,4BAA4B,CAAC,YAAY,KAAA;;;;;;;;;;;;;;;KAWxD;AAED,wBAAgB,8BAA8B,CAAC,YAAY,KAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAG1D;AAeD,wBAAsB,2BAA2B,CAC/C,YAAY,KAAA,EACZ,EAAE,GAAG,EAAE,YAAY,EAAE,cAAmB,EAAE;;CAAK,gBAqBhD"}
|