@misterhomer1992/miit-bot-payment 1.1.6 → 2.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/config/ConfigurationManager.d.ts +64 -0
- package/dist/config/ConfigurationManager.d.ts.map +1 -0
- package/dist/config/ConfigurationManager.js +144 -0
- package/dist/config/ConfigurationManager.js.map +1 -0
- package/dist/config/defaults.d.ts +18 -0
- package/dist/config/defaults.d.ts.map +1 -0
- package/dist/config/defaults.js +26 -0
- package/dist/config/defaults.js.map +1 -0
- package/dist/config/environment.d.ts +38 -0
- package/dist/config/environment.d.ts.map +1 -0
- package/dist/config/environment.js +91 -0
- package/dist/config/environment.js.map +1 -0
- package/dist/config/index.d.ts +5 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +18 -0
- package/dist/config/index.js.map +1 -0
- package/dist/config/types.d.ts +53 -0
- package/dist/config/types.d.ts.map +1 -0
- package/dist/config/types.js +3 -0
- package/dist/config/types.js.map +1 -0
- package/dist/index.d.ts +21 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +23 -0
- package/dist/index.js.map +1 -1
- package/dist/modules/cache/InMemoryCache.d.ts +17 -0
- package/dist/modules/cache/InMemoryCache.d.ts.map +1 -0
- package/dist/modules/cache/InMemoryCache.js +77 -0
- package/dist/modules/cache/InMemoryCache.js.map +1 -0
- package/dist/modules/cache/index.d.ts +3 -0
- package/dist/modules/cache/index.d.ts.map +1 -0
- package/dist/modules/cache/index.js +19 -0
- package/dist/modules/cache/index.js.map +1 -0
- package/dist/modules/cache/types.d.ts +52 -0
- package/dist/modules/cache/types.d.ts.map +1 -0
- package/dist/modules/cache/types.js +3 -0
- package/dist/modules/cache/types.js.map +1 -0
- package/dist/modules/errors/index.d.ts +2 -0
- package/dist/modules/errors/index.d.ts.map +1 -0
- package/dist/modules/errors/index.js +19 -0
- package/dist/modules/errors/index.js.map +1 -0
- package/dist/modules/errors/types.d.ts +112 -0
- package/dist/modules/errors/types.d.ts.map +1 -0
- package/dist/modules/errors/types.js +174 -0
- package/dist/modules/errors/types.js.map +1 -0
- package/dist/modules/payments/api.d.ts +63 -1
- package/dist/modules/payments/api.d.ts.map +1 -1
- package/dist/modules/payments/api.js +103 -1
- package/dist/modules/payments/api.js.map +1 -1
- package/dist/modules/payments/const.d.ts.map +1 -1
- package/dist/modules/payments/const.js +1 -0
- package/dist/modules/payments/const.js.map +1 -1
- package/dist/modules/payments/index.d.ts +8 -0
- package/dist/modules/payments/index.d.ts.map +1 -1
- package/dist/modules/payments/index.js +8 -0
- package/dist/modules/payments/index.js.map +1 -1
- package/dist/modules/payments/service.d.ts +42 -2
- package/dist/modules/payments/service.d.ts.map +1 -1
- package/dist/modules/payments/service.js +132 -3
- package/dist/modules/payments/service.js.map +1 -1
- package/dist/modules/payments/subscription-check-webhook.handler.d.ts +85 -0
- package/dist/modules/payments/subscription-check-webhook.handler.d.ts.map +1 -0
- package/dist/modules/payments/subscription-check-webhook.handler.js +155 -0
- package/dist/modules/payments/subscription-check-webhook.handler.js.map +1 -0
- package/dist/modules/payments/subscription-check-webhook.service.d.ts +59 -0
- package/dist/modules/payments/subscription-check-webhook.service.d.ts.map +1 -0
- package/dist/modules/payments/subscription-check-webhook.service.js +330 -0
- package/dist/modules/payments/subscription-check-webhook.service.js.map +1 -0
- package/dist/modules/payments/subscription-check-webhook.types.d.ts +25 -0
- package/dist/modules/payments/subscription-check-webhook.types.d.ts.map +1 -0
- package/dist/modules/payments/subscription-check-webhook.types.js +3 -0
- package/dist/modules/payments/subscription-check-webhook.types.js.map +1 -0
- package/dist/modules/payments/types.d.ts +69 -2
- package/dist/modules/payments/types.d.ts.map +1 -1
- package/dist/modules/payments/utils.d.ts +151 -5
- package/dist/modules/payments/utils.d.ts.map +1 -1
- package/dist/modules/payments/utils.js +253 -9
- package/dist/modules/payments/utils.js.map +1 -1
- package/dist/modules/payments/wayforpay.service.d.ts +39 -0
- package/dist/modules/payments/wayforpay.service.d.ts.map +1 -0
- package/dist/modules/payments/wayforpay.service.js +217 -0
- package/dist/modules/payments/wayforpay.service.js.map +1 -0
- package/dist/modules/payments/wayforpay.types.d.ts +115 -0
- package/dist/modules/payments/wayforpay.types.d.ts.map +1 -0
- package/dist/modules/payments/wayforpay.types.js +3 -0
- package/dist/modules/payments/wayforpay.types.js.map +1 -0
- package/dist/modules/payments/webhook.handler.d.ts +98 -0
- package/dist/modules/payments/webhook.handler.d.ts.map +1 -0
- package/dist/modules/payments/webhook.handler.js +153 -0
- package/dist/modules/payments/webhook.handler.js.map +1 -0
- package/dist/modules/payments/webhook.service.d.ts +99 -0
- package/dist/modules/payments/webhook.service.d.ts.map +1 -0
- package/dist/modules/payments/webhook.service.js +672 -0
- package/dist/modules/payments/webhook.service.js.map +1 -0
- package/dist/modules/payments/webhook.types.d.ts +35 -0
- package/dist/modules/payments/webhook.types.d.ts.map +1 -0
- package/dist/modules/payments/webhook.types.js +3 -0
- package/dist/modules/payments/webhook.types.js.map +1 -0
- package/dist/modules/subscription/change.service.d.ts +80 -0
- package/dist/modules/subscription/change.service.d.ts.map +1 -0
- package/dist/modules/subscription/change.service.js +226 -0
- package/dist/modules/subscription/change.service.js.map +1 -0
- package/dist/modules/subscription/index.d.ts +2 -0
- package/dist/modules/subscription/index.d.ts.map +1 -1
- package/dist/modules/subscription/index.js +2 -0
- package/dist/modules/subscription/index.js.map +1 -1
- package/dist/modules/subscription/service.d.ts +8 -1
- package/dist/modules/subscription/service.d.ts.map +1 -1
- package/dist/modules/subscription/service.js +59 -2
- package/dist/modules/subscription/service.js.map +1 -1
- package/dist/modules/subscription/status-check.handler.d.ts +117 -0
- package/dist/modules/subscription/status-check.handler.d.ts.map +1 -0
- package/dist/modules/subscription/status-check.handler.js +164 -0
- package/dist/modules/subscription/status-check.handler.js.map +1 -0
- package/dist/modules/subscription/types.d.ts +37 -1
- package/dist/modules/subscription/types.d.ts.map +1 -1
- package/dist/modules/subscriptionPlan/const.d.ts +5 -0
- package/dist/modules/subscriptionPlan/const.d.ts.map +1 -0
- package/dist/modules/subscriptionPlan/const.js +106 -0
- package/dist/modules/subscriptionPlan/const.js.map +1 -0
- package/dist/modules/subscriptionPlan/index.d.ts +5 -0
- package/dist/modules/subscriptionPlan/index.d.ts.map +1 -0
- package/dist/modules/subscriptionPlan/index.js +21 -0
- package/dist/modules/subscriptionPlan/index.js.map +1 -0
- package/dist/modules/subscriptionPlan/repository.d.ts +22 -0
- package/dist/modules/subscriptionPlan/repository.d.ts.map +1 -0
- package/dist/modules/subscriptionPlan/repository.js +95 -0
- package/dist/modules/subscriptionPlan/repository.js.map +1 -0
- package/dist/modules/subscriptionPlan/service.d.ts +21 -0
- package/dist/modules/subscriptionPlan/service.d.ts.map +1 -0
- package/dist/modules/subscriptionPlan/service.js +128 -0
- package/dist/modules/subscriptionPlan/service.js.map +1 -0
- package/dist/modules/subscriptionPlan/types.d.ts +40 -0
- package/dist/modules/subscriptionPlan/types.d.ts.map +1 -0
- package/dist/modules/subscriptionPlan/types.js +3 -0
- package/dist/modules/subscriptionPlan/types.js.map +1 -0
- package/dist/modules/token/const.d.ts +7 -0
- package/dist/modules/token/const.d.ts.map +1 -0
- package/dist/modules/token/const.js +66 -0
- package/dist/modules/token/const.js.map +1 -0
- package/dist/modules/token/index.d.ts +4 -0
- package/dist/modules/token/index.d.ts.map +1 -0
- package/dist/modules/token/index.js +20 -0
- package/dist/modules/token/index.js.map +1 -0
- package/dist/modules/token/service.d.ts +46 -0
- package/dist/modules/token/service.d.ts.map +1 -0
- package/dist/modules/token/service.js +249 -0
- package/dist/modules/token/service.js.map +1 -0
- package/dist/modules/token/types.d.ts +109 -0
- package/dist/modules/token/types.d.ts.map +1 -0
- package/dist/modules/token/types.js +3 -0
- package/dist/modules/token/types.js.map +1 -0
- package/dist/modules/tokenPack/const.d.ts +4 -0
- package/dist/modules/tokenPack/const.d.ts.map +1 -0
- package/dist/modules/tokenPack/const.js +10 -0
- package/dist/modules/tokenPack/const.js.map +1 -0
- package/dist/modules/tokenPack/index.d.ts +5 -0
- package/dist/modules/tokenPack/index.d.ts.map +1 -0
- package/dist/modules/tokenPack/index.js +21 -0
- package/dist/modules/tokenPack/index.js.map +1 -0
- package/dist/modules/tokenPack/repository.d.ts +32 -0
- package/dist/modules/tokenPack/repository.d.ts.map +1 -0
- package/dist/modules/tokenPack/repository.js +103 -0
- package/dist/modules/tokenPack/repository.js.map +1 -0
- package/dist/modules/tokenPack/service.d.ts +28 -0
- package/dist/modules/tokenPack/service.d.ts.map +1 -0
- package/dist/modules/tokenPack/service.js +106 -0
- package/dist/modules/tokenPack/service.js.map +1 -0
- package/dist/modules/tokenPack/types.d.ts +124 -0
- package/dist/modules/tokenPack/types.d.ts.map +1 -0
- package/dist/modules/tokenPack/types.js +3 -0
- package/dist/modules/tokenPack/types.js.map +1 -0
- package/package.json +9 -5
- package/src/config/ConfigurationManager.ts +159 -0
- package/src/config/defaults.ts +27 -0
- package/src/config/environment.ts +94 -0
- package/src/config/index.ts +22 -0
- package/src/config/types.ts +56 -0
- package/src/index.ts +29 -0
- package/src/modules/cache/InMemoryCache.ts +98 -0
- package/src/modules/cache/index.ts +2 -0
- package/src/modules/cache/types.ts +60 -0
- package/src/modules/cancellableAPI/utils.ts +60 -0
- package/src/modules/errors/index.ts +16 -0
- package/src/modules/errors/types.ts +201 -0
- package/src/modules/invoice/const.ts +7 -0
- package/src/modules/invoice/index.ts +4 -0
- package/src/modules/invoice/repository.ts +52 -0
- package/src/modules/invoice/service.ts +44 -0
- package/src/modules/invoice/types.ts +47 -0
- package/src/modules/logger/types.ts +8 -0
- package/src/modules/network/utils.ts +24 -0
- package/src/modules/payments/api.ts +289 -0
- package/src/modules/payments/const.ts +11 -0
- package/src/modules/payments/index.ts +14 -0
- package/src/modules/payments/repository.ts +125 -0
- package/src/modules/payments/service.test.ts +400 -0
- package/src/modules/payments/service.ts +365 -0
- package/src/modules/payments/subscription-check-webhook.handler.integration.test.ts +935 -0
- package/src/modules/payments/subscription-check-webhook.handler.ts +211 -0
- package/src/modules/payments/subscription-check-webhook.service.ts +398 -0
- package/src/modules/payments/subscription-check-webhook.types.ts +29 -0
- package/src/modules/payments/types.ts +193 -0
- package/src/modules/payments/utils.ts +428 -0
- package/src/modules/payments/wayforpay.service.test.ts +375 -0
- package/src/modules/payments/wayforpay.service.ts +284 -0
- package/src/modules/payments/wayforpay.types.ts +138 -0
- package/src/modules/payments/webhook.handler.integration.test.ts +975 -0
- package/src/modules/payments/webhook.handler.ts +219 -0
- package/src/modules/payments/webhook.service.ts +812 -0
- package/src/modules/payments/webhook.types.ts +38 -0
- package/src/modules/subscription/change.service.ts +317 -0
- package/src/modules/subscription/const.ts +9 -0
- package/src/modules/subscription/index.ts +5 -0
- package/src/modules/subscription/repository.ts +277 -0
- package/src/modules/subscription/service.test.ts +665 -0
- package/src/modules/subscription/service.ts +328 -0
- package/src/modules/subscription/status-check.handler.ts +254 -0
- package/src/modules/subscription/types.ts +267 -0
- package/src/modules/subscription/utils.ts +5 -0
- package/src/modules/subscriptionPlan/const.ts +106 -0
- package/src/modules/subscriptionPlan/index.ts +4 -0
- package/src/modules/subscriptionPlan/repository.ts +129 -0
- package/src/modules/subscriptionPlan/service.test.ts +401 -0
- package/src/modules/subscriptionPlan/service.ts +148 -0
- package/src/modules/subscriptionPlan/types.ts +67 -0
- package/src/modules/token/const.ts +64 -0
- package/src/modules/token/index.ts +3 -0
- package/src/modules/token/service.test.ts +499 -0
- package/src/modules/token/service.ts +297 -0
- package/src/modules/token/types.ts +124 -0
- package/src/modules/tokenPack/const.ts +9 -0
- package/src/modules/tokenPack/index.ts +4 -0
- package/src/modules/tokenPack/repository.ts +144 -0
- package/src/modules/tokenPack/service.ts +119 -0
- package/src/modules/tokenPack/types.ts +131 -0
- package/src/modules/user/index.ts +3 -0
- package/src/modules/user/types.ts +143 -0
- package/src/modules/user/userRepository.ts +64 -0
- package/src/modules/user/userService.ts +68 -0
- package/src/types/extend-express.d.ts +16 -0
- package/src/types/function.ts +5 -0
- package/src/types/utilities.ts +22 -0
- package/src/utils.ts +53 -0
- package/tsconfig.json +29 -0
- package/dist/modules/subscription/subscriptionPlan.d.ts +0 -4
- package/dist/modules/subscription/subscriptionPlan.d.ts.map +0 -1
- package/dist/modules/subscription/subscriptionPlan.js +0 -67
- package/dist/modules/subscription/subscriptionPlan.js.map +0 -1
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import { Logger } from '../logger/types';
|
|
2
|
+
import type { WayForPayCallbackData, IWayForPayService } from './wayforpay.types';
|
|
3
|
+
import type { IPaymentService } from './types';
|
|
4
|
+
import type { IInvoiceService } from '../invoice/types';
|
|
5
|
+
import type { ISubscriptionService } from '../subscription/types';
|
|
6
|
+
import type { ISubscriptionPlanService } from '../subscriptionPlan/types';
|
|
7
|
+
import type { ITokenPackService } from '../tokenPack/types';
|
|
8
|
+
import type { WebhookProcessingResult, IWebhookHandlerService } from './webhook.types';
|
|
9
|
+
import type { TokenPackPlan } from '../token/types';
|
|
10
|
+
import { GracePeriodConfig } from '../../config';
|
|
11
|
+
/**
|
|
12
|
+
* WebhookHandlerService processes payment confirmation webhooks from WayForPay.
|
|
13
|
+
* It handles signature verification, payment status updates, subscription activation,
|
|
14
|
+
* and user token balance initialization.
|
|
15
|
+
*/
|
|
16
|
+
export declare class WebhookHandlerService implements IWebhookHandlerService {
|
|
17
|
+
private readonly logger;
|
|
18
|
+
private readonly wayForPayService;
|
|
19
|
+
private readonly paymentService;
|
|
20
|
+
private readonly invoiceService;
|
|
21
|
+
private readonly subscriptionService;
|
|
22
|
+
private readonly subscriptionPlanService;
|
|
23
|
+
private readonly tokenPackService;
|
|
24
|
+
private readonly tokenPackPlans;
|
|
25
|
+
private readonly gracePeriodConfig;
|
|
26
|
+
constructor({ logger, wayForPayService, paymentService, invoiceService, subscriptionService, subscriptionPlanService, tokenPackService, tokenPackPlans, gracePeriodConfig, }: {
|
|
27
|
+
logger: Logger;
|
|
28
|
+
wayForPayService?: IWayForPayService;
|
|
29
|
+
paymentService?: IPaymentService;
|
|
30
|
+
invoiceService?: IInvoiceService;
|
|
31
|
+
subscriptionService?: ISubscriptionService;
|
|
32
|
+
subscriptionPlanService?: ISubscriptionPlanService;
|
|
33
|
+
tokenPackService?: ITokenPackService;
|
|
34
|
+
tokenPackPlans?: TokenPackPlan[];
|
|
35
|
+
gracePeriodConfig?: GracePeriodConfig;
|
|
36
|
+
});
|
|
37
|
+
private loadGracePeriodConfig;
|
|
38
|
+
/**
|
|
39
|
+
* Processes a payment confirmation webhook from WayForPay.
|
|
40
|
+
* This method handles the complete webhook flow:
|
|
41
|
+
* 1. Verifies the signature to validate request authenticity
|
|
42
|
+
* 2. Creates an invoice record
|
|
43
|
+
* 3. Updates payment status
|
|
44
|
+
* 4. Activates subscription or renews existing one
|
|
45
|
+
* 5. Initializes user token balance based on plan
|
|
46
|
+
*
|
|
47
|
+
* @param callbackData - The callback data from WayForPay
|
|
48
|
+
* @returns Processing result with response to send back to WayForPay
|
|
49
|
+
*/
|
|
50
|
+
processPaymentWebhook(callbackData: WayForPayCallbackData): Promise<WebhookProcessingResult>;
|
|
51
|
+
/**
|
|
52
|
+
* Processes an approved subscription payment.
|
|
53
|
+
* Creates invoice, updates payment status, activates subscription,
|
|
54
|
+
* and initializes token balance.
|
|
55
|
+
*/
|
|
56
|
+
private processApprovedSubscriptionPayment;
|
|
57
|
+
/**
|
|
58
|
+
* Processes an approved token pack payment.
|
|
59
|
+
* Creates invoice, updates payment status, and adds tokens to user balance.
|
|
60
|
+
*/
|
|
61
|
+
private processApprovedTokenPackPayment;
|
|
62
|
+
/**
|
|
63
|
+
* Processes an approved subscription upgrade payment.
|
|
64
|
+
* Updates subscription's planId, resets expiresAt, and adds new plan's tokens to existing balance.
|
|
65
|
+
*/
|
|
66
|
+
private processApprovedUpgradePayment;
|
|
67
|
+
/**
|
|
68
|
+
* Activates a new subscription for the user.
|
|
69
|
+
*/
|
|
70
|
+
private activateNewSubscription;
|
|
71
|
+
/**
|
|
72
|
+
* Renews an existing subscription by extending its expiration date.
|
|
73
|
+
*/
|
|
74
|
+
private renewSubscription;
|
|
75
|
+
/**
|
|
76
|
+
* Initializes user token balance by creating a token pack.
|
|
77
|
+
*/
|
|
78
|
+
private initializeTokenBalance;
|
|
79
|
+
/**
|
|
80
|
+
* Calculates the subscription expiration date based on the regular mode.
|
|
81
|
+
*/
|
|
82
|
+
private calculateExpirationDate;
|
|
83
|
+
/**
|
|
84
|
+
* Handles failed or declined payments.
|
|
85
|
+
* For recurring subscription renewals, this triggers deactivation of the subscription.
|
|
86
|
+
*/
|
|
87
|
+
private handleFailedPayment;
|
|
88
|
+
/**
|
|
89
|
+
* Checks if the payment callback is for a recurring renewal payment.
|
|
90
|
+
* WayForPay sets regularOn field for recurring payments.
|
|
91
|
+
*/
|
|
92
|
+
private isRecurringRenewal;
|
|
93
|
+
/**
|
|
94
|
+
* Handles a failed recurring renewal by cancelling or deactivating the subscription.
|
|
95
|
+
* Respects grace period configuration before full deactivation.
|
|
96
|
+
*/
|
|
97
|
+
private handleFailedRenewal;
|
|
98
|
+
}
|
|
99
|
+
//# sourceMappingURL=webhook.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"webhook.service.d.ts","sourceRoot":"","sources":["../../../src/modules/payments/webhook.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAoBzC,OAAO,KAAK,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAClF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,KAAK,EAAE,oBAAoB,EAAsB,MAAM,uBAAuB,CAAC;AACtF,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AAC1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,KAAK,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAEvF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAwB,iBAAiB,EAA+B,MAAM,cAAc,CAAC;AAEpG;;;;GAIG;AACH,qBAAa,qBAAsB,YAAW,sBAAsB;IAChE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAoB;IACrD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAkB;IACjD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAkB;IACjD,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAuB;IAC3D,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAA2B;IACnE,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAoB;IACrD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAkB;IACjD,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAoB;gBAE1C,EACR,MAAM,EACN,gBAAgB,EAChB,cAAc,EACd,cAAc,EACd,mBAAmB,EACnB,uBAAuB,EACvB,gBAAgB,EAChB,cAAc,EACd,iBAAiB,GACpB,EAAE;QACC,MAAM,EAAE,MAAM,CAAC;QACf,gBAAgB,CAAC,EAAE,iBAAiB,CAAC;QACrC,cAAc,CAAC,EAAE,eAAe,CAAC;QACjC,cAAc,CAAC,EAAE,eAAe,CAAC;QACjC,mBAAmB,CAAC,EAAE,oBAAoB,CAAC;QAC3C,uBAAuB,CAAC,EAAE,wBAAwB,CAAC;QACnD,gBAAgB,CAAC,EAAE,iBAAiB,CAAC;QACrC,cAAc,CAAC,EAAE,aAAa,EAAE,CAAC;QACjC,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;KACzC;IAYD,OAAO,CAAC,qBAAqB;IAS7B;;;;;;;;;;;OAWG;IACU,qBAAqB,CAAC,YAAY,EAAE,qBAAqB,GAAG,OAAO,CAAC,uBAAuB,CAAC;IA0FzG;;;;OAIG;YACW,kCAAkC;IAiHhD;;;OAGG;YACW,+BAA+B;IAwF7C;;;OAGG;YACW,6BAA6B;IAoJ3C;;OAEG;YACW,uBAAuB;IA4BrC;;OAEG;YACW,iBAAiB;IAkC/B;;OAEG;YACW,sBAAsB;IA4BpC;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAkB/B;;;OAGG;YACW,mBAAmB;IA0BjC;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAK1B;;;OAGG;YACW,mBAAmB;CA8FpC"}
|