@classytic/commerce-sdk 0.1.2 → 0.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +277 -146
- package/dist/accounting/api/account.d.ts +49 -0
- package/dist/accounting/api/account.js +45 -0
- package/dist/accounting/api/budget.d.ts +76 -0
- package/dist/accounting/api/budget.js +82 -0
- package/dist/accounting/api/constants.d.ts +58 -0
- package/dist/accounting/api/constants.js +79 -0
- package/dist/accounting/api/fiscal-period.d.ts +31 -0
- package/dist/accounting/api/fiscal-period.js +30 -0
- package/dist/accounting/api/index.d.ts +7 -0
- package/dist/accounting/api/journal-entry.d.ts +66 -0
- package/dist/accounting/api/journal-entry.js +72 -0
- package/dist/accounting/api/posting.d.ts +55 -0
- package/dist/accounting/api/posting.js +70 -0
- package/dist/accounting/api/reports.d.ts +63 -0
- package/dist/accounting/api/reports.js +81 -0
- package/dist/accounting/hooks/account.d.ts +29 -0
- package/dist/accounting/hooks/account.js +102 -0
- package/dist/accounting/hooks/budget.d.ts +39 -0
- package/dist/accounting/hooks/budget.js +106 -0
- package/dist/accounting/hooks/fiscal-period.d.ts +22 -0
- package/dist/accounting/hooks/fiscal-period.js +52 -0
- package/dist/accounting/hooks/index.d.ts +6 -0
- package/dist/accounting/hooks/journal-entry.d.ts +37 -0
- package/dist/accounting/hooks/journal-entry.js +89 -0
- package/dist/accounting/hooks/posting.d.ts +128 -0
- package/dist/accounting/hooks/posting.js +119 -0
- package/dist/accounting/hooks/reports.d.ts +32 -0
- package/dist/accounting/hooks/reports.js +131 -0
- package/dist/accounting/index.d.ts +15 -0
- package/dist/accounting/index.js +15 -0
- package/dist/accounting/types/index.d.ts +375 -0
- package/dist/analytics/api/analytics.d.ts +16 -0
- package/dist/analytics/api/analytics.js +27 -0
- package/dist/analytics/api/index.d.ts +1 -0
- package/dist/analytics/hooks/analytics.d.ts +12 -0
- package/dist/analytics/hooks/analytics.js +33 -0
- package/dist/analytics/hooks/index.d.ts +1 -0
- package/dist/analytics/index.d.ts +4 -27
- package/dist/analytics/index.js +4 -6
- package/dist/analytics/types.d.ts +46 -0
- package/dist/audit/api/audit.d.ts +17 -0
- package/dist/audit/api/audit.js +21 -0
- package/dist/audit/hooks/audit.d.ts +17 -0
- package/dist/audit/hooks/audit.js +38 -0
- package/dist/audit/index.d.ts +4 -0
- package/dist/audit/index.js +4 -0
- package/dist/audit/types/index.d.ts +32 -0
- package/dist/auth/api/user-data.d.ts +30 -0
- package/dist/auth/api/user-data.js +70 -0
- package/dist/auth/hooks/user-search.d.ts +32 -0
- package/dist/auth/hooks/user-search.js +51 -0
- package/dist/auth/index.d.ts +4 -39
- package/dist/auth/index.js +5 -5
- package/dist/auth/types.d.ts +46 -0
- package/dist/auth/types.js +27 -0
- package/dist/catalog/api/category.d.ts +97 -0
- package/dist/catalog/api/category.js +109 -0
- package/dist/catalog/api/index.d.ts +4 -0
- package/dist/catalog/api/product.d.ts +136 -0
- package/dist/catalog/api/product.js +142 -0
- package/dist/catalog/api/review.d.ts +32 -0
- package/dist/catalog/api/review.js +41 -0
- package/dist/catalog/api/size-guide.d.ts +46 -0
- package/dist/catalog/api/size-guide.js +58 -0
- package/dist/catalog/hooks/category.d.ts +201 -0
- package/dist/catalog/hooks/category.js +295 -0
- package/dist/catalog/hooks/index.d.ts +4 -0
- package/dist/catalog/hooks/product.d.ts +165 -0
- package/dist/catalog/hooks/product.js +267 -0
- package/dist/catalog/hooks/review.d.ts +18 -0
- package/dist/catalog/hooks/review.js +38 -0
- package/dist/catalog/hooks/size-guide.d.ts +136 -0
- package/dist/catalog/hooks/size-guide.js +173 -0
- package/dist/catalog/index.d.ts +13 -571
- package/dist/catalog/index.js +10 -9
- package/dist/catalog/prefetch.d.ts +29 -0
- package/dist/catalog/prefetch.js +32 -0
- package/dist/catalog/types/category.d.ts +168 -0
- package/dist/catalog/types/index.d.ts +4 -0
- package/dist/catalog/types/product.d.ts +261 -0
- package/dist/catalog/types/review.d.ts +48 -0
- package/dist/catalog/types/size-guide.d.ts +118 -0
- package/dist/client.d.ts +138 -0
- package/dist/client.js +129 -0
- package/dist/content/api/cms.d.ts +27 -0
- package/dist/content/api/cms.js +43 -0
- package/dist/content/api/index.d.ts +2 -0
- package/dist/content/api/media.d.ts +74 -0
- package/dist/content/api/media.js +77 -0
- package/dist/content/hooks/cms.d.ts +31 -0
- package/dist/content/hooks/cms.js +62 -0
- package/dist/content/hooks/index.d.ts +2 -0
- package/dist/content/hooks/media.d.ts +74 -0
- package/dist/content/hooks/media.js +153 -0
- package/dist/content/index.d.ts +7 -309
- package/dist/content/index.js +6 -6
- package/dist/content/types/cms.d.ts +390 -0
- package/dist/content/types/media.d.ts +110 -0
- package/dist/core/api-factory.d.ts +17 -0
- package/dist/core/api-factory.js +39 -0
- package/dist/core/api-handler.d.ts +53 -0
- package/dist/core/api-handler.js +89 -0
- package/dist/core/index.d.ts +4 -166
- package/dist/core/index.js +4 -5
- package/dist/core/prefetch.d.ts +2 -0
- package/dist/core/prefetch.js +3 -0
- package/dist/core/react/crud.factory.d.ts +3 -0
- package/dist/core/react/crud.factory.js +5 -0
- package/dist/core/react/index.d.ts +4 -0
- package/dist/core/react/index.js +7 -0
- package/dist/core/react/mutation.factory.d.ts +9 -0
- package/dist/core/react/mutation.factory.js +21 -0
- package/dist/core/react/query.factory.d.ts +12 -0
- package/dist/core/react/query.factory.js +5 -0
- package/dist/core/server-context.d.ts +6 -0
- package/dist/core/server-context.js +12 -0
- package/dist/core/types/shared.d.ts +29 -0
- package/dist/finance/api/finance.d.ts +22 -0
- package/dist/finance/api/finance.js +29 -0
- package/dist/finance/api/index.d.ts +1 -0
- package/dist/finance/hooks/finance.d.ts +32 -0
- package/dist/finance/hooks/finance.js +66 -0
- package/dist/finance/hooks/index.d.ts +1 -0
- package/dist/finance/index.d.ts +4 -81
- package/dist/finance/index.js +4 -5
- package/dist/finance/types/finance.d.ts +82 -0
- package/dist/index.d.ts +139 -32
- package/dist/index.js +113 -29
- package/dist/inventory/api/adjustment.d.ts +123 -0
- package/dist/inventory/api/adjustment.js +120 -0
- package/dist/inventory/api/availability.d.ts +70 -0
- package/dist/inventory/api/availability.js +47 -0
- package/dist/inventory/api/cost.d.ts +58 -0
- package/dist/inventory/api/cost.js +34 -0
- package/dist/inventory/api/index.d.ts +18 -0
- package/dist/inventory/api/lot.d.ts +82 -0
- package/dist/inventory/api/lot.js +46 -0
- package/dist/inventory/api/movement.d.ts +71 -0
- package/dist/inventory/api/movement.js +75 -0
- package/dist/inventory/api/package.d.ts +97 -0
- package/dist/inventory/api/package.js +56 -0
- package/dist/inventory/api/procurement.d.ts +110 -0
- package/dist/inventory/api/procurement.js +59 -0
- package/dist/inventory/api/purchase.d.ts +106 -0
- package/dist/inventory/api/purchase.js +115 -0
- package/dist/inventory/api/replenishment.d.ts +145 -0
- package/dist/inventory/api/replenishment.js +63 -0
- package/dist/inventory/api/report.d.ts +102 -0
- package/dist/inventory/api/report.js +54 -0
- package/dist/inventory/api/request.d.ts +157 -0
- package/dist/inventory/api/request.js +140 -0
- package/dist/inventory/api/reservation.d.ts +77 -0
- package/dist/inventory/api/reservation.js +51 -0
- package/dist/inventory/api/scan.d.ts +29 -0
- package/dist/inventory/api/scan.js +30 -0
- package/dist/inventory/api/supplier.d.ts +9 -0
- package/dist/inventory/api/supplier.js +24 -0
- package/dist/inventory/api/trace.d.ts +71 -0
- package/dist/inventory/api/trace.js +39 -0
- package/dist/inventory/api/transfer.d.ts +162 -0
- package/dist/inventory/api/transfer.js +155 -0
- package/dist/inventory/api/warehouse.d.ts +199 -0
- package/dist/inventory/api/warehouse.js +155 -0
- package/dist/inventory/hooks/adjustment.d.ts +24 -0
- package/dist/inventory/hooks/adjustment.js +30 -0
- package/dist/inventory/hooks/availability.d.ts +16 -0
- package/dist/inventory/hooks/availability.js +35 -0
- package/dist/inventory/hooks/cost.d.ts +21 -0
- package/dist/inventory/hooks/cost.js +50 -0
- package/dist/inventory/hooks/index.d.ts +18 -0
- package/dist/inventory/hooks/inventory.d.ts +130 -0
- package/dist/inventory/hooks/inventory.js +267 -0
- package/dist/inventory/hooks/lot.d.ts +26 -0
- package/dist/inventory/hooks/lot.js +67 -0
- package/dist/inventory/hooks/movement.d.ts +68 -0
- package/dist/inventory/hooks/movement.js +106 -0
- package/dist/inventory/hooks/package.d.ts +32 -0
- package/dist/inventory/hooks/package.js +80 -0
- package/dist/inventory/hooks/procurement.d.ts +28 -0
- package/dist/inventory/hooks/procurement.js +87 -0
- package/dist/inventory/hooks/purchase.d.ts +63 -0
- package/dist/inventory/hooks/purchase.js +119 -0
- package/dist/inventory/hooks/replenishment.d.ts +34 -0
- package/dist/inventory/hooks/replenishment.js +87 -0
- package/dist/inventory/hooks/report.d.ts +37 -0
- package/dist/inventory/hooks/report.js +79 -0
- package/dist/inventory/hooks/request.d.ts +113 -0
- package/dist/inventory/hooks/request.js +218 -0
- package/dist/inventory/hooks/reservation.d.ts +25 -0
- package/dist/inventory/hooks/reservation.js +56 -0
- package/dist/inventory/hooks/scan.d.ts +14 -0
- package/dist/inventory/hooks/scan.js +22 -0
- package/dist/inventory/hooks/supplier.d.ts +24 -0
- package/dist/inventory/hooks/supplier.js +30 -0
- package/dist/inventory/hooks/trace.d.ts +19 -0
- package/dist/inventory/hooks/trace.js +55 -0
- package/dist/inventory/hooks/transfer.d.ts +90 -0
- package/dist/inventory/hooks/transfer.js +197 -0
- package/dist/inventory/hooks/warehouse.d.ts +87 -0
- package/dist/inventory/hooks/warehouse.js +240 -0
- package/dist/inventory/index.d.ts +39 -512
- package/dist/inventory/index.js +37 -16
- package/dist/inventory/types/index.d.ts +3 -0
- package/dist/inventory/types/inventory.d.ts +485 -0
- package/dist/inventory/types/supplier.d.ts +90 -0
- package/dist/inventory/types/warehouse.d.ts +182 -0
- package/dist/logistics/api/index.d.ts +1 -0
- package/dist/logistics/api/logistics.d.ts +260 -0
- package/dist/logistics/api/logistics.js +249 -0
- package/dist/logistics/hooks/index.d.ts +1 -0
- package/dist/logistics/hooks/logistics.d.ts +252 -0
- package/dist/logistics/hooks/logistics.js +370 -0
- package/dist/logistics/index.d.ts +4 -248
- package/dist/logistics/index.js +4 -7
- package/dist/logistics/types/logistics.d.ts +188 -0
- package/dist/node_modules/@tanstack/query-core/build/modern/hydration-C-jfQLut.d.ts +270 -0
- package/dist/notifications/api/notification.d.ts +15 -0
- package/dist/notifications/api/notification.js +43 -0
- package/dist/notifications/hooks/notification.d.ts +34 -0
- package/dist/notifications/hooks/notification.js +86 -0
- package/dist/notifications/hooks/stream.d.ts +22 -0
- package/dist/notifications/hooks/stream.js +80 -0
- package/dist/notifications/index.d.ts +5 -0
- package/dist/notifications/index.js +5 -0
- package/dist/notifications/types/index.d.ts +57 -0
- package/dist/payments/api/index.d.ts +1 -0
- package/dist/payments/api/payment.d.ts +89 -0
- package/dist/payments/api/payment.js +93 -0
- package/dist/payments/hooks/payment.d.ts +53 -0
- package/dist/payments/hooks/payment.js +93 -0
- package/dist/payments/index.d.ts +4 -55
- package/dist/payments/index.js +4 -6
- package/dist/payments/types/payment.d.ts +50 -0
- package/dist/permissions/checker.d.ts +125 -0
- package/dist/permissions/checker.js +150 -0
- package/dist/permissions/index.d.ts +3 -0
- package/dist/permissions/index.js +4 -0
- package/dist/permissions/roles.d.ts +39 -0
- package/dist/permissions/roles.js +66 -0
- package/dist/platform/api/branch.d.ts +57 -0
- package/dist/platform/api/branch.js +73 -0
- package/dist/platform/api/config.d.ts +67 -0
- package/dist/platform/api/config.js +83 -0
- package/dist/platform/api/features.d.ts +15 -0
- package/dist/platform/api/features.js +20 -0
- package/dist/platform/api/index.d.ts +6 -0
- package/dist/platform/api/promo.d.ts +286 -0
- package/dist/platform/api/promo.js +276 -0
- package/dist/platform/api/user.d.ts +10 -0
- package/dist/platform/api/user.js +29 -0
- package/dist/platform/api/webhook.d.ts +102 -0
- package/dist/platform/api/webhook.js +124 -0
- package/dist/platform/hooks/branch.d.ts +24 -0
- package/dist/platform/hooks/branch.js +31 -0
- package/dist/platform/hooks/config.d.ts +61 -0
- package/dist/platform/hooks/config.js +100 -0
- package/dist/platform/hooks/features.d.ts +22 -0
- package/dist/platform/hooks/features.js +75 -0
- package/dist/platform/hooks/index.d.ts +6 -0
- package/dist/platform/hooks/promo.d.ts +218 -0
- package/dist/platform/hooks/promo.js +451 -0
- package/dist/platform/hooks/user.d.ts +24 -0
- package/dist/platform/hooks/user.js +30 -0
- package/dist/platform/index.d.ts +18 -645
- package/dist/platform/index.js +14 -8
- package/dist/platform/prefetch.d.ts +9 -0
- package/dist/platform/prefetch.js +11 -0
- package/dist/platform/types/branch.d.ts +110 -0
- package/dist/platform/types/branch.js +16 -0
- package/dist/platform/types/config.d.ts +137 -0
- package/dist/platform/types/features.d.ts +46 -0
- package/dist/platform/types/promo.d.ts +260 -0
- package/dist/platform/types/user.d.ts +72 -0
- package/dist/platform/types/webhook.d.ts +165 -0
- package/dist/sales/api/cart.d.ts +34 -0
- package/dist/sales/api/cart.js +38 -0
- package/dist/sales/api/customer.d.ts +40 -0
- package/dist/sales/api/customer.js +52 -0
- package/dist/sales/api/earning-rules.d.ts +54 -0
- package/dist/sales/api/earning-rules.js +56 -0
- package/dist/sales/api/index.d.ts +9 -0
- package/dist/sales/api/loyalty.d.ts +54 -0
- package/dist/sales/api/loyalty.js +57 -0
- package/dist/sales/api/order.d.ts +147 -0
- package/dist/sales/api/order.js +69 -0
- package/dist/sales/api/pos.d.ts +81 -0
- package/dist/sales/api/pos.js +95 -0
- package/dist/sales/api/referrals.d.ts +63 -0
- package/dist/sales/api/referrals.js +62 -0
- package/dist/sales/api/tiers.d.ts +66 -0
- package/dist/sales/api/tiers.js +59 -0
- package/dist/sales/hooks/cart.d.ts +50 -0
- package/dist/sales/hooks/cart.js +161 -0
- package/dist/sales/hooks/customer.d.ts +100 -0
- package/dist/sales/hooks/customer.js +130 -0
- package/dist/sales/hooks/earning-rules.d.ts +31 -0
- package/dist/sales/hooks/earning-rules.js +112 -0
- package/dist/sales/hooks/index.d.ts +8 -0
- package/dist/sales/hooks/loyalty.d.ts +51 -0
- package/dist/sales/hooks/loyalty.js +122 -0
- package/dist/sales/hooks/order.d.ts +219 -0
- package/dist/sales/hooks/order.js +401 -0
- package/dist/sales/hooks/pos.d.ts +87 -0
- package/dist/sales/hooks/pos.js +222 -0
- package/dist/sales/hooks/referrals.d.ts +34 -0
- package/dist/sales/hooks/referrals.js +132 -0
- package/dist/sales/hooks/tiers.d.ts +32 -0
- package/dist/sales/hooks/tiers.js +144 -0
- package/dist/sales/index.d.ts +25 -620
- package/dist/sales/index.js +19 -9
- package/dist/sales/prefetch.d.ts +10 -0
- package/dist/sales/prefetch.js +13 -0
- package/dist/sales/types/cart.d.ts +123 -0
- package/dist/sales/types/customer.d.ts +119 -0
- package/dist/sales/types/earning-rules.d.ts +75 -0
- package/dist/sales/types/index.d.ts +8 -0
- package/dist/sales/types/loyalty.d.ts +120 -0
- package/dist/sales/types/order.d.ts +487 -0
- package/dist/sales/types/order.js +22 -0
- package/dist/sales/types/pos.d.ts +227 -0
- package/dist/sales/types/referrals.d.ts +51 -0
- package/dist/sales/types/tiers.d.ts +56 -0
- package/dist/server.d.ts +41 -23
- package/dist/server.js +41 -36
- package/dist/transaction/api/index.d.ts +1 -0
- package/dist/transaction/api/transaction.d.ts +63 -0
- package/dist/transaction/api/transaction.js +84 -0
- package/dist/transaction/hooks/index.d.ts +1 -0
- package/dist/transaction/hooks/transaction.d.ts +106 -0
- package/dist/transaction/hooks/transaction.js +156 -0
- package/dist/transaction/index.d.ts +4 -104
- package/dist/transaction/index.js +5 -8
- package/dist/transaction/types/transaction.d.ts +440 -0
- package/dist/transaction/types/transaction.js +86 -0
- package/package.json +36 -25
- package/dist/adjustment-MNH3AT6S.js +0 -5
- package/dist/adjustment-MNH3AT6S.js.map +0 -1
- package/dist/analytics/index.js.map +0 -1
- package/dist/analytics-DMcD-o8w.d.ts +0 -76
- package/dist/api-factory-B_h4RKBm.d.ts +0 -280
- package/dist/auth/index.js.map +0 -1
- package/dist/catalog/index.js.map +0 -1
- package/dist/chunk-24FDD6UR.js +0 -75
- package/dist/chunk-24FDD6UR.js.map +0 -1
- package/dist/chunk-2TF7QNYV.js +0 -159
- package/dist/chunk-2TF7QNYV.js.map +0 -1
- package/dist/chunk-2YAZ5WG6.js +0 -479
- package/dist/chunk-2YAZ5WG6.js.map +0 -1
- package/dist/chunk-36NLLAVH.js +0 -177
- package/dist/chunk-36NLLAVH.js.map +0 -1
- package/dist/chunk-3OYSJB3P.js +0 -126
- package/dist/chunk-3OYSJB3P.js.map +0 -1
- package/dist/chunk-4IYW6RF3.js +0 -862
- package/dist/chunk-4IYW6RF3.js.map +0 -1
- package/dist/chunk-5E57JODA.js +0 -135
- package/dist/chunk-5E57JODA.js.map +0 -1
- package/dist/chunk-7LZCW4VF.js +0 -13
- package/dist/chunk-7LZCW4VF.js.map +0 -1
- package/dist/chunk-AQAISI4F.js +0 -183
- package/dist/chunk-AQAISI4F.js.map +0 -1
- package/dist/chunk-B6MPVOV7.js +0 -328
- package/dist/chunk-B6MPVOV7.js.map +0 -1
- package/dist/chunk-CILP56G2.js +0 -94
- package/dist/chunk-CILP56G2.js.map +0 -1
- package/dist/chunk-ERQ52WHY.js +0 -534
- package/dist/chunk-ERQ52WHY.js.map +0 -1
- package/dist/chunk-FOTUJPM4.js +0 -640
- package/dist/chunk-FOTUJPM4.js.map +0 -1
- package/dist/chunk-IHCBBLLW.js +0 -198
- package/dist/chunk-IHCBBLLW.js.map +0 -1
- package/dist/chunk-L4OEI4VZ.js +0 -123
- package/dist/chunk-L4OEI4VZ.js.map +0 -1
- package/dist/chunk-LRV7MWWX.js +0 -616
- package/dist/chunk-LRV7MWWX.js.map +0 -1
- package/dist/chunk-M3B4DFTT.js +0 -76
- package/dist/chunk-M3B4DFTT.js.map +0 -1
- package/dist/chunk-N43VE355.js +0 -126
- package/dist/chunk-N43VE355.js.map +0 -1
- package/dist/chunk-PYYLHUV6.js +0 -3
- package/dist/chunk-PYYLHUV6.js.map +0 -1
- package/dist/chunk-QCTXAMLA.js +0 -261
- package/dist/chunk-QCTXAMLA.js.map +0 -1
- package/dist/chunk-RIKAPJNG.js +0 -40
- package/dist/chunk-RIKAPJNG.js.map +0 -1
- package/dist/chunk-U3XT35GZ.js +0 -202
- package/dist/chunk-U3XT35GZ.js.map +0 -1
- package/dist/chunk-W22WB3WZ.js +0 -148
- package/dist/chunk-W22WB3WZ.js.map +0 -1
- package/dist/chunk-WTIJMKML.js +0 -27
- package/dist/chunk-WTIJMKML.js.map +0 -1
- package/dist/chunk-X2CQFJPR.js +0 -75
- package/dist/chunk-X2CQFJPR.js.map +0 -1
- package/dist/chunk-YYFKLOKO.js +0 -769
- package/dist/chunk-YYFKLOKO.js.map +0 -1
- package/dist/client-BPG8fbae.d.ts +0 -113
- package/dist/content/index.js.map +0 -1
- package/dist/core/index.js.map +0 -1
- package/dist/core/react.d.ts +0 -107
- package/dist/core/react.js +0 -5
- package/dist/core/react.js.map +0 -1
- package/dist/coupon-BZSZ0y3n.d.ts +0 -129
- package/dist/coupon-CDzL4bJG.d.ts +0 -655
- package/dist/crud.factory-DyKaPHcU.d.ts +0 -181
- package/dist/finance/index.js.map +0 -1
- package/dist/finance-BJdfKRw0.d.ts +0 -135
- package/dist/index.js.map +0 -1
- package/dist/inventory/index.js.map +0 -1
- package/dist/inventory-B5pssqRx.d.ts +0 -748
- package/dist/logistics/index.js.map +0 -1
- package/dist/logistics-REVDorcc.d.ts +0 -410
- package/dist/media-CNLJK93J.d.ts +0 -721
- package/dist/movement-R3CERFAM.js +0 -5
- package/dist/movement-R3CERFAM.js.map +0 -1
- package/dist/order-BfdPxZiA.d.ts +0 -412
- package/dist/payment-BRboLqvU.d.ts +0 -127
- package/dist/payments/index.js.map +0 -1
- package/dist/platform/index.js.map +0 -1
- package/dist/pos-C-sBzevg.d.ts +0 -538
- package/dist/product-p09zXkXB.d.ts +0 -260
- package/dist/purchase-54PER2PY.js +0 -5
- package/dist/purchase-54PER2PY.js.map +0 -1
- package/dist/request-MP6NV5ZE.js +0 -5
- package/dist/request-MP6NV5ZE.js.map +0 -1
- package/dist/sales/index.js.map +0 -1
- package/dist/server.js.map +0 -1
- package/dist/size-guide-DgjzjM5P.d.ts +0 -554
- package/dist/stock-2LP4HJSB.js +0 -5
- package/dist/stock-2LP4HJSB.js.map +0 -1
- package/dist/stock-CfrU5_Wr.d.ts +0 -632
- package/dist/supplier-BWJTRZ5Z.js +0 -5
- package/dist/supplier-BWJTRZ5Z.js.map +0 -1
- package/dist/transaction/index.js.map +0 -1
- package/dist/transaction-Bf6WjYCh.d.ts +0 -84
- package/dist/transaction-dL3WW-er.d.ts +0 -442
- package/dist/transfer-4XSS6HWT.js +0 -5
- package/dist/transfer-4XSS6HWT.js.map +0 -1
- package/dist/user-data-DdLjAGwO.d.ts +0 -132
|
@@ -0,0 +1,286 @@
|
|
|
1
|
+
import { ApiResponse, BaseApi, RequestOptions } from "../../core/api-factory.js";
|
|
2
|
+
import { CommitResult, CreateProgramPayload, CreateRewardPayload, CreateRulePayload, EvaluateInput, EvaluationResult, FullProgram, GenerateCodesPayload, GenerateSingleCodePayload, GiftCardBalance, Program, ProgramTransitionAction, Reward, Rule, UpdateProgramPayload, UpdateRewardPayload, UpdateRulePayload, Voucher, VoucherValidation } from "../types/promo.js";
|
|
3
|
+
|
|
4
|
+
//#region src/platform/api/promo.d.ts
|
|
5
|
+
type FetchOptions = Omit<RequestOptions, "token" | "organizationId">;
|
|
6
|
+
declare class ProgramApi extends BaseApi<Program, CreateProgramPayload, UpdateProgramPayload> {
|
|
7
|
+
constructor(config?: {});
|
|
8
|
+
/**
|
|
9
|
+
* Get program with rules and rewards pre-loaded
|
|
10
|
+
* GET /promotions/programs/:id/full
|
|
11
|
+
*/
|
|
12
|
+
getFullProgram({
|
|
13
|
+
token,
|
|
14
|
+
id,
|
|
15
|
+
options
|
|
16
|
+
}: {
|
|
17
|
+
token: string;
|
|
18
|
+
id: string;
|
|
19
|
+
options?: FetchOptions;
|
|
20
|
+
}): Promise<ApiResponse<FullProgram>>;
|
|
21
|
+
/**
|
|
22
|
+
* Transition program status (Stripe action pattern)
|
|
23
|
+
* POST /promotions/programs/:id/action { action: "activate" | "pause" | "archive" }
|
|
24
|
+
*/
|
|
25
|
+
transition({
|
|
26
|
+
token,
|
|
27
|
+
id,
|
|
28
|
+
action,
|
|
29
|
+
options
|
|
30
|
+
}: {
|
|
31
|
+
token: string;
|
|
32
|
+
id: string;
|
|
33
|
+
action: ProgramTransitionAction;
|
|
34
|
+
options?: FetchOptions;
|
|
35
|
+
}): Promise<ApiResponse<Program>>;
|
|
36
|
+
/**
|
|
37
|
+
* Add a rule to a program
|
|
38
|
+
* POST /promotions/programs/:id/rules
|
|
39
|
+
*/
|
|
40
|
+
addRule({
|
|
41
|
+
token,
|
|
42
|
+
id,
|
|
43
|
+
data,
|
|
44
|
+
options
|
|
45
|
+
}: {
|
|
46
|
+
token: string;
|
|
47
|
+
id: string;
|
|
48
|
+
data: CreateRulePayload;
|
|
49
|
+
options?: FetchOptions;
|
|
50
|
+
}): Promise<ApiResponse<Rule>>;
|
|
51
|
+
/**
|
|
52
|
+
* Update a rule on a program
|
|
53
|
+
* PATCH /promotions/programs/:programId/rules/:ruleId
|
|
54
|
+
*/
|
|
55
|
+
updateRule({
|
|
56
|
+
token,
|
|
57
|
+
programId,
|
|
58
|
+
ruleId,
|
|
59
|
+
data,
|
|
60
|
+
options
|
|
61
|
+
}: {
|
|
62
|
+
token: string;
|
|
63
|
+
programId: string;
|
|
64
|
+
ruleId: string;
|
|
65
|
+
data: UpdateRulePayload;
|
|
66
|
+
options?: FetchOptions;
|
|
67
|
+
}): Promise<ApiResponse<Rule>>;
|
|
68
|
+
/**
|
|
69
|
+
* Remove a rule from a program
|
|
70
|
+
* DELETE /promotions/programs/:programId/rules/:ruleId
|
|
71
|
+
*/
|
|
72
|
+
removeRule({
|
|
73
|
+
token,
|
|
74
|
+
programId,
|
|
75
|
+
ruleId,
|
|
76
|
+
options
|
|
77
|
+
}: {
|
|
78
|
+
token: string;
|
|
79
|
+
programId: string;
|
|
80
|
+
ruleId: string;
|
|
81
|
+
options?: FetchOptions;
|
|
82
|
+
}): Promise<ApiResponse<void>>;
|
|
83
|
+
/**
|
|
84
|
+
* Add a reward to a program
|
|
85
|
+
* POST /promotions/programs/:id/rewards
|
|
86
|
+
*/
|
|
87
|
+
addReward({
|
|
88
|
+
token,
|
|
89
|
+
id,
|
|
90
|
+
data,
|
|
91
|
+
options
|
|
92
|
+
}: {
|
|
93
|
+
token: string;
|
|
94
|
+
id: string;
|
|
95
|
+
data: CreateRewardPayload;
|
|
96
|
+
options?: FetchOptions;
|
|
97
|
+
}): Promise<ApiResponse<Reward>>;
|
|
98
|
+
/**
|
|
99
|
+
* Update a reward on a program
|
|
100
|
+
* PATCH /promotions/programs/:programId/rewards/:rewardId
|
|
101
|
+
*/
|
|
102
|
+
updateReward({
|
|
103
|
+
token,
|
|
104
|
+
programId,
|
|
105
|
+
rewardId,
|
|
106
|
+
data,
|
|
107
|
+
options
|
|
108
|
+
}: {
|
|
109
|
+
token: string;
|
|
110
|
+
programId: string;
|
|
111
|
+
rewardId: string;
|
|
112
|
+
data: UpdateRewardPayload;
|
|
113
|
+
options?: FetchOptions;
|
|
114
|
+
}): Promise<ApiResponse<Reward>>;
|
|
115
|
+
/**
|
|
116
|
+
* Remove a reward from a program
|
|
117
|
+
* DELETE /promotions/programs/:programId/rewards/:rewardId
|
|
118
|
+
*/
|
|
119
|
+
removeReward({
|
|
120
|
+
token,
|
|
121
|
+
programId,
|
|
122
|
+
rewardId,
|
|
123
|
+
options
|
|
124
|
+
}: {
|
|
125
|
+
token: string;
|
|
126
|
+
programId: string;
|
|
127
|
+
rewardId: string;
|
|
128
|
+
options?: FetchOptions;
|
|
129
|
+
}): Promise<ApiResponse<void>>;
|
|
130
|
+
}
|
|
131
|
+
declare class VoucherApi {
|
|
132
|
+
private baseUrl;
|
|
133
|
+
/**
|
|
134
|
+
* Generate batch voucher codes
|
|
135
|
+
* POST /promotions/vouchers/generate
|
|
136
|
+
*/
|
|
137
|
+
generateCodes({
|
|
138
|
+
token,
|
|
139
|
+
data,
|
|
140
|
+
options
|
|
141
|
+
}: {
|
|
142
|
+
token: string;
|
|
143
|
+
data: GenerateCodesPayload;
|
|
144
|
+
options?: FetchOptions;
|
|
145
|
+
}): Promise<ApiResponse<Voucher[]>>;
|
|
146
|
+
/**
|
|
147
|
+
* Generate a single voucher code (custom or auto-generated)
|
|
148
|
+
* POST /promotions/vouchers/generate-single
|
|
149
|
+
*/
|
|
150
|
+
generateSingle({
|
|
151
|
+
token,
|
|
152
|
+
data,
|
|
153
|
+
options
|
|
154
|
+
}: {
|
|
155
|
+
token: string;
|
|
156
|
+
data: GenerateSingleCodePayload;
|
|
157
|
+
options?: FetchOptions;
|
|
158
|
+
}): Promise<ApiResponse<Voucher>>;
|
|
159
|
+
/**
|
|
160
|
+
* Validate a voucher code
|
|
161
|
+
* POST /promotions/vouchers/validate/:code
|
|
162
|
+
*/
|
|
163
|
+
validateCode({
|
|
164
|
+
token,
|
|
165
|
+
code,
|
|
166
|
+
options
|
|
167
|
+
}: {
|
|
168
|
+
token: string;
|
|
169
|
+
code: string;
|
|
170
|
+
options?: FetchOptions;
|
|
171
|
+
}): Promise<ApiResponse<VoucherValidation>>;
|
|
172
|
+
/**
|
|
173
|
+
* Get voucher by ID
|
|
174
|
+
* GET /promotions/vouchers/:id
|
|
175
|
+
*/
|
|
176
|
+
getById({
|
|
177
|
+
token,
|
|
178
|
+
id,
|
|
179
|
+
options
|
|
180
|
+
}: {
|
|
181
|
+
token: string;
|
|
182
|
+
id: string;
|
|
183
|
+
options?: FetchOptions;
|
|
184
|
+
}): Promise<ApiResponse<Voucher>>;
|
|
185
|
+
/**
|
|
186
|
+
* Get voucher by code
|
|
187
|
+
* GET /promotions/vouchers/code/:code
|
|
188
|
+
*/
|
|
189
|
+
getByCode({
|
|
190
|
+
token,
|
|
191
|
+
code,
|
|
192
|
+
options
|
|
193
|
+
}: {
|
|
194
|
+
token: string;
|
|
195
|
+
code: string;
|
|
196
|
+
options?: FetchOptions;
|
|
197
|
+
}): Promise<ApiResponse<Voucher>>;
|
|
198
|
+
/**
|
|
199
|
+
* Cancel a voucher
|
|
200
|
+
* POST /promotions/vouchers/:id/cancel
|
|
201
|
+
*/
|
|
202
|
+
cancel({
|
|
203
|
+
token,
|
|
204
|
+
id,
|
|
205
|
+
options
|
|
206
|
+
}: {
|
|
207
|
+
token: string;
|
|
208
|
+
id: string;
|
|
209
|
+
options?: FetchOptions;
|
|
210
|
+
}): Promise<ApiResponse<Voucher>>;
|
|
211
|
+
/**
|
|
212
|
+
* Get gift card balance
|
|
213
|
+
* GET /promotions/vouchers/balance/:code
|
|
214
|
+
*/
|
|
215
|
+
getBalance({
|
|
216
|
+
token,
|
|
217
|
+
code,
|
|
218
|
+
options
|
|
219
|
+
}: {
|
|
220
|
+
token: string;
|
|
221
|
+
code: string;
|
|
222
|
+
options?: FetchOptions;
|
|
223
|
+
}): Promise<ApiResponse<GiftCardBalance>>;
|
|
224
|
+
}
|
|
225
|
+
declare class EvaluationApi {
|
|
226
|
+
private baseUrl;
|
|
227
|
+
/**
|
|
228
|
+
* Preview evaluation (dry-run, no side effects)
|
|
229
|
+
* POST /promotions/evaluate/preview
|
|
230
|
+
*/
|
|
231
|
+
preview({
|
|
232
|
+
token,
|
|
233
|
+
data,
|
|
234
|
+
options
|
|
235
|
+
}: {
|
|
236
|
+
token: string;
|
|
237
|
+
data: EvaluateInput;
|
|
238
|
+
options?: FetchOptions;
|
|
239
|
+
}): Promise<ApiResponse<EvaluationResult>>;
|
|
240
|
+
/**
|
|
241
|
+
* Evaluate cart (reserves usage counts)
|
|
242
|
+
* POST /promotions/evaluate
|
|
243
|
+
*/
|
|
244
|
+
evaluate({
|
|
245
|
+
token,
|
|
246
|
+
data,
|
|
247
|
+
options
|
|
248
|
+
}: {
|
|
249
|
+
token: string;
|
|
250
|
+
data: EvaluateInput;
|
|
251
|
+
options?: FetchOptions;
|
|
252
|
+
}): Promise<ApiResponse<EvaluationResult>>;
|
|
253
|
+
/**
|
|
254
|
+
* Commit evaluation to an order
|
|
255
|
+
* POST /promotions/evaluate/:evaluationId/commit
|
|
256
|
+
*/
|
|
257
|
+
commit({
|
|
258
|
+
token,
|
|
259
|
+
evaluationId,
|
|
260
|
+
orderId,
|
|
261
|
+
options
|
|
262
|
+
}: {
|
|
263
|
+
token: string;
|
|
264
|
+
evaluationId: string;
|
|
265
|
+
orderId: string;
|
|
266
|
+
options?: FetchOptions;
|
|
267
|
+
}): Promise<ApiResponse<CommitResult>>;
|
|
268
|
+
/**
|
|
269
|
+
* Rollback an uncommitted evaluation
|
|
270
|
+
* POST /promotions/evaluate/:evaluationId/rollback
|
|
271
|
+
*/
|
|
272
|
+
rollback({
|
|
273
|
+
token,
|
|
274
|
+
evaluationId,
|
|
275
|
+
options
|
|
276
|
+
}: {
|
|
277
|
+
token: string;
|
|
278
|
+
evaluationId: string;
|
|
279
|
+
options?: FetchOptions;
|
|
280
|
+
}): Promise<ApiResponse<void>>;
|
|
281
|
+
}
|
|
282
|
+
declare const programApi: ProgramApi;
|
|
283
|
+
declare const voucherApi: VoucherApi;
|
|
284
|
+
declare const evaluationApi: EvaluationApi;
|
|
285
|
+
//#endregion
|
|
286
|
+
export { EvaluationApi, ProgramApi, VoucherApi, evaluationApi, programApi, voucherApi };
|
|
@@ -0,0 +1,276 @@
|
|
|
1
|
+
import { handleApiRequest } from "../../core/api-handler.js";
|
|
2
|
+
import { BaseApi } from "../../core/api-factory.js";
|
|
3
|
+
|
|
4
|
+
//#region src/platform/api/promo.ts
|
|
5
|
+
/**
|
|
6
|
+
* Promo API — Programs, Vouchers, Evaluation
|
|
7
|
+
*
|
|
8
|
+
* Three API classes covering the full @classytic/promo engine:
|
|
9
|
+
*
|
|
10
|
+
* ProgramApi (extends BaseApi):
|
|
11
|
+
* - Standard CRUD for programs
|
|
12
|
+
* - getFullProgram: program + rules + rewards in one call
|
|
13
|
+
* - transition: activate / pause / archive (Stripe action pattern)
|
|
14
|
+
* - addRule / updateRule / removeRule
|
|
15
|
+
* - addReward / updateReward / removeReward
|
|
16
|
+
*
|
|
17
|
+
* VoucherApi (standalone):
|
|
18
|
+
* - generateCodes: batch code generation
|
|
19
|
+
* - generateSingle: single code (custom or auto)
|
|
20
|
+
* - validateCode: check if code is valid
|
|
21
|
+
* - getById / getByCode / cancel
|
|
22
|
+
*
|
|
23
|
+
* EvaluationApi (standalone):
|
|
24
|
+
* - preview: dry-run evaluation (isPreview=true)
|
|
25
|
+
* - evaluate: real evaluation (reserves usage)
|
|
26
|
+
* - commit: finalize evaluation to an order
|
|
27
|
+
* - rollback: undo an uncommitted evaluation
|
|
28
|
+
*/
|
|
29
|
+
var ProgramApi = class extends BaseApi {
|
|
30
|
+
constructor(config = {}) {
|
|
31
|
+
super("promotions/programs", config);
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Get program with rules and rewards pre-loaded
|
|
35
|
+
* GET /promotions/programs/:id/full
|
|
36
|
+
*/
|
|
37
|
+
async getFullProgram({ token, id, options = {} }) {
|
|
38
|
+
if (!id) throw new Error("Program ID is required");
|
|
39
|
+
return handleApiRequest("GET", `${this.baseUrl}/${id}/full`, {
|
|
40
|
+
token,
|
|
41
|
+
cache: this.config.cache,
|
|
42
|
+
...options
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Transition program status (Stripe action pattern)
|
|
47
|
+
* POST /promotions/programs/:id/action { action: "activate" | "pause" | "archive" }
|
|
48
|
+
*/
|
|
49
|
+
async transition({ token, id, action, options = {} }) {
|
|
50
|
+
if (!id) throw new Error("Program ID is required");
|
|
51
|
+
return handleApiRequest("POST", `${this.baseUrl}/${id}/action`, {
|
|
52
|
+
token,
|
|
53
|
+
body: { action },
|
|
54
|
+
cache: this.config.cache,
|
|
55
|
+
...options
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Add a rule to a program
|
|
60
|
+
* POST /promotions/programs/:id/rules
|
|
61
|
+
*/
|
|
62
|
+
async addRule({ token, id, data, options = {} }) {
|
|
63
|
+
if (!id) throw new Error("Program ID is required");
|
|
64
|
+
return handleApiRequest("POST", `${this.baseUrl}/${id}/rules`, {
|
|
65
|
+
token,
|
|
66
|
+
body: data,
|
|
67
|
+
cache: this.config.cache,
|
|
68
|
+
...options
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Update a rule on a program
|
|
73
|
+
* PATCH /promotions/programs/:programId/rules/:ruleId
|
|
74
|
+
*/
|
|
75
|
+
async updateRule({ token, programId, ruleId, data, options = {} }) {
|
|
76
|
+
if (!programId) throw new Error("Program ID is required");
|
|
77
|
+
if (!ruleId) throw new Error("Rule ID is required");
|
|
78
|
+
return handleApiRequest("PATCH", `${this.baseUrl}/${programId}/rules/${ruleId}`, {
|
|
79
|
+
token,
|
|
80
|
+
body: data,
|
|
81
|
+
cache: this.config.cache,
|
|
82
|
+
...options
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Remove a rule from a program
|
|
87
|
+
* DELETE /promotions/programs/:programId/rules/:ruleId
|
|
88
|
+
*/
|
|
89
|
+
async removeRule({ token, programId, ruleId, options = {} }) {
|
|
90
|
+
if (!programId) throw new Error("Program ID is required");
|
|
91
|
+
if (!ruleId) throw new Error("Rule ID is required");
|
|
92
|
+
return handleApiRequest("DELETE", `${this.baseUrl}/${programId}/rules/${ruleId}`, {
|
|
93
|
+
token,
|
|
94
|
+
cache: this.config.cache,
|
|
95
|
+
...options
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Add a reward to a program
|
|
100
|
+
* POST /promotions/programs/:id/rewards
|
|
101
|
+
*/
|
|
102
|
+
async addReward({ token, id, data, options = {} }) {
|
|
103
|
+
if (!id) throw new Error("Program ID is required");
|
|
104
|
+
return handleApiRequest("POST", `${this.baseUrl}/${id}/rewards`, {
|
|
105
|
+
token,
|
|
106
|
+
body: data,
|
|
107
|
+
cache: this.config.cache,
|
|
108
|
+
...options
|
|
109
|
+
});
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Update a reward on a program
|
|
113
|
+
* PATCH /promotions/programs/:programId/rewards/:rewardId
|
|
114
|
+
*/
|
|
115
|
+
async updateReward({ token, programId, rewardId, data, options = {} }) {
|
|
116
|
+
if (!programId) throw new Error("Program ID is required");
|
|
117
|
+
if (!rewardId) throw new Error("Reward ID is required");
|
|
118
|
+
return handleApiRequest("PATCH", `${this.baseUrl}/${programId}/rewards/${rewardId}`, {
|
|
119
|
+
token,
|
|
120
|
+
body: data,
|
|
121
|
+
cache: this.config.cache,
|
|
122
|
+
...options
|
|
123
|
+
});
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Remove a reward from a program
|
|
127
|
+
* DELETE /promotions/programs/:programId/rewards/:rewardId
|
|
128
|
+
*/
|
|
129
|
+
async removeReward({ token, programId, rewardId, options = {} }) {
|
|
130
|
+
if (!programId) throw new Error("Program ID is required");
|
|
131
|
+
if (!rewardId) throw new Error("Reward ID is required");
|
|
132
|
+
return handleApiRequest("DELETE", `${this.baseUrl}/${programId}/rewards/${rewardId}`, {
|
|
133
|
+
token,
|
|
134
|
+
cache: this.config.cache,
|
|
135
|
+
...options
|
|
136
|
+
});
|
|
137
|
+
}
|
|
138
|
+
};
|
|
139
|
+
var VoucherApi = class {
|
|
140
|
+
constructor() {
|
|
141
|
+
this.baseUrl = "promotions/vouchers";
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* Generate batch voucher codes
|
|
145
|
+
* POST /promotions/vouchers/generate
|
|
146
|
+
*/
|
|
147
|
+
async generateCodes({ token, data, options = {} }) {
|
|
148
|
+
return handleApiRequest("POST", `${this.baseUrl}/generate`, {
|
|
149
|
+
token,
|
|
150
|
+
body: data,
|
|
151
|
+
...options
|
|
152
|
+
});
|
|
153
|
+
}
|
|
154
|
+
/**
|
|
155
|
+
* Generate a single voucher code (custom or auto-generated)
|
|
156
|
+
* POST /promotions/vouchers/generate-single
|
|
157
|
+
*/
|
|
158
|
+
async generateSingle({ token, data, options = {} }) {
|
|
159
|
+
return handleApiRequest("POST", `${this.baseUrl}/generate-single`, {
|
|
160
|
+
token,
|
|
161
|
+
body: data,
|
|
162
|
+
...options
|
|
163
|
+
});
|
|
164
|
+
}
|
|
165
|
+
/**
|
|
166
|
+
* Validate a voucher code
|
|
167
|
+
* POST /promotions/vouchers/validate/:code
|
|
168
|
+
*/
|
|
169
|
+
async validateCode({ token, code, options = {} }) {
|
|
170
|
+
if (!code) throw new Error("Voucher code is required");
|
|
171
|
+
return handleApiRequest("POST", `${this.baseUrl}/validate/${encodeURIComponent(code)}`, {
|
|
172
|
+
token,
|
|
173
|
+
...options
|
|
174
|
+
});
|
|
175
|
+
}
|
|
176
|
+
/**
|
|
177
|
+
* Get voucher by ID
|
|
178
|
+
* GET /promotions/vouchers/:id
|
|
179
|
+
*/
|
|
180
|
+
async getById({ token, id, options = {} }) {
|
|
181
|
+
if (!id) throw new Error("Voucher ID is required");
|
|
182
|
+
return handleApiRequest("GET", `${this.baseUrl}/${id}`, {
|
|
183
|
+
token,
|
|
184
|
+
...options
|
|
185
|
+
});
|
|
186
|
+
}
|
|
187
|
+
/**
|
|
188
|
+
* Get voucher by code
|
|
189
|
+
* GET /promotions/vouchers/code/:code
|
|
190
|
+
*/
|
|
191
|
+
async getByCode({ token, code, options = {} }) {
|
|
192
|
+
if (!code) throw new Error("Voucher code is required");
|
|
193
|
+
return handleApiRequest("GET", `${this.baseUrl}/code/${encodeURIComponent(code)}`, {
|
|
194
|
+
token,
|
|
195
|
+
...options
|
|
196
|
+
});
|
|
197
|
+
}
|
|
198
|
+
/**
|
|
199
|
+
* Cancel a voucher
|
|
200
|
+
* POST /promotions/vouchers/:id/cancel
|
|
201
|
+
*/
|
|
202
|
+
async cancel({ token, id, options = {} }) {
|
|
203
|
+
if (!id) throw new Error("Voucher ID is required");
|
|
204
|
+
return handleApiRequest("POST", `${this.baseUrl}/${id}/cancel`, {
|
|
205
|
+
token,
|
|
206
|
+
...options
|
|
207
|
+
});
|
|
208
|
+
}
|
|
209
|
+
/**
|
|
210
|
+
* Get gift card balance
|
|
211
|
+
* GET /promotions/vouchers/balance/:code
|
|
212
|
+
*/
|
|
213
|
+
async getBalance({ token, code, options = {} }) {
|
|
214
|
+
if (!code) throw new Error("Gift card code is required");
|
|
215
|
+
return handleApiRequest("GET", `${this.baseUrl}/balance/${encodeURIComponent(code)}`, {
|
|
216
|
+
token,
|
|
217
|
+
...options
|
|
218
|
+
});
|
|
219
|
+
}
|
|
220
|
+
};
|
|
221
|
+
var EvaluationApi = class {
|
|
222
|
+
constructor() {
|
|
223
|
+
this.baseUrl = "promotions/evaluate";
|
|
224
|
+
}
|
|
225
|
+
/**
|
|
226
|
+
* Preview evaluation (dry-run, no side effects)
|
|
227
|
+
* POST /promotions/evaluate/preview
|
|
228
|
+
*/
|
|
229
|
+
async preview({ token, data, options = {} }) {
|
|
230
|
+
return handleApiRequest("POST", `${this.baseUrl}/preview`, {
|
|
231
|
+
token,
|
|
232
|
+
body: data,
|
|
233
|
+
...options
|
|
234
|
+
});
|
|
235
|
+
}
|
|
236
|
+
/**
|
|
237
|
+
* Evaluate cart (reserves usage counts)
|
|
238
|
+
* POST /promotions/evaluate
|
|
239
|
+
*/
|
|
240
|
+
async evaluate({ token, data, options = {} }) {
|
|
241
|
+
return handleApiRequest("POST", this.baseUrl, {
|
|
242
|
+
token,
|
|
243
|
+
body: data,
|
|
244
|
+
...options
|
|
245
|
+
});
|
|
246
|
+
}
|
|
247
|
+
/**
|
|
248
|
+
* Commit evaluation to an order
|
|
249
|
+
* POST /promotions/evaluate/:evaluationId/commit
|
|
250
|
+
*/
|
|
251
|
+
async commit({ token, evaluationId, orderId, options = {} }) {
|
|
252
|
+
if (!evaluationId) throw new Error("Evaluation ID is required");
|
|
253
|
+
return handleApiRequest("POST", `${this.baseUrl}/${evaluationId}/commit`, {
|
|
254
|
+
token,
|
|
255
|
+
body: { orderId },
|
|
256
|
+
...options
|
|
257
|
+
});
|
|
258
|
+
}
|
|
259
|
+
/**
|
|
260
|
+
* Rollback an uncommitted evaluation
|
|
261
|
+
* POST /promotions/evaluate/:evaluationId/rollback
|
|
262
|
+
*/
|
|
263
|
+
async rollback({ token, evaluationId, options = {} }) {
|
|
264
|
+
if (!evaluationId) throw new Error("Evaluation ID is required");
|
|
265
|
+
return handleApiRequest("POST", `${this.baseUrl}/${evaluationId}/rollback`, {
|
|
266
|
+
token,
|
|
267
|
+
...options
|
|
268
|
+
});
|
|
269
|
+
}
|
|
270
|
+
};
|
|
271
|
+
const programApi = new ProgramApi();
|
|
272
|
+
const voucherApi = new VoucherApi();
|
|
273
|
+
const evaluationApi = new EvaluationApi();
|
|
274
|
+
|
|
275
|
+
//#endregion
|
|
276
|
+
export { EvaluationApi, ProgramApi, VoucherApi, evaluationApi, programApi, voucherApi };
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { BaseApi } from "../../core/api-factory.js";
|
|
2
|
+
import { CreateUserPayload, UpdateUserPayload, User } from "../types/user.js";
|
|
3
|
+
|
|
4
|
+
//#region src/platform/api/user.d.ts
|
|
5
|
+
declare class UserApi extends BaseApi<User, CreateUserPayload, UpdateUserPayload> {
|
|
6
|
+
constructor(config?: {});
|
|
7
|
+
}
|
|
8
|
+
declare const userApi: UserApi;
|
|
9
|
+
//#endregion
|
|
10
|
+
export { UserApi, userApi };
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { BaseApi } from "../../core/api-factory.js";
|
|
2
|
+
|
|
3
|
+
//#region src/platform/api/user.ts
|
|
4
|
+
/**
|
|
5
|
+
* User API - Admin User Management (CRUD)
|
|
6
|
+
*
|
|
7
|
+
* Standard CRUD (inherited from BaseApi):
|
|
8
|
+
* - getAll({ token, params }) - list users with filtering/pagination
|
|
9
|
+
* - getById({ token, id }) - get user by ID
|
|
10
|
+
* - create({ token, data }) - create user (admin only)
|
|
11
|
+
* - update({ token, id, data }) - update user (admin only)
|
|
12
|
+
* - delete({ token, id }) - delete user (admin only)
|
|
13
|
+
*
|
|
14
|
+
* Query examples:
|
|
15
|
+
* - List all users: getAll({ token, params: { page: 1, limit: 10 } })
|
|
16
|
+
* - Filter by role: getAll({ token, params: { roles: 'admin' } })
|
|
17
|
+
* - Search by name: getAll({ token, params: { 'name[contains]': 'john' } })
|
|
18
|
+
* - Filter by branch: getAll({ token, params: { 'branches.branchId': 'branch_123' } })
|
|
19
|
+
* - Active users only: getAll({ token, params: { isActive: true } })
|
|
20
|
+
*/
|
|
21
|
+
var UserApi = class extends BaseApi {
|
|
22
|
+
constructor(config = {}) {
|
|
23
|
+
super("users", config);
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
const userApi = new UserApi();
|
|
27
|
+
|
|
28
|
+
//#endregion
|
|
29
|
+
export { UserApi, userApi };
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import { ApiResponse } from "../../core/api-factory.js";
|
|
2
|
+
import { ManualRejectResponseData, ManualVerifyResponseData } from "../types/webhook.js";
|
|
3
|
+
|
|
4
|
+
//#region src/platform/api/webhook.d.ts
|
|
5
|
+
type FetchOptions = Omit<RequestInit, 'body' | 'method'>;
|
|
6
|
+
declare class WebhookApi {
|
|
7
|
+
private baseUrl;
|
|
8
|
+
constructor();
|
|
9
|
+
/**
|
|
10
|
+
* Verify a manual payment (superadmin only)
|
|
11
|
+
* POST /webhooks/payments/manual/verify
|
|
12
|
+
*
|
|
13
|
+
* Flow:
|
|
14
|
+
* 1. Customer places order with manual payment (cash, bKash, Nagad, bank)
|
|
15
|
+
* 2. Customer pays and provides transaction reference
|
|
16
|
+
* 3. Admin verifies payment via this endpoint
|
|
17
|
+
* 4. Transaction status -> 'verified'
|
|
18
|
+
* 5. Order payment status -> 'verified', order status -> 'confirmed'
|
|
19
|
+
*
|
|
20
|
+
* @param params.transactionId - Transaction ID to verify
|
|
21
|
+
* @param params.notes - Optional verification notes
|
|
22
|
+
* @param params.token - Auth token (superadmin required)
|
|
23
|
+
* @param params.options - Additional fetch options
|
|
24
|
+
* @returns Verification result with transaction details
|
|
25
|
+
*
|
|
26
|
+
* @example
|
|
27
|
+
* ```typescript
|
|
28
|
+
* const result = await webhookApi.verifyPayment({
|
|
29
|
+
* token: adminToken,
|
|
30
|
+
* transactionId: '507f1f77bcf86cd799439011',
|
|
31
|
+
* notes: 'Verified bKash TrxID via app',
|
|
32
|
+
* });
|
|
33
|
+
* ```
|
|
34
|
+
*/
|
|
35
|
+
verifyPayment({
|
|
36
|
+
token,
|
|
37
|
+
transactionId,
|
|
38
|
+
notes,
|
|
39
|
+
options
|
|
40
|
+
}: {
|
|
41
|
+
token: string;
|
|
42
|
+
transactionId: string;
|
|
43
|
+
notes?: string;
|
|
44
|
+
options?: FetchOptions;
|
|
45
|
+
}): Promise<ApiResponse<ManualVerifyResponseData>>;
|
|
46
|
+
/**
|
|
47
|
+
* Reject a manual payment (superadmin only)
|
|
48
|
+
* POST /webhooks/payments/manual/reject
|
|
49
|
+
*
|
|
50
|
+
* Flow:
|
|
51
|
+
* 1. Customer claims to have paid but admin finds issue
|
|
52
|
+
* 2. Admin rejects payment with reason via this endpoint
|
|
53
|
+
* 3. Transaction status -> 'failed', failureReason recorded
|
|
54
|
+
* 4. Order payment status -> 'failed'
|
|
55
|
+
*
|
|
56
|
+
* Common rejection reasons:
|
|
57
|
+
* - Invalid transaction reference
|
|
58
|
+
* - Amount mismatch
|
|
59
|
+
* - Duplicate claim
|
|
60
|
+
* - Suspected fraud
|
|
61
|
+
* - Payment not received
|
|
62
|
+
*
|
|
63
|
+
* @param params.transactionId - Transaction ID to reject
|
|
64
|
+
* @param params.reason - Rejection reason (required)
|
|
65
|
+
* @param params.token - Auth token (superadmin required)
|
|
66
|
+
* @param params.options - Additional fetch options
|
|
67
|
+
* @returns Rejection result with failure details
|
|
68
|
+
*
|
|
69
|
+
* @example
|
|
70
|
+
* ```typescript
|
|
71
|
+
* const result = await webhookApi.rejectPayment({
|
|
72
|
+
* token: adminToken,
|
|
73
|
+
* transactionId: '507f1f77bcf86cd799439011',
|
|
74
|
+
* reason: 'Invalid bKash TrxID - no matching transaction found',
|
|
75
|
+
* });
|
|
76
|
+
* ```
|
|
77
|
+
*/
|
|
78
|
+
rejectPayment({
|
|
79
|
+
token,
|
|
80
|
+
transactionId,
|
|
81
|
+
reason,
|
|
82
|
+
options
|
|
83
|
+
}: {
|
|
84
|
+
token: string;
|
|
85
|
+
transactionId: string;
|
|
86
|
+
reason: string;
|
|
87
|
+
options?: FetchOptions;
|
|
88
|
+
}): Promise<ApiResponse<ManualRejectResponseData>>;
|
|
89
|
+
/**
|
|
90
|
+
* Alias for verifyPayment - more explicit naming
|
|
91
|
+
* @deprecated Use verifyPayment instead
|
|
92
|
+
*/
|
|
93
|
+
verifyManualPayment(params: Parameters<typeof this.verifyPayment>[0]): Promise<ApiResponse<ManualVerifyResponseData>>;
|
|
94
|
+
/**
|
|
95
|
+
* Alias for rejectPayment - more explicit naming
|
|
96
|
+
* @deprecated Use rejectPayment instead
|
|
97
|
+
*/
|
|
98
|
+
rejectManualPayment(params: Parameters<typeof this.rejectPayment>[0]): Promise<ApiResponse<ManualRejectResponseData>>;
|
|
99
|
+
}
|
|
100
|
+
declare const webhookApi: WebhookApi;
|
|
101
|
+
//#endregion
|
|
102
|
+
export { WebhookApi, webhookApi };
|