@hartl-services/medusa-base 2.11.0 → 4.0.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/admin-components/features/plugin-features/components/PluginActionsSection.d.ts +1 -1
- package/.medusa/server/src/admin/admin-components/features/plugin-features/components/PluginFeaturesCard.d.ts +1 -1
- package/.medusa/server/src/admin/admin-components/features/plugin-features/components/PluginHubCard.d.ts +1 -1
- package/.medusa/server/src/admin/admin-components/features/plugin-features/components/PluginSettingsForm.d.ts +1 -1
- package/.medusa/server/src/admin/admin-components/features/plugin-features/components/PluginStatusChips.d.ts +1 -1
- package/.medusa/server/src/admin/admin-components/features/plugin-features/components/ShopMasterDataBanner.d.ts +1 -1
- package/.medusa/server/src/admin/admin-components/features/plugin-features/hooks/usePluginFeatureEnabled.d.ts +1 -1
- package/.medusa/server/src/admin/admin-components/features/plugin-features/hooks/usePluginSettingsForm.d.ts +1 -1
- package/.medusa/server/src/admin/admin-components/features/plugin-features/hooks/usePluginSwitch.d.ts +1 -1
- package/.medusa/server/src/admin/admin-components/features/plugin-features/lib/action-runs.d.ts +1 -1
- package/.medusa/server/src/admin/admin-components/features/plugin-features/lib/plugin-features-admin-client.d.ts +1 -1
- package/.medusa/server/src/admin/admin-components/features/plugin-features/lib/plugin-features-admin-client.js +1 -1
- package/.medusa/server/src/admin/admin-components/features/plugin-features/lib/plugin-view.d.ts +1 -1
- package/.medusa/server/src/admin/admin-components/features/plugin-features/lib/settings-draft.d.ts +1 -1
- package/.medusa/server/src/admin/admin-components/features/plugin-features/lib/settings-layout.d.ts +1 -1
- package/.medusa/server/src/admin/index.js +4 -4
- package/.medusa/server/src/admin/index.mjs +4 -4
- package/.medusa/server/src/api/admin/draft-orders/[id]/order-confirmation/route.js +2 -2
- package/.medusa/server/src/api/admin/email/attachments/[id]/mail-kinds/route.js +2 -2
- package/.medusa/server/src/api/admin/email/attachments/[id]/route.js +2 -2
- package/.medusa/server/src/api/admin/email/attachments/[id]/versions/route.js +2 -2
- package/.medusa/server/src/api/admin/email/attachments/route.js +2 -2
- package/.medusa/server/src/api/admin/email/messages/[id]/resends/route.js +2 -2
- package/.medusa/server/src/api/admin/email/messages/[id]/route.js +2 -2
- package/.medusa/server/src/api/admin/email/messages/route.js +2 -2
- package/.medusa/server/src/api/admin/email/templates/[kind]/preview/route.js +2 -2
- package/.medusa/server/src/api/admin/email/templates/[kind]/route.js +2 -2
- package/.medusa/server/src/api/admin/email/templates/[kind]/send-test/route.js +2 -2
- package/.medusa/server/src/api/admin/email/templates/[kind]/test-sources/route.js +2 -2
- package/.medusa/server/src/api/admin/email/templates/route.js +2 -2
- package/.medusa/server/src/api/admin/plugin-features/[plugin_key]/actions/[action_key]/route.js +2 -2
- package/.medusa/server/src/api/admin/plugin-features/[plugin_key]/actions/[action_key]/runs/route.js +2 -2
- package/.medusa/server/src/api/admin/plugin-features/[plugin_key]/route.js +2 -2
- package/.medusa/server/src/api/admin/plugin-features/[plugin_key]/settings/route.js +2 -2
- package/.medusa/server/src/api/admin/plugin-features/route.js +2 -2
- package/.medusa/server/src/api/admin/tax-compliance/customer-addresses/[address_id]/tax-identification/route.js +15 -0
- package/.medusa/server/src/api/admin-first-login-password-policy.js +2 -2
- package/.medusa/server/src/api/answer-code-provider-route-not-found.js +2 -2
- package/.medusa/server/src/api/check-customer-address-tax-identification.js +93 -0
- package/.medusa/server/src/api/code-account-password-routes.js +2 -2
- package/.medusa/server/src/api/customer-address-identification-response.js +14 -0
- package/.medusa/server/src/api/middlewares.js +61 -7
- package/.medusa/server/src/api/password-policy.js +2 -2
- package/.medusa/server/src/api/plugin-actions.js +2 -2
- package/.medusa/server/src/api/plugin-features-http.js +2 -2
- package/.medusa/server/src/api/require-login-code-customer-email.js +2 -2
- package/.medusa/server/src/api/store/carts/[id]/completion-check/route.js +2 -2
- package/.medusa/server/src/api/store/carts/[id]/tax-identification/route.js +179 -0
- package/.medusa/server/src/api/store/customer-auth/password-policy/route.js +2 -2
- package/.medusa/server/src/api/store/customers/me/addresses/[address_id]/tax-identification/route.js +12 -0
- package/.medusa/server/src/api/store/customers/me/tax-identifications/route.js +14 -0
- package/.medusa/server/src/api/store/plugin-features/[plugin_key]/route.js +2 -2
- package/.medusa/server/src/api/store/plugin-features/route.js +2 -2
- package/.medusa/server/src/api/store/tax-identification-policy/route.js +21 -0
- package/.medusa/server/src/api/tax-identification-message.js +9 -0
- package/.medusa/server/src/api/to-response-amount.js +19 -0
- package/.medusa/server/src/customer-auth/application/prepare-code-account-password-reset.js +2 -2
- package/.medusa/server/src/customer-auth/application/request-login-code.js +2 -2
- package/.medusa/server/src/customer-auth/customer-password-policy.js +2 -2
- package/.medusa/server/src/customer-auth/domain/auth-methods.js +2 -2
- package/.medusa/server/src/customer-auth/domain/login-code.js +2 -2
- package/.medusa/server/src/customer-auth/login-code-state.js +2 -2
- package/.medusa/server/src/customer-auth/plugin-features.js +2 -2
- package/.medusa/server/src/documents/paths/documents.js +2 -2
- package/.medusa/server/src/documents/schemas/documents.js +2 -2
- package/.medusa/server/src/email/application/deliver-login-code.js +2 -2
- package/.medusa/server/src/email/domain/business-keys.js +2 -2
- package/.medusa/server/src/email/templates/blocks/render-document.js +2 -2
- package/.medusa/server/src/email/templates/render.js +2 -2
- package/.medusa/server/src/email/templates/validate.js +2 -2
- package/.medusa/server/src/email/types/template-data.js +2 -2
- package/.medusa/server/src/jobs/tax-compliance-state-sync.js +26 -0
- package/.medusa/server/src/modules/documents/service.js +2 -2
- package/.medusa/server/src/modules/email/domain/attachment.js +2 -2
- package/.medusa/server/src/modules/email/service.js +3 -3
- package/.medusa/server/src/modules/tax-compliance/domain/validation-policy.js +48 -0
- package/.medusa/server/src/modules/tax-compliance/index.js +15 -0
- package/.medusa/server/src/modules/tax-compliance/migrations/Migration20260814120459.js +18 -0
- package/.medusa/server/src/modules/tax-compliance/migrations/Migration20260814121724.js +14 -0
- package/.medusa/server/src/modules/tax-compliance/migrations/Migration20260814153410.js +14 -0
- package/.medusa/server/src/modules/tax-compliance/migrations/Migration20260929091620.js +27 -0
- package/.medusa/server/src/modules/tax-compliance/migrations/Migration20261011090147.js +16 -0
- package/.medusa/server/src/modules/tax-compliance/models/tax-compliance-state.js +29 -0
- package/.medusa/server/src/modules/tax-compliance/models/tax-compliance-validation.js +74 -0
- package/.medusa/server/src/modules/tax-compliance/runtime-settings.js +43 -0
- package/.medusa/server/src/modules/tax-compliance/service.js +693 -0
- package/.medusa/server/src/providers/email-otp/service.js +2 -2
- package/.medusa/server/src/providers/tax-compliance/index.js +11 -0
- package/.medusa/server/src/providers/tax-compliance/service.js +179 -0
- package/.medusa/server/src/public/constants.js +4 -2
- package/.medusa/server/src/public/index.js +6 -2
- package/.medusa/server/src/public/shop-config.js +6 -6
- package/.medusa/server/src/public/tax-compliance.js +22 -0
- package/.medusa/server/src/shared/lib/index.js +2 -1
- package/.medusa/server/src/shared/lib/optional-registration.js +34 -0
- package/.medusa/server/src/shop-config/{build-food-shop-config.js → build-shop-config.js} +15 -18
- package/.medusa/server/src/shop-config/options.js +4 -4
- package/.medusa/server/src/subscribers/affiliate-application-submitted.js +2 -2
- package/.medusa/server/src/subscribers/affiliate-consignment-reminder-due.js +2 -2
- package/.medusa/server/src/subscribers/documents-order-cancellation-ready.js +2 -2
- package/.medusa/server/src/subscribers/documents-refund-ready.js +2 -2
- package/.medusa/server/src/subscribers/documents-shipment-invoice-assignment-decided.js +2 -2
- package/.medusa/server/src/subscribers/packing-list-allocation-revised.js +2 -2
- package/.medusa/server/src/subscribers/tax-compliance-plugin-features-updated.js +25 -0
- package/.medusa/server/src/tax-compliance/complete-cart-hooks.js +26 -0
- package/.medusa/server/src/tax-compliance/integrations/finanzonline/client.js +222 -0
- package/.medusa/server/src/tax-compliance/integrations/finanzonline/validator.js +50 -0
- package/.medusa/server/src/tax-compliance/integrations/registry.js +26 -0
- package/.medusa/server/src/tax-compliance/integrations/validator.js +19 -0
- package/.medusa/server/src/tax-compliance/lib/order-tax-context.js +100 -0
- package/.medusa/server/src/tax-compliance/lib/tax-compliance-state.js +59 -0
- package/.medusa/server/src/tax-compliance/lib/tax-runtime-settings.js +79 -0
- package/.medusa/server/src/tax-compliance/plugin-features.js +73 -0
- package/.medusa/server/src/tax-compliance/resolve-services.js +7 -0
- package/.medusa/server/src/tax-compliance/types/tax-compliance.js +6 -0
- package/.medusa/server/src/workflows/documents/issue-invoice-after-shipment.js +25 -30
- package/.medusa/server/src/workflows/documents/issue-packing-list.js +3 -14
- package/.medusa/server/src/workflows/hooks/cart-tax-context.js +78 -0
- package/.medusa/server/src/workflows/hooks/order-tax-context.js +7 -0
- package/.medusa/server/src/workflows/hooks/shipping-tax-apportionment.js +145 -0
- package/.medusa/server/src/workflows/tax-compliance/apportion-order-shipping-tax.js +72 -0
- package/.medusa/server/src/workflows/tax-compliance/domain/requires-frozen-tax-evidence.js +27 -0
- package/.medusa/server/src/workflows/tax-compliance/freeze-order-evidence.js +125 -0
- package/.medusa/server/src/workflows/tax-compliance/submit-customer-address-tax-identification.js +18 -0
- package/.medusa/server/src/workflows/tax-compliance/submit-tax-identification.js +18 -0
- package/README.md +393 -61
- package/dist/customer-auth/domain/auth-methods.js +1 -1
- package/dist/customer-auth/plugin-features.js +1 -1
- package/dist/documents/types/admin-api.d.ts +1 -1
- package/dist/documents/types/document-summary.d.ts +1 -1
- package/dist/documents/types/store-api.d.ts +1 -1
- package/dist/email/types/template-data.js +1 -1
- package/dist/public/constants.d.ts +2 -0
- package/dist/public/constants.js +3 -1
- package/dist/public/index.d.ts +2 -1
- package/dist/public/index.js +5 -1
- package/dist/public/shop-config.d.ts +4 -4
- package/dist/public/shop-config.js +5 -5
- package/dist/public/tax-compliance.d.ts +30 -0
- package/dist/public/tax-compliance.js +21 -0
- package/dist/shared/lib/index.d.ts +1 -0
- package/dist/shared/lib/index.js +1 -0
- package/dist/shared/lib/optional-registration.d.ts +18 -0
- package/dist/shared/lib/optional-registration.js +33 -0
- package/dist/shop-config/{build-food-shop-config.d.ts → build-shop-config.d.ts} +12 -12
- package/dist/shop-config/{build-food-shop-config.js → build-shop-config.js} +14 -17
- package/dist/shop-config/options.d.ts +3 -3
- package/dist/shop-config/options.js +3 -3
- package/package.json +7 -6
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const utils_1 = require("@medusajs/framework/utils");
|
|
4
|
+
const TaxComplianceValidation = utils_1.model
|
|
5
|
+
.define({
|
|
6
|
+
name: "tax_compliance_validation",
|
|
7
|
+
tableName: "tax_compliance_validation",
|
|
8
|
+
}, {
|
|
9
|
+
id: utils_1.model.id({ prefix: "tcv" }).primaryKey(),
|
|
10
|
+
// Exactly one subject per record (CHECK in the migration): a cart, or a
|
|
11
|
+
// saved customer address together with its customer.
|
|
12
|
+
cart_id: utils_1.model.text().nullable(),
|
|
13
|
+
customer_address_id: utils_1.model.text().nullable(),
|
|
14
|
+
customer_id: utils_1.model.text().nullable(),
|
|
15
|
+
order_id: utils_1.model.text().nullable(),
|
|
16
|
+
status: utils_1.model.text(),
|
|
17
|
+
company_name: utils_1.model.text(),
|
|
18
|
+
customer_vat_number: utils_1.model.text(),
|
|
19
|
+
billing_address: utils_1.model.json(),
|
|
20
|
+
delivery_country_code: utils_1.model.text(),
|
|
21
|
+
merchant_country_code: utils_1.model.text(),
|
|
22
|
+
merchant_vat_number: utils_1.model.text(),
|
|
23
|
+
provider: utils_1.model.text(),
|
|
24
|
+
provider_facts: utils_1.model.json().nullable(),
|
|
25
|
+
validation_reason: utils_1.model.text(),
|
|
26
|
+
cart_fingerprint: utils_1.model.text(),
|
|
27
|
+
merchant_profile_fingerprint: utils_1.model.text(),
|
|
28
|
+
validated_at: utils_1.model.dateTime(),
|
|
29
|
+
validation_date: utils_1.model.text(),
|
|
30
|
+
is_current: utils_1.model.boolean().default(true),
|
|
31
|
+
cache_used: utils_1.model.boolean().default(false),
|
|
32
|
+
reuse_reason: utils_1.model.text().nullable(),
|
|
33
|
+
})
|
|
34
|
+
.indexes([
|
|
35
|
+
{
|
|
36
|
+
name: "IDX_tax_compliance_validation_cart_id",
|
|
37
|
+
on: ["cart_id"],
|
|
38
|
+
where: "deleted_at IS NULL",
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
name: "IDX_tax_compliance_validation_order_id",
|
|
42
|
+
on: ["order_id"],
|
|
43
|
+
where: "deleted_at IS NULL",
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
name: "IDX_tax_compliance_validation_current_uid_day",
|
|
47
|
+
on: ["customer_vat_number", "validation_date"],
|
|
48
|
+
where: "deleted_at IS NULL AND is_current = true",
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
name: "IDX_tax_compliance_validation_merchant_uid_day",
|
|
52
|
+
on: ["merchant_vat_number", "customer_vat_number", "validation_date"],
|
|
53
|
+
where: "deleted_at IS NULL",
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
name: "IDX_tax_compliance_validation_current_cart",
|
|
57
|
+
on: ["cart_id"],
|
|
58
|
+
unique: true,
|
|
59
|
+
where: "deleted_at IS NULL AND is_current = true",
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
name: "IDX_tax_compliance_validation_customer_id",
|
|
63
|
+
on: ["customer_id"],
|
|
64
|
+
where: "deleted_at IS NULL",
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
name: "IDX_tax_compliance_validation_current_customer_address",
|
|
68
|
+
on: ["customer_address_id"],
|
|
69
|
+
unique: true,
|
|
70
|
+
where: "deleted_at IS NULL AND is_current = true",
|
|
71
|
+
},
|
|
72
|
+
]);
|
|
73
|
+
exports.default = TaxComplianceValidation;
|
|
74
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGF4LWNvbXBsaWFuY2UtdmFsaWRhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9tb2R1bGVzL3RheC1jb21wbGlhbmNlL21vZGVscy90YXgtY29tcGxpYW5jZS12YWxpZGF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEscURBQWlEO0FBRWpELE1BQU0sdUJBQXVCLEdBQUcsYUFBSztLQUNsQyxNQUFNLENBQ0w7SUFDRSxJQUFJLEVBQUUsMkJBQTJCO0lBQ2pDLFNBQVMsRUFBRSwyQkFBMkI7Q0FDdkMsRUFDRDtJQUNFLEVBQUUsRUFBRSxhQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsVUFBVSxFQUFFO0lBQzVDLHdFQUF3RTtJQUN4RSxxREFBcUQ7SUFDckQsT0FBTyxFQUFFLGFBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDaEMsbUJBQW1CLEVBQUUsYUFBSyxDQUFDLElBQUksRUFBRSxDQUFDLFFBQVEsRUFBRTtJQUM1QyxXQUFXLEVBQUUsYUFBSyxDQUFDLElBQUksRUFBRSxDQUFDLFFBQVEsRUFBRTtJQUNwQyxRQUFRLEVBQUUsYUFBSyxDQUFDLElBQUksRUFBRSxDQUFDLFFBQVEsRUFBRTtJQUNqQyxNQUFNLEVBQUUsYUFBSyxDQUFDLElBQUksRUFBRTtJQUNwQixZQUFZLEVBQUUsYUFBSyxDQUFDLElBQUksRUFBRTtJQUMxQixtQkFBbUIsRUFBRSxhQUFLLENBQUMsSUFBSSxFQUFFO0lBQ2pDLGVBQWUsRUFBRSxhQUFLLENBQUMsSUFBSSxFQUFFO0lBQzdCLHFCQUFxQixFQUFFLGFBQUssQ0FBQyxJQUFJLEVBQUU7SUFDbkMscUJBQXFCLEVBQUUsYUFBSyxDQUFDLElBQUksRUFBRTtJQUNuQyxtQkFBbUIsRUFBRSxhQUFLLENBQUMsSUFBSSxFQUFFO0lBQ2pDLFFBQVEsRUFBRSxhQUFLLENBQUMsSUFBSSxFQUFFO0lBQ3RCLGNBQWMsRUFBRSxhQUFLLENBQUMsSUFBSSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQ3ZDLGlCQUFpQixFQUFFLGFBQUssQ0FBQyxJQUFJLEVBQUU7SUFDL0IsZ0JBQWdCLEVBQUUsYUFBSyxDQUFDLElBQUksRUFBRTtJQUM5Qiw0QkFBNEIsRUFBRSxhQUFLLENBQUMsSUFBSSxFQUFFO0lBQzFDLFlBQVksRUFBRSxhQUFLLENBQUMsUUFBUSxFQUFFO0lBQzlCLGVBQWUsRUFBRSxhQUFLLENBQUMsSUFBSSxFQUFFO0lBQzdCLFVBQVUsRUFBRSxhQUFLLENBQUMsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQztJQUN6QyxVQUFVLEVBQUUsYUFBSyxDQUFDLE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUM7SUFDMUMsWUFBWSxFQUFFLGFBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQyxRQUFRLEVBQUU7Q0FDdEMsQ0FDRjtLQUNBLE9BQU8sQ0FBQztJQUNQO1FBQ0UsSUFBSSxFQUFFLHVDQUF1QztRQUM3QyxFQUFFLEVBQUUsQ0FBQyxTQUFTLENBQUM7UUFDZixLQUFLLEVBQUUsb0JBQW9CO0tBQzVCO0lBQ0Q7UUFDRSxJQUFJLEVBQUUsd0NBQXdDO1FBQzlDLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQztRQUNoQixLQUFLLEVBQUUsb0JBQW9CO0tBQzVCO0lBQ0Q7UUFDRSxJQUFJLEVBQUUsK0NBQStDO1FBQ3JELEVBQUUsRUFBRSxDQUFDLHFCQUFxQixFQUFFLGlCQUFpQixDQUFDO1FBQzlDLEtBQUssRUFBRSwwQ0FBMEM7S0FDbEQ7SUFDRDtRQUNFLElBQUksRUFBRSxnREFBZ0Q7UUFDdEQsRUFBRSxFQUFFLENBQUMscUJBQXFCLEVBQUUscUJBQXFCLEVBQUUsaUJBQWlCLENBQUM7UUFDckUsS0FBSyxFQUFFLG9CQUFvQjtLQUM1QjtJQUNEO1FBQ0UsSUFBSSxFQUFFLDRDQUE0QztRQUNsRCxFQUFFLEVBQUUsQ0FBQyxTQUFTLENBQUM7UUFDZixNQUFNLEVBQUUsSUFBSTtRQUNaLEtBQUssRUFBRSwwQ0FBMEM7S0FDbEQ7SUFDRDtRQUNFLElBQUksRUFBRSwyQ0FBMkM7UUFDakQsRUFBRSxFQUFFLENBQUMsYUFBYSxDQUFDO1FBQ25CLEtBQUssRUFBRSxvQkFBb0I7S0FDNUI7SUFDRDtRQUNFLElBQUksRUFBRSx3REFBd0Q7UUFDOUQsRUFBRSxFQUFFLENBQUMscUJBQXFCLENBQUM7UUFDM0IsTUFBTSxFQUFFLElBQUk7UUFDWixLQUFLLEVBQUUsMENBQTBDO0tBQ2xEO0NBQ0YsQ0FBQyxDQUFBO0FBRUosa0JBQWUsdUJBQXVCLENBQUEifQ==
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.toFinanzOnlineCredentials = exports.FINANZONLINE_SETTING_KEYS = exports.toMerchantProfile = exports.normalizeMerchantProfile = void 0;
|
|
4
|
+
const lib_1 = require("../../shared/lib");
|
|
5
|
+
const text = (value) => {
|
|
6
|
+
if (typeof value !== "string") {
|
|
7
|
+
return undefined;
|
|
8
|
+
}
|
|
9
|
+
const trimmed = value.trim();
|
|
10
|
+
return trimmed ? trimmed : undefined;
|
|
11
|
+
};
|
|
12
|
+
/** Lower-case country code and upper-case UID without whitespace. */
|
|
13
|
+
const normalizeMerchantProfile = (merchant) => ({
|
|
14
|
+
countryCode: merchant.countryCode.trim().replace(/\s+/g, " ").toLowerCase(),
|
|
15
|
+
vatNumber: (0, lib_1.normalizeVatNumber)(merchant.vatNumber),
|
|
16
|
+
});
|
|
17
|
+
exports.normalizeMerchantProfile = normalizeMerchantProfile;
|
|
18
|
+
/** Normalized; `null` while country or UID is unset. */
|
|
19
|
+
const toMerchantProfile = (values) => {
|
|
20
|
+
const countryCode = text(values.country_code);
|
|
21
|
+
const vatNumber = text(values.vat_number);
|
|
22
|
+
return countryCode && vatNumber
|
|
23
|
+
? (0, exports.normalizeMerchantProfile)({ countryCode, vatNumber })
|
|
24
|
+
: null;
|
|
25
|
+
};
|
|
26
|
+
exports.toMerchantProfile = toMerchantProfile;
|
|
27
|
+
exports.FINANZONLINE_SETTING_KEYS = [
|
|
28
|
+
"finanzonline_participant_id",
|
|
29
|
+
"finanzonline_user_id",
|
|
30
|
+
"finanzonline_password",
|
|
31
|
+
];
|
|
32
|
+
/** All three values or none: a partial set counts as not configured. */
|
|
33
|
+
const toFinanzOnlineCredentials = (values) => {
|
|
34
|
+
const participantId = text(values.finanzonline_participant_id);
|
|
35
|
+
const userId = text(values.finanzonline_user_id);
|
|
36
|
+
const password = text(values.finanzonline_password);
|
|
37
|
+
const missing = exports.FINANZONLINE_SETTING_KEYS.filter((key) => !text(values[key]));
|
|
38
|
+
return participantId && userId && password
|
|
39
|
+
? { credentials: { participantId, userId, password }, missing: [] }
|
|
40
|
+
: { credentials: undefined, missing };
|
|
41
|
+
};
|
|
42
|
+
exports.toFinanzOnlineCredentials = toFinanzOnlineCredentials;
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVudGltZS1zZXR0aW5ncy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9tb2R1bGVzL3RheC1jb21wbGlhbmNlL3J1bnRpbWUtc2V0dGluZ3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsMENBQXFEO0FBaUJyRCxNQUFNLElBQUksR0FBRyxDQUFDLEtBQWMsRUFBc0IsRUFBRTtJQUNsRCxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQzlCLE9BQU8sU0FBUyxDQUFBO0lBQ2xCLENBQUM7SUFDRCxNQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUE7SUFDNUIsT0FBTyxPQUFPLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFBO0FBQ3RDLENBQUMsQ0FBQTtBQUVELHFFQUFxRTtBQUM5RCxNQUFNLHdCQUF3QixHQUFHLENBQ3RDLFFBQXNDLEVBQ1IsRUFBRSxDQUFDLENBQUM7SUFDbEMsV0FBVyxFQUFFLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQyxXQUFXLEVBQUU7SUFDM0UsU0FBUyxFQUFFLElBQUEsd0JBQWtCLEVBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQztDQUNsRCxDQUFDLENBQUE7QUFMVyxRQUFBLHdCQUF3Qiw0QkFLbkM7QUFFRix3REFBd0Q7QUFDakQsTUFBTSxpQkFBaUIsR0FBRyxDQUMvQixNQUF1QyxFQUNGLEVBQUU7SUFDdkMsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQTtJQUM3QyxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFBO0lBQ3pDLE9BQU8sV0FBVyxJQUFJLFNBQVM7UUFDN0IsQ0FBQyxDQUFDLElBQUEsZ0NBQXdCLEVBQUMsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLENBQUM7UUFDdEQsQ0FBQyxDQUFDLElBQUksQ0FBQTtBQUNWLENBQUMsQ0FBQTtBQVJZLFFBQUEsaUJBQWlCLHFCQVE3QjtBQUVZLFFBQUEseUJBQXlCLEdBQUc7SUFDdkMsNkJBQTZCO0lBQzdCLHNCQUFzQjtJQUN0Qix1QkFBdUI7Q0FDZixDQUFBO0FBT1Ysd0VBQXdFO0FBQ2pFLE1BQU0seUJBQXlCLEdBQUcsQ0FDdkMsTUFBd0MsRUFDUixFQUFFO0lBQ2xDLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsMkJBQTJCLENBQUMsQ0FBQTtJQUM5RCxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUE7SUFDaEQsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFBO0lBQ25ELE1BQU0sT0FBTyxHQUFHLGlDQUF5QixDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUU3RSxPQUFPLGFBQWEsSUFBSSxNQUFNLElBQUksUUFBUTtRQUN4QyxDQUFDLENBQUMsRUFBRSxXQUFXLEVBQUUsRUFBRSxhQUFhLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUU7UUFDbkUsQ0FBQyxDQUFDLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsQ0FBQTtBQUN6QyxDQUFDLENBQUE7QUFYWSxRQUFBLHlCQUF5Qiw2QkFXckMifQ==
|