@ambushsoftworks/nestjs-payments-graphql 0.7.4 → 0.8.0-rc.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/CHANGELOG.md CHANGED
@@ -28,6 +28,96 @@ prose for buried obligations. The marker was introduced in v0.4.0 and
28
28
 
29
29
  ## [Unreleased]
30
30
 
31
+ ## [0.8.0] - 2026-09-28
32
+
33
+ Off-session charges can finally say **which brand is charging**. A consumer
34
+ billing seven job boards from one Stripe account had every hosted-Checkout
35
+ payment print the brand and every saved-card charge and every renewal print the
36
+ account's own name — so a customer learned one name on their first payment and
37
+ saw a different one on every payment after it, which is the order most likely to
38
+ produce a dispute.
39
+
40
+ ### Added
41
+ - **`gatewayOptions` on `RecurringPaymentGateway.createOffSessionPayment`.**
42
+ The same gateway-agnostic `Record<string, unknown>` passthrough
43
+ `createPaymentSession` has had since v0.2.0 and `createPaymentIntent` since
44
+ v0.3.0. Optional on the interface, so existing gateway implementations are
45
+ untouched. `StripeGateway` spreads unreserved keys onto `paymentIntents.create`
46
+ and merges `gatewayOptions.metadata` into the call's metadata, with the
47
+ caller's own `metadata` winning on collision.
48
+
49
+ Reserved, throwing `PaymentGatewayException` before the provider is called:
50
+ `metadata.invoiceId`, `amount`, `currency`, `customer`, `payment_method`,
51
+ `off_session`, `confirm`, `expand`, `idempotencyKey`. Exported as
52
+ `STRIPE_OFF_SESSION_RESERVED_GATEWAY_KEYS`, with the typed shape
53
+ `StripeOffSessionGatewayOptions` for autocomplete.
54
+
55
+ `idempotencyKey` is reserved although it is not a body field at all — it is
56
+ passed as the SDK's request options, so a consumer who put it here would have
57
+ it silently ignored and lose retry protection with no sign. That is how a
58
+ consumer's gateway subclass once dropped it and charged $5.00 against a $2.50
59
+ invoice; it now fails loudly.
60
+
61
+ - **`recurringChargeOptionsResolverInstance`**, a new optional top-level module
62
+ option, with the `RECURRING_CHARGE_OPTIONS_RESOLVER` token and the
63
+ `IRecurringChargeOptionsResolver` / `RecurringChargeContext` types. A renewal
64
+ is the one charge the package initiates itself, so there was no call site for
65
+ a consumer to pass `gatewayOptions` to. The resolver is asked once per charge
66
+ and its result is handed to the gateway unread.
67
+
68
+ Resolved per charge rather than stored: a column written at enrolment would
69
+ leave a year of renewals printing a value since changed, and would need a
70
+ migration. Absent, renewals charge exactly as before.
71
+
72
+ **A throwing resolver does not fail the renewal** — it logs and charges
73
+ without options, isolated from the charge's own error handling, so
74
+ `consecutiveFailures` is untouched and the three-strike auto-pause is not
75
+ triggered. Returning a *reserved* key does fail the charge: that is a
76
+ programming error and surfaces on the first test run.
77
+
78
+ ### Changed
79
+ - **Statement descriptors are sanitised rather than allowed to fail a charge.**
80
+ Stripe rejects a descriptor containing `< > \ ' " *`, and one with no Latin
81
+ character. The gateway now strips those characters, collapses whitespace and
82
+ trims; if nothing with a Latin letter survives it omits the field and warns,
83
+ and the charge proceeds on the account's own descriptor. It does not
84
+ truncate — Stripe cuts the combined descriptor to 22 itself, and duplicating a
85
+ provider limit would mean tracking a number we do not own.
86
+
87
+ Applied at **every** point a descriptor can reach Stripe, not only the
88
+ documented one: `gatewayOptions.paymentIntentData` and `gatewayOptions.session`
89
+ and unrecognised top-level keys on `createPaymentSession`, the top level of
90
+ `createPaymentIntent`, and the new off-session bag. Covering some of them would
91
+ make the behaviour depend on where the consumer happened to put the key.
92
+
93
+ This is the only place the package repairs consumer input instead of throwing,
94
+ and the line is data versus code: a reserved key is wrong on every call and
95
+ surfaces in a test run, while `O'Brien Contracting` out of a consumer's
96
+ database would have failed one renewal at 02:00, taken a strike toward the
97
+ auto-pause, and emailed the customer a failed-payment notice — over a cosmetic
98
+ field. `PaymentEmailService` has held the same line since it was written.
99
+
100
+ The full `statement_descriptor` is sanitised on the same rules. It remains
101
+ **unsupported**: Stripe's docs say a card charge may set only the suffix, the
102
+ API currently accepts the full one anyway, and the package neither reserves it
103
+ nor relies on it.
104
+
105
+ ### Fixed
106
+ - **`createPaymentSession`'s reserved-key check read a hand-copied array**
107
+ rather than the `STRIPE_RESERVED_GATEWAY_KEYS` constant it publishes for
108
+ consumers to mirror, with nothing asserting the two agreed. It now reads the
109
+ constant, and both it and the new off-session list have drift guards. No
110
+ behaviour change today — the two lists happened to match.
111
+
112
+ ### Docs
113
+ - New **Statement descriptors** section covering all three charge paths, the
114
+ sanitisation rules and the unsupported full descriptor. This was the thing the
115
+ reporting team went looking for and could not find.
116
+ - New **Stripe-specific off-session options** and **Per-charge gateway options
117
+ for renewals** sections.
118
+ - `STRIPE_PAYMENT_INTENT_RESERVED_GATEWAY_KEYS`' docblock called off-session
119
+ charging "a future surface". It arrived.
120
+
31
121
  ## [0.7.4] - 2026-09-21
32
122
 
33
123
  > **Upgrade note.** The fix applies to Checkout sessions created **after** you
package/README.md CHANGED
@@ -14,15 +14,18 @@ Production-grade payments module for NestJS with GraphQL support. Invoicing (inc
14
14
  - [Stripe Gateway & Webhooks](#stripe-gateway--webhooks)
15
15
  - [Stripe-specific session options](#stripe-specific-session-options-gatewayoptions)
16
16
  - [Inline PaymentIntent (Stripe Elements)](#inline-paymentintent-stripe-elements)
17
+ - [Statement descriptors](#statement-descriptors)
17
18
  - [Verifying your Stripe configuration](#verifying-your-stripe-configuration)
18
19
  - [Reconciliation (webhook backstop)](#reconciliation-webhook-backstop)
19
20
  - [Refunds](#refunds)
20
21
  - [Disputes and chargebacks](#disputes-and-chargebacks)
21
22
  - [Payment Plans](#payment-plans)
22
23
  - [Recurring Invoices](#recurring-invoices)
24
+ - [Pinning a schedule to one card](#pinning-a-schedule-to-one-card)
25
+ - [Per-charge gateway options for renewals](#per-charge-gateway-options-for-renewals)
23
26
  - [Saved Cards](#saved-cards)
24
27
  - [Managing saved cards](#managing-saved-cards)
25
- - [Pinning a schedule to one card](#pinning-a-schedule-to-one-card)
28
+ - [Stripe-specific off-session options](#stripe-specific-off-session-options-gatewayoptions)
26
29
  - [E-Transfer](#e-transfer)
27
30
  - [Email Notifications](#email-notifications)
28
31
  - [Event Listeners](#event-listeners)
@@ -703,6 +706,39 @@ export class ClientInvoicesResolver {
703
706
  }
704
707
  ```
705
708
 
709
+ #### Statement descriptors
710
+
711
+ *Sanitisation added in v0.8.0; off-session support added in v0.8.0.*
712
+
713
+ What prints on the customer's card statement. Stripe builds it from the account's shortened descriptor plus a per-charge suffix — `AMSFT* NEWCOMERS`. If you bill several brands from one Stripe account, the suffix is the only thing that tells a customer which one charged them, and an unrecognised statement line is how a legitimate charge becomes a dispute.
714
+
715
+ Every path that reaches Stripe can carry one, via that path's `gatewayOptions`:
716
+
717
+ | Path | Where the suffix goes |
718
+ |---|---|
719
+ | Hosted Checkout — `createPaymentSession` | `gatewayOptions.paymentIntentData.statement_descriptor_suffix` |
720
+ | Inline Elements — `createPaymentIntent` | `gatewayOptions.statement_descriptor_suffix` |
721
+ | Saved card / renewal — `createOffSessionPayment` | `gatewayOptions.statement_descriptor_suffix` (v0.8.0) |
722
+
723
+ **Renewals are charged by the package, not by you**, so there is no call for you to pass options to. Supply a `recurringChargeOptionsResolverInstance` instead — see [Per-charge gateway options for renewals](#per-charge-gateway-options-for-renewals).
724
+
725
+ **Set it on every path or on none.** A customer whose first payment goes through Checkout and whose renewals go off-session will otherwise learn one name and then see another — the worst possible order, and the reason this was worth a release.
726
+
727
+ **The package sanitises the value rather than letting it fail the charge.** Stripe rejects a descriptor containing `< > \ ' " *` outright, and rejects one with no Latin letter. Before sending, the gateway:
728
+
729
+ - strips `< > \ ' " *`, collapses runs of whitespace, and trims;
730
+ - **omits the field entirely** if nothing with a Latin letter survives, and logs a warning — the charge proceeds on the account's own descriptor;
731
+ - logs a warning when it changed anything, quoting both values.
732
+
733
+ It does **not** truncate. Stripe cuts the combined descriptor to 22 characters itself, and duplicating a provider limit here would mean tracking a number we do not own.
734
+
735
+ This is the one place the package silently repairs a consumer's input rather than throwing, and the asymmetry with reserved keys is deliberate. A reserved key is *code*: it is wrong on every call and surfaces on the first test run. A descriptor is *data* out of a consumer's database — `O'Brien Contracting` is a perfectly reasonable company name — so it varies per row, and a hard failure would land at 02:00 as a failed renewal, a strike toward the three-strike auto-pause, and a failed-payment email to the customer, all over a cosmetic field. The package already holds that line: `PaymentEmailService` never throws, so a receipt that cannot be sent does not roll back the payment it describes.
736
+
737
+ Sanitising applies wherever a descriptor can reach Stripe, including the Checkout path's catch-all spreads (`gatewayOptions.session` and unrecognised top-level keys) — so the outcome does not depend on which of them you happened to use.
738
+
739
+ > **The full `statement_descriptor` is not supported.** Stripe's own documentation says a card charge may set only the suffix, and yet the API currently accepts the full descriptor and prints it with no prefix. The package neither reserves it nor relies on it: it is passed through and sanitised on the same rules, so it cannot fail a charge, and it may stop working whenever Stripe enforces its documentation. Build on the suffix.
740
+
741
+ Set the account descriptor itself in the Stripe Dashboard (**Settings → Business → Public details**); the package never touches it.
706
742
  #### Verifying your Stripe configuration
707
743
 
708
744
  The subscription list above, the keys, and the account's ability to charge all live in the Stripe Dashboard — outside your repository, where no diff, type error, code review or CI job can see them. `verifyStripeConfiguration` checks them against what this version of the package actually needs and reports what's wrong.
@@ -927,6 +963,44 @@ The card is checked against that client when the template is written, not when i
927
963
 
928
964
  Before removing a card, `recurringInvoices.findByPaymentMethodId(pm)` lists the schedules pinned to it — "removing this card stops 3 renewals" is a warning a person can act on. Schedules riding the client default are not returned: they are not tied to any one card.
929
965
 
966
+ #### Per-charge gateway options for renewals
967
+
968
+ *Added in v0.8.0.*
969
+
970
+ A renewal is the one charge the package makes on its own initiative: `attemptAutoCharge` builds the gateway call internally, so there is no call site of yours to pass `gatewayOptions` to. Register a resolver and the package asks you, once per charge:
971
+
972
+ ```typescript
973
+ import type {
974
+ IRecurringChargeOptionsResolver,
975
+ RecurringChargeContext,
976
+ } from '@ambushsoftworks/nestjs-payments-graphql';
977
+
978
+ class ChargeOptionsResolver implements IRecurringChargeOptionsResolver {
979
+ constructor(private readonly brands: BrandService) {}
980
+
981
+ async resolveChargeOptions(ctx: RecurringChargeContext) {
982
+ const brand = await this.brands.forDivision(ctx.divisionId);
983
+ return { statement_descriptor_suffix: brand.shortName };
984
+ }
985
+ }
986
+
987
+ // In forRootAsync's useFactory:
988
+ recurringChargeOptionsResolverInstance: new ChargeOptionsResolver(brands),
989
+ ```
990
+
991
+ `RecurringChargeContext` carries `divisionId`, `clientDetailsId`, `invoiceId`, `recurringInvoiceId`, `referenceType` and `referenceId` — the same fields `onRecurringInvoiceGenerated` already gives you, because resolving options and reacting to a generated invoice mean looking up the same things.
992
+
993
+ The return value is an opaque `Record<string, unknown>` handed straight to `RecurringPaymentGateway.createOffSessionPayment`. The package never reads inside it; what is valid is the gateway's business — for Stripe, [the off-session options](#stripe-specific-off-session-options-gatewayoptions). Return `undefined` to charge with no options.
994
+
995
+ **Resolved per charge, never stored.** A column written at enrolment would leave a year of renewals printing a descriptor you have since changed, and would need a migration. This reads the current value at charge time and needs no schema change.
996
+
997
+ **A resolver that throws does not fail the renewal.** The package logs a warning and charges without options. A missing brand on a statement is cosmetic; a renewal that stops because a lookup failed is a subscription that quietly dies — it would also count toward the three-strike auto-pause and email the customer a failed-payment notice. The throw is isolated from the charge's own error handling, so `consecutiveFailures` is untouched and the schedule is not paused.
998
+
999
+ **Returning a key the gateway reserves does fail the charge**, loudly, and the asymmetry is on purpose: that is a programming error, identical on every call, and it surfaces on your first test run rather than at 02:00 against a customer. See the reserved list for [off-session options](#stripe-specific-off-session-options-gatewayoptions).
1000
+
1001
+ **Absent, renewals charge exactly as they did before** — the option is optional and there is nothing to migrate.
1002
+
1003
+ It runs inside the renewal loop and the package applies no timeout, the same as the email branding resolver and the repositories. Keep it fast, and cache if the lookup is expensive.
930
1004
  #### What `failureReason` can say
931
1005
 
932
1006
  `onRecurringPaymentFailed` and `RecurringInvoice.lastFailureReason` carry one of these. The package's own tokens are configuration problems; anything else is the provider's own code for a decline.
@@ -1065,6 +1139,44 @@ Declare `@@unique([clientDetailsId, provider])` on `PaymentCustomer` to match, a
1065
1139
 
1066
1140
  A custom gateway must implement `adoptSetupPaymentMethod` to support saved cards. It is optional on `RecurringPaymentGateway` so v0.2.x gateways still compile; without it the webhook logs a warning and the card stays unusable for auto-charge.
1067
1141
 
1142
+ #### Stripe-specific off-session options (`gatewayOptions`)
1143
+
1144
+ *Added in v0.8.0.*
1145
+
1146
+ `RecurringPaymentGateway.createOffSessionPayment` accepts the same gateway-agnostic `gatewayOptions?: Record<string, unknown>` the Checkout and inline paths have. The Stripe gateway shallow-spreads it onto the `paymentIntents.create` call, and merges `gatewayOptions.metadata` into the call's metadata — the caller's own `metadata`, which carries `invoiceId`, wins on collision.
1147
+
1148
+ Flat, not nested: an off-session charge is a single PaymentIntent, so there is no `payment_intent_data` level as there is on a Checkout Session.
1149
+
1150
+ ```typescript
1151
+ import type { StripeOffSessionGatewayOptions } from '@ambushsoftworks/nestjs-payments-graphql';
1152
+
1153
+ const gatewayOptions: StripeOffSessionGatewayOptions = {
1154
+ statement_descriptor_suffix: 'NEWCOMERS', // which brand is charging
1155
+ metadata: { tenantId: 'site-A' }, // your own tracking
1156
+ };
1157
+
1158
+ await gateway.createOffSessionPayment({
1159
+ providerCustomerId: customer.providerCustomerId,
1160
+ amount: invoice.total,
1161
+ currency: 'USD',
1162
+ metadata: { invoiceId: invoice.id },
1163
+ gatewayOptions,
1164
+ });
1165
+ ```
1166
+
1167
+ **This is the path that could not say which brand was charging.** Before v0.8.0 a customer's first payment through hosted Checkout printed the brand — `createPaymentSession` has had `gatewayOptions` since v0.2.0 — and every saved-card charge and every renewal afterwards printed the Stripe account's own descriptor, because that method had nowhere to put one. Learning one name and then seeing another is how an unrecognised statement line becomes a dispute. For renewals, which the package initiates itself, see [Per-charge gateway options for renewals](#per-charge-gateway-options-for-renewals).
1168
+
1169
+ Reserved keys, which throw `PaymentGatewayException` **before** the provider is called:
1170
+
1171
+ - `customer`, `payment_method`, `off_session`, `confirm` — these are what *make* it an off-session charge against a saved card; overriding any would quietly turn it into a different kind of payment
1172
+ - `amount`, `currency`, `metadata.invoiceId` — first-class parameters; passing them here is a second source of truth for what is charged and which invoice it settles
1173
+ - `expand` — package-owned; the receipt URL is read from the expanded `latest_charge`
1174
+ - `idempotencyKey` — see below
1175
+
1176
+ **`idempotencyKey` is reserved even though it is not a body field**, and that is the point. It is passed as the SDK's *request options*, so a consumer who put it in `gatewayOptions` would have it silently ignored and lose retry protection with nothing to show for it — which is how a consumer's gateway subclass once dropped it and charged $5.00 against a $2.50 invoice. Pass it as the first-class parameter; the package computes one for renewals.
1177
+
1178
+ The same list is exported as `STRIPE_OFF_SESSION_RESERVED_GATEWAY_KEYS: readonly string[]` for consumers wrapping the gateway.
1179
+
1068
1180
  ### E-Transfer
1069
1181
 
1070
1182
  Canadian Interac e-transfer flow: `ETransferService` generates human-readable codes (`<prefix>-XXXX-XXXX`, both groups random) and security answers, then exposes GraphQL instructions for the client.
@@ -1410,6 +1522,7 @@ Two database constraints are load-bearing wherever you are coming from, because
1410
1522
  | Option | Type | Description |
1411
1523
  |--------|------|-------------|
1412
1524
  | `paymentEventListenerInstance` | `IPaymentEventListener` | Domain callbacks — see [Event Listeners](#event-listeners). Only `onInvoicePaid` is required. |
1525
+ | `recurringChargeOptionsResolverInstance` | `IRecurringChargeOptionsResolver` | Supplies `gatewayOptions` for each renewal charge — see [Per-charge gateway options for renewals](#per-charge-gateway-options-for-renewals). Absent, renewals charge as before; a resolver that throws degrades to charging without options rather than failing the renewal. |
1413
1526
  | `webhook` | `{ errorReporter? }` | `webhook.errorReporter` is called with anything a webhook handler throws. Route it somewhere you will see it: since v0.5.0 a failed handler answers 500 and Stripe retries for ~3 days. |
1414
1527
  | `tax` | `{ requireExplicit? }` | See [Tax](#tax). Set `tax.requireExplicit` if you bill in more than one jurisdiction. |
1415
1528
  | `features` | see below | Feature flags. Enabling one without its backing repository throws at boot. |
@@ -1486,6 +1599,7 @@ import {
1486
1599
  PAYMENT_CUSTOMER_REPOSITORY,
1487
1600
  TRANSACTION_MANAGER,
1488
1601
  PAYMENT_EVENT_LISTENER,
1602
+ RECURRING_CHARGE_OPTIONS_RESOLVER,
1489
1603
  PAYMENT_EMAIL_SENDER,
1490
1604
  PAYMENT_CLIENT_RESOLVER,
1491
1605
  PAYMENT_EMAIL_BRANDING_RESOLVER,
@@ -8,6 +8,7 @@ export declare const TRANSACTION_MANAGER: unique symbol;
8
8
  export declare const PAYMENT_EVENT_LISTENER: unique symbol;
9
9
  export declare const RECURRING_INVOICE_REPOSITORY: unique symbol;
10
10
  export declare const PAYMENT_CUSTOMER_REPOSITORY: unique symbol;
11
+ export declare const RECURRING_CHARGE_OPTIONS_RESOLVER: unique symbol;
11
12
  export declare const PAYMENT_EMAIL_SENDER: unique symbol;
12
13
  export declare const PAYMENT_CLIENT_RESOLVER: unique symbol;
13
14
  export declare const PAYMENT_EMAIL_BRANDING_RESOLVER: unique symbol;
package/dist/constants.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PAYMENT_SERVICE = exports.TAX_OPTIONS = exports.E_TRANSFER_CODE_PREFIX = exports.DEFAULT_CURRENCY = exports.WEBHOOK_ERROR_REPORTER = exports.PAYMENT_EMAIL_TEMPLATE_RENDERER = exports.PAYMENT_EMAIL_BRANDING_RESOLVER = exports.PAYMENT_CLIENT_RESOLVER = exports.PAYMENT_EMAIL_SENDER = exports.PAYMENT_CUSTOMER_REPOSITORY = exports.RECURRING_INVOICE_REPOSITORY = exports.PAYMENT_EVENT_LISTENER = exports.TRANSACTION_MANAGER = exports.WEBHOOK_IDEMPOTENCY_REPOSITORY = exports.PAYMENT_CONFIG_REPOSITORY = exports.PAYMENT_PLAN_REPOSITORY = exports.REFUND_REPOSITORY = exports.PAYMENT_REPOSITORY = exports.INVOICE_REPOSITORY = void 0;
3
+ exports.PAYMENT_SERVICE = exports.TAX_OPTIONS = exports.E_TRANSFER_CODE_PREFIX = exports.DEFAULT_CURRENCY = exports.WEBHOOK_ERROR_REPORTER = exports.PAYMENT_EMAIL_TEMPLATE_RENDERER = exports.PAYMENT_EMAIL_BRANDING_RESOLVER = exports.PAYMENT_CLIENT_RESOLVER = exports.PAYMENT_EMAIL_SENDER = exports.RECURRING_CHARGE_OPTIONS_RESOLVER = exports.PAYMENT_CUSTOMER_REPOSITORY = exports.RECURRING_INVOICE_REPOSITORY = exports.PAYMENT_EVENT_LISTENER = exports.TRANSACTION_MANAGER = exports.WEBHOOK_IDEMPOTENCY_REPOSITORY = exports.PAYMENT_CONFIG_REPOSITORY = exports.PAYMENT_PLAN_REPOSITORY = exports.REFUND_REPOSITORY = exports.PAYMENT_REPOSITORY = exports.INVOICE_REPOSITORY = void 0;
4
4
  exports.INVOICE_REPOSITORY = Symbol('IInvoiceRepository');
5
5
  exports.PAYMENT_REPOSITORY = Symbol('IPaymentRepository');
6
6
  exports.REFUND_REPOSITORY = Symbol('IRefundRepository');
@@ -11,6 +11,7 @@ exports.TRANSACTION_MANAGER = Symbol('ITransactionManager');
11
11
  exports.PAYMENT_EVENT_LISTENER = Symbol('IPaymentEventListener');
12
12
  exports.RECURRING_INVOICE_REPOSITORY = Symbol('IRecurringInvoiceRepository');
13
13
  exports.PAYMENT_CUSTOMER_REPOSITORY = Symbol('IPaymentCustomerRepository');
14
+ exports.RECURRING_CHARGE_OPTIONS_RESOLVER = Symbol('IRecurringChargeOptionsResolver');
14
15
  exports.PAYMENT_EMAIL_SENDER = Symbol('IPaymentEmailSender');
15
16
  exports.PAYMENT_CLIENT_RESOLVER = Symbol('IPaymentClientResolver');
16
17
  exports.PAYMENT_EMAIL_BRANDING_RESOLVER = Symbol('IPaymentEmailBrandingResolver');
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,kBAAkB,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAC;AAClD,QAAA,kBAAkB,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAC;AAClD,QAAA,iBAAiB,GAAG,MAAM,CAAC,mBAAmB,CAAC,CAAC;AAChD,QAAA,uBAAuB,GAAG,MAAM,CAAC,wBAAwB,CAAC,CAAC;AAC3D,QAAA,yBAAyB,GAAG,MAAM,CAAC,0BAA0B,CAAC,CAAC;AAC/D,QAAA,8BAA8B,GAAG,MAAM,CAClD,+BAA+B,CAChC,CAAC;AACW,QAAA,mBAAmB,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC;AACpD,QAAA,sBAAsB,GAAG,MAAM,CAAC,uBAAuB,CAAC,CAAC;AACzD,QAAA,4BAA4B,GAAG,MAAM,CAChD,6BAA6B,CAC9B,CAAC;AACW,QAAA,2BAA2B,GAAG,MAAM,CAAC,4BAA4B,CAAC,CAAC;AAGnE,QAAA,oBAAoB,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC;AACrD,QAAA,uBAAuB,GAAG,MAAM,CAAC,wBAAwB,CAAC,CAAC;AAC3D,QAAA,+BAA+B,GAAG,MAAM,CACnD,+BAA+B,CAChC,CAAC;AACW,QAAA,+BAA+B,GAAG,MAAM,CACnD,+BAA+B,CAChC,CAAC;AAGW,QAAA,sBAAsB,GAAG,MAAM,CAAC,sBAAsB,CAAC,CAAC;AAGxD,QAAA,gBAAgB,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC;AAC7C,QAAA,sBAAsB,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC;AAGvD,QAAA,WAAW,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;AAYnC,QAAA,eAAe,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,kBAAkB,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAC;AAClD,QAAA,kBAAkB,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAC;AAClD,QAAA,iBAAiB,GAAG,MAAM,CAAC,mBAAmB,CAAC,CAAC;AAChD,QAAA,uBAAuB,GAAG,MAAM,CAAC,wBAAwB,CAAC,CAAC;AAC3D,QAAA,yBAAyB,GAAG,MAAM,CAAC,0BAA0B,CAAC,CAAC;AAC/D,QAAA,8BAA8B,GAAG,MAAM,CAClD,+BAA+B,CAChC,CAAC;AACW,QAAA,mBAAmB,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC;AACpD,QAAA,sBAAsB,GAAG,MAAM,CAAC,uBAAuB,CAAC,CAAC;AACzD,QAAA,4BAA4B,GAAG,MAAM,CAChD,6BAA6B,CAC9B,CAAC;AACW,QAAA,2BAA2B,GAAG,MAAM,CAAC,4BAA4B,CAAC,CAAC;AAOnE,QAAA,iCAAiC,GAAG,MAAM,CACrD,iCAAiC,CAClC,CAAC;AAGW,QAAA,oBAAoB,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC;AACrD,QAAA,uBAAuB,GAAG,MAAM,CAAC,wBAAwB,CAAC,CAAC;AAC3D,QAAA,+BAA+B,GAAG,MAAM,CACnD,+BAA+B,CAChC,CAAC;AACW,QAAA,+BAA+B,GAAG,MAAM,CACnD,+BAA+B,CAChC,CAAC;AAGW,QAAA,sBAAsB,GAAG,MAAM,CAAC,sBAAsB,CAAC,CAAC;AAGxD,QAAA,gBAAgB,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC;AAC7C,QAAA,sBAAsB,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC;AAGvD,QAAA,WAAW,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;AAYnC,QAAA,eAAe,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC"}
@@ -16,6 +16,7 @@ export interface RecurringPaymentGateway {
16
16
  metadata?: Record<string, string>;
17
17
  paymentMethodId?: string;
18
18
  idempotencyKey?: string;
19
+ gatewayOptions?: Record<string, unknown>;
19
20
  }): Promise<{
20
21
  providerPaymentId: string;
21
22
  status: 'succeeded' | 'requires_action' | 'failed';
@@ -32,7 +32,10 @@ export declare class StripeGateway implements PaymentGateway, RecurringPaymentGa
32
32
  metadata?: Record<string, unknown>;
33
33
  }>;
34
34
  private assertIntentInvoiceIdAgrees;
35
+ private sanitiseStatementDescriptor;
36
+ private sanitiseDescriptorsIn;
35
37
  private assertNoReservedGatewayOptions;
38
+ private assertNoReservedOffSessionGatewayOptions;
36
39
  createRefund(params: {
37
40
  providerPaymentId: string;
38
41
  amount: number;
@@ -79,6 +82,7 @@ export declare class StripeGateway implements PaymentGateway, RecurringPaymentGa
79
82
  metadata?: Record<string, string>;
80
83
  paymentMethodId?: string;
81
84
  idempotencyKey?: string;
85
+ gatewayOptions?: Record<string, unknown>;
82
86
  }): Promise<{
83
87
  providerPaymentId: string;
84
88
  status: 'succeeded' | 'requires_action' | 'failed';
@@ -64,8 +64,8 @@ class StripeGateway {
64
64
  invoiceId: params.invoiceId,
65
65
  };
66
66
  const sdkParams = {
67
- ...topLevelGatewayOptions,
68
- ...(sessionOverridesWithoutMetadata ?? {}),
67
+ ...this.sanitiseDescriptorsIn(topLevelGatewayOptions),
68
+ ...(this.sanitiseDescriptorsIn(sessionOverridesWithoutMetadata) ?? {}),
69
69
  mode: 'payment',
70
70
  line_items: [
71
71
  {
@@ -86,7 +86,7 @@ class StripeGateway {
86
86
  expires_at: Math.floor(params.expiresAt.getTime() / 1000),
87
87
  }),
88
88
  payment_intent_data: {
89
- ...paymentIntentDataObj,
89
+ ...this.sanitiseDescriptorsIn(paymentIntentDataObj),
90
90
  metadata: intentMetadata,
91
91
  },
92
92
  metadata: mergedMetadata,
@@ -122,6 +122,44 @@ class StripeGateway {
122
122
  `this key itself as of v0.7.4; remove yours, or make it match.`);
123
123
  }
124
124
  }
125
+ sanitiseStatementDescriptor(value, field) {
126
+ if (typeof value !== 'string')
127
+ return undefined;
128
+ const cleaned = value
129
+ .replace(/[<>\\'"*]/g, '')
130
+ .replace(/\s+/g, ' ')
131
+ .trim();
132
+ if (!/\p{Script=Latin}/u.test(cleaned)) {
133
+ this.logger.warn(`${field} ${JSON.stringify(value)} has no Latin character after ` +
134
+ `sanitising, which Stripe rejects outright. Dropping it — the charge ` +
135
+ `proceeds on the account's own statement descriptor rather than ` +
136
+ `failing over a cosmetic field.`);
137
+ return undefined;
138
+ }
139
+ if (cleaned !== value) {
140
+ this.logger.warn(`${field} ${JSON.stringify(value)} contained characters Stripe ` +
141
+ `rejects; sending ${JSON.stringify(cleaned)} instead.`);
142
+ }
143
+ return cleaned;
144
+ }
145
+ sanitiseDescriptorsIn(bag) {
146
+ if (!bag)
147
+ return bag;
148
+ const keys = ['statement_descriptor_suffix', 'statement_descriptor'];
149
+ if (!keys.some((k) => k in bag))
150
+ return bag;
151
+ const out = { ...bag };
152
+ for (const key of keys) {
153
+ if (!(key in out))
154
+ continue;
155
+ const sanitised = this.sanitiseStatementDescriptor(out[key], key);
156
+ if (sanitised === undefined)
157
+ delete out[key];
158
+ else
159
+ out[key] = sanitised;
160
+ }
161
+ return out;
162
+ }
125
163
  assertNoReservedGatewayOptions(gatewayOptions) {
126
164
  if (!gatewayOptions)
127
165
  return;
@@ -134,16 +172,25 @@ class StripeGateway {
134
172
  (sessionMetadata && sessionMetadata.invoiceId !== undefined)) {
135
173
  throw new exceptions_1.PaymentGatewayException('metadata.invoiceId is reserved by the package and cannot be overridden via gatewayOptions');
136
174
  }
137
- const reservedTopLevelKeys = [
138
- 'success_url',
139
- 'cancel_url',
140
- 'client_reference_id',
141
- 'mode',
142
- 'line_items',
143
- ];
144
- for (const key of reservedTopLevelKeys) {
175
+ for (const key of types_1.STRIPE_RESERVED_GATEWAY_KEYS.filter((k) => !k.includes('.'))) {
145
176
  if (gatewayOptions[key] !== undefined) {
146
- throw new exceptions_1.PaymentGatewayException(`${key} is reserved by the package and cannot be overridden via gatewayOptions`);
177
+ throw new exceptions_1.PaymentGatewayException(`${key} is reserved by the package for createPaymentSession and ` +
178
+ `cannot be overridden via gatewayOptions`);
179
+ }
180
+ }
181
+ }
182
+ assertNoReservedOffSessionGatewayOptions(gatewayOptions) {
183
+ if (!gatewayOptions)
184
+ return;
185
+ const topLevelMetadata = gatewayOptions.metadata;
186
+ if (topLevelMetadata && topLevelMetadata.invoiceId !== undefined) {
187
+ throw new exceptions_1.PaymentGatewayException('metadata.invoiceId is reserved by the package and cannot be ' +
188
+ 'overridden via gatewayOptions');
189
+ }
190
+ for (const key of types_1.STRIPE_OFF_SESSION_RESERVED_GATEWAY_KEYS.filter((k) => !k.includes('.'))) {
191
+ if (gatewayOptions[key] !== undefined) {
192
+ throw new exceptions_1.PaymentGatewayException(`${key} is reserved by the package for createOffSessionPayment and ` +
193
+ `cannot be overridden via gatewayOptions`);
147
194
  }
148
195
  }
149
196
  }
@@ -264,7 +311,7 @@ class StripeGateway {
264
311
  invoiceId: params.invoiceId,
265
312
  };
266
313
  const sdkParams = {
267
- ...topLevelGatewayOptions,
314
+ ...this.sanitiseDescriptorsIn(topLevelGatewayOptions),
268
315
  amount: params.amount,
269
316
  currency: params.currency.toLowerCase(),
270
317
  description: params.description ?? `Invoice ${params.invoiceId}`,
@@ -458,6 +505,12 @@ class StripeGateway {
458
505
  }
459
506
  }
460
507
  async createOffSessionPayment(params) {
508
+ this.assertNoReservedOffSessionGatewayOptions(params.gatewayOptions);
509
+ const { metadata: gatewayMetadata, ...topLevelGatewayOptions } = params.gatewayOptions ?? {};
510
+ const mergedMetadata = {
511
+ ...(gatewayMetadata ?? {}),
512
+ ...(params.metadata ?? {}),
513
+ };
461
514
  try {
462
515
  const paymentMethodId = params.paymentMethodId ??
463
516
  (await this.resolveDefaultPaymentMethod(params.providerCustomerId));
@@ -472,6 +525,7 @@ class StripeGateway {
472
525
  };
473
526
  }
474
527
  const paymentIntent = await this.stripe.paymentIntents.create({
528
+ ...this.sanitiseDescriptorsIn(topLevelGatewayOptions),
475
529
  amount: params.amount,
476
530
  currency: params.currency.toLowerCase(),
477
531
  customer: params.providerCustomerId,
@@ -479,7 +533,7 @@ class StripeGateway {
479
533
  off_session: true,
480
534
  confirm: true,
481
535
  description: params.description,
482
- metadata: params.metadata,
536
+ metadata: mergedMetadata,
483
537
  expand: ['latest_charge'],
484
538
  }, {
485
539
  idempotencyKey: params.idempotencyKey ??
@@ -1 +1 @@
1
- {"version":3,"file":"stripe.gateway.js","sourceRoot":"","sources":["../../../src/gateways/stripe/stripe.gateway.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stripe.gateway.js","sourceRoot":"","sources":["../../../src/gateways/stripe/stripe.gateway.ts"],"names":[],"mappings":";;;;;;AAAA,2CAAwC;AACxC,oDAA4B;AAa5B,iDAM0B;AAC1B,mCAKiB;AAQjB,MAAa,aAAa;IAoBxB,MAAM,CAAC,wBAAwB;QAC7B,aAAa,CAAC,uBAAuB,GAAG,KAAK,CAAC;IAChD,CAAC;IAED,YACE,SAAiB,EACjB,gBAAwB,EAAE,EAC1B,iBAAgC,IAAI,EACpC,oBAA+C,IAAI;QA3B5C,iBAAY,GAAG,QAAQ,CAAC;QAMhB,WAAM,GAAG,IAAI,eAAM,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAuBvD,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,mBAAmB,GAAG,cAAc,CAAC;QAC1C,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;QAC3C,IAAI,CAAC,MAAM,GAAG,IAAI,gBAAM,CAAC,SAAS,EAAE;YAClC,UAAU,EAAE,0BAAkB;YAC9B,UAAU,EAAE,IAAI;SACjB,CAAC,CAAC;IACL,CAAC;IAWD,IAAI,cAAc;QAChB,OAAO,IAAI,CAAC,mBAAmB,CAAC;IAClC,CAAC;IAOO,qBAAqB;QAC3B,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC9B,MAAM,IAAI,iDAAoC,EAAE,CAAC;QACnD,CAAC;QACD,OAAO,IAAI,CAAC,mBAAmB,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,MAa1B;QAKC,IAAI,CAAC;YAKH,IAAI,CAAC,8BAA8B,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;YAK3D,MAAM,EACJ,iBAAiB,EACjB,OAAO,EAAE,gBAAgB,EACzB,QAAQ,EAAE,eAAe,EACzB,GAAG,sBAAsB,EAC1B,GAAG,MAAM,CAAC,cAAc,IAAI,EAAE,CAAC;YAMhC,MAAM,oBAAoB,GACxB,gBAAgB,IAAI,OAAO,gBAAgB,KAAK,QAAQ;gBACtD,CAAC,CAAG,gBAA4C,CAAC,QAEjC;gBAChB,CAAC,CAAC,SAAS,CAAC;YAChB,MAAM,cAAc,GAA2B;gBAC7C,GAAI,eAAsD;gBAC1D,GAAG,oBAAoB;gBACvB,GAAG,MAAM,CAAC,QAAQ;gBAClB,SAAS,EAAE,MAAM,CAAC,SAAS;aAC5B,CAAC;YAKF,MAAM,+BAA+B,GACnC,gBAAgB,IAAI,OAAO,gBAAgB,KAAK,QAAQ;gBACtD,CAAC,CAAC,CAAC,GAAG,EAAE;oBACJ,MAAM,KAAK,GAAG;wBACZ,GAAI,gBAA4C;qBACjD,CAAC;oBACF,OAAO,KAAK,CAAC,QAAQ,CAAC;oBACtB,OAAO,KAAK,CAAC;gBACf,CAAC,CAAC,EAAE;gBACN,CAAC,CAAC,SAAS,CAAC;YAEhB,MAAM,oBAAoB,GACxB,iBAAiB,IAAI,OAAO,iBAAiB,KAAK,QAAQ;gBACxD,CAAC,CAAE,iBAA6C;gBAChD,CAAC,CAAC,SAAS,CAAC;YAkBhB,MAAM,sBAAsB,GAAG,oBAAoB,EAAE,QAExC,CAAC;YACd,IAAI,CAAC,2BAA2B,CAAC,sBAAsB,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;YAC3E,MAAM,cAAc,GAA2B;gBAC7C,GAAG,sBAAsB;gBACzB,SAAS,EAAE,MAAM,CAAC,SAAS;aAC5B,CAAC;YAMF,MAAM,SAAS,GAAwC;gBAIrD,GAAG,IAAI,CAAC,qBAAqB,CAAC,sBAAsB,CAAC;gBACrD,GAAG,CAAC,IAAI,CAAC,qBAAqB,CAAC,+BAA+B,CAAC,IAAI,EAAE,CAAC;gBACtE,IAAI,EAAE,SAAS;gBACf,UAAU,EAAE;oBACV;wBACE,UAAU,EAAE;4BACV,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE;4BACvC,WAAW,EAAE,MAAM,CAAC,MAAM;4BAC1B,YAAY,EAAE;gCACZ,IAAI,EAAE,MAAM,CAAC,WAAW,IAAI,WAAW,MAAM,CAAC,SAAS,EAAE;6BAC1D;yBACF;wBACD,QAAQ,EAAE,CAAC;qBACZ;iBACF;gBACD,cAAc,EAAE,MAAM,CAAC,aAAa,IAAI,SAAS;gBACjD,WAAW,EAAE,MAAM,CAAC,UAAU;gBAC9B,UAAU,EAAE,MAAM,CAAC,SAAS;gBAC5B,GAAG,CAAC,MAAM,CAAC,SAAS,IAAI;oBACtB,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC;iBAC1D,CAAC;gBACF,mBAAmB,EAAE;oBACnB,GAAG,IAAI,CAAC,qBAAqB,CAAC,oBAAoB,CAAC;oBACnD,QAAQ,EAAE,cAAc;iBACgC;gBAC1D,QAAQ,EAAE,cAAc;aACc,CAAC;YAEzC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CACxD,SAAS,EACT,MAAM,CAAC,cAAc;gBACnB,CAAC,CAAC,EAAE,cAAc,EAAE,MAAM,CAAC,cAAc,EAAE;gBAC3C,CAAC,CAAC,SAAS,CACd,CAAC;YAEF,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;gBACjB,MAAM,IAAI,oCAAuB,CAC/B,qDAAqD,CACtD,CAAC;YACJ,CAAC;YAMD,OAAO;gBACL,WAAW,EAAE,OAAO,CAAC,GAAG;gBACxB,iBAAiB,EAAE,OAAO,CAAC,EAAE;gBAC7B,QAAQ,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,EAAE;aACpC,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,oCAAuB,EAAE,CAAC;gBAC7C,MAAM,KAAK,CAAC;YACd,CAAC;YACD,IAAI,KAAK,YAAY,gBAAM,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;gBAC/C,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,uCAAuC,KAAK,CAAC,OAAO,EAAE,EACtD,KAAK,CAAC,KAAK,CACZ,CAAC;gBACF,MAAM,IAAI,oCAAuB,CAAC,iBAAiB,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YACtE,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAgCO,2BAA2B,CACjC,sBAA0D,EAC1D,SAAiB;QAEjB,MAAM,QAAQ,GAAG,sBAAsB,EAAE,SAAS,CAAC;QACnD,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YACrD,MAAM,IAAI,oCAAuB,CAC/B,2DAA2D,QAAQ,IAAI;gBACrE,uCAAuC,SAAS,sBAAsB;gBACtE,+DAA+D,CAClE,CAAC;QACJ,CAAC;IACH,CAAC;IAgCO,2BAA2B,CACjC,KAAc,EACd,KAAa;QAEb,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE,OAAO,SAAS,CAAC;QAEhD,MAAM,OAAO,GAAG,KAAK;aAClB,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC;aACzB,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC;aACpB,IAAI,EAAE,CAAC;QAEV,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACvC,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,GAAG,KAAK,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,gCAAgC;gBAC/D,sEAAsE;gBACtE,iEAAiE;gBACjE,gCAAgC,CACnC,CAAC;YACF,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,IAAI,OAAO,KAAK,KAAK,EAAE,CAAC;YACtB,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,GAAG,KAAK,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,+BAA+B;gBAC9D,oBAAoB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,WAAW,CACzD,CAAC;QACJ,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAYO,qBAAqB,CAC3B,GAAM;QAEN,IAAI,CAAC,GAAG;YAAE,OAAO,GAAG,CAAC;QAErB,MAAM,IAAI,GAAG,CAAC,6BAA6B,EAAE,sBAAsB,CAAC,CAAC;QACrE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,GAAG,CAAC;YAAE,OAAO,GAAG,CAAC;QAE5C,MAAM,GAAG,GAA4B,EAAE,GAAG,GAAG,EAAE,CAAC;QAChD,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,IAAI,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC;gBAAE,SAAS;YAC5B,MAAM,SAAS,GAAG,IAAI,CAAC,2BAA2B,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;YAClE,IAAI,SAAS,KAAK,SAAS;gBAAE,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC;;gBACxC,GAAG,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;QAC5B,CAAC;QACD,OAAO,GAAQ,CAAC;IAClB,CAAC;IAEO,8BAA8B,CACpC,cAAmD;QAEnD,IAAI,CAAC,cAAc;YAAE,OAAO;QAE5B,MAAM,OAAO,GAAG,cAAc,CAAC,OAElB,CAAC;QACd,MAAM,gBAAgB,GAAG,cAAc,CAAC,QAE3B,CAAC;QACd,MAAM,eAAe,GACnB,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ;YACpC,CAAC,CAAE,OAAO,CAAC,QAAgD;YAC3D,CAAC,CAAC,SAAS,CAAC;QAEhB,IACE,CAAC,gBAAgB,IAAI,gBAAgB,CAAC,SAAS,KAAK,SAAS,CAAC;YAC9D,CAAC,eAAe,IAAI,eAAe,CAAC,SAAS,KAAK,SAAS,CAAC,EAC5D,CAAC;YACD,MAAM,IAAI,oCAAuB,CAC/B,2FAA2F,CAC5F,CAAC;QACJ,CAAC;QAQD,KAAK,MAAM,GAAG,IAAI,oCAA4B,CAAC,MAAM,CACnD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CACxB,EAAE,CAAC;YACF,IAAI,cAAc,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE,CAAC;gBACtC,MAAM,IAAI,oCAAuB,CAC/B,GAAG,GAAG,2DAA2D;oBAC/D,yCAAyC,CAC5C,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAcO,wCAAwC,CAC9C,cAAmD;QAEnD,IAAI,CAAC,cAAc;YAAE,OAAO;QAE5B,MAAM,gBAAgB,GAAG,cAAc,CAAC,QAE3B,CAAC;QACd,IAAI,gBAAgB,IAAI,gBAAgB,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YACjE,MAAM,IAAI,oCAAuB,CAC/B,8DAA8D;gBAC5D,+BAA+B,CAClC,CAAC;QACJ,CAAC;QAED,KAAK,MAAM,GAAG,IAAI,gDAAwC,CAAC,MAAM,CAC/D,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CACxB,EAAE,CAAC;YACF,IAAI,cAAc,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE,CAAC;gBACtC,MAAM,IAAI,oCAAuB,CAC/B,GAAG,GAAG,8DAA8D;oBAClE,yCAAyC,CAC5C,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,MAWlB;QAIC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAC7C;gBACE,cAAc,EAAE,MAAM,CAAC,iBAAiB;gBACxC,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,MAAM,EACJ,MAAM,CAAC,MAAM,KAAK,WAAW;oBAC3B,CAAC,CAAC,WAAW;oBACb,CAAC,CAAC,MAAM,CAAC,MAAM,KAAK,YAAY;wBAC9B,CAAC,CAAC,YAAY;wBACd,CAAC,CAAC,uBAAuB;aAChC,EACD;gBAWE,cAAc,EACZ,MAAM,CAAC,cAAc;oBACrB,UAAU,MAAM,CAAC,iBAAiB,IAAI,MAAM,CAAC,MAAM,EAAE;aACxD,CACF,CAAC;YAEF,OAAO;gBACL,gBAAgB,EAAE,MAAM,CAAC,EAAE;gBAC3B,MAAM,EAAE,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC;aAC5C,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,gBAAM,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;gBAC/C,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,+BAA+B,KAAK,CAAC,OAAO,EAAE,EAC9C,KAAK,CAAC,KAAK,CACZ,CAAC;gBACF,MAAM,IAAI,oCAAuB,CAC/B,wBAAwB,KAAK,CAAC,OAAO,EAAE,CACxC,CAAC;YACJ,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,iBAAyB;QAQ9C,IAAI,CAAC;YAEH,IAAI,iBAAiB,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;gBACxC,OAAO,IAAI,CAAC,wBAAwB,CAAC,iBAAiB,CAAC,CAAC;YAC1D,CAAC;YAGD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,QAAQ,CACtD,iBAAiB,EACjB,EAAE,MAAM,EAAE,CAAC,eAAe,CAAC,EAAE,CAC9B,CAAC;YAEF,MAAM,MAAM,GAAG,MAAM,CAAC,aAAqC,CAAC;YAE5D,OAAO;gBACL,MAAM,EAAE,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,MAAM,CAAC;gBAClD,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE;gBACvC,UAAU,EAAE,MAAM,EAAE,WAAW,IAAI,SAAS;gBAC5C,eAAe,EAAE,MAAM,CAAC,EAAE;aAC3B,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,gBAAM,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;gBAC/C,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,mCAAmC,KAAK,CAAC,OAAO,EAAE,EAClD,KAAK,CAAC,KAAK,CACZ,CAAC;gBACF,MAAM,IAAI,oCAAuB,CAC/B,8BAA8B,KAAK,CAAC,OAAO,EAAE,CAC9C,CAAC;YACJ,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,wBAAwB,CAAC,SAAiB;QAOtD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACxE,MAAM,eAAe,GAAG,OAAO,CAAC,cAA+B,CAAC;QAGhE,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YACjC,OAAO;gBACL,MAAM,EAAE,WAAW;gBACnB,MAAM,EAAE,OAAO,CAAC,YAAY,IAAI,CAAC;gBACjC,QAAQ,EAAE,CAAC,OAAO,CAAC,QAAQ,IAAI,KAAK,CAAC,CAAC,WAAW,EAAE;gBACnD,eAAe,EAAE,eAAe,IAAI,SAAS;aAC9C,CAAC;QACJ,CAAC;QAGD,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YAC9B,OAAO;gBACL,MAAM,EAAE,SAAS;gBACjB,MAAM,EAAE,OAAO,CAAC,YAAY,IAAI,CAAC;gBACjC,QAAQ,EAAE,CAAC,OAAO,CAAC,QAAQ,IAAI,KAAK,CAAC,CAAC,WAAW,EAAE;gBACnD,eAAe,EAAE,eAAe,IAAI,SAAS;aAC9C,CAAC;QACJ,CAAC;QAGD,IAAI,eAAe,EAAE,CAAC;YACpB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,QAAQ,CACtD,eAAe,EACf,EAAE,MAAM,EAAE,CAAC,eAAe,CAAC,EAAE,CAC9B,CAAC;YACF,MAAM,MAAM,GAAG,MAAM,CAAC,aAAqC,CAAC;YAE5D,OAAO;gBACL,MAAM,EAAE,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,MAAM,CAAC;gBAClD,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE;gBACvC,UAAU,EAAE,MAAM,EAAE,WAAW,IAAI,SAAS;gBAC5C,eAAe,EAAE,MAAM,CAAC,EAAE;aAC3B,CAAC;QACJ,CAAC;QAGD,OAAO;YACL,MAAM,EAAE,OAAO,CAAC,cAAc,KAAK,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;YACnE,MAAM,EAAE,OAAO,CAAC,YAAY,IAAI,CAAC;YACjC,QAAQ,EAAE,CAAC,OAAO,CAAC,QAAQ,IAAI,KAAK,CAAC,CAAC,WAAW,EAAE;SACpD,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,aAAa,CACjB,iBAAyB;QAEzB,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;YAC3D,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC3B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,gBAAM,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;gBAE/C,IAAI,KAAK,CAAC,IAAI,KAAK,iCAAiC,EAAE,CAAC;oBACrD,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,iBAAiB,iBAAiB,gDAAgD,CACnF,CAAC;oBACF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;gBAC3B,CAAC;gBACD,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,gCAAgC,KAAK,CAAC,OAAO,EAAE,EAC/C,KAAK,CAAC,KAAK,CACZ,CAAC;gBACF,MAAM,IAAI,oCAAuB,CAC/B,wBAAwB,KAAK,CAAC,OAAO,EAAE,CACxC,CAAC;YACJ,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IA2BD,KAAK,CAAC,mBAAmB,CACvB,MAAiC;QAEjC,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC7B,IAAI,CAAC,oCAAoC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QAEjE,IAAI,CAAC;YAIH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAC;YAC3D,IAAI,MAAM;gBAAE,OAAO,MAAM,CAAC;YAG1B,MAAM,EAAE,QAAQ,EAAE,eAAe,EAAE,GAAG,sBAAsB,EAAE,GAC5D,MAAM,CAAC,cAAc,IAAI,EAAE,CAAC;YAE9B,MAAM,cAAc,GAA2B;gBAC7C,GAAG,CAAE,eAAsD,IAAI,EAAE,CAAC;gBAClE,GAAG,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC;gBAC1B,SAAS,EAAE,MAAM,CAAC,SAAS;aAC5B,CAAC;YAEF,MAAM,SAAS,GAAqC;gBAClD,GAAG,IAAI,CAAC,qBAAqB,CAC3B,sBAAiD,CAClD;gBACD,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE;gBACvC,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,WAAW,MAAM,CAAC,SAAS,EAAE;gBAChE,aAAa,EAAE,MAAM,CAAC,aAAa;gBACnC,QAAQ,EAAE,cAAc;gBACxB,yBAAyB,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;aACT,CAAC;YAGtC,MAAM,cAAc,GAAG,MAAM,CAAC,SAAS;gBACrC,CAAC,CAAC,aAAa,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,SAAS,EAAE;gBACrD,CAAC,CAAC,aAAa,MAAM,CAAC,SAAS,EAAE,CAAC;YAEpC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,SAAS,EAAE;gBAChE,cAAc;aACf,CAAC,CAAC;YAEH,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;gBAI1B,MAAM,IAAI,oCAAuB,CAC/B,gCAAgC,MAAM,CAAC,EAAE,mBAAmB;oBAC1D,+DAA+D;oBAC/D,uDAAuD,CAC1D,CAAC;YACJ,CAAC;YAED,OAAO;gBACL,iBAAiB,EAAE,MAAM,CAAC,EAAE;gBAC5B,YAAY,EAAE,MAAM,CAAC,aAAa;gBAClC,MAAM,EAAE,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,MAAM,CAAC;gBACpD,MAAM,EAAE,KAAK;gBACb,cAAc,EAAE,MAAM,CAAC,MAAM;aAC9B,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,oCAAuB;gBAAE,MAAM,KAAK,CAAC;YAC1D,IAAI,KAAK,YAAY,8CAAiC;gBAAE,MAAM,KAAK,CAAC;YACpE,IAAI,KAAK,YAAY,iDAAoC;gBAAE,MAAM,KAAK,CAAC;YACvE,IAAI,KAAK,YAAY,gBAAM,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;gBAC/C,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,sCAAsC,KAAK,CAAC,OAAO,EAAE,EACrD,KAAK,CAAC,KAAK,CACZ,CAAC;gBACF,IAAI,KAAK,YAAY,gBAAM,CAAC,MAAM,CAAC,yBAAyB,EAAE,CAAC;oBAC7D,MAAM,IAAI,oCAAuB,CAC/B,iEAAiE,KAAK,CAAC,OAAO,EAAE,CACjF,CAAC;gBACJ,CAAC;gBACD,IAAI,KAAK,YAAY,gBAAM,CAAC,MAAM,CAAC,sBAAsB,EAAE,CAAC;oBAC1D,MAAM,IAAI,oCAAuB,CAC/B,gCAAgC,KAAK,CAAC,OAAO,aAAa;wBACxD,4DAA4D;wBAC5D,wBAAwB,CAC3B,CAAC;gBACJ,CAAC;gBACD,IAAI,KAAK,YAAY,gBAAM,CAAC,MAAM,CAAC,yBAAyB,EAAE,CAAC;oBAC7D,MAAM,IAAI,oCAAuB,CAC/B,sCAAsC,KAAK,CAAC,OAAO,EAAE,CACtD,CAAC;gBACJ,CAAC;gBACD,MAAM,IAAI,oCAAuB,CAAC,iBAAiB,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YACtE,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAyBO,KAAK,CAAC,wBAAwB,CACpC,MAAiC;QAEjC,MAAM,IAAI,GAAG,IAAI,CAAC,iBAAiB,CAAC;QACpC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,8BAA8B;YAAE,OAAO,IAAI,CAAC;QAE/D,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,8BAA8B,CACxD,MAAM,CAAC,SAAS,EAChB,IAAI,CAAC,YAAY,CAClB,CAAC;QACF,IAAI,CAAC,QAAQ,EAAE,iBAAiB;YAAE,OAAO,IAAI,CAAC;QAE9C,IAAI,MAA4B,CAAC;QACjC,IAAI,CAAC;YACH,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,QAAQ,CAChD,QAAQ,CAAC,iBAAiB,CAC3B,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAKf,IACE,KAAK,YAAY,gBAAM,CAAC,MAAM,CAAC,WAAW;gBAC1C,KAAK,CAAC,IAAI,KAAK,kBAAkB,EACjC,CAAC;gBACD,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,mBAAmB,QAAQ,CAAC,EAAE,0BAA0B;oBACtD,iBAAiB,QAAQ,CAAC,iBAAiB,kBAAkB,CAChE,CAAC;gBACF,OAAO,IAAI,CAAC;YACd,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;QAMD,IACE,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM;YAC/B,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,EAC/D,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,0BAA0B,MAAM,CAAC,EAAE,gBAAgB,MAAM,CAAC,SAAS,GAAG;gBACpE,kCAAkC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,IAAI;gBACnF,WAAW,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,qBAAqB;gBAC7E,2EAA2E;gBAC3E,4EAA4E,CAC/E,CAAC;YACF,OAAO,IAAI,CAAC;QACd,CAAC;QAED,QAAQ,MAAM,CAAC,MAAM,EAAE,CAAC;YACtB,KAAK,yBAAyB,CAAC;YAC/B,KAAK,uBAAuB,CAAC;YAC7B,KAAK,iBAAiB;gBACpB,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;oBAG1B,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,0BAA0B,MAAM,CAAC,EAAE,uCAAuC,CAC3E,CAAC;oBACF,OAAO,IAAI,CAAC;gBACd,CAAC;gBACD,OAAO;oBACL,iBAAiB,EAAE,MAAM,CAAC,EAAE;oBAC5B,YAAY,EAAE,MAAM,CAAC,aAAa;oBAClC,MAAM,EAAE,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,MAAM,CAAC;oBACpD,MAAM,EAAE,IAAI;oBACZ,cAAc,EAAE,MAAM,CAAC,MAAM;iBAC9B,CAAC;YACJ,KAAK,YAAY,CAAC;YAClB,KAAK,WAAW;gBACd,MAAM,IAAI,8CAAiC,CACzC,iBAAiB,MAAM,CAAC,EAAE,gBAAgB,MAAM,CAAC,SAAS,MAAM;oBAC9D,WAAW,MAAM,CAAC,MAAM,gCAAgC;oBACxD,sBAAsB,CACzB,CAAC;YAEJ,KAAK,UAAU,CAAC;YAChB,KAAK,kBAAkB;gBACrB,OAAO,IAAI,CAAC;YACd;gBAOE,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,0BAA0B,MAAM,CAAC,EAAE,qBAAqB;oBACtD,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAC/C,CAAC;gBACF,OAAO,IAAI,CAAC;QAChB,CAAC;IACH,CAAC;IAyBD,KAAK,CAAC,mBAAmB,CACvB,iBAAyB;QAEzB,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;YAC3D,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC;QACnD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,gBAAM,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;gBAC/C,IAAI,KAAK,CAAC,IAAI,KAAK,iCAAiC,EAAE,CAAC;oBAOrD,MAAM,MAAM,GACV,MAAM,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;oBAC/D,IAAI,MAAM,CAAC,MAAM,KAAK,WAAW,IAAI,MAAM,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;wBAClE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC;oBAClD,CAAC;oBACD,IAAI,MAAM,CAAC,MAAM,KAAK,YAAY,EAAE,CAAC;wBACnC,MAAM,IAAI,iDAAoC,CAC5C,iBAAiB,iBAAiB,0BAA0B;4BAC1D,2DAA2D;4BAC3D,yDAAyD;4BACzD,wBAAwB,CAC3B,CAAC;oBACJ,CAAC;oBACD,IAAI,MAAM,CAAC,MAAM,KAAK,iBAAiB,EAAE,CAAC;wBACxC,MAAM,IAAI,iDAAoC,CAC5C,iBAAiB,iBAAiB,yBAAyB;4BACzD,wDAAwD;4BACxD,sCAAsC,CACzC,CAAC;oBACJ,CAAC;oBAGD,MAAM,IAAI,oCAAuB,CAC/B,iBAAiB,iBAAiB,uBAAuB;wBACvD,IAAI,MAAM,CAAC,MAAM,oBAAoB,CACxC,CAAC;gBACJ,CAAC;gBACD,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,sCAAsC,KAAK,CAAC,OAAO,EAAE,EACrD,KAAK,CAAC,KAAK,CACZ,CAAC;gBACF,MAAM,IAAI,oCAAuB,CAC/B,sCAAsC,KAAK,CAAC,OAAO,EAAE,CACtD,CAAC;YACJ,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAkBO,oCAAoC,CAC1C,cAAmD;QAEnD,IAAI,CAAC,cAAc;YAAE,OAAO;QAE5B,MAAM,gBAAgB,GAAG,cAAc,CAAC,QAE3B,CAAC;QACd,IAAI,gBAAgB,IAAI,gBAAgB,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YACjE,MAAM,IAAI,oCAAuB,CAC/B,8DAA8D;gBAC5D,+BAA+B,CAClC,CAAC;QACJ,CAAC;QAMD,MAAM,gBAAgB,GAAG,mDAA2C,CAAC,MAAM,CACzE,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAC5B,CAAC;QAEF,KAAK,MAAM,GAAG,IAAI,gBAAgB,EAAE,CAAC;YACnC,IAAI,cAAc,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE,CAAC;gBACtC,MAAM,IAAI,oCAAuB,CAC/B,GAAG,GAAG,0DAA0D;oBAC9D,yCAAyC,CAC5C,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,MAGnB;QACC,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;QAC/C,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,IAAI,oCAAuB,CAAC,iCAAiC,CAAC,CAAC;QACvE,CAAC;QAED,IAAI,KAAmB,CAAC;QACxB,IAAI,CAAC;YACH,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CACzC,MAAM,CAAC,IAAI,EACX,GAAG,EACH,IAAI,CAAC,aAAa,CACnB,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;YACzE,MAAM,IAAI,oCAAuB,CAC/B,iDAAiD,OAAO,EAAE,CAC3D,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;IAC3C,CAAC;IAMD,KAAK,CAAC,wBAAwB,CAAC,MAI9B;QACC,IAAI,CAAC;YAkBH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC;gBAClD,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,QAAQ,EAAE,MAAM,CAAC,QAAQ;aAC1B,CAAC,CAAC;YAEH,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,4BAA4B,QAAQ,CAAC,EAAE,QAAQ,MAAM,CAAC,KAAK,EAAE,CAC9D,CAAC;YACF,OAAO,EAAE,kBAAkB,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC;QAC7C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,oCAAuB;gBAAE,MAAM,KAAK,CAAC;YAC1D,IAAI,KAAK,YAAY,gBAAM,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;gBAC/C,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,2CAA2C,KAAK,CAAC,OAAO,EAAE,EAC1D,KAAK,CAAC,KAAK,CACZ,CAAC;gBACF,MAAM,IAAI,oCAAuB,CAAC,iBAAiB,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YACtE,CAAC;YACD,MAAM,IAAI,oCAAuB,CAC/B,8CAA8C,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CACvG,CAAC;QACJ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,MAU7B;QAUC,IAAI,CAAC,wCAAwC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QAErE,MAAM,EAAE,QAAQ,EAAE,eAAe,EAAE,GAAG,sBAAsB,EAAE,GAC5D,MAAM,CAAC,cAAc,IAAI,EAAE,CAAC;QAC9B,MAAM,cAAc,GAA2B;YAC7C,GAAG,CAAE,eAAsD,IAAI,EAAE,CAAC;YAClE,GAAG,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC;SAC3B,CAAC;QAEF,IAAI,CAAC;YAOH,MAAM,eAAe,GACnB,MAAM,CAAC,eAAe;gBACtB,CAAC,MAAM,IAAI,CAAC,2BAA2B,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAC;YAEtE,IAAI,CAAC,eAAe,EAAE,CAAC;gBAGrB,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,iDAAiD,MAAM,CAAC,kBAAkB,KAAK;oBAC7E,iEAAiE;oBACjE,2CAA2C,CAC9C,CAAC;gBACF,OAAO;oBACL,iBAAiB,EAAE,EAAE;oBACrB,MAAM,EAAE,QAAQ;oBAChB,aAAa,EAAE,mBAAmB;iBACnC,CAAC;YACJ,CAAC;YAED,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,CAC3D;gBAIE,GAAG,IAAI,CAAC,qBAAqB,CAC3B,sBAAiD,CAClD;gBACD,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE;gBACvC,QAAQ,EAAE,MAAM,CAAC,kBAAkB;gBACnC,cAAc,EAAE,eAAe;gBAC/B,WAAW,EAAE,IAAI;gBACjB,OAAO,EAAE,IAAI;gBACb,WAAW,EAAE,MAAM,CAAC,WAAW;gBAC/B,QAAQ,EAAE,cAAc;gBAGxB,MAAM,EAAE,CAAC,eAAe,CAAC;aACU,EACrC;gBAIE,cAAc,EACZ,MAAM,CAAC,cAAc;oBACrB,CAAC,MAAM,CAAC,QAAQ,EAAE,SAAS;wBACzB,CAAC,CAAC,eAAe,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE;wBAC5C,CAAC,CAAC,SAAS,CAAC;aACjB,CACF,CAAC;YAEF,IAAI,aAAa,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;gBACzC,MAAM,MAAM,GAAG,aAAa,CAAC,aAAa,CAAC;gBAC3C,MAAM,UAAU,GACd,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,EAAE,WAAW;oBAC/C,CAAC,CAAC,MAAM,CAAC,WAAW;oBACpB,CAAC,CAAC,SAAS,CAAC;gBAEhB,OAAO;oBACL,iBAAiB,EAAE,aAAa,CAAC,EAAE;oBACnC,MAAM,EAAE,WAAW;oBACnB,UAAU,EAAE,UAAU,IAAI,SAAS;iBACpC,CAAC;YACJ,CAAC;YAED,IAAI,aAAa,CAAC,MAAM,KAAK,iBAAiB,EAAE,CAAC;gBAC/C,OAAO;oBACL,iBAAiB,EAAE,aAAa,CAAC,EAAE;oBACnC,MAAM,EAAE,iBAAiB;oBACzB,aAAa,EAAE,cAAc;oBAC7B,YAAY,EAAE,aAAa,CAAC,aAAa,IAAI,SAAS;iBACvD,CAAC;YACJ,CAAC;YAED,OAAO;gBACL,iBAAiB,EAAE,aAAa,CAAC,EAAE;gBACnC,MAAM,EAAE,QAAQ;gBAIhB,aAAa,EACX,aAAa,CAAC,kBAAkB,EAAE,IAAI,IAAI,eAAe;aAC5D,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAEf,IAAI,KAAK,YAAY,gBAAM,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC;gBACnD,OAAO;oBAQL,iBAAiB,EAAE,KAAK,CAAC,cAAc,EAAE,EAAE,IAAI,EAAE;oBACjD,MAAM,EAAE,QAAQ;oBAChB,aAAa,EAAE,KAAK,CAAC,IAAI,IAAI,eAAe;iBAC7C,CAAC;YACJ,CAAC;YASD,IACE,KAAK,YAAY,gBAAM,CAAC,MAAM,CAAC,yBAAyB;gBACxD,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,EAClC,CAAC;gBACD,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,mCAAmC,MAAM,CAAC,kBAAkB,SAAS;oBACnE,kBAAkB,MAAM,CAAC,eAAe,IAAI,oBAAoB,IAAI;oBACpE,uCAAuC,KAAK,CAAC,OAAO,EAAE,CACzD,CAAC;gBACF,OAAO;oBACL,iBAAiB,EAAE,KAAK,CAAC,cAAc,EAAE,EAAE,IAAI,EAAE;oBACjD,MAAM,EAAE,QAAQ;oBAChB,aAAa,EAAE,4BAA4B;iBAC5C,CAAC;YACJ,CAAC;YAQD,IACE,KAAK,YAAY,gBAAM,CAAC,MAAM,CAAC,yBAAyB;gBACxD,MAAM,CAAC,eAAe,EACtB,CAAC;gBACD,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,4CAA4C,MAAM,CAAC,eAAe,GAAG;oBACnE,oDAAoD;oBACpD,SAAS,KAAK,CAAC,IAAI,IAAI,OAAO,WAAW,KAAK,CAAC,KAAK,IAAI,OAAO,KAAK;oBACpE,2EAA2E;oBAC3E,qEAAqE;oBACrE,gCAAgC,KAAK,CAAC,OAAO,EAAE,CAClD,CAAC;YACJ,CAAC;YAED,MAAM,IAAI,oCAAuB,CAC/B,+BAA+B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CACxF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,MAExB;QACC,IAAI,CAAC;YACH,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAC7C,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC;oBAC9B,QAAQ,EAAE,MAAM,CAAC,kBAAkB;oBACnC,IAAI,EAAE,MAAM;oBACZ,KAAK,EAAE,GAAG;iBACX,CAAC;gBACF,IAAI,CAAC,2BAA2B,CAAC,MAAM,CAAC,kBAAkB,CAAC;aAC5D,CAAC,CAAC;YAEH,OAAO,OAAO,CAAC,IAAI;iBAChB,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC;iBAC/B,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;gBACd,MAAM,IAAI,GAAG,MAAM,CAAC,IAAK,CAAC;gBAC1B,OAAO;oBACL,EAAE,EAAE,MAAM,CAAC,EAAE;oBAGb,KAAK,EAAE,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,KAAK;oBACvC,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,QAAQ,EAAE,IAAI,CAAC,SAAS;oBACxB,OAAO,EAAE,IAAI,CAAC,QAAQ;oBACtB,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,IAAI;oBAC7B,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,IAAI;oBAC7B,SAAS,EAAE,MAAM,CAAC,EAAE,KAAK,SAAS;iBACnC,CAAC;YACJ,CAAC,CAAC,CAAC;QACP,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,CAAC,eAAe,CAAC,oBAAoB,EAAE,KAAK,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,MAGzB;QACC,IAAI,CAAC;YAIH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,QAAQ,CACtD,MAAM,CAAC,eAAe,CACvB,CAAC;YACF,MAAM,KAAK,GACT,OAAO,MAAM,CAAC,QAAQ,KAAK,QAAQ;gBACjC,CAAC,CAAC,MAAM,CAAC,QAAQ;gBACjB,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,IAAI,IAAI,CAAC,CAAC;YAEpC,IAAI,KAAK,KAAK,MAAM,CAAC,kBAAkB,EAAE,CAAC;gBACxC,MAAM,IAAI,2CAA8B,CACtC,kBAAkB,MAAM,CAAC,eAAe,+BAA+B;oBACrE,GAAG,MAAM,CAAC,kBAAkB,EAAE,CACjC,CAAC;YACJ,CAAC;YAED,MAAM,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QAClE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,2CAA8B;gBAAE,MAAM,KAAK,CAAC;YACjE,MAAM,IAAI,CAAC,eAAe,CAAC,qBAAqB,EAAE,KAAK,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,MAG7B;QACC,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,kBAAkB,EAAE;gBAE5D,gBAAgB,EAAE;oBAChB,sBAAsB,EAAE,MAAM,CAAC,eAAe,IAAI,EAAE;iBACrD;aACF,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,CAAC,eAAe,CAAC,yBAAyB,EAAE,KAAK,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,MAE7B;QACC,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,2BAA2B,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;QAC3E,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,CAAC,eAAe,CAAC,yBAAyB,EAAE,KAAK,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,MAG7B;QACC,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,QAAQ,CACzD,MAAM,CAAC,aAAa,CACrB,CAAC;YACF,MAAM,MAAM,GAAG,WAAW,CAAC,cAAc,CAAC;YAC1C,MAAM,eAAe,GACnB,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,IAAI,IAAI,CAAC,CAAC;YAE7D,IAAI,CAAC,eAAe,EAAE,CAAC;gBACrB,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,gBAAgB,MAAM,CAAC,aAAa,6CAA6C,CAClF,CAAC;gBACF,OAAO,EAAE,eAAe,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;YACvD,CAAC;YAID,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,2BAA2B,CAC5D,MAAM,CAAC,kBAAkB,CAC1B,CAAC;YACF,IAAI,eAAe,EAAE,CAAC;gBACpB,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;YACjD,CAAC;YAED,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,kBAAkB,EAAE;gBAC5D,gBAAgB,EAAE,EAAE,sBAAsB,EAAE,eAAe,EAAE;aAC9D,CAAC,CAAC;YAEH,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,kBAAkB,eAAe,2CAA2C,MAAM,CAAC,kBAAkB,EAAE,CACxG,CAAC;YACF,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;QAChD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,oCAAuB;gBAAE,MAAM,KAAK,CAAC;YAC1D,IAAI,KAAK,YAAY,gBAAM,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;gBAC/C,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,0CAA0C,KAAK,CAAC,OAAO,EAAE,EACzD,KAAK,CAAC,KAAK,CACZ,CAAC;gBACF,MAAM,IAAI,oCAAuB,CAAC,iBAAiB,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YACtE,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAQO,eAAe,CAAC,SAAiB,EAAE,KAAc;QACvD,IAAI,KAAK,YAAY,oCAAuB;YAAE,OAAO,KAAK,CAAC;QAC3D,IAAI,KAAK,YAAY,gBAAM,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;YAC/C,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,UAAU,SAAS,YAAY,KAAK,CAAC,OAAO,EAAE,EAC9C,KAAK,CAAC,KAAK,CACZ,CAAC;YACF,OAAO,IAAI,oCAAuB,CAAC,iBAAiB,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QACvE,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAkCO,sBAAsB,CAC5B,KAA8C;QAE9C,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC;QAChC,IAAI,KAAK,KAAK,gBAAgB,IAAI,KAAK,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;YACrE,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC;QACpC,IACE,KAAK,CAAC,IAAI,KAAK,kBAAkB;YACjC,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,EAChC,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QAMD,OAAO,CACL,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC;YAChC,iCAAiC,CAAC,IAAI,CAAC,OAAO,CAAC,CAChD,CAAC;IACJ,CAAC;IASO,KAAK,CAAC,2BAA2B,CACvC,kBAA0B;QAE1B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;QAI1E,IAAI,QAAQ,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC;QAElC,MAAM,MAAM,GAAG,QAAQ,CAAC,gBAAgB,EAAE,sBAAsB,CAAC;QACjE,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC;QACzB,OAAO,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;IACzD,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,MAMxB;QAIC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC;gBACzD,IAAI,EAAE,OAAO;gBACb,QAAQ,EAAE,MAAM,CAAC,kBAAkB;gBAKnC,QAAQ,EAAE,CAAC,MAAM,CAAC,QAAQ,IAAI,KAAK,CAAC,CAAC,WAAW,EAAE;gBAClD,WAAW,EAAE,MAAM,CAAC,UAAU;gBAC9B,UAAU,EAAE,MAAM,CAAC,SAAS;gBAC5B,QAAQ,EAAE,MAAM,CAAC,QAAQ;aAC1B,CAAC,CAAC;YAEH,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;gBACjB,MAAM,IAAI,oCAAuB,CAC/B,2CAA2C,CAC5C,CAAC;YACJ,CAAC;YAED,OAAO;gBACL,QAAQ,EAAE,OAAO,CAAC,GAAG;gBAKrB,eAAe,EAAE,OAAO,CAAC,EAAE;aAC5B,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,oCAAuB,EAAE,CAAC;gBAC7C,MAAM,KAAK,CAAC;YACd,CAAC;YACD,IAAI,KAAK,YAAY,gBAAM,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;gBAC/C,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,qCAAqC,KAAK,CAAC,OAAO,EAAE,EACpD,KAAK,CAAC,KAAK,CACZ,CAAC;gBACF,MAAM,IAAI,oCAAuB,CAAC,iBAAiB,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YACtE,CAAC;YACD,MAAM,IAAI,oCAAuB,CAC/B,mCAAmC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAC5F,CAAC;QACJ,CAAC;IACH,CAAC;IAMO,KAAK,CAAC,qBAAqB,CACjC,KAAmB;QAEnB,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;YACnB,KAAK,4BAA4B;gBAC/B,OAAO,IAAI,CAAC,8BAA8B,CAAC,KAAK,CAAC,CAAC;YACpD,KAAK,2BAA2B;gBAC9B,OAAO,IAAI,CAAC,6BAA6B,CAAC,KAAK,CAAC,CAAC;YACnD,KAAK,0BAA0B;gBAC7B,OAAO,IAAI,CAAC,4BAA4B,CAAC,KAAK,CAAC,CAAC;YAClD,KAAK,+BAA+B;gBAClC,OAAO,IAAI,CAAC,yBAAyB,CAAC,KAAK,CAAC,CAAC;YAC/C,KAAK,gBAAgB,CAAC;YACtB,KAAK,gBAAgB;gBACnB,OAAO,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;YACvC,KAAK,iBAAiB;gBACpB,OAAO,IAAI,CAAC,8BAA8B,CAAC,KAAK,CAAC,CAAC;YACpD,KAAK,wBAAwB,CAAC;YAC9B,KAAK,uBAAuB;gBAC1B,OAAO,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;YACxC;gBAIE,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,yCAAyC,KAAK,CAAC,IAAI,cAAc,KAAK,CAAC,EAAE,GAAG,CAC7E,CAAC;gBACF,OAAO;oBACL,IAAI,EAAE,SAAS;oBACf,OAAO,EAAE,KAAK,CAAC,EAAE;oBACjB,SAAS,EAAE,KAAK,CAAC,IAAI;iBACtB,CAAC;QACN,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,8BAA8B,CAC1C,KAAmB;QAEnB,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,MAAiC,CAAC;QAG7D,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC7B,OAAO,IAAI,CAAC,2BAA2B,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC1D,CAAC;QAMD,MAAM,eAAe,GACnB,OAAO,OAAO,CAAC,cAAc,KAAK,QAAQ;YACxC,CAAC,CAAC,OAAO,CAAC,cAAc;YACxB,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,IAAI,IAAI,CAAC,CAAC;QAG3C,IAAI,UAA8B,CAAC;QACnC,IAAI,MAAM,GAAG,OAAO,CAAC,YAAY,IAAI,CAAC,CAAC;QACvC,IAAI,QAAQ,GAAG,CAAC,OAAO,CAAC,QAAQ,IAAI,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;QACzD,IAAI,YAAY,GAAkB,IAAI,CAAC;QAEvC,IAAI,CAAC;YACH,IAAI,CAAC,eAAe;gBAAE,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;YACtE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,QAAQ,CACtD,eAAe,EACf,EAAE,MAAM,EAAE,CAAC,eAAe,CAAC,EAAE,CAC9B,CAAC;YACF,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC;YAC7B,MAAM,MAAM,GAAG,MAAM,CAAC,aAAqC,CAAC;YAC5D,UAAU,GAAG,MAAM,EAAE,WAAW,IAAI,SAAS,CAAC;YAC9C,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;YACvB,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;QAC3C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,kDAAkD,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,CAC7G,CAAC;QACJ,CAAC;QAYD,MAAM,OAAO,GACX,OAAO,CAAC,cAAc,KAAK,MAAM;YACjC,OAAO,CAAC,cAAc,KAAK,qBAAqB,CAAC;QAEnD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,oBAAoB,OAAO,CAAC,EAAE,iCAAiC;gBAC7D,IAAI,OAAO,CAAC,cAAc,qBAAqB,YAAY,IAAI,SAAS,MAAM;gBAC9E,mEAAmE,CACtE,CAAC;QACJ,CAAC;QAED,OAAO;YACL,IAAI,EAAE,CAAC,OAAO;gBACZ,CAAC,CAAC,mBAAmB;gBACrB,CAAC,CAAC,oBAAoB,CAA4B;YACpD,OAAO,EAAE,KAAK,CAAC,EAAE;YACjB,QAAQ,EAAE,IAAI,CAAC,YAAY;YAE3B,iBAAiB,EAAE,OAAO,CAAC,EAAE;YAC7B,MAAM;YACN,QAAQ;YACR,UAAU;YACV,YAAY,EAAE;gBACZ,SAAS,EAAE,OAAO,CAAC,EAAE;gBAErB,eAAe;gBACf,SAAS,EAAE,OAAO,CAAC,QAAQ,EAAE,SAAS;gBACtC,aAAa,EAAE,OAAO,CAAC,cAAc;gBACrC,aAAa,EAAE,OAAO,CAAC,cAAc;aACtC;SACF,CAAC;IACJ,CAAC;IAqBO,kBAAkB,CAAC,KAAmB;QAC5C,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,MAAwB,CAAC;QAEpD,MAAM,QAAQ,GACZ,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ;YAChC,CAAC,CAAC,OAAO,CAAC,MAAM;YAChB,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QACjC,MAAM,eAAe,GACnB,OAAO,OAAO,CAAC,cAAc,KAAK,QAAQ;YACxC,CAAC,CAAC,OAAO,CAAC,cAAc;YACxB,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,IAAI,IAAI,CAAC,CAAC;QAE3C,OAAO;YACL,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,uBAAuB;gBAC3C,CAAC,CAAC,wBAAwB;gBAC1B,CAAC,CAAC,kBAAkB,CAA4B;YAClD,OAAO,EAAE,KAAK,CAAC,EAAE;YACjB,QAAQ,EAAE,IAAI,CAAC,YAAY;YAC3B,iBAAiB,EAAE,eAAe,IAAI,QAAQ;YAC9C,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE;YACxC,YAAY,EAAE;gBACZ,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,QAAQ;gBACR,eAAe;gBACf,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,aAAa,EAAE,OAAO,CAAC,MAAM;aAC9B;SACF,CAAC;IACJ,CAAC;IAEO,2BAA2B,CACjC,KAAmB,EACnB,OAAgC;QAEhC,MAAM,UAAU,GACd,OAAO,OAAO,CAAC,QAAQ,KAAK,QAAQ;YAClC,CAAC,CAAC,OAAO,CAAC,QAAQ;YAClB,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,IAAI,IAAI,CAAC,CAAC;QAErC,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,+CAA+C,UAAU,aAAa,OAAO,CAAC,EAAE,GAAG,CACpF,CAAC;QAEF,OAAO;YACL,IAAI,EAAE,iBAA4C;YAClD,OAAO,EAAE,KAAK,CAAC,EAAE;YACjB,QAAQ,EAAE,IAAI,CAAC,YAAY;YAC3B,iBAAiB,EAAG,OAAO,CAAC,YAAuB,IAAI,OAAO,CAAC,EAAE;YACjE,MAAM,EAAE,CAAC;YACT,QAAQ,EAAE,CAAC,OAAO,CAAC,QAAQ,IAAI,KAAK,CAAC,CAAC,WAAW,EAAE;YACnD,YAAY,EAAE;gBACZ,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,UAAU;gBACV,aAAa,EAAE,OAAO,CAAC,YAAY;gBACnC,IAAI,EAAE,OAAO;aACd;SACF,CAAC;IACJ,CAAC;IAEO,6BAA6B,CACnC,KAAmB;QAEnB,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,MAA8B,CAAC;QAEzD,OAAO;YACL,IAAI,EAAE,oBAA+C;YACrD,OAAO,EAAE,KAAK,CAAC,EAAE;YACjB,QAAQ,EAAE,IAAI,CAAC,YAAY;YAC3B,iBAAiB,EAAE,MAAM,CAAC,EAAE;YAC5B,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE;YACvC,YAAY,EAAE;gBACZ,SAAS,EAAE,MAAM,CAAC,QAAQ,EAAE,SAAS;gBACrC,MAAM,EAAE,MAAM,CAAC,MAAM;aACtB;SACF,CAAC;IACJ,CAAC;IAgBO,KAAK,CAAC,4BAA4B,CACxC,KAAmB;QAEnB,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,MAA8B,CAAC;QAKzD,IAAI,UAA8B,CAAC;QACnC,MAAM,MAAM,GAAG,MAAM,CAAC,aAAa,CAAC;QACpC,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YACzC,UAAU,GAAG,MAAM,CAAC,WAAW,IAAI,SAAS,CAAC;QAC/C,CAAC;aAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YACtC,IAAI,CAAC;gBACH,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;gBACrD,UAAU,GAAG,CAAC,CAAC,WAAW,IAAI,SAAS,CAAC;YAC1C,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,2CAA2C,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,CACtG,CAAC;YACJ,CAAC;QACH,CAAC;QAED,OAAO;YACL,IAAI,EAAE,mBAA8C;YACpD,OAAO,EAAE,KAAK,CAAC,EAAE;YACjB,QAAQ,EAAE,IAAI,CAAC,YAAY;YAC3B,iBAAiB,EAAE,MAAM,CAAC,EAAE;YAC5B,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE;YACvC,UAAU;YACV,YAAY,EAAE;gBACZ,eAAe,EAAE,MAAM,CAAC,EAAE;gBAC1B,SAAS,EAAE,MAAM,CAAC,QAAQ,EAAE,SAAS;gBACrC,aAAa,EAAE,MAAM,CAAC,MAAM;aAC7B;SACF,CAAC;IACJ,CAAC;IAEO,yBAAyB,CAAC,KAAmB;QACnD,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,MAA8B,CAAC;QAEzD,OAAO;YACL,IAAI,EAAE,gBAA2C;YACjD,OAAO,EAAE,KAAK,CAAC,EAAE;YACjB,QAAQ,EAAE,IAAI,CAAC,YAAY;YAC3B,iBAAiB,EAAE,MAAM,CAAC,EAAE;YAC5B,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE;YACvC,YAAY,EAAE;gBACZ,SAAS,EAAE,MAAM,CAAC,QAAQ,EAAE,SAAS;gBACrC,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,gBAAgB,EAAE,MAAM,CAAC,kBAAkB,EAAE,OAAO;aACrD;SACF,CAAC;IACJ,CAAC;IA4BO,iBAAiB,CAAC,KAAmB;QAC3C,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,MAAuB,CAAC;QAClD,MAAM,eAAe,GACnB,OAAO,MAAM,CAAC,cAAc,KAAK,QAAQ;YACvC,CAAC,CAAC,MAAM,CAAC,cAAc;YACvB,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QACxC,MAAM,QAAQ,GACZ,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ;YAC/B,CAAC,CAAC,MAAM,CAAC,MAAM;YACf,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,IAAI,SAAS,CAAC,CAAC;QAEvC,MAAM,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACpD,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,YAAY,KAAK,CAAC,IAAI,4BAA4B,MAAM,CAAC,MAAM,IAAI;gBACjE,aAAa,MAAM,CAAC,EAAE,aAAa,KAAK,CAAC,EAAE,GAAG,CACjD,CAAC;YACF,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC;QACvE,CAAC;QAED,OAAO;YACL,IAAI;YACJ,OAAO,EAAE,KAAK,CAAC,EAAE;YACjB,QAAQ,EAAE,IAAI,CAAC,YAAY;YAC3B,iBAAiB,EAAE,eAAe;YAClC,gBAAgB,EAAE,MAAM,CAAC,EAAE;YAC3B,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE;YACvC,YAAY,EAAE;gBACZ,QAAQ;gBACR,QAAQ,EAAE,MAAM,CAAC,EAAE;gBACnB,YAAY,EAAE,MAAM,CAAC,MAAM;gBAC3B,YAAY,EAAE,MAAM,CAAC,MAAM;gBAC3B,aAAa,EAAE,MAAM,CAAC,cAAc;gBACpC,SAAS,EAAE,MAAM,CAAC,QAAQ,EAAE,SAAS;aACtC;SACF,CAAC;IACJ,CAAC;IAUO,kBAAkB,CACxB,MAA+B;QAE/B,QAAQ,MAAM,EAAE,CAAC;YACf,KAAK,WAAW;gBACd,OAAO,kBAAkB,CAAC;YAC5B,KAAK,QAAQ,CAAC;YACd,KAAK,UAAU;gBACb,OAAO,eAAe,CAAC;YACzB;gBACE,OAAO,IAAI,CAAC;QAChB,CAAC;IACH,CAAC;IAcO,8BAA8B,CACpC,KAAmB;QAEnB,IAAI,CAAC,aAAa,CAAC,uBAAuB,EAAE,CAAC;YAC3C,aAAa,CAAC,uBAAuB,GAAG,IAAI,CAAC;YAC7C,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,qEAAqE;gBACnE,uEAAuE;gBACvE,wEAAwE;gBACxE,oEAAoE;gBACpE,yDAAyD;gBACzD,4CAA4C,CAC/C,CAAC;QACJ,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC;IACvE,CAAC;IAEO,sBAAsB,CAC5B,MAAmC;QAEnC,QAAQ,MAAM,EAAE,CAAC;YACf,KAAK,yBAAyB,CAAC;YAC/B,KAAK,uBAAuB,CAAC;YAC7B,KAAK,iBAAiB;gBACpB,OAAO,SAAS,CAAC;YACnB,KAAK,YAAY;gBACf,OAAO,YAAY,CAAC;YACtB,KAAK,WAAW;gBACd,OAAO,WAAW,CAAC;YACrB,KAAK,UAAU;gBACb,OAAO,WAAW,CAAC;YACrB;gBACE,OAAO,QAAQ,CAAC;QACpB,CAAC;IACH,CAAC;IAiBO,wBAAwB,CAC9B,MAAmC;QAEnC,QAAQ,MAAM,EAAE,CAAC;YACf,KAAK,yBAAyB;gBAC5B,OAAO,yBAAyB,CAAC;YACnC,KAAK,uBAAuB;gBAC1B,OAAO,uBAAuB,CAAC;YACjC,KAAK,iBAAiB;gBACpB,OAAO,iBAAiB,CAAC;YAC3B,KAAK,YAAY;gBACf,OAAO,YAAY,CAAC;YACtB,KAAK,WAAW;gBACd,OAAO,WAAW,CAAC;YACrB;gBACE,MAAM,IAAI,oCAAuB,CAC/B,oCAAoC,MAAM,+BAA+B;oBACvE,+DAA+D;oBAC/D,gEAAgE,CACnE,CAAC;QACN,CAAC;IACH,CAAC;IAEO,eAAe,CACrB,MAAqB;QAErB,QAAQ,MAAM,EAAE,CAAC;YACf,KAAK,WAAW;gBACd,OAAO,WAAW,CAAC;YACrB,KAAK,SAAS;gBACZ,OAAO,SAAS,CAAC;YACnB,KAAK,QAAQ;gBACX,OAAO,QAAQ,CAAC;YAClB;gBACE,OAAO,YAAY,CAAC;QACxB,CAAC;IACH,CAAC;;AAp/DH,sCAq/DC;AAp+DgB,qCAAuB,GAAG,KAAK,AAAR,CAAS"}
@@ -40,3 +40,16 @@ export interface StripePaymentIntentGatewayOptions {
40
40
  [key: string]: unknown;
41
41
  }
42
42
  export declare const STRIPE_PAYMENT_INTENT_RESERVED_GATEWAY_KEYS: readonly string[];
43
+ export interface StripeOffSessionGatewayOptions {
44
+ metadata?: Record<string, string>;
45
+ statement_descriptor_suffix?: string;
46
+ statement_descriptor?: string;
47
+ application_fee_amount?: number;
48
+ on_behalf_of?: string;
49
+ transfer_data?: {
50
+ destination: string;
51
+ amount?: number;
52
+ };
53
+ [key: string]: unknown;
54
+ }
55
+ export declare const STRIPE_OFF_SESSION_RESERVED_GATEWAY_KEYS: readonly string[];
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.STRIPE_PAYMENT_INTENT_RESERVED_GATEWAY_KEYS = exports.STRIPE_DEPRECATED_WEBHOOK_EVENTS = exports.ALL_STRIPE_WEBHOOK_EVENTS = exports.STRIPE_WEBHOOK_EVENTS = exports.STRIPE_API_VERSION = exports.STRIPE_RESERVED_GATEWAY_KEYS = void 0;
3
+ exports.STRIPE_OFF_SESSION_RESERVED_GATEWAY_KEYS = exports.STRIPE_PAYMENT_INTENT_RESERVED_GATEWAY_KEYS = exports.STRIPE_DEPRECATED_WEBHOOK_EVENTS = exports.ALL_STRIPE_WEBHOOK_EVENTS = exports.STRIPE_WEBHOOK_EVENTS = exports.STRIPE_API_VERSION = exports.STRIPE_RESERVED_GATEWAY_KEYS = void 0;
4
4
  exports.STRIPE_RESERVED_GATEWAY_KEYS = Object.freeze([
5
5
  'metadata.invoiceId',
6
6
  'success_url',
@@ -38,4 +38,15 @@ exports.STRIPE_PAYMENT_INTENT_RESERVED_GATEWAY_KEYS = Object.freeze([
38
38
  'customer',
39
39
  'off_session',
40
40
  ]);
41
+ exports.STRIPE_OFF_SESSION_RESERVED_GATEWAY_KEYS = Object.freeze([
42
+ 'metadata.invoiceId',
43
+ 'amount',
44
+ 'currency',
45
+ 'customer',
46
+ 'payment_method',
47
+ 'off_session',
48
+ 'confirm',
49
+ 'expand',
50
+ 'idempotencyKey',
51
+ ]);
41
52
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/gateways/stripe/types.ts"],"names":[],"mappings":";;;AAsEa,QAAA,4BAA4B,GAAsB,MAAM,CAAC,MAAM,CAAC;IAC3E,oBAAoB;IACpB,aAAa;IACb,YAAY;IACZ,qBAAqB;IACrB,MAAM;IACN,YAAY;CACb,CAAC,CAAC;AAYU,QAAA,kBAAkB,GAAG,mBAAmB,CAAC;AAyCzC,QAAA,qBAAqB,GAAG,MAAM,CAAC,MAAM,CAAC;IAEjD,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;QACpB,4BAA4B;QAC5B,2BAA2B;QAC3B,+BAA+B;QAC/B,gBAAgB;QAChB,gBAAgB;QAGhB,wBAAwB;QACxB,uBAAuB;KACf,CAAC;IAMX,mBAAmB,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,0BAA0B,CAAU,CAAC;CAC1E,CAAC,CAAC;AASU,QAAA,yBAAyB,GAAsB,MAAM,CAAC,MAAM,CAAC;IACxE,GAAG,6BAAqB,CAAC,MAAM;IAC/B,GAAG,6BAAqB,CAAC,mBAAmB;CAC7C,CAAC,CAAC;AA0BU,QAAA,gCAAgC,GAAsB,MAAM,CAAC,MAAM,CAC9E,CAAC,iBAAiB,CAAC,CACpB,CAAC;AAoEW,QAAA,2CAA2C,GACtD,MAAM,CAAC,MAAM,CAAC;IACZ,oBAAoB;IACpB,QAAQ;IACR,UAAU;IACV,2BAA2B;IAC3B,SAAS;IACT,gBAAgB;IAChB,YAAY;IACZ,UAAU;IACV,aAAa;CACd,CAAC,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/gateways/stripe/types.ts"],"names":[],"mappings":";;;AAsEa,QAAA,4BAA4B,GAAsB,MAAM,CAAC,MAAM,CAAC;IAC3E,oBAAoB;IACpB,aAAa;IACb,YAAY;IACZ,qBAAqB;IACrB,MAAM;IACN,YAAY;CACb,CAAC,CAAC;AAYU,QAAA,kBAAkB,GAAG,mBAAmB,CAAC;AAyCzC,QAAA,qBAAqB,GAAG,MAAM,CAAC,MAAM,CAAC;IAEjD,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;QACpB,4BAA4B;QAC5B,2BAA2B;QAC3B,+BAA+B;QAC/B,gBAAgB;QAChB,gBAAgB;QAGhB,wBAAwB;QACxB,uBAAuB;KACf,CAAC;IAMX,mBAAmB,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,0BAA0B,CAAU,CAAC;CAC1E,CAAC,CAAC;AASU,QAAA,yBAAyB,GAAsB,MAAM,CAAC,MAAM,CAAC;IACxE,GAAG,6BAAqB,CAAC,MAAM;IAC/B,GAAG,6BAAqB,CAAC,mBAAmB;CAC7C,CAAC,CAAC;AA0BU,QAAA,gCAAgC,GAAsB,MAAM,CAAC,MAAM,CAC9E,CAAC,iBAAiB,CAAC,CACpB,CAAC;AAqEW,QAAA,2CAA2C,GACtD,MAAM,CAAC,MAAM,CAAC;IACZ,oBAAoB;IACpB,QAAQ;IACR,UAAU;IACV,2BAA2B;IAC3B,SAAS;IACT,gBAAgB;IAChB,YAAY;IACZ,UAAU;IACV,aAAa;CACd,CAAC,CAAC;AA8EQ,QAAA,wCAAwC,GACnD,MAAM,CAAC,MAAM,CAAC;IACZ,oBAAoB;IACpB,QAAQ;IACR,UAAU;IACV,UAAU;IACV,gBAAgB;IAChB,aAAa;IACb,SAAS;IACT,QAAQ;IACR,gBAAgB;CACjB,CAAC,CAAC"}
package/dist/index.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  export { PaymentsModule } from './payments.module';
2
2
  export type { PaymentsModuleOptions, PaymentsModuleAsyncOptions, } from './payments.module';
3
- export { INVOICE_REPOSITORY, PAYMENT_REPOSITORY, REFUND_REPOSITORY, PAYMENT_PLAN_REPOSITORY, PAYMENT_CONFIG_REPOSITORY, WEBHOOK_IDEMPOTENCY_REPOSITORY, RECURRING_INVOICE_REPOSITORY, PAYMENT_CUSTOMER_REPOSITORY, TRANSACTION_MANAGER, PAYMENT_EVENT_LISTENER, PAYMENT_EMAIL_SENDER, PAYMENT_CLIENT_RESOLVER, PAYMENT_EMAIL_BRANDING_RESOLVER, PAYMENT_EMAIL_TEMPLATE_RENDERER, WEBHOOK_ERROR_REPORTER, DEFAULT_CURRENCY, E_TRANSFER_CODE_PREFIX, } from './constants';
3
+ export { INVOICE_REPOSITORY, PAYMENT_REPOSITORY, REFUND_REPOSITORY, PAYMENT_PLAN_REPOSITORY, PAYMENT_CONFIG_REPOSITORY, WEBHOOK_IDEMPOTENCY_REPOSITORY, RECURRING_INVOICE_REPOSITORY, PAYMENT_CUSTOMER_REPOSITORY, TRANSACTION_MANAGER, PAYMENT_EVENT_LISTENER, RECURRING_CHARGE_OPTIONS_RESOLVER, PAYMENT_EMAIL_SENDER, PAYMENT_CLIENT_RESOLVER, PAYMENT_EMAIL_BRANDING_RESOLVER, PAYMENT_EMAIL_TEMPLATE_RENDERER, WEBHOOK_ERROR_REPORTER, DEFAULT_CURRENCY, E_TRANSFER_CODE_PREFIX, } from './constants';
4
4
  export type { IInvoiceRepository } from './interfaces/invoice-repository.interface';
5
5
  export type { IPaymentRepository } from './interfaces/payment-repository.interface';
6
6
  export type { IRefundRepository } from './interfaces/refund-repository.interface';
@@ -11,6 +11,7 @@ export type { IRecurringInvoiceRepository } from './interfaces/recurring-invoice
11
11
  export type { IPaymentCustomerRepository } from './interfaces/payment-customer-repository.interface';
12
12
  export type { ITransactionManager, TransactionRepositories, } from './interfaces/transaction-manager.interface';
13
13
  export type { IPaymentEmailSender, IPaymentClientResolver, PaymentEmailBrandingConfig, IPaymentEmailBrandingResolver, RenderedPaymentEmail, IPaymentEmailTemplateRenderer, InvoiceEmailParams, ETransferEmailParams, PaymentConfirmationEmailParams, OverdueReminderEmailParams, RefundConfirmationEmailParams, } from './interfaces/payment-email.interfaces';
14
+ export type { RecurringChargeContext, IRecurringChargeOptionsResolver, } from './interfaces/recurring-charge-options-resolver.interface';
14
15
  export type { IPaymentEventListener, InvoiceLineItemEvent, PaidInvoiceEvent, RefundedInvoiceEvent, RecurringInvoiceGeneratedEvent, RecurringPaymentFailedEvent, RecurringInvoicePausedEvent, } from './interfaces/payment-event-listener.interface';
15
16
  export type { PaymentGateway, PaymentWebhookEventType, PaymentWebhookEvent, IgnoredWebhookEvent, NormalizedWebhookEvent, CreatePaymentIntentParams, CreatePaymentIntentResult, PaymentIntentStatus, } from './gateways/payment-gateway.interface';
16
17
  export type { RecurringPaymentGateway } from './gateways/recurring-payment-gateway.interface';
@@ -68,8 +69,8 @@ export { StripePublicConfigModel } from './models/stripe-public-config.model';
68
69
  export { PaymentIntentStatusEnum } from './models/payment-intent-status.enum';
69
70
  export { IsMetadata } from './dto/validators/is-metadata';
70
71
  export { StripeGateway } from './gateways/stripe/stripe.gateway';
71
- export type { StripeGatewayOptions, StripePaymentIntentGatewayOptions, } from './gateways/stripe/types';
72
- export { STRIPE_RESERVED_GATEWAY_KEYS, STRIPE_PAYMENT_INTENT_RESERVED_GATEWAY_KEYS, STRIPE_WEBHOOK_EVENTS, ALL_STRIPE_WEBHOOK_EVENTS, STRIPE_DEPRECATED_WEBHOOK_EVENTS, STRIPE_API_VERSION, } from './gateways/stripe/types';
72
+ export type { StripeGatewayOptions, StripePaymentIntentGatewayOptions, StripeOffSessionGatewayOptions, } from './gateways/stripe/types';
73
+ export { STRIPE_RESERVED_GATEWAY_KEYS, STRIPE_PAYMENT_INTENT_RESERVED_GATEWAY_KEYS, STRIPE_OFF_SESSION_RESERVED_GATEWAY_KEYS, STRIPE_WEBHOOK_EVENTS, ALL_STRIPE_WEBHOOK_EVENTS, STRIPE_DEPRECATED_WEBHOOK_EVENTS, STRIPE_API_VERSION, } from './gateways/stripe/types';
73
74
  export { verifyStripeConfiguration } from './gateways/stripe/verify-stripe-configuration';
74
75
  export type { StripeConfigFinding, StripeConfigFindingCode, StripeVerificationClient, VerifyStripeConfigurationOptions, } from './gateways/stripe/verify-stripe-configuration';
75
76
  export { PaymentsWebhook, PAYMENTS_WEBHOOK, } from './gateways/stripe/stripe-webhook.controller';
package/dist/index.js CHANGED
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PaymentMethodNotOwnedException = exports.InvalidTaxConfigurationException = exports.PaymentIntentOperationNotSupportedException = exports.PaymentIntentNotCancellableException = exports.PaymentIntentNotReusableException = exports.PublishableKeyNotConfiguredException = exports.UniqueConstraintViolationException = exports.InvalidRecurringInvoiceStateException = exports.InvalidPaymentStateException = exports.RefundNotAllowedException = exports.InvoiceNumberExhaustedException = exports.InvoiceNotPayableException = exports.DuplicatePaymentException = exports.PaymentGatewayException = exports.PaymentAmountExceededException = exports.InvalidInvoiceStateException = exports.PaymentException = exports.computeNextInvoiceDateAfter = exports.assertMoneyAmount = exports.GatewayRegistryService = exports.PaymentJobsService = exports.ETransferService = exports.PaymentMethodService = exports.CustomerService = exports.RecurringInvoiceService = exports.PaymentEmailService = exports.PaymentPlanService = exports.PaymentConfigService = exports.RefundService = exports.PaymentService = exports.InvoiceNumberService = exports.InvoiceService = exports.E_TRANSFER_CODE_PREFIX = exports.DEFAULT_CURRENCY = exports.WEBHOOK_ERROR_REPORTER = exports.PAYMENT_EMAIL_TEMPLATE_RENDERER = exports.PAYMENT_EMAIL_BRANDING_RESOLVER = exports.PAYMENT_CLIENT_RESOLVER = exports.PAYMENT_EMAIL_SENDER = exports.PAYMENT_EVENT_LISTENER = exports.TRANSACTION_MANAGER = exports.PAYMENT_CUSTOMER_REPOSITORY = exports.RECURRING_INVOICE_REPOSITORY = exports.WEBHOOK_IDEMPOTENCY_REPOSITORY = exports.PAYMENT_CONFIG_REPOSITORY = exports.PAYMENT_PLAN_REPOSITORY = exports.REFUND_REPOSITORY = exports.PAYMENT_REPOSITORY = exports.INVOICE_REPOSITORY = exports.PaymentsModule = void 0;
4
- exports.DefaultPaymentEmailTemplateRenderer = exports.computeCycleCount = exports.computeNextInvoiceDate = exports.StaticBrandingResolver = exports.PAYMENTS_WEBHOOK = exports.PaymentsWebhook = exports.verifyStripeConfiguration = exports.STRIPE_API_VERSION = exports.STRIPE_DEPRECATED_WEBHOOK_EVENTS = exports.ALL_STRIPE_WEBHOOK_EVENTS = exports.STRIPE_WEBHOOK_EVENTS = exports.STRIPE_PAYMENT_INTENT_RESERVED_GATEWAY_KEYS = exports.STRIPE_RESERVED_GATEWAY_KEYS = exports.StripeGateway = exports.IsMetadata = exports.PaymentIntentStatusEnum = exports.StripePublicConfigModel = exports.InlinePaymentIntentModel = exports.Paginated = exports.RecurringInvoiceTaxComponentModel = exports.RecurringInvoiceLineItemModel = exports.RecurringInvoiceStatusEnum = exports.RecurringIntervalUnitEnum = exports.RecurringInvoiceModel = exports.PaginatedRecurringInvoices = exports.PaginatedPaymentPlans = exports.PaginatedInvoices = exports.SavedPaymentMethodModel = exports.PaymentMethodSetupModel = exports.PaymentPlanInstallmentModel = exports.PaymentPlanModel = exports.PaymentProviderModel = exports.PaymentConfigModel = exports.OnlinePaymentSessionModel = exports.ETransferInstructionsModel = exports.RefundModel = exports.PaymentModel = exports.InvoiceClientModel = exports.InvoiceTaxComponentModel = exports.InvoiceLineItemModel = exports.InstallmentStatusEnum = exports.PaymentPlanStatusEnum = exports.RefundStatusEnum = exports.PaymentStatusEnum = exports.PaymentMethodEnum = exports.InvoiceStatusEnum = exports.InvoiceModel = exports.NoChargeablePaymentMethodException = exports.PaymentMethodOperationNotSupportedException = void 0;
3
+ exports.InvalidTaxConfigurationException = exports.PaymentIntentOperationNotSupportedException = exports.PaymentIntentNotCancellableException = exports.PaymentIntentNotReusableException = exports.PublishableKeyNotConfiguredException = exports.UniqueConstraintViolationException = exports.InvalidRecurringInvoiceStateException = exports.InvalidPaymentStateException = exports.RefundNotAllowedException = exports.InvoiceNumberExhaustedException = exports.InvoiceNotPayableException = exports.DuplicatePaymentException = exports.PaymentGatewayException = exports.PaymentAmountExceededException = exports.InvalidInvoiceStateException = exports.PaymentException = exports.computeNextInvoiceDateAfter = exports.assertMoneyAmount = exports.GatewayRegistryService = exports.PaymentJobsService = exports.ETransferService = exports.PaymentMethodService = exports.CustomerService = exports.RecurringInvoiceService = exports.PaymentEmailService = exports.PaymentPlanService = exports.PaymentConfigService = exports.RefundService = exports.PaymentService = exports.InvoiceNumberService = exports.InvoiceService = exports.E_TRANSFER_CODE_PREFIX = exports.DEFAULT_CURRENCY = exports.WEBHOOK_ERROR_REPORTER = exports.PAYMENT_EMAIL_TEMPLATE_RENDERER = exports.PAYMENT_EMAIL_BRANDING_RESOLVER = exports.PAYMENT_CLIENT_RESOLVER = exports.PAYMENT_EMAIL_SENDER = exports.RECURRING_CHARGE_OPTIONS_RESOLVER = exports.PAYMENT_EVENT_LISTENER = exports.TRANSACTION_MANAGER = exports.PAYMENT_CUSTOMER_REPOSITORY = exports.RECURRING_INVOICE_REPOSITORY = exports.WEBHOOK_IDEMPOTENCY_REPOSITORY = exports.PAYMENT_CONFIG_REPOSITORY = exports.PAYMENT_PLAN_REPOSITORY = exports.REFUND_REPOSITORY = exports.PAYMENT_REPOSITORY = exports.INVOICE_REPOSITORY = exports.PaymentsModule = void 0;
4
+ exports.computeCycleCount = exports.computeNextInvoiceDate = exports.StaticBrandingResolver = exports.PAYMENTS_WEBHOOK = exports.PaymentsWebhook = exports.verifyStripeConfiguration = exports.STRIPE_API_VERSION = exports.STRIPE_DEPRECATED_WEBHOOK_EVENTS = exports.ALL_STRIPE_WEBHOOK_EVENTS = exports.STRIPE_WEBHOOK_EVENTS = exports.STRIPE_OFF_SESSION_RESERVED_GATEWAY_KEYS = exports.STRIPE_PAYMENT_INTENT_RESERVED_GATEWAY_KEYS = exports.STRIPE_RESERVED_GATEWAY_KEYS = exports.StripeGateway = exports.IsMetadata = exports.PaymentIntentStatusEnum = exports.StripePublicConfigModel = exports.InlinePaymentIntentModel = exports.Paginated = exports.RecurringInvoiceTaxComponentModel = exports.RecurringInvoiceLineItemModel = exports.RecurringInvoiceStatusEnum = exports.RecurringIntervalUnitEnum = exports.RecurringInvoiceModel = exports.PaginatedRecurringInvoices = exports.PaginatedPaymentPlans = exports.PaginatedInvoices = exports.SavedPaymentMethodModel = exports.PaymentMethodSetupModel = exports.PaymentPlanInstallmentModel = exports.PaymentPlanModel = exports.PaymentProviderModel = exports.PaymentConfigModel = exports.OnlinePaymentSessionModel = exports.ETransferInstructionsModel = exports.RefundModel = exports.PaymentModel = exports.InvoiceClientModel = exports.InvoiceTaxComponentModel = exports.InvoiceLineItemModel = exports.InstallmentStatusEnum = exports.PaymentPlanStatusEnum = exports.RefundStatusEnum = exports.PaymentStatusEnum = exports.PaymentMethodEnum = exports.InvoiceStatusEnum = exports.InvoiceModel = exports.NoChargeablePaymentMethodException = exports.PaymentMethodOperationNotSupportedException = exports.PaymentMethodNotOwnedException = void 0;
5
+ exports.DefaultPaymentEmailTemplateRenderer = void 0;
5
6
  var payments_module_1 = require("./payments.module");
6
7
  Object.defineProperty(exports, "PaymentsModule", { enumerable: true, get: function () { return payments_module_1.PaymentsModule; } });
7
8
  var constants_1 = require("./constants");
@@ -15,6 +16,7 @@ Object.defineProperty(exports, "RECURRING_INVOICE_REPOSITORY", { enumerable: tru
15
16
  Object.defineProperty(exports, "PAYMENT_CUSTOMER_REPOSITORY", { enumerable: true, get: function () { return constants_1.PAYMENT_CUSTOMER_REPOSITORY; } });
16
17
  Object.defineProperty(exports, "TRANSACTION_MANAGER", { enumerable: true, get: function () { return constants_1.TRANSACTION_MANAGER; } });
17
18
  Object.defineProperty(exports, "PAYMENT_EVENT_LISTENER", { enumerable: true, get: function () { return constants_1.PAYMENT_EVENT_LISTENER; } });
19
+ Object.defineProperty(exports, "RECURRING_CHARGE_OPTIONS_RESOLVER", { enumerable: true, get: function () { return constants_1.RECURRING_CHARGE_OPTIONS_RESOLVER; } });
18
20
  Object.defineProperty(exports, "PAYMENT_EMAIL_SENDER", { enumerable: true, get: function () { return constants_1.PAYMENT_EMAIL_SENDER; } });
19
21
  Object.defineProperty(exports, "PAYMENT_CLIENT_RESOLVER", { enumerable: true, get: function () { return constants_1.PAYMENT_CLIENT_RESOLVER; } });
20
22
  Object.defineProperty(exports, "PAYMENT_EMAIL_BRANDING_RESOLVER", { enumerable: true, get: function () { return constants_1.PAYMENT_EMAIL_BRANDING_RESOLVER; } });
@@ -135,6 +137,7 @@ Object.defineProperty(exports, "StripeGateway", { enumerable: true, get: functio
135
137
  var types_1 = require("./gateways/stripe/types");
136
138
  Object.defineProperty(exports, "STRIPE_RESERVED_GATEWAY_KEYS", { enumerable: true, get: function () { return types_1.STRIPE_RESERVED_GATEWAY_KEYS; } });
137
139
  Object.defineProperty(exports, "STRIPE_PAYMENT_INTENT_RESERVED_GATEWAY_KEYS", { enumerable: true, get: function () { return types_1.STRIPE_PAYMENT_INTENT_RESERVED_GATEWAY_KEYS; } });
140
+ Object.defineProperty(exports, "STRIPE_OFF_SESSION_RESERVED_GATEWAY_KEYS", { enumerable: true, get: function () { return types_1.STRIPE_OFF_SESSION_RESERVED_GATEWAY_KEYS; } });
138
141
  Object.defineProperty(exports, "STRIPE_WEBHOOK_EVENTS", { enumerable: true, get: function () { return types_1.STRIPE_WEBHOOK_EVENTS; } });
139
142
  Object.defineProperty(exports, "ALL_STRIPE_WEBHOOK_EVENTS", { enumerable: true, get: function () { return types_1.ALL_STRIPE_WEBHOOK_EVENTS; } });
140
143
  Object.defineProperty(exports, "STRIPE_DEPRECATED_WEBHOOK_EVENTS", { enumerable: true, get: function () { return types_1.STRIPE_DEPRECATED_WEBHOOK_EVENTS; } });
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ export interface RecurringChargeContext {
2
+ divisionId: string;
3
+ clientDetailsId: string;
4
+ invoiceId: string;
5
+ recurringInvoiceId: string;
6
+ referenceType?: string | null;
7
+ referenceId?: string | null;
8
+ }
9
+ export interface IRecurringChargeOptionsResolver {
10
+ resolveChargeOptions(context: RecurringChargeContext): Promise<Record<string, unknown> | undefined>;
11
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=recurring-charge-options-resolver.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recurring-charge-options-resolver.interface.js","sourceRoot":"","sources":["../../src/interfaces/recurring-charge-options-resolver.interface.ts"],"names":[],"mappings":""}
@@ -8,6 +8,7 @@ import type { IPaymentPlanRepository } from './interfaces/payment-plan-repositor
8
8
  import type { IPaymentConfigRepository } from './interfaces/payment-config-repository.interface';
9
9
  import type { IWebhookIdempotencyRepository } from './interfaces/webhook-idempotency-repository.interface';
10
10
  import type { IRecurringInvoiceRepository } from './interfaces/recurring-invoice-repository.interface';
11
+ import type { IRecurringChargeOptionsResolver } from './interfaces/recurring-charge-options-resolver.interface';
11
12
  import type { IPaymentCustomerRepository } from './interfaces/payment-customer-repository.interface';
12
13
  import type { ITransactionManager } from './interfaces/transaction-manager.interface';
13
14
  import type { IPaymentEventListener } from './interfaces/payment-event-listener.interface';
@@ -36,6 +37,7 @@ export interface PaymentsModuleOptions {
36
37
  templateRendererInstance?: IPaymentEmailTemplateRenderer;
37
38
  };
38
39
  paymentEventListenerInstance?: IPaymentEventListener;
40
+ recurringChargeOptionsResolverInstance?: IRecurringChargeOptionsResolver;
39
41
  webhook?: {
40
42
  errorReporter?: (error: unknown, context?: Record<string, unknown>) => void;
41
43
  };
@@ -168,6 +168,11 @@ let PaymentsModule = PaymentsModule_1 = class PaymentsModule {
168
168
  useFactory: (opts) => opts.paymentEventListenerInstance ?? null,
169
169
  inject: [PAYMENTS_MODULE_OPTIONS],
170
170
  },
171
+ {
172
+ provide: constants_1.RECURRING_CHARGE_OPTIONS_RESOLVER,
173
+ useFactory: (opts) => opts.recurringChargeOptionsResolverInstance ?? null,
174
+ inject: [PAYMENTS_MODULE_OPTIONS],
175
+ },
171
176
  {
172
177
  provide: constants_1.WEBHOOK_ERROR_REPORTER,
173
178
  useFactory: (opts) => opts.webhook?.errorReporter ?? null,
@@ -1 +1 @@
1
- {"version":3,"file":"payments.module.js","sourceRoot":"","sources":["../src/payments.module.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"payments.module.js","sourceRoot":"","sources":["../src/payments.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAIwB;AAExB,oCAAkC;AAGlC,2CAqBqB;AAsBrB,gEAA4D;AAC5D,8EAAyE;AACzE,gEAA4D;AAC5D,8DAA0D;AAC1D,8EAAyE;AACzE,0EAAqE;AACrE,4EAAuE;AACvE,oFAA+E;AAC/E,kEAA8D;AAC9D,8EAAyE;AACzE,sEAAiE;AACjE,0EAAqE;AAGrE,kFAA6E;AAC7E,qEAAiE;AACjE,qGAA+F;AAC/F,2FAAsF;AAqLtF,MAAM,uBAAuB,GAAG,MAAM,CAAC,uBAAuB,CAAC,CAAC;AAMhE,SAAS,eAAe,CAAC,IAA2B;IAClD,MAAM,MAAM,GAAG,IAAI,eAAM,CAAC,gBAAgB,CAAC,CAAC;IAC5C,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC;IAErC,IAAI,QAAQ,CAAC,cAAc,EAAE,CAAC;QAC5B,IAAI,CAAC,IAAI,CAAC,iCAAiC,EAAE,CAAC;YAC5C,MAAM,IAAI,KAAK,CACb,yDAAyD;gBACvD,qDAAqD,CACxD,CAAC;QACJ,CAAC;QAID,IAAI,CAAC,IAAI,CAAC,iCAAiC,CAAC,uBAAuB,EAAE,CAAC;YACpE,MAAM,IAAI,KAAK,CACb,qEAAqE;gBACnE,kEAAkE;gBAClE,oDAAoD;gBACpD,gDAAgD,CACnD,CAAC;QACJ,CAAC;IACH,CAAC;IAED,IAAI,QAAQ,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,6BAA6B,EAAE,CAAC;QACjE,MAAM,IAAI,KAAK,CACb,sGAAsG,CACvG,CAAC;IACJ,CAAC;IAED,IAAI,QAAQ,CAAC,iBAAiB,EAAE,CAAC;QAC/B,IAAI,CAAC,IAAI,CAAC,kCAAkC,EAAE,CAAC;YAC7C,MAAM,IAAI,KAAK,CACb,gHAAgH,CACjH,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,iCAAiC,EAAE,CAAC;YAC5C,MAAM,IAAI,KAAK,CACb,+GAA+G,CAChH,CAAC;QACJ,CAAC;IACH,CAAC;IAED,IAAI,QAAQ,CAAC,kBAAkB,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QAC9C,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC;YAC/B,MAAM,IAAI,KAAK,CACb,mGAAmG,CACpG,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,sBAAsB,EAAE,CAAC;YACvC,MAAM,IAAI,KAAK,CACb,2GAA2G,CAC5G,CAAC;QACJ,CAAC;IACH,CAAC;IAED,IAAI,QAAQ,CAAC,kBAAkB,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QAC/C,MAAM,IAAI,KAAK,CACb,2FAA2F,CAC5F,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACjB,MAAM,CAAC,IAAI,CACT,qEAAqE,CACtE,CAAC;IACJ,CAAC;AACH,CAAC;AAOM,IAAM,cAAc,sBAApB,MAAM,cAAc;IACzB,MAAM,CAAC,YAAY,CAAC,YAAwC;QAC1D,MAAM,SAAS,GAAG;YAEhB;gBACE,OAAO,EAAE,uBAAuB;gBAKhC,UAAU,EAAE,KAAK,EAAE,GAAG,IAAW,EAAE,EAAE;oBAEnC,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,CAAC;oBACpD,eAAe,CAAC,IAAI,CAAC,CAAC;oBACtB,OAAO,IAAI,CAAC;gBACd,CAAC;gBACD,MAAM,EAAE,YAAY,CAAC,MAAM,IAAI,EAAE;aAClC;YAGD;gBACE,OAAO,EAAE,8BAAkB;gBAC3B,UAAU,EAAE,CAAC,IAA2B,EAAE,EAAE,CAC1C,IAAI,CAAC,yBAAyB;gBAChC,MAAM,EAAE,CAAC,uBAAuB,CAAC;aAClC;YACD;gBACE,OAAO,EAAE,8BAAkB;gBAC3B,UAAU,EAAE,CAAC,IAA2B,EAAE,EAAE,CAC1C,IAAI,CAAC,yBAAyB;gBAChC,MAAM,EAAE,CAAC,uBAAuB,CAAC;aAClC;YACD;gBACE,OAAO,EAAE,6BAAiB;gBAC1B,UAAU,EAAE,CAAC,IAA2B,EAAE,EAAE,CAC1C,IAAI,CAAC,wBAAwB;gBAC/B,MAAM,EAAE,CAAC,uBAAuB,CAAC;aAClC;YACD;gBACE,OAAO,EAAE,qCAAyB;gBAClC,UAAU,EAAE,CAAC,IAA2B,EAAE,EAAE,CAC1C,IAAI,CAAC,+BAA+B;gBACtC,MAAM,EAAE,CAAC,uBAAuB,CAAC;aAClC;YACD;gBACE,OAAO,EAAE,0CAA8B;gBACvC,UAAU,EAAE,CAAC,IAA2B,EAAE,EAAE,CAC1C,IAAI,CAAC,oCAAoC;gBAC3C,MAAM,EAAE,CAAC,uBAAuB,CAAC;aAClC;YACD;gBACE,OAAO,EAAE,+BAAmB;gBAC5B,UAAU,EAAE,CAAC,IAA2B,EAAE,EAAE,CAC1C,IAAI,CAAC,0BAA0B;gBACjC,MAAM,EAAE,CAAC,uBAAuB,CAAC;aAClC;YAGD;gBACE,OAAO,EAAE,mCAAuB;gBAChC,UAAU,EAAE,CAAC,IAA2B,EAAE,EAAE,CAC1C,IAAI,CAAC,6BAA6B,IAAI,IAAI;gBAC5C,MAAM,EAAE,CAAC,uBAAuB,CAAC;aAClC;YACD;gBACE,OAAO,EAAE,wCAA4B;gBACrC,UAAU,EAAE,CAAC,IAA2B,EAAE,EAAE,CAC1C,IAAI,CAAC,kCAAkC,IAAI,IAAI;gBACjD,MAAM,EAAE,CAAC,uBAAuB,CAAC;aAClC;YACD;gBACE,OAAO,EAAE,uCAA2B;gBACpC,UAAU,EAAE,CAAC,IAA2B,EAAE,EAAE,CAC1C,IAAI,CAAC,iCAAiC,IAAI,IAAI;gBAChD,MAAM,EAAE,CAAC,uBAAuB,CAAC;aAClC;YAGD;gBACE,OAAO,EAAE,4BAAgB;gBACzB,UAAU,EAAE,CAAC,IAA2B,EAAE,EAAE,CAC1C,IAAI,CAAC,eAAe,IAAI,KAAK;gBAC/B,MAAM,EAAE,CAAC,uBAAuB,CAAC;aAClC;YACD;gBACE,OAAO,EAAE,kCAAsB;gBAC/B,UAAU,EAAE,CAAC,IAA2B,EAAE,EAAE,CAC1C,IAAI,CAAC,mBAAmB,IAAI,EAAE;gBAChC,MAAM,EAAE,CAAC,uBAAuB,CAAC;aAClC;YACD;gBACE,OAAO,EAAE,uBAAW;gBACpB,UAAU,EAAE,CAAC,IAA2B,EAAE,EAAE,CAAC,CAAC;oBAC5C,eAAe,EAAE,IAAI,CAAC,GAAG,EAAE,eAAe,IAAI,KAAK;iBACpD,CAAC;gBACF,MAAM,EAAE,CAAC,uBAAuB,CAAC;aAClC;YAGD;gBACE,OAAO,EAAE,gCAAoB;gBAC7B,UAAU,EAAE,CAAC,IAA2B,EAAE,EAAE,CAC1C,IAAI,CAAC,KAAK,EAAE,cAAc,IAAI,IAAI;gBACpC,MAAM,EAAE,CAAC,uBAAuB,CAAC;aAClC;YACD;gBACE,OAAO,EAAE,mCAAuB;gBAChC,UAAU,EAAE,CAAC,IAA2B,EAAE,EAAE,CAC1C,IAAI,CAAC,KAAK,EAAE,sBAAsB,IAAI,IAAI;gBAC5C,MAAM,EAAE,CAAC,uBAAuB,CAAC;aAClC;YACD;gBACE,OAAO,EAAE,2CAA+B;gBACxC,UAAU,EAAE,CAAC,IAA2B,EAAE,EAAE,CAC1C,IAAI,CAAC,KAAK,EAAE,wBAAwB,IAAI,IAAI;gBAC9C,MAAM,EAAE,CAAC,uBAAuB,CAAC;aAClC;YACD;gBACE,OAAO,EAAE,2CAA+B;gBACxC,UAAU,EAAE,CAAC,IAA2B,EAAE,EAAE,CAC1C,IAAI,CAAC,KAAK,EAAE,wBAAwB,IAAI,IAAI;gBAC9C,MAAM,EAAE,CAAC,uBAAuB,CAAC;aAClC;YAGD;gBACE,OAAO,EAAE,kCAAsB;gBAC/B,UAAU,EAAE,CAAC,IAA2B,EAAE,EAAE,CAC1C,IAAI,CAAC,4BAA4B,IAAI,IAAI;gBAC3C,MAAM,EAAE,CAAC,uBAAuB,CAAC;aAClC;YACD;gBACE,OAAO,EAAE,6CAAiC;gBAC1C,UAAU,EAAE,CAAC,IAA2B,EAAE,EAAE,CAC1C,IAAI,CAAC,sCAAsC,IAAI,IAAI;gBACrD,MAAM,EAAE,CAAC,uBAAuB,CAAC;aAClC;YAGD;gBACE,OAAO,EAAE,kCAAsB;gBAC/B,UAAU,EAAE,CAAC,IAA2B,EAAE,EAAE,CAC1C,IAAI,CAAC,OAAO,EAAE,aAAa,IAAI,IAAI;gBACrC,MAAM,EAAE,CAAC,uBAAuB,CAAC;aAClC;YAGD,gCAAc;YACd,6CAAoB;YACpB,gCAAc;YACd,8BAAa;YACb,6CAAoB;YACpB,iDAAsB;YACtB,2CAAmB;YACnB,qCAAgB;YAChB,yCAAkB;YAGlB,yCAAkB;YAClB,mDAAuB;YACvB,kCAAe;YACf,6CAAoB;YAIpB,EAAE,OAAO,EAAE,2BAAe,EAAE,WAAW,EAAE,gCAAc,EAAE;YAGzD;gBACE,OAAO,EAAE,gBAAgB;gBACzB,UAAU,EAAE,CACV,IAA2B,EAC3B,QAAgC,EAChC,EAAE;oBACF,IAAI,CAAC,IAAI,CAAC,MAAM;wBAAE,OAAO,IAAI,CAAC;oBAE9B,MAAM,MAAM,GAAG,IAAI,eAAM,CAAC,sBAAsB,CAAC,CAAC;oBAClD,IAAI,CAAC;wBACH,MAAM,OAAO,GAAG,IAAI,8BAAa,CAC/B,IAAI,CAAC,MAAM,CAAC,SAAS,EACrB,IAAI,CAAC,MAAM,CAAC,aAAa,EACzB,IAAI,CAAC,MAAM,CAAC,cAAc,IAAI,IAAI,EAClC,IAAI,CAAC,yBAAyB,CAC/B,CAAC;wBACF,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;wBAC3B,MAAM,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;wBACrD,OAAO,OAAO,CAAC;oBACjB,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBAQf,MAAM,MAAM,GACV,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;wBACzD,MAAM,CAAC,KAAK,CAAC,sCAAsC,MAAM,EAAE,CAAC,CAAC;wBAC7D,MAAM,IAAI,KAAK,CACb,oEAAoE;4BAClE,6BAA6B,MAAM,EAAE,CACxC,CAAC;oBACJ,CAAC;gBACH,CAAC;gBACD,MAAM,EAAE,CAAC,uBAAuB,EAAE,iDAAsB,CAAC;aAC1D;YAKD;gBACE,OAAO,EAAE,4DAA2B;gBACpC,UAAU,EAAE,CAAC,IAA2B,EAAE,EAAE,CAC1C,IAAI,4DAA2B,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC;gBACtD,MAAM,EAAE,CAAC,uBAAuB,CAAC;aAClC;SACF,CAAC;QAEF,OAAO;YACL,MAAM,EAAE,gBAAc;YACtB,MAAM,EAAE,IAAI;YACZ,OAAO,EAAE,YAAY,CAAC,OAAO,IAAI,EAAE;YACnC,WAAW,EAAE,CAAC,mDAAuB,CAAC;YACtC,SAAS;YACT,OAAO,EAAE;gBACP,gCAAc;gBACd,6CAAoB;gBACpB,gCAAc;gBACd,8BAAa;gBACb,6CAAoB;gBACpB,yCAAkB;gBAClB,iDAAsB;gBACtB,2CAAmB;gBACnB,mDAAuB;gBACvB,kCAAe;gBACf,6CAAoB;gBACpB,qCAAgB;gBAChB,yCAAkB;aACnB;SACF,CAAC;IACJ,CAAC;CACF,CAAA;AAjPY,wCAAc;yBAAd,cAAc;IAD1B,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,cAAc,CAiP1B"}
@@ -72,8 +72,10 @@ export declare class RecurringInvoiceService implements OnModuleInit {
72
72
  private readonly paymentMethodService;
73
73
  private readonly logger;
74
74
  private paymentEventListener;
75
+ private chargeOptionsResolver;
75
76
  constructor(repo: IRecurringInvoiceRepository | null, invoiceService: InvoiceService, paymentService: PaymentService, configService: PaymentConfigService, customerService: CustomerService, gatewayRegistry: GatewayRegistryService, moduleRef: ModuleRef, taxOptions: TaxOptions, paymentMethodService: PaymentMethodService);
76
77
  onModuleInit(): void;
78
+ private resolveChargeOptions;
77
79
  create(divisionId: string, input: CreateRecurringInvoiceInput, createdBy: string): Promise<RecurringInvoiceWithItems>;
78
80
  pause(id: string, divisionId: string, pausedBy: string, reason?: string): Promise<RecurringInvoice>;
79
81
  private announcePaused;
@@ -42,6 +42,7 @@ let RecurringInvoiceService = RecurringInvoiceService_1 = class RecurringInvoice
42
42
  this.paymentMethodService = paymentMethodService;
43
43
  this.logger = new common_1.Logger(RecurringInvoiceService_1.name);
44
44
  this.paymentEventListener = null;
45
+ this.chargeOptionsResolver = null;
45
46
  }
46
47
  onModuleInit() {
47
48
  try {
@@ -54,6 +55,35 @@ let RecurringInvoiceService = RecurringInvoiceService_1 = class RecurringInvoice
54
55
  this.paymentEventListener = null;
55
56
  this.logger.log('No payment event listener registered — recurring invoice events disabled');
56
57
  }
58
+ try {
59
+ this.chargeOptionsResolver = this.moduleRef.get(constants_1.RECURRING_CHARGE_OPTIONS_RESOLVER, { strict: false });
60
+ this.logger.log('Recurring charge options resolver resolved successfully');
61
+ }
62
+ catch {
63
+ this.chargeOptionsResolver = null;
64
+ }
65
+ }
66
+ async resolveChargeOptions(config, invoiceId) {
67
+ if (!this.chargeOptionsResolver)
68
+ return undefined;
69
+ try {
70
+ return await this.chargeOptionsResolver.resolveChargeOptions({
71
+ divisionId: config.divisionId,
72
+ clientDetailsId: config.clientDetailsId,
73
+ invoiceId,
74
+ recurringInvoiceId: config.id,
75
+ referenceType: config.referenceType,
76
+ referenceId: config.referenceId,
77
+ });
78
+ }
79
+ catch (err) {
80
+ this.logger.warn(`Recurring charge options resolver failed for invoice ${invoiceId} ` +
81
+ `(recurring invoice ${config.id}): ` +
82
+ `${err instanceof Error ? err.message : String(err)}. ` +
83
+ `Charging without provider options — the statement will show the ` +
84
+ `account's own descriptor rather than failing the renewal.`);
85
+ return undefined;
86
+ }
57
87
  }
58
88
  async create(divisionId, input, createdBy) {
59
89
  if (input.intervalValue < 1) {
@@ -514,6 +544,7 @@ let RecurringInvoiceService = RecurringInvoiceService_1 = class RecurringInvoice
514
544
  await this.handleChargeFailure(config, invoice, 'no_payment_customer');
515
545
  return;
516
546
  }
547
+ const chargeOptions = await this.resolveChargeOptions(config, invoice.id);
517
548
  const gateway = this.gatewayRegistry.getRecurring('stripe');
518
549
  const result = await gateway.createOffSessionPayment({
519
550
  providerCustomerId: customer.providerCustomerId,
@@ -527,6 +558,7 @@ let RecurringInvoiceService = RecurringInvoiceService_1 = class RecurringInvoice
527
558
  ...(config.paymentMethodId
528
559
  ? { paymentMethodId: config.paymentMethodId }
529
560
  : {}),
561
+ ...(chargeOptions ? { gatewayOptions: chargeOptions } : {}),
530
562
  idempotencyKey: `off-session:${invoice.id}:${config.consecutiveFailures}`,
531
563
  });
532
564
  if (result.status === 'succeeded') {
@@ -1 +1 @@
1
- {"version":3,"file":"recurring-invoice.service.js","sourceRoot":"","sources":["../../src/services/recurring-invoice.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"recurring-invoice.service.js","sourceRoot":"","sources":["../../src/services/recurring-invoice.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAA+E;AAC/E,uCAAyC;AAEzC,4CAKsB;AActB,8CAIuB;AACvB,uDAK2B;AAC3B,uDAAqE;AACrE,qEAAgE;AAChE,yDAAqD;AACrD,qEAAgE;AAChE,mFAA8E;AAC9E,uEAGmC;AACnC,qDAAiD;AAGjD,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;AAGzD,MAAM,oBAAoB,GAAG,IAAI,GAAG,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;AAG3D,MAAM,oBAAoB,GAAG,IAAI,GAAG,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;AAqGpD,IAAM,uBAAuB,+BAA7B,MAAM,uBAAuB;IAKlC,YAME,IAAyD,EACxC,cAA8B,EAC9B,cAA8B,EAC9B,aAAmC,EACnC,eAAgC,EAChC,eAAuC,EACvC,SAAoB,EAErC,UAAuC,EAItB,oBAA0C;QAZ1C,SAAI,GAAJ,IAAI,CAAoC;QACxC,mBAAc,GAAd,cAAc,CAAgB;QAC9B,mBAAc,GAAd,cAAc,CAAgB;QAC9B,kBAAa,GAAb,aAAa,CAAsB;QACnC,oBAAe,GAAf,eAAe,CAAiB;QAChC,oBAAe,GAAf,eAAe,CAAwB;QACvC,cAAS,GAAT,SAAS,CAAW;QAEpB,eAAU,GAAV,UAAU,CAAY;QAItB,yBAAoB,GAApB,oBAAoB,CAAsB;QAtB5C,WAAM,GAAG,IAAI,eAAM,CAAC,yBAAuB,CAAC,IAAI,CAAC,CAAC;QAC3D,yBAAoB,GAAiC,IAAI,CAAC;QAC1D,0BAAqB,GAA2C,IAAI,CAAC;IAqB1E,CAAC;IAEJ,YAAY;QACV,IAAI,CAAC;YACH,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,kCAAsB,EAAE;gBACrE,MAAM,EAAE,KAAK;aACd,CAAC,CAAC;YACH,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,8CAA8C,CAAC,CAAC;QAClE,CAAC;QAAC,MAAM,CAAC;YACP,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;YACjC,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,0EAA0E,CAC3E,CAAC;QACJ,CAAC;QAKD,IAAI,CAAC;YACH,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAC7C,6CAAiC,EACjC,EAAE,MAAM,EAAE,KAAK,EAAE,CAClB,CAAC;YACF,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,yDAAyD,CAAC,CAAC;QAC7E,CAAC;QAAC,MAAM,CAAC;YACP,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;QACpC,CAAC;IACH,CAAC;IAqBO,KAAK,CAAC,oBAAoB,CAChC,MAAiC,EACjC,SAAiB;QAEjB,IAAI,CAAC,IAAI,CAAC,qBAAqB;YAAE,OAAO,SAAS,CAAC;QAElD,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,qBAAqB,CAAC,oBAAoB,CAAC;gBAC3D,UAAU,EAAE,MAAM,CAAC,UAAU;gBAC7B,eAAe,EAAE,MAAM,CAAC,eAAe;gBACvC,SAAS;gBACT,kBAAkB,EAAE,MAAM,CAAC,EAAE;gBAC7B,aAAa,EAAE,MAAM,CAAC,aAAa;gBACnC,WAAW,EAAE,MAAM,CAAC,WAAW;aAChC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,wDAAwD,SAAS,GAAG;gBAClE,sBAAsB,MAAM,CAAC,EAAE,KAAK;gBACpC,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI;gBACvD,kEAAkE;gBAClE,2DAA2D,CAC9D,CAAC;YACF,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAQD,KAAK,CAAC,MAAM,CACV,UAAkB,EAClB,KAAkC,EAClC,SAAiB;QAEjB,IAAI,KAAK,CAAC,aAAa,GAAG,CAAC,EAAE,CAAC;YAC5B,MAAM,IAAI,kDAAqC,CAC7C,4BAA4B,CAC7B,CAAC;QACJ,CAAC;QAED,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;YAC1B,MAAM,IAAI,CAAC,kBAAkB,CAC3B,UAAU,EACV,KAAK,CAAC,eAAe,EACrB,KAAK,CAAC,eAAe,CACtB,CAAC;QACJ,CAAC;QAGD,MAAM,aAAa,GACjB,KAAK,CAAC,aAAa;YACnB,IAAA,gDAAsB,EACpB,KAAK,CAAC,UAAU,EAChB,KAAK,CAAC,YAAY,EAClB,KAAK,CAAC,aAAa,EACnB,CAAC,CACF,CAAC;QAKJ,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;YACxB,IAAI,CAAC,6BAA6B,CAAC,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QACzE,CAAC;QACD,MAAM,eAAe,GAAG,KAAK,CAAC,aAAa,EAAE,MAAM;YACjD,CAAC,CAAC,KAAK,CAAC,aAAa;YACrB,CAAC,CAAC,SAAS,CAAC;QACd,IAAI,OAAoB,CAAC;QAEzB,IAAI,eAAe,EAAE,CAAC;YACpB,OAAO,GAAG,IAAI,8BAAa,CACzB,eAAe,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CACpD,CAAC;QACJ,CAAC;aAAM,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;YAC/B,OAAO,GAAG,IAAI,8BAAa,CAAC,CAAC,CAAC,CAAC;QACjC,CAAC;aAAM,CAAC;YAGN,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QACjE,CAAC;QAED,MAAM,UAAU,GAA+B;YAC7C,UAAU;YACV,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,aAAa,EAAE,KAAK,CAAC,aAAa;YAClC,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,aAAa;YACb,eAAe,EAAE,KAAK,CAAC,eAAe;YACtC,SAAS;YACT,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,OAAO;YACP,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,aAAa,EAAE,KAAK,CAAC,aAAa;YAClC,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,eAAe,EAAE,KAAK,CAAC,eAAe;SACvC,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAE3D,IAAI,eAAe,EAAE,CAAC;YACpB,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC,oBAAqB,CAC5C,MAAM,CAAC,EAAE,EACT,eAAe,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;gBACzC,kBAAkB,EAAE,MAAM,CAAC,EAAE;gBAC7B,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE;gBAC3B,IAAI,EAAE,IAAI,8BAAa,CAAC,SAAS,CAAC,IAAI,CAAC;gBACvC,SAAS,EAAE,SAAS,CAAC,SAAS,IAAI,IAAI;gBACtC,kBAAkB,EAAE,SAAS,CAAC,kBAAkB,IAAI,IAAI;gBACxD,SAAS,EAAE,SAAS,CAAC,SAAS,IAAI,KAAK;aACxC,CAAC,CAAC,CACJ,CAAC;QACJ,CAAC;QAGD,IAAI,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAChD,MAAM,IAAI,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gBAChC,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC,cAAc,CAAC;oBACtC,kBAAkB,EAAE,MAAM,CAAC,EAAE;oBAC7B,WAAW,EAAE,IAAI,CAAC,WAAW;oBAC7B,QAAQ,EAAE,IAAI,CAAC,QAAQ;oBACvB,SAAS,EAAE,IAAI,CAAC,SAAS;oBACzB,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,CAAC;oBAC9B,SAAS,EAAE,IAAI,CAAC,SAAS;oBACzB,aAAa,EAAE,IAAI,CAAC,aAAa;oBACjC,WAAW,EAAE,IAAI,CAAC,WAAW;oBAC7B,QAAQ,EAAE,IAAI,CAAC,QAAQ;iBACxB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACrE,IAAI,CAAC,MAAM,EAAE,CAAC;YAEZ,MAAM,IAAI,kDAAqC,CAC7C,qBAAqB,MAAM,CAAC,EAAE,2BAA2B,CAC1D,CAAC;QACJ,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAMD,KAAK,CAAC,KAAK,CACT,EAAU,EACV,UAAkB,EAClB,QAAgB,EAMhB,MAAe;QAEf,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;QAEhE,IAAI,MAAM,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC/B,MAAM,IAAI,kDAAqC,CAC7C,sCAAsC,MAAM,CAAC,MAAM,2BAA2B,CAC/E,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE;YACjD,MAAM,EAAE,QAAQ;YAChB,QAAQ,EAAE,IAAI,IAAI,EAAE;YACpB,QAAQ;SACT,CAAC,CAAC;QAKH,MAAM,IAAI,CAAC,cAAc,CACvB,MAAM,EACN,MAAM,IAAI,aAAa,QAAQ,EAAE,CAClC,CAAC;QAEF,OAAO,MAAM,CAAC;IAChB,CAAC;IAQO,KAAK,CAAC,cAAc,CAC1B,MAAgE,EAChE,MAAc;QAEd,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,wBAAwB;YAAE,OAAO;QACjE,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,oBAAoB,CAAC,wBAAwB,CAAC;gBACvD,kBAAkB,EAAE,MAAM,CAAC,EAAE;gBAC7B,UAAU,EAAE,MAAM,CAAC,UAAU;gBAC7B,MAAM;gBACN,QAAQ,EAAE,MAAM,CAAC,QAAQ;aAC1B,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,kDAAkD,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CACrG,CAAC;QACJ,CAAC;IACH,CAAC;IAQD,KAAK,CAAC,MAAM,CAAC,EAAU,EAAE,UAAkB;QACzC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;QAEhE,IAAI,MAAM,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC/B,MAAM,IAAI,kDAAqC,CAC7C,uCAAuC,MAAM,CAAC,MAAM,2BAA2B,CAChF,CAAC;QACJ,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC;QAKzC,IAAI,aAAa,IAAI,GAAG,EAAE,CAAC;YACzB,aAAa,GAAG,IAAA,qDAA2B,EACzC,MAAM,CAAC,UAAU,EACjB,MAAM,CAAC,YAAY,EACnB,MAAM,CAAC,aAAa,EACpB,GAAG,CACJ,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE;YACnC,MAAM,EAAE,QAAQ;YAChB,QAAQ,EAAE,IAAI;YACd,QAAQ,EAAE,IAAI;YACd,mBAAmB,EAAE,CAAC;YACtB,aAAa;SACd,CAAC,CAAC;IACL,CAAC;IAKD,KAAK,CAAC,MAAM,CACV,EAAU,EACV,UAAkB,EAClB,WAAmB,EACnB,MAAe;QAEf,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;QAEhE,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;YAC7C,MAAM,IAAI,kDAAqC,CAC7C,uCAAuC,MAAM,CAAC,MAAM,qCAAqC,CAC1F,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE;YACnC,MAAM,EAAE,WAAW;YACnB,WAAW,EAAE,IAAI,IAAI,EAAE;YACvB,WAAW;YACX,YAAY,EAAE,MAAM,IAAI,IAAI;SAC7B,CAAC,CAAC;IACL,CAAC;IAQD,KAAK,CAAC,cAAc,CAClB,EAAU,EACV,UAAkB,EAClB,KAAmC;QAEnC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;QAEhE,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;YAC3C,MAAM,IAAI,kDAAqC,CAC7C,uCAAuC,MAAM,CAAC,MAAM,qCAAqC,CAC1F,CAAC;QACJ,CAAC;QAKD,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;YAC1B,MAAM,IAAI,CAAC,kBAAkB,CAC3B,UAAU,EACV,MAAM,CAAC,eAAe,EACtB,KAAK,CAAC,eAAe,CACtB,CAAC;QACJ,CAAC;QAID,IAAI,KAAK,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;YACtC,IAAI,CAAC,kCAAkC,EAAE,CAAC;QAC5C,CAAC;QAED,IAAI,KAAK,CAAC,aAAa,KAAK,SAAS,IAAI,KAAK,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxE,IAAI,CAAC,6BAA6B,CAAC,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QACzE,CAAC;aAAM,IACL,KAAK,CAAC,aAAa,KAAK,SAAS;YACjC,KAAK,CAAC,OAAO,KAAK,SAAS,EAC3B,CAAC;YAGD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC;YACtD,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,IAAI,6CAAgC,CACxC,oEAAoE;oBAClE,mEAAmE;oBACnE,wDAAwD,CAC3D,CAAC;YACJ,CAAC;QACH,CAAC;QAED,MAAM,UAAU,GAA8B,EAAE,CAAC;QAEjD,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAChC,UAAU,CAAC,OAAO,GAAG,IAAI,8BAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACxD,CAAC;QAGD,IAAI,KAAK,CAAC,aAAa,KAAK,SAAS,IAAI,KAAK,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxE,UAAU,CAAC,OAAO,GAAG,IAAI,8BAAa,CACpC,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CACxD,CAAC;QACJ,CAAC;QACD,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YACjC,UAAU,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;QACvC,CAAC;QACD,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YAC9B,UAAU,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;QACjC,CAAC;QACD,IAAI,KAAK,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YACpC,UAAU,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;QAC7C,CAAC;QACD,IAAI,KAAK,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;YACtC,UAAU,CAAC,aAAa,GAAG,KAAK,CAAC,aAAa,CAAC;QACjD,CAAC;QACD,IAAI,KAAK,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YACpC,UAAU,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;QAC7C,CAAC;QACD,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YACjC,UAAU,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;QACvC,CAAC;QACD,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YACjC,UAAU,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;QACvC,CAAC;QACD,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YACnC,UAAU,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;QAC3C,CAAC;QACD,IAAI,KAAK,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;YAGxC,UAAU,CAAC,eAAe,GAAG,KAAK,CAAC,eAAe,CAAC;QACrD,CAAC;QAGD,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvC,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;QAClD,CAAC;QAGD,IAAI,KAAK,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;YACtC,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC,oBAAqB,CAC5C,EAAE,EACF,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;gBAC7C,kBAAkB,EAAE,EAAE;gBACtB,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE;gBAC3B,IAAI,EAAE,IAAI,8BAAa,CAAC,SAAS,CAAC,IAAI,CAAC;gBACvC,SAAS,EAAE,SAAS,CAAC,SAAS,IAAI,IAAI;gBACtC,kBAAkB,EAAE,SAAS,CAAC,kBAAkB,IAAI,IAAI;gBACxD,SAAS,EAAE,SAAS,CAAC,SAAS,IAAI,KAAK;aACxC,CAAC,CAAC,CACJ,CAAC;QACJ,CAAC;QAGD,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YAClC,MAAM,YAAY,GAAkC,KAAK,CAAC,SAAS,CAAC,GAAG,CACrE,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;gBACZ,kBAAkB,EAAE,EAAE;gBACtB,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,CAAC;gBAC9B,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,aAAa,EAAE,IAAI,CAAC,aAAa;gBACjC,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,QAAQ,EAAE,IAAI,CAAC,QAAQ;aACxB,CAAC,CACH,CAAC;YAEF,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC,gBAAgB,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC;QAC9D,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;QAC9D,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,kDAAqC,CAC7C,qBAAqB,EAAE,yBAAyB,CACjD,CAAC;QACJ,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAKD,KAAK,CAAC,QAAQ,CACZ,UAAkB,EAClB,EAAU;QAEV,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;QAC9D,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,MAAM,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;YACrC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAKD,KAAK,CAAC,cAAc,CAClB,UAAkB,EAClB,MAA+B,EAC/B,IAAa,EACb,IAAa;QAEb,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IAC3E,CAAC;IAkBD,KAAK,CAAC,2BAA2B,CAC/B,GAAS;QAET,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,IAAI,MAAM,GAAG,CAAC,CAAC;QAEf,MAAM,iBAAiB,GAAG,CAAC,MAAwB,EAAQ,EAAE;YAY3D,OAAO,IAAA,qDAA2B,EAChC,MAAM,CAAC,UAAU,EACjB,MAAM,CAAC,YAAY,EACnB,MAAM,CAAC,aAAa,EACpB,GAAG,CACJ,CAAC;QACJ,CAAC,CAAC;QAGF,IAAI,SAAiB,CAAC;QACtB,GAAG,CAAC;YACF,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC,yBAAyB,CAChE,GAAG,EACH,GAAG,EACH,iBAAiB,CAClB,CAAC;YACF,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC;YAE3B,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;gBAC7B,IAAI,CAAC;oBACH,MAAM,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAC;oBAC7C,SAAS,EAAE,CAAC;gBACd,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,MAAM,EAAE,CAAC;oBACT,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,mDAAmD,MAAM,CAAC,EAAE,KAAK,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EACzH,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CACjD,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC,QAAQ,SAAS,GAAG,CAAC,EAAE;QAExB,IAAI,SAAS,GAAG,CAAC,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;YAChC,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,0CAA0C,SAAS,eAAe,MAAM,SAAS,CAClF,CAAC;QACJ,CAAC;QAED,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;IAC/B,CAAC;IASD,KAAK,CAAC,uBAAuB,CAC3B,EAAU,EACV,UAAkB;QAElB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;QAC9D,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,kDAAqC,CAC7C,qBAAqB,EAAE,YAAY,CACpC,CAAC;QACJ,CAAC;QAED,IAAI,MAAM,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;YACrC,MAAM,IAAI,kDAAqC,CAC7C,qBAAqB,EAAE,gCAAgC,UAAU,EAAE,CACpE,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;YAC7C,MAAM,IAAI,kDAAqC,CAC7C,wCAAwC,MAAM,CAAC,MAAM,qCAAqC,CAC3F,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAC;IAChD,CAAC;IAiBD,KAAK,CAAC,qBAAqB,CACzB,eAAuB,EACvB,UAAmB;QAEnB,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QAChC,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAChC,MAAM,IAAI,kDAAqC,CAC7C,sDAAsD;gBACpD,sEAAsE;gBACtE,uEAAuE;gBACvE,sEAAsE;gBACtE,gBAAgB,CACnB,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,qBAAqB,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;IACjE,CAAC;IAgBO,KAAK,CAAC,kBAAkB,CAC9B,UAAkB,EAClB,eAAuB,EACvB,eAAuB;QAEvB,IAAI,IAAa,CAAC;QAClB,IAAI,CAAC;YACH,IAAI,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,iBAAiB,CACtD,UAAU,EACV,eAAe,EACf,eAAe,CAChB,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAIf,MAAM,IAAI,kDAAqC,CAC7C,yEAAyE;gBACvE,uEAAuE;gBACvE,0CAA0C;gBAC1C,IAAI,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAChE,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,2CAA8B,CACtC,kBAAkB,eAAe,6BAA6B;gBAC5D,GAAG,eAAe,gBAAgB,UAAU,2BAA2B;gBACvE,0BAA0B,CAC7B,CAAC;QACJ,CAAC;IACH,CAAC;IAYO,WAAW;QACjB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CACb,2EAA2E;gBACzE,4EAA4E;gBAC5E,mCAAmC,CACtC,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAgBO,6BAA6B,CACnC,UAA+B,EAC/B,eAAmC;QAEnC,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;YAClC,MAAM,IAAI,6CAAgC,CACxC,2EAA2E,CAC5E,CAAC;QACJ,CAAC;QAGD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5B,OAAO;QACT,CAAC;QACD,IACE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,oBAAoB;YACxC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,mCAAmC,EACvD,CAAC;YACD,MAAM,IAAI,6CAAgC,CACxC,yEAAyE;gBACvE,4EAA4E;gBAC5E,sEAAsE;gBACtE,4BAA4B,CAC/B,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;QAC/B,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;YACnC,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC;YACpC,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,MAAM,IAAI,6CAAgC,CACxC,mCAAmC,CACpC,CAAC;YACJ,CAAC;YACD,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;gBACjC,MAAM,IAAI,6CAAgC,CACxC,iCAAiC,IAAI,IAAI,CAC1C,CAAC;YACJ,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;YAC7B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;gBAC3D,MAAM,IAAI,6CAAgC,CACxC,kBAAkB,IAAI,0BAA0B,SAAS,CAAC,IAAI,IAAI,CACnE,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAQO,kCAAkC;QACxC,IACE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,oBAAoB;YACxC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,mCAAmC,EACvD,CAAC;YACD,MAAM,IAAI,6CAAgC,CACxC,yEAAyE;gBACvE,4EAA4E;gBAC5E,sEAAsE;gBACtE,4BAA4B,CAC/B,CAAC;QACJ,CAAC;IACH,CAAC;IAQO,KAAK,CAAC,qBAAqB,CACjC,kBAA0B;QAE1B,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QAChC,IAAI,CAAC,IAAI,CAAC,mCAAmC;YAAE,OAAO,IAAI,CAAC;QAE3D,MAAM,UAAU,GACd,MAAM,IAAI,CAAC,mCAAmC,CAAC,kBAAkB,CAAC,CAAC;QACrE,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QAEzC,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YACpC,IAAI,EAAE,SAAS,CAAC,IAAI;YACpB,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE;YAC/B,SAAS,EAAE,SAAS,CAAC,SAAS,IAAI,SAAS;YAC3C,kBAAkB,EAAE,SAAS,CAAC,kBAAkB,IAAI,SAAS;YAC7D,SAAS,EAAE,SAAS,CAAC,SAAS;SAC/B,CAAC,CAAC,CAAC;IACN,CAAC;IAEO,KAAK,CAAC,yBAAyB,CACrC,MAAiC;QAMjC,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAElE,MAAM,YAAY,GAAuB;YACvC,eAAe,EAAE,MAAM,CAAC,eAAe;YACvC,QAAQ,EAAE,MAAM,CAAC,QAAQ;YAEzB,GAAG,CAAC,aAAa;gBACf,CAAC,CAAC,EAAE,aAAa,EAAE;gBACnB,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC;YAC3C,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,SAAS;YAChC,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,SAAS;YAC5C,aAAa,EAAE,MAAM,CAAC,aAAa,IAAI,SAAS;YAChD,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,SAAS;YAC5C,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,kBAAkB,EAAE,MAAM,CAAC,EAAE;YAC7B,SAAS,EAAE,MAAM,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBACjD,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,aAAa,EAAE,IAAI,CAAC,aAAa,IAAI,SAAS;gBAC9C,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,SAAS;gBAC1C,QAAQ,EAAE,IAAI,CAAC,QAAQ;aACxB,CAAC,CAAC;SACJ,CAAC;QAEF,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,aAAa,CACrD,MAAM,CAAC,UAAU,EACjB,YAAY,EACZ,MAAM,CAAC,SAAS,CACjB,CAAC;QAGF,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YACpB,IAAI,CAAC;gBACH,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,CACtD,MAAM,CAAC,UAAU,CAClB,CAAC;gBACF,MAAM,gBAAgB,GAAG,aAAa,EAAE,gBAAgB,IAAI,KAAK,CAAC;gBAClE,MAAM,oBAAoB,GACxB,aAAa,EAAE,oBAAoB,IAAI,KAAK,CAAC;gBAE/C,MAAM,eAAe,GACnB,gBAAgB;oBAChB,aAAa,EAAE,cAAc;oBAC7B,aAAa,EAAE,kBAAkB;oBAC/B,CAAC,CAAC;wBACE,cAAc,EAAE,aAAa,CAAC,cAAc;wBAC5C,kBAAkB,EAAE,aAAa,CAAC,kBAAkB;qBACrD;oBACH,CAAC,CAAC,SAAS,CAAC;gBAEhB,MAAM,IAAI,CAAC,cAAc,CAAC,WAAW,CACnC,OAAO,CAAC,EAAE,EACV,gBAAgB,EAChB,oBAAoB,EACpB,eAAe,CAChB,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAEf,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,+BAA+B,OAAO,CAAC,EAAE,yBAAyB,MAAM,CAAC,EAAE,KAAK,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EACxI,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CACjD,CAAC;YACJ,CAAC;QACH,CAAC;QAGD,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;YACtB,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAChD,CAAC;QAGD,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE;YACzC,eAAe,EAAE,IAAI,IAAI,EAAE;SAC5B,CAAC,CAAC;QAGH,IAAI,IAAI,CAAC,oBAAoB,EAAE,2BAA2B,EAAE,CAAC;YAC3D,IAAI,CAAC;gBACH,MAAM,KAAK,GAAmC;oBAC5C,kBAAkB,EAAE,MAAM,CAAC,EAAE;oBAC7B,SAAS,EAAE,OAAO,CAAC,EAAE;oBACrB,UAAU,EAAE,MAAM,CAAC,UAAU;oBAC7B,aAAa,EAAE,MAAM,CAAC,aAAa;oBACnC,WAAW,EAAE,MAAM,CAAC,WAAW;oBAC/B,YAAY,EAAE,MAAM,CAAC,UAAU;oBAC/B,QAAQ,EAAE,MAAM,CAAC,QAAQ;iBAC1B,CAAC;gBACF,MAAM,IAAI,CAAC,oBAAoB,CAAC,2BAA2B,CAAC,KAAK,CAAC,CAAC;YACrE,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,+DAA+D,MAAM,CAAC,EAAE,KAAK,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EACrI,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CACjD,CAAC;YACJ,CAAC;QACH,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IASO,KAAK,CAAC,iBAAiB,CAC7B,MAAiC,EACjC,OAAyB;QAEzB,IAAI,CAAC;YAYH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YACtE,IAAI,CAAC,OAAO,IAAI,CAAC,kCAAgB,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBACtD,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,6CAA6C,MAAM,CAAC,EAAE,aAAa,OAAO,CAAC,EAAE,GAAG;oBAC9E,UAAU,OAAO,EAAE,MAAM,IAAI,SAAS,sCAAsC;oBAC5E,wEAAwE;oBACxE,yBAAyB,CAC5B,CAAC;gBACF,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,OAAO,EAAE,qBAAqB,CAAC,CAAC;gBACvE,OAAO;YACT,CAAC;YASD,MAAM,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC;YACzC,IAAI,cAAc,IAAI,CAAC,EAAE,CAAC;gBACxB,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,6CAA6C,MAAM,CAAC,EAAE,aAAa,OAAO,CAAC,EAAE,GAAG;oBAC9E,0BAA0B,CAC7B,CAAC;gBACF,OAAO;YACT,CAAC;YAGD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,YAAY,CACtD,MAAM,CAAC,UAAU,EACjB,MAAM,CAAC,eAAe,EACtB,QAAQ,CACT,CAAC;YAEF,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,6CAA6C,MAAM,CAAC,EAAE,uDAAuD,CAC9G,CAAC;gBACF,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,OAAO,EAAE,qBAAqB,CAAC,CAAC;gBACvE,OAAO;YACT,CAAC;YAGD,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,oBAAoB,CACnD,MAAM,EACN,OAAO,CAAC,EAAE,CACX,CAAC;YAGF,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;YAC5D,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,uBAAuB,CAAC;gBACnD,kBAAkB,EAAE,QAAQ,CAAC,kBAAkB;gBAC/C,MAAM,EAAE,cAAc;gBACtB,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,WAAW,EAAE,WAAW,OAAO,CAAC,aAAa,EAAE;gBAC/C,QAAQ,EAAE;oBACR,SAAS,EAAE,OAAO,CAAC,EAAE;oBACrB,kBAAkB,EAAE,MAAM,CAAC,EAAE;iBAC9B;gBAID,GAAG,CAAC,MAAM,CAAC,eAAe;oBACxB,CAAC,CAAC,EAAE,eAAe,EAAE,MAAM,CAAC,eAAe,EAAE;oBAC7C,CAAC,CAAC,EAAE,CAAC;gBAGP,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAS3D,cAAc,EAAE,eAAe,OAAO,CAAC,EAAE,IAAI,MAAM,CAAC,mBAAmB,EAAE;aAC1E,CAAC,CAAC;YAEH,IAAI,MAAM,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;gBAElC,MAAM,IAAI,CAAC,cAAc,CAAC,uBAAuB,CAAC;oBAChD,SAAS,EAAE,OAAO,CAAC,EAAE;oBACrB,MAAM,EAAE,cAAc;oBACtB,QAAQ,EAAE,OAAO,CAAC,QAAQ;oBAC1B,QAAQ,EAAE,QAAQ;oBAClB,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;oBAC3C,UAAU,EAAE,MAAM,CAAC,UAAU;iBAC9B,CAAC,CAAC;gBAGH,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE;oBACzC,mBAAmB,EAAE,CAAC;oBACtB,iBAAiB,EAAE,IAAI;iBACxB,CAAC,CAAC;gBAEH,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,+CAA+C,MAAM,CAAC,EAAE,aAAa,OAAO,CAAC,EAAE,EAAE,CAClF,CAAC;YACJ,CAAC;iBAAM,CAAC;gBAEN,MAAM,aAAa,GAAG,MAAM,CAAC,aAAa,IAAI,MAAM,CAAC,MAAM,CAAC;gBAC5D,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;YACjE,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,2CAA2C,MAAM,CAAC,EAAE,KAAK,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAClH,CAAC;YACF,MAAM,IAAI,CAAC,mBAAmB,CAC5B,MAAM,EACN,OAAO,EACP,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CACzD,CAAC;QACJ,CAAC;IACH,CAAC;IAaO,KAAK,CAAC,mBAAmB,CAC/B,MAAiC,EACjC,OAAyB,EACzB,aAAqB;QAErB,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QAKhC,MAAM,KAAK,GAAG,IAAI,CAAC,iBAAiB;YAClC,CAAC,CAAC,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC;YACzC,CAAC,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACnC,MAAM,OAAO,GAAG,KAAK,IAAI,MAAM,CAAC;QAEhC,IAAI,OAAO,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;YAGnC,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,4CAA4C,MAAM,CAAC,EAAE,oBAAoB;gBACvE,4CAA4C,CAC/C,CAAC;YACF,OAAO;QACT,CAAC;QAED,MAAM,eAAe,GAAG,OAAO,CAAC,mBAAmB,GAAG,CAAC,CAAC;QACxD,MAAM,WAAW,GAAG,eAAe,IAAI,CAAC,CAAC;QAEzC,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE;YAC3B,mBAAmB,EAAE,eAAe;YACpC,iBAAiB,EAAE,aAAa;YAChC,GAAG,CAAC,WAAW;gBACb,CAAC,CAAC;oBACE,MAAM,EAAE,QAAiB;oBACzB,QAAQ,EAAE,IAAI,IAAI,EAAE;oBACpB,QAAQ,EAAE,QAAQ;iBACnB;gBACH,CAAC,CAAC,EAAE,CAAC;SACR,CAAC,CAAC;QAGH,IAAI,IAAI,CAAC,oBAAoB,EAAE,wBAAwB,EAAE,CAAC;YACxD,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,oBAAoB,CAAC,wBAAwB,CAAC;oBACvD,kBAAkB,EAAE,MAAM,CAAC,EAAE;oBAC7B,SAAS,EAAE,OAAO,CAAC,EAAE;oBACrB,UAAU,EAAE,MAAM,CAAC,UAAU;oBAC7B,aAAa,EAAE,MAAM,CAAC,aAAa;oBACnC,WAAW,EAAE,MAAM,CAAC,WAAW;oBAC/B,aAAa;oBACb,mBAAmB,EAAE,eAAe;oBACpC,QAAQ,EAAE,WAAW;oBACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ;iBAC1B,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,kDAAkD,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CACrG,CAAC;YACJ,CAAC;QACH,CAAC;QAGD,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,IAAI,CAAC,cAAc,CACvB,MAAM,EACN,qBAAqB,eAAe,wCAAwC,aAAa,GAAG,CAC7F,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,4CAA4C,MAAM,CAAC,EAAE,KAAK,aAAa,eAAe,eAAe,GAAG,WAAW,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,GAAG,CAC9I,CAAC;IACJ,CAAC;IAOO,KAAK,CAAC,cAAc,CAC1B,UAAkB,EAClB,YAAqB;QAErB,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YAC/B,OAAO,IAAI,8BAAa,CAAC,YAAY,CAAC,CAAC;QACzC,CAAC;QAID,IAAI,IAAI,CAAC,UAAU,CAAC,eAAe,EAAE,CAAC;YACpC,MAAM,IAAI,6CAAgC,CACxC,sEAAsE;gBACpE,sEAAsE;gBACtE,wEAAwE,CAC3E,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAC9D,IAAI,MAAM,EAAE,cAAc,EAAE,CAAC;YAC3B,OAAO,MAAM,CAAC,cAAc,CAAC;QAC/B,CAAC;QAED,OAAO,IAAI,8BAAa,CAAC,CAAC,CAAC,CAAC;IAC9B,CAAC;IAOO,KAAK,CAAC,qBAAqB,CACjC,EAAU,EACV,UAAkB;QAElB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QACrD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,kDAAqC,CAC7C,qBAAqB,EAAE,YAAY,CACpC,CAAC;QACJ,CAAC;QAED,IAAI,MAAM,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;YACrC,MAAM,IAAI,kDAAqC,CAC7C,qBAAqB,EAAE,gCAAgC,UAAU,EAAE,CACpE,CAAC;QACJ,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;CACF,CAAA;AA/sCY,0DAAuB;kCAAvB,uBAAuB;IADnC,IAAA,mBAAU,GAAE;IAWR,WAAA,IAAA,eAAM,EAAC,wCAA4B,CAAC,CAAA;IAQpC,WAAA,IAAA,eAAM,EAAC,uBAAW,CAAC,CAAA;6CANa,gCAAc;QACd,gCAAc;QACf,6CAAoB;QAClB,kCAAe;QACf,iDAAsB;QAC5B,gBAAS,UAME,6CAAoB;GAvBlD,uBAAuB,CA+sCnC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ambushsoftworks/nestjs-payments-graphql",
3
- "version": "0.7.4",
3
+ "version": "0.8.0-rc.1",
4
4
  "description": "NestJS payments module with GraphQL support — invoicing, payment processing, recurring billing, and email notifications",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",