@hszrdm/core 1.4.0 → 1.6.0
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/.medusa/server/src/admin/index.js +6361 -3789
- package/.medusa/server/src/admin/index.mjs +6361 -3789
- package/.medusa/server/src/api/admin/back-in-stock/route.d.ts +2 -0
- package/.medusa/server/src/api/admin/back-in-stock/route.js +70 -0
- package/.medusa/server/src/api/admin/core-carts/[id]/items/[itemId]/route.d.ts +3 -0
- package/.medusa/server/src/api/admin/core-carts/[id]/items/[itemId]/route.js +64 -0
- package/.medusa/server/src/api/admin/core-carts/[id]/items/route.d.ts +2 -0
- package/.medusa/server/src/api/admin/core-carts/[id]/items/route.js +40 -0
- package/.medusa/server/src/api/admin/core-carts/[id]/promotions/[code]/route.d.ts +2 -0
- package/.medusa/server/src/api/admin/core-carts/[id]/promotions/[code]/route.js +40 -0
- package/.medusa/server/src/api/admin/core-carts/[id]/promotions/route.d.ts +2 -0
- package/.medusa/server/src/api/admin/core-carts/[id]/promotions/route.js +41 -0
- package/.medusa/server/src/api/admin/core-carts/[id]/route.d.ts +2 -0
- package/.medusa/server/src/api/admin/core-carts/[id]/route.js +28 -0
- package/.medusa/server/src/api/admin/core-carts/customer/[id]/route.d.ts +2 -0
- package/.medusa/server/src/api/admin/core-carts/customer/[id]/route.js +34 -0
- package/.medusa/server/src/api/admin/core-carts/route.d.ts +3 -0
- package/.medusa/server/src/api/admin/core-carts/route.js +69 -0
- package/.medusa/server/src/api/admin/customer-activation/route.d.ts +2 -0
- package/.medusa/server/src/api/admin/customer-activation/route.js +97 -0
- package/.medusa/server/src/api/admin/customer-import/route.d.ts +2 -0
- package/.medusa/server/src/api/admin/customer-import/route.js +166 -0
- package/.medusa/server/src/api/admin/order-export/route.d.ts +2 -0
- package/.medusa/server/src/api/admin/order-export/route.js +88 -0
- package/.medusa/server/src/api/admin/product-migration/inventory/route.d.ts +3 -0
- package/.medusa/server/src/api/admin/product-migration/inventory/route.js +164 -0
- package/.medusa/server/src/api/admin/product-migration/price-list-prices/route.d.ts +3 -0
- package/.medusa/server/src/api/admin/product-migration/price-list-prices/route.js +204 -0
- package/.medusa/server/src/api/admin/product-migration/products/route.d.ts +2 -0
- package/.medusa/server/src/api/admin/product-migration/products/route.js +24 -0
- package/.medusa/server/src/api/admin/product-reviews/[id]/route.js +36 -4
- package/.medusa/server/src/api/admin/product-reviews/settings/route.d.ts +3 -0
- package/.medusa/server/src/api/admin/product-reviews/settings/route.js +63 -0
- package/.medusa/server/src/api/admin/shared-cart/settings/route.d.ts +5 -0
- package/.medusa/server/src/api/admin/shared-cart/settings/route.js +31 -0
- package/.medusa/server/src/api/admin/system-runtime/route.d.ts +2 -0
- package/.medusa/server/src/api/admin/system-runtime/route.js +18 -0
- package/.medusa/server/src/api/hooks/packeta/status/route.d.ts +2 -0
- package/.medusa/server/src/api/hooks/packeta/status/route.js +55 -0
- package/.medusa/server/src/api/middlewares.js +24 -1
- package/.medusa/server/src/api/store/abandoned-cart/recover/route.d.ts +2 -0
- package/.medusa/server/src/api/store/abandoned-cart/recover/route.js +37 -0
- package/.medusa/server/src/api/store/back-in-stock/route.d.ts +8 -0
- package/.medusa/server/src/api/store/back-in-stock/route.js +124 -0
- package/.medusa/server/src/api/store/core-carts/me/active/route.d.ts +2 -0
- package/.medusa/server/src/api/store/core-carts/me/active/route.js +54 -0
- package/.medusa/server/src/api/store/customer-activation/complete/route.d.ts +2 -0
- package/.medusa/server/src/api/store/customer-activation/complete/route.js +96 -0
- package/.medusa/server/src/api/store/customer-activation/route.d.ts +2 -0
- package/.medusa/server/src/api/store/customer-activation/route.js +34 -0
- package/.medusa/server/src/api/store/products/[id]/reviews/route.d.ts +1 -0
- package/.medusa/server/src/api/store/products/[id]/reviews/route.js +76 -34
- package/.medusa/server/src/api/store/review-request/route.d.ts +2 -0
- package/.medusa/server/src/api/store/review-request/route.js +60 -0
- package/.medusa/server/src/api/store/shared-carts/[token]/route.d.ts +2 -0
- package/.medusa/server/src/api/store/shared-carts/[token]/route.js +52 -0
- package/.medusa/server/src/api/store/shared-carts/route.d.ts +13 -0
- package/.medusa/server/src/api/store/shared-carts/route.js +78 -0
- package/.medusa/server/src/core/abandoned-cart.d.ts +64 -0
- package/.medusa/server/src/core/abandoned-cart.js +197 -0
- package/.medusa/server/src/core/admin-cart-management.d.ts +18 -0
- package/.medusa/server/src/core/admin-cart-management.js +102 -0
- package/.medusa/server/src/core/admin-cart-visibility.d.ts +94 -0
- package/.medusa/server/src/core/admin-cart-visibility.js +192 -0
- package/.medusa/server/src/core/back-in-stock.d.ts +51 -0
- package/.medusa/server/src/core/back-in-stock.js +107 -0
- package/.medusa/server/src/core/cart-observability.d.ts +23 -0
- package/.medusa/server/src/core/cart-observability.js +54 -0
- package/.medusa/server/src/core/checkout-contract.d.ts +1 -0
- package/.medusa/server/src/core/checkout-contract.js +2 -1
- package/.medusa/server/src/core/customer-account-contract.d.ts +3 -0
- package/.medusa/server/src/core/customer-account-contract.js +4 -1
- package/.medusa/server/src/core/customer-activation.d.ts +120 -0
- package/.medusa/server/src/core/customer-activation.js +169 -0
- package/.medusa/server/src/core/customer-cart-resume.d.ts +21 -0
- package/.medusa/server/src/core/customer-cart-resume.js +72 -0
- package/.medusa/server/src/core/customer-email.d.ts +1 -1
- package/.medusa/server/src/core/customer-email.js +4 -1
- package/.medusa/server/src/core/native-migration-export.d.ts +6 -0
- package/.medusa/server/src/core/native-migration-export.js +105 -0
- package/.medusa/server/src/core/order-export.d.ts +11 -0
- package/.medusa/server/src/core/order-export.js +297 -0
- package/.medusa/server/src/core/review-request.d.ts +61 -0
- package/.medusa/server/src/core/review-request.js +105 -0
- package/.medusa/server/src/core/review-reward.d.ts +94 -0
- package/.medusa/server/src/core/review-reward.js +124 -0
- package/.medusa/server/src/core/runtime-health.d.ts +39 -0
- package/.medusa/server/src/core/runtime-health.js +250 -0
- package/.medusa/server/src/core/storefront-core-config.d.ts +10 -0
- package/.medusa/server/src/core/storefront-core-config.js +26 -1
- package/.medusa/server/src/core/version.d.ts +2 -2
- package/.medusa/server/src/core/version.js +2 -2
- package/.medusa/server/src/jobs/abandoned-cart-recovery.d.ts +23 -0
- package/.medusa/server/src/jobs/abandoned-cart-recovery.js +137 -0
- package/.medusa/server/src/jobs/back-in-stock-reconciliation.d.ts +15 -0
- package/.medusa/server/src/jobs/back-in-stock-reconciliation.js +90 -0
- package/.medusa/server/src/jobs/dpd-statusdata-sync.d.ts +17 -0
- package/.medusa/server/src/jobs/dpd-statusdata-sync.js +107 -0
- package/.medusa/server/src/jobs/mpl-push-tracking.d.ts +19 -0
- package/.medusa/server/src/jobs/mpl-push-tracking.js +183 -0
- package/.medusa/server/src/jobs/mpl-status-sync.d.ts +8 -2
- package/.medusa/server/src/jobs/mpl-status-sync.js +12 -7
- package/.medusa/server/src/jobs/product-review-request-dispatch.d.ts +28 -0
- package/.medusa/server/src/jobs/product-review-request-dispatch.js +84 -0
- package/.medusa/server/src/jobs/runtime-heartbeat.d.ts +12 -0
- package/.medusa/server/src/jobs/runtime-heartbeat.js +13 -0
- package/.medusa/server/src/jobs/shipping-status-sync.d.ts +8 -2
- package/.medusa/server/src/jobs/shipping-status-sync.js +11 -14
- package/.medusa/server/src/lib/modules/shipping/idempotency.js +3 -3
- package/.medusa/server/src/lib/modules/shipping/index.d.ts +1 -0
- package/.medusa/server/src/lib/modules/shipping/index.js +2 -1
- package/.medusa/server/src/lib/modules/shipping/tracking.d.ts +48 -0
- package/.medusa/server/src/lib/modules/shipping/tracking.js +368 -0
- package/.medusa/server/src/lib/modules/shipping/webhooks.d.ts +6 -9
- package/.medusa/server/src/lib/modules/shipping/webhooks.js +24 -137
- package/.medusa/server/src/modules/back-in-stock/index.d.ts +23 -0
- package/.medusa/server/src/modules/back-in-stock/index.js +16 -0
- package/.medusa/server/src/modules/back-in-stock/migrations/Migration20261101202000.d.ts +5 -0
- package/.medusa/server/src/modules/back-in-stock/migrations/Migration20261101202000.js +18 -0
- package/.medusa/server/src/modules/back-in-stock/models/back-in-stock-subscription.d.ts +13 -0
- package/.medusa/server/src/modules/back-in-stock/models/back-in-stock-subscription.js +23 -0
- package/.medusa/server/src/modules/back-in-stock/service.d.ts +22 -0
- package/.medusa/server/src/modules/back-in-stock/service.js +12 -0
- package/.medusa/server/src/modules/email-center/abandoned-cart-registration.d.ts +1 -0
- package/.medusa/server/src/modules/email-center/abandoned-cart-registration.js +27 -0
- package/.medusa/server/src/modules/email-center/back-in-stock-registration.d.ts +1 -0
- package/.medusa/server/src/modules/email-center/back-in-stock-registration.js +27 -0
- package/.medusa/server/src/modules/email-center/defaults.js +7 -1
- package/.medusa/server/src/modules/email-center/index.d.ts +2 -0
- package/.medusa/server/src/modules/email-center/index.js +3 -1
- package/.medusa/server/src/modules/integration-settings/abandoned-cart-registration.d.ts +1 -0
- package/.medusa/server/src/modules/integration-settings/abandoned-cart-registration.js +30 -0
- package/.medusa/server/src/modules/integration-settings/index.d.ts +1 -0
- package/.medusa/server/src/modules/integration-settings/index.js +2 -1
- package/.medusa/server/src/modules/integration-settings/storefront-public-registration.js +15 -1
- package/.medusa/server/src/modules/product-review/index.d.ts +14 -0
- package/.medusa/server/src/modules/product-review/migrations/Migration20261101113000.d.ts +5 -0
- package/.medusa/server/src/modules/product-review/migrations/Migration20261101113000.js +28 -0
- package/.medusa/server/src/modules/product-review/migrations/Migration20261101114500.d.ts +5 -0
- package/.medusa/server/src/modules/product-review/migrations/Migration20261101114500.js +20 -0
- package/.medusa/server/src/modules/product-review/migrations/Migration20261101121500.d.ts +5 -0
- package/.medusa/server/src/modules/product-review/migrations/Migration20261101121500.js +18 -0
- package/.medusa/server/src/modules/product-review/models/product-review-settings.d.ts +15 -0
- package/.medusa/server/src/modules/product-review/models/product-review-settings.js +19 -0
- package/.medusa/server/src/modules/product-review/models/product-review.d.ts +6 -2
- package/.medusa/server/src/modules/product-review/models/product-review.js +7 -3
- package/.medusa/server/src/modules/product-review/service.d.ts +22 -1
- package/.medusa/server/src/modules/product-review/service.js +3 -2
- package/.medusa/server/src/modules/shared-cart/index.d.ts +21 -0
- package/.medusa/server/src/modules/shared-cart/index.js +13 -0
- package/.medusa/server/src/modules/shared-cart/migrations/Migration20261102010000.d.ts +5 -0
- package/.medusa/server/src/modules/shared-cart/migrations/Migration20261102010000.js +16 -0
- package/.medusa/server/src/modules/shared-cart/models/shared-cart.d.ts +10 -0
- package/.medusa/server/src/modules/shared-cart/models/shared-cart.js +17 -0
- package/.medusa/server/src/modules/shared-cart/service.d.ts +14 -0
- package/.medusa/server/src/modules/shared-cart/service.js +11 -0
- package/.medusa/server/src/modules/shared-cart/settings.d.ts +7 -0
- package/.medusa/server/src/modules/shared-cart/settings.js +64 -0
- package/.medusa/server/src/providers/dpd/index.d.ts +2 -0
- package/.medusa/server/src/providers/dpd/index.js +3 -1
- package/.medusa/server/src/providers/dpd/statusdata-ftp.d.ts +16 -0
- package/.medusa/server/src/providers/dpd/statusdata-ftp.js +268 -0
- package/.medusa/server/src/providers/dpd/statusdata.d.ts +14 -0
- package/.medusa/server/src/providers/dpd/statusdata.js +161 -0
- package/.medusa/server/src/providers/mpl/client.d.ts +3 -1
- package/.medusa/server/src/providers/mpl/client.js +154 -2
- package/.medusa/server/src/providers/mpl/service.js +31 -20
- package/.medusa/server/src/providers/mpl/types.d.ts +25 -0
- package/.medusa/server/src/providers/mpl/types.js +1 -1
- package/.medusa/server/src/providers/packeta/index.d.ts +1 -0
- package/.medusa/server/src/providers/packeta/index.js +2 -1
- package/.medusa/server/src/providers/packeta/push-tracking.d.ts +8 -0
- package/.medusa/server/src/providers/packeta/push-tracking.js +96 -0
- package/.medusa/server/src/providers/packeta/service.js +22 -2
- package/.medusa/server/src/scripts/core-init.d.ts +1 -1
- package/.medusa/server/src/scripts/core-init.js +3 -2
- package/.medusa/server/src/subscribers/back-in-stock-inventory-changed.d.ts +7 -0
- package/.medusa/server/src/subscribers/back-in-stock-inventory-changed.js +65 -0
- package/.medusa/server/src/workflows/link-migrated-customer.d.ts +8 -0
- package/.medusa/server/src/workflows/link-migrated-customer.js +17 -0
- package/README.md +1 -1
- package/package.json +30 -8
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CustomerCartResumeError = void 0;
|
|
4
|
+
exports.requireResumeCustomerId = requireResumeCustomerId;
|
|
5
|
+
exports.decideCustomerCartResume = decideCustomerCartResume;
|
|
6
|
+
exports.customerCartResumeStatus = customerCartResumeStatus;
|
|
7
|
+
class CustomerCartResumeError extends Error {
|
|
8
|
+
constructor(statusCode, message) {
|
|
9
|
+
super(message);
|
|
10
|
+
this.name = "CustomerCartResumeError";
|
|
11
|
+
this.statusCode = statusCode;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
exports.CustomerCartResumeError = CustomerCartResumeError;
|
|
15
|
+
function requireResumeCustomerId(value) {
|
|
16
|
+
const id = String(value || "").trim();
|
|
17
|
+
if (!id) {
|
|
18
|
+
throw new CustomerCartResumeError(401, "A bejelentkezett vásárló nem azonosítható.");
|
|
19
|
+
}
|
|
20
|
+
return id;
|
|
21
|
+
}
|
|
22
|
+
function decideCustomerCartResume(input) {
|
|
23
|
+
const customerId = requireResumeCustomerId(input.customerId);
|
|
24
|
+
const activeCart = normalizeResumeCart(input.activeCart);
|
|
25
|
+
let currentCart = normalizeResumeCart(input.currentCart);
|
|
26
|
+
if (currentCart?.status === "converted") {
|
|
27
|
+
currentCart = null;
|
|
28
|
+
}
|
|
29
|
+
const currentOwner = String(currentCart?.customer_id || "").trim();
|
|
30
|
+
if (currentOwner && currentOwner !== customerId) {
|
|
31
|
+
throw new CustomerCartResumeError(403, "A megadott kosár nem ehhez a vásárlóhoz tartozik.");
|
|
32
|
+
}
|
|
33
|
+
if (!activeCart && !currentCart) {
|
|
34
|
+
return { action: "none", target_cart_id: null };
|
|
35
|
+
}
|
|
36
|
+
if (!activeCart && currentCart) {
|
|
37
|
+
return { action: "keep-current", target_cart_id: currentCart.id };
|
|
38
|
+
}
|
|
39
|
+
if (activeCart && !currentCart) {
|
|
40
|
+
return { action: "resume", target_cart_id: activeCart.id };
|
|
41
|
+
}
|
|
42
|
+
if (activeCart && currentCart) {
|
|
43
|
+
if (activeCart.id === currentCart.id) {
|
|
44
|
+
return { action: "keep-current", target_cart_id: currentCart.id };
|
|
45
|
+
}
|
|
46
|
+
if (Number(currentCart.item_count || 0) > 0) {
|
|
47
|
+
return { action: "merge-required", target_cart_id: null };
|
|
48
|
+
}
|
|
49
|
+
return { action: "resume", target_cart_id: activeCart.id };
|
|
50
|
+
}
|
|
51
|
+
return { action: "none", target_cart_id: null };
|
|
52
|
+
}
|
|
53
|
+
function customerCartResumeStatus(error) {
|
|
54
|
+
if (error instanceof CustomerCartResumeError)
|
|
55
|
+
return error.statusCode;
|
|
56
|
+
return 500;
|
|
57
|
+
}
|
|
58
|
+
function normalizeResumeCart(cart) {
|
|
59
|
+
if (!cart)
|
|
60
|
+
return null;
|
|
61
|
+
const id = String(cart.id || "").trim();
|
|
62
|
+
if (!id)
|
|
63
|
+
return null;
|
|
64
|
+
return {
|
|
65
|
+
...cart,
|
|
66
|
+
id,
|
|
67
|
+
customer_id: String(cart.customer_id || "").trim() || null,
|
|
68
|
+
item_count: Math.max(0, Number(cart.item_count || 0)),
|
|
69
|
+
status: String(cart.status || "").trim() || null,
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tZXItY2FydC1yZXN1bWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29yZS9jdXN0b21lci1jYXJ0LXJlc3VtZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUF1QkEsMERBU0M7QUFFRCw0REFpREM7QUFFRCw0REFHQztBQWxGRCxNQUFhLHVCQUF3QixTQUFRLEtBQUs7SUFHaEQsWUFBWSxVQUFrQixFQUFFLE9BQWU7UUFDN0MsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFBO1FBQ2QsSUFBSSxDQUFDLElBQUksR0FBRyx5QkFBeUIsQ0FBQTtRQUNyQyxJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQTtJQUM5QixDQUFDO0NBQ0Y7QUFSRCwwREFRQztBQVNELFNBQWdCLHVCQUF1QixDQUFDLEtBQWM7SUFDcEQsTUFBTSxFQUFFLEdBQUcsTUFBTSxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQTtJQUNyQyxJQUFJLENBQUMsRUFBRSxFQUFFLENBQUM7UUFDUixNQUFNLElBQUksdUJBQXVCLENBQy9CLEdBQUcsRUFDSCw0Q0FBNEMsQ0FDN0MsQ0FBQTtJQUNILENBQUM7SUFDRCxPQUFPLEVBQUUsQ0FBQTtBQUNYLENBQUM7QUFFRCxTQUFnQix3QkFBd0IsQ0FBQyxLQUl4QztJQUlDLE1BQU0sVUFBVSxHQUFHLHVCQUF1QixDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQTtJQUM1RCxNQUFNLFVBQVUsR0FBRyxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUE7SUFDeEQsSUFBSSxXQUFXLEdBQUcsbUJBQW1CLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFBO0lBRXhELElBQUksV0FBVyxFQUFFLE1BQU0sS0FBSyxXQUFXLEVBQUUsQ0FBQztRQUN4QyxXQUFXLEdBQUcsSUFBSSxDQUFBO0lBQ3BCLENBQUM7SUFFRCxNQUFNLFlBQVksR0FBRyxN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
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
type ResolveContainer = {
|
|
2
2
|
resolve: (key: string) => unknown;
|
|
3
3
|
};
|
|
4
|
-
export type CustomerEmailKind = "welcome" | "registration_verification" | "password_reset" | "email_change_verification" | "password_changed" | "email_changed" | "account_deleted";
|
|
4
|
+
export type CustomerEmailKind = "welcome" | "registration_verification" | "password_reset" | "email_change_verification" | "password_changed" | "email_changed" | "account_deleted" | "migration_activation" | "review_request" | "review_reward";
|
|
5
5
|
export declare function customerEmailEnabled(kind: CustomerEmailKind): boolean;
|
|
6
6
|
export declare function customerEmailLocale(input?: {
|
|
7
7
|
locale?: unknown;
|
|
@@ -17,6 +17,9 @@ const CUSTOMER_EMAIL_CONFIG = {
|
|
|
17
17
|
password_changed: { enabled: "EMAIL_PASSWORD_CHANGED_ENABLED", legacyEnabled: "SENDGRID_PASSWORD_CHANGED_ENABLED", templatePrefix: "SENDGRID_PASSWORD_CHANGED_TEMPLATE_ID", localTemplate: "customer-password-changed", coreKey: "customer.password_changed" },
|
|
18
18
|
email_changed: { enabled: "EMAIL_CHANGED_ENABLED", legacyEnabled: "SENDGRID_EMAIL_CHANGED_ENABLED", templatePrefix: "SENDGRID_EMAIL_CHANGED_TEMPLATE_ID", localTemplate: "customer-email-changed", coreKey: "customer.email_changed" },
|
|
19
19
|
account_deleted: { enabled: "EMAIL_ACCOUNT_DELETED_ENABLED", legacyEnabled: "SENDGRID_ACCOUNT_DELETED_ENABLED", templatePrefix: "SENDGRID_ACCOUNT_DELETED_TEMPLATE_ID", localTemplate: "customer-account-deleted", coreKey: "customer.account_deleted" },
|
|
20
|
+
migration_activation: { enabled: "EMAIL_CUSTOMER_MIGRATION_ACTIVATION_ENABLED", legacyEnabled: "SENDGRID_CUSTOMER_MIGRATION_ACTIVATION_ENABLED", templatePrefix: "SENDGRID_CUSTOMER_MIGRATION_ACTIVATION_TEMPLATE_ID", defaultEnabled: true, localTemplate: "customer-migration-activation", coreKey: "customer.migration_activation" },
|
|
21
|
+
review_request: { enabled: "EMAIL_REVIEW_REQUEST_ENABLED", legacyEnabled: "SENDGRID_REVIEW_REQUEST_ENABLED", templatePrefix: "SENDGRID_REVIEW_REQUEST_TEMPLATE_ID", defaultEnabled: true, localTemplate: "customer-review-request", coreKey: "customer.review_request" },
|
|
22
|
+
review_reward: { enabled: "EMAIL_REVIEW_REWARD_ENABLED", legacyEnabled: "SENDGRID_REVIEW_REWARD_ENABLED", templatePrefix: "SENDGRID_REVIEW_REWARD_TEMPLATE_ID", defaultEnabled: true, localTemplate: "customer-review-reward", coreKey: "customer.review_reward" },
|
|
20
23
|
};
|
|
21
24
|
function customerEmailEnabled(kind) {
|
|
22
25
|
const config = CUSTOMER_EMAIL_CONFIG[kind];
|
|
@@ -95,4 +98,4 @@ function isProductionRuntime() { return process.env.APP_ENV === "production" ||
|
|
|
95
98
|
function stringValue(value) { return typeof value === "string" && value.trim() ? value.trim() : undefined; }
|
|
96
99
|
function boolEnv(key) { const raw = process.env[key]?.trim(); if (!raw)
|
|
97
100
|
return null; return raw === "true"; }
|
|
98
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
101
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tZXItZW1haWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29yZS9jdXN0b21lci1lbWFpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQTJDQSxvREFRQztBQUVELGtEQUlDO0FBRUQsNENBQXdIO0FBQ3hILHNDQUtDO0FBRUQsOERBK0JDO0FBRUQsb0VBT0M7QUEzR0QsNkNBQXdDO0FBQ3hDLHFEQUE4RTtBQUM5RSwwREFBK0U7QUE0Qi9FLE1BQU0scUJBQXFCLEdBQW1EO0lBQzVFLE9BQU8sRUFBRSxFQUFFLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxhQUFhLEVBQUUsbUNBQW1DLEVBQUUsY0FBYyxFQUFFLHVDQUF1QyxFQUFFLGFBQWEsRUFBRSxrQkFBa0IsRUFBRSxPQUFPLEVBQUUscUJBQXFCLEVBQUU7SUFDdE8seUJBQXlCLEVBQUUsRUFBRSxPQUFPLEVBQUUseUNBQXlDLEVBQUUsYUFBYSxFQUFFLDRDQUE0QyxFQUFFLGNBQWMsRUFBRSxnREFBZ0QsRUFBRSxhQUFhLEVBQUUsb0NBQW9DLEVBQUUsT0FBTyxFQUFFLDZCQUE2QixFQUFFO0lBQzdTLGNBQWMsRUFBRSxFQUFFLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxhQUFhLEVBQUUsaUNBQWlDLEVBQUUsY0FBYyxFQUFFLHFDQUFxQyxFQUFFLGNBQWMsRUFBRSxJQUFJLEVBQUUsaUJBQWlCLEVBQUUscUNBQXFDLEVBQUUsYUFBYSxFQUFFLGdCQUFnQixFQUFFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRTtJQUN6VCx5QkFBeUIsRUFBRSxFQUFFLE9BQU8sRUFBRSxtQ0FBbUMsRUFBRSxhQUFhLEVBQUUsNENBQTRDLEVBQUUsY0FBYyxFQUFFLGdEQUFnRCxFQUFFLGNBQWMsRUFBRSxJQUFJLEVBQUUsaUJBQWlCLEVBQUUseUNBQXlDLEVBQUUsYUFBYSxFQUFFLG9CQUFvQixFQUFFLE9BQU8sRUFBRSw2QkFBNkIsRUFBRTtJQUMzVyxnQkFBZ0IsRUFB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
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.exportNativeMigrationCsv = exportNativeMigrationCsv;
|
|
4
|
+
const utils_1 = require("@medusajs/framework/utils");
|
|
5
|
+
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
6
|
+
const core_flows_1 = require("@medusajs/medusa/core-flows");
|
|
7
|
+
const PRODUCT_EXPORT_FIELDS = [
|
|
8
|
+
"id",
|
|
9
|
+
"title",
|
|
10
|
+
"subtitle",
|
|
11
|
+
"status",
|
|
12
|
+
"external_id",
|
|
13
|
+
"description",
|
|
14
|
+
"handle",
|
|
15
|
+
"is_giftcard",
|
|
16
|
+
"discountable",
|
|
17
|
+
"thumbnail",
|
|
18
|
+
"collection_id",
|
|
19
|
+
"type_id",
|
|
20
|
+
"weight",
|
|
21
|
+
"length",
|
|
22
|
+
"height",
|
|
23
|
+
"width",
|
|
24
|
+
"hs_code",
|
|
25
|
+
"origin_country",
|
|
26
|
+
"mid_code",
|
|
27
|
+
"material",
|
|
28
|
+
"created_at",
|
|
29
|
+
"updated_at",
|
|
30
|
+
"deleted_at",
|
|
31
|
+
"metadata",
|
|
32
|
+
"*type",
|
|
33
|
+
"*collection",
|
|
34
|
+
"*options",
|
|
35
|
+
"*options.values",
|
|
36
|
+
"*tags",
|
|
37
|
+
"*images",
|
|
38
|
+
"*variants",
|
|
39
|
+
"*variants.prices",
|
|
40
|
+
"variants.prices.price_rules.value",
|
|
41
|
+
"variants.prices.price_rules.attribute",
|
|
42
|
+
"*variants.options",
|
|
43
|
+
"*variants.images",
|
|
44
|
+
"*sales_channels",
|
|
45
|
+
].map((field) => field.replace("variants.prices.", "variants.price_set.prices."));
|
|
46
|
+
const INVENTORY_EXPORT_FIELDS = [
|
|
47
|
+
"id",
|
|
48
|
+
"sku",
|
|
49
|
+
"title",
|
|
50
|
+
"description",
|
|
51
|
+
"thumbnail",
|
|
52
|
+
"origin_country",
|
|
53
|
+
"hs_code",
|
|
54
|
+
"requires_shipping",
|
|
55
|
+
"mid_code",
|
|
56
|
+
"material",
|
|
57
|
+
"unit_of_measure",
|
|
58
|
+
"weight",
|
|
59
|
+
"length",
|
|
60
|
+
"height",
|
|
61
|
+
"width",
|
|
62
|
+
"metadata",
|
|
63
|
+
"reserved_quantity",
|
|
64
|
+
"stocked_quantity",
|
|
65
|
+
"created_at",
|
|
66
|
+
"updated_at",
|
|
67
|
+
"*location_levels",
|
|
68
|
+
];
|
|
69
|
+
const productMigrationExportWorkflow = (0, workflows_sdk_1.createWorkflow)("hszrdm-product-migration-export", (input) => {
|
|
70
|
+
const file = (0, core_flows_1.exportProductsStep)(input);
|
|
71
|
+
return new workflows_sdk_1.WorkflowResponse(file);
|
|
72
|
+
});
|
|
73
|
+
const inventoryMigrationExportWorkflow = (0, workflows_sdk_1.createWorkflow)("hszrdm-inventory-migration-export", (input) => {
|
|
74
|
+
const file = (0, core_flows_1.exportInventoryItemsStep)(input);
|
|
75
|
+
return new workflows_sdk_1.WorkflowResponse(file);
|
|
76
|
+
});
|
|
77
|
+
async function exportNativeMigrationCsv(scope, kind) {
|
|
78
|
+
const workflow = kind === "products"
|
|
79
|
+
? productMigrationExportWorkflow
|
|
80
|
+
: inventoryMigrationExportWorkflow;
|
|
81
|
+
const select = kind === "products" ? PRODUCT_EXPORT_FIELDS : INVENTORY_EXPORT_FIELDS;
|
|
82
|
+
const { result } = await workflow(scope).run({
|
|
83
|
+
input: {
|
|
84
|
+
select,
|
|
85
|
+
batch_size: 250,
|
|
86
|
+
},
|
|
87
|
+
});
|
|
88
|
+
const fileId = String(result?.id || "").trim();
|
|
89
|
+
const filename = String(result?.filename || `${kind}.csv`).trim();
|
|
90
|
+
if (!fileId) {
|
|
91
|
+
throw new Error("A Medusa natív export nem adott vissza fájlazonosítót.");
|
|
92
|
+
}
|
|
93
|
+
const fileModule = scope.resolve(utils_1.Modules.FILE);
|
|
94
|
+
try {
|
|
95
|
+
const buffer = await fileModule.getAsBuffer(fileId);
|
|
96
|
+
return {
|
|
97
|
+
filename,
|
|
98
|
+
csv: buffer.toString("utf8"),
|
|
99
|
+
};
|
|
100
|
+
}
|
|
101
|
+
finally {
|
|
102
|
+
await fileModule.deleteFiles(fileId).catch(() => undefined);
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF0aXZlLW1pZ3JhdGlvbi1leHBvcnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29yZS9uYXRpdmUtbWlncmF0aW9uLWV4cG9ydC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQXlGQSw0REFzQ0M7QUEvSEQscURBQW1EO0FBQ25ELHFFQUFvRjtBQUNwRiw0REFHb0M7QUFFcEMsTUFBTSxxQkFBcUIsR0FBRztJQUM1QixJQUFJO0lBQ0osT0FBTztJQUNQLFVBQVU7SUFDVixRQUFRO0lBQ1IsYUFBYTtJQUNiLGFBQWE7SUFDYixRQUFRO0lBQ1IsYUFBYTtJQUNiLGNBQWM7SUFDZCxXQUFXO0lBQ1gsZUFBZTtJQUNmLFNBQVM7SUFDVCxRQUFRO0lBQ1IsUUFBUTtJQUNSLFFBQVE7SUFDUixPQUFPO0lBQ1AsU0FBUztJQUNULGdCQUFnQjtJQUNoQixVQUFVO0lBQ1YsVUFBVTtJQUNWLFlBQVk7SUFDWixZQUFZO0lBQ1osWUFBWTtJQUNaLFVBQVU7SUFDVixPQUFPO0lBQ1AsYUFBYTtJQUNiLFVBQVU7SUFDVixpQkFBaUI7SUFDakIsT0FBTztJQUNQLFNBQVM7SUFDVCxXQUFXO0lBQ1gsa0JBQWtCO0lBQ2xCLG1DQUFtQztJQUNuQyx1Q0FBdUM7SUFDdkMsbUJBQW1CO0lBQ25CLGtCQUFrQjtJQUNsQixpQkFBaUI7Q0FDbEIsQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUNkLEtBQUssQ0FBQyxPQUFPLENBQUMsa0JBQWtCLEVBQUUsNEJBQTRCLENBQUMsQ0FDaEUsQ0FBQTtBQUVELE1BQU0sdUJBQXVCLEdBQUc7SUFDOUIsSUFBSTtJQUNKLEtBQUs7SUFDTCxPQUFPO0lBQ1AsYUFBYTtJQUNiLFdBQVc7SUFDWCxnQkFBZ0I7SUFDaEIsU0FBUztJQUNULG1CQUFtQjtJQUNuQixVQUFVO0lBQ1YsVUFBVTtJQUNWLGlCQUFpQjtJQUNqQixRQUFRO0lBQ1IsUUFBUTtJQUNSLFFBQVE7SUFDUixPQUFPO0lBQ1AsVUFBVTtJQUNWLG1CQUFtQjtJQUNuQixrQkFBa0I7SUFDbEIsWUFBWTtJQUNaLFlBQVk7SUFDWixrQkFBa0I7Q0FDbkIsQ0FBQTtBQUVELE1BQU0sOEJBQThCLEdBQUcsSUFBQSw4QkFBYyxFQUNuRCxpQ0FBaUMsRUFDakMsQ0FBQyxLQUFVLEVBQUUsRUFBRTtJQUNiLE1BQU0sSUFBSSxHQUFHLElBQUEsK0JBQWtCLEVBQUMsS0FBSyxDQUFDLENBQUE7SUFDdEMsT0FBTyxJQUFJLGdDQUFnQixDQUFDLElBQUksQ0FBQyxDQUFBO0FBQ25DLENBQUMsQ0FDRixDQUFBO0FBRUQsTUFBTSxnQ0FBZ0MsR0FBRyxJQUFBLDhCQUFjLEVBQ3JELG1DQUFtQyxFQUNuQyxDQUFDLEtBQVUsRUFBRSxFQUFFO0lBQ2IsTUFBTSxJQUFJLEdBQUcsSUFBQSxxQ0FBd0IsRUFBQyxLQUFLLENBQUMsQ0FBQTtJQUM1QyxPQUFPLElBQUksZ0NBQWdCLENBQUMsSUFBSSxDQUFDLENBQUE7QUFDbkMsQ0FBQyxDQUNGLENBQUE7QUFFTSxLQUFLLFVBQVUsd0JBQXdCLENBQzVDLEtBQXdDLEVBQ3hDLElBQThCO0lBRTlCLE1BQU0sUUFBUSxHQUNaLElBQUksS0FBSyxVQUFVO1FBQ2pCLENBQUMsQ0FBQyw4QkFBOEI7UUFDaEMsQ0FBQyxDQUFDLGdDQUFnQyxDQUFBO0lBQ3RDLE1BQU0sTUFBTSxHQUNWLElBQUksS0FBSyxVQUFVLENBQUMsQ0FBQyxDQUFDLHFCQUFxQixDQUFDLENBQUMsQ0FBQyx1QkFBdUIsQ0FBQTtJQUV2RSxNQUFNLEVBQUUsTUFBTSxFQUFFLEdBQUcsTUFBTSxRQUFRLENBQUMsS0FBWSxDQUFDLENBQUMsR0FBRyxDQUFDO1FBQ2xELEtBQUssRUFBRTtZQUNMLE1BQU07WUFDTixVQUFVLEVBQUUsR0FBRztTQUNoQjtLQUNGLENBQUMsQ0FBQTtJQUVGLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBRSxNQUFjLEVBQUUsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFBO0lBQ3ZELE1BQU0sUUFBUSxHQUFHLE1BQU0sQ0FBRSxNQUFjLEVBQUUsUUFBUSxJQUFJLEdBQUcsSUFBSSxNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQTtJQUMxRSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDWixNQUFNLElBQUksS0FBSyxDQUFDLHdEQUF3RCxDQUFDLENBQUE7SUFDM0UsQ0FBQztJQUVELE1BQU0sVUFBVSxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsZUFBTyxDQUFDLElBQUksQ0FHNUMsQ0FBQTtJQUVELElBQUksQ0FBQztRQUNILE1BQU0sTUFBTSxHQUFHLE1BQU0sVUFBVSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQTtRQUNuRCxPQUFPO1lBQ0wsUUFBUTtZQUNSLEdBQUcsRUFBRSxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQztTQUM3QixDQUFBO0lBQ0gsQ0FBQztZQUFTLENBQUM7UUFDVCxNQUFNLFVBQVUsQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFBO0lBQzdELENBQUM7QUFDSCxDQUFDIn0=
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export declare const ORDER_EXPORT_HEADERS: readonly ["Order Id", "Display Id", "Order Date", "Order Status", "Currency", "Customer Id", "Customer Email", "Customer First Name", "Customer Last Name", "Billing Company", "Billing Tax Number", "Billing EU Tax Number", "Billing Tax Type", "Billing First Name", "Billing Last Name", "Billing Address 1", "Billing Address 2", "Billing City", "Billing Postal Code", "Billing Province", "Billing Country Code", "Billing Phone", "Shipping First Name", "Shipping Last Name", "Shipping Company", "Shipping Address 1", "Shipping Address 2", "Shipping City", "Shipping Postal Code", "Shipping Province", "Shipping Country Code", "Shipping Phone", "Item Id", "Variant Id", "SKU", "Product Title", "Variant Title", "Quantity", "Unit Price", "Item Subtotal", "Item Discount Total", "Item Tax Total", "Item Total", "Order Subtotal", "Shipping Total", "Order Discount Total", "Order Tax Total", "Order Total", "Payment Status", "Payment Provider", "Payment Amount", "Captured Amount", "Refunded Amount", "Shipping Method", "Fulfillment Provider", "Tracking Number", "Billingo Document Id", "Billingo Invoice Number", "Billingo Payment Status", "Billingo Notification Status", "Billingo Online Szamla Status", "Billingo Gross Total", "Billingo Currency", "Billingo Cancelled", "Billingo Sent At", "Billingo Cancellation Document Id", "Billingo Cancellation Invoice Number", "Billingo Modification Document Id", "Billingo Modification Invoice Number", "Billingo Modified At", "Billingo Proforma Document Id", "Billingo Proforma Number", "Billingo Proforma Converted Document Id", "Billingo Proforma Converted Invoice Number", "Billingo Proforma Archived", "Billingo Proforma Archived At"];
|
|
2
|
+
export declare const ORDER_EXPORT_NUMERIC_HEADERS: Set<string>;
|
|
3
|
+
type AnyRecord = Record<string, any>;
|
|
4
|
+
export type OrderExportTable = {
|
|
5
|
+
headers: string[];
|
|
6
|
+
rows: string[][];
|
|
7
|
+
order_count: number;
|
|
8
|
+
line_count: number;
|
|
9
|
+
};
|
|
10
|
+
export declare function ordersToAccountingTable(orders: AnyRecord[]): OrderExportTable;
|
|
11
|
+
export {};
|
|
@@ -0,0 +1,297 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ORDER_EXPORT_NUMERIC_HEADERS = exports.ORDER_EXPORT_HEADERS = void 0;
|
|
4
|
+
exports.ordersToAccountingTable = ordersToAccountingTable;
|
|
5
|
+
exports.ORDER_EXPORT_HEADERS = [
|
|
6
|
+
"Order Id",
|
|
7
|
+
"Display Id",
|
|
8
|
+
"Order Date",
|
|
9
|
+
"Order Status",
|
|
10
|
+
"Currency",
|
|
11
|
+
"Customer Id",
|
|
12
|
+
"Customer Email",
|
|
13
|
+
"Customer First Name",
|
|
14
|
+
"Customer Last Name",
|
|
15
|
+
"Billing Company",
|
|
16
|
+
"Billing Tax Number",
|
|
17
|
+
"Billing EU Tax Number",
|
|
18
|
+
"Billing Tax Type",
|
|
19
|
+
"Billing First Name",
|
|
20
|
+
"Billing Last Name",
|
|
21
|
+
"Billing Address 1",
|
|
22
|
+
"Billing Address 2",
|
|
23
|
+
"Billing City",
|
|
24
|
+
"Billing Postal Code",
|
|
25
|
+
"Billing Province",
|
|
26
|
+
"Billing Country Code",
|
|
27
|
+
"Billing Phone",
|
|
28
|
+
"Shipping First Name",
|
|
29
|
+
"Shipping Last Name",
|
|
30
|
+
"Shipping Company",
|
|
31
|
+
"Shipping Address 1",
|
|
32
|
+
"Shipping Address 2",
|
|
33
|
+
"Shipping City",
|
|
34
|
+
"Shipping Postal Code",
|
|
35
|
+
"Shipping Province",
|
|
36
|
+
"Shipping Country Code",
|
|
37
|
+
"Shipping Phone",
|
|
38
|
+
"Item Id",
|
|
39
|
+
"Variant Id",
|
|
40
|
+
"SKU",
|
|
41
|
+
"Product Title",
|
|
42
|
+
"Variant Title",
|
|
43
|
+
"Quantity",
|
|
44
|
+
"Unit Price",
|
|
45
|
+
"Item Subtotal",
|
|
46
|
+
"Item Discount Total",
|
|
47
|
+
"Item Tax Total",
|
|
48
|
+
"Item Total",
|
|
49
|
+
"Order Subtotal",
|
|
50
|
+
"Shipping Total",
|
|
51
|
+
"Order Discount Total",
|
|
52
|
+
"Order Tax Total",
|
|
53
|
+
"Order Total",
|
|
54
|
+
"Payment Status",
|
|
55
|
+
"Payment Provider",
|
|
56
|
+
"Payment Amount",
|
|
57
|
+
"Captured Amount",
|
|
58
|
+
"Refunded Amount",
|
|
59
|
+
"Shipping Method",
|
|
60
|
+
"Fulfillment Provider",
|
|
61
|
+
"Tracking Number",
|
|
62
|
+
"Billingo Document Id",
|
|
63
|
+
"Billingo Invoice Number",
|
|
64
|
+
"Billingo Payment Status",
|
|
65
|
+
"Billingo Notification Status",
|
|
66
|
+
"Billingo Online Szamla Status",
|
|
67
|
+
"Billingo Gross Total",
|
|
68
|
+
"Billingo Currency",
|
|
69
|
+
"Billingo Cancelled",
|
|
70
|
+
"Billingo Sent At",
|
|
71
|
+
"Billingo Cancellation Document Id",
|
|
72
|
+
"Billingo Cancellation Invoice Number",
|
|
73
|
+
"Billingo Modification Document Id",
|
|
74
|
+
"Billingo Modification Invoice Number",
|
|
75
|
+
"Billingo Modified At",
|
|
76
|
+
"Billingo Proforma Document Id",
|
|
77
|
+
"Billingo Proforma Number",
|
|
78
|
+
"Billingo Proforma Converted Document Id",
|
|
79
|
+
"Billingo Proforma Converted Invoice Number",
|
|
80
|
+
"Billingo Proforma Archived",
|
|
81
|
+
"Billingo Proforma Archived At",
|
|
82
|
+
];
|
|
83
|
+
exports.ORDER_EXPORT_NUMERIC_HEADERS = new Set([
|
|
84
|
+
"Display Id",
|
|
85
|
+
"Quantity",
|
|
86
|
+
"Unit Price",
|
|
87
|
+
"Item Subtotal",
|
|
88
|
+
"Item Discount Total",
|
|
89
|
+
"Item Tax Total",
|
|
90
|
+
"Item Total",
|
|
91
|
+
"Order Subtotal",
|
|
92
|
+
"Shipping Total",
|
|
93
|
+
"Order Discount Total",
|
|
94
|
+
"Order Tax Total",
|
|
95
|
+
"Order Total",
|
|
96
|
+
"Payment Amount",
|
|
97
|
+
"Captured Amount",
|
|
98
|
+
"Refunded Amount",
|
|
99
|
+
"Billingo Document Id",
|
|
100
|
+
"Billingo Gross Total",
|
|
101
|
+
"Billingo Cancellation Document Id",
|
|
102
|
+
"Billingo Modification Document Id",
|
|
103
|
+
"Billingo Proforma Document Id",
|
|
104
|
+
"Billingo Proforma Converted Document Id",
|
|
105
|
+
]);
|
|
106
|
+
function ordersToAccountingTable(orders) {
|
|
107
|
+
const rows = [];
|
|
108
|
+
for (const order of orders) {
|
|
109
|
+
const items = Array.isArray(order.items) && order.items.length ? order.items : [null];
|
|
110
|
+
const customer = asRecord(order.customer);
|
|
111
|
+
const billing = asRecord(order.billing_address);
|
|
112
|
+
const shipping = asRecord(order.shipping_address);
|
|
113
|
+
const metadata = asRecord(order.metadata);
|
|
114
|
+
const billingo = asRecord(metadata.billingo);
|
|
115
|
+
const proforma = asRecord(metadata.billingo_proforma);
|
|
116
|
+
const paymentCollections = array(order.payment_collections);
|
|
117
|
+
const payments = paymentCollections.flatMap((collection) => array(collection?.payments));
|
|
118
|
+
const paymentSessions = paymentCollections.flatMap((collection) => array(collection?.payment_sessions));
|
|
119
|
+
const paymentProviders = unique([
|
|
120
|
+
...payments.map((payment) => text(payment?.provider_id)),
|
|
121
|
+
...paymentSessions.map((session) => text(session?.provider_id)),
|
|
122
|
+
]);
|
|
123
|
+
const paymentStatuses = unique(paymentCollections.map((collection) => text(collection?.status)));
|
|
124
|
+
const paymentAmount = sumDirect(paymentCollections, "amount");
|
|
125
|
+
const capturedAmount = sumDirect(paymentCollections, "captured_amount");
|
|
126
|
+
const refundedAmount = sumDirect(paymentCollections, "refunded_amount");
|
|
127
|
+
const shippingMethods = array(order.shipping_methods);
|
|
128
|
+
const fulfillments = array(order.fulfillments);
|
|
129
|
+
const shippingMethodNames = unique(shippingMethods.map((method) => text(method?.name || method?.shipping_option?.name)));
|
|
130
|
+
const fulfillmentProviders = unique(fulfillments.map((fulfillment) => text(fulfillment?.provider_id)));
|
|
131
|
+
const trackingNumbers = unique(fulfillments.flatMap(readTrackingNumbers));
|
|
132
|
+
const common = {
|
|
133
|
+
"Order Id": text(order.id),
|
|
134
|
+
"Display Id": text(order.display_id),
|
|
135
|
+
"Order Date": iso(order.created_at),
|
|
136
|
+
"Order Status": text(order.status),
|
|
137
|
+
"Currency": text(order.currency_code).toUpperCase(),
|
|
138
|
+
"Customer Id": text(customer.id || order.customer_id),
|
|
139
|
+
"Customer Email": text(customer.email || order.email),
|
|
140
|
+
"Customer First Name": text(customer.first_name || billing.first_name),
|
|
141
|
+
"Customer Last Name": text(customer.last_name || billing.last_name),
|
|
142
|
+
"Billing Company": text(billing.company),
|
|
143
|
+
"Billing Tax Number": text(metadata.billing_tax_number || metadata.tax_number),
|
|
144
|
+
"Billing EU Tax Number": text(metadata.billing_eu_tax_number || metadata.eu_tax_number),
|
|
145
|
+
"Billing Tax Type": text(metadata.billing_tax_type),
|
|
146
|
+
"Billing First Name": text(billing.first_name),
|
|
147
|
+
"Billing Last Name": text(billing.last_name),
|
|
148
|
+
"Billing Address 1": text(billing.address_1),
|
|
149
|
+
"Billing Address 2": text(billing.address_2),
|
|
150
|
+
"Billing City": text(billing.city),
|
|
151
|
+
"Billing Postal Code": text(billing.postal_code),
|
|
152
|
+
"Billing Province": text(billing.province),
|
|
153
|
+
"Billing Country Code": text(billing.country_code).toUpperCase(),
|
|
154
|
+
"Billing Phone": text(billing.phone),
|
|
155
|
+
"Shipping First Name": text(shipping.first_name),
|
|
156
|
+
"Shipping Last Name": text(shipping.last_name),
|
|
157
|
+
"Shipping Company": text(shipping.company),
|
|
158
|
+
"Shipping Address 1": text(shipping.address_1),
|
|
159
|
+
"Shipping Address 2": text(shipping.address_2),
|
|
160
|
+
"Shipping City": text(shipping.city),
|
|
161
|
+
"Shipping Postal Code": text(shipping.postal_code),
|
|
162
|
+
"Shipping Province": text(shipping.province),
|
|
163
|
+
"Shipping Country Code": text(shipping.country_code).toUpperCase(),
|
|
164
|
+
"Shipping Phone": text(shipping.phone),
|
|
165
|
+
"Order Subtotal": numberText(order.subtotal),
|
|
166
|
+
"Shipping Total": numberText(order.shipping_total),
|
|
167
|
+
"Order Discount Total": numberText(order.discount_total),
|
|
168
|
+
"Order Tax Total": numberText(order.tax_total),
|
|
169
|
+
"Order Total": numberText(order.total),
|
|
170
|
+
"Payment Status": paymentStatuses.join(" | "),
|
|
171
|
+
"Payment Provider": paymentProviders.join(" | "),
|
|
172
|
+
"Payment Amount": numberText(paymentAmount),
|
|
173
|
+
"Captured Amount": numberText(capturedAmount),
|
|
174
|
+
"Refunded Amount": numberText(refundedAmount),
|
|
175
|
+
"Shipping Method": shippingMethodNames.join(" | "),
|
|
176
|
+
"Fulfillment Provider": fulfillmentProviders.join(" | "),
|
|
177
|
+
"Tracking Number": trackingNumbers.join(" | "),
|
|
178
|
+
"Billingo Document Id": numberText(billingo.documentId),
|
|
179
|
+
"Billingo Invoice Number": text(billingo.invoiceNumber),
|
|
180
|
+
"Billingo Payment Status": text(billingo.paymentStatus),
|
|
181
|
+
"Billingo Notification Status": text(billingo.notificationStatus),
|
|
182
|
+
"Billingo Online Szamla Status": text(billingo.onlineSzamlaStatus),
|
|
183
|
+
"Billingo Gross Total": numberText(billingo.grossTotal),
|
|
184
|
+
"Billingo Currency": text(billingo.currency).toUpperCase(),
|
|
185
|
+
"Billingo Cancelled": booleanText(billingo.cancelled),
|
|
186
|
+
"Billingo Sent At": iso(billingo.sentAt),
|
|
187
|
+
"Billingo Cancellation Document Id": numberText(billingo.cancellationDocumentId),
|
|
188
|
+
"Billingo Cancellation Invoice Number": text(billingo.cancellationInvoiceNumber),
|
|
189
|
+
"Billingo Modification Document Id": numberText(billingo.modificationDocumentId),
|
|
190
|
+
"Billingo Modification Invoice Number": text(billingo.modificationInvoiceNumber),
|
|
191
|
+
"Billingo Modified At": iso(billingo.modifiedAt),
|
|
192
|
+
"Billingo Proforma Document Id": numberText(proforma.documentId),
|
|
193
|
+
"Billingo Proforma Number": text(proforma.invoiceNumber),
|
|
194
|
+
"Billingo Proforma Converted Document Id": numberText(proforma.convertedDocumentId),
|
|
195
|
+
"Billingo Proforma Converted Invoice Number": text(proforma.convertedInvoiceNumber),
|
|
196
|
+
"Billingo Proforma Archived": booleanText(proforma.archived),
|
|
197
|
+
"Billingo Proforma Archived At": iso(proforma.archivedAt),
|
|
198
|
+
};
|
|
199
|
+
for (const rawItem of items) {
|
|
200
|
+
const item = asRecord(rawItem);
|
|
201
|
+
const values = {
|
|
202
|
+
...common,
|
|
203
|
+
"Item Id": text(item.id),
|
|
204
|
+
"Variant Id": text(item.variant_id),
|
|
205
|
+
"SKU": text(item.variant_sku || item.sku),
|
|
206
|
+
"Product Title": text(item.product_title || item.title),
|
|
207
|
+
"Variant Title": text(item.variant_title),
|
|
208
|
+
"Quantity": numberText(item.quantity),
|
|
209
|
+
"Unit Price": numberText(item.unit_price),
|
|
210
|
+
"Item Subtotal": numberText(item.subtotal),
|
|
211
|
+
"Item Discount Total": numberText(item.discount_total),
|
|
212
|
+
"Item Tax Total": numberText(item.tax_total),
|
|
213
|
+
"Item Total": numberText(item.total),
|
|
214
|
+
};
|
|
215
|
+
rows.push(exports.ORDER_EXPORT_HEADERS.map((header) => values[header] || ""));
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
return {
|
|
219
|
+
headers: [...exports.ORDER_EXPORT_HEADERS],
|
|
220
|
+
rows,
|
|
221
|
+
order_count: orders.length,
|
|
222
|
+
line_count: rows.length,
|
|
223
|
+
};
|
|
224
|
+
}
|
|
225
|
+
function asRecord(value) {
|
|
226
|
+
return value && typeof value === "object" && !Array.isArray(value)
|
|
227
|
+
? value
|
|
228
|
+
: {};
|
|
229
|
+
}
|
|
230
|
+
function array(value) {
|
|
231
|
+
return Array.isArray(value) ? value : [];
|
|
232
|
+
}
|
|
233
|
+
function text(value) {
|
|
234
|
+
if (value == null)
|
|
235
|
+
return "";
|
|
236
|
+
if (typeof value === "string")
|
|
237
|
+
return value;
|
|
238
|
+
if (typeof value === "number" || typeof value === "bigint" || typeof value === "boolean")
|
|
239
|
+
return String(value);
|
|
240
|
+
if (typeof value === "object" && "value" in value)
|
|
241
|
+
return text(value.value);
|
|
242
|
+
return "";
|
|
243
|
+
}
|
|
244
|
+
function numberText(value) {
|
|
245
|
+
const raw = text(value);
|
|
246
|
+
if (!raw)
|
|
247
|
+
return "";
|
|
248
|
+
const parsed = Number(raw);
|
|
249
|
+
return Number.isFinite(parsed) ? String(parsed) : raw;
|
|
250
|
+
}
|
|
251
|
+
function booleanText(value) {
|
|
252
|
+
if (value === true)
|
|
253
|
+
return "true";
|
|
254
|
+
if (value === false)
|
|
255
|
+
return "false";
|
|
256
|
+
return "";
|
|
257
|
+
}
|
|
258
|
+
function iso(value) {
|
|
259
|
+
if (!value)
|
|
260
|
+
return "";
|
|
261
|
+
const date = value instanceof Date ? value : new Date(String(value));
|
|
262
|
+
return Number.isNaN(date.getTime()) ? text(value) : date.toISOString();
|
|
263
|
+
}
|
|
264
|
+
function unique(values) {
|
|
265
|
+
return [...new Set(values.map((value) => value.trim()).filter(Boolean))];
|
|
266
|
+
}
|
|
267
|
+
function sumDirect(records, key) {
|
|
268
|
+
let found = false;
|
|
269
|
+
let total = 0;
|
|
270
|
+
for (const record of records) {
|
|
271
|
+
const raw = text(record?.[key]);
|
|
272
|
+
if (!raw)
|
|
273
|
+
continue;
|
|
274
|
+
const value = Number(raw);
|
|
275
|
+
if (!Number.isFinite(value))
|
|
276
|
+
continue;
|
|
277
|
+
found = true;
|
|
278
|
+
total += value;
|
|
279
|
+
}
|
|
280
|
+
return found ? total : "";
|
|
281
|
+
}
|
|
282
|
+
function readTrackingNumbers(fulfillment) {
|
|
283
|
+
const direct = array(fulfillment.tracking_numbers).map(text);
|
|
284
|
+
const labels = array(fulfillment.labels).flatMap((label) => {
|
|
285
|
+
const value = asRecord(label);
|
|
286
|
+
return [text(value.tracking_number), text(value.trackingNumber)];
|
|
287
|
+
});
|
|
288
|
+
const data = asRecord(fulfillment.data);
|
|
289
|
+
return unique([
|
|
290
|
+
...direct,
|
|
291
|
+
...labels,
|
|
292
|
+
text(fulfillment.tracking_number),
|
|
293
|
+
text(data.tracking_number),
|
|
294
|
+
text(data.trackingNumber),
|
|
295
|
+
]);
|
|
296
|
+
}
|
|
297
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JkZXItZXhwb3J0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvcmUvb3JkZXItZXhwb3J0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQWdIQSwwREE2SEM7QUE3T1ksUUFBQSxvQkFBb0IsR0FBRztJQUNsQyxVQUFVO0lBQ1YsWUFBWTtJQUNaLFlBQVk7SUFDWixjQUFjO0lBQ2QsVUFBVTtJQUNWLGFBQWE7SUFDYixnQkFBZ0I7SUFDaEIscUJBQXFCO0lBQ3JCLG9CQUFvQjtJQUNwQixpQkFBaUI7SUFDakIsb0JBQW9CO0lBQ3BCLHVCQUF1QjtJQUN2QixrQkFBa0I7SUFDbEIsb0JBQW9CO0lBQ3BCLG1CQUFtQjtJQUNuQixtQkFBbUI7SUFDbkIsbUJBQW1CO0lBQ25CLGNBQWM7SUFDZCxxQkFBcUI7SUFDckIsa0JBQWtCO0lBQ2xCLHNCQUFzQjtJQUN0QixlQUFlO0lBQ2YscUJBQXFCO0lBQ3JCLG9CQUFvQjtJQUNwQixrQkFBa0I7SUFDbEIsb0JBQW9CO0lBQ3BCLG9CQUFvQjtJQUNwQixlQUFlO0lBQ2Ysc0JBQXNCO0lBQ3RCLG1CQUFtQjtJQUNuQix1QkFBdUI7SUFDdkIsZ0JBQWdCO0lBQ2hCLFNBQVM7SUFDVCxZQUFZO0lBQ1osS0FBSztJQUNMLGVBQWU7SUFDZixlQUFlO0lBQ2YsVUFBVTtJQUNWLFlBQVk7SUFDWixlQUFlO0lBQ2YscUJBQXFCO0lBQ3JCLGdCQUFnQjtJQUNoQixZQUFZO0lBQ1osZ0JBQWdCO0lBQ2hCLGdCQUFnQjtJQUNoQixzQkFBc0I7SUFDdEIsaUJBQWlCO0lBQ2pCLGFBQWE7SUFDYixnQkFBZ0I7SUFDaEIsa0JBQWtCO0lBQ2xCLGdCQUFnQjtJQUNoQixpQkFBaUI7SUFDakIsaUJBQWlCO0lBQ2pCLGlCQUFpQjtJQUNqQixzQkFBc0I7SUFDdEIsaUJBQWlCO0lBQ2pCLHNCQUFzQjtJQUN0Qix5QkFBeUI7SUFDekIseUJBQXlCO0lBQ3pCLDhCQUE4QjtJQUM5QiwrQkFB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
|