@shipengine/elements 2.1.0 → 2.3.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.
Files changed (75) hide show
  1. package/README.md +5 -1
  2. package/actions-menu.js +6 -6
  3. package/carrier-logo.js +1 -1
  4. package/carrier.js +1 -0
  5. package/checks.js +1 -0
  6. package/components.js +1 -1
  7. package/elements.js +1 -1
  8. package/hooks.js +1 -1
  9. package/index.js +1 -1
  10. package/package.json +5 -7
  11. package/shipment.js +1 -0
  12. package/src/components/add-funds-form/add-funds-form.styles.d.ts +2 -1
  13. package/src/components/address-preference-context/address-preference-context.d.ts +1 -0
  14. package/src/components/field/rate-card/rate-card.d.ts +2 -2
  15. package/src/components/field/rate-card/rate-detail-cost-breakdown/index.d.ts +1 -0
  16. package/src/components/field/rate-card/rate-detail-cost-breakdown/rate-detail-cost-breakdown.d.ts +5 -0
  17. package/src/components/field/rate-card/rate-detail-cost-breakdown/rate-detail-cost-breakdown.styles.d.ts +17 -0
  18. package/src/components/fund-and-purchase/fund-and-purchase.d.ts +1 -1
  19. package/src/components/modal/modal.styles.d.ts +6 -8
  20. package/src/components/templates/address-form/address-form.d.ts +1 -1
  21. package/src/components/templates/address-form/address-form.styles.d.ts +24 -0
  22. package/src/components/templates/available-carriers-list/available-carriers-list.styles.d.ts +10 -3
  23. package/src/elements/purchase-label/hooks/index.d.ts +1 -0
  24. package/src/elements/purchase-label/hooks/use-get-or-create-shipment.d.ts +13 -0
  25. package/src/elements/purchase-label/purchase-label-by-shipment.d.ts +2 -1
  26. package/src/elements/purchase-label/purchase-label.d.ts +39 -2
  27. package/src/elements/shipment-summary/shipment-summary.d.ts +2 -8
  28. package/src/elements/void-label/void-label.d.ts +32 -2
  29. package/src/features/vat-settings/vat-settings.d.ts +0 -5
  30. package/src/features/vat-settings/vat-settings.styles.d.ts +0 -3
  31. package/src/hooks/index.d.ts +1 -0
  32. package/src/hooks/options/use-rate-options.d.ts +1 -0
  33. package/src/hooks/use-helpers.d.ts +4 -0
  34. package/src/utilities/checks.d.ts +2 -0
  35. package/src/utilities/index.d.ts +5 -2
  36. package/src/utilities/rate-details.d.ts +15 -0
  37. package/src/utilities/vat.d.ts +6 -0
  38. package/src/workflows/account-settings/account-settings.d.ts +7 -4
  39. package/src/workflows/onboarding/components/terms-agreement-step/terms-agreement-step.styles.d.ts +1 -0
  40. package/src/workflows/onboarding/onboarding.d.ts +1 -1
  41. package/suspend-text.js +1 -1
  42. package/transaction-history-element.js +1 -1
  43. package/use-page-layout.js +1 -1
  44. package/use-scrub-errors.js +1 -1
  45. package/use-toggle.js +1 -1
  46. package/use-unit-settings.js +1 -1
  47. package/utilities.js +1 -1
  48. package/vat.js +1 -0
  49. package/wallet-form.js +1 -1
  50. package/warehouses.js +1 -1
  51. package/workflows.js +1 -1
  52. package/formatString.js +0 -1
  53. package/pudo.js +0 -1
  54. package/src/hooks/use-get-or-create-shipment.d.ts +0 -7
  55. package/src/mocks/account-settings/handlers.d.ts +0 -8
  56. package/src/mocks/account-settings/index.d.ts +0 -1
  57. package/src/mocks/browser.d.ts +0 -1
  58. package/src/mocks/carriers/handlers.d.ts +0 -15
  59. package/src/mocks/carriers/index.d.ts +0 -1
  60. package/src/mocks/index.d.ts +0 -3
  61. package/src/mocks/server.d.ts +0 -3
  62. package/src/mocks/warehouses/handlers.d.ts +0 -14
  63. package/src/mocks/warehouses/index.d.ts +0 -1
  64. package/src/testing/extensions/index.d.ts +0 -2
  65. package/src/testing/extensions/matchers/extend-matchers.d.ts +0 -8
  66. package/src/testing/extensions/matchers/index.d.ts +0 -1
  67. package/src/testing/extensions/matchers/matchers.d.ts +0 -1
  68. package/src/testing/extensions/matchers/to-have-loading-spinner.d.ts +0 -2
  69. package/src/testing/extensions/queries/by-icon-name.d.ts +0 -4
  70. package/src/testing/extensions/queries/index.d.ts +0 -57
  71. package/src/testing/extensions/queries/queries.d.ts +0 -1
  72. package/src/testing/index.d.ts +0 -1
  73. package/src/testing/test-utils.d.ts +0 -298
  74. package/validation.js +0 -1
  75. package/vite.config.d.ts +0 -2
package/carrier-logo.js CHANGED
@@ -1 +1 @@
1
- import{jsx as r}from"@emotion/react/jsx-runtime";import{K as t}from"./formatString.js";const o={md:40,lg:68,xl:105},e=({carrierCode:e,carrierName:i,size:m="md"})=>{const a=t(e,"logo");return a?r("img",{alt:i,height:o[m],src:a,width:o[m]},i):null};export{e as C};
1
+ import{jsx as r}from"@emotion/react/jsx-runtime";import{P as e}from"./carrier.js";const o={md:40,lg:68,xl:105},t=({carrierCode:t,carrierName:i,size:m="md"})=>{const a=e(t,"logo");return a?r("img",{alt:i,height:o[m],src:a,width:o[m]},i):null};export{t as C};
package/carrier.js ADDED
@@ -0,0 +1 @@
1
+ import{format as e}from"date-fns/format";import{enGB as t,enUS as r}from"date-fns/locale";import{parse as a}from"date-fns/parse";import n from"humps";import{SE as s}from"@shipengine/react-api";import{c as o,u as i,f as c}from"./address.js";function u(e,t){var r={};for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&t.indexOf(a)<0&&(r[a]=e[a]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var n=0;for(a=Object.getOwnPropertySymbols(e);n<a.length;n++)t.indexOf(a[n])<0&&Object.prototype.propertyIsEnumerable.call(e,a[n])&&(r[a[n]]=e[a[n]])}return r}function l(e,t,r,a){return new(r||(r=Promise))((function(n,s){function o(e){try{c(a.next(e))}catch(e){s(e)}}function i(e){try{c(a.throw(e))}catch(e){s(e)}}function c(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,i)}c((a=a.apply(e,t||[])).next())}))}const d=(e,t="en-US")=>new Date(e).toLocaleDateString(t,{day:"numeric",month:"long",year:"numeric"}),g=(e="en-US")=>{const a=e.replaceAll("-",""),n=e.split("-")[0],s={enGB:t,enUS:r};return s[a in s?a:n]},p=(t,r="en-US",a)=>{const n=g(r),s=D(r);return e(t,null!=a?a:s,{locale:n})},m=(e,t="en-US",r="P")=>{const n=g(t);return a(e,r,new Date,{locale:n})},y=(e,t="en-US")=>new Date(e).toLocaleDateString(t,{day:"2-digit",month:"2-digit",year:"2-digit"}),f=(e,t="en-US")=>new Date(e).toLocaleDateString(t,{day:"2-digit",month:"2-digit",year:"numeric"}),D=(e="en-US")=>{var t;return null===(t=(g(e)||g("en-US")).formatLong)||void 0===t?void 0:t.date({width:"short"})},w=(e,t=new Date)=>((t=new Date(t)).setDate(t.getDate()+e),t),v=(e,t=new Date)=>t.getHours()>=e?w(1,new Date(t)):new Date(t),h=(...e)=>new Date(Math.max(...e.map(Number))),b=e=>{const t=e?new Date(e):new Date;return new Date(t.getUTCFullYear(),t.getUTCMonth(),t.getUTCDate())},C=e=>{const t=(new Date).getFullYear(),r=[];for(let a=0;a<e;a++)r.push(`${t+a}`);return r},U=(e,t,r="desc")=>{const[a,n]="asc"===r?[e,t]:[t,e];return new Date(a.createdAt).getTime()-new Date(n.createdAt).getTime()},S=e=>!!e&&new Date(e)>=new Date,O=e=>{const t=null!=e?e:new Date;return{firstDayOfMonth:new Date(t.getFullYear(),t.getMonth(),1),lastDayOfTheMonth:new Date(t.getFullYear(),t.getMonth()+1,0),origin:t,previousMonthFirstDay:new Date(t.getFullYear(),t.getMonth()-1,1),previousMonthLastDay:new Date(t.getFullYear(),t.getMonth()-1+1,0),thirtyDaysAgo:new Date((new Date).setDate(t.getDate()-30))}},j=e=>e.slice(0,1).toUpperCase()+e.slice(1),A=e=>e.split(" ").map((e=>j(e.toLowerCase()))).join(" "),_=e=>n.pascalize(e),L=e=>null==e?void 0:e.replace(/\s+/g,"-").toLowerCase(),M=e=>e.replace(/([a-z])([A-Z])/g,"$1 $2").replace(/(?<=[a-zA-Z])(\d)/g," $1").trim(),$={aud:"$",cad:"$",eur:"€",gbp:"£",nzd:"$",usd:"$"},P=(e,t="en-US")=>Intl.NumberFormat(t,{currency:e.currency,style:"currency"}).format(e.amount),T=(...e)=>e.reduce(((e,t)=>{var r;return t?e+(null!==(r=t.amount)&&void 0!==r?r:0):e}),0),x=e=>[e.substring(0,4),e.substring(4,8),e.substring(8,12),e.substring(12)].join(" ").trim(),F=e=>{const t=e.replace(/\//g,"");return t.length>2?[t.substring(0,2),t.substring(2,6)].join("/").trim():t},z=e=>{switch(null==e?void 0:e.toLowerCase()){case"usd":default:return s.Currency.USD;case"cad":return s.Currency.CAD;case"aud":return s.Currency.AUD;case"gbp":return s.Currency.GBP;case"eur":return s.Currency.EUR;case"nzd":return s.Currency.NZD}},B=e=>{let t;switch(e){case s.Currency.USD:case s.Currency.CAD:case s.Currency.AUD:case s.Currency.NZD:t="$";break;case s.Currency.GBP:t="£‎";break;case s.Currency.EUR:t="€"}return t},Y=(e,t,r)=>{switch(e){case"usps_media_mail":return!0;case"usps_first_class_mail":return"large_envelope_or_flat"===t;case"dhl_express_worldwide":return r;default:return!1}},G=(e={})=>T(...Object.values(e)),N=(e,t)=>t[e]||e,k=e=>{var t;return"US"===e.countryCode||(null===(t=o.find((t=>t.code===e.countryCode)))||void 0===t?void 0:t.isUnitedStatesTerritory)},E=e=>{var t,r;return!(!(null===(t=i.find((t=>t.code===e.stateProvince)))||void 0===t?void 0:t.isMilitary)&&!(null===(r=c.find((t=>t.code===e.cityLocality)))||void 0===r?void 0:r.isMilitary))},I=e=>{var t,r;return!(!(null===(t=o.find((t=>t.code===e.countryCode)))||void 0===t?void 0:t.isUnitedStatesTerritory)&&!(null===(r=i.find((t=>t.code===e.stateProvince)))||void 0===r?void 0:r.isUnitedStatesTerritory))},Z=e=>{var t;return!!(null===(t=o.find((t=>t.code===e.countryCode)))||void 0===t?void 0:t.isUnsupportedByUps)},R=/^(((p[\s\.\'\,]?[o\s][\.\'\,]?)\s?)|(post\s?office\s?))((box|bin|bo|b\.?)?\s?(num|number|#)?\s?\d+)/i,H=e=>R.test(e),q=e=>!!(H(e.addressLine1)||e.addressLine2&&H(e.addressLine2)),J=e=>!e||Object.entries(e).every((([e,t])=>"countryCode"===e||[null,"","unknown"].includes(t))),K=(e,t)=>Object.assign(Object.assign(Object.assign({},e),e.matchedAddress&&{matchedAddress:Object.assign(Object.assign({},e.matchedAddress),{email:t})}),{originalAddress:Object.assign(Object.assign({},e.originalAddress),{email:t})}),Q=["usps","stamps_com"],V=e=>Q.includes(e),W=e=>"ups"===e,X=(e=[],t)=>{const r=e.find((e=>e.carrierCode===t));return null==r?void 0:r.carrierId},ee=(e,t)=>{var r;return`https://logos.shipstation.com/ipaas/carriers/${null!==(r={stamps_com:"stamps_com_wl"}[e])&&void 0!==r?r:e}/${t}.svg`},te=e=>!!e&&["GB","CA"].includes(e),re=e=>"AU"===e,ae=(e,t)=>null==e?void 0:e.filter((e=>"globalpost"===e.carrierCode?te(t):"sendle_walleted"!==e.carrierCode||re(t)));export{B as A,Y as B,G as C,N as D,k as E,E as F,I as G,Z as H,H as I,q as J,J as K,K as L,V as M,W as N,X as O,ee as P,te as Q,re as R,ae as S,u as T,l as _,g as a,p as b,y as c,f as d,w as e,d as f,D as g,C as h,S as i,O as j,j as k,A as l,h as m,v as n,b as o,m as p,_ as q,L as r,U as s,M as t,$ as u,P as v,T as w,x,F as y,z};
package/checks.js ADDED
@@ -0,0 +1 @@
1
+ const o=(o,c)=>!!(null==o?void 0:o.length)&&!(!c||!c.find((o=>!(!o.accountNumber&&"stamps_com"===o.carrierCode))));export{o as i};
package/components.js CHANGED
@@ -1 +1 @@
1
- export{z as Actions,y as ActionsMenu,A as AddFundsForm,b as AutoFundingForm,B as ButtonGroup,C as CarrierBalance,d as CarrierConnectionCard,e as CarrierIcon,f as CollapsiblePanel,h as CopyButton,i as Cube,D as DateRangeCombo,j as DateRangeSelect,k as DisplayTerm,l as EditBillingForm,m as ErrorFallback,F as FieldLabel,n as FormPortal,o as FundAndPurchase,H as HistoryCard,p as HistoryCardExtension,I as InlineLabel,q as ItemsBreakdown,L as LinkAction,r as Loader,P as PoweredByShipEngine,R as RateDetails,S as Section,t as SettingsCard,u as SkeletonCarrierRow,v as Spacer,w as Spread,T as Tabs,V as VatForm,W as WalletCard,x as WarehouseForm,c as autoFundingSchema,g as getAddFundsSchema,s as styles}from"./actions-menu.js";export{C as CarrierLogo}from"./carrier-logo.js";export{C as CellFormattedDate,D as Drawer,G as GridController,P as Pager,S as SuspendText,u as usePager}from"./suspend-text.js";export{f as Field,S as StoryNotes}from"./story-notes.js";export{P as Portal}from"./use-toggle.js";import"./formatString.js";import"date-fns/format";import"date-fns/locale";import"date-fns/parse";import"@shipengine/react-api";import"./address.js";import"humps";import"@emotion/react/jsx-runtime";import"date-fns/isToday";import"@shipengine/giger";import"react";import"react-hook-form";import"react-i18next";import"./validation.js";import"lodash/get";import"@hookform/resolvers/zod";import"zod";import"@emotion/react";import"@shipengine/giger-theme";import"lodash/isEqual";import"./money.js";import"copy-to-clipboard";import"js-base64";import"libphonenumber-js/min";import"lodash/omit";import"card-validator";import"./zod.js";import"react-dom";
1
+ export{z as Actions,y as ActionsMenu,A as AddFundsForm,b as AutoFundingForm,B as ButtonGroup,C as CarrierBalance,d as CarrierConnectionCard,e as CarrierIcon,f as CollapsiblePanel,h as CopyButton,i as Cube,D as DateRangeCombo,j as DateRangeSelect,k as DisplayTerm,l as EditBillingForm,m as ErrorFallback,F as FieldLabel,n as FormPortal,o as FundAndPurchase,H as HistoryCard,p as HistoryCardExtension,I as InlineLabel,q as ItemsBreakdown,L as LinkAction,r as Loader,P as PoweredByShipEngine,R as RateDetails,S as Section,t as SettingsCard,u as SkeletonCarrierRow,v as Spacer,w as Spread,T as Tabs,V as VatForm,W as WalletCard,x as WarehouseForm,c as autoFundingSchema,g as getAddFundsSchema,s as styles}from"./actions-menu.js";export{C as CarrierLogo}from"./carrier-logo.js";export{C as CellFormattedDate,D as Drawer,G as GridController,P as Pager,S as SuspendText,u as usePager}from"./suspend-text.js";export{f as Field,S as StoryNotes}from"./story-notes.js";export{P as Portal}from"./use-toggle.js";import"./carrier.js";import"date-fns/format";import"date-fns/locale";import"date-fns/parse";import"humps";import"@shipengine/react-api";import"./address.js";import"@emotion/react/jsx-runtime";import"date-fns/isToday";import"@shipengine/giger";import"react";import"react-hook-form";import"react-i18next";import"./vat.js";import"lodash/get";import"@hookform/resolvers/zod";import"zod";import"@emotion/react";import"@shipengine/giger-theme";import"lodash/isEqual";import"./money.js";import"copy-to-clipboard";import"js-base64";import"libphonenumber-js/min";import"lodash/omit";import"card-validator";import"./zod.js";import"react-dom";
package/elements.js CHANGED
@@ -1 +1 @@
1
- export{e as LabelLayout,l as LabelsGrid,m as ManageCarriers,b as ManageExternalCarriers,d as ManageFunding,a as ManageWarehouses,p as PaymentMethodSettings,s as ShipmentsGrid,t as ThemeCreator,T as ThemeCreatorProvider,f as TransactionHistory,c as UnitSettings,u as useThemeCreator}from"./transaction-history-element.js";export{a as CarrierServices,p as PurchaseLabel,s as ShipmentSummary,v as VoidLabel}from"./use-unit-settings.js";import"@emotion/react/jsx-runtime";import"./actions-menu.js";import"./formatString.js";import"date-fns/format";import"date-fns/locale";import"date-fns/parse";import"@shipengine/react-api";import"./address.js";import"humps";import"date-fns/isToday";import"@shipengine/giger";import"react";import"react-hook-form";import"react-i18next";import"./validation.js";import"lodash/get";import"@hookform/resolvers/zod";import"zod";import"@emotion/react";import"@shipengine/giger-theme";import"./use-toggle.js";import"lodash/isEqual";import"lodash/omit";import"react-dom";import"./money.js";import"copy-to-clipboard";import"js-base64";import"libphonenumber-js/min";import"card-validator";import"./zod.js";import"./suspend-text.js";import"@tanstack/react-query";import"./use-scrub-errors.js";import"./pudo.js";import"lodash/orderBy";import"lodash/merge";import"lodash/mergeWith";import"./warehouses.js";import"axios";import"@shipengine/js-api";import"@rjsf/core";import"@rjsf/validator-ajv8";import"lodash/camelCase";import"use-debounce";import"classnames";import"i18next";import"i18next-browser-languagedetector";import"@emotion/cache";import"stylis";
1
+ export{e as LabelLayout,l as LabelsGrid,m as ManageCarriers,b as ManageExternalCarriers,d as ManageFunding,a as ManageWarehouses,p as PaymentMethodSettings,s as ShipmentsGrid,t as ThemeCreator,T as ThemeCreatorProvider,f as TransactionHistory,c as UnitSettings,u as useThemeCreator}from"./transaction-history-element.js";export{a as CarrierServices,p as PurchaseLabel,s as ShipmentSummary,v as VoidLabel}from"./use-unit-settings.js";import"@emotion/react/jsx-runtime";import"./actions-menu.js";import"./carrier.js";import"date-fns/format";import"date-fns/locale";import"date-fns/parse";import"humps";import"@shipengine/react-api";import"./address.js";import"date-fns/isToday";import"@shipengine/giger";import"react";import"react-hook-form";import"react-i18next";import"./vat.js";import"lodash/get";import"@hookform/resolvers/zod";import"zod";import"@emotion/react";import"@shipengine/giger-theme";import"./use-toggle.js";import"lodash/isEqual";import"lodash/omit";import"react-dom";import"./money.js";import"copy-to-clipboard";import"js-base64";import"libphonenumber-js/min";import"card-validator";import"./zod.js";import"./suspend-text.js";import"@tanstack/react-query";import"./use-scrub-errors.js";import"./shipment.js";import"lodash/orderBy";import"lodash/merge";import"lodash/mergeWith";import"./warehouses.js";import"axios";import"@shipengine/js-api";import"@rjsf/core";import"@rjsf/validator-ajv8";import"lodash/camelCase";import"use-debounce";import"classnames";import"i18next";import"i18next-browser-languagedetector";import"@emotion/cache";import"stylis";
package/hooks.js CHANGED
@@ -1 +1 @@
1
- export{R as RootPortalProvider,b as useAddressValidation,u as useCountryCodeOptions,c as useRootPortal,a as useStateCodeOptions,d as useToggle}from"./use-toggle.js";export{P as PudoType,l as useBlackboxDetection,u as useConfirmationOptions,a as useCustomsContentsOptions,b as useCustomsNonDeliveryOptions,c as useDateRangeOptions,d as useInsuranceProviderOptions,m as useNestedForm,e as usePackageOptions,f as useRateOptions,n as useRunOnceOnTrue,o as useScrubErrors,g as useServiceCodeOptions,k as useServicePoints,h as useShipmentMetadata,i as useShippingPresetsOptions,j as useWarehouseOptions}from"./use-scrub-errors.js";export{P as PageLayoutProvider,u as useExpirationMonthOptions,a as usePageLayout}from"./use-page-layout.js";import"react";import"./address.js";import"./formatString.js";import"date-fns/format";import"date-fns/locale";import"date-fns/parse";import"@shipengine/react-api";import"humps";import"lodash/isEqual";import"lodash/omit";import"react-dom";import"@emotion/react/jsx-runtime";import"react-i18next";import"./pudo.js";import"lodash/orderBy";import"@shipengine/giger";import"@emotion/react";import"js-base64";
1
+ export{R as RootPortalProvider,b as useAddressValidation,u as useCountryCodeOptions,c as useRootPortal,a as useStateCodeOptions,d as useToggle}from"./use-toggle.js";export{P as PudoType,l as useBlackboxDetection,u as useConfirmationOptions,a as useCustomsContentsOptions,b as useCustomsNonDeliveryOptions,c as useDateRangeOptions,d as useInsuranceProviderOptions,m as useNestedForm,e as usePackageOptions,f as useRateOptions,n as useRunOnceOnTrue,o as useScrubErrors,g as useServiceCodeOptions,k as useServicePoints,h as useShipmentMetadata,i as useShippingPresetsOptions,j as useWarehouseOptions}from"./use-scrub-errors.js";export{P as PageLayoutProvider,u as useExpirationMonthOptions,a as useHelpers,b as usePageLayout}from"./use-page-layout.js";import"react";import"./address.js";import"./carrier.js";import"date-fns/format";import"date-fns/locale";import"date-fns/parse";import"humps";import"@shipengine/react-api";import"lodash/isEqual";import"lodash/omit";import"react-dom";import"@emotion/react/jsx-runtime";import"react-i18next";import"./shipment.js";import"lodash/orderBy";import"@shipengine/giger";import"@emotion/react";import"js-base64";import"./checks.js";
package/index.js CHANGED
@@ -1 +1 @@
1
- import{E as X,a as Y}from"./actions-menu.js";export{z as Actions,y as ActionsMenu,A as AddFundsForm,b as AutoFundingForm,B as ButtonGroup,C as CarrierBalance,d as CarrierConnectionCard,e as CarrierIcon,f as CollapsiblePanel,h as CopyButton,i as Cube,D as DateRangeCombo,j as DateRangeSelect,k as DisplayTerm,l as EditBillingForm,a as ElementsContext,E as ElementsContextProvider,m as ErrorFallback,F as FieldLabel,n as FormPortal,o as FundAndPurchase,H as HistoryCard,p as HistoryCardExtension,I as InlineLabel,q as ItemsBreakdown,L as LinkAction,r as Loader,P as PoweredByShipEngine,R as RateDetails,S as Section,t as SettingsCard,u as SkeletonCarrierRow,v as Spacer,w as Spread,T as Tabs,V as VatForm,W as WalletCard,x as WarehouseForm,c as autoFundingSchema,g as getAddFundsSchema,s as styles,G as useElements}from"./actions-menu.js";export{C as CarrierLogo}from"./carrier-logo.js";export{C as CellFormattedDate,D as Drawer,G as GridController,P as Pager,S as SuspendText,u as usePager}from"./suspend-text.js";export{f as Field,S as StoryNotes}from"./story-notes.js";import{R as _}from"./use-toggle.js";export{P as Portal,R as RootPortalProvider,b as useAddressValidation,u as useCountryCodeOptions,c as useRootPortal,a as useStateCodeOptions,d as useToggle}from"./use-toggle.js";export{C as Country,U as UsState,d as UsaCity,c as countries,a as countryCodes,e as euCountryCodes,p as postalCodeRegex,f as usCities,b as usStateCodes,u as usStates}from"./address.js";export{a as CarrierServices,b as ConnectExternalCarrier,p as PurchaseLabel,s as ShipmentSummary,v as VoidLabel,c as createElement}from"./use-unit-settings.js";export{e as LabelLayout,l as LabelsGrid,m as ManageCarriers,b as ManageExternalCarriers,d as ManageFunding,a as ManageWarehouses,p as PaymentMethodSettings,s as ShipmentsGrid,t as ThemeCreator,T as ThemeCreatorProvider,f as TransactionHistory,c as UnitSettings,u as useThemeCreator}from"./transaction-history-element.js";export{e as extendZod}from"./zod.js";export{P as PudoType,l as useBlackboxDetection,u as useConfirmationOptions,a as useCustomsContentsOptions,b as useCustomsNonDeliveryOptions,c as useDateRangeOptions,d as useInsuranceProviderOptions,m as useNestedForm,e as usePackageOptions,f as useRateOptions,n as useRunOnceOnTrue,o as useScrubErrors,g as useServiceCodeOptions,k as useServicePoints,h as useShipmentMetadata,i as useShippingPresetsOptions,j as useWarehouseOptions}from"./use-scrub-errors.js";export{P as PageLayoutProvider,u as useExpirationMonthOptions,a as usePageLayout}from"./use-page-layout.js";export{m as moneySchema}from"./money.js";export{p as phoneSchema,a as phoneSchemaUnvalidated}from"./phone.js";export{a as assert,r as raise}from"./assertions.js";export{a as convertDimensions,c as createDictionary,f as formatDimensions,e as getCancelledShipment,b as getIsCustomsRequiredForShipment,g as getIsInternationalShipment,d as getPendingShipment,h as getShipmentByStatus,j as isCollectionService,i as isPudoEligibleRate,m as moveCustomsItemsToProducts}from"./pudo.js";import{_ as Z}from"./formatString.js";export{G as addEmailToValidation,S as addSpaceBetweenWords,q as calculateTotal,O as capitalizeFirstLetter,P as capitalizeFirstLetterOfEachWord,k as currencySymbol,e as daysAfter,N as filterFundingSourceCarriers,a as findDateLocale,b as formatByDateAndLocale,r as formatCreditCardNumber,f as formatDate,c as formatDateDDMMYY,d as formatDateDDMMYYYY,t as formatExpiration,l as formatMoney,J as getCarrierIdByCarrierCode,u as getCurrencyFromString,v as getCurrencySymbolFromString,h as getExpirationYears,K as getLogoOrIconByCarrierCode,w as getRateRequiresAcknowledgement,j as getRelativeDates,x as getTotalRateAmount,g as getlocaleDateStringFormat,z as isDomesticAddress,F as isEmptyAddress,L as isGlobalPostEligible,A as isMilitaryAddress,i as isNowOrInTheFuture,D as isPoBox,E as isPoBoxAddress,M as isSendleEligible,B as isUnitedStatesTerritory,C as isUnsupportedByUps,I as isUpsCarrier,H as isUspsCarrier,m as mostRecent,n as nextDayCutoff,o as omitTime,y as overrideCarrierCodes,p as parseLocaleDate,Q as pascalize,R as replaceSpacesWithDashes,s as sortByCreationDate}from"./formatString.js";export{k as convertDecimalWeightToFractionalWeight,j as convertFractionalWeightToDecimalWeight,h as convertPoundsAndOuncesToOunces,l as convertWeight,c as createCodedErrors,m as formatFractionalWeight,g as getCustomsFromSalesOrder,o as getDefaultWarehouse,b as getIsCustomsRequiredForSalesOrder,d as getRequestedServices,e as getSalesOrderItemsFromSalesOrderOrShipment,f as isDecimalWeight,n as isFlatRatePackageCode,i as isMetricWeightUnit,a as throwAny,t as throwJoinedMessages}from"./warehouses.js";import{g as $,d as ee}from"./validation.js";export{c as createStyles,d as deepMergeFeatures,e as errorMap,f as featureFlagComponentNameLookup,a as formLogger,g as getDefaultFeatures,i as isObject,b as isString,t as trackingStatusFormatter,v as validationResolver}from"./validation.js";export{a as AccountSettings,l as LabelWorkflow,o as Onboarding}from"./wallet-form.js";import{jsx as ae}from"@emotion/react/jsx-runtime";import{GigerProvider as te,GigerTestProvider as re}from"@shipengine/giger";import{Theme as oe}from"@shipengine/giger-theme";import{ShipEngine as se}from"@shipengine/react-api";import ie from"axios";import{useCallback as ne,useMemo as le}from"react";import"date-fns/isToday";import"react-hook-form";import"react-i18next";import"@emotion/react";import"lodash/isEqual";import"zod";import"copy-to-clipboard";import"js-base64";import"libphonenumber-js/min";import"lodash/omit";import"card-validator";import"react-dom";import"@tanstack/react-query";import"lodash/merge";import"lodash/mergeWith";import"humps";import"@shipengine/js-api";import"@rjsf/core";import"@rjsf/validator-ajv8";import"lodash/camelCase";import"use-debounce";import"classnames";import"i18next";import"i18next-browser-languagedetector";import"@emotion/cache";import"stylis";import"lodash/orderBy";import"date-fns/format";import"date-fns/locale";import"date-fns/parse";import"lodash/get";import"@hookform/resolvers/zod";var pe={fallback:{borderRadius:{L:"16px",M:"8px",S:"4px",XL:"32px",XS:"2px"},breakPoints:{desktop:1280,mobileLarge:480,tablet:768,tabletLarge:960},card:{borderRadius:{desktop:"8px",mobile:"4px",tablet:"8px"}},components:{Button:{borderRadius:"4px"},Checkbox:{borderRadius:"2px",square:!1},Chip:{backgroundColor:"#f4f4f4",border:"none",borderRadius:"16px",color:"#706f6f",fontWeight:600,isSelected:{backgroundColor:"#EDEDED",border:"none",color:"#7A7A7A"},padding:"4px 16px"},Dialog:{action:{justifyContent:"center"},content:{padding:24,textAlign:"center"},dialog:{backgroundColor:"rgba(0, 0, 0, 0.26)",borderRadius:"4px"},header:{borderBottom:"2px solid #d3d3d3",padding:24,titleColor:"#616161"}},Field:{color:"#373737",fontWeight:700,placeholder:{fontWeight:700}},FieldContainer:{borderRadius:"4px"},Link:{activeColor:"#787878",defaultColor:"#616161",hoverColor:"#303030",isDark:{activeColor:"#787878",defaultColor:"#fff",hoverColor:"#fff",visitedColor:"#fff"},visitedColor:"#303030"},Table:{border:"none",borderRadius:"4px",boxShadow:"0 0 12px rgba(0, 0, 0, 0.1)"},Typography:{body1:{fontSize:"16px",fontWeight:400,letterSpacing:0,lineHeight:"24px"},body2:{fontSize:"14px",fontWeight:400,letterSpacing:3,lineHeight:"20px"},heading1:{fontSize:"48px",fontWeight:700,letterSpacing:0,lineHeight:"72px"},heading2:{fontSize:"32px",fontWeight:700,letterSpacing:1,lineHeight:"48px"},heading3:{fontSize:"24px",fontWeight:700,letterSpacing:3,lineHeight:"48px"},heading4:{fontSize:"20px",fontWeight:700,letterSpacing:3,lineHeight:"32px"},heading5:{fontSize:"18px",fontWeight:700,letterSpacing:3,lineHeight:"28px"},heading6:{fontSize:"16px",fontWeight:700,letterSpacing:3,lineHeight:"24px"},small:{fontSize:"12px",fontWeight:400,letterSpacing:5,lineHeight:"20px"},subtitle1:{fontSize:"16px",fontWeight:600,letterSpacing:3,lineHeight:"24px"},subtitle2:{fontSize:"14px",fontWeight:600,letterSpacing:5,lineHeight:"20px"}}},defaultFontFamily:"Arial",elevations:{above:{boxShadow:"0 0 12px rgba(0, 0, 0, 0.1)",zIndex:1e3},backdrop:{boxShadow:"none",zIndex:1007},flat1:{boxShadow:"0 2px 2px rgba(0, 0, 0, 0.1)",zIndex:1},flat2:{boxShadow:"0 2px 2px rgba(0, 0, 0, 0.1)",zIndex:1e3},overlay1:{boxShadow:"0 0 24px rgba(0, 0, 0, 0.1)",zIndex:1006},overlay2:{boxShadow:"0 0 24px rgba(0, 0, 0, 0.1)",zIndex:1008},popout1:{boxShadow:"0 4px 16px rgba(0, 0, 0, 0.1)",zIndex:1004},popout2:{boxShadow:"0 4px 16px rgba(0, 0, 0, 0.1)",zIndex:1005},raised:{boxShadow:"0 8px 8px rgba(0, 0, 0, 0.1)",zIndex:1002},raisedInverted1:{boxShadow:"0 -8px 8px rgba(0, 0, 0, 0.1)",zIndex:1002},raisedInverted2:{boxShadow:"0 -8px 8px rgba(0, 0, 0, 0.1)",zIndex:1003},sticky:{boxShadow:"none",zIndex:1001}},fontFaces:[],grid:{desktop:{columns:12,gutter:24,horizontalSpace:16,verticalSpace:24},desktopLarge:{columns:12,gutter:24,horizontalSpace:16,verticalSpace:24},mobile:{columns:4,gutter:16,horizontalSpace:16,verticalSpace:16},mobileLarge:{columns:4,gutter:16,horizontalSpace:16,verticalSpace:16},tablet:{columns:12,gutter:24,horizontalSpace:16,verticalSpace:24},tabletLarge:{columns:12,gutter:24,horizontalSpace:16,verticalSpace:24}},iconSize:{extra_large:"48px",large:"32px",medium:"20px",regular:"24px",small:"16px"},palette:{alert:{light:"#ffe7ca",main:"#725200"},black:"#000",dataVisualization:{highContrast:{blue:"#3970C1",blueDark:"#002039",coral:"#F95D6A",cyan:"#45CEE0",green:"#B3D849",orange:"#FFA600",orangeDark:"#FF7C43",pink:"#D12771",purple:"#A05195",purpleDark:"#665191"},lowContrast:{blue:"#96B3DE",blueDark:"#5283AB",coral:"#FCA6AD",cyan:"#BAE6FF",green:"#DEF895",orange:"#FDDFA5",orangeDark:"#FCC2A9",pink:"#E995BA",purple:"#D4BBFF",purpleDark:"#B1A2D0"}},error:{light:"#fee5e4",main:"#a72514"},gray:{dark:"#373737",light:"#d3d3d3",main:"#706f6f",megaLight:"#f4f4f4",ultraLight:"#f4f4f4"},info:{light:"#dbedfd",main:"#195f7f"},primary:{dark:"#626262",light:"#D6D6D6",main:"#7A7A7A",ultraLight:"#EDEDED"},secondary:{dark:"#303030",light:"#787878",main:"#616161",ultraLight:"#F4F4F4"},success:{light:"#dcfddb",main:"#286327"},white:"#fff"},spacingBase:8,typography:{fontSize:{L:"18px",M:"16px",S:"14px",XL:"20px",XS:"12px",XXL:"24px",XXS:"10px",XXXL:"32px",XXXXL:"48px"},fontWeight:{bold:700,light:200,normal:400,semibold:600},letterSpacing:{L:3,M:1,S:0,XL:5,XXL:8,XXXL:12},lineHeight:{L:"28px",M:"24px",S:"20px",XL:"32px",XXL:"48px",XXXL:"72px"}}}};const de=({baseURL:e="https://elements.shipengine.com",cdnURL:a="https://cdn.packlink.com",children:t,container:r,features:o,getToken:s,headers:i,locale:n,onApiError:l,onError:p=(()=>{}),scope:d="lmnt",themeConfig:c,defaultQueryClientOptions:g})=>{const m=(({cdnURL:e})=>ne((a=>Z(void 0,void 0,void 0,(function*(){return(yield ie.get(`/brand/fallback/icons/${a.toLowerCase()}.svg`,{baseURL:e,responseType:"json"})).data}))),[e]))({cdnURL:a}),u=new oe(null!=c?c:pe.fallback),h={baseURL:e,cdnURL:a,container:r,features:o,getToken:s,locale:n,onError:p,scope:d,theme:u};return ae(X,Object.assign({},h,{children:ae(te,Object.assign({cdnUrl:a,reference:d||void 0,resolveIcon:m,theme:u},{children:ae(se,Object.assign({baseURL:e,defaultQueryClientOptions:g,getToken:s,headers:i,onApiError:l},{children:ae(_,{children:t})}))}))}))},ce=({baseURL:e,children:a,features:t})=>{const r=le((()=>new oe),[]),o=$(["globalFeatures"]),s=ne((()=>"none"),[]),i={baseURL:e,cdnURL:"mockCdnUrl",getFeatures:e=>{var a;return ee(null!==(a=$([e]))&&void 0!==a?a:{},null==t?void 0:t[e])},getToken:s,globalFeatures:Object.assign(Object.assign({enabledExternalCarriers:["apc","asendia","better_trucks","canpar","chronopost","couriers_please","courierpost","dpd","hermes_germany","intelliquick_delivery","lso","ontrac","seko","ups","yodel"]},o),t.globalFeatures),onError:()=>{},scope:"lmnt",theme:r};return ae(Y.Provider,Object.assign({value:i},{children:ae(re,Object.assign({theme:r},{children:ae(se,Object.assign({baseURL:e,getToken:s},{children:a}))}))}))};export{de as ElementsProvider,ce as ElementsTestProvider};
1
+ import{E as X,a as _}from"./actions-menu.js";export{z as Actions,y as ActionsMenu,A as AddFundsForm,b as AutoFundingForm,B as ButtonGroup,C as CarrierBalance,d as CarrierConnectionCard,e as CarrierIcon,f as CollapsiblePanel,h as CopyButton,i as Cube,D as DateRangeCombo,j as DateRangeSelect,k as DisplayTerm,l as EditBillingForm,a as ElementsContext,E as ElementsContextProvider,m as ErrorFallback,F as FieldLabel,n as FormPortal,o as FundAndPurchase,H as HistoryCard,p as HistoryCardExtension,I as InlineLabel,q as ItemsBreakdown,L as LinkAction,r as Loader,P as PoweredByShipEngine,R as RateDetails,S as Section,t as SettingsCard,u as SkeletonCarrierRow,v as Spacer,w as Spread,T as Tabs,V as VatForm,W as WalletCard,x as WarehouseForm,c as autoFundingSchema,g as getAddFundsSchema,s as styles,G as useElements}from"./actions-menu.js";export{C as CarrierLogo}from"./carrier-logo.js";export{C as CellFormattedDate,D as Drawer,G as GridController,P as Pager,S as SuspendText,u as usePager}from"./suspend-text.js";export{f as Field,S as StoryNotes}from"./story-notes.js";import{R as Y}from"./use-toggle.js";export{P as Portal,R as RootPortalProvider,b as useAddressValidation,u as useCountryCodeOptions,c as useRootPortal,a as useStateCodeOptions,d as useToggle}from"./use-toggle.js";export{C as Country,U as UsState,d as UsaCity,c as countries,a as countryCodes,e as euCountryCodes,p as postalCodeRegex,f as usCities,b as usStateCodes,u as usStates}from"./address.js";export{a as CarrierServices,b as ConnectExternalCarrier,p as PurchaseLabel,s as ShipmentSummary,v as VoidLabel,c as createElement}from"./use-unit-settings.js";export{e as LabelLayout,l as LabelsGrid,m as ManageCarriers,b as ManageExternalCarriers,d as ManageFunding,a as ManageWarehouses,p as PaymentMethodSettings,s as ShipmentsGrid,t as ThemeCreator,T as ThemeCreatorProvider,f as TransactionHistory,c as UnitSettings,u as useThemeCreator}from"./transaction-history-element.js";export{e as extendZod}from"./zod.js";export{P as PudoType,l as useBlackboxDetection,u as useConfirmationOptions,a as useCustomsContentsOptions,b as useCustomsNonDeliveryOptions,c as useDateRangeOptions,d as useInsuranceProviderOptions,m as useNestedForm,e as usePackageOptions,f as useRateOptions,n as useRunOnceOnTrue,o as useScrubErrors,g as useServiceCodeOptions,k as useServicePoints,h as useShipmentMetadata,i as useShippingPresetsOptions,j as useWarehouseOptions}from"./use-scrub-errors.js";export{P as PageLayoutProvider,u as useExpirationMonthOptions,a as useHelpers,b as usePageLayout}from"./use-page-layout.js";export{m as moneySchema}from"./money.js";export{p as phoneSchema,a as phoneSchemaUnvalidated}from"./phone.js";export{a as assert,r as raise}from"./assertions.js";export{i as isOnboarded}from"./checks.js";export{b as convertDimensions,c as createDictionary,f as formatDimensions,h as getCancelledShipment,d as getIsCustomsRequiredForShipment,g as getIsInternationalShipment,e as getPendingShipment,j as getShipmentByStatus,a as isCollectionService,i as isPudoEligibleRate,m as moveCustomsItemsToProducts}from"./shipment.js";import{_ as Z}from"./carrier.js";export{L as addEmailToValidation,t as addSpaceBetweenWords,w as calculateTotal,k as capitalizeFirstLetter,l as capitalizeFirstLetterOfEachWord,u as currencySymbol,e as daysAfter,S as filterFundingSourceCarriers,a as findDateLocale,b as formatByDateAndLocale,x as formatCreditCardNumber,f as formatDate,c as formatDateDDMMYY,d as formatDateDDMMYYYY,y as formatExpiration,v as formatMoney,O as getCarrierIdByCarrierCode,z as getCurrencyFromString,A as getCurrencySymbolFromString,h as getExpirationYears,P as getLogoOrIconByCarrierCode,B as getRateRequiresAcknowledgement,j as getRelativeDates,C as getTotalRateAmount,g as getlocaleDateStringFormat,E as isDomesticAddress,K as isEmptyAddress,Q as isGlobalPostEligible,F as isMilitaryAddress,i as isNowOrInTheFuture,I as isPoBox,J as isPoBoxAddress,R as isSendleEligible,G as isUnitedStatesTerritory,H as isUnsupportedByUps,N as isUpsCarrier,M as isUspsCarrier,m as mostRecent,n as nextDayCutoff,o as omitTime,D as overrideCarrierCodes,p as parseLocaleDate,q as pascalize,r as replaceSpacesWithDashes,s as sortByCreationDate}from"./carrier.js";export{k as convertDecimalWeightToFractionalWeight,j as convertFractionalWeightToDecimalWeight,h as convertPoundsAndOuncesToOunces,l as convertWeight,c as createCodedErrors,m as formatFractionalWeight,g as getCustomsFromSalesOrder,o as getDefaultWarehouse,b as getIsCustomsRequiredForSalesOrder,d as getRequestedServices,e as getSalesOrderItemsFromSalesOrderOrShipment,f as isDecimalWeight,n as isFlatRatePackageCode,i as isMetricWeightUnit,a as throwAny,t as throwJoinedMessages}from"./warehouses.js";import{g as $,d as ee}from"./vat.js";export{N as NO_VAT_COUNTRIES,c as aggregateRateDetailItems,e as calculateRateDetailBreakdown,h as createStyles,d as deepMergeFeatures,j as errorMap,f as featureFlagComponentNameLookup,a as formLogger,g as getDefaultFeatures,k as getIsVatRequired,i as isObject,b as isString,t as trackingStatusFormatter,v as validationResolver}from"./vat.js";export{a as AccountSettings,l as LabelWorkflow,o as Onboarding}from"./wallet-form.js";import{jsx as ae}from"@emotion/react/jsx-runtime";import{GigerProvider as te,GigerTestProvider as re}from"@shipengine/giger";import{Theme as oe}from"@shipengine/giger-theme";import{ShipEngine as se}from"@shipengine/react-api";import ie from"axios";import{useCallback as ne,useMemo as le}from"react";import"date-fns/isToday";import"react-hook-form";import"react-i18next";import"@emotion/react";import"lodash/isEqual";import"zod";import"copy-to-clipboard";import"js-base64";import"libphonenumber-js/min";import"lodash/omit";import"card-validator";import"react-dom";import"@tanstack/react-query";import"lodash/merge";import"lodash/mergeWith";import"humps";import"@shipengine/js-api";import"@rjsf/core";import"@rjsf/validator-ajv8";import"lodash/camelCase";import"use-debounce";import"classnames";import"i18next";import"i18next-browser-languagedetector";import"@emotion/cache";import"stylis";import"lodash/orderBy";import"date-fns/format";import"date-fns/locale";import"date-fns/parse";import"lodash/get";import"@hookform/resolvers/zod";var pe={fallback:{borderRadius:{L:"16px",M:"8px",S:"4px",XL:"32px",XS:"2px"},breakPoints:{desktop:1280,mobileLarge:480,tablet:768,tabletLarge:960},card:{borderRadius:{desktop:"8px",mobile:"4px",tablet:"8px"}},components:{Button:{borderRadius:"4px"},Checkbox:{borderRadius:"2px",square:!1},Chip:{backgroundColor:"#f4f4f4",border:"none",borderRadius:"16px",color:"#706f6f",fontWeight:600,isSelected:{backgroundColor:"#EDEDED",border:"none",color:"#7A7A7A"},padding:"4px 16px"},Dialog:{action:{justifyContent:"center"},content:{padding:24,textAlign:"center"},dialog:{backgroundColor:"rgba(0, 0, 0, 0.26)",borderRadius:"4px"},header:{borderBottom:"2px solid #d3d3d3",padding:24,titleColor:"#616161"}},Field:{color:"#373737",fontWeight:700,placeholder:{fontWeight:700}},FieldContainer:{borderRadius:"4px"},Link:{activeColor:"#787878",defaultColor:"#616161",hoverColor:"#303030",isDark:{activeColor:"#787878",defaultColor:"#fff",hoverColor:"#fff",visitedColor:"#fff"},visitedColor:"#303030"},Table:{border:"none",borderRadius:"4px",boxShadow:"0 0 12px rgba(0, 0, 0, 0.1)"},Typography:{body1:{fontSize:"16px",fontWeight:400,letterSpacing:0,lineHeight:"24px"},body2:{fontSize:"14px",fontWeight:400,letterSpacing:3,lineHeight:"20px"},heading1:{fontSize:"48px",fontWeight:700,letterSpacing:0,lineHeight:"72px"},heading2:{fontSize:"32px",fontWeight:700,letterSpacing:1,lineHeight:"48px"},heading3:{fontSize:"24px",fontWeight:700,letterSpacing:3,lineHeight:"48px"},heading4:{fontSize:"20px",fontWeight:700,letterSpacing:3,lineHeight:"32px"},heading5:{fontSize:"18px",fontWeight:700,letterSpacing:3,lineHeight:"28px"},heading6:{fontSize:"16px",fontWeight:700,letterSpacing:3,lineHeight:"24px"},small:{fontSize:"12px",fontWeight:400,letterSpacing:5,lineHeight:"20px"},subtitle1:{fontSize:"16px",fontWeight:600,letterSpacing:3,lineHeight:"24px"},subtitle2:{fontSize:"14px",fontWeight:600,letterSpacing:5,lineHeight:"20px"}}},defaultFontFamily:"Arial",elevations:{above:{boxShadow:"0 0 12px rgba(0, 0, 0, 0.1)",zIndex:1e3},backdrop:{boxShadow:"none",zIndex:1007},flat1:{boxShadow:"0 2px 2px rgba(0, 0, 0, 0.1)",zIndex:1},flat2:{boxShadow:"0 2px 2px rgba(0, 0, 0, 0.1)",zIndex:1e3},overlay1:{boxShadow:"0 0 24px rgba(0, 0, 0, 0.1)",zIndex:1006},overlay2:{boxShadow:"0 0 24px rgba(0, 0, 0, 0.1)",zIndex:1008},popout1:{boxShadow:"0 4px 16px rgba(0, 0, 0, 0.1)",zIndex:1004},popout2:{boxShadow:"0 4px 16px rgba(0, 0, 0, 0.1)",zIndex:1005},raised:{boxShadow:"0 8px 8px rgba(0, 0, 0, 0.1)",zIndex:1002},raisedInverted1:{boxShadow:"0 -8px 8px rgba(0, 0, 0, 0.1)",zIndex:1002},raisedInverted2:{boxShadow:"0 -8px 8px rgba(0, 0, 0, 0.1)",zIndex:1003},sticky:{boxShadow:"none",zIndex:1001}},fontFaces:[],grid:{desktop:{columns:12,gutter:24,horizontalSpace:16,verticalSpace:24},desktopLarge:{columns:12,gutter:24,horizontalSpace:16,verticalSpace:24},mobile:{columns:4,gutter:16,horizontalSpace:16,verticalSpace:16},mobileLarge:{columns:4,gutter:16,horizontalSpace:16,verticalSpace:16},tablet:{columns:12,gutter:24,horizontalSpace:16,verticalSpace:24},tabletLarge:{columns:12,gutter:24,horizontalSpace:16,verticalSpace:24}},iconSize:{extra_large:"48px",large:"32px",medium:"20px",regular:"24px",small:"16px"},palette:{alert:{light:"#ffe7ca",main:"#725200"},black:"#000",dataVisualization:{highContrast:{blue:"#3970C1",blueDark:"#002039",coral:"#F95D6A",cyan:"#45CEE0",green:"#B3D849",orange:"#FFA600",orangeDark:"#FF7C43",pink:"#D12771",purple:"#A05195",purpleDark:"#665191"},lowContrast:{blue:"#96B3DE",blueDark:"#5283AB",coral:"#FCA6AD",cyan:"#BAE6FF",green:"#DEF895",orange:"#FDDFA5",orangeDark:"#FCC2A9",pink:"#E995BA",purple:"#D4BBFF",purpleDark:"#B1A2D0"}},error:{light:"#fee5e4",main:"#a72514"},gray:{dark:"#373737",light:"#d3d3d3",main:"#706f6f",megaLight:"#f4f4f4",ultraLight:"#f4f4f4"},info:{light:"#dbedfd",main:"#195f7f"},primary:{dark:"#626262",light:"#D6D6D6",main:"#7A7A7A",ultraLight:"#EDEDED"},secondary:{dark:"#303030",light:"#787878",main:"#616161",ultraLight:"#F4F4F4"},success:{light:"#dcfddb",main:"#286327"},white:"#fff"},spacingBase:8,typography:{fontSize:{L:"18px",M:"16px",S:"14px",XL:"20px",XS:"12px",XXL:"24px",XXS:"10px",XXXL:"32px",XXXXL:"48px"},fontWeight:{bold:700,light:200,normal:400,semibold:600},letterSpacing:{L:3,M:1,S:0,XL:5,XXL:8,XXXL:12},lineHeight:{L:"28px",M:"24px",S:"20px",XL:"32px",XXL:"48px",XXXL:"72px"}}}};const de=({baseURL:e="https://elements.shipengine.com",cdnURL:a="https://cdn.packlink.com",children:t,container:r,features:o,getToken:s,headers:i,locale:n,onApiError:l,onError:p=(()=>{}),scope:d="lmnt",themeConfig:c,defaultQueryClientOptions:g})=>{const m=(({cdnURL:e})=>ne((a=>Z(void 0,void 0,void 0,(function*(){return(yield ie.get(`/brand/fallback/icons/${a.toLowerCase()}.svg`,{baseURL:e,responseType:"json"})).data}))),[e]))({cdnURL:a}),u=new oe(null!=c?c:pe.fallback),h={baseURL:e,cdnURL:a,container:r,features:o,getToken:s,locale:n,onError:p,scope:d,theme:u};return ae(X,Object.assign({},h,{children:ae(te,Object.assign({cdnUrl:a,reference:d||void 0,resolveIcon:m,theme:u},{children:ae(se,Object.assign({baseURL:e,defaultQueryClientOptions:g,getToken:s,headers:i,onApiError:l},{children:ae(Y,{children:t})}))}))}))},ce=({baseURL:e,children:a,features:t})=>{const r=le((()=>new oe),[]),o=$(["globalFeatures"]),s=ne((()=>"none"),[]),i={baseURL:e,cdnURL:"mockCdnUrl",getFeatures:e=>{var a;return ee(null!==(a=$([e]))&&void 0!==a?a:{},null==t?void 0:t[e])},getToken:s,globalFeatures:Object.assign(Object.assign({enabledExternalCarriers:["apc","asendia","better_trucks","canpar","chronopost","couriers_please","courierpost","dpd","hermes_germany","intelliquick_delivery","lso","ontrac","seko","ups","yodel"]},o),t.globalFeatures),onError:()=>{},scope:"lmnt",theme:r};return ae(_.Provider,Object.assign({value:i},{children:ae(re,Object.assign({theme:r},{children:ae(se,Object.assign({baseURL:e,getToken:s},{children:a}))}))}))};export{de as ElementsProvider,ce as ElementsTestProvider};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@shipengine/elements",
3
- "version": "2.1.0",
3
+ "version": "2.3.0",
4
4
  "peerDependencies": {
5
5
  "@emotion/react": "11.x",
6
6
  "react-i18next": "11.x",
@@ -30,16 +30,15 @@
30
30
  "dependencies": {
31
31
  "@emotion/cache": "11.10.5",
32
32
  "@emotion/serialize": "1.1.1",
33
- "@faker-js/faker": "7.6.0",
34
33
  "@hookform/resolvers": "2.9.11",
35
34
  "@jest/globals": "28.1.3",
36
35
  "@rjsf/core": "5.16.1",
37
36
  "@rjsf/utils": "5.16.1",
38
37
  "@rjsf/validator-ajv8": "5.16.1",
39
- "@shipengine/giger": "1.11.2",
40
- "@shipengine/giger-theme": "1.5.1",
41
- "@shipengine/js-api": "1.27.0",
42
- "@shipengine/react-api": "2.13.5",
38
+ "@shipengine/giger": "1.15.0",
39
+ "@shipengine/giger-theme": "1.6.0",
40
+ "@shipengine/js-api": "1.30.2",
41
+ "@shipengine/react-api": "2.15.3",
43
42
  "@storybook/addons": "6.5.16",
44
43
  "@storybook/components": "7.0.0-rc.1",
45
44
  "@storybook/core-events": "7.0.0-rc.1",
@@ -47,7 +46,6 @@
47
46
  "@storybook/theming": "7.0.0-rc.1",
48
47
  "@tanstack/react-query": "4.36.1",
49
48
  "@testing-library/dom": "8.19.0",
50
- "@vitejs/plugin-react": "1.3.2",
51
49
  "axios": "1.7.2",
52
50
  "card-validator": "8.1.1",
53
51
  "classnames": "2.5.1",
package/shipment.js ADDED
@@ -0,0 +1 @@
1
+ import{F as e,G as s,s as t,T as o}from"./carrier.js";const i=(e,s)=>{var t;return null!==(t=null==e?void 0:e.reduce(((e,t)=>Object.assign(Object.assign({},e),s(t,e))),{}))&&void 0!==t?t:{}},r=[{carrier:"yodel_walleted"},{carrier:"hermes",serviceCodes:[{serviceCode:"domestic_courier_collections",type:"pick_up"},{serviceCode:"postable_courier_collections",type:"pick_up"}]},{carrier:"dpdwallet"}],c=e=>r.some((s=>e.carrierCode===s.carrier)),n=(e,s)=>r.some((t=>{var o;return t.carrier===e&&(e=>e.toLowerCase().includes("collection"))(s)||(null===(o=t.serviceCodes)||void 0===o?void 0:o.some((e=>e.serviceCode===s&&"pick_up"===e.type)))})),a=e=>`${e.length} x ${e.width} x ${e.height} `;function l(e,{allowAllZeroes:s}={}){const{length:t,width:o,height:i,unit:r}=e;if(![t,o,i].every((e=>0===e))||s)return Object.assign(Object.assign({},e),{unit:null!=r?r:"inch"})}const u=({shipFrom:e,shipTo:s})=>(null==e?void 0:e.countryCode)!==(null==s?void 0:s.countryCode),d=({shipFrom:t,shipTo:o})=>t&&e(t)||o&&(e(o)||s(o))||(null==t?void 0:t.countryCode)!==(null==o?void 0:o.countryCode),v=e=>null==e?void 0:e.filter((e=>"pending"===e.shipmentStatus)).sort(t)[0],m=e=>null==e?void 0:e.filter((e=>"cancelled"===e.shipmentStatus)).sort(t)[0],p=(e,s)=>null==s?void 0:s.filter((({shipmentStatus:s})=>s===e)).sort(t)[0],g=e=>{var s,t;if(!(null===(t=null===(s=e.customs)||void 0===s?void 0:s.customsItems)||void 0===t?void 0:t.length))return e;const i=e.customs.customsItems.map((e=>Object.assign(Object.assign({},e),{value:e.value instanceof Object?e.value:{amount:e.value,currency:e.valueCurrency||"USD"}}))),r=e.customs,c=o(r,["customsItems"]);return Object.assign(Object.assign({},e),{customs:c,packages:e.packages.map(((e,s)=>0===s?Object.assign(Object.assign({},e),{products:i}):e))})};export{n as a,l as b,i as c,d,v as e,a as f,u as g,m as h,c as i,p as j,g as m};
@@ -1,5 +1,6 @@
1
1
  export declare const styles: {
2
- chipList: (theme: import("@shipengine/giger-theme/dist/lib/Theme").Theme) => {
2
+ chips: (theme: import("@shipengine/giger-theme/dist/lib/Theme").Theme) => {
3
+ display: "flex";
3
4
  gap: number;
4
5
  };
5
6
  fundsInput: (theme: import("@shipengine/giger-theme/dist/lib/Theme").Theme) => {
@@ -6,6 +6,7 @@ import { AddressValidationPreference } from "../templates/address-preference-sel
6
6
  type WarehouseData = Pick<WarehousePayload, "name" | "isDefault">;
7
7
  type WalletData = {
8
8
  creditCard: WalletPayload["creditCard"];
9
+ iovationBlackbox: WalletPayload["iovationBlackbox"];
9
10
  };
10
11
  type RegisterFundingSourceCarrierData = {
11
12
  agreeToTerms: RegisterFundingSourceCarrierPayload["agreeToTerms"];
@@ -1,5 +1,5 @@
1
1
  import { WithCommonProps } from "@shipengine/giger";
2
- import type { SE } from "@shipengine/react-api";
2
+ import { SE } from "@shipengine/react-api";
3
3
  import { RateOption } from "../../../hooks";
4
4
  export type RateCardProps = Partial<RateOption> & WithCommonProps<{
5
5
  isAcknowledged?: boolean;
@@ -16,4 +16,4 @@ export type RateCardProps = Partial<RateOption> & WithCommonProps<{
16
16
  voided?: boolean;
17
17
  voidedAt?: string;
18
18
  }>;
19
- export declare const RateCard: ({ carrierCode, carrierFriendlyName, carrierNickname, children, className, confirmationAmount, deliveryDays, insuranceAmount, isAcknowledged, messages, onClick, onClickAcknowledgement, onSelectServicePoint, otherAmount, rateId, requiresAcknowledgement, rateAcknowledgementMessage, selected, serviceCode, packageType, serviceType, shippingAmount, taxAmount, trackable, trackingStatus, voided, voidedAt, isLoading: servicePointsLoading, isPreferredRate, selectedRateCost, servicePoints, mapViewEnabled, }: RateCardProps) => import("@emotion/react/jsx-runtime").JSX.Element;
19
+ export declare const RateCard: ({ carrierCode, carrierFriendlyName, carrierNickname, children, className, confirmationAmount, deliveryDays, insuranceAmount, isAcknowledged, messages, onClick, onClickAcknowledgement, onSelectServicePoint, otherAmount, rateId, requiresAcknowledgement, rateAcknowledgementMessage, selected, serviceCode, packageType, serviceType, shippingAmount, taxAmount, trackable, trackingStatus, voided, voidedAt, isLoading: servicePointsLoading, isPreferredRate, selectedRateCost, servicePoints, mapViewEnabled, rateDetails, }: RateCardProps) => import("@emotion/react/jsx-runtime").JSX.Element;
@@ -0,0 +1 @@
1
+ export * from "./rate-detail-cost-breakdown";
@@ -0,0 +1,5 @@
1
+ import { SE } from "@shipengine/react-api";
2
+ export interface RateDetailCostBreakdownProps {
3
+ rateDetails: SE.RateDetail[];
4
+ }
5
+ export declare const RateDetailCostBreakdown: ({ rateDetails }: RateDetailCostBreakdownProps) => import("@emotion/react/jsx-runtime").JSX.Element;
@@ -0,0 +1,17 @@
1
+ export declare const styles: {
2
+ breakdownCollapsible: (theme: import("@shipengine/giger-theme/dist/lib/Theme").Theme) => {
3
+ alignItems: "center";
4
+ color: string;
5
+ display: "flex";
6
+ fontWeight: number;
7
+ justifyContent: "flex-end";
8
+ };
9
+ getPriceStyles: (theme: any) => {
10
+ lineHeight: string;
11
+ };
12
+ rateDetail: () => {
13
+ alignItems: "center";
14
+ display: "flex";
15
+ justifyContent: "flex-end";
16
+ };
17
+ };
@@ -36,4 +36,4 @@ export type FundAndPurchaseProps = {
36
36
  *
37
37
  * @see {@link FundAndPurchaseProps | The props that are passed into the `<FundAndPurchase />` component}
38
38
  */
39
- export declare const FundAndPurchase: ({ balance: uspsBalance, carrierId, control, currency, disabled, isFundingEnabled, isFundingRequired, isPreferredRate, nickname, purchaseAmount, rateDetails, onSave, onPurchase, showVatSettings, onVatRegistrationComplete, }: FundAndPurchaseProps) => import("@emotion/react/jsx-runtime").JSX.Element;
39
+ export declare const FundAndPurchase: ({ balance: uspsBalance, carrierId, control, currency, disabled, isFundingEnabled, isFundingRequired, isPreferredRate, nickname, purchaseAmount, rateDetails, onSave, onPurchase, onVatRegistrationComplete, }: FundAndPurchaseProps) => import("@emotion/react/jsx-runtime").JSX.Element;
@@ -1,17 +1,15 @@
1
1
  export declare const styles: {
2
- headerClose: (theme: import("@shipengine/giger-theme/dist/lib/Theme").Theme) => {
3
- left: number;
4
- position: "absolute";
5
- right: string;
6
- top: string;
7
- transform: "translate(0, -50%)";
2
+ header: () => {
3
+ alignContent: "center";
4
+ alignItems: "left";
5
+ display: "flex";
8
6
  };
9
7
  headerTitle: (theme: import("@shipengine/giger-theme/dist/lib/Theme").Theme) => {
8
+ alignItems: "center";
10
9
  color: string;
10
+ display: "flex";
11
11
  fontWeight: number;
12
- lineHeight: number;
13
12
  margin: number;
14
13
  paddingLeft: number;
15
- textAlign: "left";
16
14
  };
17
15
  };
@@ -7,7 +7,7 @@ export type AddressFormProps<T = undefined> = {
7
7
  isShipToForm?: boolean;
8
8
  onCancel?: () => void;
9
9
  onCancelParse?: () => void;
10
- onSubmit: (payload: SE.Address) => void;
10
+ onSubmit: (payload: SE.Address) => Promise<void>;
11
11
  onSubmitParse?: (payload: AddressParserPayload) => Promise<SE.AddressExtraction | undefined>;
12
12
  parseAddressErrors?: SE.CodedError[];
13
13
  resetParseAddress?: () => void;
@@ -0,0 +1,24 @@
1
+ export declare const styles: {
2
+ formWrapper: (theme: import("@shipengine/giger-theme/dist/lib/Theme").Theme) => {
3
+ backgroundColor: string;
4
+ marginBottom: number;
5
+ padding: number;
6
+ };
7
+ getHeaderTypography: (isAddressParserOpen: boolean) => (theme: import("@shipengine/giger-theme/dist/lib/Theme").Theme) => {
8
+ marginBottom?: number | undefined;
9
+ width: string;
10
+ };
11
+ getHeaderWrapper: (isAddressParserOpen: boolean) => (theme: import("@shipengine/giger-theme/dist/lib/Theme").Theme) => {
12
+ display: "flex";
13
+ flexDirection: "column" | "row";
14
+ paddingBottom: number;
15
+ width: string;
16
+ };
17
+ pasteList: (theme: import("@shipengine/giger-theme/dist/lib/Theme").Theme) => {
18
+ flexShrink: number;
19
+ fontWeight: number;
20
+ };
21
+ pasteWrapper: () => {
22
+ flexShrink: number;
23
+ };
24
+ };
@@ -1,6 +1,13 @@
1
1
  export declare const styles: {
2
- container: (theme: import("@shipengine/giger-theme/dist/lib/Theme").Theme) => {
3
- display: "flex";
4
- flexDirection: "column";
2
+ grid: (theme: import("@shipengine/giger-theme/dist/lib/Theme").Theme) => {
3
+ "@container (width < 400px)": {
4
+ gridTemplateColumns: string;
5
+ };
6
+ display: "grid";
7
+ gap: number;
8
+ gridTemplateColumns: string;
9
+ };
10
+ gridContainer: () => {
11
+ containerType: string;
5
12
  };
6
13
  };
@@ -9,3 +9,4 @@ export * from "./use-shipment-form";
9
9
  export * from "./use-rates-with-cache";
10
10
  export * from "./use-request-rates";
11
11
  export * from "./use-request-preferred-rates";
12
+ export * from "./use-get-or-create-shipment";
@@ -0,0 +1,13 @@
1
+ import { SE } from "@shipengine/js-api";
2
+ import { ConfigureShipmentProps } from "../configure-shipment";
3
+ export type UseGetOrCreateShipmentProps = {
4
+ externalShipmentId?: string;
5
+ onShipmentUpdated: ConfigureShipmentProps["onShipmentUpdated"];
6
+ shipmentId?: string;
7
+ };
8
+ export declare const useGetOrCreateShipment: ({ externalShipmentId, shipmentId, onShipmentUpdated, }: UseGetOrCreateShipmentProps) => {
9
+ errors: SE.CodedError[] | undefined;
10
+ isLoading: boolean;
11
+ refetchShipment: <TPageData>(options?: (import("@tanstack/react-query").RefetchOptions & import("@tanstack/react-query").RefetchQueryFilters<TPageData>) | undefined) => Promise<import("@tanstack/react-query").QueryObserverResult<SE.SalesOrderShipment, SE.CodedError[]>>;
12
+ shipment: SE.SalesOrderShipment;
13
+ };
@@ -2,6 +2,7 @@ import { SE } from "@shipengine/react-api";
2
2
  import { PurchaseLabelCommonProps } from "./purchase-label";
3
3
  export type PurchaseLabelByShipmentProps = PurchaseLabelCommonProps & {
4
4
  currency?: SE.Currency;
5
+ externalShipmentId?: string;
5
6
  shipmentId?: string;
6
7
  };
7
- export declare const PurchaseLabelByShipment: ({ onLoad, onShipmentUpdated, shipmentId, currency, ...props }: PurchaseLabelByShipmentProps) => import("@emotion/react/jsx-runtime").JSX.Element;
8
+ export declare const PurchaseLabelByShipment: ({ onLoad, onShipmentUpdated, shipmentId, externalShipmentId, currency, ...props }: PurchaseLabelByShipmentProps) => import("@emotion/react/jsx-runtime").JSX.Element;
@@ -141,7 +141,7 @@ export type ElementProps = PurchaseLabelByShipmentProps | PurchaseLabelSalesOrde
141
141
  * You can see how the `<Component />` is used in the `createElement` function call below.
142
142
  * ```tsx
143
143
  * export const Element = createElement(Component, ErrorFallback, {
144
- * css: { height: "100%", maxWidth: "800px", minWidth: "440px", width: "100%" },
144
+ *
145
145
  * resources: { en },
146
146
  * });
147
147
  * ```
@@ -1013,7 +1013,44 @@ export declare const Element: ({ resources, ...props }: ElementProps & {
1013
1013
  };
1014
1014
  packageCategories: {
1015
1015
  customPackages: string;
1016
- };
1016
+ }; /**
1017
+ * # Registered Purchase Label Element
1018
+ *
1019
+ * @param ElementProps The props necessary to render the `<PurchaseLabel.Element />` for shipment
1020
+ * based or sales order based label purchasing.
1021
+ *
1022
+ * @example
1023
+ * The `<Component />` is the source JSX that is rendered when you make use of the `PurchaseLabel`
1024
+ * Element directly.
1025
+ * ```tsx
1026
+ * <PurchaseLabel.Element
1027
+ * key={currentSalesOrderId}
1028
+ * printLabelLayout='4x6'
1029
+ * shippingPresets={presets}
1030
+ * onShipmentUpdated={(shipment) => console.log('Shipment Updated', shipment)}
1031
+ * onRateSaved={(
1032
+ * shipment: SE.SalesOrderShipment,
1033
+ * rate?: SE.Rate,
1034
+ * rateOptions?: SE.Rate[]
1035
+ * ) => console.log('Rate Saved', shipment, rate, rateOptions)}
1036
+ * onRatesCalculated={() => console.log('Rates Calculated')}
1037
+ * onBeforeLabelCreate={onBeforeLabelPurchase}
1038
+ * onLabelCreateSuccess={onLabelPurchaseSuccess}
1039
+ * onLabelCreateFailure={(rate) => console.log('Label Purchase Failed', rate)}
1040
+ * warehouseId={defaultWarehouseId}
1041
+ * />
1042
+ * ```
1043
+ *
1044
+ * <br />
1045
+ *
1046
+ * - Once a label has been purchased using this Element, you can take the `shipmentId` for the
1047
+ * associated shipment and pass it into the `<ShipmentSummary.Element />` Element in order to view
1048
+ * the shipment details.
1049
+ *
1050
+ * @see {@link PurchaseLabel.PurchaseLabelCommonProps | The **Common props** used in `<PurchaseLabel.Element />`}
1051
+ *
1052
+ * @see {@link ShipmentSummary.Element | The next step in the label purchase workflow `<ShipmentSummary.Element />`}
1053
+ */
1017
1054
  packageCodes: {
1018
1055
  package: string;
1019
1056
  };
@@ -49,7 +49,7 @@ export type ComponentProps = {
49
49
  * You can see how the `<Component />` is used in the `createElement` function call below.
50
50
  * ```tsx
51
51
  * export const Element = createElement(Component, ErrorFallback, {
52
- * css: { height: "100%", maxWidth: "800px", minWidth: "440px", width: "100%" },
52
+ *
53
53
  * resources: { en },
54
54
  * });
55
55
  * ```
@@ -416,13 +416,7 @@ export declare const Element: ({ resources, ...props }: ComponentProps & {
416
416
  today: string;
417
417
  viewMap: string;
418
418
  otherLocations: string;
419
- noServicePointsForService: string; /**
420
- * # Shipment Summary Element Props
421
- *
422
- * - These are the base props that will be passed into the `<ShipmentSummary />` element.
423
- *
424
- * @see {@link ShipmentSummary.Element | See the full type that `typeof Element` will return}
425
- */
419
+ noServicePointsForService: string;
426
420
  error: string;
427
421
  paperless: string;
428
422
  localTimeDisclaimer: string;
@@ -46,7 +46,7 @@ export type ComponentProps = {
46
46
  * You can see how the `<Component />` is used in the `createElement` function call below.
47
47
  * ```tsx
48
48
  * export const Element = createElement(Component, ErrorFallback, {
49
- * css: { height: "100%", maxWidth: "800px", minWidth: "440px", width: "100%" },
49
+ *
50
50
  * resources: { en },
51
51
  * });
52
52
  * ```
@@ -394,7 +394,37 @@ export declare const Element: ({ resources, ...props }: ComponentProps & {
394
394
  noWarehouse: string;
395
395
  noCarrier: string;
396
396
  noWarehouseOrCarrier: string;
397
- };
397
+ }; /**
398
+ * # Registered Void Label Element
399
+ *
400
+ * - This is the registered `<VoidLabel />` element that will be used to render the
401
+ * `<VoidLabel.Element />` component.
402
+ *
403
+ * @param ElementProps The props, callbacks, and resources necessary to render
404
+ * the `<VoidLabel.Element />` component.
405
+ *
406
+ * @example
407
+ * The `<Component />` is the source JSX that is rendered when you make use of the `VoidLabel`
408
+ * Element directly. Here is a brief example of how you would use it within your application.
409
+ * ```tsx
410
+ * <VoidLabel.Element
411
+ * labelId="se-1234567"
412
+ * onComplete={() => console.log('onComplete')}
413
+ * onSuccess={(_, { salesOrderIds: [salesOrderId] }) =>
414
+ * console.log('sales order ID', salesOrderId)
415
+ * }
416
+ * onViewShipment={({ shipmentId }) => {
417
+ * console.log('onViewShipment', shipmentId);
418
+ * }}
419
+ * />
420
+ * ```
421
+ *
422
+ * <br />
423
+ *
424
+ * @see {@link VoidLabel.ComponentProps | The **props** that can be passed into the `<VoidLabel.Element />` component}
425
+ *
426
+ * @see {@link PurchaseLabel.Element | Go back to the frst step in the label purchase workflow `<PurchaseLabel.Element />`}
427
+ */
398
428
  servicePoints: {
399
429
  searchLabel: string;
400
430
  noRatesForType: string;
@@ -1,8 +1,3 @@
1
- export type VatSettingsFeatures = {
2
- vatSettings: {
3
- showVatSettings?: boolean;
4
- };
5
- };
6
1
  export type VatSettingsProps = {
7
2
  showRegisterLaterText?: boolean;
8
3
  };
@@ -5,9 +5,6 @@ export declare const styles: {
5
5
  justifyContent: "space-between";
6
6
  paddingBottom: number;
7
7
  };
8
- buttonIcon: (theme: import("@shipengine/giger-theme/dist/lib/Theme").Theme) => {
9
- marginLeft: number;
10
- };
11
8
  infoIcon: (theme: import("@shipengine/giger-theme/dist/lib/Theme").Theme) => {
12
9
  color: string;
13
10
  };
@@ -1,6 +1,7 @@
1
1
  export * from "./options";
2
2
  export * from "./use-address-validation";
3
3
  export * from "./use-black-box-detection";
4
+ export * from "./use-helpers";
4
5
  export * from "./use-nested-form";
5
6
  export * from "./use-page-layout";
6
7
  export * from "./use-root-portal";
@@ -19,6 +19,7 @@ export type RateOption = Omit<SE.Rate, "warningMessages"> & {
19
19
  messages: string[];
20
20
  pudoType?: PudoType;
21
21
  rateAcknowledgementMessage?: PreferredRateAcknowledgementMessage;
22
+ rateDetails?: SE.RateDetail[];
22
23
  requiresAcknowledgement?: boolean;
23
24
  requiresFundedAmount?: boolean;
24
25
  servicePoints?: SE.ServicePoint[];
@@ -0,0 +1,4 @@
1
+ export declare const useHelpers: () => {
2
+ helpersReady: boolean;
3
+ sellerOnboarded: boolean;
4
+ };
@@ -0,0 +1,2 @@
1
+ import { Carrier, Warehouse } from "@shipengine/js-api";
2
+ export declare const isOnboarded: (warehouses?: Warehouse[], carriers?: Carrier[]) => boolean;
@@ -1,15 +1,18 @@
1
1
  export * from "./assertions";
2
+ export * from "./checks";
2
3
  export * from "./create-dictionary";
3
4
  export * from "./date";
4
5
  export * from "./error";
5
6
  export * from "./feature-flags";
6
7
  export * from "./form-logger";
8
+ export * from "./formatString";
7
9
  export * from "./money";
8
10
  export * from "./predicates";
11
+ export * from "./pudo";
12
+ export * from "./rate-details";
9
13
  export * from "./rates";
10
14
  export * from "./shipengine";
11
- export * from "./formatString";
12
15
  export * from "./styles";
13
16
  export * from "./tracking-status-formatter";
14
17
  export * from "./validation";
15
- export * from "./pudo";
18
+ export * from "./vat";
@@ -0,0 +1,15 @@
1
+ import { SE } from "@shipengine/js-api";
2
+ export type RateDetailItem = {
3
+ amount: number;
4
+ currency: SE.Currency;
5
+ rateDetailAttributes: SE.RateDetailAttributes | null;
6
+ rateDetailType: SE.RateDetailType;
7
+ };
8
+ export declare const aggregateRateDetailItems: (rateDetails: SE.RateDetail[]) => RateDetailItem[];
9
+ export declare const calculateRateDetailBreakdown: (aggregatedRates: RateDetailItem[]) => {
10
+ hasTax: boolean;
11
+ items: RateDetailItem[];
12
+ subtotal: number;
13
+ tax: RateDetailItem[];
14
+ total: number;
15
+ };
@@ -0,0 +1,6 @@
1
+ export declare const NO_VAT_COUNTRIES: string[];
2
+ /**
3
+ * Product logic.
4
+ * “Tax settings” hidden outside Europe.
5
+ */
6
+ export declare const getIsVatRequired: (countryCode?: string | undefined) => boolean;
@@ -123,7 +123,9 @@ export declare const Element: ({ resources, ...props }: ComponentProps & {
123
123
  verifiedVat: string;
124
124
  vatFormErrors: {
125
125
  invalidFieldValue: string;
126
- verificationFailure: string;
126
+ verificationFailure: string; /**
127
+ * `features` is a set of feature flags you would like to enable or disable in this component.
128
+ */
127
129
  forbidden: string;
128
130
  connectionNotSupported: string;
129
131
  genericTitle: string;
@@ -263,9 +265,7 @@ export declare const Element: ({ resources, ...props }: ComponentProps & {
263
265
  addPackageDetails: string;
264
266
  };
265
267
  errorMessages: {
266
- customsItemsRequired: string; /**
267
- * `features` is a set of feature flags you would like to enable or disable in this component.
268
- */
268
+ customsItemsRequired: string;
269
269
  invalidAddress: string;
270
270
  noRates: string;
271
271
  salesOrderNotLoaded: string;
@@ -931,6 +931,9 @@ export declare const Element: ({ resources, ...props }: ComponentProps & {
931
931
  externalCarriers: string;
932
932
  labelLayout: string;
933
933
  unitSettings: string;
934
+ /**
935
+ * `features` is a set of feature flags you would like to enable or disable in this component.
936
+ */
934
937
  vatSettings: string;
935
938
  };
936
939
  };