@paygood1/collect-core 0.9.0 → 0.10.0
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/dist/adapters/basistheory/customer-details-mount.d.ts +18 -0
- package/dist/adapters/basistheory/customer-details-mount.d.ts.map +1 -0
- package/dist/adapters/basistheory/customer-details-mount.js +282 -0
- package/dist/adapters/basistheory/customer-details-mount.js.map +1 -0
- package/dist/adapters/basistheory/prepare-mount-root.d.ts +8 -0
- package/dist/adapters/basistheory/prepare-mount-root.d.ts.map +1 -0
- package/dist/adapters/basistheory/prepare-mount-root.js +34 -0
- package/dist/adapters/basistheory/prepare-mount-root.js.map +1 -0
- package/dist/adapters/basistheory/provider.d.ts.map +1 -1
- package/dist/adapters/basistheory/provider.js +17 -14
- package/dist/adapters/basistheory/provider.js.map +1 -1
- package/dist/core/card-collect-core.d.ts +3 -1
- package/dist/core/card-collect-core.d.ts.map +1 -1
- package/dist/core/card-collect-core.js +10 -4
- package/dist/core/card-collect-core.js.map +1 -1
- package/dist/customer-details/mount.d.ts +18 -0
- package/dist/customer-details/mount.d.ts.map +1 -0
- package/dist/customer-details/mount.js +282 -0
- package/dist/customer-details/mount.js.map +1 -0
- package/dist/customer-details/regions.d.ts +18 -0
- package/dist/customer-details/regions.d.ts.map +1 -0
- package/dist/customer-details/regions.js +79 -0
- package/dist/customer-details/regions.js.map +1 -0
- package/dist/customer-details/types.d.ts +24 -0
- package/dist/customer-details/types.d.ts.map +1 -0
- package/dist/customer-details/types.js +57 -0
- package/dist/customer-details/types.js.map +1 -0
- package/dist/index.d.ts +7 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/runtime/element-manager.d.ts +6 -2
- package/dist/runtime/element-manager.d.ts.map +1 -1
- package/dist/runtime/element-manager.js +28 -2
- package/dist/runtime/element-manager.js.map +1 -1
- package/dist/runtime/prepare-mount-root.d.ts +8 -0
- package/dist/runtime/prepare-mount-root.d.ts.map +1 -0
- package/dist/runtime/prepare-mount-root.js +35 -0
- package/dist/runtime/prepare-mount-root.js.map +1 -0
- package/dist/types.d.ts +12 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -1
- package/dist/validation/config.d.ts +1 -0
- package/dist/validation/config.d.ts.map +1 -1
- package/dist/validation/config.js +10 -1
- package/dist/validation/config.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { CollectCoreConfig, CollectCoreEvents } from "../types";
|
|
2
|
+
import { type CustomerDetailsHandle } from "../customer-details/mount";
|
|
3
|
+
export interface PreparedMountRoot {
|
|
4
|
+
paymentRoot: HTMLElement;
|
|
5
|
+
customerDetailsHandle: CustomerDetailsHandle | null;
|
|
6
|
+
}
|
|
7
|
+
export declare function prepareMountRoot(parent: HTMLElement, config: CollectCoreConfig, events: Pick<CollectCoreEvents, "onChange" | "onCustomerDetailsChange">): PreparedMountRoot;
|
|
8
|
+
//# sourceMappingURL=prepare-mount-root.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prepare-mount-root.d.ts","sourceRoot":"","sources":["../../src/runtime/prepare-mount-root.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAErE,OAAO,EAEL,KAAK,qBAAqB,EAC3B,MAAM,2BAA2B,CAAC;AAEnC,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,WAAW,CAAC;IACzB,qBAAqB,EAAE,qBAAqB,GAAG,IAAI,CAAC;CACrD;AAED,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,WAAW,EACnB,MAAM,EAAE,iBAAiB,EACzB,MAAM,EAAE,IAAI,CAAC,iBAAiB,EAAE,UAAU,GAAG,yBAAyB,CAAC,GACtE,iBAAiB,CAuCnB"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { shouldCollectCustomerDetails } from "../validation/config";
|
|
2
|
+
import { mountCustomerDetailsSection } from "../customer-details/mount";
|
|
3
|
+
export function prepareMountRoot(parent, config, events) {
|
|
4
|
+
parent.innerHTML = "";
|
|
5
|
+
const outerWrapper = document.createElement("div");
|
|
6
|
+
Object.assign(outerWrapper.style, {
|
|
7
|
+
display: "flex",
|
|
8
|
+
flexDirection: "column",
|
|
9
|
+
gap: "0.75rem",
|
|
10
|
+
width: "100%",
|
|
11
|
+
maxWidth: "100%",
|
|
12
|
+
boxSizing: "border-box"
|
|
13
|
+
});
|
|
14
|
+
let customerDetailsHandle = null;
|
|
15
|
+
if (shouldCollectCustomerDetails(config)) {
|
|
16
|
+
customerDetailsHandle = mountCustomerDetailsSection(outerWrapper, {
|
|
17
|
+
defaultBillingAddressExpanded: config.defaultBillingAddressExpanded,
|
|
18
|
+
defaultCustomerDetails: config.defaultCustomerDetails
|
|
19
|
+
}, {
|
|
20
|
+
onChange: events.onChange,
|
|
21
|
+
onCustomerDetailsChange: events.onCustomerDetailsChange
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
const paymentRoot = document.createElement("div");
|
|
25
|
+
paymentRoot.dataset.paygoodCardCollect = "payment-fields";
|
|
26
|
+
Object.assign(paymentRoot.style, {
|
|
27
|
+
width: "100%",
|
|
28
|
+
maxWidth: "100%",
|
|
29
|
+
boxSizing: "border-box"
|
|
30
|
+
});
|
|
31
|
+
outerWrapper.appendChild(paymentRoot);
|
|
32
|
+
parent.appendChild(outerWrapper);
|
|
33
|
+
return { paymentRoot, customerDetailsHandle };
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=prepare-mount-root.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prepare-mount-root.js","sourceRoot":"","sources":["../../src/runtime/prepare-mount-root.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,4BAA4B,EAAE,MAAM,sBAAsB,CAAC;AACpE,OAAO,EACL,2BAA2B,EAE5B,MAAM,2BAA2B,CAAC;AAOnC,MAAM,UAAU,gBAAgB,CAC9B,MAAmB,EACnB,MAAyB,EACzB,MAAuE;IAEvE,MAAM,CAAC,SAAS,GAAG,EAAE,CAAC;IAEtB,MAAM,YAAY,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IACnD,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE;QAChC,OAAO,EAAE,MAAM;QACf,aAAa,EAAE,QAAQ;QACvB,GAAG,EAAE,SAAS;QACd,KAAK,EAAE,MAAM;QACb,QAAQ,EAAE,MAAM;QAChB,SAAS,EAAE,YAAY;KACxB,CAAC,CAAC;IAEH,IAAI,qBAAqB,GAAiC,IAAI,CAAC;IAC/D,IAAI,4BAA4B,CAAC,MAAM,CAAC,EAAE,CAAC;QACzC,qBAAqB,GAAG,2BAA2B,CACjD,YAAY,EACZ;YACE,6BAA6B,EAAE,MAAM,CAAC,6BAA6B;YACnE,sBAAsB,EAAE,MAAM,CAAC,sBAAsB;SACtD,EACD;YACE,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,uBAAuB,EAAE,MAAM,CAAC,uBAAuB;SACxD,CACF,CAAC;IACJ,CAAC;IAED,MAAM,WAAW,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAClD,WAAW,CAAC,OAAO,CAAC,kBAAkB,GAAG,gBAAgB,CAAC;IAC1D,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,EAAE;QAC/B,KAAK,EAAE,MAAM;QACb,QAAQ,EAAE,MAAM;QAChB,SAAS,EAAE,YAAY;KACxB,CAAC,CAAC;IACH,YAAY,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;IACtC,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;IAEjC,OAAO,EAAE,WAAW,EAAE,qBAAqB,EAAE,CAAC;AAChD,CAAC"}
|
package/dist/types.d.ts
CHANGED
|
@@ -1,10 +1,15 @@
|
|
|
1
1
|
import type { AllowedBankCountry } from "./constants/allowed-bank-countries";
|
|
2
|
+
import type { CustomerDetails, TokenizedContext } from "./customer-details/types";
|
|
2
3
|
export type { AllowedBankCountry } from "./constants/allowed-bank-countries";
|
|
3
4
|
export { ALLOWED_BANK_COUNTRIES } from "./constants/allowed-bank-countries";
|
|
4
5
|
export type SupportedMarket = AllowedBankCountry;
|
|
5
6
|
export type SupportedInstrument = "card" | "bank_account";
|
|
6
7
|
export type BasisTheoryEnvironment = "test" | "us" | "eu";
|
|
7
8
|
export type CollectCoreMode = "sandbox" | "production";
|
|
9
|
+
export type { BillingAddress, BillingCountry, CustomerDetails, TokenizedContext } from "./customer-details/types";
|
|
10
|
+
export { createEmptyCustomerDetails, getBillingFieldLabels, isCustomerDetailsComplete } from "./customer-details/types";
|
|
11
|
+
export { CA_PROVINCES, US_STATES, getBillingCountryOptions, getRegionOptions } from "./customer-details/regions";
|
|
12
|
+
export type { RegionOption } from "./customer-details/regions";
|
|
8
13
|
export interface CollectCoreConfig {
|
|
9
14
|
mode?: CollectCoreMode;
|
|
10
15
|
environment?: BasisTheoryEnvironment;
|
|
@@ -14,10 +19,15 @@ export interface CollectCoreConfig {
|
|
|
14
19
|
tokenizationApiBaseUrl?: string;
|
|
15
20
|
sessionKey?: string;
|
|
16
21
|
useStockDomain?: boolean;
|
|
22
|
+
collectCustomerDetails?: boolean;
|
|
23
|
+
defaultBillingAddressExpanded?: boolean;
|
|
24
|
+
defaultCustomerDetails?: Partial<CustomerDetails>;
|
|
17
25
|
}
|
|
18
26
|
export interface MountOptions {
|
|
19
27
|
targetId: string;
|
|
20
28
|
options?: Record<string, unknown>;
|
|
29
|
+
/** When set, adapter mounts payment fields into this element instead of clearing targetId. */
|
|
30
|
+
paymentMount?: HTMLElement;
|
|
21
31
|
}
|
|
22
32
|
export interface InstrumentHandle {
|
|
23
33
|
id: string;
|
|
@@ -40,6 +50,7 @@ export interface CollectCoreEvents {
|
|
|
40
50
|
onReady?: () => void;
|
|
41
51
|
onChange?: (payload: unknown) => void;
|
|
42
52
|
onError?: (error: Error) => void;
|
|
43
|
-
|
|
53
|
+
onCustomerDetailsChange?: (details: CustomerDetails) => void;
|
|
54
|
+
onTokenized?: (result: TokenizationResult, context?: TokenizedContext) => void;
|
|
44
55
|
}
|
|
45
56
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAElF,YAAY,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,MAAM,MAAM,eAAe,GAAG,kBAAkB,CAAC;AACjD,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG,cAAc,CAAC;AAC1D,MAAM,MAAM,sBAAsB,GAAG,MAAM,GAAG,IAAI,GAAG,IAAI,CAAC;AAC1D,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,YAAY,CAAC;AACvD,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAClH,OAAO,EACL,0BAA0B,EAC1B,qBAAqB,EACrB,yBAAyB,EAC1B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,wBAAwB,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACjH,YAAY,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE/D,MAAM,WAAW,iBAAiB;IAChC,IAAI,CAAC,EAAE,eAAe,CAAC;IACvB,WAAW,CAAC,EAAE,sBAAsB,CAAC;IACrC,oBAAoB,CAAC,EAAE,kBAAkB,EAAE,CAAC;IAC5C,UAAU,CAAC,EAAE,mBAAmB,CAAC;IACjC,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,6BAA6B,CAAC,EAAE,OAAO,CAAC;IACxC,sBAAsB,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;CACnD;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,8FAA8F;IAC9F,YAAY,CAAC,EAAE,WAAW,CAAC;CAC5B;AAED,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;CACZ;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,MAAM,kBAAkB,GAC1B;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,mBAAmB,CAAA;CAAE,GAClF;IACE,IAAI,EAAE,cAAc,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,mBAAmB,CAAC;CAC3B,CAAC;AAEN,MAAM,WAAW,iBAAiB;IAChC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC,uBAAuB,CAAC,EAAE,CAAC,OAAO,EAAE,eAAe,KAAK,IAAI,CAAC;IAC7D,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,kBAAkB,EAAE,OAAO,CAAC,EAAE,gBAAgB,KAAK,IAAI,CAAC;CAChF"}
|
package/dist/types.js
CHANGED
|
@@ -1,2 +1,4 @@
|
|
|
1
1
|
export { ALLOWED_BANK_COUNTRIES } from "./constants/allowed-bank-countries";
|
|
2
|
+
export { createEmptyCustomerDetails, getBillingFieldLabels, isCustomerDetailsComplete } from "./customer-details/types";
|
|
3
|
+
export { CA_PROVINCES, US_STATES, getBillingCountryOptions, getRegionOptions } from "./customer-details/regions";
|
|
2
4
|
//# sourceMappingURL=types.js.map
|
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAM5E,OAAO,EACL,0BAA0B,EAC1B,qBAAqB,EACrB,yBAAyB,EAC1B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,wBAAwB,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
import type { CollectCoreConfig } from "../types";
|
|
2
2
|
export declare function validateConfig(input: CollectCoreConfig): CollectCoreConfig;
|
|
3
|
+
export declare function shouldCollectCustomerDetails(config: Pick<CollectCoreConfig, "instrument" | "collectCustomerDetails">): boolean;
|
|
3
4
|
//# sourceMappingURL=config.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/validation/config.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/validation/config.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAyBlD,wBAAgB,cAAc,CAAC,KAAK,EAAE,iBAAiB,GAAG,iBAAiB,CAE1E;AAED,wBAAgB,4BAA4B,CAC1C,MAAM,EAAE,IAAI,CAAC,iBAAiB,EAAE,YAAY,GAAG,wBAAwB,CAAC,GACvE,OAAO,CAMT"}
|
|
@@ -16,9 +16,18 @@ const configSchema = z.object({
|
|
|
16
16
|
debug: z.boolean().optional(),
|
|
17
17
|
tokenizationApiBaseUrl: z.string().optional(),
|
|
18
18
|
sessionKey: z.string().trim().min(1).optional(),
|
|
19
|
-
useStockDomain: z.boolean().default(true)
|
|
19
|
+
useStockDomain: z.boolean().default(true),
|
|
20
|
+
collectCustomerDetails: z.boolean().default(true),
|
|
21
|
+
defaultBillingAddressExpanded: z.boolean().default(false),
|
|
22
|
+
defaultCustomerDetails: z.any().optional()
|
|
20
23
|
});
|
|
21
24
|
export function validateConfig(input) {
|
|
22
25
|
return configSchema.parse(input);
|
|
23
26
|
}
|
|
27
|
+
export function shouldCollectCustomerDetails(config) {
|
|
28
|
+
if (config.instrument === "bank_account") {
|
|
29
|
+
return false;
|
|
30
|
+
}
|
|
31
|
+
return config.collectCustomerDetails !== false;
|
|
32
|
+
}
|
|
24
33
|
//# sourceMappingURL=config.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/validation/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,sBAAsB,EAAE,MAAM,qCAAqC,CAAC;AAG7E,MAAM,wBAAwB,GAAG,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;AAEhE,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5B,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;IAC1D,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IACzD,oBAAoB,EAAE,CAAC;SACpB,KAAK,CAAC,wBAAwB,CAAC;SAC/B,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,sBAAsB,CAAC,MAAM,CAAC;SAClC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,MAAM,EAAE;QACnE,OAAO,EAAE,kDAAkD;KAC5D,CAAC;SACD,QAAQ,EAAE;IACb,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IAC5D,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC7B,sBAAsB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7C,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IAC/C,cAAc,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/validation/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,sBAAsB,EAAE,MAAM,qCAAqC,CAAC;AAG7E,MAAM,wBAAwB,GAAG,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;AAEhE,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5B,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;IAC1D,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IACzD,oBAAoB,EAAE,CAAC;SACpB,KAAK,CAAC,wBAAwB,CAAC;SAC/B,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,sBAAsB,CAAC,MAAM,CAAC;SAClC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,MAAM,EAAE;QACnE,OAAO,EAAE,kDAAkD;KAC5D,CAAC;SACD,QAAQ,EAAE;IACb,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IAC5D,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC7B,sBAAsB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7C,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IAC/C,cAAc,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IACzC,sBAAsB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IACjD,6BAA6B,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IACzD,sBAAsB,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;CAC3C,CAAC,CAAC;AAEH,MAAM,UAAU,cAAc,CAAC,KAAwB;IACrD,OAAO,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AACnC,CAAC;AAED,MAAM,UAAU,4BAA4B,CAC1C,MAAwE;IAExE,IAAI,MAAM,CAAC,UAAU,KAAK,cAAc,EAAE,CAAC;QACzC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,MAAM,CAAC,sBAAsB,KAAK,KAAK,CAAC;AACjD,CAAC"}
|