@actschurch/ccms-sdk 0.0.9 → 0.0.11
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/models/common/ResponseData.d.ts +8 -0
- package/dist/models/common/ResponseData.d.ts.map +1 -1
- package/dist/models/payments/PayFastModels.d.ts +33 -0
- package/dist/models/payments/PayFastModels.d.ts.map +1 -1
- package/dist/models/vendorcatalog/ModelView/ShopEventProductModelView.d.ts +9 -0
- package/dist/models/vendorcatalog/ModelView/ShopEventProductModelView.d.ts.map +1 -1
- package/dist/react/hooks/index.d.ts +1 -0
- package/dist/react/hooks/index.d.ts.map +1 -1
- package/dist/react/hooks/index.js +2 -0
- package/dist/react/hooks/index.js.map +1 -1
- package/dist/react/hooks/services/index.d.ts +1 -0
- package/dist/react/hooks/services/index.d.ts.map +1 -1
- package/dist/react/hooks/services/index.js +2 -0
- package/dist/react/hooks/services/index.js.map +1 -1
- package/dist/react/hooks/services/usePayFastCheckout.d.ts +98 -0
- package/dist/react/hooks/services/usePayFastCheckout.d.ts.map +1 -0
- package/dist/react/hooks/services/usePayFastCheckout.js +94 -0
- package/dist/react/hooks/services/usePayFastCheckout.js.map +1 -0
- package/dist/react/hooks/useEventProductStreaming.d.ts +75 -0
- package/dist/react/hooks/useEventProductStreaming.d.ts.map +1 -0
- package/dist/react/hooks/useEventProductStreaming.js +123 -0
- package/dist/react/hooks/useEventProductStreaming.js.map +1 -0
- package/dist/services/vendorcatalog/EventProductStreamingService.d.ts +41 -0
- package/dist/services/vendorcatalog/EventProductStreamingService.d.ts.map +1 -0
- package/dist/services/vendorcatalog/EventProductStreamingService.js +47 -0
- package/dist/services/vendorcatalog/EventProductStreamingService.js.map +1 -0
- package/dist/services/vendorcatalog/VendorCatalogShopService.d.ts +10 -0
- package/dist/services/vendorcatalog/VendorCatalogShopService.d.ts.map +1 -1
- package/dist/services/vendorcatalog/VendorCatalogShopService.js +18 -0
- package/dist/services/vendorcatalog/VendorCatalogShopService.js.map +1 -1
- package/dist/services/vendorcatalog/index.d.ts +1 -0
- package/dist/services/vendorcatalog/index.d.ts.map +1 -1
- package/dist/services/vendorcatalog/index.js +1 -0
- package/dist/services/vendorcatalog/index.js.map +1 -1
- package/dist/utils/PayFastCheckout.d.ts +99 -0
- package/dist/utils/PayFastCheckout.d.ts.map +1 -0
- package/dist/utils/PayFastCheckout.js +154 -0
- package/dist/utils/PayFastCheckout.js.map +1 -0
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +2 -0
- package/dist/utils/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -15,5 +15,13 @@ export interface ResponseData<T> {
|
|
|
15
15
|
errors?: string[] | null;
|
|
16
16
|
/** UTC timestamp when the response was generated (ISO-8601 format) */
|
|
17
17
|
timestamp: string;
|
|
18
|
+
/** Total number of items across all pages */
|
|
19
|
+
totalCount?: number | null;
|
|
20
|
+
/** Number of items skipped */
|
|
21
|
+
skip?: number | null;
|
|
22
|
+
/** Number of items requested */
|
|
23
|
+
take?: number | null;
|
|
24
|
+
/** Whether there are more items beyond the current page */
|
|
25
|
+
hasMore?: boolean | null;
|
|
18
26
|
}
|
|
19
27
|
//# sourceMappingURL=ResponseData.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ResponseData.d.ts","sourceRoot":"","sources":["../../../src/models/common/ResponseData.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,WAAW,YAAY,CAAC,CAAC;IAC7B,8CAA8C;IAC9C,OAAO,EAAE,OAAO,CAAC;IAEjB,uBAAuB;IACvB,UAAU,EAAE,MAAM,CAAC;IAEnB,6CAA6C;IAC7C,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAExB,gCAAgC;IAChC,IAAI,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;IAEhB,mDAAmD;IACnD,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAEzB,sEAAsE;IACtE,SAAS,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"ResponseData.d.ts","sourceRoot":"","sources":["../../../src/models/common/ResponseData.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,WAAW,YAAY,CAAC,CAAC;IAC7B,8CAA8C;IAC9C,OAAO,EAAE,OAAO,CAAC;IAEjB,uBAAuB;IACvB,UAAU,EAAE,MAAM,CAAC;IAEnB,6CAA6C;IAC7C,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAExB,gCAAgC;IAChC,IAAI,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;IAEhB,mDAAmD;IACnD,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAEzB,sEAAsE;IACtE,SAAS,EAAE,MAAM,CAAC;IAGlB,6CAA6C;IAC7C,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,8BAA8B;IAC9B,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,gCAAgC;IAChC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,2DAA2D;IAC3D,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;CAC1B"}
|
|
@@ -112,4 +112,37 @@ export interface PaymentReturnResponse {
|
|
|
112
112
|
status: string;
|
|
113
113
|
message: string;
|
|
114
114
|
}
|
|
115
|
+
/**
|
|
116
|
+
* Redirect strategy for PayFast checkout.
|
|
117
|
+
*
|
|
118
|
+
* - `'auto'` — Injects the server-generated `redirectHtml` into the page.
|
|
119
|
+
* Simplest option: a self-submitting form that redirects immediately.
|
|
120
|
+
*
|
|
121
|
+
* - `'form'` — Programmatically creates a hidden form from `payFastFormData`
|
|
122
|
+
* and submits it to `payFastProcessUrl`. Gives the caller a chance to
|
|
123
|
+
* store the transaction reference before the redirect happens.
|
|
124
|
+
*
|
|
125
|
+
* - `'manual'` — No redirect. Returns the `PayFastPaymentReference` so the
|
|
126
|
+
* caller has full control. Use this when you need to open a new window,
|
|
127
|
+
* show a confirmation dialog, or handle the redirect yourself.
|
|
128
|
+
*/
|
|
129
|
+
export type PayFastRedirectMode = 'auto' | 'form' | 'manual';
|
|
130
|
+
/**
|
|
131
|
+
* Reference returned after initiating a payment.
|
|
132
|
+
* Always available regardless of redirect mode.
|
|
133
|
+
*/
|
|
134
|
+
export interface PayFastPaymentReference {
|
|
135
|
+
/** Internal transaction ID for status polling */
|
|
136
|
+
transactionID: string;
|
|
137
|
+
/** Merchant payment reference (m_payment_id) */
|
|
138
|
+
paymentId: string;
|
|
139
|
+
/** Whether this payment is in sandbox mode */
|
|
140
|
+
isSandbox: boolean;
|
|
141
|
+
/** Full response for advanced usage */
|
|
142
|
+
response: PayFastPaymentResponse;
|
|
143
|
+
}
|
|
144
|
+
/**
|
|
145
|
+
* Payment type shorthand for convenience checkout methods.
|
|
146
|
+
*/
|
|
147
|
+
export type PayFastPaymentType = 'initiate' | 'give' | 'purchase' | 'donate' | 'service' | 'vendor';
|
|
115
148
|
//# sourceMappingURL=PayFastModels.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PayFastModels.d.ts","sourceRoot":"","sources":["../../../src/models/payments/PayFastModels.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"PayFastModels.d.ts","sourceRoot":"","sources":["../../../src/models/payments/PayFastModels.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,11 +7,18 @@
|
|
|
7
7
|
*/
|
|
8
8
|
import type { VendorProductMediaModelView } from './VendorProductMediaModelView';
|
|
9
9
|
import type { VendorProductVarientModelView } from './VendorProductVarientModelView';
|
|
10
|
+
import type { VendorProductAddOnModelView } from './VendorProductAddOnModelView';
|
|
10
11
|
export interface ShopEventProductModelView {
|
|
11
12
|
/** Product ID */
|
|
12
13
|
productID: number;
|
|
13
14
|
/** Vendor ID */
|
|
14
15
|
vendorID: number;
|
|
16
|
+
/** Vendor display name (TradingName or BusinessName) */
|
|
17
|
+
vendorName?: string | null;
|
|
18
|
+
/** Vendor bio/description */
|
|
19
|
+
vendorBio?: string | null;
|
|
20
|
+
/** Event ID (0 when not in event context) */
|
|
21
|
+
eventID: number;
|
|
15
22
|
/** Product name */
|
|
16
23
|
name?: string | null;
|
|
17
24
|
/** Product code/SKU */
|
|
@@ -52,5 +59,7 @@ export interface ShopEventProductModelView {
|
|
|
52
59
|
mediaFiles?: VendorProductMediaModelView[] | null;
|
|
53
60
|
/** Active product variants */
|
|
54
61
|
productVarients?: VendorProductVarientModelView[] | null;
|
|
62
|
+
/** Active product add-ons */
|
|
63
|
+
productAddOns?: VendorProductAddOnModelView[] | null;
|
|
55
64
|
}
|
|
56
65
|
//# sourceMappingURL=ShopEventProductModelView.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ShopEventProductModelView.d.ts","sourceRoot":"","sources":["../../../../src/models/vendorcatalog/ModelView/ShopEventProductModelView.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AACjF,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"ShopEventProductModelView.d.ts","sourceRoot":"","sources":["../../../../src/models/vendorcatalog/ModelView/ShopEventProductModelView.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AACjF,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AACrF,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAEjF,MAAM,WAAW,yBAAyB;IAExC,iBAAiB;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,wDAAwD;IACxD,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,6CAA6C;IAC7C,OAAO,EAAE,MAAM,CAAC;IAChB,mBAAmB;IACnB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,uBAAuB;IACvB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,0BAA0B;IAC1B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,2BAA2B;IAC3B,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,iBAAiB;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,kCAAkC;IAClC,UAAU,EAAE,OAAO,CAAC;IACpB,yBAAyB;IACzB,aAAa,EAAE,MAAM,CAAC;IACtB,2CAA2C;IAC3C,iBAAiB,EAAE,OAAO,CAAC;IAC3B,6BAA6B;IAC7B,gBAAgB,EAAE,MAAM,CAAC;IAGzB,wBAAwB;IACxB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAGzB,0BAA0B;IAC1B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAG3B,wBAAwB;IACxB,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,6BAA6B;IAC7B,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAGpC,0CAA0C;IAC1C,eAAe,EAAE,MAAM,CAAC;IACxB,mDAAmD;IACnD,gBAAgB,EAAE,MAAM,CAAC;IAGzB,gDAAgD;IAChD,YAAY,EAAE,MAAM,CAAC;IACrB,yEAAyE;IACzE,eAAe,EAAE,MAAM,CAAC;IACxB,mEAAmE;IACnE,iBAAiB,EAAE,MAAM,CAAC;IAG1B,uCAAuC;IACvC,UAAU,CAAC,EAAE,2BAA2B,EAAE,GAAG,IAAI,CAAC;IAGlD,8BAA8B;IAC9B,eAAe,CAAC,EAAE,6BAA6B,EAAE,GAAG,IAAI,CAAC;IAGzD,6BAA6B;IAC7B,aAAa,CAAC,EAAE,2BAA2B,EAAE,GAAG,IAAI,CAAC;CACtD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/react/hooks/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,cAAc,WAAW,CAAC;AAG1B,cAAc,UAAU,CAAC;AAGzB,cAAc,+BAA+B,CAAC;AAC9C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,oDAAoD,CAAC;AAGnE,cAAc,eAAe,CAAC;AAG9B,cAAc,aAAa,CAAC;AAG5B,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAGlC,cAAc,oBAAoB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/react/hooks/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,cAAc,WAAW,CAAC;AAG1B,cAAc,UAAU,CAAC;AAGzB,cAAc,+BAA+B,CAAC;AAC9C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,oDAAoD,CAAC;AAGnE,cAAc,eAAe,CAAC;AAG9B,cAAc,aAAa,CAAC;AAG5B,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAGlC,cAAc,oBAAoB,CAAC;AAGnC,cAAc,4BAA4B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/react/hooks/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,iBAAiB;AACjB,cAAc,WAAW,CAAC;AAE1B,YAAY;AACZ,cAAc,UAAU,CAAC;AAEzB,yBAAyB;AACzB,cAAc,+BAA+B,CAAC;AAC9C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,oDAAoD,CAAC;AAEnE,iBAAiB;AACjB,cAAc,eAAe,CAAC;AAE9B,eAAe;AACf,cAAc,aAAa,CAAC;AAE5B,gBAAgB;AAChB,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAElC,uBAAuB;AACvB,cAAc,oBAAoB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/react/hooks/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,iBAAiB;AACjB,cAAc,WAAW,CAAC;AAE1B,YAAY;AACZ,cAAc,UAAU,CAAC;AAEzB,yBAAyB;AACzB,cAAc,+BAA+B,CAAC;AAC9C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,oDAAoD,CAAC;AAEnE,iBAAiB;AACjB,cAAc,eAAe,CAAC;AAE9B,eAAe;AACf,cAAc,aAAa,CAAC;AAE5B,gBAAgB;AAChB,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAElC,uBAAuB;AACvB,cAAc,oBAAoB,CAAC;AAEnC,gCAAgC;AAChC,cAAc,4BAA4B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/react/hooks/services/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,cAAc,mBAAmB,CAAC;AAGlC,cAAc,oBAAoB,CAAC;AAGnC,cAAc,mBAAmB,CAAC;AAGlC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uBAAuB,CAAC;AAGtC,cAAc,qBAAqB,CAAC;AAGpC,cAAc,wBAAwB,CAAC;AAEvC,cAAc,2BAA2B,CAAC;AAE1C,cAAc,uBAAuB,CAAC;AAGtC,cAAc,uBAAuB,CAAC;AAGtC,cAAc,iBAAiB,CAAC;AAGhC,cAAc,uBAAuB,CAAC;AAGtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AAGxC,cAAc,sBAAsB,CAAC;AAGrC,cAAc,qBAAqB,CAAC;AAGpC,cAAc,sBAAsB,CAAC;AAGrC,cAAc,uBAAuB,CAAC;AAGtC,cAAc,wBAAwB,CAAC;AAGvC,cAAc,0BAA0B,CAAC;AAGzC,cAAc,qBAAqB,CAAC;AAGpC,cAAc,sBAAsB,CAAC;AAGrC,cAAc,2BAA2B,CAAC;AAG1C,cAAc,4BAA4B,CAAC;AAG3C,cAAc,2BAA2B,CAAC;AAG1C,cAAc,yBAAyB,CAAC;AAGxC,cAAc,0BAA0B,CAAC;AAGzC,cAAc,4BAA4B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/react/hooks/services/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,cAAc,mBAAmB,CAAC;AAGlC,cAAc,oBAAoB,CAAC;AAGnC,cAAc,mBAAmB,CAAC;AAGlC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uBAAuB,CAAC;AAGtC,cAAc,qBAAqB,CAAC;AAGpC,cAAc,wBAAwB,CAAC;AAEvC,cAAc,2BAA2B,CAAC;AAE1C,cAAc,uBAAuB,CAAC;AAGtC,cAAc,uBAAuB,CAAC;AAGtC,cAAc,iBAAiB,CAAC;AAGhC,cAAc,uBAAuB,CAAC;AAGtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AAGxC,cAAc,sBAAsB,CAAC;AAGrC,cAAc,qBAAqB,CAAC;AAGpC,cAAc,sBAAsB,CAAC;AAGrC,cAAc,uBAAuB,CAAC;AAGtC,cAAc,wBAAwB,CAAC;AAGvC,cAAc,0BAA0B,CAAC;AAGzC,cAAc,qBAAqB,CAAC;AAGpC,cAAc,sBAAsB,CAAC;AAGrC,cAAc,2BAA2B,CAAC;AAG1C,cAAc,4BAA4B,CAAC;AAG3C,cAAc,2BAA2B,CAAC;AAG1C,cAAc,yBAAyB,CAAC;AAGxC,cAAc,0BAA0B,CAAC;AAGzC,cAAc,4BAA4B,CAAC;AAG3C,cAAc,sBAAsB,CAAC"}
|
|
@@ -56,6 +56,8 @@ export * from './useTaskPortalServices';
|
|
|
56
56
|
export * from './useStaffPortalServices';
|
|
57
57
|
// Announcement service hooks
|
|
58
58
|
export * from './useAnnouncementsServices';
|
|
59
|
+
// PayFast checkout hook
|
|
60
|
+
export * from './usePayFastCheckout';
|
|
59
61
|
// Add other domain hooks here as they are implemented:
|
|
60
62
|
// etc.
|
|
61
63
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/react/hooks/services/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,qBAAqB;AACrB,cAAc,mBAAmB,CAAC;AAElC,qBAAqB;AACrB,cAAc,oBAAoB,CAAC;AAEnC,qBAAqB;AACrB,cAAc,mBAAmB,CAAC;AAElC,8BAA8B;AAC9B,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uBAAuB,CAAC;AAEtC,uBAAuB;AACvB,cAAc,qBAAqB,CAAC;AAEpC,0BAA0B;AAC1B,cAAc,wBAAwB,CAAC;AACvC,6BAA6B;AAC7B,cAAc,2BAA2B,CAAC;AAC1C,yBAAyB;AACzB,cAAc,uBAAuB,CAAC;AAEtC,yBAAyB;AACzB,cAAc,uBAAuB,CAAC;AAEtC,mBAAmB;AACnB,cAAc,iBAAiB,CAAC;AAEhC,yBAAyB;AACzB,cAAc,uBAAuB,CAAC;AAEtC,4BAA4B;AAC5B,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AAExC,wBAAwB;AACxB,cAAc,sBAAsB,CAAC;AAErC,sBAAsB;AACtB,cAAc,qBAAqB,CAAC;AAEpC,wBAAwB;AACxB,cAAc,sBAAsB,CAAC;AAErC,wBAAwB;AACxB,cAAc,uBAAuB,CAAC;AAEtC,0BAA0B;AAC1B,cAAc,wBAAwB,CAAC;AAEvC,6BAA6B;AAC7B,cAAc,0BAA0B,CAAC;AAEzC,uBAAuB;AACvB,cAAc,qBAAqB,CAAC;AAEpC,wBAAwB;AACxB,cAAc,sBAAsB,CAAC;AAErC,8BAA8B;AAC9B,cAAc,2BAA2B,CAAC;AAE1C,+BAA+B;AAC/B,cAAc,4BAA4B,CAAC;AAE3C,oDAAoD;AACpD,cAAc,2BAA2B,CAAC;AAE1C,iEAAiE;AACjE,cAAc,yBAAyB,CAAC;AAExC,qDAAqD;AACrD,cAAc,0BAA0B,CAAC;AAEzC,6BAA6B;AAC7B,cAAc,4BAA4B,CAAC;AAE3C,uDAAuD;AACvD,OAAO"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/react/hooks/services/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,qBAAqB;AACrB,cAAc,mBAAmB,CAAC;AAElC,qBAAqB;AACrB,cAAc,oBAAoB,CAAC;AAEnC,qBAAqB;AACrB,cAAc,mBAAmB,CAAC;AAElC,8BAA8B;AAC9B,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uBAAuB,CAAC;AAEtC,uBAAuB;AACvB,cAAc,qBAAqB,CAAC;AAEpC,0BAA0B;AAC1B,cAAc,wBAAwB,CAAC;AACvC,6BAA6B;AAC7B,cAAc,2BAA2B,CAAC;AAC1C,yBAAyB;AACzB,cAAc,uBAAuB,CAAC;AAEtC,yBAAyB;AACzB,cAAc,uBAAuB,CAAC;AAEtC,mBAAmB;AACnB,cAAc,iBAAiB,CAAC;AAEhC,yBAAyB;AACzB,cAAc,uBAAuB,CAAC;AAEtC,4BAA4B;AAC5B,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AAExC,wBAAwB;AACxB,cAAc,sBAAsB,CAAC;AAErC,sBAAsB;AACtB,cAAc,qBAAqB,CAAC;AAEpC,wBAAwB;AACxB,cAAc,sBAAsB,CAAC;AAErC,wBAAwB;AACxB,cAAc,uBAAuB,CAAC;AAEtC,0BAA0B;AAC1B,cAAc,wBAAwB,CAAC;AAEvC,6BAA6B;AAC7B,cAAc,0BAA0B,CAAC;AAEzC,uBAAuB;AACvB,cAAc,qBAAqB,CAAC;AAEpC,wBAAwB;AACxB,cAAc,sBAAsB,CAAC;AAErC,8BAA8B;AAC9B,cAAc,2BAA2B,CAAC;AAE1C,+BAA+B;AAC/B,cAAc,4BAA4B,CAAC;AAE3C,oDAAoD;AACpD,cAAc,2BAA2B,CAAC;AAE1C,iEAAiE;AACjE,cAAc,yBAAyB,CAAC;AAExC,qDAAqD;AACrD,cAAc,0BAA0B,CAAC;AAEzC,6BAA6B;AAC7B,cAAc,4BAA4B,CAAC;AAE3C,wBAAwB;AACxB,cAAc,sBAAsB,CAAC;AAErC,uDAAuD;AACvD,OAAO"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* usePayFastCheckout
|
|
3
|
+
* React hook for PayFast checkout with state management.
|
|
4
|
+
* Wraps PayFastPaymentService + PayFastCheckout utility.
|
|
5
|
+
*/
|
|
6
|
+
import { PayFastPaymentRequest, PayFastPaymentReference, PayFastRedirectMode, PayFastPaymentType, PayFastPaymentResponse, PaymentStatusResponse } from '../../../models/payments';
|
|
7
|
+
import { PayFastCheckoutOptions } from '../../../utils/PayFastCheckout';
|
|
8
|
+
/**
|
|
9
|
+
* State returned by usePayFastCheckout.
|
|
10
|
+
*/
|
|
11
|
+
export interface PayFastCheckoutState {
|
|
12
|
+
/** Whether a payment request is currently in flight */
|
|
13
|
+
loading: boolean;
|
|
14
|
+
/** Error from the last checkout attempt, if any */
|
|
15
|
+
error: Error | null;
|
|
16
|
+
/** Payment reference from the last successful checkout */
|
|
17
|
+
reference: PayFastPaymentReference | null;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Actions returned by usePayFastCheckout.
|
|
21
|
+
*/
|
|
22
|
+
export interface PayFastCheckoutActions {
|
|
23
|
+
/**
|
|
24
|
+
* Initiate a payment and handle the redirect.
|
|
25
|
+
*
|
|
26
|
+
* @param request - Payment details (amount, itemName, etc.)
|
|
27
|
+
* @param type - Payment type: 'give', 'purchase', 'donate', 'service', 'vendor', or 'initiate'
|
|
28
|
+
* @param options - Redirect mode and callbacks
|
|
29
|
+
* @returns The payment reference
|
|
30
|
+
*/
|
|
31
|
+
checkout: (request: PayFastPaymentRequest, type?: PayFastPaymentType, options?: PayFastCheckoutOptions) => Promise<PayFastPaymentReference>;
|
|
32
|
+
/**
|
|
33
|
+
* Redirect using an existing PayFastPaymentResponse.
|
|
34
|
+
* Useful when you fetched the response elsewhere and just need the redirect.
|
|
35
|
+
*/
|
|
36
|
+
redirect: (response: PayFastPaymentResponse, options?: PayFastCheckoutOptions) => Promise<PayFastPaymentReference>;
|
|
37
|
+
/**
|
|
38
|
+
* Poll payment status by transaction ID.
|
|
39
|
+
*/
|
|
40
|
+
getStatus: (transactionId: string) => Promise<PaymentStatusResponse>;
|
|
41
|
+
/**
|
|
42
|
+
* Clear the current error and reference state.
|
|
43
|
+
*/
|
|
44
|
+
reset: () => void;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Hook options.
|
|
48
|
+
*/
|
|
49
|
+
export interface UsePayFastCheckoutOptions {
|
|
50
|
+
/**
|
|
51
|
+
* Default redirect mode for all checkout calls.
|
|
52
|
+
* Can be overridden per-call via PayFastCheckoutOptions.
|
|
53
|
+
* @default 'auto'
|
|
54
|
+
*/
|
|
55
|
+
defaultMode?: PayFastRedirectMode;
|
|
56
|
+
/**
|
|
57
|
+
* Default callback before redirect.
|
|
58
|
+
* Can be overridden per-call.
|
|
59
|
+
*/
|
|
60
|
+
onBeforeRedirect?: (reference: PayFastPaymentReference) => void | Promise<void>;
|
|
61
|
+
/**
|
|
62
|
+
* Callback on successful payment initiation (before redirect).
|
|
63
|
+
*/
|
|
64
|
+
onSuccess?: (reference: PayFastPaymentReference) => void;
|
|
65
|
+
/**
|
|
66
|
+
* Callback on payment initiation error.
|
|
67
|
+
*/
|
|
68
|
+
onError?: (error: Error) => void;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* React hook for PayFast checkout with loading/error state management.
|
|
72
|
+
*
|
|
73
|
+
* @example
|
|
74
|
+
* // Auto-redirect (simplest usage)
|
|
75
|
+
* const { checkout, loading, error, reference } = usePayFastCheckout();
|
|
76
|
+
*
|
|
77
|
+
* const handlePay = () => checkout({ amount: 100, itemName: 'Donation' }, 'donate');
|
|
78
|
+
*
|
|
79
|
+
* @example
|
|
80
|
+
* // Manual mode — show confirmation before redirect
|
|
81
|
+
* const { checkout, reference, redirect } = usePayFastCheckout({ defaultMode: 'manual' });
|
|
82
|
+
*
|
|
83
|
+
* const handlePay = async () => {
|
|
84
|
+
* const ref = await checkout({ amount: 50, itemName: 'T-Shirt' }, 'purchase');
|
|
85
|
+
* // Show confirmation dialog, then:
|
|
86
|
+
* await redirect(ref.response, { mode: 'form' });
|
|
87
|
+
* };
|
|
88
|
+
*
|
|
89
|
+
* @example
|
|
90
|
+
* // Form mode with pre-redirect storage
|
|
91
|
+
* const { checkout, loading } = usePayFastCheckout({
|
|
92
|
+
* defaultMode: 'form',
|
|
93
|
+
* onBeforeRedirect: (ref) => sessionStorage.setItem('paymentId', ref.paymentId),
|
|
94
|
+
* onSuccess: (ref) => console.log('Payment initiated:', ref.transactionID),
|
|
95
|
+
* });
|
|
96
|
+
*/
|
|
97
|
+
export declare function usePayFastCheckout(hookOptions?: UsePayFastCheckoutOptions): PayFastCheckoutState & PayFastCheckoutActions;
|
|
98
|
+
//# sourceMappingURL=usePayFastCheckout.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"usePayFastCheckout.d.ts","sourceRoot":"","sources":["../../../../src/react/hooks/services/usePayFastCheckout.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EACL,qBAAqB,EACrB,uBAAuB,EACvB,mBAAmB,EACnB,kBAAkB,EAClB,sBAAsB,EACtB,qBAAqB,EACtB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAEL,sBAAsB,EAEvB,MAAM,gCAAgC,CAAC;AAExC;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,uDAAuD;IACvD,OAAO,EAAE,OAAO,CAAC;IACjB,mDAAmD;IACnD,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,0DAA0D;IAC1D,SAAS,EAAE,uBAAuB,GAAG,IAAI,CAAC;CAC3C;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC;;;;;;;OAOG;IACH,QAAQ,EAAE,CACR,OAAO,EAAE,qBAAqB,EAC9B,IAAI,CAAC,EAAE,kBAAkB,EACzB,OAAO,CAAC,EAAE,sBAAsB,KAC7B,OAAO,CAAC,uBAAuB,CAAC,CAAC;IAEtC;;;OAGG;IACH,QAAQ,EAAE,CACR,QAAQ,EAAE,sBAAsB,EAChC,OAAO,CAAC,EAAE,sBAAsB,KAC7B,OAAO,CAAC,uBAAuB,CAAC,CAAC;IAEtC;;OAEG;IACH,SAAS,EAAE,CAAC,aAAa,EAAE,MAAM,KAAK,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAErE;;OAEG;IACH,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC;;;;OAIG;IACH,WAAW,CAAC,EAAE,mBAAmB,CAAC;IAElC;;;OAGG;IACH,gBAAgB,CAAC,EAAE,CAAC,SAAS,EAAE,uBAAuB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEhF;;OAEG;IACH,SAAS,CAAC,EAAE,CAAC,SAAS,EAAE,uBAAuB,KAAK,IAAI,CAAC;IAEzD;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CAClC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,kBAAkB,CAChC,WAAW,GAAE,yBAA8B,GAC1C,oBAAoB,GAAG,sBAAsB,CAgF/C"}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* usePayFastCheckout
|
|
3
|
+
* React hook for PayFast checkout with state management.
|
|
4
|
+
* Wraps PayFastPaymentService + PayFastCheckout utility.
|
|
5
|
+
*/
|
|
6
|
+
import { useState, useCallback, useRef } from 'react';
|
|
7
|
+
import { usePayFastPaymentService } from './usePaymentServices';
|
|
8
|
+
import { PayFastCheckout, } from '../../../utils/PayFastCheckout';
|
|
9
|
+
/**
|
|
10
|
+
* React hook for PayFast checkout with loading/error state management.
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* // Auto-redirect (simplest usage)
|
|
14
|
+
* const { checkout, loading, error, reference } = usePayFastCheckout();
|
|
15
|
+
*
|
|
16
|
+
* const handlePay = () => checkout({ amount: 100, itemName: 'Donation' }, 'donate');
|
|
17
|
+
*
|
|
18
|
+
* @example
|
|
19
|
+
* // Manual mode — show confirmation before redirect
|
|
20
|
+
* const { checkout, reference, redirect } = usePayFastCheckout({ defaultMode: 'manual' });
|
|
21
|
+
*
|
|
22
|
+
* const handlePay = async () => {
|
|
23
|
+
* const ref = await checkout({ amount: 50, itemName: 'T-Shirt' }, 'purchase');
|
|
24
|
+
* // Show confirmation dialog, then:
|
|
25
|
+
* await redirect(ref.response, { mode: 'form' });
|
|
26
|
+
* };
|
|
27
|
+
*
|
|
28
|
+
* @example
|
|
29
|
+
* // Form mode with pre-redirect storage
|
|
30
|
+
* const { checkout, loading } = usePayFastCheckout({
|
|
31
|
+
* defaultMode: 'form',
|
|
32
|
+
* onBeforeRedirect: (ref) => sessionStorage.setItem('paymentId', ref.paymentId),
|
|
33
|
+
* onSuccess: (ref) => console.log('Payment initiated:', ref.transactionID),
|
|
34
|
+
* });
|
|
35
|
+
*/
|
|
36
|
+
export function usePayFastCheckout(hookOptions = {}) {
|
|
37
|
+
const service = usePayFastPaymentService();
|
|
38
|
+
const [loading, setLoading] = useState(false);
|
|
39
|
+
const [error, setError] = useState(null);
|
|
40
|
+
const [reference, setReference] = useState(null);
|
|
41
|
+
const hookOptionsRef = useRef(hookOptions);
|
|
42
|
+
hookOptionsRef.current = hookOptions;
|
|
43
|
+
const checkout = useCallback(async (request, type = 'initiate', options = {}) => {
|
|
44
|
+
setLoading(true);
|
|
45
|
+
setError(null);
|
|
46
|
+
try {
|
|
47
|
+
const mergedOptions = {
|
|
48
|
+
mode: options.mode ?? hookOptionsRef.current.defaultMode ?? 'auto',
|
|
49
|
+
onBeforeRedirect: options.onBeforeRedirect ?? hookOptionsRef.current.onBeforeRedirect,
|
|
50
|
+
...options,
|
|
51
|
+
};
|
|
52
|
+
const ref = await PayFastCheckout.checkout(service, request, type, mergedOptions);
|
|
53
|
+
setReference(ref);
|
|
54
|
+
setLoading(false);
|
|
55
|
+
hookOptionsRef.current.onSuccess?.(ref);
|
|
56
|
+
return ref;
|
|
57
|
+
}
|
|
58
|
+
catch (err) {
|
|
59
|
+
const error = err instanceof Error ? err : new Error(String(err));
|
|
60
|
+
setError(error);
|
|
61
|
+
setLoading(false);
|
|
62
|
+
hookOptionsRef.current.onError?.(error);
|
|
63
|
+
throw error;
|
|
64
|
+
}
|
|
65
|
+
}, [service]);
|
|
66
|
+
const redirect = useCallback(async (response, options = {}) => {
|
|
67
|
+
const mergedOptions = {
|
|
68
|
+
mode: options.mode ?? hookOptionsRef.current.defaultMode ?? 'auto',
|
|
69
|
+
onBeforeRedirect: options.onBeforeRedirect ?? hookOptionsRef.current.onBeforeRedirect,
|
|
70
|
+
...options,
|
|
71
|
+
};
|
|
72
|
+
const ref = await PayFastCheckout.redirect(response, mergedOptions);
|
|
73
|
+
setReference(ref);
|
|
74
|
+
return ref;
|
|
75
|
+
}, []);
|
|
76
|
+
const getStatus = useCallback(async (transactionId) => {
|
|
77
|
+
return service.getStatusById(transactionId);
|
|
78
|
+
}, [service]);
|
|
79
|
+
const reset = useCallback(() => {
|
|
80
|
+
setLoading(false);
|
|
81
|
+
setError(null);
|
|
82
|
+
setReference(null);
|
|
83
|
+
}, []);
|
|
84
|
+
return {
|
|
85
|
+
loading,
|
|
86
|
+
error,
|
|
87
|
+
reference,
|
|
88
|
+
checkout,
|
|
89
|
+
redirect,
|
|
90
|
+
getStatus,
|
|
91
|
+
reset,
|
|
92
|
+
};
|
|
93
|
+
}
|
|
94
|
+
//# sourceMappingURL=usePayFastCheckout.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"usePayFastCheckout.js","sourceRoot":"","sources":["../../../../src/react/hooks/services/usePayFastCheckout.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* useEventProductStreaming Hook
|
|
3
|
+
* React hook for auto-paginated streaming of event products.
|
|
4
|
+
* Fetches all products for an event in batches, updating the UI progressively.
|
|
5
|
+
*/
|
|
6
|
+
import type { ShopEventProductModelView } from '../../models/vendorcatalog';
|
|
7
|
+
/**
|
|
8
|
+
* Hook return type
|
|
9
|
+
*/
|
|
10
|
+
export interface UseEventProductStreamingReturn {
|
|
11
|
+
/** Loaded products (accumulates as batches arrive) */
|
|
12
|
+
products: ShopEventProductModelView[];
|
|
13
|
+
/** Whether data is currently being fetched */
|
|
14
|
+
isLoading: boolean;
|
|
15
|
+
/** Whether all pages have been loaded */
|
|
16
|
+
isDone: boolean;
|
|
17
|
+
/** Progress percentage (0-100) */
|
|
18
|
+
progress: number;
|
|
19
|
+
/** Number of products loaded so far */
|
|
20
|
+
loadedCount: number;
|
|
21
|
+
/** Total number of products available (from server) */
|
|
22
|
+
totalCount: number;
|
|
23
|
+
/** Error if loading failed */
|
|
24
|
+
error: Error | null;
|
|
25
|
+
/** Start loading products */
|
|
26
|
+
load: () => Promise<void>;
|
|
27
|
+
/** Reset state and clear loaded products */
|
|
28
|
+
reset: () => void;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* React hook for streaming event products with auto-pagination.
|
|
32
|
+
* Loads products in batches from the server, progressively updating the UI
|
|
33
|
+
* as each batch arrives.
|
|
34
|
+
*
|
|
35
|
+
* @param eventId - The event ID to fetch products for
|
|
36
|
+
* @param batchSize - Number of products per batch (default: 10)
|
|
37
|
+
* @returns Hook return object with products, loading state, and control functions
|
|
38
|
+
*
|
|
39
|
+
* @example
|
|
40
|
+
* ```tsx
|
|
41
|
+
* function EventProductList({ eventId }: { eventId: number }) {
|
|
42
|
+
* const {
|
|
43
|
+
* products,
|
|
44
|
+
* isLoading,
|
|
45
|
+
* isDone,
|
|
46
|
+
* progress,
|
|
47
|
+
* loadedCount,
|
|
48
|
+
* totalCount,
|
|
49
|
+
* error,
|
|
50
|
+
* load,
|
|
51
|
+
* reset,
|
|
52
|
+
* } = useEventProductStreaming(eventId, 10);
|
|
53
|
+
*
|
|
54
|
+
* useEffect(() => {
|
|
55
|
+
* load();
|
|
56
|
+
* }, [eventId]);
|
|
57
|
+
*
|
|
58
|
+
* return (
|
|
59
|
+
* <div>
|
|
60
|
+
* {isLoading && <ProgressBar value={progress} />}
|
|
61
|
+
* {error && <p>Error: {error.message}</p>}
|
|
62
|
+
* <p>{loadedCount} of {totalCount} products loaded</p>
|
|
63
|
+
* <div className="product-grid">
|
|
64
|
+
* {products.map(product => (
|
|
65
|
+
* <ProductCard key={product.productID} product={product} />
|
|
66
|
+
* ))}
|
|
67
|
+
* </div>
|
|
68
|
+
* {isDone && <p>All products loaded!</p>}
|
|
69
|
+
* </div>
|
|
70
|
+
* );
|
|
71
|
+
* }
|
|
72
|
+
* ```
|
|
73
|
+
*/
|
|
74
|
+
export declare function useEventProductStreaming(eventId: number, batchSize?: number): UseEventProductStreamingReturn;
|
|
75
|
+
//# sourceMappingURL=useEventProductStreaming.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useEventProductStreaming.d.ts","sourceRoot":"","sources":["../../../src/react/hooks/useEventProductStreaming.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AAI5E;;GAEG;AACH,MAAM,WAAW,8BAA8B;IAC7C,sDAAsD;IACtD,QAAQ,EAAE,yBAAyB,EAAE,CAAC;IACtC,8CAA8C;IAC9C,SAAS,EAAE,OAAO,CAAC;IACnB,yCAAyC;IACzC,MAAM,EAAE,OAAO,CAAC;IAChB,kCAAkC;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,uCAAuC;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,uDAAuD;IACvD,UAAU,EAAE,MAAM,CAAC;IACnB,8BAA8B;IAC9B,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,6BAA6B;IAC7B,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1B,4CAA4C;IAC5C,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,MAAM,EACf,SAAS,GAAE,MAAW,GACrB,8BAA8B,CA2EhC"}
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* useEventProductStreaming Hook
|
|
3
|
+
* React hook for auto-paginated streaming of event products.
|
|
4
|
+
* Fetches all products for an event in batches, updating the UI progressively.
|
|
5
|
+
*/
|
|
6
|
+
import { useState, useCallback, useRef } from 'react';
|
|
7
|
+
import { EventProductStreamingService } from '../../services/vendorcatalog/EventProductStreamingService';
|
|
8
|
+
import { useVendorCatalogShopService } from './services/useVendorCatalogServices';
|
|
9
|
+
/**
|
|
10
|
+
* React hook for streaming event products with auto-pagination.
|
|
11
|
+
* Loads products in batches from the server, progressively updating the UI
|
|
12
|
+
* as each batch arrives.
|
|
13
|
+
*
|
|
14
|
+
* @param eventId - The event ID to fetch products for
|
|
15
|
+
* @param batchSize - Number of products per batch (default: 10)
|
|
16
|
+
* @returns Hook return object with products, loading state, and control functions
|
|
17
|
+
*
|
|
18
|
+
* @example
|
|
19
|
+
* ```tsx
|
|
20
|
+
* function EventProductList({ eventId }: { eventId: number }) {
|
|
21
|
+
* const {
|
|
22
|
+
* products,
|
|
23
|
+
* isLoading,
|
|
24
|
+
* isDone,
|
|
25
|
+
* progress,
|
|
26
|
+
* loadedCount,
|
|
27
|
+
* totalCount,
|
|
28
|
+
* error,
|
|
29
|
+
* load,
|
|
30
|
+
* reset,
|
|
31
|
+
* } = useEventProductStreaming(eventId, 10);
|
|
32
|
+
*
|
|
33
|
+
* useEffect(() => {
|
|
34
|
+
* load();
|
|
35
|
+
* }, [eventId]);
|
|
36
|
+
*
|
|
37
|
+
* return (
|
|
38
|
+
* <div>
|
|
39
|
+
* {isLoading && <ProgressBar value={progress} />}
|
|
40
|
+
* {error && <p>Error: {error.message}</p>}
|
|
41
|
+
* <p>{loadedCount} of {totalCount} products loaded</p>
|
|
42
|
+
* <div className="product-grid">
|
|
43
|
+
* {products.map(product => (
|
|
44
|
+
* <ProductCard key={product.productID} product={product} />
|
|
45
|
+
* ))}
|
|
46
|
+
* </div>
|
|
47
|
+
* {isDone && <p>All products loaded!</p>}
|
|
48
|
+
* </div>
|
|
49
|
+
* );
|
|
50
|
+
* }
|
|
51
|
+
* ```
|
|
52
|
+
*/
|
|
53
|
+
export function useEventProductStreaming(eventId, batchSize = 10) {
|
|
54
|
+
const shopService = useVendorCatalogShopService();
|
|
55
|
+
const [products, setProducts] = useState([]);
|
|
56
|
+
const [isLoading, setIsLoading] = useState(false);
|
|
57
|
+
const [isDone, setIsDone] = useState(false);
|
|
58
|
+
const [progress, setProgress] = useState(0);
|
|
59
|
+
const [loadedCount, setLoadedCount] = useState(0);
|
|
60
|
+
const [totalCount, setTotalCount] = useState(0);
|
|
61
|
+
const [error, setError] = useState(null);
|
|
62
|
+
const abortRef = useRef(false);
|
|
63
|
+
const load = useCallback(async () => {
|
|
64
|
+
// Reset state before loading
|
|
65
|
+
setIsLoading(true);
|
|
66
|
+
setIsDone(false);
|
|
67
|
+
setProgress(0);
|
|
68
|
+
setProducts([]);
|
|
69
|
+
setLoadedCount(0);
|
|
70
|
+
setTotalCount(0);
|
|
71
|
+
setError(null);
|
|
72
|
+
abortRef.current = false;
|
|
73
|
+
try {
|
|
74
|
+
const streamingService = new EventProductStreamingService(shopService);
|
|
75
|
+
let accumulated = [];
|
|
76
|
+
for await (const chunk of streamingService.streamEventProducts(eventId, batchSize)) {
|
|
77
|
+
if (abortRef.current)
|
|
78
|
+
break;
|
|
79
|
+
accumulated = [...accumulated, ...chunk.items];
|
|
80
|
+
const currentTotal = chunk.totalCount;
|
|
81
|
+
setProducts(accumulated);
|
|
82
|
+
setLoadedCount(accumulated.length);
|
|
83
|
+
setTotalCount(currentTotal);
|
|
84
|
+
setProgress(currentTotal > 0
|
|
85
|
+
? Math.min(99, Math.round((accumulated.length / currentTotal) * 100))
|
|
86
|
+
: 0);
|
|
87
|
+
}
|
|
88
|
+
if (!abortRef.current) {
|
|
89
|
+
setProgress(100);
|
|
90
|
+
setIsDone(true);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
catch (err) {
|
|
94
|
+
const loadError = err instanceof Error ? err : new Error(String(err));
|
|
95
|
+
setError(loadError);
|
|
96
|
+
}
|
|
97
|
+
finally {
|
|
98
|
+
setIsLoading(false);
|
|
99
|
+
}
|
|
100
|
+
}, [shopService, eventId, batchSize]);
|
|
101
|
+
const reset = useCallback(() => {
|
|
102
|
+
abortRef.current = true;
|
|
103
|
+
setProducts([]);
|
|
104
|
+
setIsLoading(false);
|
|
105
|
+
setIsDone(false);
|
|
106
|
+
setProgress(0);
|
|
107
|
+
setLoadedCount(0);
|
|
108
|
+
setTotalCount(0);
|
|
109
|
+
setError(null);
|
|
110
|
+
}, []);
|
|
111
|
+
return {
|
|
112
|
+
products,
|
|
113
|
+
isLoading,
|
|
114
|
+
isDone,
|
|
115
|
+
progress,
|
|
116
|
+
loadedCount,
|
|
117
|
+
totalCount,
|
|
118
|
+
error,
|
|
119
|
+
load,
|
|
120
|
+
reset,
|
|
121
|
+
};
|
|
122
|
+
}
|
|
123
|
+
//# sourceMappingURL=useEventProductStreaming.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useEventProductStreaming.js","sourceRoot":"","sources":["../../../src/react/hooks/useEventProductStreaming.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* EventProductStreamingService
|
|
3
|
+
* Service for auto-paginated streaming of event products.
|
|
4
|
+
* Uses AsyncGenerator pattern for progressive data loading from the server.
|
|
5
|
+
*/
|
|
6
|
+
import { VendorCatalogShopService } from './VendorCatalogShopService';
|
|
7
|
+
import type { ShopEventProductModelView } from '../../models/vendorcatalog';
|
|
8
|
+
/**
|
|
9
|
+
* Chunk yielded by the streaming generator
|
|
10
|
+
*/
|
|
11
|
+
export interface EventProductChunk {
|
|
12
|
+
/** Products in this batch */
|
|
13
|
+
items: ShopEventProductModelView[];
|
|
14
|
+
/** Total count of products across all pages (from server) */
|
|
15
|
+
totalCount: number;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* EventProductStreamingService
|
|
19
|
+
* Streams event products from the server in batches using auto-pagination.
|
|
20
|
+
* Each yield returns a batch of products plus the total count.
|
|
21
|
+
*
|
|
22
|
+
* @example
|
|
23
|
+
* ```typescript
|
|
24
|
+
* const service = new EventProductStreamingService(shopService);
|
|
25
|
+
* for await (const chunk of service.streamEventProducts(eventId, 10)) {
|
|
26
|
+
* console.log(`Received ${chunk.items.length} products, total: ${chunk.totalCount}`);
|
|
27
|
+
* }
|
|
28
|
+
* ```
|
|
29
|
+
*/
|
|
30
|
+
export declare class EventProductStreamingService {
|
|
31
|
+
private shopService;
|
|
32
|
+
constructor(shopService: VendorCatalogShopService);
|
|
33
|
+
/**
|
|
34
|
+
* Stream event products with server-side pagination
|
|
35
|
+
* @param eventId - The event ID to fetch products for
|
|
36
|
+
* @param batchSize - Number of products per batch (default: 10)
|
|
37
|
+
* @yields EventProductChunk with items and totalCount
|
|
38
|
+
*/
|
|
39
|
+
streamEventProducts(eventId: number, batchSize?: number): AsyncGenerator<EventProductChunk, void, undefined>;
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=EventProductStreamingService.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EventProductStreamingService.d.ts","sourceRoot":"","sources":["../../../src/services/vendorcatalog/EventProductStreamingService.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AAE5E;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,6BAA6B;IAC7B,KAAK,EAAE,yBAAyB,EAAE,CAAC;IACnC,6DAA6D;IAC7D,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;;GAYG;AACH,qBAAa,4BAA4B;IACvC,OAAO,CAAC,WAAW,CAA2B;gBAElC,WAAW,EAAE,wBAAwB;IAIjD;;;;;OAKG;IACI,mBAAmB,CACxB,OAAO,EAAE,MAAM,EACf,SAAS,GAAE,MAAW,GACrB,cAAc,CAAC,iBAAiB,EAAE,IAAI,EAAE,SAAS,CAAC;CAoBtD"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* EventProductStreamingService
|
|
3
|
+
* Service for auto-paginated streaming of event products.
|
|
4
|
+
* Uses AsyncGenerator pattern for progressive data loading from the server.
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* EventProductStreamingService
|
|
8
|
+
* Streams event products from the server in batches using auto-pagination.
|
|
9
|
+
* Each yield returns a batch of products plus the total count.
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```typescript
|
|
13
|
+
* const service = new EventProductStreamingService(shopService);
|
|
14
|
+
* for await (const chunk of service.streamEventProducts(eventId, 10)) {
|
|
15
|
+
* console.log(`Received ${chunk.items.length} products, total: ${chunk.totalCount}`);
|
|
16
|
+
* }
|
|
17
|
+
* ```
|
|
18
|
+
*/
|
|
19
|
+
export class EventProductStreamingService {
|
|
20
|
+
constructor(shopService) {
|
|
21
|
+
this.shopService = shopService;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Stream event products with server-side pagination
|
|
25
|
+
* @param eventId - The event ID to fetch products for
|
|
26
|
+
* @param batchSize - Number of products per batch (default: 10)
|
|
27
|
+
* @yields EventProductChunk with items and totalCount
|
|
28
|
+
*/
|
|
29
|
+
async *streamEventProducts(eventId, batchSize = 10) {
|
|
30
|
+
let skip = 0;
|
|
31
|
+
let hasMore = true;
|
|
32
|
+
while (hasMore) {
|
|
33
|
+
const response = await this.shopService.getEventProductsRaw(eventId, skip, batchSize);
|
|
34
|
+
const items = response.data ?? [];
|
|
35
|
+
const totalCount = response.totalCount ?? 0;
|
|
36
|
+
hasMore = response.hasMore ?? false;
|
|
37
|
+
if (items.length > 0) {
|
|
38
|
+
yield { items, totalCount };
|
|
39
|
+
}
|
|
40
|
+
skip += batchSize;
|
|
41
|
+
// Safety: stop if server returned no items
|
|
42
|
+
if (items.length === 0)
|
|
43
|
+
break;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=EventProductStreamingService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EventProductStreamingService.js","sourceRoot":"","sources":["../../../src/services/vendorcatalog/EventProductStreamingService.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAeH;;;;;;;;;;;;GAYG;AACH,MAAM,OAAO,4BAA4B;IAGvC,YAAY,WAAqC;QAC/C,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,CAAC,mBAAmB,CACxB,OAAe,EACf,YAAoB,EAAE;QAEtB,IAAI,IAAI,GAAG,CAAC,CAAC;QACb,IAAI,OAAO,GAAG,IAAI,CAAC;QAEnB,OAAO,OAAO,EAAE,CAAC;YACf,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;YACtF,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAC;YAClC,MAAM,UAAU,GAAG,QAAQ,CAAC,UAAU,IAAI,CAAC,CAAC;YAC5C,OAAO,GAAG,QAAQ,CAAC,OAAO,IAAI,KAAK,CAAC;YAEpC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACrB,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;YAC9B,CAAC;YAED,IAAI,IAAI,SAAS,CAAC;YAElB,2CAA2C;YAC3C,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;gBAAE,MAAM;QAChC,CAAC;IACH,CAAC;CACF"}
|
|
@@ -63,6 +63,16 @@ export declare class VendorCatalogShopService extends BaseService {
|
|
|
63
63
|
* Get event catalog (raw response)
|
|
64
64
|
*/
|
|
65
65
|
getEventCatalogRaw(eventId: number, page?: number, pageSize?: number): Promise<ResponseData<ShopEventCatalogModelView>>;
|
|
66
|
+
/**
|
|
67
|
+
* Get paginated products for an event from all confirmed vendors
|
|
68
|
+
* GET /api/shop/events/{eventId}/products?skip=0&take=10
|
|
69
|
+
*/
|
|
70
|
+
getEventProducts(eventId: number, skip?: number, take?: number): Promise<ShopEventProductModelView[]>;
|
|
71
|
+
/**
|
|
72
|
+
* Get event products (raw response with pagination metadata)
|
|
73
|
+
* Response includes totalCount, skip, take, hasMore on the envelope
|
|
74
|
+
*/
|
|
75
|
+
getEventProductsRaw(eventId: number, skip?: number, take?: number): Promise<ResponseData<ShopEventProductModelView[]>>;
|
|
66
76
|
/**
|
|
67
77
|
* Get featured active products
|
|
68
78
|
* GET /api/shop/products/featured
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VendorCatalogShopService.d.ts","sourceRoot":"","sources":["../../../src/services/vendorcatalog/VendorCatalogShopService.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,KAAK,EAAE,yBAAyB,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AAEvG;;;;GAIG;AACH,qBAAa,wBAAyB,SAAQ,WAAW;IACvD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAqB;IACjE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAc;gBAEnC,IAAI,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,aAAa;IAUpD;;;OAGG;IACG,WAAW,IAAI,OAAO,CAAC,yBAAyB,EAAE,CAAC;IAKzD;;OAEG;IACH,cAAc,IAAI,OAAO,CAAC,YAAY,CAAC,yBAAyB,EAAE,CAAC,CAAC;IAMpE;;;OAGG;IACG,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,yBAAyB,CAAC;IAQpE;;OAEG;IACH,iBAAiB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,yBAAyB,CAAC,CAAC;IAM/E;;;OAGG;IACG,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,yBAAyB,EAAE,CAAC;IAKjF;;OAEG;IACH,sBAAsB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,yBAAyB,EAAE,CAAC,CAAC;IAM5F;;;OAGG;IACG,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,yBAAyB,EAAE,CAAC;IAK7E;;OAEG;IACH,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,yBAAyB,EAAE,CAAC,CAAC;IAQxF;;;OAGG;IACG,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,SAAI,EAAE,QAAQ,SAAK,GAAG,OAAO,CAAC,yBAAyB,CAAC;IAQnG;;OAEG;IACH,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,SAAI,EAAE,QAAQ,SAAK,GAAG,OAAO,CAAC,YAAY,CAAC,yBAAyB,CAAC,CAAC;IAQ9G;;;OAGG;IACG,mBAAmB,IAAI,OAAO,CAAC,yBAAyB,EAAE,CAAC;IAKjE;;OAEG;IACH,sBAAsB,IAAI,OAAO,CAAC,YAAY,CAAC,yBAAyB,EAAE,CAAC,CAAC;CAK7E"}
|
|
1
|
+
{"version":3,"file":"VendorCatalogShopService.d.ts","sourceRoot":"","sources":["../../../src/services/vendorcatalog/VendorCatalogShopService.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,KAAK,EAAE,yBAAyB,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AAEvG;;;;GAIG;AACH,qBAAa,wBAAyB,SAAQ,WAAW;IACvD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAqB;IACjE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAc;gBAEnC,IAAI,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,aAAa;IAUpD;;;OAGG;IACG,WAAW,IAAI,OAAO,CAAC,yBAAyB,EAAE,CAAC;IAKzD;;OAEG;IACH,cAAc,IAAI,OAAO,CAAC,YAAY,CAAC,yBAAyB,EAAE,CAAC,CAAC;IAMpE;;;OAGG;IACG,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,yBAAyB,CAAC;IAQpE;;OAEG;IACH,iBAAiB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,yBAAyB,CAAC,CAAC;IAM/E;;;OAGG;IACG,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,yBAAyB,EAAE,CAAC;IAKjF;;OAEG;IACH,sBAAsB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,yBAAyB,EAAE,CAAC,CAAC;IAM5F;;;OAGG;IACG,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,yBAAyB,EAAE,CAAC;IAK7E;;OAEG;IACH,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,yBAAyB,EAAE,CAAC,CAAC;IAQxF;;;OAGG;IACG,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,SAAI,EAAE,QAAQ,SAAK,GAAG,OAAO,CAAC,yBAAyB,CAAC;IAQnG;;OAEG;IACH,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,SAAI,EAAE,QAAQ,SAAK,GAAG,OAAO,CAAC,YAAY,CAAC,yBAAyB,CAAC,CAAC;IAQ9G;;;OAGG;IACG,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,SAAI,EAAE,IAAI,SAAK,GAAG,OAAO,CAAC,yBAAyB,EAAE,CAAC;IAKlG;;;OAGG;IACH,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,SAAI,EAAE,IAAI,SAAK,GAAG,OAAO,CAAC,YAAY,CAAC,yBAAyB,EAAE,CAAC,CAAC;IAQ7G;;;OAGG;IACG,mBAAmB,IAAI,OAAO,CAAC,yBAAyB,EAAE,CAAC;IAKjE;;OAEG;IACH,sBAAsB,IAAI,OAAO,CAAC,YAAY,CAAC,yBAAyB,EAAE,CAAC,CAAC;CAK7E"}
|
|
@@ -106,6 +106,24 @@ export class VendorCatalogShopService extends BaseService {
|
|
|
106
106
|
const url = this.buildUrlWithParams(endpoint, { page, pageSize });
|
|
107
107
|
return this.http.get(url);
|
|
108
108
|
}
|
|
109
|
+
// ==================== EVENT PRODUCTS ENDPOINT ====================
|
|
110
|
+
/**
|
|
111
|
+
* Get paginated products for an event from all confirmed vendors
|
|
112
|
+
* GET /api/shop/events/{eventId}/products?skip=0&take=10
|
|
113
|
+
*/
|
|
114
|
+
async getEventProducts(eventId, skip = 0, take = 10) {
|
|
115
|
+
const response = await this.getEventProductsRaw(eventId, skip, take);
|
|
116
|
+
return response.data ?? [];
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* Get event products (raw response with pagination metadata)
|
|
120
|
+
* Response includes totalCount, skip, take, hasMore on the envelope
|
|
121
|
+
*/
|
|
122
|
+
getEventProductsRaw(eventId, skip = 0, take = 10) {
|
|
123
|
+
const endpoint = this.getEndpoint('event-products', `events/${eventId}/products`);
|
|
124
|
+
const url = this.buildUrlWithParams(endpoint, { skip, take });
|
|
125
|
+
return this.http.get(url);
|
|
126
|
+
}
|
|
109
127
|
// ==================== FEATURED ENDPOINTS ====================
|
|
110
128
|
/**
|
|
111
129
|
* Get featured active products
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VendorCatalogShopService.js","sourceRoot":"","sources":["../../../src/services/vendorcatalog/VendorCatalogShopService.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"VendorCatalogShopService.js","sourceRoot":"","sources":["../../../src/services/vendorcatalog/VendorCatalogShopService.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,6 +19,7 @@ export { VendorCatalogShopService } from './VendorCatalogShopService';
|
|
|
19
19
|
export { VendorProductAddOnService } from './VendorProductAddOnService';
|
|
20
20
|
export { VendorProductAddOnCategoryService } from './VendorProductAddOnCategoryService';
|
|
21
21
|
export { VendorProductVariantCategoryService } from './VendorProductVariantCategoryService';
|
|
22
|
+
export { EventProductStreamingService } from './EventProductStreamingService';
|
|
22
23
|
import { VendorProductService } from './VendorProductService';
|
|
23
24
|
import { VendorProductTypeService } from './VendorProductTypeService';
|
|
24
25
|
import { VendorProductStatusService } from './VendorProductStatusService';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/vendorcatalog/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAG9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAClF,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,iCAAiC,EAAE,MAAM,qCAAqC,CAAC;AACxF,OAAO,EAAE,mCAAmC,EAAE,MAAM,uCAAuC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/vendorcatalog/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,6 +18,7 @@ export { VendorCatalogShopService } from './VendorCatalogShopService';
|
|
|
18
18
|
export { VendorProductAddOnService } from './VendorProductAddOnService';
|
|
19
19
|
export { VendorProductAddOnCategoryService } from './VendorProductAddOnCategoryService';
|
|
20
20
|
export { VendorProductVariantCategoryService } from './VendorProductVariantCategoryService';
|
|
21
|
+
export { EventProductStreamingService } from './EventProductStreamingService';
|
|
21
22
|
// Import for factory function
|
|
22
23
|
import { VendorProductService } from './VendorProductService';
|
|
23
24
|
import { VendorProductTypeService } from './VendorProductTypeService';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/vendorcatalog/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,6BAA6B;AAC7B,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAClF,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,iCAAiC,EAAE,MAAM,qCAAqC,CAAC;AACxF,OAAO,EAAE,mCAAmC,EAAE,MAAM,uCAAuC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/vendorcatalog/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* PayFastCheckout
|
|
3
|
+
* Framework-agnostic utility for handling PayFast payment redirects.
|
|
4
|
+
* Supports three redirect strategies: auto, form, and manual.
|
|
5
|
+
*
|
|
6
|
+
* Works in any browser environment (React, Vue, Angular, vanilla JS).
|
|
7
|
+
* For React-specific usage with state management, see usePayFastCheckout hook.
|
|
8
|
+
*/
|
|
9
|
+
import { PayFastPaymentResponse, PayFastPaymentReference, PayFastRedirectMode, PayFastPaymentType, PayFastPaymentRequest } from '../models/payments';
|
|
10
|
+
import { PayFastPaymentService } from '../services/payments/PayFastPaymentService';
|
|
11
|
+
/**
|
|
12
|
+
* Options for the checkout method.
|
|
13
|
+
*/
|
|
14
|
+
export interface PayFastCheckoutOptions {
|
|
15
|
+
/**
|
|
16
|
+
* Redirect strategy.
|
|
17
|
+
* - `'auto'` — Injects the server-generated redirectHtml into the page (immediate redirect).
|
|
18
|
+
* - `'form'` — Builds a hidden form from payFastFormData and submits it (allows pre-redirect logic).
|
|
19
|
+
* - `'manual'` — No redirect; returns the reference for the caller to handle.
|
|
20
|
+
*
|
|
21
|
+
* @default 'auto'
|
|
22
|
+
*/
|
|
23
|
+
mode?: PayFastRedirectMode;
|
|
24
|
+
/**
|
|
25
|
+
* DOM element to inject the auto-redirect HTML into.
|
|
26
|
+
* Only used when mode is `'auto'`.
|
|
27
|
+
* Defaults to `document.body`.
|
|
28
|
+
*/
|
|
29
|
+
container?: HTMLElement;
|
|
30
|
+
/**
|
|
31
|
+
* Target attribute for the hidden form submission.
|
|
32
|
+
* Only used when mode is `'form'`.
|
|
33
|
+
* Use `'_blank'` to open PayFast in a new tab.
|
|
34
|
+
* @default '_self'
|
|
35
|
+
*/
|
|
36
|
+
formTarget?: string;
|
|
37
|
+
/**
|
|
38
|
+
* Callback invoked with the PayFastPaymentReference before the redirect happens.
|
|
39
|
+
* Useful for persisting the transactionID/paymentId to local storage or state.
|
|
40
|
+
* Only called for `'auto'` and `'form'` modes (manual mode returns the reference directly).
|
|
41
|
+
*/
|
|
42
|
+
onBeforeRedirect?: (reference: PayFastPaymentReference) => void | Promise<void>;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Extract a PayFastPaymentReference from a PayFastPaymentResponse.
|
|
46
|
+
*/
|
|
47
|
+
export declare function toPayFastReference(response: PayFastPaymentResponse): PayFastPaymentReference;
|
|
48
|
+
/**
|
|
49
|
+
* PayFastCheckout — static utility class for PayFast payment redirects.
|
|
50
|
+
*
|
|
51
|
+
* @example
|
|
52
|
+
* // Auto-redirect (simplest)
|
|
53
|
+
* const ref = await PayFastCheckout.checkout(payFastService, request, 'give');
|
|
54
|
+
*
|
|
55
|
+
* // Form redirect with pre-redirect callback
|
|
56
|
+
* const ref = await PayFastCheckout.checkout(payFastService, request, 'purchase', {
|
|
57
|
+
* mode: 'form',
|
|
58
|
+
* onBeforeRedirect: (ref) => localStorage.setItem('txn', ref.transactionID),
|
|
59
|
+
* });
|
|
60
|
+
*
|
|
61
|
+
* // Manual — no redirect, full control
|
|
62
|
+
* const ref = await PayFastCheckout.checkout(payFastService, request, 'donate', { mode: 'manual' });
|
|
63
|
+
* // ref.response.payFastProcessUrl, ref.response.payFastFormData available
|
|
64
|
+
*
|
|
65
|
+
* // Or redirect an existing response
|
|
66
|
+
* PayFastCheckout.redirect(existingResponse, { mode: 'form' });
|
|
67
|
+
*/
|
|
68
|
+
export declare class PayFastCheckout {
|
|
69
|
+
/**
|
|
70
|
+
* Full checkout flow: call the payment service, then redirect based on mode.
|
|
71
|
+
*
|
|
72
|
+
* @param service - PayFastPaymentService instance
|
|
73
|
+
* @param request - Payment request data
|
|
74
|
+
* @param type - Payment type shorthand (maps to the service method)
|
|
75
|
+
* @param options - Checkout options (mode, callbacks, etc.)
|
|
76
|
+
* @returns The payment reference (always returned, even for auto/form modes before redirect)
|
|
77
|
+
*/
|
|
78
|
+
static checkout(service: PayFastPaymentService, request: PayFastPaymentRequest, type?: PayFastPaymentType, options?: PayFastCheckoutOptions): Promise<PayFastPaymentReference>;
|
|
79
|
+
/**
|
|
80
|
+
* Redirect the user to PayFast using an existing response.
|
|
81
|
+
* Use this when you already have a PayFastPaymentResponse and just need to handle the redirect.
|
|
82
|
+
*/
|
|
83
|
+
static redirect(response: PayFastPaymentResponse, options?: PayFastCheckoutOptions): Promise<PayFastPaymentReference>;
|
|
84
|
+
/**
|
|
85
|
+
* Auto-redirect by injecting the server-generated HTML form into the DOM.
|
|
86
|
+
* The HTML contains a self-submitting form that redirects immediately.
|
|
87
|
+
*/
|
|
88
|
+
static autoRedirect(response: PayFastPaymentResponse, container?: HTMLElement): void;
|
|
89
|
+
/**
|
|
90
|
+
* Form-redirect by programmatically creating a hidden form and submitting it.
|
|
91
|
+
* Gives the caller a chance to run pre-redirect logic (via onBeforeRedirect).
|
|
92
|
+
*/
|
|
93
|
+
static formRedirect(response: PayFastPaymentResponse, target?: string): void;
|
|
94
|
+
/**
|
|
95
|
+
* Call the appropriate PayFastPaymentService method based on payment type.
|
|
96
|
+
*/
|
|
97
|
+
private static callService;
|
|
98
|
+
}
|
|
99
|
+
//# sourceMappingURL=PayFastCheckout.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PayFastCheckout.d.ts","sourceRoot":"","sources":["../../src/utils/PayFastCheckout.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,mBAAmB,EACnB,kBAAkB,EAClB,qBAAqB,EACtB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AAEnF;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC;;;;;;;OAOG;IACH,IAAI,CAAC,EAAE,mBAAmB,CAAC;IAE3B;;;;OAIG;IACH,SAAS,CAAC,EAAE,WAAW,CAAC;IAExB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,CAAC,SAAS,EAAE,uBAAuB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACjF;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,sBAAsB,GAAG,uBAAuB,CAO5F;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,eAAe;IAC1B;;;;;;;;OAQG;WACU,QAAQ,CACnB,OAAO,EAAE,qBAAqB,EAC9B,OAAO,EAAE,qBAAqB,EAC9B,IAAI,GAAE,kBAA+B,EACrC,OAAO,GAAE,sBAA2B,GACnC,OAAO,CAAC,uBAAuB,CAAC;IAOnC;;;OAGG;WACU,QAAQ,CACnB,QAAQ,EAAE,sBAAsB,EAChC,OAAO,GAAE,sBAA2B,GACnC,OAAO,CAAC,uBAAuB,CAAC;IAuBnC;;;OAGG;IACH,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE,sBAAsB,EAAE,SAAS,CAAC,EAAE,WAAW,GAAG,IAAI;IAwBpF;;;OAGG;IACH,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE,sBAAsB,EAAE,MAAM,GAAE,MAAgB,GAAG,IAAI;IA4BrF;;OAEG;mBACkB,WAAW;CAsBjC"}
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* PayFastCheckout
|
|
3
|
+
* Framework-agnostic utility for handling PayFast payment redirects.
|
|
4
|
+
* Supports three redirect strategies: auto, form, and manual.
|
|
5
|
+
*
|
|
6
|
+
* Works in any browser environment (React, Vue, Angular, vanilla JS).
|
|
7
|
+
* For React-specific usage with state management, see usePayFastCheckout hook.
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* Extract a PayFastPaymentReference from a PayFastPaymentResponse.
|
|
11
|
+
*/
|
|
12
|
+
export function toPayFastReference(response) {
|
|
13
|
+
return {
|
|
14
|
+
transactionID: response.transactionID,
|
|
15
|
+
paymentId: response.paymentId,
|
|
16
|
+
isSandbox: response.isSandbox,
|
|
17
|
+
response,
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* PayFastCheckout — static utility class for PayFast payment redirects.
|
|
22
|
+
*
|
|
23
|
+
* @example
|
|
24
|
+
* // Auto-redirect (simplest)
|
|
25
|
+
* const ref = await PayFastCheckout.checkout(payFastService, request, 'give');
|
|
26
|
+
*
|
|
27
|
+
* // Form redirect with pre-redirect callback
|
|
28
|
+
* const ref = await PayFastCheckout.checkout(payFastService, request, 'purchase', {
|
|
29
|
+
* mode: 'form',
|
|
30
|
+
* onBeforeRedirect: (ref) => localStorage.setItem('txn', ref.transactionID),
|
|
31
|
+
* });
|
|
32
|
+
*
|
|
33
|
+
* // Manual — no redirect, full control
|
|
34
|
+
* const ref = await PayFastCheckout.checkout(payFastService, request, 'donate', { mode: 'manual' });
|
|
35
|
+
* // ref.response.payFastProcessUrl, ref.response.payFastFormData available
|
|
36
|
+
*
|
|
37
|
+
* // Or redirect an existing response
|
|
38
|
+
* PayFastCheckout.redirect(existingResponse, { mode: 'form' });
|
|
39
|
+
*/
|
|
40
|
+
export class PayFastCheckout {
|
|
41
|
+
/**
|
|
42
|
+
* Full checkout flow: call the payment service, then redirect based on mode.
|
|
43
|
+
*
|
|
44
|
+
* @param service - PayFastPaymentService instance
|
|
45
|
+
* @param request - Payment request data
|
|
46
|
+
* @param type - Payment type shorthand (maps to the service method)
|
|
47
|
+
* @param options - Checkout options (mode, callbacks, etc.)
|
|
48
|
+
* @returns The payment reference (always returned, even for auto/form modes before redirect)
|
|
49
|
+
*/
|
|
50
|
+
static async checkout(service, request, type = 'initiate', options = {}) {
|
|
51
|
+
const response = await PayFastCheckout.callService(service, request, type);
|
|
52
|
+
const reference = toPayFastReference(response);
|
|
53
|
+
await PayFastCheckout.redirect(response, options);
|
|
54
|
+
return reference;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Redirect the user to PayFast using an existing response.
|
|
58
|
+
* Use this when you already have a PayFastPaymentResponse and just need to handle the redirect.
|
|
59
|
+
*/
|
|
60
|
+
static async redirect(response, options = {}) {
|
|
61
|
+
const { mode = 'auto' } = options;
|
|
62
|
+
const reference = toPayFastReference(response);
|
|
63
|
+
if (options.onBeforeRedirect && mode !== 'manual') {
|
|
64
|
+
await options.onBeforeRedirect(reference);
|
|
65
|
+
}
|
|
66
|
+
switch (mode) {
|
|
67
|
+
case 'auto':
|
|
68
|
+
PayFastCheckout.autoRedirect(response, options.container);
|
|
69
|
+
break;
|
|
70
|
+
case 'form':
|
|
71
|
+
PayFastCheckout.formRedirect(response, options.formTarget);
|
|
72
|
+
break;
|
|
73
|
+
case 'manual':
|
|
74
|
+
// No redirect — caller handles it
|
|
75
|
+
break;
|
|
76
|
+
}
|
|
77
|
+
return reference;
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Auto-redirect by injecting the server-generated HTML form into the DOM.
|
|
81
|
+
* The HTML contains a self-submitting form that redirects immediately.
|
|
82
|
+
*/
|
|
83
|
+
static autoRedirect(response, container) {
|
|
84
|
+
if (typeof document === 'undefined') {
|
|
85
|
+
throw new Error('PayFastCheckout.autoRedirect requires a browser environment (document is not defined).');
|
|
86
|
+
}
|
|
87
|
+
const target = container ?? document.body;
|
|
88
|
+
const div = document.createElement('div');
|
|
89
|
+
div.innerHTML = response.redirectHtml;
|
|
90
|
+
target.appendChild(div);
|
|
91
|
+
// The redirectHtml contains a self-submitting form with a <script> tag.
|
|
92
|
+
// Re-execute any scripts inside the injected HTML since innerHTML doesn't run scripts.
|
|
93
|
+
const scripts = div.querySelectorAll('script');
|
|
94
|
+
scripts.forEach((oldScript) => {
|
|
95
|
+
const newScript = document.createElement('script');
|
|
96
|
+
if (oldScript.src) {
|
|
97
|
+
newScript.src = oldScript.src;
|
|
98
|
+
}
|
|
99
|
+
else {
|
|
100
|
+
newScript.textContent = oldScript.textContent;
|
|
101
|
+
}
|
|
102
|
+
oldScript.parentNode?.replaceChild(newScript, oldScript);
|
|
103
|
+
});
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* Form-redirect by programmatically creating a hidden form and submitting it.
|
|
107
|
+
* Gives the caller a chance to run pre-redirect logic (via onBeforeRedirect).
|
|
108
|
+
*/
|
|
109
|
+
static formRedirect(response, target = '_self') {
|
|
110
|
+
if (typeof document === 'undefined') {
|
|
111
|
+
throw new Error('PayFastCheckout.formRedirect requires a browser environment (document is not defined).');
|
|
112
|
+
}
|
|
113
|
+
const form = document.createElement('form');
|
|
114
|
+
form.method = 'POST';
|
|
115
|
+
form.action = response.payFastProcessUrl;
|
|
116
|
+
form.target = target;
|
|
117
|
+
form.style.display = 'none';
|
|
118
|
+
for (const [key, value] of Object.entries(response.payFastFormData)) {
|
|
119
|
+
const input = document.createElement('input');
|
|
120
|
+
input.type = 'hidden';
|
|
121
|
+
input.name = key;
|
|
122
|
+
input.value = value;
|
|
123
|
+
form.appendChild(input);
|
|
124
|
+
}
|
|
125
|
+
document.body.appendChild(form);
|
|
126
|
+
form.submit();
|
|
127
|
+
// Clean up the form after submission
|
|
128
|
+
setTimeout(() => {
|
|
129
|
+
document.body.removeChild(form);
|
|
130
|
+
}, 100);
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Call the appropriate PayFastPaymentService method based on payment type.
|
|
134
|
+
*/
|
|
135
|
+
static async callService(service, request, type) {
|
|
136
|
+
switch (type) {
|
|
137
|
+
case 'initiate':
|
|
138
|
+
return service.initiate(request);
|
|
139
|
+
case 'give':
|
|
140
|
+
return service.give(request);
|
|
141
|
+
case 'purchase':
|
|
142
|
+
return service.purchase(request);
|
|
143
|
+
case 'donate':
|
|
144
|
+
return service.donate(request);
|
|
145
|
+
case 'service':
|
|
146
|
+
return service.service(request);
|
|
147
|
+
case 'vendor':
|
|
148
|
+
return service.vendor(request);
|
|
149
|
+
default:
|
|
150
|
+
throw new Error(`Unknown payment type: ${type}`);
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
//# sourceMappingURL=PayFastCheckout.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PayFastCheckout.js","sourceRoot":"","sources":["../../src/utils/PayFastCheckout.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,cAAc,SAAS,CAAC;AAGxB,cAAc,UAAU,CAAC;AAGzB,cAAc,SAAS,CAAC;AAGxB,cAAc,UAAU,CAAC;AAGzB,cAAc,WAAW,CAAC;AAG1B,cAAc,SAAS,CAAC;AAGxB,cAAc,YAAY,CAAC;AAG3B,cAAc,UAAU,CAAC;AAGzB,cAAc,UAAU,CAAC;AAGzB,cAAc,SAAS,CAAC;AAGxB,cAAc,UAAU,CAAC;AAGzB,cAAc,cAAc,CAAC;AAG7B,cAAc,OAAO,CAAC;AAGtB,cAAc,SAAS,CAAC;AAGxB,cAAc,UAAU,CAAC;AAGzB,cAAc,OAAO,CAAC;AAGtB,cAAc,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,cAAc,SAAS,CAAC;AAGxB,cAAc,UAAU,CAAC;AAGzB,cAAc,SAAS,CAAC;AAGxB,cAAc,UAAU,CAAC;AAGzB,cAAc,WAAW,CAAC;AAG1B,cAAc,SAAS,CAAC;AAGxB,cAAc,YAAY,CAAC;AAG3B,cAAc,UAAU,CAAC;AAGzB,cAAc,UAAU,CAAC;AAGzB,cAAc,SAAS,CAAC;AAGxB,cAAc,UAAU,CAAC;AAGzB,cAAc,cAAc,CAAC;AAG7B,cAAc,OAAO,CAAC;AAGtB,cAAc,SAAS,CAAC;AAGxB,cAAc,UAAU,CAAC;AAGzB,cAAc,OAAO,CAAC;AAGtB,cAAc,SAAS,CAAC;AAGxB,cAAc,mBAAmB,CAAC"}
|
package/dist/utils/index.js
CHANGED
package/dist/utils/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,kBAAkB;AAClB,cAAc,SAAS,CAAC;AAExB,mBAAmB;AACnB,cAAc,UAAU,CAAC;AAEzB,0BAA0B;AAC1B,cAAc,SAAS,CAAC;AAExB,wBAAwB;AACxB,cAAc,UAAU,CAAC;AAEzB,wCAAwC;AACxC,cAAc,WAAW,CAAC;AAE1B,kBAAkB;AAClB,cAAc,SAAS,CAAC;AAExB,sBAAsB;AACtB,cAAc,YAAY,CAAC;AAE3B,mBAAmB;AACnB,cAAc,UAAU,CAAC;AAEzB,mBAAmB;AACnB,cAAc,UAAU,CAAC;AAEzB,kBAAkB;AAClB,cAAc,SAAS,CAAC;AAExB,mBAAmB;AACnB,cAAc,UAAU,CAAC;AAEzB,uBAAuB;AACvB,cAAc,cAAc,CAAC;AAE7B,wBAAwB;AACxB,cAAc,OAAO,CAAC;AAEtB,2BAA2B;AAC3B,cAAc,SAAS,CAAC;AAExB,4BAA4B;AAC5B,cAAc,UAAU,CAAC;AAEzB,uBAAuB;AACvB,cAAc,OAAO,CAAC;AAEtB,wBAAwB;AACxB,cAAc,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,kBAAkB;AAClB,cAAc,SAAS,CAAC;AAExB,mBAAmB;AACnB,cAAc,UAAU,CAAC;AAEzB,0BAA0B;AAC1B,cAAc,SAAS,CAAC;AAExB,wBAAwB;AACxB,cAAc,UAAU,CAAC;AAEzB,wCAAwC;AACxC,cAAc,WAAW,CAAC;AAE1B,kBAAkB;AAClB,cAAc,SAAS,CAAC;AAExB,sBAAsB;AACtB,cAAc,YAAY,CAAC;AAE3B,mBAAmB;AACnB,cAAc,UAAU,CAAC;AAEzB,mBAAmB;AACnB,cAAc,UAAU,CAAC;AAEzB,kBAAkB;AAClB,cAAc,SAAS,CAAC;AAExB,mBAAmB;AACnB,cAAc,UAAU,CAAC;AAEzB,uBAAuB;AACvB,cAAc,cAAc,CAAC;AAE7B,wBAAwB;AACxB,cAAc,OAAO,CAAC;AAEtB,2BAA2B;AAC3B,cAAc,SAAS,CAAC;AAExB,4BAA4B;AAC5B,cAAc,UAAU,CAAC;AAEzB,uBAAuB;AACvB,cAAc,OAAO,CAAC;AAEtB,wBAAwB;AACxB,cAAc,SAAS,CAAC;AAExB,6BAA6B;AAC7B,cAAc,mBAAmB,CAAC"}
|