@shipengine/elements 2.24.1 → 2.26.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/README.md +187 -6
- package/dist/cjs/components/display-term/display-term.cjs +13 -4
- package/dist/cjs/components/field/credit-card-input/credit-card-input.cjs +46 -29
- package/dist/cjs/components/field/rate-select/rate-card/rate-card.cjs +29 -5
- package/dist/cjs/components/field/rate-select/rate-card/rate-card.styles.cjs +8 -3
- package/dist/cjs/components/field/rate-select/rate-select.cjs +26 -5
- package/dist/cjs/components/forms/address-form/address-form-schema.cjs +3 -3
- package/dist/cjs/components/forms/edit-billing-form/edit-billing-form.cjs +57 -4
- package/dist/cjs/components/grid-controller/error-banner/error-banner.cjs +74 -0
- package/dist/cjs/components/{error-display/error-display.styles.cjs → grid-controller/error-banner/error-banner.styles.cjs} +8 -4
- package/dist/cjs/components/grid-controller/error-banner/index.cjs +7 -0
- package/dist/cjs/components/grid-controller/grid-controller.cjs +49 -3
- package/dist/cjs/components/grid-controller/grid-controller.styles.cjs +11 -1
- package/dist/cjs/components/history/history-card/history-card.cjs +1 -1
- package/dist/cjs/components/history/history-card-extension/history-card-extension.cjs +0 -1
- package/dist/cjs/components/service-card/service-card.cjs +4 -4
- package/dist/cjs/components/service-card/service-card.styles.cjs +5 -2
- package/dist/cjs/components/service-point-display/service-point-display.cjs +1 -36
- package/dist/cjs/components/service-point-display/service-point-display.styles.cjs +0 -12
- package/dist/cjs/components/shipment-not-found-error/index.cjs +7 -0
- package/dist/cjs/components/shipment-not-found-error/shipment-not-found-error.cjs +40 -0
- package/dist/cjs/components/shipment-not-found-error/shipment-not-found-error.styles.cjs +24 -0
- package/dist/cjs/components/suspend-purchase/suspend-purchase.cjs +11 -3
- package/dist/cjs/components/ups-terms-disclosure/index.cjs +7 -0
- package/dist/cjs/components/ups-terms-disclosure/ups-terms-disclosure.cjs +35 -0
- package/dist/cjs/elements/labels-grid/hooks/use-labels-grid.cjs +45 -5
- package/dist/cjs/elements/labels-grid/labels-grid.cjs +24 -6
- package/dist/cjs/elements/purchase-label/components/rate-form/rate-form.cjs +13 -3
- package/dist/cjs/elements/purchase-label/components/rate-form/rate-schema.cjs +7 -2
- package/dist/cjs/elements/purchase-label/components/rate-form/rate-view.cjs +2 -0
- package/dist/cjs/elements/purchase-label/hooks/use-rate-options.cjs +31 -2
- package/dist/cjs/elements/purchase-label/hooks/use-rates-form.cjs +14 -18
- package/dist/cjs/elements/purchase-label/hooks/use-request-rates.cjs +20 -20
- package/dist/cjs/elements/purchase-label/purchase-label.cjs +4 -1
- package/dist/cjs/elements/shipment-summary/components/label-display/label-card.cjs +16 -31
- package/dist/cjs/elements/shipment-summary/components/label-display/label-card.styles.cjs +0 -19
- package/dist/cjs/elements/shipment-summary/components/label-display/paperless-label-display.cjs +54 -0
- package/dist/cjs/elements/shipment-summary/components/label-display/paperless-label-display.styles.cjs +27 -0
- package/dist/cjs/elements/shipments-grid/hooks/use-shipments-grid.cjs +41 -3
- package/dist/cjs/elements/shipments-grid/shipments-grid.cjs +18 -3
- package/dist/cjs/features/manage-carriers/hooks/use-list-funding-source-carriers.cjs +9 -10
- package/dist/cjs/features/manage-carriers/manage-carriers-row/manage-carriers-row.cjs +6 -1
- package/dist/cjs/features/manage-carriers/register-funding-source-carrier-form/register-funding-source-carrier-form.cjs +3 -3
- package/dist/cjs/features/payment-method-settings/payment-method-settings.cjs +56 -18
- package/dist/cjs/hooks/use-configure-shipment.cjs +32 -11
- package/dist/cjs/hooks/use-helpers.cjs +4 -1
- package/dist/cjs/index.cjs +15 -12
- package/dist/cjs/locales/en/account-settings.json.cjs +6 -0
- package/dist/cjs/locales/en/common.json.cjs +2 -0
- package/dist/cjs/locales/en/grid-controller.json.cjs +13 -0
- package/dist/cjs/locales/en/index.cjs +2 -1
- package/dist/cjs/locales/en/onboarding.json.cjs +5 -0
- package/dist/cjs/locales/en/purchase-label.json.cjs +5 -3
- package/dist/cjs/package.json.cjs +1 -1
- package/dist/cjs/utilities/address.cjs +29 -0
- package/dist/cjs/utilities/files.cjs +35 -0
- package/dist/cjs/utilities/formatString.cjs +9 -0
- package/dist/cjs/utilities/index.cjs +5 -0
- package/dist/cjs/utilities/money.cjs +14 -0
- package/dist/cjs/utilities/rate-warning-messages.cjs +25 -0
- package/dist/cjs/utilities/shipengine/warehouses.cjs +2 -1
- package/dist/cjs/workflows/connect-external-carrier/connect-external-carrier.cjs +7 -3
- package/dist/cjs/workflows/label-workflow/label-workflow.cjs +11 -3
- package/dist/cjs/workflows/onboarding/components/confirmation-and-submission-step/confirmation-and-submission-step.cjs +1 -1
- package/dist/cjs/workflows/onboarding/components/confirmation-and-submission-step/use-confirmation-and-submission-step.cjs +17 -1
- package/dist/cjs/workflows/onboarding/components/onboarding-wizard/onboarding-wizard.cjs +4 -1
- package/dist/cjs/workflows/onboarding/components/terms-agreement-form/terms-agreement-form.cjs +18 -11
- package/dist/cjs/workflows/onboarding/components/terms-agreement-form/terms-agreement-form.styles.cjs +0 -3
- package/dist/cjs/workflows/onboarding/components/terms-agreement-step/terms-agreement-step.cjs +36 -12
- package/dist/cjs/workflows/onboarding/components/terms-agreement-step/terms-agreement-step.styles.cjs +10 -4
- package/dist/cjs/workflows/onboarding/components/terms-agreement-step/use-terms-agreement-step.cjs +12 -12
- package/dist/esm/components/display-term/display-term.js +14 -5
- package/dist/esm/components/field/credit-card-input/credit-card-input.js +47 -30
- package/dist/esm/components/field/rate-select/rate-card/rate-card.js +30 -6
- package/dist/esm/components/field/rate-select/rate-card/rate-card.styles.js +8 -3
- package/dist/esm/components/field/rate-select/rate-select.js +26 -5
- package/dist/esm/components/forms/address-form/address-form-schema.js +3 -3
- package/dist/esm/components/forms/edit-billing-form/edit-billing-form.js +58 -5
- package/dist/esm/components/grid-controller/error-banner/error-banner.js +72 -0
- package/dist/esm/components/{error-display/error-display.styles.js → grid-controller/error-banner/error-banner.styles.js} +8 -4
- package/dist/esm/components/grid-controller/error-banner/index.js +1 -0
- package/dist/esm/components/grid-controller/grid-controller.js +51 -5
- package/dist/esm/components/grid-controller/grid-controller.styles.js +11 -1
- package/dist/esm/components/history/history-card/history-card.js +1 -1
- package/dist/esm/components/history/history-card-extension/history-card-extension.js +0 -1
- package/dist/esm/components/service-card/service-card.js +4 -4
- package/dist/esm/components/service-card/service-card.styles.js +5 -2
- package/dist/esm/components/service-point-display/service-point-display.js +2 -37
- package/dist/esm/components/service-point-display/service-point-display.styles.js +0 -12
- package/dist/esm/components/shipment-not-found-error/index.js +1 -0
- package/dist/esm/components/shipment-not-found-error/shipment-not-found-error.js +38 -0
- package/dist/esm/components/shipment-not-found-error/shipment-not-found-error.styles.js +22 -0
- package/dist/esm/components/suspend-purchase/suspend-purchase.js +11 -3
- package/dist/esm/components/ups-terms-disclosure/index.js +1 -0
- package/dist/esm/components/ups-terms-disclosure/ups-terms-disclosure.js +33 -0
- package/dist/esm/elements/labels-grid/hooks/use-labels-grid.js +46 -6
- package/dist/esm/elements/labels-grid/labels-grid.js +24 -6
- package/dist/esm/elements/purchase-label/components/rate-form/rate-form.js +14 -4
- package/dist/esm/elements/purchase-label/components/rate-form/rate-schema.js +7 -2
- package/dist/esm/elements/purchase-label/components/rate-form/rate-view.js +2 -0
- package/dist/esm/elements/purchase-label/hooks/use-rate-options.js +31 -2
- package/dist/esm/elements/purchase-label/hooks/use-rates-form.js +14 -18
- package/dist/esm/elements/purchase-label/hooks/use-request-rates.js +20 -20
- package/dist/esm/elements/purchase-label/purchase-label.js +4 -1
- package/dist/esm/elements/shipment-summary/components/label-display/label-card.js +18 -33
- package/dist/esm/elements/shipment-summary/components/label-display/label-card.styles.js +0 -19
- package/dist/esm/elements/shipment-summary/components/label-display/paperless-label-display.js +52 -0
- package/dist/esm/elements/shipment-summary/components/label-display/paperless-label-display.styles.js +25 -0
- package/dist/esm/elements/shipments-grid/hooks/use-shipments-grid.js +42 -4
- package/dist/esm/elements/shipments-grid/shipments-grid.js +18 -3
- package/dist/esm/features/manage-carriers/hooks/use-list-funding-source-carriers.js +9 -10
- package/dist/esm/features/manage-carriers/manage-carriers-row/manage-carriers-row.js +7 -2
- package/dist/esm/features/manage-carriers/register-funding-source-carrier-form/register-funding-source-carrier-form.js +3 -3
- package/dist/esm/features/payment-method-settings/payment-method-settings.js +57 -19
- package/dist/esm/hooks/use-configure-shipment.js +33 -12
- package/dist/esm/hooks/use-helpers.js +4 -1
- package/dist/esm/index.js +1 -0
- package/dist/esm/locales/en/account-settings.json.js +6 -0
- package/dist/esm/locales/en/common.json.js +2 -0
- package/dist/esm/locales/en/grid-controller.json.js +11 -0
- package/dist/esm/locales/en/index.js +2 -1
- package/dist/esm/locales/en/onboarding.json.js +5 -0
- package/dist/esm/locales/en/purchase-label.json.js +5 -3
- package/dist/esm/package.json.js +1 -1
- package/dist/esm/utilities/address.js +26 -0
- package/dist/esm/utilities/files.js +32 -0
- package/dist/esm/utilities/formatString.js +9 -1
- package/dist/esm/utilities/index.js +2 -0
- package/dist/esm/utilities/money.js +14 -1
- package/dist/esm/utilities/rate-warning-messages.js +23 -0
- package/dist/esm/utilities/shipengine/warehouses.js +2 -1
- package/dist/esm/workflows/connect-external-carrier/connect-external-carrier.js +7 -3
- package/dist/esm/workflows/label-workflow/label-workflow.js +11 -3
- package/dist/esm/workflows/onboarding/components/confirmation-and-submission-step/confirmation-and-submission-step.js +1 -1
- package/dist/esm/workflows/onboarding/components/confirmation-and-submission-step/use-confirmation-and-submission-step.js +17 -1
- package/dist/esm/workflows/onboarding/components/onboarding-wizard/onboarding-wizard.js +4 -1
- package/dist/esm/workflows/onboarding/components/terms-agreement-form/terms-agreement-form.js +18 -11
- package/dist/esm/workflows/onboarding/components/terms-agreement-form/terms-agreement-form.styles.js +0 -3
- package/dist/esm/workflows/onboarding/components/terms-agreement-step/terms-agreement-step.js +37 -13
- package/dist/esm/workflows/onboarding/components/terms-agreement-step/terms-agreement-step.styles.js +10 -4
- package/dist/esm/workflows/onboarding/components/terms-agreement-step/use-terms-agreement-step.js +12 -12
- package/dist/types/components/display-term/display-term.d.ts +3 -3
- package/dist/types/components/display-term/display-term.d.ts.map +1 -1
- package/dist/types/components/field/credit-card-input/credit-card-input.d.ts.map +1 -1
- package/dist/types/components/field/rate-select/rate-card/rate-card.d.ts +4 -2
- package/dist/types/components/field/rate-select/rate-card/rate-card.d.ts.map +1 -1
- package/dist/types/components/field/rate-select/rate-card/rate-card.styles.d.ts +7 -2
- package/dist/types/components/field/rate-select/rate-card/rate-card.styles.d.ts.map +1 -1
- package/dist/types/components/field/rate-select/rate-select.d.ts +1 -0
- package/dist/types/components/field/rate-select/rate-select.d.ts.map +1 -1
- package/dist/types/components/forms/address-form/address-form-schema.d.ts.map +1 -1
- package/dist/types/components/forms/edit-billing-form/edit-billing-form.d.ts +2 -1
- package/dist/types/components/forms/edit-billing-form/edit-billing-form.d.ts.map +1 -1
- package/dist/types/components/grid-controller/error-banner/error-banner.d.ts +10 -0
- package/dist/types/components/grid-controller/error-banner/error-banner.d.ts.map +1 -0
- package/dist/types/components/grid-controller/error-banner/error-banner.styles.d.ts +24 -0
- package/dist/types/components/grid-controller/error-banner/error-banner.styles.d.ts.map +1 -0
- package/dist/types/components/grid-controller/error-banner/index.d.ts +2 -0
- package/dist/types/components/grid-controller/error-banner/index.d.ts.map +1 -0
- package/dist/types/components/grid-controller/grid-controller.d.ts +8 -1
- package/dist/types/components/grid-controller/grid-controller.d.ts.map +1 -1
- package/dist/types/components/grid-controller/grid-controller.styles.d.ts +10 -0
- package/dist/types/components/grid-controller/grid-controller.styles.d.ts.map +1 -1
- package/dist/types/components/history/history-card-extension/history-card-extension.d.ts.map +1 -1
- package/dist/types/components/service-card/service-card.d.ts +1 -1
- package/dist/types/components/service-card/service-card.d.ts.map +1 -1
- package/dist/types/components/service-card/service-card.styles.d.ts +4 -1
- package/dist/types/components/service-card/service-card.styles.d.ts.map +1 -1
- package/dist/types/components/service-point-display/service-point-display.d.ts.map +1 -1
- package/dist/types/components/service-point-display/service-point-display.styles.d.ts +0 -12
- package/dist/types/components/service-point-display/service-point-display.styles.d.ts.map +1 -1
- package/dist/types/components/shipment-not-found-error/index.d.ts +2 -0
- package/dist/types/components/shipment-not-found-error/index.d.ts.map +1 -0
- package/dist/types/components/shipment-not-found-error/shipment-not-found-error.d.ts +6 -0
- package/dist/types/components/shipment-not-found-error/shipment-not-found-error.d.ts.map +1 -0
- package/dist/types/components/shipment-not-found-error/shipment-not-found-error.styles.d.ts +19 -0
- package/dist/types/components/shipment-not-found-error/shipment-not-found-error.styles.d.ts.map +1 -0
- package/dist/types/components/suspend-purchase/suspend-purchase.d.ts +4 -2
- package/dist/types/components/suspend-purchase/suspend-purchase.d.ts.map +1 -1
- package/dist/types/components/ups-terms-disclosure/index.d.ts +2 -0
- package/dist/types/components/ups-terms-disclosure/index.d.ts.map +1 -0
- package/dist/types/components/ups-terms-disclosure/ups-terms-disclosure.d.ts +2 -0
- package/dist/types/components/ups-terms-disclosure/ups-terms-disclosure.d.ts.map +1 -0
- package/dist/types/elements/labels-grid/hooks/use-labels-grid.d.ts +7 -2
- package/dist/types/elements/labels-grid/hooks/use-labels-grid.d.ts.map +1 -1
- package/dist/types/elements/labels-grid/labels-grid.d.ts +29 -3
- package/dist/types/elements/labels-grid/labels-grid.d.ts.map +1 -1
- package/dist/types/elements/manage-carriers/manage-carriers.d.ts +23 -1
- package/dist/types/elements/manage-carriers/manage-carriers.d.ts.map +1 -1
- package/dist/types/elements/manage-external-carriers/manage-external-carriers.d.ts +23 -1
- package/dist/types/elements/manage-external-carriers/manage-external-carriers.d.ts.map +1 -1
- package/dist/types/elements/manage-funding/manage-funding-element.d.ts +23 -1
- package/dist/types/elements/manage-funding/manage-funding-element.d.ts.map +1 -1
- package/dist/types/elements/manage-warehouses/manage-warehouses.d.ts +23 -1
- package/dist/types/elements/manage-warehouses/manage-warehouses.d.ts.map +1 -1
- package/dist/types/elements/payment-method-settings/payment-method-settings-element.d.ts +23 -1
- package/dist/types/elements/payment-method-settings/payment-method-settings-element.d.ts.map +1 -1
- package/dist/types/elements/purchase-label/components/rate-form/rate-form.d.ts +1 -1
- package/dist/types/elements/purchase-label/components/rate-form/rate-form.d.ts.map +1 -1
- package/dist/types/elements/purchase-label/components/rate-form/rate-schema.d.ts +10 -1
- package/dist/types/elements/purchase-label/components/rate-form/rate-schema.d.ts.map +1 -1
- package/dist/types/elements/purchase-label/components/rate-form/rate-view.d.ts +2 -1
- package/dist/types/elements/purchase-label/components/rate-form/rate-view.d.ts.map +1 -1
- package/dist/types/elements/purchase-label/hooks/use-rate-options.d.ts.map +1 -1
- package/dist/types/elements/purchase-label/hooks/use-rates-form.d.ts +2 -2
- package/dist/types/elements/purchase-label/hooks/use-rates-form.d.ts.map +1 -1
- package/dist/types/elements/purchase-label/hooks/use-request-rates.d.ts.map +1 -1
- package/dist/types/elements/purchase-label/purchase-label.d.ts +23 -1
- package/dist/types/elements/purchase-label/purchase-label.d.ts.map +1 -1
- package/dist/types/elements/select-label-layout/select-label-layout-element.d.ts +23 -1
- package/dist/types/elements/select-label-layout/select-label-layout-element.d.ts.map +1 -1
- package/dist/types/elements/shipment-summary/components/label-display/label-card.d.ts.map +1 -1
- package/dist/types/elements/shipment-summary/components/label-display/label-card.styles.d.ts +0 -19
- package/dist/types/elements/shipment-summary/components/label-display/label-card.styles.d.ts.map +1 -1
- package/dist/types/elements/shipment-summary/components/label-display/paperless-label-display.d.ts +8 -0
- package/dist/types/elements/shipment-summary/components/label-display/paperless-label-display.d.ts.map +1 -0
- package/dist/types/elements/shipment-summary/components/label-display/paperless-label-display.styles.d.ts +22 -0
- package/dist/types/elements/shipment-summary/components/label-display/paperless-label-display.styles.d.ts.map +1 -0
- package/dist/types/elements/shipment-summary/shipment-summary.d.ts +23 -1
- package/dist/types/elements/shipment-summary/shipment-summary.d.ts.map +1 -1
- package/dist/types/elements/shipments-grid/hooks/use-shipments-grid.d.ts +6 -1
- package/dist/types/elements/shipments-grid/hooks/use-shipments-grid.d.ts.map +1 -1
- package/dist/types/elements/shipments-grid/shipments-grid.d.ts +32 -2
- package/dist/types/elements/shipments-grid/shipments-grid.d.ts.map +1 -1
- package/dist/types/elements/theme-creator/theme-creator.d.ts +23 -1
- package/dist/types/elements/theme-creator/theme-creator.d.ts.map +1 -1
- package/dist/types/elements/transaction-history/transaction-history-element.d.ts +23 -1
- package/dist/types/elements/transaction-history/transaction-history-element.d.ts.map +1 -1
- package/dist/types/elements/unit-settings/unit-settings-element.d.ts +23 -1
- package/dist/types/elements/unit-settings/unit-settings-element.d.ts.map +1 -1
- package/dist/types/elements/vat-settings/vat-settings-element.d.ts +23 -1
- package/dist/types/elements/vat-settings/vat-settings-element.d.ts.map +1 -1
- package/dist/types/elements/void-label/void-label.d.ts +23 -1
- package/dist/types/elements/void-label/void-label.d.ts.map +1 -1
- package/dist/types/features/manage-carriers/hooks/use-list-funding-source-carriers.d.ts.map +1 -1
- package/dist/types/features/manage-carriers/manage-carriers-row/manage-carriers-row.d.ts.map +1 -1
- package/dist/types/features/manage-carriers/register-funding-source-carrier-form/register-funding-source-carrier-form.d.ts +3 -2
- package/dist/types/features/manage-carriers/register-funding-source-carrier-form/register-funding-source-carrier-form.d.ts.map +1 -1
- package/dist/types/features/payment-method-settings/payment-method-settings.d.ts.map +1 -1
- package/dist/types/hooks/use-configure-shipment.d.ts +1 -0
- package/dist/types/hooks/use-configure-shipment.d.ts.map +1 -1
- package/dist/types/hooks/use-helpers.d.ts +2 -0
- package/dist/types/hooks/use-helpers.d.ts.map +1 -1
- package/dist/types/index.d.ts +1 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/locales/en/index.d.ts +23 -1
- package/dist/types/locales/en/index.d.ts.map +1 -1
- package/dist/types/types/index.d.ts +5 -4
- package/dist/types/types/index.d.ts.map +1 -1
- package/dist/types/types/rates.d.ts +1 -0
- package/dist/types/types/rates.d.ts.map +1 -1
- package/dist/types/types/terms-with-disclosure.d.ts +7 -0
- package/dist/types/types/terms-with-disclosure.d.ts.map +1 -0
- package/dist/types/utilities/address.d.ts +21 -0
- package/dist/types/utilities/address.d.ts.map +1 -0
- package/dist/types/utilities/feature-flags/types.d.ts +5 -1
- package/dist/types/utilities/feature-flags/types.d.ts.map +1 -1
- package/dist/types/utilities/files.d.ts +12 -0
- package/dist/types/utilities/files.d.ts.map +1 -0
- package/dist/types/utilities/formatString.d.ts +8 -0
- package/dist/types/utilities/formatString.d.ts.map +1 -1
- package/dist/types/utilities/index.d.ts +2 -0
- package/dist/types/utilities/index.d.ts.map +1 -1
- package/dist/types/utilities/money.d.ts +6 -0
- package/dist/types/utilities/money.d.ts.map +1 -1
- package/dist/types/utilities/rate-warning-messages.d.ts +15 -0
- package/dist/types/utilities/rate-warning-messages.d.ts.map +1 -0
- package/dist/types/workflows/account-settings/account-settings.d.ts +23 -1
- package/dist/types/workflows/account-settings/account-settings.d.ts.map +1 -1
- package/dist/types/workflows/carrier-services/carrier-services.d.ts +23 -1
- package/dist/types/workflows/carrier-services/carrier-services.d.ts.map +1 -1
- package/dist/types/workflows/connect-external-carrier/connect-external-carrier.d.ts +23 -1
- package/dist/types/workflows/connect-external-carrier/connect-external-carrier.d.ts.map +1 -1
- package/dist/types/workflows/label-workflow/label-workflow.d.ts +23 -1
- package/dist/types/workflows/label-workflow/label-workflow.d.ts.map +1 -1
- package/dist/types/workflows/onboarding/components/confirmation-and-submission-step/use-confirmation-and-submission-step.d.ts.map +1 -1
- package/dist/types/workflows/onboarding/components/onboarding-wizard/onboarding-wizard.d.ts.map +1 -1
- package/dist/types/workflows/onboarding/components/terms-agreement-form/terms-agreement-form.d.ts +4 -2
- package/dist/types/workflows/onboarding/components/terms-agreement-form/terms-agreement-form.d.ts.map +1 -1
- package/dist/types/workflows/onboarding/components/terms-agreement-form/terms-agreement-form.styles.d.ts +0 -3
- package/dist/types/workflows/onboarding/components/terms-agreement-form/terms-agreement-form.styles.d.ts.map +1 -1
- package/dist/types/workflows/onboarding/components/terms-agreement-step/terms-agreement-step.d.ts +3 -1
- package/dist/types/workflows/onboarding/components/terms-agreement-step/terms-agreement-step.d.ts.map +1 -1
- package/dist/types/workflows/onboarding/components/terms-agreement-step/terms-agreement-step.styles.d.ts +8 -2
- package/dist/types/workflows/onboarding/components/terms-agreement-step/terms-agreement-step.styles.d.ts.map +1 -1
- package/dist/types/workflows/onboarding/components/terms-agreement-step/use-terms-agreement-step.d.ts +1 -0
- package/dist/types/workflows/onboarding/components/terms-agreement-step/use-terms-agreement-step.d.ts.map +1 -1
- package/dist/types/workflows/onboarding/onboarding.d.ts +23 -1
- package/dist/types/workflows/onboarding/onboarding.d.ts.map +1 -1
- package/package.json +3 -3
- package/dist/cjs/components/error-display/error-display.cjs +0 -34
- package/dist/cjs/components/error-display/index.cjs +0 -7
- package/dist/esm/components/error-display/error-display.js +0 -32
- package/dist/esm/components/error-display/index.js +0 -1
- package/dist/types/components/error-display/error-display.d.ts +0 -7
- package/dist/types/components/error-display/error-display.d.ts.map +0 -1
- package/dist/types/components/error-display/error-display.styles.d.ts +0 -20
- package/dist/types/components/error-display/error-display.styles.d.ts.map +0 -1
- package/dist/types/components/error-display/index.d.ts +0 -2
- package/dist/types/components/error-display/index.d.ts.map +0 -1
|
@@ -7,6 +7,7 @@ var reactApi = require('@shipengine/react-api');
|
|
|
7
7
|
var React = require('react');
|
|
8
8
|
var reactI18next = require('react-i18next');
|
|
9
9
|
var manageCarriersRow_styles = require('./manage-carriers-row.styles.cjs');
|
|
10
|
+
var upsTermsDisclosure = require('../../../components/ups-terms-disclosure/ups-terms-disclosure.cjs');
|
|
10
11
|
var addressPreferenceContext = require('../../../components/address-preference-context/address-preference-context.cjs');
|
|
11
12
|
var registerFundingSourceCarrierForm = require('../register-funding-source-carrier-form/register-funding-source-carrier-form.cjs');
|
|
12
13
|
var carrierIcon = require('../../../components/carrier-icon/carrier-icon.cjs');
|
|
@@ -34,6 +35,10 @@ const ManageCarriersRow = ({
|
|
|
34
35
|
const requirementTypes = carrierProfile.registrationRequirements.map(r => r.requirementType);
|
|
35
36
|
const requiresAddress = requirementTypes.includes(reactApi.SE.MetadataRequirement.PickupAddress);
|
|
36
37
|
const requiresTermsAcceptance = carrierProfile.requiredTerms.length > 0;
|
|
38
|
+
const requiredCarrierTerms = {
|
|
39
|
+
links: carrierProfile.requiredTerms.flatMap(term => term.links),
|
|
40
|
+
disclosure: carrierProfile.carrierCode === "ups_walleted" ? jsxRuntime.jsx(upsTermsDisclosure.UPSTermsDisclosure, {}) : undefined
|
|
41
|
+
};
|
|
37
42
|
const handleRegister = values => _tslib.__awaiter(void 0, void 0, void 0, function* () {
|
|
38
43
|
setIsSubmitting(true);
|
|
39
44
|
showDropDown && setShowDropDown(false);
|
|
@@ -96,7 +101,7 @@ const ManageCarriersRow = ({
|
|
|
96
101
|
onCancel: () => setShowDropDown(false),
|
|
97
102
|
onSubmit: handleRegister,
|
|
98
103
|
requirementTypes: requirementTypes,
|
|
99
|
-
terms:
|
|
104
|
+
terms: requiredCarrierTerms
|
|
100
105
|
})
|
|
101
106
|
})
|
|
102
107
|
})]
|
|
@@ -151,9 +151,9 @@ const RegisterFundingSourceCarrierForm = ({
|
|
|
151
151
|
children: [jsxRuntime.jsx(giger.Typography, {
|
|
152
152
|
variant: "heading4",
|
|
153
153
|
children: t("terms.carriersTitle")
|
|
154
|
-
}),
|
|
155
|
-
|
|
156
|
-
}
|
|
154
|
+
}), jsxRuntime.jsx(displayTerm.DisplayTerm, {
|
|
155
|
+
terms: terms
|
|
156
|
+
})]
|
|
157
157
|
}), jsxRuntime.jsx(buttonGroup.ButtonGroup, {
|
|
158
158
|
justify: "end",
|
|
159
159
|
children: jsxRuntime.jsx(giger.Button, {
|
|
@@ -3,11 +3,14 @@
|
|
|
3
3
|
var _tslib = require('../../_virtual/_tslib.cjs');
|
|
4
4
|
var jsxRuntime = require('@emotion/react/jsx-runtime');
|
|
5
5
|
var useToggle = require('../../hooks/use-toggle.cjs');
|
|
6
|
+
var giger = require('@shipengine/giger');
|
|
6
7
|
var reactApi = require('@shipengine/react-api');
|
|
7
8
|
var React = require('react');
|
|
8
9
|
var reactI18next = require('react-i18next');
|
|
9
10
|
var editBillingForm = require('../../components/forms/edit-billing-form/edit-billing-form.cjs');
|
|
10
11
|
var walletCard = require('../../components/wallet-card/wallet-card.cjs');
|
|
12
|
+
var elementsContextProvider = require('../../elements-provider/elements-context-provider.cjs');
|
|
13
|
+
var spacer = require('../../components/spacer/spacer.cjs');
|
|
11
14
|
var loader = require('../../components/loader/loader.cjs');
|
|
12
15
|
var zeroState = require('../../components/zero-state/zero-state.cjs');
|
|
13
16
|
|
|
@@ -18,37 +21,72 @@ const PaymentMethodSettings = ({
|
|
|
18
21
|
const {
|
|
19
22
|
t
|
|
20
23
|
} = reactI18next.useTranslation();
|
|
24
|
+
const {
|
|
25
|
+
globalFeatures
|
|
26
|
+
} = elementsContextProvider.useElements();
|
|
27
|
+
const {
|
|
28
|
+
supportEmailAddress
|
|
29
|
+
} = globalFeatures;
|
|
21
30
|
const [showEditBilling, toggleShowEditBilling] = useToggle.useToggle(false);
|
|
22
31
|
const [isUpdatingBilling, setIsUpdatingBilling] = React.useState(false);
|
|
23
32
|
const {
|
|
24
|
-
|
|
33
|
+
error: updateBillingError,
|
|
34
|
+
mutateAsync: updateBilling,
|
|
35
|
+
reset: resetUpdateFundingSource
|
|
25
36
|
} = reactApi.useUpdateFundingSource();
|
|
26
37
|
const {
|
|
27
38
|
data: fundingSources,
|
|
28
39
|
refetch: refetchFundingSources,
|
|
29
40
|
isLoading: fundingSourceLoading
|
|
30
41
|
} = reactApi.useListFundingSources();
|
|
31
|
-
const
|
|
42
|
+
const {
|
|
43
|
+
fundingSourceId,
|
|
44
|
+
billingInfo
|
|
45
|
+
} = (_a = fundingSources === null || fundingSources === void 0 ? void 0 : fundingSources[0]) !== null && _a !== void 0 ? _a : {};
|
|
32
46
|
const handleUpdateBilling = (billingInfo, creditCardInfo) => _tslib.__awaiter(void 0, void 0, void 0, function* () {
|
|
33
47
|
if (fundingSourceId) {
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
48
|
+
try {
|
|
49
|
+
setIsUpdatingBilling(true);
|
|
50
|
+
yield updateBilling({
|
|
51
|
+
billingInfo,
|
|
52
|
+
creditCardInfo,
|
|
53
|
+
fundingSourceId
|
|
54
|
+
});
|
|
55
|
+
yield refetchFundingSources();
|
|
56
|
+
toggleShowEditBilling(false);
|
|
57
|
+
} catch (error) {
|
|
58
|
+
console.error("Error updating billing:", error);
|
|
59
|
+
// error is handled by the mutation
|
|
60
|
+
} finally {
|
|
61
|
+
setIsUpdatingBilling(false);
|
|
62
|
+
}
|
|
43
63
|
}
|
|
44
64
|
});
|
|
45
|
-
if (showEditBilling) return jsxRuntime.
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
65
|
+
if (showEditBilling) return jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
66
|
+
children: [jsxRuntime.jsx(editBillingForm.EditBillingForm, {
|
|
67
|
+
billingInfo: billingInfo,
|
|
68
|
+
isLoading: isUpdatingBilling,
|
|
69
|
+
onCancel: () => {
|
|
70
|
+
toggleShowEditBilling(false);
|
|
71
|
+
resetUpdateFundingSource();
|
|
72
|
+
},
|
|
73
|
+
onSubmit: (billingInfo, creditCardInfo) => {
|
|
74
|
+
void handleUpdateBilling(billingInfo, creditCardInfo);
|
|
75
|
+
}
|
|
76
|
+
}), (updateBillingError === null || updateBillingError === void 0 ? void 0 : updateBillingError.length) && jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
77
|
+
children: [jsxRuntime.jsx(spacer.Spacer, {
|
|
78
|
+
multiplier: 2
|
|
79
|
+
}), jsxRuntime.jsx(giger.InlineNotification, {
|
|
80
|
+
css: {
|
|
81
|
+
textAlign: "left"
|
|
82
|
+
},
|
|
83
|
+
title: t("account-settings:errors.paymentMethod.title"),
|
|
84
|
+
type: giger.NotificationType.ERROR,
|
|
85
|
+
children: t("account-settings:errors.paymentMethod.description", {
|
|
86
|
+
email: supportEmailAddress
|
|
87
|
+
})
|
|
88
|
+
})]
|
|
89
|
+
})]
|
|
52
90
|
});else {
|
|
53
91
|
if (fundingSourceLoading) return jsxRuntime.jsx(loader.Loader, {
|
|
54
92
|
message: t("loading.paymentMethod")
|
|
@@ -22,6 +22,8 @@ const useConfigureShipment = ({
|
|
|
22
22
|
warehouseId,
|
|
23
23
|
useWarehouses = true
|
|
24
24
|
}) => {
|
|
25
|
+
// Track when we've created a replacement shipment for a "not found" case
|
|
26
|
+
const [replacementShipmentId, setReplacementShipmentId] = React.useState();
|
|
25
27
|
// Queue of incomplete requirement keys (i.e., Ship From addresses, Warehouses, Carriers)
|
|
26
28
|
const incompleteRequirementsKeys = React.useMemo(() => [], []);
|
|
27
29
|
const {
|
|
@@ -77,7 +79,7 @@ const useConfigureShipment = ({
|
|
|
77
79
|
salesOrderIds: salesOrderId ? [salesOrderId] : salesOrder$1 ? [salesOrder$1.salesOrderId] :
|
|
78
80
|
// TODO: current workaround - revert to being undefined rather than empty list
|
|
79
81
|
[],
|
|
80
|
-
shipmentIds: shipmentId ? [shipmentId] : externalShipment ? [externalShipment.shipmentId] : newV1Shipment ? [newV1Shipment.shipments[0].shipmentId] : undefined
|
|
82
|
+
shipmentIds: replacementShipmentId ? [replacementShipmentId] : shipmentId ? [shipmentId] : externalShipment ? [externalShipment.shipmentId] : newV1Shipment ? [newV1Shipment.shipments[0].shipmentId] : undefined
|
|
81
83
|
});
|
|
82
84
|
const {
|
|
83
85
|
error: createSalesOrderShipmentErrors,
|
|
@@ -90,6 +92,19 @@ const useConfigureShipment = ({
|
|
|
90
92
|
const cancelledShipment = shipment.getShipmentByStatus("cancelled", salesOrderShipments);
|
|
91
93
|
const defaultWarehouse = warehouses.getDefaultWarehouse(warehouses$1);
|
|
92
94
|
const defaultShipFromAddress = address.getDefaultShipFromAddress(shipFromAddresses);
|
|
95
|
+
// Common function to create a V1 shipment
|
|
96
|
+
const createV1ShipmentWithDefaults = React.useCallback(() => _tslib.__awaiter(void 0, void 0, void 0, function* () {
|
|
97
|
+
const v1Shipment = yield createV1Shipment(Object.assign({}, (defaultShipFromAddress === null || defaultShipFromAddress === void 0 ? void 0 : defaultShipFromAddress.originAddress) ? {
|
|
98
|
+
shipFrom: defaultShipFromAddress.originAddress
|
|
99
|
+
} : {
|
|
100
|
+
warehouseId: warehouseId ? warehouseId : defaultWarehouse.warehouseId
|
|
101
|
+
}));
|
|
102
|
+
if (v1Shipment) {
|
|
103
|
+
yield refetchSalesOrderShipments();
|
|
104
|
+
return v1Shipment;
|
|
105
|
+
}
|
|
106
|
+
return null;
|
|
107
|
+
}), [createV1Shipment, defaultShipFromAddress, defaultWarehouse, warehouseId, refetchSalesOrderShipments]);
|
|
93
108
|
// Handles the creation of new shipments for the sales order flow and one-off flow
|
|
94
109
|
const handleShipmentCreation = React.useCallback(() => _tslib.__awaiter(void 0, void 0, void 0, function* () {
|
|
95
110
|
var _a, _b, _c;
|
|
@@ -139,16 +154,17 @@ const useConfigureShipment = ({
|
|
|
139
154
|
}
|
|
140
155
|
// Create a Shipment for one-off flow
|
|
141
156
|
if (!salesOrderId && !externalOrderId && !externalOrderNumber && !orderSourceCode && !shipmentId && !externalShipmentId) {
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
157
|
+
yield createV1ShipmentWithDefaults();
|
|
158
|
+
}
|
|
159
|
+
}), [createSalesOrderShipment, createV1ShipmentWithDefaults, creatingSalesOrderShipment, creatingV1Shipment, defaultShipFromAddress, defaultWarehouse, externalOrderId, externalOrderNumber, externalShipmentId, incompleteRequirementsKeys, isExternalShipmentFetching, isExternalShipmentInitialLoading, isFetchingWarehouses, isInitialLoadingWarehouses, labelPurchasedSalesOrderShipment, listSalesOrderShipmentsInitiallyLoading, listSalesOrderShipmentsIsFetching, orderSourceCode, pendingSalesOrderShipment, salesOrder$1, salesOrderId, salesOrderShipmentCreated, shipFromAddresses === null || shipFromAddresses === void 0 ? void 0 : shipFromAddresses.length, shipmentId, useWarehouses, v1shipmentCreated, warehouseId, warehouses$1]);
|
|
160
|
+
const createNewShipmentForNotFound = React.useCallback(() => _tslib.__awaiter(void 0, void 0, void 0, function* () {
|
|
161
|
+
// Force create a new shipment even if shipmentId exists (for shipment_not_found case)
|
|
162
|
+
const v1Shipment = yield createV1ShipmentWithDefaults();
|
|
163
|
+
if (v1Shipment) {
|
|
164
|
+
// Store the new shipment ID to override the stale one
|
|
165
|
+
setReplacementShipmentId(v1Shipment.shipments[0].shipmentId);
|
|
150
166
|
}
|
|
151
|
-
}), [
|
|
167
|
+
}), [createV1ShipmentWithDefaults]);
|
|
152
168
|
const refetchPendingSalesOrderShipments = React.useCallback(() => _tslib.__awaiter(void 0, void 0, void 0, function* () {
|
|
153
169
|
const {
|
|
154
170
|
data: shipments
|
|
@@ -180,13 +196,18 @@ const useConfigureShipment = ({
|
|
|
180
196
|
errorCode: "invalid_status",
|
|
181
197
|
errorSource: "elements",
|
|
182
198
|
errorType: "business_rules"
|
|
183
|
-
})] : []), ...(incompleteRequirementsKeys.length > 0 ? [new reactApi.CodedError(incompleteRequirementsKeys.length
|
|
199
|
+
})] : []), ...(incompleteRequirementsKeys.length > 0 ? [new reactApi.CodedError(incompleteRequirementsKeys.length === 1 ? "no_carriers_and_warehouses" : incompleteRequirementsKeys[0], {
|
|
184
200
|
errorCode: "unknown",
|
|
185
201
|
errorSource: "elements",
|
|
186
202
|
errorType: "business_rules"
|
|
203
|
+
})] : []), ...((salesOrderShipments === null || salesOrderShipments === void 0 ? void 0 : salesOrderShipments.length) === 0 && shipmentId ? [new reactApi.CodedError("shipment_not_found", {
|
|
204
|
+
errorCode: "invalid_status",
|
|
205
|
+
errorSource: "elements",
|
|
206
|
+
errorType: "business_rules"
|
|
187
207
|
})] : [])];
|
|
188
208
|
return {
|
|
189
209
|
carriers,
|
|
210
|
+
createNewShipmentForNotFound,
|
|
190
211
|
errors: errors.length > 0 ? errors : undefined,
|
|
191
212
|
isLoading: (isSalesOrderLoading || !(salesOrderShipments === null || salesOrderShipments === void 0 ? void 0 : salesOrderShipments.length) || creatingSalesOrderShipment) && errors.length === 0,
|
|
192
213
|
refetchPendingSalesOrderShipments,
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var reactApi = require('@shipengine/react-api');
|
|
4
|
+
var address = require('../utilities/address.cjs');
|
|
4
5
|
var checks = require('../utilities/checks.cjs');
|
|
5
6
|
|
|
6
7
|
const useHelpers = () => {
|
|
@@ -17,7 +18,9 @@ const useHelpers = () => {
|
|
|
17
18
|
return {
|
|
18
19
|
helpersReady,
|
|
19
20
|
sellerOnboarded,
|
|
20
|
-
validateShipFromAddress: checks.validateShipFromAddress
|
|
21
|
+
validateShipFromAddress: checks.validateShipFromAddress,
|
|
22
|
+
getCountries: address.getCountries,
|
|
23
|
+
getUsStates: address.getUsStates
|
|
21
24
|
};
|
|
22
25
|
};
|
|
23
26
|
|
package/dist/cjs/index.cjs
CHANGED
|
@@ -4,7 +4,8 @@ var reactApi = require('@shipengine/react-api');
|
|
|
4
4
|
var styles = require('./utilities/styles.cjs');
|
|
5
5
|
var featureFlags = require('./utilities/feature-flags/feature-flags.cjs');
|
|
6
6
|
var checks = require('./utilities/checks.cjs');
|
|
7
|
-
var address = require('./
|
|
7
|
+
var address = require('./utilities/address.cjs');
|
|
8
|
+
var address$1 = require('./constants/shipengine/address.cjs');
|
|
8
9
|
var manageCarriers = require('./elements/manage-carriers/manage-carriers.cjs');
|
|
9
10
|
var manageWarehouses = require('./elements/manage-warehouses/manage-warehouses.cjs');
|
|
10
11
|
var purchaseLabel = require('./elements/purchase-label/purchase-label.cjs');
|
|
@@ -46,17 +47,19 @@ exports.getDefaultFeatures = featureFlags.getDefaultFeatures;
|
|
|
46
47
|
exports.getSellerIdFromToken = checks.getSellerIdFromToken;
|
|
47
48
|
exports.isOnboarded = checks.isOnboarded;
|
|
48
49
|
exports.validateShipFromAddress = checks.validateShipFromAddress;
|
|
49
|
-
exports.
|
|
50
|
-
exports.
|
|
51
|
-
exports.
|
|
52
|
-
exports.
|
|
53
|
-
exports.
|
|
54
|
-
exports.
|
|
55
|
-
exports.
|
|
56
|
-
exports.
|
|
57
|
-
exports.
|
|
58
|
-
exports.
|
|
59
|
-
exports.
|
|
50
|
+
exports.getCountries = address.getCountries;
|
|
51
|
+
exports.getUsStates = address.getUsStates;
|
|
52
|
+
exports.Country = address$1.Country;
|
|
53
|
+
exports.UsState = address$1.UsState;
|
|
54
|
+
exports.UsaCity = address$1.UsaCity;
|
|
55
|
+
exports.addressNameRegex = address$1.addressNameRegex;
|
|
56
|
+
exports.countries = address$1.countries;
|
|
57
|
+
exports.countryCodes = address$1.countryCodes;
|
|
58
|
+
exports.euCountryCodes = address$1.euCountryCodes;
|
|
59
|
+
exports.postalCodeRegex = address$1.postalCodeRegex;
|
|
60
|
+
exports.usCities = address$1.usCities;
|
|
61
|
+
exports.usStateCodes = address$1.usStateCodes;
|
|
62
|
+
exports.usStates = address$1.usStates;
|
|
60
63
|
exports.ManageCarriers = manageCarriers;
|
|
61
64
|
exports.ManageWarehouses = manageWarehouses;
|
|
62
65
|
exports.PurchaseLabel = purchaseLabel;
|
|
@@ -26,6 +26,12 @@ var accoutSettings = {
|
|
|
26
26
|
labelLayout: "Shipping Label Layout",
|
|
27
27
|
unitSettings: "Units of Measure",
|
|
28
28
|
vatSettings: "Tax Settings"
|
|
29
|
+
},
|
|
30
|
+
errors: {
|
|
31
|
+
paymentMethod: {
|
|
32
|
+
title: "Error Updating Payment Method",
|
|
33
|
+
description: "There was an error updating your payment method. Ensure your payment information is correct and try again. If the problem persists, contact support at {{email}}."
|
|
34
|
+
}
|
|
29
35
|
}
|
|
30
36
|
}
|
|
31
37
|
};
|
|
@@ -165,10 +165,12 @@ var common = {
|
|
|
165
165
|
total: "Total"
|
|
166
166
|
},
|
|
167
167
|
errorMessages: {
|
|
168
|
+
fundingSourceCreationFailed: "Please check your payment and billing details, and confirm that your bank hasn’t blocked the payment method. If the issue persists, please contact support at {{email}}.",
|
|
168
169
|
contactSupport: "Your transaction may not have processed as expected. Please contact support at {{email}}.",
|
|
169
170
|
invalidNameOrCompany: "Recipient name and company name (if provided) must have two characters in first and last name.",
|
|
170
171
|
parsingFailure: "Parsing failed. Please check address and try again.",
|
|
171
172
|
incompleteLabelPurchaseRequirements: "Please add your {{requirements}} to continue purchasing a label.",
|
|
173
|
+
shipmentNotFound: "Cannot find shipment with ID: {{id}}.",
|
|
172
174
|
shipmentCancelled: "This shipment is Cancelled in ShipStation. Log into ShipStation to restore the order to Awaiting Shipment status.",
|
|
173
175
|
unableToLoad: {
|
|
174
176
|
accountSettings: "Unable to load account settings",
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var gridController = {
|
|
4
|
+
"grid-controller": {
|
|
5
|
+
showExportCSV: {
|
|
6
|
+
button: "Export CSV",
|
|
7
|
+
"generic-error-message": "We couldn’t export your CSV. Please try again.",
|
|
8
|
+
"limit-error": "We're sorry, but exporting more than {{LIMIT_GRID_ITEMS_EXPORT}} items is not supported at this time."
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
module.exports = gridController;
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
var accountSettings = require('./account-settings.json.cjs');
|
|
4
4
|
var common = require('./common.json.cjs');
|
|
5
5
|
var connectCarrier = require('./connect-carrier.json.cjs');
|
|
6
|
+
var gridController = require('./grid-controller.json.cjs');
|
|
6
7
|
var listLabels = require('./list-labels.json.cjs');
|
|
7
8
|
var listShipments = require('./list-shipments.json.cjs');
|
|
8
9
|
var manageCarriers = require('./manage-carriers.json.cjs');
|
|
@@ -20,6 +21,6 @@ var viewShipment = require('./view-shipment.json.cjs');
|
|
|
20
21
|
var voidLabel = require('./void-label.json.cjs');
|
|
21
22
|
var walletHistory = require('./wallet-history.json.cjs');
|
|
22
23
|
|
|
23
|
-
var en = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, accountSettings), common.default), connectCarrier), listLabels), listShipments), manageDefaults), manageDefaults), manageFunding), manageWarehouses), onboarding.default), paymentMethod), purchaseLabel), rateDetails), registerCarrier), registerWallet), manageCarriers), vatSettings), viewShipment), voidLabel), walletHistory);
|
|
24
|
+
var en = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, accountSettings), common.default), connectCarrier), listLabels), listShipments), manageDefaults), manageDefaults), manageFunding), manageWarehouses), onboarding.default), paymentMethod), purchaseLabel), rateDetails), registerCarrier), registerWallet), manageCarriers), vatSettings), viewShipment), voidLabel), walletHistory), gridController);
|
|
24
25
|
|
|
25
26
|
module.exports = en;
|
|
@@ -26,6 +26,11 @@ var onboarding = {
|
|
|
26
26
|
title: "Activate ShipEngine Services",
|
|
27
27
|
subtitle: "Your account includes access to services from these partners."
|
|
28
28
|
},
|
|
29
|
+
upsDisclosure: {
|
|
30
|
+
title: "UPS Promotional Rates and Technology Agreements",
|
|
31
|
+
line1: "I have read and agree to the Terms and Conditions and the Privacy Policy, and I confirm that information I have provided is accurate and truthful.",
|
|
32
|
+
line2: "To start shipping with UPS, you must first agree to the following: UPS®, the UPS brandmark, UPS Ready® and the color brown are trademarks of the United Parcel Service of America, Inc. All Rights Reserved."
|
|
33
|
+
},
|
|
29
34
|
warehouse: {
|
|
30
35
|
title: "Ship From Address",
|
|
31
36
|
subtitle: "Enter your default Ship From Address",
|
|
@@ -12,7 +12,8 @@ var purchaseLabel = {
|
|
|
12
12
|
showItems: "Show items",
|
|
13
13
|
showMoreRates: "Show more rates",
|
|
14
14
|
showFewerRates: "Show fewer rates",
|
|
15
|
-
saveRate: "Save Rate"
|
|
15
|
+
saveRate: "Save Rate",
|
|
16
|
+
createNewShipment: "Create New Shipment"
|
|
16
17
|
},
|
|
17
18
|
balance: {
|
|
18
19
|
currentBalance: "Available Funds:",
|
|
@@ -129,7 +130,6 @@ var purchaseLabel = {
|
|
|
129
130
|
otherLocations: "Other drop off points near you:",
|
|
130
131
|
noServicePointsForService: "There are no drop off locations for this service within 10km of your search area.",
|
|
131
132
|
error: "Unable to find drop off locations within 10km of your search area.",
|
|
132
|
-
paperless: "Print & Paperless",
|
|
133
133
|
localTimeDisclaimer: "Hours shown in local time"
|
|
134
134
|
},
|
|
135
135
|
shipToAddressFormFields: "Ship To Address Form Fields",
|
|
@@ -143,7 +143,9 @@ var purchaseLabel = {
|
|
|
143
143
|
},
|
|
144
144
|
warnings: {
|
|
145
145
|
parcelGuardShipDate: "ParcelGuard must be purchased within 48 hours of the ship date. Please update the ship date to continue."
|
|
146
|
-
}
|
|
146
|
+
},
|
|
147
|
+
paperlessAvailable: "Paperless available",
|
|
148
|
+
usePaperlessLabel: "Use Paperless Label (QR Code)"
|
|
147
149
|
}
|
|
148
150
|
};
|
|
149
151
|
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var address = require('../constants/shipengine/address.cjs');
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Returns a simplified list of countries for use in dropdowns and forms.
|
|
7
|
+
*
|
|
8
|
+
* @returns Array of country objects with name and code properties
|
|
9
|
+
*/
|
|
10
|
+
const getCountries = () => {
|
|
11
|
+
return address.countries.map(country => ({
|
|
12
|
+
name: country.name,
|
|
13
|
+
code: country.code
|
|
14
|
+
}));
|
|
15
|
+
};
|
|
16
|
+
/**
|
|
17
|
+
* Returns a simplified list of US states for use in dropdowns and forms.
|
|
18
|
+
*
|
|
19
|
+
* @returns Array of US state objects with name and code properties
|
|
20
|
+
*/
|
|
21
|
+
const getUsStates = () => {
|
|
22
|
+
return address.usStates.map(state => ({
|
|
23
|
+
name: state.name,
|
|
24
|
+
code: state.code
|
|
25
|
+
}));
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
exports.getCountries = getCountries;
|
|
29
|
+
exports.getUsStates = getUsStates;
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Creates a local file from an AxiosResponse containing a blob.
|
|
5
|
+
*/
|
|
6
|
+
const createLocalFileFromBlobResponse = (type, {
|
|
7
|
+
data: blob
|
|
8
|
+
}) => {
|
|
9
|
+
const url = URL.createObjectURL(new Blob([blob], {
|
|
10
|
+
type: blob.type
|
|
11
|
+
}));
|
|
12
|
+
const fileName = type === "label" ? "labels-download" : "shipments-download";
|
|
13
|
+
triggerDownload(url, fileName);
|
|
14
|
+
};
|
|
15
|
+
/**
|
|
16
|
+
* Triggers the download of the sent URL.
|
|
17
|
+
* @param {string} url - The URL for the download.
|
|
18
|
+
* @param {string} filename - The filename for the download.
|
|
19
|
+
*/
|
|
20
|
+
const triggerDownload = (url, filename) => {
|
|
21
|
+
const downloadLink = createInvisibleAnchor(url, filename);
|
|
22
|
+
document.body.appendChild(downloadLink);
|
|
23
|
+
downloadLink.click();
|
|
24
|
+
document.body.removeChild(downloadLink);
|
|
25
|
+
};
|
|
26
|
+
const createInvisibleAnchor = (url, filename) => {
|
|
27
|
+
const downloadLink = document.createElement("a");
|
|
28
|
+
downloadLink.setAttribute("href", url);
|
|
29
|
+
downloadLink.setAttribute("download", filename);
|
|
30
|
+
downloadLink.style.display = "none";
|
|
31
|
+
return downloadLink;
|
|
32
|
+
};
|
|
33
|
+
|
|
34
|
+
exports.createLocalFileFromBlobResponse = createLocalFileFromBlobResponse;
|
|
35
|
+
exports.triggerDownload = triggerDownload;
|
|
@@ -19,9 +19,18 @@ const replaceSpacesWithDashes = str => str === null || str === void 0 ? void 0 :
|
|
|
19
19
|
const addSpaceBetweenWords = str => str.replace(/([a-z])([A-Z])/g, "$1 $2") // add space if there is a lowercase letter followed by an uppercase letter
|
|
20
20
|
.replace(/(?<=[a-zA-Z])(\d)/g, " $1") // add space if there is a letter followed by a number
|
|
21
21
|
.trim();
|
|
22
|
+
/**
|
|
23
|
+
* Converts a string from camelCase or PascalCase to snake_case
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
* toSnakeCase("helloWorld") // returns "hello_world"
|
|
27
|
+
* toSnakeCase("HelloWorld") // returns "hello_world"
|
|
28
|
+
*/
|
|
29
|
+
const toSnakeCase = str => str.replace(/[A-Z]/g, letter => `_${letter.toLowerCase()}`);
|
|
22
30
|
|
|
23
31
|
exports.addSpaceBetweenWords = addSpaceBetweenWords;
|
|
24
32
|
exports.capitalizeFirstLetter = capitalizeFirstLetter;
|
|
25
33
|
exports.capitalizeFirstLetterOfEachWord = capitalizeFirstLetterOfEachWord;
|
|
26
34
|
exports.pascalize = pascalize;
|
|
27
35
|
exports.replaceSpacesWithDashes = replaceSpacesWithDashes;
|
|
36
|
+
exports.toSnakeCase = toSnakeCase;
|
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
var styles = require('./styles.cjs');
|
|
4
4
|
var checks = require('./checks.cjs');
|
|
5
|
+
var files = require('./files.cjs');
|
|
6
|
+
var address = require('./address.cjs');
|
|
5
7
|
var featureFlags = require('./feature-flags/feature-flags.cjs');
|
|
6
8
|
|
|
7
9
|
|
|
@@ -11,4 +13,7 @@ exports.scopeTheme = styles.scopeTheme;
|
|
|
11
13
|
exports.getSellerIdFromToken = checks.getSellerIdFromToken;
|
|
12
14
|
exports.isOnboarded = checks.isOnboarded;
|
|
13
15
|
exports.validateShipFromAddress = checks.validateShipFromAddress;
|
|
16
|
+
exports.createLocalFileFromBlobResponse = files.createLocalFileFromBlobResponse;
|
|
17
|
+
exports.getCountries = address.getCountries;
|
|
18
|
+
exports.getUsStates = address.getUsStates;
|
|
14
19
|
exports.getDefaultFeatures = featureFlags.getDefaultFeatures;
|
|
@@ -38,6 +38,19 @@ const calculateTotal = (...values) => {
|
|
|
38
38
|
return value ? total + ((_a = value.amount) !== null && _a !== void 0 ? _a : 0) : total;
|
|
39
39
|
}, 0);
|
|
40
40
|
};
|
|
41
|
+
/**
|
|
42
|
+
* @internal
|
|
43
|
+
*
|
|
44
|
+
* # Money Utils - maskCreditCardNumber
|
|
45
|
+
*/
|
|
46
|
+
const maskCreditCardNumber = cc => {
|
|
47
|
+
const sanitizedCC = cc.replace(/\s/g, "");
|
|
48
|
+
if (!sanitizedCC || sanitizedCC.length < 15 || sanitizedCC.length > 16) {
|
|
49
|
+
return cc;
|
|
50
|
+
}
|
|
51
|
+
const maskedCCNumber = "*".repeat(sanitizedCC.length - 4) + sanitizedCC.slice(-4);
|
|
52
|
+
return maskedCCNumber.replace(/(.{4})/g, "$1 ").trim();
|
|
53
|
+
};
|
|
41
54
|
/**
|
|
42
55
|
* @internal
|
|
43
56
|
*
|
|
@@ -103,3 +116,4 @@ exports.formatExpiration = formatExpiration;
|
|
|
103
116
|
exports.formatMoney = formatMoney;
|
|
104
117
|
exports.getCurrencyFromString = getCurrencyFromString;
|
|
105
118
|
exports.getCurrencySymbolFromString = getCurrencySymbolFromString;
|
|
119
|
+
exports.maskCreditCardNumber = maskCreditCardNumber;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var rateMessages = require('../data/rate-messages.json.cjs');
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Builds warning messages for a rate by combining messages from different sources:
|
|
7
|
+
* 1. Messages for serviceCode:shipDay combination
|
|
8
|
+
* 2. Messages for serviceCode:packageType combination
|
|
9
|
+
* 3. Messages for serviceCode only
|
|
10
|
+
* 4. Existing warning messages from the rate
|
|
11
|
+
*/
|
|
12
|
+
const buildRateWarningMessages = ({
|
|
13
|
+
serviceCode,
|
|
14
|
+
packageType,
|
|
15
|
+
shipDay,
|
|
16
|
+
existingWarningMessages = []
|
|
17
|
+
}) => {
|
|
18
|
+
const keys = [shipDay && `${serviceCode}:${shipDay}`, packageType && `${serviceCode}:${packageType}`, serviceCode].filter(Boolean);
|
|
19
|
+
return [...keys.flatMap(key => {
|
|
20
|
+
var _a;
|
|
21
|
+
return (_a = rateMessages.default[key]) !== null && _a !== void 0 ? _a : [];
|
|
22
|
+
}), ...existingWarningMessages];
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
exports.buildRateWarningMessages = buildRateWarningMessages;
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
const getDefaultWarehouse = warehouses => {
|
|
4
|
-
|
|
4
|
+
var _a;
|
|
5
|
+
return (_a = warehouses === null || warehouses === void 0 ? void 0 : warehouses.find(w => w.isDefault)) !== null && _a !== void 0 ? _a : warehouses === null || warehouses === void 0 ? void 0 : warehouses[0];
|
|
5
6
|
};
|
|
6
7
|
const getWarehouseById = (warehouseId, warehouses) => {
|
|
7
8
|
return warehouses === null || warehouses === void 0 ? void 0 : warehouses.find(w => w.warehouseId === warehouseId);
|
|
@@ -85,7 +85,7 @@ const Component = ({
|
|
|
85
85
|
refetch: refetchSchema
|
|
86
86
|
} = reactApi.useGetCarrierConnectionForm({
|
|
87
87
|
carrierName: selectedCarrier !== null && selectedCarrier !== void 0 ? selectedCarrier : "apicode-dummy-carrier",
|
|
88
|
-
enabled:
|
|
88
|
+
enabled: !!selectedCarrier
|
|
89
89
|
});
|
|
90
90
|
React.useEffect(() => {
|
|
91
91
|
if (selectedCarrier && needsRefetch) {
|
|
@@ -152,7 +152,9 @@ const Component = ({
|
|
|
152
152
|
const updatedSchema = Object.assign({}, schema);
|
|
153
153
|
// camelize required fields, as casing varies between carriers
|
|
154
154
|
if (updatedSchema.required && Array.isArray(updatedSchema.required)) {
|
|
155
|
-
updatedSchema.required = updatedSchema.required.map(
|
|
155
|
+
updatedSchema.required = updatedSchema.required.map(item => {
|
|
156
|
+
return typeof item === "string" ? humps__namespace.camelize(item) : item;
|
|
157
|
+
});
|
|
156
158
|
}
|
|
157
159
|
// camelize property keys
|
|
158
160
|
// fail safe to ensure schema properties and required array match in the event the camelizeKeys from shipengine/js-api isn't consistent
|
|
@@ -174,7 +176,9 @@ const Component = ({
|
|
|
174
176
|
const updatedUiSchema = Object.assign({}, uiSchemaClone);
|
|
175
177
|
// add nickname to ui:order and camelize the values to ensure consistency with jsonSchema properties and required array
|
|
176
178
|
if (!hasNicknameProperty && updatedUiSchema["ui:order"]) {
|
|
177
|
-
|
|
179
|
+
// ui:order is typically an array of strings, but apparently can also be an array of arrays of strings, so we need to recursively camelize the items
|
|
180
|
+
const camelizeUIOrderItem = item => typeof item === "string" ? humps__namespace.camelize(item) : item.map(i => humps__namespace.camelize(i));
|
|
181
|
+
updatedUiSchema["ui:order"] = [...updatedUiSchema["ui:order"], "nickname"].map(camelizeUIOrderItem);
|
|
178
182
|
}
|
|
179
183
|
return updatedUiSchema;
|
|
180
184
|
}, [uiSchema, hasNicknameProperty]);
|