@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
|
@@ -1,76 +0,0 @@
|
|
|
1
|
-
import { R as RequestOptions, A as ApiResponse } from './api-factory-B_h4RKBm.js';
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Analytics Types
|
|
5
|
-
*/
|
|
6
|
-
interface AnalyticsPeriod {
|
|
7
|
-
period: "7d" | "30d" | "90d" | "1y";
|
|
8
|
-
}
|
|
9
|
-
interface AnalyticsSummary {
|
|
10
|
-
totalRevenue: number;
|
|
11
|
-
totalOrders: number;
|
|
12
|
-
averageOrderValue: number;
|
|
13
|
-
conversionRate?: number;
|
|
14
|
-
}
|
|
15
|
-
interface AnalyticsTrend {
|
|
16
|
-
date: string;
|
|
17
|
-
revenue: number;
|
|
18
|
-
orders: number;
|
|
19
|
-
}
|
|
20
|
-
interface TopProduct {
|
|
21
|
-
productId: string;
|
|
22
|
-
name: string;
|
|
23
|
-
quantity: number;
|
|
24
|
-
revenue: number;
|
|
25
|
-
}
|
|
26
|
-
interface TopCategory {
|
|
27
|
-
categoryId: string;
|
|
28
|
-
name: string;
|
|
29
|
-
quantity: number;
|
|
30
|
-
revenue: number;
|
|
31
|
-
}
|
|
32
|
-
interface AnalyticsDashboard {
|
|
33
|
-
summary: AnalyticsSummary;
|
|
34
|
-
trends?: AnalyticsTrend[];
|
|
35
|
-
topProducts?: TopProduct[];
|
|
36
|
-
topCategories?: TopCategory[];
|
|
37
|
-
period: string;
|
|
38
|
-
startDate: string;
|
|
39
|
-
endDate: string;
|
|
40
|
-
}
|
|
41
|
-
interface AnalyticsDashboardParams {
|
|
42
|
-
period?: "7d" | "30d" | "90d" | "1y";
|
|
43
|
-
branchId?: string;
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
/**
|
|
47
|
-
* Analytics API - Dashboard and reporting
|
|
48
|
-
*
|
|
49
|
-
* Endpoints:
|
|
50
|
-
* - getDashboard({ token, params }) - Get dashboard analytics
|
|
51
|
-
*
|
|
52
|
-
* Roles:
|
|
53
|
-
* - admin, superadmin, finance-admin, finance-manager
|
|
54
|
-
*/
|
|
55
|
-
|
|
56
|
-
type FetchOptions = Omit<RequestOptions, "token" | "organizationId">;
|
|
57
|
-
declare class AnalyticsApi {
|
|
58
|
-
private baseUrl;
|
|
59
|
-
constructor();
|
|
60
|
-
/**
|
|
61
|
-
* Get dashboard analytics
|
|
62
|
-
* GET /analytics/dashboard
|
|
63
|
-
*
|
|
64
|
-
* @param token - Auth token (required)
|
|
65
|
-
* @param params.period - Time period: '7d', '30d', '90d', '1y' (default: '30d')
|
|
66
|
-
* @param params.branchId - Optional branch filter
|
|
67
|
-
*/
|
|
68
|
-
getDashboard({ token, params, options, }: {
|
|
69
|
-
token: string;
|
|
70
|
-
params?: AnalyticsDashboardParams;
|
|
71
|
-
options?: FetchOptions;
|
|
72
|
-
}): Promise<ApiResponse<AnalyticsDashboard>>;
|
|
73
|
-
}
|
|
74
|
-
declare const analyticsApi: AnalyticsApi;
|
|
75
|
-
|
|
76
|
-
export { AnalyticsApi as A, type TopProduct as T, analyticsApi as a, type AnalyticsPeriod as b, type AnalyticsSummary as c, type AnalyticsTrend as d, type TopCategory as e, type AnalyticsDashboard as f, type AnalyticsDashboardParams as g };
|
|
@@ -1,280 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @classytic/commerce-sdk - API Factory
|
|
3
|
-
*
|
|
4
|
-
* Base API class that provides standardized CRUD operations.
|
|
5
|
-
* Supports direct field queries and bracket syntax: field[operator]=value
|
|
6
|
-
*/
|
|
7
|
-
/**
|
|
8
|
-
* Base API response wrapper
|
|
9
|
-
* All endpoints return { success: boolean, ... }
|
|
10
|
-
*/
|
|
11
|
-
interface ApiResponse<T = unknown> {
|
|
12
|
-
success: boolean;
|
|
13
|
-
data?: T;
|
|
14
|
-
message?: string;
|
|
15
|
-
}
|
|
16
|
-
/**
|
|
17
|
-
* Offset pagination response (page-based)
|
|
18
|
-
* Used when: ?page=1&limit=10
|
|
19
|
-
*/
|
|
20
|
-
interface OffsetPaginationResponse<T = unknown> {
|
|
21
|
-
success: boolean;
|
|
22
|
-
method: "offset";
|
|
23
|
-
docs: T[];
|
|
24
|
-
page: number;
|
|
25
|
-
limit: number;
|
|
26
|
-
total: number;
|
|
27
|
-
pages: number;
|
|
28
|
-
hasNext: boolean;
|
|
29
|
-
hasPrev: boolean;
|
|
30
|
-
warning?: string;
|
|
31
|
-
}
|
|
32
|
-
/**
|
|
33
|
-
* Keyset pagination response (cursor-based)
|
|
34
|
-
* Used when: ?after=cursor&limit=10
|
|
35
|
-
*/
|
|
36
|
-
interface KeysetPaginationResponse<T = unknown> {
|
|
37
|
-
success: boolean;
|
|
38
|
-
method: "keyset";
|
|
39
|
-
docs: T[];
|
|
40
|
-
limit: number;
|
|
41
|
-
hasMore: boolean;
|
|
42
|
-
next: string | null;
|
|
43
|
-
}
|
|
44
|
-
/**
|
|
45
|
-
* Aggregate pagination response
|
|
46
|
-
* Used for complex aggregation queries
|
|
47
|
-
*/
|
|
48
|
-
interface AggregatePaginationResponse<T = unknown> {
|
|
49
|
-
success: boolean;
|
|
50
|
-
method: "aggregate";
|
|
51
|
-
docs: T[];
|
|
52
|
-
page: number;
|
|
53
|
-
limit: number;
|
|
54
|
-
total: number;
|
|
55
|
-
pages: number;
|
|
56
|
-
hasNext: boolean;
|
|
57
|
-
hasPrev: boolean;
|
|
58
|
-
warning?: string;
|
|
59
|
-
}
|
|
60
|
-
/**
|
|
61
|
-
* Union type for all paginated responses
|
|
62
|
-
*/
|
|
63
|
-
type PaginatedResponse<T = unknown> = OffsetPaginationResponse<T> | KeysetPaginationResponse<T> | AggregatePaginationResponse<T>;
|
|
64
|
-
/**
|
|
65
|
-
* Delete operation response
|
|
66
|
-
* Supports both soft delete (default) and hard delete
|
|
67
|
-
*/
|
|
68
|
-
interface DeleteResponse {
|
|
69
|
-
success: boolean;
|
|
70
|
-
deleted: boolean;
|
|
71
|
-
/** ID of the deleted record */
|
|
72
|
-
id?: string;
|
|
73
|
-
/** @deprecated Use `id` instead */
|
|
74
|
-
productId?: string;
|
|
75
|
-
/** True if soft delete was performed (default behavior) */
|
|
76
|
-
soft?: boolean;
|
|
77
|
-
/** Legacy message field */
|
|
78
|
-
message?: string;
|
|
79
|
-
/** Number of records deleted (for bulk operations) */
|
|
80
|
-
count?: number;
|
|
81
|
-
}
|
|
82
|
-
/**
|
|
83
|
-
* Sort direction
|
|
84
|
-
*/
|
|
85
|
-
type SortDirection = 1 | -1 | "asc" | "desc";
|
|
86
|
-
/**
|
|
87
|
-
* Sort specification
|
|
88
|
-
*/
|
|
89
|
-
type SortSpec = Record<string, SortDirection> | string;
|
|
90
|
-
/**
|
|
91
|
-
* Filter operators supported by query parser
|
|
92
|
-
* Usage: ?field[operator]=value
|
|
93
|
-
*/
|
|
94
|
-
type FilterOperator = "eq" | "ne" | "gt" | "gte" | "lt" | "lte" | "in" | "nin" | "contains" | "startsWith" | "endsWith" | "regex";
|
|
95
|
-
/**
|
|
96
|
-
* Query parameters for list/search operations
|
|
97
|
-
*/
|
|
98
|
-
interface QueryParams {
|
|
99
|
-
page?: number;
|
|
100
|
-
limit?: number;
|
|
101
|
-
after?: string;
|
|
102
|
-
sort?: SortSpec;
|
|
103
|
-
[key: string]: unknown;
|
|
104
|
-
}
|
|
105
|
-
/**
|
|
106
|
-
* Request options
|
|
107
|
-
*/
|
|
108
|
-
interface RequestOptions {
|
|
109
|
-
token?: string | null;
|
|
110
|
-
organizationId?: string | null;
|
|
111
|
-
cache?: RequestCache;
|
|
112
|
-
revalidate?: number;
|
|
113
|
-
tags?: string[];
|
|
114
|
-
headerOptions?: Record<string, string>;
|
|
115
|
-
responseType?: "json" | "blob" | "text";
|
|
116
|
-
}
|
|
117
|
-
interface BaseApiConfig {
|
|
118
|
-
basePath?: string;
|
|
119
|
-
defaultParams?: {
|
|
120
|
-
limit?: number;
|
|
121
|
-
page?: number;
|
|
122
|
-
[key: string]: unknown;
|
|
123
|
-
};
|
|
124
|
-
cache?: RequestCache;
|
|
125
|
-
headers?: Record<string, string>;
|
|
126
|
-
}
|
|
127
|
-
/**
|
|
128
|
-
* Base API class that provides standardized CRUD operations
|
|
129
|
-
* Supports direct field queries and bracket syntax: field[operator]=value
|
|
130
|
-
*
|
|
131
|
-
* @template TDoc - Document type returned by the API
|
|
132
|
-
* @template TCreate - Type for create payload (defaults to Partial<TDoc>)
|
|
133
|
-
* @template TUpdate - Type for update payload (defaults to Partial<TDoc>)
|
|
134
|
-
*/
|
|
135
|
-
declare class BaseApi<TDoc = Record<string, unknown>, TCreate = Partial<TDoc>, TUpdate = Partial<TDoc>> {
|
|
136
|
-
readonly entity: string;
|
|
137
|
-
readonly config: Required<BaseApiConfig>;
|
|
138
|
-
readonly baseUrl: string;
|
|
139
|
-
constructor(entity: string, config?: BaseApiConfig);
|
|
140
|
-
/**
|
|
141
|
-
* Creates query string from parameters
|
|
142
|
-
* Delegates to shared utility from api-handler.ts
|
|
143
|
-
*/
|
|
144
|
-
createQueryString(params?: Record<string, unknown>): string;
|
|
145
|
-
/**
|
|
146
|
-
* Prepares parameters for API request
|
|
147
|
-
* Handles pagination, sorting, and filters
|
|
148
|
-
* Note: Critical security filters (organizationId, ownerId) are ALWAYS sent, even if null
|
|
149
|
-
*/
|
|
150
|
-
prepareParams(params?: QueryParams): Record<string, unknown>;
|
|
151
|
-
/**
|
|
152
|
-
* Get all records with pagination and filtering
|
|
153
|
-
* Returns offset or keyset pagination based on params
|
|
154
|
-
*/
|
|
155
|
-
getAll({ token, organizationId, params, options, }?: {
|
|
156
|
-
token?: string | null;
|
|
157
|
-
organizationId?: string | null;
|
|
158
|
-
params?: QueryParams;
|
|
159
|
-
options?: Omit<RequestOptions, "token" | "organizationId">;
|
|
160
|
-
}): Promise<PaginatedResponse<TDoc>>;
|
|
161
|
-
/**
|
|
162
|
-
* Get a single record by ID
|
|
163
|
-
*/
|
|
164
|
-
getById({ token, organizationId, id, params, options, }: {
|
|
165
|
-
token?: string | null;
|
|
166
|
-
organizationId?: string | null;
|
|
167
|
-
id: string;
|
|
168
|
-
params?: {
|
|
169
|
-
select?: string;
|
|
170
|
-
populate?: string | string[];
|
|
171
|
-
};
|
|
172
|
-
options?: Omit<RequestOptions, "token" | "organizationId">;
|
|
173
|
-
}): Promise<ApiResponse<TDoc>>;
|
|
174
|
-
/**
|
|
175
|
-
* Create a new record
|
|
176
|
-
*/
|
|
177
|
-
create({ token, organizationId, data, options, }: {
|
|
178
|
-
token: string;
|
|
179
|
-
organizationId?: string | null;
|
|
180
|
-
data: TCreate;
|
|
181
|
-
options?: Omit<RequestOptions, "token" | "organizationId">;
|
|
182
|
-
}): Promise<ApiResponse<TDoc>>;
|
|
183
|
-
/**
|
|
184
|
-
* Update an existing record
|
|
185
|
-
*/
|
|
186
|
-
update({ token, organizationId, id, data, options, }: {
|
|
187
|
-
token: string;
|
|
188
|
-
organizationId?: string | null;
|
|
189
|
-
id: string;
|
|
190
|
-
data: TUpdate;
|
|
191
|
-
options?: Omit<RequestOptions, "token" | "organizationId">;
|
|
192
|
-
}): Promise<ApiResponse<TDoc>>;
|
|
193
|
-
/**
|
|
194
|
-
* Delete a record
|
|
195
|
-
*/
|
|
196
|
-
delete({ token, organizationId, id, options, }: {
|
|
197
|
-
token: string;
|
|
198
|
-
organizationId?: string | null;
|
|
199
|
-
id: string;
|
|
200
|
-
options?: Omit<RequestOptions, "token" | "organizationId">;
|
|
201
|
-
}): Promise<DeleteResponse>;
|
|
202
|
-
/**
|
|
203
|
-
* Search with custom parameters
|
|
204
|
-
* @example
|
|
205
|
-
* search({ searchParams: { 'brand[contains]': 'nike' } })
|
|
206
|
-
* search({ searchParams: { upc: '123456789' } })
|
|
207
|
-
*/
|
|
208
|
-
search({ token, organizationId, searchParams, params, options, }?: {
|
|
209
|
-
token?: string | null;
|
|
210
|
-
organizationId?: string | null;
|
|
211
|
-
searchParams?: Record<string, unknown>;
|
|
212
|
-
params?: QueryParams;
|
|
213
|
-
options?: Omit<RequestOptions, "token" | "organizationId">;
|
|
214
|
-
}): Promise<PaginatedResponse<TDoc>>;
|
|
215
|
-
/**
|
|
216
|
-
* Find records by field with optional operator
|
|
217
|
-
* @example
|
|
218
|
-
* findBy({ field: 'brand', value: 'nike', operator: 'contains' })
|
|
219
|
-
* findBy({ field: 'status', value: ['active', 'pending'], operator: 'in' })
|
|
220
|
-
*/
|
|
221
|
-
findBy({ token, organizationId, field, value, operator, params, options, }: {
|
|
222
|
-
token?: string | null;
|
|
223
|
-
organizationId?: string | null;
|
|
224
|
-
field: string;
|
|
225
|
-
value: unknown;
|
|
226
|
-
operator?: FilterOperator;
|
|
227
|
-
params?: QueryParams;
|
|
228
|
-
options?: Omit<RequestOptions, "token" | "organizationId">;
|
|
229
|
-
}): Promise<PaginatedResponse<TDoc>>;
|
|
230
|
-
/**
|
|
231
|
-
* Make a custom API request to a sub-endpoint
|
|
232
|
-
* @example
|
|
233
|
-
* request('POST', `${this.baseUrl}/${id}/action`, { token, data: { ... } })
|
|
234
|
-
*/
|
|
235
|
-
request<TResponse = unknown>(method: "GET" | "POST" | "PATCH" | "PUT" | "DELETE", endpoint: string, { token, organizationId, data, params, options, }?: {
|
|
236
|
-
token?: string;
|
|
237
|
-
organizationId?: string | null;
|
|
238
|
-
data?: unknown;
|
|
239
|
-
params?: QueryParams;
|
|
240
|
-
options?: Omit<RequestOptions, "token" | "organizationId">;
|
|
241
|
-
}): Promise<TResponse>;
|
|
242
|
-
}
|
|
243
|
-
/**
|
|
244
|
-
* Factory function to create a typed BaseApi instance
|
|
245
|
-
*
|
|
246
|
-
* @template TDoc - Document type returned by the API
|
|
247
|
-
* @template TCreate - Type for create payload
|
|
248
|
-
* @template TUpdate - Type for update payload
|
|
249
|
-
*
|
|
250
|
-
* @example
|
|
251
|
-
* // Simple usage
|
|
252
|
-
* const productApi = createCrudApi('products');
|
|
253
|
-
*
|
|
254
|
-
* // With types
|
|
255
|
-
* interface Product { _id: string; name: string; price: number; }
|
|
256
|
-
* interface CreateProduct { name: string; price: number; }
|
|
257
|
-
* const productApi = createCrudApi<Product, CreateProduct>('products');
|
|
258
|
-
*
|
|
259
|
-
* // With custom config
|
|
260
|
-
* const productApi = createCrudApi('products', { basePath: '/api/v2' });
|
|
261
|
-
*/
|
|
262
|
-
declare function createCrudApi<TDoc = Record<string, unknown>, TCreate = Partial<TDoc>, TUpdate = Partial<TDoc>>(entity: string, config?: BaseApiConfig): BaseApi<TDoc, TCreate, TUpdate>;
|
|
263
|
-
/**
|
|
264
|
-
* Extract document type from paginated response
|
|
265
|
-
*/
|
|
266
|
-
type ExtractDoc<T> = T extends PaginatedResponse<infer D> ? D : never;
|
|
267
|
-
/**
|
|
268
|
-
* Helper to check if response is offset pagination
|
|
269
|
-
*/
|
|
270
|
-
declare function isOffsetPagination<T>(response: PaginatedResponse<T>): response is OffsetPaginationResponse<T>;
|
|
271
|
-
/**
|
|
272
|
-
* Helper to check if response is keyset pagination
|
|
273
|
-
*/
|
|
274
|
-
declare function isKeysetPagination<T>(response: PaginatedResponse<T>): response is KeysetPaginationResponse<T>;
|
|
275
|
-
/**
|
|
276
|
-
* Helper to check if response is aggregate pagination
|
|
277
|
-
*/
|
|
278
|
-
declare function isAggregatePagination<T>(response: PaginatedResponse<T>): response is AggregatePaginationResponse<T>;
|
|
279
|
-
|
|
280
|
-
export { type ApiResponse as A, BaseApi as B, type DeleteResponse as D, type ExtractDoc as E, type FilterOperator as F, type KeysetPaginationResponse as K, type OffsetPaginationResponse as O, type PaginatedResponse as P, type QueryParams as Q, type RequestOptions as R, type SortDirection as S, isKeysetPagination as a, isAggregatePagination as b, createCrudApi as c, type AggregatePaginationResponse as d, type SortSpec as e, type BaseApiConfig as f, isOffsetPagination as i };
|
package/dist/auth/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"index.js"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"index.js"}
|
package/dist/chunk-24FDD6UR.js
DELETED
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
import { BaseApi } from './chunk-QCTXAMLA.js';
|
|
2
|
-
import { handleApiRequest } from './chunk-IHCBBLLW.js';
|
|
3
|
-
|
|
4
|
-
// src/inventory/api/movement.ts
|
|
5
|
-
var MovementApi = class extends BaseApi {
|
|
6
|
-
constructor(config = {}) {
|
|
7
|
-
super("inventory/movements", config);
|
|
8
|
-
}
|
|
9
|
-
/**
|
|
10
|
-
* Get stock movements (audit trail)
|
|
11
|
-
* GET /inventory/movements
|
|
12
|
-
*
|
|
13
|
-
* @param params - Filters (productId, branchId, type, startDate, endDate, page, limit, sort, after/cursor)
|
|
14
|
-
*/
|
|
15
|
-
async list({
|
|
16
|
-
token,
|
|
17
|
-
params = {},
|
|
18
|
-
options = {}
|
|
19
|
-
}) {
|
|
20
|
-
const processedParams = this.prepareParams(params);
|
|
21
|
-
const queryString = this.createQueryString(processedParams);
|
|
22
|
-
return handleApiRequest("GET", `${this.baseUrl}?${queryString}`, {
|
|
23
|
-
token,
|
|
24
|
-
cache: this.config.cache,
|
|
25
|
-
...options
|
|
26
|
-
});
|
|
27
|
-
}
|
|
28
|
-
/**
|
|
29
|
-
* Get movements by type
|
|
30
|
-
* GET /inventory/movements?type=<type>
|
|
31
|
-
*/
|
|
32
|
-
async listByType({
|
|
33
|
-
token,
|
|
34
|
-
type,
|
|
35
|
-
params = {},
|
|
36
|
-
options = {}
|
|
37
|
-
}) {
|
|
38
|
-
return this.list({ token, params: { ...params, type }, options });
|
|
39
|
-
}
|
|
40
|
-
/**
|
|
41
|
-
* Get movements for a specific product
|
|
42
|
-
* GET /inventory/movements?productId=<id>
|
|
43
|
-
*/
|
|
44
|
-
async listByProduct({
|
|
45
|
-
token,
|
|
46
|
-
productId,
|
|
47
|
-
params = {},
|
|
48
|
-
options = {}
|
|
49
|
-
}) {
|
|
50
|
-
return this.list({ token, params: { ...params, productId }, options });
|
|
51
|
-
}
|
|
52
|
-
/**
|
|
53
|
-
* Get low stock items
|
|
54
|
-
* GET /inventory/low-stock
|
|
55
|
-
*/
|
|
56
|
-
async lowStock({
|
|
57
|
-
token,
|
|
58
|
-
params = {},
|
|
59
|
-
options = {}
|
|
60
|
-
}) {
|
|
61
|
-
const processedParams = this.prepareParams(params);
|
|
62
|
-
const queryString = this.createQueryString(processedParams);
|
|
63
|
-
const baseUrl = this.baseUrl.replace("/movements", "/low-stock");
|
|
64
|
-
return handleApiRequest("GET", `${baseUrl}?${queryString}`, {
|
|
65
|
-
token,
|
|
66
|
-
cache: this.config.cache,
|
|
67
|
-
...options
|
|
68
|
-
});
|
|
69
|
-
}
|
|
70
|
-
};
|
|
71
|
-
var movementApi = new MovementApi();
|
|
72
|
-
|
|
73
|
-
export { MovementApi, movementApi };
|
|
74
|
-
//# sourceMappingURL=chunk-24FDD6UR.js.map
|
|
75
|
-
//# sourceMappingURL=chunk-24FDD6UR.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/inventory/api/movement.ts"],"names":[],"mappings":";;;;AAiBA,IAAM,WAAA,GAAN,cAA0B,OAAA,CAAuB;AAAA,EAC/C,WAAA,CAAY,MAAA,GAAS,EAAC,EAAG;AACvB,IAAA,KAAA,CAAM,uBAAuB,MAAM,CAAA;AAAA,EACrC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,MAAM,IAAA,CAAK;AAAA,IACT,KAAA;AAAA,IACA,SAAS,EAAC;AAAA,IACV,UAAU;AAAC,GACb,EAI8C;AAC5C,IAAA,MAAM,eAAA,GAAkB,IAAA,CAAK,aAAA,CAAc,MAAiC,CAAA;AAC5E,IAAA,MAAM,WAAA,GAAc,IAAA,CAAK,iBAAA,CAAkB,eAAe,CAAA;AAE1D,IAAA,OAAO,iBAAiB,KAAA,EAAO,CAAA,EAAG,KAAK,OAAO,CAAA,CAAA,EAAI,WAAW,CAAA,CAAA,EAAI;AAAA,MAC/D,KAAA;AAAA,MACA,KAAA,EAAO,KAAK,MAAA,CAAO,KAAA;AAAA,MACnB,GAAG;AAAA,KACJ,CAAA;AAAA,EACH;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAM,UAAA,CAAW;AAAA,IACf,KAAA;AAAA,IACA,IAAA;AAAA,IACA,SAAS,EAAC;AAAA,IACV,UAAU;AAAC,GACb,EAK8C;AAC5C,IAAA,OAAO,IAAA,CAAK,IAAA,CAAK,EAAE,KAAA,EAAO,MAAA,EAAQ,EAAE,GAAG,MAAA,EAAQ,IAAA,EAAK,EAAG,OAAA,EAAS,CAAA;AAAA,EAClE;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAM,aAAA,CAAc;AAAA,IAClB,KAAA;AAAA,IACA,SAAA;AAAA,IACA,SAAS,EAAC;AAAA,IACV,UAAU;AAAC,GACb,EAK8C;AAC5C,IAAA,OAAO,IAAA,CAAK,IAAA,CAAK,EAAE,KAAA,EAAO,MAAA,EAAQ,EAAE,GAAG,MAAA,EAAQ,SAAA,EAAU,EAAG,OAAA,EAAS,CAAA;AAAA,EACvE;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,MAAM,QAAA,CAAS;AAAA,IACb,KAAA;AAAA,IACA,SAAS,EAAC;AAAA,IACV,UAAU;AAAC,GACb,EAIyC;AACvC,IAAA,MAAM,eAAA,GAAkB,IAAA,CAAK,aAAA,CAAc,MAAM,CAAA;AACjD,IAAA,MAAM,WAAA,GAAc,IAAA,CAAK,iBAAA,CAAkB,eAAe,CAAA;AAC1D,IAAA,MAAM,OAAA,GAAU,IAAA,CAAK,OAAA,CAAQ,OAAA,CAAQ,cAAc,YAAY,CAAA;AAE/D,IAAA,OAAO,iBAAiB,KAAA,EAAO,CAAA,EAAG,OAAO,CAAA,CAAA,EAAI,WAAW,CAAA,CAAA,EAAI;AAAA,MAC1D,KAAA;AAAA,MACA,KAAA,EAAO,KAAK,MAAA,CAAO,KAAA;AAAA,MACnB,GAAG;AAAA,KACJ,CAAA;AAAA,EACH;AACF;AAEO,IAAM,WAAA,GAAc,IAAI,WAAA","file":"chunk-24FDD6UR.js","sourcesContent":["/**\r\n * Movement API - Stock Audit Trail\r\n *\r\n * Every stock change creates an immutable StockMovement record.\r\n * Types: purchase, sale, return, adjustment, transfer_in, transfer_out, initial, recount\r\n */\r\n\r\nimport { BaseApi, type ApiResponse, type PaginatedResponse, type RequestOptions } from \"../../core/api-factory\";\r\nimport { handleApiRequest } from \"../../core/api-handler\";\r\nimport type {\r\n StockMovement,\r\n MovementQueryParams,\r\n LowStockItem,\r\n} from \"../types\";\r\n\r\ntype FetchOptions = Omit<RequestOptions, \"token\" | \"organizationId\">;\r\n\r\nclass MovementApi extends BaseApi<StockMovement> {\r\n constructor(config = {}) {\r\n super(\"inventory/movements\", config);\r\n }\r\n\r\n /**\r\n * Get stock movements (audit trail)\r\n * GET /inventory/movements\r\n *\r\n * @param params - Filters (productId, branchId, type, startDate, endDate, page, limit, sort, after/cursor)\r\n */\r\n async list({\r\n token,\r\n params = {},\r\n options = {},\r\n }: {\r\n token: string;\r\n params?: MovementQueryParams;\r\n options?: FetchOptions;\r\n }): Promise<PaginatedResponse<StockMovement>> {\r\n const processedParams = this.prepareParams(params as Record<string, unknown>);\r\n const queryString = this.createQueryString(processedParams);\r\n\r\n return handleApiRequest(\"GET\", `${this.baseUrl}?${queryString}`, {\r\n token,\r\n cache: this.config.cache,\r\n ...options,\r\n });\r\n }\r\n\r\n /**\r\n * Get movements by type\r\n * GET /inventory/movements?type=<type>\r\n */\r\n async listByType({\r\n token,\r\n type,\r\n params = {},\r\n options = {},\r\n }: {\r\n token: string;\r\n type: StockMovement[\"type\"];\r\n params?: Omit<MovementQueryParams, \"type\">;\r\n options?: FetchOptions;\r\n }): Promise<PaginatedResponse<StockMovement>> {\r\n return this.list({ token, params: { ...params, type }, options });\r\n }\r\n\r\n /**\r\n * Get movements for a specific product\r\n * GET /inventory/movements?productId=<id>\r\n */\r\n async listByProduct({\r\n token,\r\n productId,\r\n params = {},\r\n options = {},\r\n }: {\r\n token: string;\r\n productId: string;\r\n params?: Omit<MovementQueryParams, \"productId\">;\r\n options?: FetchOptions;\r\n }): Promise<PaginatedResponse<StockMovement>> {\r\n return this.list({ token, params: { ...params, productId }, options });\r\n }\r\n\r\n /**\r\n * Get low stock items\r\n * GET /inventory/low-stock\r\n */\r\n async lowStock({\r\n token,\r\n params = {},\r\n options = {},\r\n }: {\r\n token: string;\r\n params?: { branchId?: string; threshold?: number };\r\n options?: FetchOptions;\r\n }): Promise<ApiResponse<LowStockItem[]>> {\r\n const processedParams = this.prepareParams(params);\r\n const queryString = this.createQueryString(processedParams);\r\n const baseUrl = this.baseUrl.replace(\"/movements\", \"/low-stock\");\r\n\r\n return handleApiRequest(\"GET\", `${baseUrl}?${queryString}`, {\r\n token,\r\n cache: this.config.cache,\r\n ...options,\r\n });\r\n }\r\n}\r\n\r\nexport const movementApi = new MovementApi();\r\nexport { MovementApi };\r\n"]}
|
package/dist/chunk-2TF7QNYV.js
DELETED
|
@@ -1,159 +0,0 @@
|
|
|
1
|
-
import { BaseApi } from './chunk-QCTXAMLA.js';
|
|
2
|
-
import { handleApiRequest } from './chunk-IHCBBLLW.js';
|
|
3
|
-
|
|
4
|
-
// src/inventory/api/request.ts
|
|
5
|
-
var RequestApi = class extends BaseApi {
|
|
6
|
-
constructor(config = {}) {
|
|
7
|
-
super("inventory/requests", config);
|
|
8
|
-
}
|
|
9
|
-
/**
|
|
10
|
-
* List stock requests
|
|
11
|
-
* GET /inventory/requests
|
|
12
|
-
*/
|
|
13
|
-
async list({
|
|
14
|
-
token,
|
|
15
|
-
params = {},
|
|
16
|
-
options = {}
|
|
17
|
-
}) {
|
|
18
|
-
const processedParams = this.prepareParams(params);
|
|
19
|
-
const queryString = this.createQueryString(processedParams);
|
|
20
|
-
return handleApiRequest("GET", `${this.baseUrl}?${queryString}`, {
|
|
21
|
-
token,
|
|
22
|
-
cache: this.config.cache,
|
|
23
|
-
...options
|
|
24
|
-
});
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* List pending stock requests
|
|
28
|
-
* GET /inventory/requests?status=pending
|
|
29
|
-
*/
|
|
30
|
-
async listPending({
|
|
31
|
-
token,
|
|
32
|
-
options = {}
|
|
33
|
-
}) {
|
|
34
|
-
return this.list({ token, params: { status: "pending" }, options });
|
|
35
|
-
}
|
|
36
|
-
/**
|
|
37
|
-
* Get stock request by ID
|
|
38
|
-
* GET /inventory/requests/:id
|
|
39
|
-
*/
|
|
40
|
-
async getById({
|
|
41
|
-
token,
|
|
42
|
-
id,
|
|
43
|
-
options = {}
|
|
44
|
-
}) {
|
|
45
|
-
if (!id) {
|
|
46
|
-
throw new Error("Request ID is required");
|
|
47
|
-
}
|
|
48
|
-
return handleApiRequest("GET", `${this.baseUrl}/${id}`, {
|
|
49
|
-
token,
|
|
50
|
-
cache: this.config.cache,
|
|
51
|
-
...options
|
|
52
|
-
});
|
|
53
|
-
}
|
|
54
|
-
/**
|
|
55
|
-
* Create a stock request
|
|
56
|
-
* POST /inventory/requests
|
|
57
|
-
*/
|
|
58
|
-
async create({
|
|
59
|
-
token,
|
|
60
|
-
data,
|
|
61
|
-
options = {}
|
|
62
|
-
}) {
|
|
63
|
-
return handleApiRequest("POST", this.baseUrl, {
|
|
64
|
-
token,
|
|
65
|
-
body: data,
|
|
66
|
-
cache: this.config.cache,
|
|
67
|
-
...options
|
|
68
|
-
});
|
|
69
|
-
}
|
|
70
|
-
// ==================== Stock Request Actions ====================
|
|
71
|
-
/**
|
|
72
|
-
* Generic action endpoint
|
|
73
|
-
* POST /inventory/requests/:id/action
|
|
74
|
-
*/
|
|
75
|
-
async action({
|
|
76
|
-
token,
|
|
77
|
-
id,
|
|
78
|
-
action,
|
|
79
|
-
data = {},
|
|
80
|
-
options = {}
|
|
81
|
-
}) {
|
|
82
|
-
if (!id) {
|
|
83
|
-
throw new Error("Request ID is required");
|
|
84
|
-
}
|
|
85
|
-
return handleApiRequest("POST", `${this.baseUrl}/${id}/action`, {
|
|
86
|
-
token,
|
|
87
|
-
body: { action, ...data },
|
|
88
|
-
cache: this.config.cache,
|
|
89
|
-
...options
|
|
90
|
-
});
|
|
91
|
-
}
|
|
92
|
-
/**
|
|
93
|
-
* Approve a stock request
|
|
94
|
-
*/
|
|
95
|
-
async approve({
|
|
96
|
-
token,
|
|
97
|
-
id,
|
|
98
|
-
items,
|
|
99
|
-
reviewNotes,
|
|
100
|
-
notes,
|
|
101
|
-
options = {}
|
|
102
|
-
}) {
|
|
103
|
-
return this.action({
|
|
104
|
-
token,
|
|
105
|
-
id,
|
|
106
|
-
action: "approve",
|
|
107
|
-
data: { items, reviewNotes: reviewNotes ?? notes },
|
|
108
|
-
options
|
|
109
|
-
});
|
|
110
|
-
}
|
|
111
|
-
/**
|
|
112
|
-
* Reject a stock request
|
|
113
|
-
*/
|
|
114
|
-
async reject({
|
|
115
|
-
token,
|
|
116
|
-
id,
|
|
117
|
-
reason,
|
|
118
|
-
options = {}
|
|
119
|
-
}) {
|
|
120
|
-
return this.action({ token, id, action: "reject", data: { reason }, options });
|
|
121
|
-
}
|
|
122
|
-
/**
|
|
123
|
-
* Fulfill a stock request (creates a transfer)
|
|
124
|
-
* Head office assigns carton numbers here for label printing
|
|
125
|
-
*/
|
|
126
|
-
async fulfill({
|
|
127
|
-
token,
|
|
128
|
-
id,
|
|
129
|
-
remarks,
|
|
130
|
-
documentType,
|
|
131
|
-
items,
|
|
132
|
-
transport,
|
|
133
|
-
options = {}
|
|
134
|
-
}) {
|
|
135
|
-
return this.action({
|
|
136
|
-
token,
|
|
137
|
-
id,
|
|
138
|
-
action: "fulfill",
|
|
139
|
-
data: { remarks, documentType, items, transport },
|
|
140
|
-
options
|
|
141
|
-
});
|
|
142
|
-
}
|
|
143
|
-
/**
|
|
144
|
-
* Cancel a stock request
|
|
145
|
-
*/
|
|
146
|
-
async cancel({
|
|
147
|
-
token,
|
|
148
|
-
id,
|
|
149
|
-
reason,
|
|
150
|
-
options = {}
|
|
151
|
-
}) {
|
|
152
|
-
return this.action({ token, id, action: "cancel", data: { reason }, options });
|
|
153
|
-
}
|
|
154
|
-
};
|
|
155
|
-
var requestApi = new RequestApi();
|
|
156
|
-
|
|
157
|
-
export { RequestApi, requestApi };
|
|
158
|
-
//# sourceMappingURL=chunk-2TF7QNYV.js.map
|
|
159
|
-
//# sourceMappingURL=chunk-2TF7QNYV.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/inventory/api/request.ts"],"names":[],"mappings":"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","file":"chunk-2TF7QNYV.js","sourcesContent":["/**\r\n * Stock Request API - Sub-branch -> Head Office requests\r\n *\r\n * Handles stock requests from sub-branches following the Stripe action-based pattern.\r\n * Status flow: pending -> approved -> fulfilled (or rejected/cancelled)\r\n */\r\n\r\nimport { BaseApi, type ApiResponse, type PaginatedResponse, type RequestOptions } from \"../../core/api-factory\";\r\nimport { handleApiRequest } from \"../../core/api-handler\";\r\nimport type {\r\n StockRequest,\r\n CreateStockRequestPayload,\r\n} from \"../types\";\r\n\r\ntype FetchOptions = Omit<RequestOptions, \"token\" | \"organizationId\">;\r\n\r\nclass RequestApi extends BaseApi<StockRequest, CreateStockRequestPayload> {\r\n constructor(config = {}) {\r\n super(\"inventory/requests\", config);\r\n }\r\n\r\n /**\r\n * List stock requests\r\n * GET /inventory/requests\r\n */\r\n async list({\r\n token,\r\n params = {},\r\n options = {},\r\n }: {\r\n token: string;\r\n params?: Record<string, unknown>;\r\n options?: FetchOptions;\r\n }): Promise<PaginatedResponse<StockRequest>> {\r\n const processedParams = this.prepareParams(params);\r\n const queryString = this.createQueryString(processedParams);\r\n\r\n return handleApiRequest(\"GET\", `${this.baseUrl}?${queryString}`, {\r\n token,\r\n cache: this.config.cache,\r\n ...options,\r\n });\r\n }\r\n\r\n /**\r\n * List pending stock requests\r\n * GET /inventory/requests?status=pending\r\n */\r\n async listPending({\r\n token,\r\n options = {},\r\n }: {\r\n token: string;\r\n options?: FetchOptions;\r\n }): Promise<PaginatedResponse<StockRequest>> {\r\n return this.list({ token, params: { status: \"pending\" }, options });\r\n }\r\n\r\n /**\r\n * Get stock request by ID\r\n * GET /inventory/requests/:id\r\n */\r\n async getById({\r\n token,\r\n id,\r\n options = {},\r\n }: {\r\n token: string;\r\n id: string;\r\n options?: FetchOptions;\r\n }): Promise<ApiResponse<StockRequest>> {\r\n if (!id) {\r\n throw new Error(\"Request ID is required\");\r\n }\r\n\r\n return handleApiRequest(\"GET\", `${this.baseUrl}/${id}`, {\r\n token,\r\n cache: this.config.cache,\r\n ...options,\r\n });\r\n }\r\n\r\n /**\r\n * Create a stock request\r\n * POST /inventory/requests\r\n */\r\n async create({\r\n token,\r\n data,\r\n options = {},\r\n }: {\r\n token: string;\r\n data: CreateStockRequestPayload;\r\n options?: FetchOptions;\r\n }): Promise<ApiResponse<StockRequest>> {\r\n return handleApiRequest(\"POST\", this.baseUrl, {\r\n token,\r\n body: data,\r\n cache: this.config.cache,\r\n ...options,\r\n });\r\n }\r\n\r\n // ==================== Stock Request Actions ====================\r\n\r\n /**\r\n * Generic action endpoint\r\n * POST /inventory/requests/:id/action\r\n */\r\n async action({\r\n token,\r\n id,\r\n action,\r\n data = {},\r\n options = {},\r\n }: {\r\n token: string;\r\n id: string;\r\n action: \"approve\" | \"reject\" | \"fulfill\" | \"cancel\";\r\n data?: Record<string, unknown>;\r\n options?: FetchOptions;\r\n }): Promise<ApiResponse<StockRequest>> {\r\n if (!id) {\r\n throw new Error(\"Request ID is required\");\r\n }\r\n\r\n return handleApiRequest(\"POST\", `${this.baseUrl}/${id}/action`, {\r\n token,\r\n body: { action, ...data },\r\n cache: this.config.cache,\r\n ...options,\r\n });\r\n }\r\n\r\n /**\r\n * Approve a stock request\r\n */\r\n async approve({\r\n token,\r\n id,\r\n items,\r\n reviewNotes,\r\n notes,\r\n options = {},\r\n }: {\r\n token: string;\r\n id: string;\r\n items?: { productId: string; variantSku?: string; quantityApproved: number }[];\r\n reviewNotes?: string;\r\n notes?: string;\r\n options?: FetchOptions;\r\n }): Promise<ApiResponse<StockRequest>> {\r\n return this.action({\r\n token,\r\n id,\r\n action: \"approve\",\r\n data: { items, reviewNotes: reviewNotes ?? notes },\r\n options,\r\n });\r\n }\r\n\r\n /**\r\n * Reject a stock request\r\n */\r\n async reject({\r\n token,\r\n id,\r\n reason,\r\n options = {},\r\n }: {\r\n token: string;\r\n id: string;\r\n reason: string;\r\n options?: FetchOptions;\r\n }): Promise<ApiResponse<StockRequest>> {\r\n return this.action({ token, id, action: \"reject\", data: { reason }, options });\r\n }\r\n\r\n /**\r\n * Fulfill a stock request (creates a transfer)\r\n * Head office assigns carton numbers here for label printing\r\n */\r\n async fulfill({\r\n token,\r\n id,\r\n remarks,\r\n documentType,\r\n items,\r\n transport,\r\n options = {},\r\n }: {\r\n token: string;\r\n id: string;\r\n remarks?: string;\r\n documentType?: string;\r\n items?: { productId: string; variantSku?: string; quantity: number; cartonNumber?: string }[];\r\n transport?: { vehicleNumber?: string; driverName?: string; driverPhone?: string };\r\n options?: FetchOptions;\r\n }): Promise<ApiResponse<StockRequest>> {\r\n return this.action({\r\n token,\r\n id,\r\n action: \"fulfill\",\r\n data: { remarks, documentType, items, transport },\r\n options,\r\n });\r\n }\r\n\r\n /**\r\n * Cancel a stock request\r\n */\r\n async cancel({\r\n token,\r\n id,\r\n reason,\r\n options = {},\r\n }: {\r\n token: string;\r\n id: string;\r\n reason?: string;\r\n options?: FetchOptions;\r\n }): Promise<ApiResponse<StockRequest>> {\r\n return this.action({ token, id, action: \"cancel\", data: { reason }, options });\r\n }\r\n}\r\n\r\nexport const requestApi = new RequestApi();\r\nexport { RequestApi };\r\n"]}
|