@shipengine/elements 2.20.0 → 2.22.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 (770) hide show
  1. package/cjs/assets/cc-logos/amex.cjs +6 -0
  2. package/cjs/assets/cc-logos/discover.cjs +6 -0
  3. package/cjs/assets/cc-logos/mastercard.cjs +6 -0
  4. package/cjs/assets/cc-logos/visa.cjs +6 -0
  5. package/cjs/assets/funding.cjs +6 -0
  6. package/cjs/assets/onboarding-globe.cjs +6 -0
  7. package/cjs/assets/parcelguard/icon.cjs +6 -0
  8. package/cjs/assets/parcelguard/logo.cjs +6 -0
  9. package/cjs/assets/reload.cjs +6 -0
  10. package/cjs/assets/shipengine-logo.cjs +51 -0
  11. package/cjs/components/actions-menu/actions-menu.cjs +84 -0
  12. package/cjs/components/actions-menu/index.cjs +13 -0
  13. package/cjs/components/address-display/address-display.cjs +96 -0
  14. package/cjs/components/address-display/index.cjs +9 -0
  15. package/cjs/components/address-parser/address-parser-schema.cjs +11 -0
  16. package/cjs/components/address-parser/address-parser.cjs +88 -0
  17. package/cjs/components/address-parser/index.cjs +11 -0
  18. package/cjs/components/address-preference-context/address-preference-context.cjs +105 -0
  19. package/cjs/components/address-preference-context/index.cjs +11 -0
  20. package/cjs/components/address-preference-display/address-preference-display.cjs +113 -0
  21. package/cjs/components/address-preference-display/index.cjs +9 -0
  22. package/cjs/components/address-preference-select/address-preference-select.cjs +209 -0
  23. package/cjs/components/address-preference-select/index.cjs +9 -0
  24. package/cjs/components/button-group/button-group.cjs +65 -0
  25. package/cjs/components/button-group/index.cjs +9 -0
  26. package/cjs/components/carrier-balance/carrier-balance.cjs +45 -0
  27. package/cjs/components/carrier-balance/carrier-balance.styles.cjs +13 -0
  28. package/cjs/components/carrier-balance/index.cjs +9 -0
  29. package/cjs/components/carrier-connection-card/carrier-connection-card.cjs +44 -0
  30. package/cjs/components/carrier-connection-card/carrier-connection-card.styles.cjs +43 -0
  31. package/cjs/components/carrier-connection-card/index.cjs +9 -0
  32. package/cjs/components/carrier-icon/carrier-icon.cjs +33 -0
  33. package/cjs/components/carrier-icon/index.cjs +10 -0
  34. package/cjs/components/carrier-logo/carrier-logo.cjs +29 -0
  35. package/cjs/components/carrier-logo/index.cjs +9 -0
  36. package/cjs/components/cc-provider-logo/cc-provider-logo.cjs +37 -0
  37. package/cjs/components/cc-provider-logo/index.cjs +9 -0
  38. package/cjs/components/collapsible-panel/collapsible-panel.cjs +77 -0
  39. package/cjs/components/collapsible-panel/collapsible-panel.styles.cjs +28 -0
  40. package/cjs/components/collapsible-panel/index.cjs +9 -0
  41. package/cjs/components/copy/copy-button.cjs +42 -0
  42. package/cjs/components/copy/index.cjs +9 -0
  43. package/cjs/components/cube/cube.cjs +68 -0
  44. package/cjs/components/cube/index.cjs +9 -0
  45. package/cjs/components/disclosure/disclosure.cjs +52 -0
  46. package/cjs/components/disclosure/disclosure.styles.cjs +30 -0
  47. package/cjs/components/disclosure/index.cjs +9 -0
  48. package/cjs/components/display-term/display-term.cjs +45 -0
  49. package/cjs/components/display-term/display-term.styles.cjs +33 -0
  50. package/cjs/components/display-term/index.cjs +9 -0
  51. package/cjs/components/drawer/drawer.cjs +67 -0
  52. package/cjs/components/drawer/drawer.styles.cjs +35 -0
  53. package/cjs/components/drawer/index.cjs +9 -0
  54. package/cjs/components/enable-insurance-banner/enable-insurance-banner.cjs +104 -0
  55. package/cjs/components/enable-insurance-banner/enable-insurance-banner.styles.cjs +45 -0
  56. package/cjs/components/enable-insurance-banner/index.cjs +9 -0
  57. package/cjs/components/error-display/error-display.cjs +35 -0
  58. package/cjs/components/error-display/error-display.styles.cjs +27 -0
  59. package/cjs/components/error-display/index.cjs +9 -0
  60. package/cjs/components/error-fallback/error-fallback.cjs +52 -0
  61. package/cjs/components/error-fallback/index.cjs +9 -0
  62. package/cjs/components/error-state/error-state.cjs +44 -0
  63. package/cjs/components/error-state/error-state.styles.cjs +26 -0
  64. package/cjs/components/error-state/index.cjs +9 -0
  65. package/cjs/components/field/checkbox-input/checkbox-input.cjs +35 -0
  66. package/cjs/components/field/checkbox-input/index.cjs +9 -0
  67. package/cjs/components/field/create-field-controller.cjs +137 -0
  68. package/cjs/components/field/credit-card-input/credit-card-input.cjs +47 -0
  69. package/cjs/components/field/credit-card-input/index.cjs +9 -0
  70. package/cjs/components/field/date-picker/date-picker.cjs +50 -0
  71. package/cjs/components/field/date-picker/index.cjs +9 -0
  72. package/cjs/components/field/expiration-input/expiration-input.cjs +46 -0
  73. package/cjs/components/field/expiration-input/index.cjs +9 -0
  74. package/cjs/components/field/field.styles.cjs +22 -0
  75. package/cjs/components/field/fields.cjs +38 -0
  76. package/cjs/components/field/index.cjs +9 -0
  77. package/cjs/components/field/input-group/index.cjs +9 -0
  78. package/cjs/components/field/input-group/input-group.cjs +146 -0
  79. package/cjs/components/field/input-group/input-group.styles.cjs +41 -0
  80. package/cjs/components/field/money-input/index.cjs +10 -0
  81. package/cjs/components/field/money-input/money-input-styles.cjs +13 -0
  82. package/cjs/components/field/money-input/money-input.cjs +134 -0
  83. package/cjs/components/field/number-input/index.cjs +9 -0
  84. package/cjs/components/field/number-input/number-input.cjs +56 -0
  85. package/cjs/components/field/rate-select/index.cjs +9 -0
  86. package/cjs/components/field/rate-select/rate-card/cost-breakdown/cost-breakdown.cjs +95 -0
  87. package/cjs/components/field/rate-select/rate-card/cost-breakdown/cost-breakdown.styles.cjs +26 -0
  88. package/cjs/components/field/rate-select/rate-card/cost-breakdown/index.cjs +9 -0
  89. package/cjs/components/field/rate-select/rate-card/index.cjs +9 -0
  90. package/cjs/components/field/rate-select/rate-card/rate-card.cjs +229 -0
  91. package/cjs/components/field/rate-select/rate-card/rate-card.styles.cjs +38 -0
  92. package/cjs/components/field/rate-select/rate-card/rate-detail-cost-breakdown/index.cjs +9 -0
  93. package/cjs/components/field/rate-select/rate-card/rate-detail-cost-breakdown/rate-detail-cost-breakdown.cjs +73 -0
  94. package/cjs/components/field/rate-select/rate-card/rate-detail-cost-breakdown/rate-detail-cost-breakdown.styles.cjs +26 -0
  95. package/cjs/components/field/rate-select/rate-select.cjs +82 -0
  96. package/cjs/components/field/rate-select/rate-select.styles.cjs +15 -0
  97. package/cjs/components/field/select/index.cjs +11 -0
  98. package/cjs/components/field/select/select-with-categories.cjs +98 -0
  99. package/cjs/components/field/select/select.cjs +65 -0
  100. package/cjs/components/field/select-auto-complete/index.cjs +9 -0
  101. package/cjs/components/field/select-auto-complete/select-auto-complete.cjs +52 -0
  102. package/cjs/components/field/submit-button/index.cjs +9 -0
  103. package/cjs/components/field/submit-button/submit-button.cjs +43 -0
  104. package/cjs/components/field/switch/index.cjs +9 -0
  105. package/cjs/components/field/switch/switch.cjs +51 -0
  106. package/cjs/components/field/text-area/index.cjs +9 -0
  107. package/cjs/components/field/text-area/text-area.cjs +29 -0
  108. package/cjs/components/field/text-input/index.cjs +9 -0
  109. package/cjs/components/field/text-input/text-input.cjs +35 -0
  110. package/cjs/components/field-label/field-label.cjs +73 -0
  111. package/cjs/components/field-label/field-label.styles.cjs +35 -0
  112. package/cjs/components/field-label/index.cjs +9 -0
  113. package/cjs/components/form-portal/form-portal.cjs +60 -0
  114. package/cjs/components/form-portal/index.cjs +9 -0
  115. package/cjs/components/forms/add-funds-form/add-funds-form.cjs +202 -0
  116. package/cjs/components/forms/add-funds-form/add-funds-form.styles.cjs +33 -0
  117. package/cjs/components/forms/add-funds-form/add-funds-schema.cjs +25 -0
  118. package/cjs/components/forms/add-funds-form/index.cjs +9 -0
  119. package/cjs/components/forms/address-form/address-fields.cjs +154 -0
  120. package/cjs/components/forms/address-form/address-fields.styles.cjs +35 -0
  121. package/cjs/components/forms/address-form/address-form-schema.cjs +46 -0
  122. package/cjs/components/forms/address-form/address-form.cjs +119 -0
  123. package/cjs/components/forms/address-form/address-form.styles.cjs +32 -0
  124. package/cjs/components/forms/address-form/address-schema.cjs +29 -0
  125. package/cjs/components/forms/address-form/index.cjs +18 -0
  126. package/cjs/components/forms/auto-funding-form/auto-funding-form.cjs +241 -0
  127. package/cjs/components/forms/auto-funding-form/auto-funding-form.styles.cjs +23 -0
  128. package/cjs/components/forms/auto-funding-form/auto-funding-schema.cjs +26 -0
  129. package/cjs/components/forms/auto-funding-form/index.cjs +9 -0
  130. package/cjs/components/forms/edit-billing-form/edit-billing-form.cjs +106 -0
  131. package/cjs/components/forms/edit-billing-form/edit-billing-form.styles.cjs +24 -0
  132. package/cjs/components/forms/edit-billing-form/index.cjs +9 -0
  133. package/cjs/components/forms/edit-wallet-address-form/edit-wallet-address-form.cjs +82 -0
  134. package/cjs/components/forms/edit-wallet-address-form/index.cjs +9 -0
  135. package/cjs/components/forms/register-funding-source-insurance-form/index.cjs +9 -0
  136. package/cjs/components/forms/register-funding-source-insurance-form/register-funding-source-insurance-form-schema.cjs +11 -0
  137. package/cjs/components/forms/register-funding-source-insurance-form/register-funding-source-insurance-form.cjs +137 -0
  138. package/cjs/components/forms/register-funding-source-insurance-form/register-funding-source-insurance-from.styles.cjs +22 -0
  139. package/cjs/components/forms/ship-from-address-form/index.cjs +11 -0
  140. package/cjs/components/forms/ship-from-address-form/ship-from-address-form-schema.cjs +18 -0
  141. package/cjs/components/forms/ship-from-address-form/ship-from-address-form.cjs +191 -0
  142. package/cjs/components/forms/ship-from-address-form/ship-from-address-form.styles.cjs +29 -0
  143. package/cjs/components/forms/vat-form/index.cjs +9 -0
  144. package/cjs/components/forms/vat-form/vat-form-schema.cjs +16 -0
  145. package/cjs/components/forms/vat-form/vat-form.cjs +171 -0
  146. package/cjs/components/forms/vat-form/vat-form.styles.cjs +20 -0
  147. package/cjs/components/forms/vat-form/vat-types.cjs +34 -0
  148. package/cjs/components/forms/wallet-form/billing-fields.cjs +76 -0
  149. package/cjs/components/forms/wallet-form/index.cjs +16 -0
  150. package/cjs/components/forms/wallet-form/wallet-form.cjs +200 -0
  151. package/cjs/components/forms/wallet-form/wallet-form.styles.cjs +16 -0
  152. package/cjs/components/forms/wallet-form/wallet-schema.cjs +101 -0
  153. package/cjs/components/forms/warehouse-form/index.cjs +12 -0
  154. package/cjs/components/forms/warehouse-form/warehouse-form-schema.cjs +57 -0
  155. package/cjs/components/forms/warehouse-form/warehouse-form.cjs +187 -0
  156. package/cjs/components/grid-controller/cell-formatted-date.cjs +25 -0
  157. package/cjs/components/grid-controller/grid-controller.cjs +129 -0
  158. package/cjs/components/grid-controller/grid-controller.styles.cjs +38 -0
  159. package/cjs/components/grid-controller/grid-footer.cjs +65 -0
  160. package/cjs/components/grid-controller/grid-footer.styles.cjs +24 -0
  161. package/cjs/components/grid-controller/index.cjs +15 -0
  162. package/cjs/components/grid-controller/sortable-header/index.cjs +9 -0
  163. package/cjs/components/grid-controller/sortable-header/sortable-header.cjs +41 -0
  164. package/cjs/components/grid-controller/sortable-header/sortable-header.styles.cjs +18 -0
  165. package/cjs/components/grid-filters/components/created-date-filter/created-date-filter.cjs +233 -0
  166. package/cjs/components/grid-filters/components/created-date-filter/created-date-filter.styles.cjs +49 -0
  167. package/cjs/components/grid-filters/components/created-date-filter/index.cjs +9 -0
  168. package/cjs/components/grid-filters/components/created-date-filter/types/form.cjs +12 -0
  169. package/cjs/components/grid-filters/components/created-date-filter/utils/dates.cjs +32 -0
  170. package/cjs/components/grid-filters/components/created-date-filter/utils/index.cjs +9 -0
  171. package/cjs/components/grid-filters/components/index.cjs +15 -0
  172. package/cjs/components/grid-filters/components/label-id-filter/index.cjs +9 -0
  173. package/cjs/components/grid-filters/components/label-id-filter/label-id-filter-shema.cjs +15 -0
  174. package/cjs/components/grid-filters/components/label-id-filter/label-id-filter.cjs +147 -0
  175. package/cjs/components/grid-filters/components/label-id-filter/label-id-filter.styles.cjs +15 -0
  176. package/cjs/components/grid-filters/components/shipment-id-filter/index.cjs +9 -0
  177. package/cjs/components/grid-filters/components/shipment-id-filter/shipment-id-filter-shema.cjs +15 -0
  178. package/cjs/components/grid-filters/components/shipment-id-filter/shipment-id-filter.cjs +147 -0
  179. package/cjs/components/grid-filters/components/shipment-id-filter/shipment-id-filter.styles.cjs +18 -0
  180. package/cjs/components/grid-filters/components/tracking-status-filter/index.cjs +9 -0
  181. package/cjs/components/grid-filters/components/tracking-status-filter/tracking-status-filter-schema.cjs +15 -0
  182. package/cjs/components/grid-filters/components/tracking-status-filter/tracking-status-filter.cjs +224 -0
  183. package/cjs/components/grid-filters/components/tracking-status-filter/tracking-status-filter.styles.cjs +21 -0
  184. package/cjs/components/grid-filters/grid-filters.cjs +72 -0
  185. package/cjs/components/grid-filters/index.cjs +9 -0
  186. package/cjs/components/history/history-card/history-card.cjs +170 -0
  187. package/cjs/components/history/history-card/history-card.styles.cjs +47 -0
  188. package/cjs/components/history/history-card/index.cjs +9 -0
  189. package/cjs/components/history/history-card/label/index.cjs +9 -0
  190. package/cjs/components/history/history-card/label/label.cjs +28 -0
  191. package/cjs/components/history/history-card/label/label.styles.cjs +20 -0
  192. package/cjs/components/history/history-card-extension/history-card-extension.cjs +155 -0
  193. package/cjs/components/history/history-card-extension/history-card-extension.styles.cjs +34 -0
  194. package/cjs/components/history/history-card-extension/index.cjs +9 -0
  195. package/cjs/components/history/index.cjs +11 -0
  196. package/cjs/components/inline-label/index.cjs +9 -0
  197. package/cjs/components/inline-label/inline-label.cjs +27 -0
  198. package/cjs/components/inline-label/inline-label.styles.cjs +16 -0
  199. package/cjs/components/insurance-popover/index.cjs +9 -0
  200. package/cjs/components/insurance-popover/insurance-popover.cjs +85 -0
  201. package/cjs/components/insurance-popover/insurance-popover.styles.cjs +22 -0
  202. package/cjs/components/items-breakdown/index.cjs +9 -0
  203. package/cjs/components/items-breakdown/items-breakdown.cjs +91 -0
  204. package/cjs/components/items-breakdown/items-breakdown.styles.cjs +43 -0
  205. package/cjs/components/link-action/index.cjs +9 -0
  206. package/cjs/components/link-action/link-action.cjs +96 -0
  207. package/cjs/components/loader/index.cjs +9 -0
  208. package/cjs/components/loader/loader.cjs +24 -0
  209. package/cjs/components/loader/loader.styles.cjs +19 -0
  210. package/cjs/components/modal/index.cjs +13 -0
  211. package/cjs/components/modal/modal-container.cjs +69 -0
  212. package/cjs/components/modal/modal.cjs +63 -0
  213. package/cjs/components/modal/modal.styles.cjs +29 -0
  214. package/cjs/components/pager/index.cjs +11 -0
  215. package/cjs/components/pager/pager.cjs +101 -0
  216. package/cjs/components/pager/pager.styles.cjs +53 -0
  217. package/cjs/components/pager/usePager.cjs +32 -0
  218. package/cjs/components/portal/index.cjs +9 -0
  219. package/cjs/components/portal/portal.cjs +29 -0
  220. package/cjs/components/powered-by-shipengine/index.cjs +9 -0
  221. package/cjs/components/powered-by-shipengine/powered-by-shipengine.cjs +32 -0
  222. package/cjs/components/powered-by-shipengine/powered-by-shipengine.styles.cjs +19 -0
  223. package/cjs/components/rate-details/index.cjs +9 -0
  224. package/cjs/components/rate-details/rate-details.cjs +144 -0
  225. package/cjs/components/rate-details/rate-details.styles.cjs +31 -0
  226. package/cjs/components/save-status/index.cjs +11 -0
  227. package/cjs/components/save-status/save-status-styles.cjs +71 -0
  228. package/cjs/components/save-status/save-status.cjs +92 -0
  229. package/cjs/components/search-bar/index.cjs +9 -0
  230. package/cjs/components/search-bar/search-bar.cjs +47 -0
  231. package/cjs/components/section/index.cjs +9 -0
  232. package/cjs/components/section/section.cjs +50 -0
  233. package/cjs/components/section/section.styles.cjs +42 -0
  234. package/cjs/components/segmented-control/index.cjs +9 -0
  235. package/cjs/components/segmented-control/segemented-control.cjs +34 -0
  236. package/cjs/components/segmented-control/segmented-control.styles.cjs +29 -0
  237. package/cjs/components/service-card/index.cjs +11 -0
  238. package/cjs/components/service-card/service-card.cjs +121 -0
  239. package/cjs/components/service-card/service-card.styles.cjs +74 -0
  240. package/cjs/components/service-point-display/index.cjs +10 -0
  241. package/cjs/components/service-point-display/operating-hours.cjs +258 -0
  242. package/cjs/components/service-point-display/operating-hours.styles.cjs +51 -0
  243. package/cjs/components/service-point-display/service-point-display.cjs +133 -0
  244. package/cjs/components/service-point-display/service-point-display.styles.cjs +53 -0
  245. package/cjs/components/service-points/index.cjs +9 -0
  246. package/cjs/components/service-points/service-points.cjs +125 -0
  247. package/cjs/components/service-points/service-points.styles.cjs +58 -0
  248. package/cjs/components/settings-card/index.cjs +9 -0
  249. package/cjs/components/settings-card/settings-card.cjs +75 -0
  250. package/cjs/components/settings-card/settings-card.styles.cjs +49 -0
  251. package/cjs/components/skeleton/index.cjs +9 -0
  252. package/cjs/components/skeleton/skeleton-carrier-row.cjs +39 -0
  253. package/cjs/components/skeleton/skeleton-carrier-row.styles.cjs +25 -0
  254. package/cjs/components/spacer/index.cjs +9 -0
  255. package/cjs/components/spacer/spacer.cjs +54 -0
  256. package/cjs/components/spread/index.cjs +9 -0
  257. package/cjs/components/spread/spread.cjs +25 -0
  258. package/cjs/components/story-notes/index.cjs +9 -0
  259. package/cjs/components/story-notes/story-notes.cjs +54 -0
  260. package/cjs/components/suspend/index.cjs +9 -0
  261. package/cjs/components/suspend/suspend-text.cjs +23 -0
  262. package/cjs/components/suspend-purchase/index.cjs +9 -0
  263. package/cjs/components/suspend-purchase/suspend-purchase.cjs +53 -0
  264. package/cjs/components/wallet-card/index.cjs +9 -0
  265. package/cjs/components/wallet-card/wallet-card.cjs +44 -0
  266. package/cjs/components/wallet-card/wallet-card.styles.cjs +16 -0
  267. package/cjs/components/zero-state/index.cjs +9 -0
  268. package/cjs/components/zero-state/zero-state.cjs +23 -0
  269. package/cjs/components/zero-state/zero-state.styles.cjs +22 -0
  270. package/cjs/constants/index.cjs +19 -0
  271. package/cjs/constants/shipengine/address.cjs +277 -0
  272. package/cjs/constants/shipengine/index.cjs +19 -0
  273. package/cjs/create-element/create-element.cjs +44 -0
  274. package/cjs/create-element/element/element.cjs +55 -0
  275. package/cjs/create-element/element/hooks/index.cjs +9 -0
  276. package/cjs/create-element/element/hooks/use-i18n.cjs +38 -0
  277. package/cjs/create-element/element/index.cjs +11 -0
  278. package/cjs/create-element/error-boundary/error-boundary.cjs +63 -0
  279. package/cjs/create-element/error-boundary/index.cjs +9 -0
  280. package/cjs/create-element/index.cjs +9 -0
  281. package/cjs/data/carrier-metadatas.cjs +88 -0
  282. package/cjs/data/insurance-provider-metadatas.cjs +20 -0
  283. package/cjs/data/rate-messages.cjs +99 -0
  284. package/cjs/elements/index.cjs +40 -0
  285. package/cjs/elements/labels-grid/hooks/use-labels-grid.cjs +246 -0
  286. package/cjs/elements/labels-grid/hooks/use-tracking-status-filter.cjs +109 -0
  287. package/cjs/elements/labels-grid/index.cjs +9 -0
  288. package/cjs/elements/labels-grid/labels-grid.cjs +461 -0
  289. package/cjs/elements/labels-grid/labels-grid.styles.cjs +16 -0
  290. package/cjs/elements/manage-carriers/index.cjs +9 -0
  291. package/cjs/elements/manage-carriers/manage-carriers.cjs +66 -0
  292. package/cjs/elements/manage-external-carriers/index.cjs +9 -0
  293. package/cjs/elements/manage-external-carriers/manage-external-carriers.cjs +50 -0
  294. package/cjs/elements/manage-funding/index.cjs +9 -0
  295. package/cjs/elements/manage-funding/manage-funding-element.cjs +66 -0
  296. package/cjs/elements/manage-warehouses/index.cjs +9 -0
  297. package/cjs/elements/manage-warehouses/manage-warehouses.cjs +42 -0
  298. package/cjs/elements/payment-method-settings/index.cjs +9 -0
  299. package/cjs/elements/payment-method-settings/payment-method-settings-element.cjs +25 -0
  300. package/cjs/elements/purchase-label/components/customs-forms/customs-forms.cjs +151 -0
  301. package/cjs/elements/purchase-label/components/customs-forms/index.cjs +9 -0
  302. package/cjs/elements/purchase-label/components/customs-forms/product-form/index.cjs +11 -0
  303. package/cjs/elements/purchase-label/components/customs-forms/product-form/product-form-schema.cjs +43 -0
  304. package/cjs/elements/purchase-label/components/customs-forms/product-form/product-form.cjs +233 -0
  305. package/cjs/elements/purchase-label/components/customs-forms/product-form/product-form.styles.cjs +17 -0
  306. package/cjs/elements/purchase-label/components/customs-forms/products-display/index.cjs +9 -0
  307. package/cjs/elements/purchase-label/components/customs-forms/products-display/products-display.cjs +283 -0
  308. package/cjs/elements/purchase-label/components/customs-forms/products-display/products-display.styles.cjs +110 -0
  309. package/cjs/elements/purchase-label/components/customs-forms/tax-ids/form/index.cjs +12 -0
  310. package/cjs/elements/purchase-label/components/customs-forms/tax-ids/form/schema.cjs +18 -0
  311. package/cjs/elements/purchase-label/components/customs-forms/tax-ids/form/values.cjs +27 -0
  312. package/cjs/elements/purchase-label/components/customs-forms/tax-ids/index.cjs +9 -0
  313. package/cjs/elements/purchase-label/components/customs-forms/tax-ids/tax-id-form.cjs +139 -0
  314. package/cjs/elements/purchase-label/components/customs-forms/tax-ids/tax-id-list.cjs +63 -0
  315. package/cjs/elements/purchase-label/components/customs-forms/tax-ids/tax-ids.cjs +172 -0
  316. package/cjs/elements/purchase-label/components/customs-forms/tax-ids/tax-ids.styles.cjs +81 -0
  317. package/cjs/elements/purchase-label/components/customs-forms/windsor-framework/windsor-framework.cjs +57 -0
  318. package/cjs/elements/purchase-label/components/customs-forms/windsor-framework/windsor-framework.styles.cjs +28 -0
  319. package/cjs/elements/purchase-label/components/fund-and-purchase/fund-and-purchase.cjs +295 -0
  320. package/cjs/elements/purchase-label/components/fund-and-purchase/fund-and-purchase.styles.cjs +30 -0
  321. package/cjs/elements/purchase-label/components/fund-and-purchase/index.cjs +9 -0
  322. package/cjs/elements/purchase-label/components/index.cjs +11 -0
  323. package/cjs/elements/purchase-label/components/preset-descriptor/index.cjs +9 -0
  324. package/cjs/elements/purchase-label/components/preset-descriptor/preset-descriptor.cjs +45 -0
  325. package/cjs/elements/purchase-label/components/preset-descriptor/preset-descriptor.styles.cjs +37 -0
  326. package/cjs/elements/purchase-label/components/pudo/here-map/here-map.cjs +77 -0
  327. package/cjs/elements/purchase-label/components/pudo/here-map/here-map.styles.cjs +31 -0
  328. package/cjs/elements/purchase-label/components/pudo/here-map/init.cjs +41 -0
  329. package/cjs/elements/purchase-label/components/pudo/here-map/use-here-map-ui.cjs +82 -0
  330. package/cjs/elements/purchase-label/components/pudo/here-map/use-here-map.cjs +40 -0
  331. package/cjs/elements/purchase-label/components/pudo/index.cjs +9 -0
  332. package/cjs/elements/purchase-label/components/pudo/pudo-rate-tabs/pudo-list-view/pudo-list-view.cjs +73 -0
  333. package/cjs/elements/purchase-label/components/pudo/pudo-rate-tabs/pudo-list-view/pudo-list-view.styles.cjs +15 -0
  334. package/cjs/elements/purchase-label/components/pudo/pudo-rate-tabs/pudo-map-view/pudo-map-view.cjs +105 -0
  335. package/cjs/elements/purchase-label/components/pudo/pudo-rate-tabs/pudo-rate-tabs.cjs +157 -0
  336. package/cjs/elements/purchase-label/components/rate-form/rate-form.cjs +236 -0
  337. package/cjs/elements/purchase-label/components/rate-form/rate-form.styles.cjs +28 -0
  338. package/cjs/elements/purchase-label/components/rate-form/rate-schema.cjs +14 -0
  339. package/cjs/elements/purchase-label/components/rate-form/rate-view.cjs +247 -0
  340. package/cjs/elements/purchase-label/components/shipment-form/shipment-form.cjs +1067 -0
  341. package/cjs/elements/purchase-label/components/shipment-form/shipment-form.styles.cjs +48 -0
  342. package/cjs/elements/purchase-label/components/shipment-form/shipment-schema.cjs +160 -0
  343. package/cjs/elements/purchase-label/configure-shipment.cjs +183 -0
  344. package/cjs/elements/purchase-label/hooks/index.cjs +50 -0
  345. package/cjs/elements/purchase-label/hooks/use-address.cjs +198 -0
  346. package/cjs/elements/purchase-label/hooks/use-confirmation-options.cjs +29 -0
  347. package/cjs/elements/purchase-label/hooks/use-customs-contents-options.cjs +27 -0
  348. package/cjs/elements/purchase-label/hooks/use-customs-non-delivery-options.cjs +27 -0
  349. package/cjs/elements/purchase-label/hooks/use-customs.cjs +59 -0
  350. package/cjs/elements/purchase-label/hooks/use-filter-visible-rate-options/use-filter-visible-rate-options.cjs +34 -0
  351. package/cjs/elements/purchase-label/hooks/use-insurance-provider-options.cjs +43 -0
  352. package/cjs/elements/purchase-label/hooks/use-movement-indicator-options.cjs +26 -0
  353. package/cjs/elements/purchase-label/hooks/use-package-options/use-package-options.cjs +87 -0
  354. package/cjs/elements/purchase-label/hooks/use-presets.cjs +58 -0
  355. package/cjs/elements/purchase-label/hooks/use-rate-options.cjs +117 -0
  356. package/cjs/elements/purchase-label/hooks/use-rates-form.cjs +295 -0
  357. package/cjs/elements/purchase-label/hooks/use-rates-with-cache.cjs +103 -0
  358. package/cjs/elements/purchase-label/hooks/use-request-preferred-rates.cjs +21 -0
  359. package/cjs/elements/purchase-label/hooks/use-request-rates.cjs +125 -0
  360. package/cjs/elements/purchase-label/hooks/use-service-code-options/index.cjs +9 -0
  361. package/cjs/elements/purchase-label/hooks/use-service-code-options/use-service-code-options.cjs +52 -0
  362. package/cjs/elements/purchase-label/hooks/use-service-points.cjs +55 -0
  363. package/cjs/elements/purchase-label/hooks/use-ship-from-address-options.cjs +51 -0
  364. package/cjs/elements/purchase-label/hooks/use-shipment-form.cjs +174 -0
  365. package/cjs/elements/purchase-label/hooks/use-shipping-presets-options.cjs +39 -0
  366. package/cjs/elements/purchase-label/hooks/use-windsor-framework.cjs +93 -0
  367. package/cjs/elements/purchase-label/index.cjs +9 -0
  368. package/cjs/elements/purchase-label/purchase-label.cjs +157 -0
  369. package/cjs/elements/select-label-layout/index.cjs +9 -0
  370. package/cjs/elements/select-label-layout/select-label-layout-element.cjs +24 -0
  371. package/cjs/elements/shipment-summary/components/index.cjs +10 -0
  372. package/cjs/elements/shipment-summary/components/label-display/index.cjs +9 -0
  373. package/cjs/elements/shipment-summary/components/label-display/label-card.cjs +176 -0
  374. package/cjs/elements/shipment-summary/components/label-display/label-card.styles.cjs +40 -0
  375. package/cjs/elements/shipment-summary/components/label-display/label-display.cjs +109 -0
  376. package/cjs/elements/shipment-summary/components/shipment/index.cjs +10 -0
  377. package/cjs/elements/shipment-summary/components/shipment/shipment.cjs +312 -0
  378. package/cjs/elements/shipment-summary/index.cjs +9 -0
  379. package/cjs/elements/shipment-summary/shipment-summary.cjs +121 -0
  380. package/cjs/elements/shipments-grid/hooks/use-shipments-grid.cjs +144 -0
  381. package/cjs/elements/shipments-grid/index.cjs +9 -0
  382. package/cjs/elements/shipments-grid/shipments-grid.cjs +302 -0
  383. package/cjs/elements/shipments-grid/shipments-grid.styles.cjs +16 -0
  384. package/cjs/elements/shipments-grid/utils/created-date-value.cjs +48 -0
  385. package/cjs/elements/shipments-grid/utils/index.cjs +10 -0
  386. package/cjs/elements/theme-creator/components/color-palette-editor/color-palette-editor.cjs +115 -0
  387. package/cjs/elements/theme-creator/components/color-palette-editor/color-palette-editor.styles.cjs +56 -0
  388. package/cjs/elements/theme-creator/components/color-palette-editor/index.cjs +9 -0
  389. package/cjs/elements/theme-creator/components/configure-theme/configure-theme.cjs +329 -0
  390. package/cjs/elements/theme-creator/components/configure-theme/configure-theme.styles.cjs +116 -0
  391. package/cjs/elements/theme-creator/components/configure-theme/index.cjs +9 -0
  392. package/cjs/elements/theme-creator/components/index.cjs +9 -0
  393. package/cjs/elements/theme-creator/components/typography-editor/index.cjs +9 -0
  394. package/cjs/elements/theme-creator/components/typography-editor/typography-editor.cjs +106 -0
  395. package/cjs/elements/theme-creator/components/typography-editor/typography-editor.styles.cjs +43 -0
  396. package/cjs/elements/theme-creator/index.cjs +12 -0
  397. package/cjs/elements/theme-creator/theme-creator-provider.cjs +30 -0
  398. package/cjs/elements/theme-creator/theme-creator.cjs +23 -0
  399. package/cjs/elements/transaction-history/index.cjs +9 -0
  400. package/cjs/elements/transaction-history/transaction-history-element.cjs +21 -0
  401. package/cjs/elements/unit-settings/index.cjs +9 -0
  402. package/cjs/elements/unit-settings/unit-settings-element.cjs +24 -0
  403. package/cjs/elements/vat-settings/index.cjs +9 -0
  404. package/cjs/elements/vat-settings/vat-settings-element.cjs +21 -0
  405. package/cjs/elements/void-label/components/actions/actions.cjs +79 -0
  406. package/cjs/elements/void-label/components/actions/index.cjs +9 -0
  407. package/cjs/elements/void-label/components/index.cjs +11 -0
  408. package/cjs/elements/void-label/components/message/index.cjs +9 -0
  409. package/cjs/elements/void-label/components/message/message.cjs +74 -0
  410. package/cjs/elements/void-label/index.cjs +9 -0
  411. package/cjs/elements/void-label/void-label.cjs +143 -0
  412. package/cjs/elements-provider/elements-context-provider.cjs +85 -0
  413. package/cjs/elements-provider/elements-provider.cjs +127 -0
  414. package/cjs/elements-provider/elements-test-provider.cjs +55 -0
  415. package/cjs/elements-provider/hooks/index.cjs +9 -0
  416. package/cjs/elements-provider/hooks/use-load-icons.cjs +29 -0
  417. package/cjs/elements-provider/index.cjs +15 -0
  418. package/cjs/extensions/index.cjs +9 -0
  419. package/cjs/extensions/zod.cjs +24 -0
  420. package/cjs/features/manage-carriers/hooks/index.cjs +11 -0
  421. package/cjs/features/manage-carriers/hooks/use-carrier-metadata.cjs +11 -0
  422. package/cjs/features/manage-carriers/hooks/use-list-funding-source-carriers.cjs +74 -0
  423. package/cjs/features/manage-carriers/index.cjs +11 -0
  424. package/cjs/features/manage-carriers/manage-carriers-row/index.cjs +9 -0
  425. package/cjs/features/manage-carriers/manage-carriers-row/manage-carriers-row.cjs +112 -0
  426. package/cjs/features/manage-carriers/manage-carriers-row/manage-carriers-row.styles.cjs +32 -0
  427. package/cjs/features/manage-carriers/manage-carriers.cjs +198 -0
  428. package/cjs/features/manage-carriers/manage-carriers.styles.cjs +20 -0
  429. package/cjs/features/manage-carriers/manage-insurance-provider-row/index.cjs +9 -0
  430. package/cjs/features/manage-carriers/manage-insurance-provider-row/info-popover.cjs +56 -0
  431. package/cjs/features/manage-carriers/manage-insurance-provider-row/manage-insurance-provider-row.cjs +105 -0
  432. package/cjs/features/manage-carriers/manage-insurance-provider-row/manage-insurance-provider-row.styles.cjs +46 -0
  433. package/cjs/features/manage-carriers/register-funding-source-carrier-form/index.cjs +11 -0
  434. package/cjs/features/manage-carriers/register-funding-source-carrier-form/register-funding-source-carrier-form.cjs +212 -0
  435. package/cjs/features/manage-carriers/register-funding-source-carrier-form/register-funding-source-carrier-form.styles.cjs +33 -0
  436. package/cjs/features/manage-carriers/register-funding-source-carrier-form/register-funding-source-carrier-schema.cjs +17 -0
  437. package/cjs/features/manage-carriers/use-manage-carriers.cjs +36 -0
  438. package/cjs/features/manage-external-carriers/connected-carrier-list/connected-carrier-list.cjs +76 -0
  439. package/cjs/features/manage-external-carriers/connected-carrier-list/connected-carrier-list.styles.cjs +33 -0
  440. package/cjs/features/manage-external-carriers/connected-carrier-list/connected-carrier-row/connected-carrier-row.cjs +119 -0
  441. package/cjs/features/manage-external-carriers/connected-carrier-list/connected-carrier-row/connected-carrier-row.styles.cjs +68 -0
  442. package/cjs/features/manage-external-carriers/connected-carrier-list/connected-carrier-row/index.cjs +9 -0
  443. package/cjs/features/manage-external-carriers/connected-carrier-list/index.cjs +9 -0
  444. package/cjs/features/manage-external-carriers/index.cjs +11 -0
  445. package/cjs/features/manage-external-carriers/manage-external-carriers.cjs +101 -0
  446. package/cjs/features/manage-external-carriers/use-manage-external-carriers.cjs +38 -0
  447. package/cjs/features/manage-funding/index.cjs +9 -0
  448. package/cjs/features/manage-funding/manage-funding.cjs +90 -0
  449. package/cjs/features/manage-warehouses/index.cjs +11 -0
  450. package/cjs/features/manage-warehouses/manage-warehouse.styles.cjs +22 -0
  451. package/cjs/features/manage-warehouses/manage-warehouses.cjs +190 -0
  452. package/cjs/features/manage-warehouses/use-manage-warehouses.cjs +46 -0
  453. package/cjs/features/manage-warehouses/warehouse-display/index.cjs +9 -0
  454. package/cjs/features/manage-warehouses/warehouse-display/warehouse-display.cjs +64 -0
  455. package/cjs/features/payment-method-settings/index.cjs +9 -0
  456. package/cjs/features/payment-method-settings/payment-method-settings.cjs +80 -0
  457. package/cjs/features/select-label-layout/index.cjs +11 -0
  458. package/cjs/features/select-label-layout/select-label-layout.cjs +144 -0
  459. package/cjs/features/select-label-layout/select-label-layout.styles.cjs +117 -0
  460. package/cjs/features/select-label-layout/use-label-layout.cjs +34 -0
  461. package/cjs/features/transaction-history/components/date-range-combo/date-range-combo.cjs +73 -0
  462. package/cjs/features/transaction-history/components/date-range-combo/index.cjs +9 -0
  463. package/cjs/features/transaction-history/components/date-range-select/date-range-select.cjs +44 -0
  464. package/cjs/features/transaction-history/components/date-range-select/index.cjs +9 -0
  465. package/cjs/features/transaction-history/index.cjs +9 -0
  466. package/cjs/features/transaction-history/transaction-history.cjs +331 -0
  467. package/cjs/features/transaction-history/transaction-history.styles.cjs +94 -0
  468. package/cjs/features/transaction-history/use-date-range-options.cjs +56 -0
  469. package/cjs/features/unit-settings/index.cjs +11 -0
  470. package/cjs/features/unit-settings/unit-settings.cjs +116 -0
  471. package/cjs/features/unit-settings/use-unit-settings.cjs +39 -0
  472. package/cjs/features/vat-settings/index.cjs +9 -0
  473. package/cjs/features/vat-settings/vat-settings.cjs +99 -0
  474. package/cjs/features/vat-settings/vat-settings.styles.cjs +41 -0
  475. package/cjs/hooks/index.cjs +17 -0
  476. package/cjs/hooks/options/format-carrier-label.cjs +30 -0
  477. package/cjs/hooks/options/index.cjs +13 -0
  478. package/cjs/hooks/options/use-country-code-options.cjs +37 -0
  479. package/cjs/hooks/options/use-shipment-metadata.cjs +52 -0
  480. package/cjs/hooks/options/use-state-code-options.cjs +22 -0
  481. package/cjs/hooks/use-address-validation.cjs +108 -0
  482. package/cjs/hooks/use-balance-services.cjs +145 -0
  483. package/cjs/hooks/use-black-box-detection.cjs +69 -0
  484. package/cjs/hooks/use-configure-shipment.cjs +237 -0
  485. package/cjs/hooks/use-get-funding-source-insurance-provider.cjs +51 -0
  486. package/cjs/hooks/use-get-service-name.cjs +24 -0
  487. package/cjs/hooks/use-helpers.cjs +26 -0
  488. package/cjs/hooks/use-helpers.stories.cjs +80 -0
  489. package/cjs/hooks/use-import-sales-order.cjs +73 -0
  490. package/cjs/hooks/use-manage-funding-source-insurance.cjs +98 -0
  491. package/cjs/hooks/use-nested-form.cjs +68 -0
  492. package/cjs/hooks/use-page-layout.cjs +85 -0
  493. package/cjs/hooks/use-replace-support-email.cjs +41 -0
  494. package/cjs/hooks/use-root-portal.cjs +67 -0
  495. package/cjs/hooks/use-run-once-on-true.cjs +27 -0
  496. package/cjs/hooks/use-scrub-errors.cjs +36 -0
  497. package/cjs/hooks/use-sortable-query.cjs +36 -0
  498. package/cjs/hooks/use-toggle.cjs +24 -0
  499. package/cjs/hooks/use-vat-settings.cjs +29 -0
  500. package/cjs/index.cjs +104 -0
  501. package/cjs/locales/en/account-settings.cjs +33 -0
  502. package/cjs/locales/en/common.cjs +389 -0
  503. package/cjs/locales/en/connect-carrier.cjs +47 -0
  504. package/cjs/locales/en/index.cjs +25 -0
  505. package/cjs/locales/en/list-labels.cjs +56 -0
  506. package/cjs/locales/en/list-shipments.cjs +41 -0
  507. package/cjs/locales/en/manage-carriers.cjs +20 -0
  508. package/cjs/locales/en/manage-defaults.cjs +42 -0
  509. package/cjs/locales/en/manage-funding.cjs +60 -0
  510. package/cjs/locales/en/manage-warehouses.cjs +21 -0
  511. package/cjs/locales/en/onboarding.cjs +89 -0
  512. package/cjs/locales/en/payment-method.cjs +9 -0
  513. package/cjs/locales/en/purchase-label.cjs +145 -0
  514. package/cjs/locales/en/rate-details.cjs +38 -0
  515. package/cjs/locales/en/register-carrier.cjs +19 -0
  516. package/cjs/locales/en/register-wallet.cjs +65 -0
  517. package/cjs/locales/en/vat-settings.cjs +26 -0
  518. package/cjs/locales/en/view-shipment.cjs +55 -0
  519. package/cjs/locales/en/void-label.cjs +30 -0
  520. package/cjs/locales/en/wallet-history.cjs +29 -0
  521. package/cjs/locales/index.cjs +9 -0
  522. package/cjs/package.cjs +7 -0
  523. package/cjs/schemas/index.cjs +12 -0
  524. package/cjs/schemas/shipengine/index.cjs +12 -0
  525. package/cjs/schemas/shipengine/money.cjs +20 -0
  526. package/cjs/schemas/shipengine/phone.cjs +26 -0
  527. package/cjs/themes/auctane.cjs +83 -0
  528. package/cjs/themes/fallback.cjs +359 -0
  529. package/cjs/themes/index.cjs +11 -0
  530. package/cjs/types/canada-ddp.cjs +9 -0
  531. package/cjs/types/pudo.cjs +14 -0
  532. package/cjs/utilities/assertions.cjs +13 -0
  533. package/cjs/utilities/checks.cjs +61 -0
  534. package/cjs/utilities/create-dictionary.cjs +17 -0
  535. package/cjs/utilities/date.cjs +223 -0
  536. package/cjs/utilities/error.cjs +55 -0
  537. package/cjs/utilities/feature-flags/feature-flags.cjs +119 -0
  538. package/cjs/utilities/feature-flags/index.cjs +14 -0
  539. package/cjs/utilities/feature-flags/types.cjs +2 -0
  540. package/cjs/utilities/feature-flags/utils.cjs +12 -0
  541. package/cjs/utilities/form-logger.cjs +59 -0
  542. package/cjs/utilities/formatString.cjs +33 -0
  543. package/cjs/utilities/index.cjs +16 -0
  544. package/cjs/utilities/money.cjs +107 -0
  545. package/cjs/utilities/predicates/index.cjs +9 -0
  546. package/cjs/utilities/predicates/isString.cjs +14 -0
  547. package/cjs/utilities/pudo.cjs +45 -0
  548. package/cjs/utilities/rate-details.cjs +48 -0
  549. package/cjs/utilities/rates.cjs +47 -0
  550. package/cjs/utilities/shipengine/address.cjs +179 -0
  551. package/cjs/utilities/shipengine/carrier.cjs +95 -0
  552. package/cjs/utilities/shipengine/dimensions.cjs +30 -0
  553. package/cjs/utilities/shipengine/index.cjs +60 -0
  554. package/cjs/utilities/shipengine/insurance.cjs +29 -0
  555. package/cjs/utilities/shipengine/package.cjs +16 -0
  556. package/cjs/utilities/shipengine/sales-order.cjs +92 -0
  557. package/cjs/utilities/shipengine/shipment.cjs +94 -0
  558. package/cjs/utilities/shipengine/warehouses.cjs +13 -0
  559. package/cjs/utilities/shipengine/weight.cjs +160 -0
  560. package/cjs/utilities/storybook-local-storage-config.cjs +30 -0
  561. package/cjs/utilities/styles.cjs +40 -0
  562. package/cjs/utilities/tracking-formatter.cjs +32 -0
  563. package/cjs/utilities/validation.cjs +79 -0
  564. package/cjs/utilities/vat.cjs +16 -0
  565. package/cjs/workflows/account-settings/account-settings.cjs +112 -0
  566. package/cjs/workflows/account-settings/account-settings.styles.cjs +15 -0
  567. package/cjs/workflows/account-settings/index.cjs +9 -0
  568. package/cjs/workflows/account-settings/use-get-panel-props.cjs +115 -0
  569. package/cjs/workflows/carrier-services/carrier-services.cjs +102 -0
  570. package/cjs/workflows/carrier-services/index.cjs +9 -0
  571. package/cjs/workflows/carrier-services/use-get-wallet-panel-props.cjs +41 -0
  572. package/cjs/workflows/connect-external-carrier/components/available-carriers-list/available-carriers-list.cjs +52 -0
  573. package/cjs/workflows/connect-external-carrier/components/available-carriers-list/available-carriers-list.styles.cjs +21 -0
  574. package/cjs/workflows/connect-external-carrier/components/connect-external-carrier-form/connect-external-carrier-form.cjs +182 -0
  575. package/cjs/workflows/connect-external-carrier/components/connect-external-carrier-form/connect-external-carrier-form.styles.cjs +71 -0
  576. package/cjs/workflows/connect-external-carrier/components/custom-external-carrier-form/custom-external-carrier-form.cjs +46 -0
  577. package/cjs/workflows/connect-external-carrier/components/custom-external-carrier-form/custom-form-fedex.cjs +259 -0
  578. package/cjs/workflows/connect-external-carrier/components/custom-external-carrier-form/custom-form-stamps_com.cjs +59 -0
  579. package/cjs/workflows/connect-external-carrier/components/custom-external-carrier-form/eula-clickwrap.cjs +139 -0
  580. package/cjs/workflows/connect-external-carrier/components/custom-external-carrier-form/eula-clickwrap.styles.cjs +28 -0
  581. package/cjs/workflows/connect-external-carrier/components/index.cjs +14 -0
  582. package/cjs/workflows/connect-external-carrier/connect-external-carrier.cjs +241 -0
  583. package/cjs/workflows/connect-external-carrier/index.cjs +9 -0
  584. package/cjs/workflows/index.cjs +17 -0
  585. package/cjs/workflows/label-workflow/index.cjs +9 -0
  586. package/cjs/workflows/label-workflow/label-workflow.cjs +211 -0
  587. package/cjs/workflows/onboarding/components/carrier-recovery-form/carrier-recovery-form-schema.cjs +39 -0
  588. package/cjs/workflows/onboarding/components/carrier-recovery-form/carrier-recovery-form.cjs +136 -0
  589. package/cjs/workflows/onboarding/components/carrier-recovery-form/carrier-recovery-form.styles.cjs +19 -0
  590. package/cjs/workflows/onboarding/components/carrier-recovery-form/index.cjs +9 -0
  591. package/cjs/workflows/onboarding/components/completion-page/completion-page.cjs +74 -0
  592. package/cjs/workflows/onboarding/components/completion-page/index.cjs +9 -0
  593. package/cjs/workflows/onboarding/components/confirmation-and-submission-step/confirmation-and-submission-step.cjs +231 -0
  594. package/cjs/workflows/onboarding/components/confirmation-and-submission-step/index.cjs +11 -0
  595. package/cjs/workflows/onboarding/components/confirmation-and-submission-step/use-confirmation-and-submission-step.cjs +315 -0
  596. package/cjs/workflows/onboarding/components/funding-step/funding-step.cjs +77 -0
  597. package/cjs/workflows/onboarding/components/funding-step/index.cjs +9 -0
  598. package/cjs/workflows/onboarding/components/onboarding-wizard/index.cjs +9 -0
  599. package/cjs/workflows/onboarding/components/onboarding-wizard/onboarding-wizard.cjs +239 -0
  600. package/cjs/workflows/onboarding/components/onboarding-wizard/onboarding-wizard.styles.cjs +21 -0
  601. package/cjs/workflows/onboarding/components/ship-from-address-step/index.cjs +9 -0
  602. package/cjs/workflows/onboarding/components/ship-from-address-step/ship-from-address-step.cjs +60 -0
  603. package/cjs/workflows/onboarding/components/step-header/index.cjs +9 -0
  604. package/cjs/workflows/onboarding/components/step-header/step-header.cjs +60 -0
  605. package/cjs/workflows/onboarding/components/step-header/step-header.styles.cjs +23 -0
  606. package/cjs/workflows/onboarding/components/terms-agreement-form/index.cjs +9 -0
  607. package/cjs/workflows/onboarding/components/terms-agreement-form/terms-agreement-form-schema.cjs +11 -0
  608. package/cjs/workflows/onboarding/components/terms-agreement-form/terms-agreement-form.cjs +152 -0
  609. package/cjs/workflows/onboarding/components/terms-agreement-form/terms-agreement-form.styles.cjs +31 -0
  610. package/cjs/workflows/onboarding/components/terms-agreement-step/index.cjs +9 -0
  611. package/cjs/workflows/onboarding/components/terms-agreement-step/terms-agreement-step.cjs +117 -0
  612. package/cjs/workflows/onboarding/components/terms-agreement-step/terms-agreement-step.styles.cjs +33 -0
  613. package/cjs/workflows/onboarding/components/terms-agreement-step/use-terms-agreement-step.cjs +112 -0
  614. package/cjs/workflows/onboarding/components/welcome-page/index.cjs +9 -0
  615. package/cjs/workflows/onboarding/components/welcome-page/welcome-page.cjs +59 -0
  616. package/cjs/workflows/onboarding/index.cjs +9 -0
  617. package/cjs/workflows/onboarding/onboarding.cjs +94 -0
  618. package/esm/assets/cc-logos/amex.js +2 -2
  619. package/esm/assets/cc-logos/discover.js +2 -2
  620. package/esm/assets/cc-logos/mastercard.js +2 -2
  621. package/esm/assets/cc-logos/visa.js +2 -2
  622. package/esm/components/address-display/address-display.js +8 -16
  623. package/esm/components/cc-provider-logo/cc-provider-logo.js +33 -0
  624. package/esm/components/cc-provider-logo/index.js +1 -0
  625. package/esm/components/collapsible-panel/collapsible-panel.js +0 -1
  626. package/esm/components/collapsible-panel/collapsible-panel.styles.js +0 -3
  627. package/esm/components/disclosure/disclosure.js +3 -3
  628. package/esm/components/disclosure/disclosure.styles.js +3 -4
  629. package/esm/components/field/rate-select/rate-select.js +1 -1
  630. package/esm/components/field/select-auto-complete/select-auto-complete.js +5 -1
  631. package/esm/components/forms/address-form/address-form.js +5 -12
  632. package/esm/components/forms/address-form/address-form.styles.js +2 -3
  633. package/esm/components/forms/auto-funding-form/auto-funding-form.styles.js +1 -1
  634. package/esm/components/forms/edit-wallet-address-form/edit-wallet-address-form.js +1 -1
  635. package/esm/components/forms/ship-from-address-form/ship-from-address-form.js +5 -12
  636. package/esm/components/grid-controller/grid-controller.js +27 -9
  637. package/esm/components/grid-controller/grid-controller.styles.js +8 -3
  638. package/esm/components/grid-controller/grid-footer.js +32 -17
  639. package/esm/components/grid-controller/grid-footer.styles.js +20 -0
  640. package/esm/components/grid-controller/index.js +1 -1
  641. package/esm/components/grid-controller/sortable-header/index.js +1 -0
  642. package/esm/components/grid-controller/{sortable-header.js → sortable-header/sortable-header.js} +3 -5
  643. package/esm/components/grid-controller/sortable-header/sortable-header.styles.js +14 -0
  644. package/esm/components/grid-filters/components/created-date-filter/created-date-filter.js +3 -0
  645. package/esm/components/grid-filters/components/label-id-filter/label-id-filter.js +2 -0
  646. package/esm/components/grid-filters/components/shipment-id-filter/shipment-id-filter.js +2 -0
  647. package/esm/components/grid-filters/components/tracking-status-filter/tracking-status-filter.js +2 -0
  648. package/esm/components/grid-filters/grid-filters.js +6 -0
  649. package/esm/components/link-action/link-action.js +28 -10
  650. package/esm/components/segmented-control/index.js +1 -0
  651. package/esm/components/segmented-control/segemented-control.js +30 -0
  652. package/esm/components/{tabs/tabs.styles.js → segmented-control/segmented-control.styles.js} +8 -8
  653. package/esm/components/wallet-card/wallet-card.js +4 -21
  654. package/esm/components/wallet-card/wallet-card.styles.js +2 -5
  655. package/esm/constants/shipengine/address.js +1 -1
  656. package/esm/elements/labels-grid/hooks/use-labels-grid.js +96 -31
  657. package/esm/elements/labels-grid/hooks/use-tracking-status-filter.js +105 -0
  658. package/esm/elements/labels-grid/labels-grid.js +74 -32
  659. package/esm/elements/purchase-label/components/customs-forms/customs-forms.js +7 -5
  660. package/esm/elements/purchase-label/components/customs-forms/products-display/products-display.js +16 -34
  661. package/esm/elements/purchase-label/components/customs-forms/tax-ids/tax-ids.js +11 -12
  662. package/esm/elements/purchase-label/components/fund-and-purchase/fund-and-purchase.js +28 -18
  663. package/esm/elements/purchase-label/components/pudo/pudo-rate-tabs/pudo-list-view/pudo-list-view.js +17 -35
  664. package/esm/elements/purchase-label/components/pudo/pudo-rate-tabs/pudo-rate-tabs.js +12 -21
  665. package/esm/elements/purchase-label/components/rate-form/rate-form.js +11 -4
  666. package/esm/elements/purchase-label/components/rate-form/rate-view.js +37 -41
  667. package/esm/elements/purchase-label/components/shipment-form/shipment-form.js +31 -74
  668. package/esm/elements/purchase-label/components/shipment-form/shipment-form.styles.js +2 -2
  669. package/esm/elements/purchase-label/hooks/index.js +1 -0
  670. package/esm/elements/purchase-label/hooks/use-filter-visible-rate-options/use-filter-visible-rate-options.js +29 -0
  671. package/esm/elements/purchase-label/hooks/use-rates-form.js +11 -2
  672. package/esm/elements/purchase-label/hooks/use-rates-with-cache.js +44 -35
  673. package/esm/elements/shipment-summary/components/shipment/shipment.js +7 -21
  674. package/esm/elements/shipments-grid/hooks/use-shipments-grid.js +6 -5
  675. package/esm/elements/shipments-grid/shipments-grid.js +57 -25
  676. package/esm/elements/theme-creator/components/configure-theme/configure-theme.js +5 -5
  677. package/esm/features/manage-carriers/manage-carriers.styles.js +2 -0
  678. package/esm/features/manage-carriers/register-funding-source-carrier-form/register-funding-source-carrier-form.styles.js +3 -3
  679. package/esm/features/manage-external-carriers/use-manage-external-carriers.js +1 -1
  680. package/esm/features/manage-warehouses/manage-warehouses.js +10 -12
  681. package/esm/features/select-label-layout/select-label-layout.styles.js +5 -5
  682. package/esm/hooks/use-balance-services.js +50 -22
  683. package/esm/hooks/use-sortable-query.js +32 -0
  684. package/esm/locales/en/common.js +4 -0
  685. package/esm/locales/en/list-labels.js +5 -4
  686. package/esm/locales/en/onboarding.js +10 -1
  687. package/esm/locales/en/purchase-label.js +3 -2
  688. package/esm/package.js +1 -1
  689. package/esm/themes/auctane.js +2 -2
  690. package/esm/utilities/feature-flags/feature-flags.js +1 -3
  691. package/esm/workflows/connect-external-carrier/components/custom-external-carrier-form/custom-external-carrier-form.js +6 -0
  692. package/esm/workflows/connect-external-carrier/components/custom-external-carrier-form/custom-form-fedex.js +6 -2
  693. package/esm/workflows/connect-external-carrier/components/custom-external-carrier-form/custom-form-stamps_com.js +55 -0
  694. package/esm/workflows/onboarding/components/confirmation-and-submission-step/confirmation-and-submission-step.js +125 -40
  695. package/esm/workflows/onboarding/components/confirmation-and-submission-step/use-confirmation-and-submission-step.js +190 -71
  696. package/esm/workflows/onboarding/components/onboarding-wizard/onboarding-wizard.js +63 -24
  697. package/esm/workflows/onboarding/components/terms-agreement-step/terms-agreement-step.js +68 -37
  698. package/esm/workflows/onboarding/components/terms-agreement-step/use-terms-agreement-step.js +82 -20
  699. package/package.json +93 -5
  700. package/types/src/components/cc-provider-logo/cc-provider-logo.d.ts +7 -0
  701. package/types/src/components/cc-provider-logo/index.d.ts +1 -0
  702. package/types/src/components/collapsible-panel/collapsible-panel.styles.d.ts +0 -3
  703. package/types/src/components/disclosure/disclosure.styles.d.ts +2 -3
  704. package/types/src/components/field/rate-select/rate-select.d.ts +1 -0
  705. package/types/src/components/forms/address-form/address-form.styles.d.ts +1 -2
  706. package/types/src/components/grid-controller/grid-controller.d.ts +2 -1
  707. package/types/src/components/grid-controller/grid-controller.styles.d.ts +6 -1
  708. package/types/src/components/grid-controller/grid-footer.d.ts +9 -1
  709. package/types/src/components/grid-controller/grid-footer.styles.d.ts +16 -0
  710. package/types/src/components/grid-controller/sortable-header/index.d.ts +1 -0
  711. package/types/src/components/grid-controller/{sortable-header.d.ts → sortable-header/sortable-header.d.ts} +2 -2
  712. package/types/src/components/grid-controller/sortable-header/sortable-header.styles.d.ts +10 -0
  713. package/types/src/components/grid-filters/components/created-date-filter/created-date-filter.d.ts +2 -1
  714. package/types/src/components/grid-filters/components/label-id-filter/label-id-filter.d.ts +2 -1
  715. package/types/src/components/grid-filters/components/shipment-id-filter/shipment-id-filter.d.ts +2 -1
  716. package/types/src/components/grid-filters/components/tracking-status-filter/tracking-status-filter.d.ts +2 -1
  717. package/types/src/components/grid-filters/grid-filters.d.ts +2 -1
  718. package/types/src/components/grid-filters/index.d.ts +2 -2
  719. package/types/src/components/link-action/link-action.d.ts +21 -2
  720. package/types/src/components/segmented-control/index.d.ts +1 -0
  721. package/types/src/components/segmented-control/segemented-control.d.ts +12 -0
  722. package/types/src/components/{tabs/tabs.styles.d.ts → segmented-control/segmented-control.styles.d.ts} +4 -4
  723. package/types/src/components/wallet-card/wallet-card.styles.d.ts +0 -3
  724. package/types/src/elements/labels-grid/hooks/use-labels-grid.d.ts +7 -5
  725. package/types/src/elements/labels-grid/hooks/use-tracking-status-filter.d.ts +25 -0
  726. package/types/src/elements/labels-grid/labels-grid.d.ts +52 -15
  727. package/types/src/elements/manage-carriers/manage-carriers.d.ts +15 -0
  728. package/types/src/elements/manage-external-carriers/manage-external-carriers.d.ts +15 -0
  729. package/types/src/elements/manage-funding/manage-funding-element.d.ts +15 -0
  730. package/types/src/elements/manage-warehouses/manage-warehouses.d.ts +15 -0
  731. package/types/src/elements/payment-method-settings/payment-method-settings-element.d.ts +15 -0
  732. package/types/src/elements/purchase-label/components/fund-and-purchase/fund-and-purchase.d.ts +2 -2
  733. package/types/src/elements/purchase-label/components/pudo/pudo-rate-tabs/pudo-list-view/pudo-list-view.d.ts +1 -1
  734. package/types/src/elements/purchase-label/components/pudo/pudo-rate-tabs/pudo-rate-tabs.d.ts +1 -1
  735. package/types/src/elements/purchase-label/components/rate-form/rate-form.d.ts +5 -4
  736. package/types/src/elements/purchase-label/components/rate-form/rate-view.d.ts +3 -2
  737. package/types/src/elements/purchase-label/components/shipment-form/shipment-form.styles.d.ts +1 -1
  738. package/types/src/elements/purchase-label/hooks/index.d.ts +1 -0
  739. package/types/src/elements/purchase-label/hooks/use-filter-visible-rate-options/use-filter-visible-rate-options.d.ts +13 -0
  740. package/types/src/elements/purchase-label/hooks/use-rates-form.d.ts +6 -3
  741. package/types/src/elements/purchase-label/purchase-label.d.ts +25 -15
  742. package/types/src/elements/select-label-layout/select-label-layout-element.d.ts +15 -0
  743. package/types/src/elements/shipment-summary/shipment-summary.d.ts +24 -4
  744. package/types/src/elements/shipments-grid/hooks/use-shipments-grid.d.ts +7 -1
  745. package/types/src/elements/shipments-grid/shipments-grid.d.ts +27 -28
  746. package/types/src/elements/theme-creator/theme-creator.d.ts +15 -0
  747. package/types/src/elements/transaction-history/transaction-history-element.d.ts +15 -0
  748. package/types/src/elements/unit-settings/unit-settings-element.d.ts +15 -0
  749. package/types/src/elements/vat-settings/vat-settings-element.d.ts +15 -0
  750. package/types/src/elements/void-label/void-label.d.ts +16 -4
  751. package/types/src/features/manage-carriers/manage-carriers.styles.d.ts +2 -0
  752. package/types/src/features/select-label-layout/select-label-layout.styles.d.ts +4 -4
  753. package/types/src/hooks/use-balance-services.d.ts +6 -1
  754. package/types/src/hooks/use-sortable-query.d.ts +13 -0
  755. package/types/src/locales/en/index.d.ts +15 -0
  756. package/types/src/utilities/feature-flags/types.d.ts +1 -1
  757. package/types/src/workflows/account-settings/account-settings.d.ts +15 -0
  758. package/types/src/workflows/carrier-services/carrier-services.d.ts +16 -46
  759. package/types/src/workflows/connect-external-carrier/components/custom-external-carrier-form/custom-form-stamps_com.d.ts +2 -0
  760. package/types/src/workflows/connect-external-carrier/connect-external-carrier.d.ts +15 -0
  761. package/types/src/workflows/label-workflow/label-workflow.d.ts +15 -0
  762. package/types/src/workflows/onboarding/components/confirmation-and-submission-step/confirmation-and-submission-step.d.ts +9 -4
  763. package/types/src/workflows/onboarding/components/confirmation-and-submission-step/use-confirmation-and-submission-step.d.ts +12 -5
  764. package/types/src/workflows/onboarding/components/terms-agreement-step/terms-agreement-step.d.ts +3 -2
  765. package/types/src/workflows/onboarding/components/terms-agreement-step/use-terms-agreement-step.d.ts +11 -4
  766. package/types/src/workflows/onboarding/onboarding.d.ts +16 -1
  767. package/esm/components/tabs/index.js +0 -1
  768. package/esm/components/tabs/tabs.js +0 -30
  769. package/types/src/components/tabs/index.d.ts +0 -1
  770. package/types/src/components/tabs/tabs.d.ts +0 -12
@@ -28,7 +28,8 @@ const RateForm = ({
28
28
  features,
29
29
  fetchServicePoints,
30
30
  fundingOrigin,
31
- isLoading,
31
+ isCalculatingRates,
32
+ isSavingRate,
32
33
  labelErrors,
33
34
  labels,
34
35
  labelsLoading,
@@ -176,8 +177,14 @@ const RateForm = ({
176
177
  windsorFrameworkEnabled: !!(defaultFeatures === null || defaultFeatures === void 0 ? void 0 : defaultFeatures.betaEnableWindsorFramework)
177
178
  }),
178
179
  form: form,
179
- isLoading: isLoading,
180
- onSelectRate: onSelectRate,
180
+ isCalculatingRates: isCalculatingRates,
181
+ isSavingRate: isSavingRate,
182
+ onSelectRate: rateId => {
183
+ const selectedRate = rateOptions.find(r => r.rateId === rateId);
184
+ if (selectedRate) {
185
+ onSelectRate === null || onSelectRate === void 0 ? void 0 : onSelectRate(selectedRate);
186
+ }
187
+ },
181
188
  preferredServiceCodes: preferredServiceCodes,
182
189
  pudoServicePointDetails: {
183
190
  fetchServicePoints,
@@ -208,7 +215,7 @@ const RateForm = ({
208
215
  isFundingEnabled: !!(features === null || features === void 0 ? void 0 : features.enableFunding),
209
216
  isInvalidatedByError: !!(labelErrors === null || labelErrors === void 0 ? void 0 : labelErrors.length),
210
217
  onPurchase: handleSubmit,
211
- onSave: handleSaveRate,
218
+ onSave: (features === null || features === void 0 ? void 0 : features.saveRate) ? handleSaveRate : undefined,
212
219
  onVatRegistrationComplete: onVatRegistrationComplete,
213
220
  rateData: {
214
221
  isPreferredRate,
@@ -3,21 +3,24 @@ import { formatMoney } from '../../../../utilities/money.js';
3
3
  import { getRequestedServices } from '../../../../utilities/shipengine/sales-order.js';
4
4
  import { useState, useMemo, useCallback } from 'react';
5
5
  import { useTranslation, Trans } from 'react-i18next';
6
- import { Typography, InlineNotification, NotificationType, Link } from '@shipengine/giger';
6
+ import { Typography, InlineNotification, NotificationType } from '@shipengine/giger';
7
7
  import { styles } from './rate-form.styles.js';
8
8
  import { useWindsorFramework } from '../../hooks/use-windsor-framework.js';
9
+ import { useFilterVisibleRateOptions } from '../../hooks/use-filter-visible-rate-options/use-filter-visible-rate-options.js';
9
10
  import { Cube } from '../../../../components/cube/cube.js';
10
11
  import { PudoRateTabs } from '../pudo/pudo-rate-tabs/pudo-rate-tabs.js';
11
12
  import { Spacer } from '../../../../components/spacer/spacer.js';
12
13
  import { SearchBar } from '../../../../components/search-bar/search-bar.js';
13
14
  import { RateSelect } from '../../../../components/field/rate-select/rate-select.js';
15
+ import { LinkAction } from '../../../../components/link-action/link-action.js';
14
16
 
15
17
  const RateView = ({
16
18
  carriers,
17
19
  errors,
18
20
  features,
19
21
  form,
20
- isLoading,
22
+ isCalculatingRates,
23
+ isSavingRate,
21
24
  onSelectRate,
22
25
  preferredServiceCodes,
23
26
  pudoServicePointDetails: _pudoServicePointDetails = {
@@ -64,17 +67,17 @@ const RateView = ({
64
67
  const requestedServices = useMemo(() => getRequestedServices(salesOrder), [salesOrder]);
65
68
  const formatRequestedService = () => requestedServices.length > 1 ? t("purchase-label:multipleShippingServices") : requestedServices[0];
66
69
  const pudoRateOptions = useMemo(() => rateOptions === null || rateOptions === void 0 ? void 0 : rateOptions.filter(rate => rate.pudoType), [rateOptions]);
67
- const getFilteredRateOptions = useCallback(rateOptions => {
68
- return rateOptions.filter((option, index) =>
69
- // show first 5 rates if there are 6 or fewer rate options
70
- index < 5 && rateOptions.length <= 6 ||
71
- // show the rates if they don't require acknowledgement and there are more than 6 rates
72
- !option.requiresAcknowledgement && index < 6 && rateOptions.length > 6 ||
73
- // show the rate if it matches the selectedRateId
74
- option.rateId === (selectedRate === null || selectedRate === void 0 ? void 0 : selectedRate.rateId) || (
75
- // show the rates if they are a preferred service
76
- preferredServiceCodes === null || preferredServiceCodes === void 0 ? void 0 : preferredServiceCodes.includes(option.serviceCode)));
77
- }, [preferredServiceCodes, selectedRate]);
70
+ const expandedRateOptionList = useMemo(() => {
71
+ if ((features === null || features === void 0 ? void 0 : features.enablePudoUI) && pudoRateOptions.length) {
72
+ return pudoRateOptions;
73
+ }
74
+ return rateOptions;
75
+ }, [features === null || features === void 0 ? void 0 : features.enablePudoUI, pudoRateOptions, rateOptions]);
76
+ const {
77
+ collapsedRateOptionList,
78
+ COLLAPSED_RATE_VIEW_LIMIT,
79
+ filterVisibleRateOptions
80
+ } = useFilterVisibleRateOptions(expandedRateOptionList, selectedRate, preferredServiceCodes);
78
81
  const handleShowMoreRates = useCallback(() => {
79
82
  var _a;
80
83
  setShowHiddenRates === null || setShowHiddenRates === void 0 ? void 0 : setShowHiddenRates(!showHiddenRates);
@@ -86,11 +89,6 @@ const RateView = ({
86
89
  });
87
90
  }
88
91
  }, [showHiddenRates, rateFormScrollToRef]);
89
- const handleOnKeyDownShowMoreRates = useCallback(e => {
90
- if (e.key === "Enter") {
91
- setShowHiddenRates === null || setShowHiddenRates === void 0 ? void 0 : setShowHiddenRates(!showHiddenRates);
92
- }
93
- }, [showHiddenRates]);
94
92
  // Return true if User has multiple accounts for a single carrier.
95
93
  const hasDuplicateCarrierCode = () => {
96
94
  if (!carriers) return false;
@@ -108,6 +106,7 @@ const RateView = ({
108
106
  return false;
109
107
  };
110
108
  const rateSelectCommonProps = {
109
+ handleShowMoreRates,
111
110
  nicknameFeature: (features === null || features === void 0 ? void 0 : features.nicknameRate) && hasDuplicateCarrierCode(),
112
111
  preferredServiceCodes,
113
112
  rateFormScrollToRef,
@@ -115,16 +114,19 @@ const RateView = ({
115
114
  showHiddenRates,
116
115
  showVatFeatures
117
116
  };
118
- if (isLoading) return jsxs("article", Object.assign({
119
- css: styles.ratesInterstitial,
120
- role: "presentation"
121
- }, {
122
- children: [jsx(Cube, {
123
- animate: isLoading
124
- }), jsx(Spacer, {}), jsx(Typography, {
125
- children: t("purchase-label:loading.calculatingRates")
126
- })]
127
- }));
117
+ const isFetchingRates = isCalculatingRates || isSavingRate;
118
+ if (isFetchingRates) {
119
+ return jsxs("article", Object.assign({
120
+ css: styles.ratesInterstitial,
121
+ role: "presentation"
122
+ }, {
123
+ children: [jsx(Cube, {
124
+ animate: isFetchingRates
125
+ }), jsx(Spacer, {}), jsx(Typography, {
126
+ children: isSavingRate ? t("purchase-label:loading.savingRate") : t("purchase-label:loading.calculatingRates")
127
+ })]
128
+ }));
129
+ }
128
130
  if (isWindsorFrameworkInvalid.isInvalid) return jsx(InlineNotification, Object.assign({
129
131
  title: t("common:errorMessages.windsorFramework.doNotConform"),
130
132
  type: NotificationType.ERROR
@@ -160,8 +162,8 @@ const RateView = ({
160
162
  multiplier: 3
161
163
  })]
162
164
  }), !!(features === null || features === void 0 ? void 0 : features.enablePudoUI) && pudoRateOptions.length ? jsx(PudoRateTabs, Object.assign({
165
+ filterVisibleRateOptions: filterVisibleRateOptions,
163
166
  form: form,
164
- getFilteredRateOptions: getFilteredRateOptions,
165
167
  mapCenter: {
166
168
  lat: addressQueryCoordinates.lat,
167
169
  lng: addressQueryCoordinates.long
@@ -198,20 +200,14 @@ const RateView = ({
198
200
  name: "rate",
199
201
  onClick: onSelectRate,
200
202
  onSelectServicePoint: onSelectServicePoint,
201
- options: showHiddenRates ? rateOptions : getFilteredRateOptions(rateOptions)
202
- }, rateSelectCommonProps)), rateOptions.length > 4 && jsx(Link, Object.assign({
203
+ options: showHiddenRates ? expandedRateOptionList : collapsedRateOptionList
204
+ }, rateSelectCommonProps)), expandedRateOptionList.length > COLLAPSED_RATE_VIEW_LIMIT && jsx(LinkAction, {
203
205
  css: styles.showMoreOrLessRatesButton,
206
+ icon: showHiddenRates ? "chevronTop" : "chevronBottom",
207
+ iconPlacement: "right",
204
208
  onClick: handleShowMoreRates,
205
- onKeyDown: handleOnKeyDownShowMoreRates,
206
- role: "button",
207
- tabIndex: 0
208
- }, {
209
- children: jsx(Typography, Object.assign({
210
- variant: "body1"
211
- }, {
212
- children: showHiddenRates ? t("purchase-label:actions.showFewerRates") : t("purchase-label:actions.showMoreRates")
213
- }))
214
- }))]
209
+ title: showHiddenRates ? t("purchase-label:actions.showFewerRates") : t("purchase-label:actions.showMoreRates")
210
+ })]
215
211
  }), errors && jsxs(Fragment, {
216
212
  children: [jsx(Spacer, {
217
213
  multiplier: 2
@@ -19,7 +19,7 @@ import mergeWith from 'lodash/mergeWith.js';
19
19
  import { useState, useMemo, useEffect, useRef, useCallback } from 'react';
20
20
  import { useForm } from 'react-hook-form';
21
21
  import { useTranslation, Trans } from 'react-i18next';
22
- import { Typography, Link, Button, ButtonVariant, Skeleton, SkeletonAnimation, SkeletonBackgroundColor, SkeletonVariant, InlineNotification, NotificationType, Icon, DropdownOptionList, OptionGroup, Option, Divider } from '@shipengine/giger';
22
+ import { Typography, Button, ButtonVariant, Skeleton, SkeletonAnimation, SkeletonBackgroundColor, SkeletonVariant, InlineNotification, NotificationType, DropdownOptionList, OptionGroup, Option, Divider, Link, Icon } from '@shipengine/giger';
23
23
  import { IconNames } from '@shipengine/giger-theme';
24
24
  import { SE } from '@shipengine/react-api';
25
25
  import { styles } from './shipment-form.styles.js';
@@ -48,9 +48,10 @@ import { DatePicker } from '../../../../components/field/date-picker/date-picker
48
48
  import { AddressPreferenceProvider } from '../../../../components/address-preference-context/address-preference-context.js';
49
49
  import { Spacer } from '../../../../components/spacer/spacer.js';
50
50
  import { SelectWithCategories } from '../../../../components/field/select/select-with-categories.js';
51
+ import { LinkAction } from '../../../../components/link-action/link-action.js';
51
52
  import { FieldLabel } from '../../../../components/field-label/field-label.js';
52
53
  import { AddressDisplay } from '../../../../components/address-display/address-display.js';
53
- import { ButtonGroup } from '../../../../components/button-group/button-group.js';
54
+ import { SegmentedControl } from '../../../../components/segmented-control/segemented-control.js';
54
55
  import { InputGroup } from '../../../../components/field/input-group/input-group.js';
55
56
  import { NumberInput } from '../../../../components/field/number-input/number-input.js';
56
57
  import { TextInput } from '../../../../components/field/text-input/text-input.js';
@@ -650,7 +651,7 @@ const ShipmentForm = ({
650
651
  });
651
652
  }),
652
653
  options: shipFromAddressOptions || []
653
- }), jsx(Link, Object.assign({
654
+ }), jsx(LinkAction, {
654
655
  css: styles.shipFromEditButton,
655
656
  onClick: event => {
656
657
  event.preventDefault();
@@ -660,20 +661,8 @@ const ShipmentForm = ({
660
661
  toggleIsEditWarehouseFormOpen();
661
662
  }
662
663
  },
663
- onKeyDown: event => {
664
- if (event.key === "Enter") {
665
- if (editShipFromAddressId === null || editShipFromAddressId === void 0 ? void 0 : editShipFromAddressId.includes("custom")) {
666
- toggleIsEditShipFromAddressFormOpen();
667
- } else {
668
- toggleIsEditWarehouseFormOpen();
669
- }
670
- }
671
- },
672
- role: "button",
673
- tabIndex: 0
674
- }, {
675
- children: t("actions.edit")
676
- }))]
664
+ title: t("actions.edit")
665
+ })]
677
666
  }) : jsx(FieldLabel, Object.assign({
678
667
  label: isEditShipFromAddressFormOpen ? "" : t("purchase-label:fields.warehouse")
679
668
  }, {
@@ -760,28 +749,18 @@ const ShipmentForm = ({
760
749
  }, {
761
750
  children: [jsx(Typography, {
762
751
  children: salesOrder.salesOrderItems.reduce((total, i) => i.quantity + total, 0).toString()
763
- }), jsxs(Link, Object.assign({
752
+ }), jsx(LinkAction, {
764
753
  css: theme => ({
765
- alignItems: "center",
766
- display: "flex",
767
754
  fontWeight: scopeTheme(theme).typography.fontWeight.normal
768
755
  }),
756
+ icon: showItems ? "chevronTop" : "chevronBottom",
757
+ iconPlacement: "right",
769
758
  onClick: event => {
770
759
  event.preventDefault();
771
760
  setShowItems(!showItems);
772
761
  },
773
- onKeyDown: event => {
774
- if (event.key === "Enter") {
775
- setShowItems(!showItems);
776
- }
777
- },
778
- role: "button",
779
- tabIndex: 0
780
- }, {
781
- children: [showItems ? t("purchase-label:actions.hideItems") : t("purchase-label:actions.showItems"), jsx(Icon, {
782
- name: showItems ? IconNames.CHEVRON_TOP : IconNames.CHEVRON_BOTTOM
783
- })]
784
- }))]
762
+ title: showItems ? t("purchase-label:actions.hideItems") : t("purchase-label:actions.showItems")
763
+ })]
785
764
  }))
786
765
  })), showItems && jsx(ItemsBreakdown, {
787
766
  items: salesOrderItems
@@ -801,29 +780,16 @@ const ShipmentForm = ({
801
780
  }), jsxs(Section, Object.assign({
802
781
  "data-testid": "packageDetail",
803
782
  rightContent: (features === null || features === void 0 ? void 0 : features.shippingPresets) && shippingPresetOptions.length > 0 ? jsxs(Fragment, {
804
- children: [jsxs(Link, Object.assign({
805
- css: theme => ({
806
- alignItems: "center",
807
- display: "flex",
808
- fontWeight: scopeTheme(theme).typography.fontWeight.normal
809
- }),
783
+ children: [jsx(LinkAction, {
784
+ icon: showApplyPreset ? "chevronTop" : "chevronBottom",
785
+ iconPlacement: "right",
810
786
  onClick: event => {
811
787
  event.preventDefault();
812
788
  setShowApplyPreset(!showApplyPreset);
813
789
  },
814
- onKeyDown: event => {
815
- if (event.key === "Enter") {
816
- setShowApplyPreset(!showApplyPreset);
817
- }
818
- },
819
790
  ref: applyPresetRef,
820
- role: "button",
821
- tabIndex: 0
822
- }, {
823
- children: [t("shippingPresets.apply"), jsx(Icon, {
824
- name: showApplyPreset ? IconNames.CHEVRON_TOP : IconNames.CHEVRON_BOTTOM
825
- })]
826
- })), jsx(DropdownOptionList, Object.assign({
791
+ title: t("shippingPresets.apply")
792
+ }), jsx(DropdownOptionList, Object.assign({
827
793
  "data-id": "dropdown",
828
794
  dropdownWidth: "400px",
829
795
  hideWhenReferenceNotVisible: true,
@@ -857,31 +823,22 @@ const ShipmentForm = ({
857
823
  title: t("purchase-label:sections.shipment")
858
824
  }, {
859
825
  children: [(features === null || features === void 0 ? void 0 : features.browseRates) && (features === null || features === void 0 ? void 0 : features.selectService) && jsxs(Fragment, {
860
- children: [jsxs(ButtonGroup, Object.assign({
861
- toolbar: true
862
- }, {
863
- children: [jsx(Button, Object.assign({
864
- bold: false,
865
- css: () => ({
866
- transition: "none"
867
- }),
868
- isFullWidth: true,
869
- onClick: () => handleChangeMode("browse_rates"),
870
- variant: selectedMode === "browse_rates" ? undefined : ButtonVariant.OUTLINED
871
- }, {
872
- children: t("purchase-label:modes.browseRates")
873
- })), jsx(Button, Object.assign({
874
- bold: false,
875
- css: () => ({
876
- transition: "none"
877
- }),
878
- isFullWidth: true,
879
- onClick: () => handleChangeMode("select_service"),
880
- variant: selectedMode === "select_service" ? undefined : ButtonVariant.OUTLINED
826
+ children: [jsx(SegmentedControl, {
827
+ fullWidth: true,
828
+ onSelect: value => {
829
+ void handleChangeMode(value);
830
+ },
831
+ segments: [{
832
+ label: t("purchase-label:modes.browseRates"),
833
+ value: "browse_rates"
881
834
  }, {
882
- children: t("purchase-label:modes.selectService")
883
- }))]
884
- })), jsx(Spacer, {})]
835
+ label: t("purchase-label:modes.selectService"),
836
+ value: "select_service"
837
+ }],
838
+ selectedSegment: selectedMode
839
+ }), jsx(Spacer, {
840
+ multiplier: 3
841
+ })]
885
842
  }), selectedMode === "select_service" && jsx(SelectWithCategories, {
886
843
  control: form.control,
887
844
  disabled: !serviceCodeOptions.length,
@@ -27,13 +27,13 @@ const styles = createStyles({
27
27
  shipFromEditButton: theme => ({
28
28
  border: 0,
29
29
  fontWeight: scopeTheme(theme).typography.fontWeight.normal,
30
+ height: scopeTheme(theme).spacing(3),
30
31
  marginTop: scopeTheme(theme).spacing(1.75)
31
32
  }),
32
33
  shipFromSelectContainer: theme => ({
33
34
  display: "flex",
34
35
  gap: scopeTheme(theme).spacing(1.375),
35
- justifyContent: "space-between",
36
- marginBottom: scopeTheme(theme).spacing(1.75)
36
+ justifyContent: "space-between"
37
37
  }),
38
38
  well: theme => ({
39
39
  backgroundColor: scopeTheme(theme).palette.gray.ultraLight,
@@ -17,4 +17,5 @@ export { useCustomsNonDeliveryOptions } from './use-customs-non-delivery-options
17
17
  export { useCustomsContentsOptions } from './use-customs-contents-options.js';
18
18
  export { useConfirmationOptions } from './use-confirmation-options.js';
19
19
  export { useShippingPresetsOptions } from './use-shipping-presets-options.js';
20
+ export { COLLAPSED_RATE_VIEW_LIMIT, useFilterVisibleRateOptions } from './use-filter-visible-rate-options/use-filter-visible-rate-options.js';
20
21
  export { useServiceCodeOptions } from './use-service-code-options/use-service-code-options.js';
@@ -0,0 +1,29 @@
1
+ import { useMemo, useCallback } from 'react';
2
+
3
+ const COLLAPSED_RATE_VIEW_LIMIT = 4;
4
+ const filterRateOptions = (rateOptions, selectedRate, preferredServiceCodes) => {
5
+ // Show the selected rate
6
+ const isSelectedRate = option => !!(selectedRate === null || selectedRate === void 0 ? void 0 : selectedRate.rateId) && option.rateId === selectedRate.rateId;
7
+ // Show the rate if it is a preferred service
8
+ const isPreferredService = option => !!option.serviceCode && !!(preferredServiceCodes === null || preferredServiceCodes === void 0 ? void 0 : preferredServiceCodes.includes(option.serviceCode));
9
+ // Show the first 5 rates in the list
10
+ const isWithinRateViewLimit = index => index < COLLAPSED_RATE_VIEW_LIMIT;
11
+ return rateOptions.filter((option, index) => isSelectedRate(option) || isPreferredService(option) || isWithinRateViewLimit(index));
12
+ };
13
+ /**
14
+ * @internal
15
+ *
16
+ * # Filter Visible Rate Options Hook
17
+ *
18
+ */
19
+ const useFilterVisibleRateOptions = (rateOptions, selectedRate, preferredServiceCodes) => {
20
+ const collapsedRateOptionList = useMemo(() => filterRateOptions(rateOptions, selectedRate, preferredServiceCodes), [rateOptions, selectedRate, preferredServiceCodes]);
21
+ const filterVisibleRateOptions = useCallback(options => filterRateOptions(options, selectedRate, preferredServiceCodes), [selectedRate, preferredServiceCodes]);
22
+ return {
23
+ COLLAPSED_RATE_VIEW_LIMIT,
24
+ collapsedRateOptionList,
25
+ filterVisibleRateOptions
26
+ };
27
+ };
28
+
29
+ export { COLLAPSED_RATE_VIEW_LIMIT, useFilterVisibleRateOptions };
@@ -26,11 +26,13 @@ const useRatesForm = ({
26
26
  onRatesCalculated,
27
27
  onShipmentUpdated,
28
28
  printLabelLayout,
29
+ selectedRate,
29
30
  shipment
30
31
  }) => {
31
32
  var _a, _b, _c;
32
33
  const [beforeCreateError, setBeforeCreateError] = useState();
33
34
  const [beforeSaveError, setBeforeSaveError] = useState();
35
+ const [isSavingRate, setIsSavingRate] = useState(false);
34
36
  const fundingSourceMetadata = useGetFundingSourceMetadata();
35
37
  const fundingSourceRegion = (_a = fundingSourceMetadata.data) === null || _a === void 0 ? void 0 : _a.defaultRegionProfile.countryCode;
36
38
  const isVatRequiredCountry = getIsVatRequired(fundingSourceRegion);
@@ -42,7 +44,9 @@ const useRatesForm = ({
42
44
  } = useListCarriers();
43
45
  const {
44
46
  fundingOrigin
45
- } = useBalanceServices();
47
+ } = useBalanceServices({
48
+ carrierId: selectedRate === null || selectedRate === void 0 ? void 0 : selectedRate.carrierId
49
+ });
46
50
  const {
47
51
  data: {
48
52
  labels = []
@@ -117,6 +121,7 @@ const useRatesForm = ({
117
121
  if (!shipment) throw new Error("shipment not found");
118
122
  // clear any errors before attempting to save
119
123
  setBeforeSaveError(undefined);
124
+ setIsSavingRate(true);
120
125
  try {
121
126
  const beforeSaveResponse = yield onBeforeRateSaved === null || onBeforeRateSaved === void 0 ? void 0 : onBeforeRateSaved(carrierId, serviceCode);
122
127
  let updatedShipment;
@@ -128,6 +133,7 @@ const useRatesForm = ({
128
133
  }));
129
134
  if (updatedShipment) {
130
135
  yield onUpdatedShipment(updatedShipment);
136
+ setIsSavingRate(false);
131
137
  }
132
138
  return;
133
139
  }
@@ -149,6 +155,7 @@ const useRatesForm = ({
149
155
  }));
150
156
  if (updatedShipment) {
151
157
  yield onUpdatedShipment(updatedShipment);
158
+ setIsSavingRate(false);
152
159
  }
153
160
  return;
154
161
  }
@@ -168,6 +175,7 @@ const useRatesForm = ({
168
175
  message: (_f = e.message) !== null && _f !== void 0 ? _f : "An unknown error occurred"
169
176
  });
170
177
  }
178
+ setIsSavingRate(false);
171
179
  return;
172
180
  }
173
181
  }), [onBeforeRateSaved, onUpdatedShipment, resetRates, shipment, updateShipment]);
@@ -259,7 +267,8 @@ const useRatesForm = ({
259
267
  errors: errors.length > 0 ? errors : undefined,
260
268
  fetchServicePoints,
261
269
  fundingOrigin,
262
- isLoading: ratesCalculating,
270
+ isCalculatingRates: ratesCalculating,
271
+ isSavingRate,
263
272
  labelErrors: displayableLabelErrors,
264
273
  labels,
265
274
  labelsLoading,
@@ -1,5 +1,5 @@
1
1
  import { useShipmentMetadata } from '../../../hooks/options/use-shipment-metadata.js';
2
- import { useState, useEffect, useCallback } from 'react';
2
+ import { useMemo, useState, useCallback, useEffect } from 'react';
3
3
  import { useGetShipmentRates } from '@shipengine/react-api';
4
4
  import { useRequestRates } from './use-request-rates.js';
5
5
 
@@ -18,19 +18,23 @@ const useRatesWithCache = ({
18
18
  getPreferredRates,
19
19
  shipment
20
20
  }) => {
21
- /* Flag to ignore cached rates once rates have ever been actually requested */
22
- const [bypassRateCache, setBypassRateCache] = useState(false);
23
- const [mustRequestRates, setMustRequestRates] = useState(false);
24
- const shouldGetCachedRates = !!(shipment === null || shipment === void 0 ? void 0 : shipment.packages[0].weight.value) || !!(shipment === null || shipment === void 0 ? void 0 : shipment.carrierId) || !!(shipment === null || shipment === void 0 ? void 0 : shipment.serviceCode);
25
- const cachedRates = useGetShipmentRates({
26
- enabled: shouldGetCachedRates && !!(shipment === null || shipment === void 0 ? void 0 : shipment.shipmentId),
21
+ const shouldFetchCachedRates = useMemo(() => {
22
+ return !!(shipment === null || shipment === void 0 ? void 0 : shipment.shipmentId) && (!!(shipment === null || shipment === void 0 ? void 0 : shipment.packages[0].weight.value) || !!(shipment === null || shipment === void 0 ? void 0 : shipment.carrierId) || !!(shipment === null || shipment === void 0 ? void 0 : shipment.serviceCode));
23
+ }, [shipment]);
24
+ const [cachedRatesEnabled, setCachedRatesEnabled] = useState(shouldFetchCachedRates);
25
+ const {
26
+ isInternational
27
+ } = useShipmentMetadata(shipment);
28
+ const {
29
+ data: cachedRatesResponse,
30
+ isFetching: cachedRatesFetching,
31
+ status: cachedRatesStatus
32
+ } = useGetShipmentRates({
33
+ enabled: cachedRatesEnabled,
27
34
  queryFnParams: {
28
35
  shipmentId: shipment === null || shipment === void 0 ? void 0 : shipment.shipmentId
29
36
  }
30
37
  });
31
- const {
32
- isInternational
33
- } = useShipmentMetadata(shipment);
34
38
  const {
35
39
  isCalculating,
36
40
  preferredRatesResponse: preferredRates,
@@ -44,39 +48,44 @@ const useRatesWithCache = ({
44
48
  getPreferredRates,
45
49
  onRatesCalculated
46
50
  });
51
+ const hasCachedRates = useMemo(() => {
52
+ return cachedRatesResponse && cachedRatesResponse.length > 0 && cachedRatesResponse[0].rates.length > 0;
53
+ }, [cachedRatesResponse]);
54
+ const cachedRates = cachedRatesResponse ? cachedRatesResponse[0] : undefined;
55
+ const enableCache = useCallback(() => {
56
+ setCachedRatesEnabled(true);
57
+ }, []);
58
+ const disableCache = useCallback(() => {
59
+ setCachedRatesEnabled(false);
60
+ }, []);
47
61
  useEffect(() => {
48
- if (
49
- // if we don't have a preferredRates fetcher don't proceed
50
- getPreferredRates !== undefined &&
51
- // if there is no cached data, we'll have to fetch manually instead
52
- cachedRates.data && cachedRates.data.length > 0 && cachedRates.data[0].rates.length > 0 &&
53
- // as these are dependencies for the effect only proceed when they have actual values as to not call the mutator multiple times
54
- shipment && isInternational !== undefined) {
62
+ var _a, _b;
63
+ // Handle preferred rates
64
+ if (getPreferredRates !== undefined && hasCachedRates && shipment && isInternational !== undefined) {
55
65
  void requestPreferredRates([shipment, isInternational]);
56
66
  }
57
- }, [requestPreferredRates, isInternational, shipment, getPreferredRates, cachedRates.data]);
58
- // if there is a serviceCode on the shipment and more than one rate in cache,
59
- // refetch rates to ensure only the one rate is returned
60
- useEffect(() => {
61
- if ((shipment === null || shipment === void 0 ? void 0 : shipment.serviceCode) && cachedRates.data && cachedRates.data.length > 0 && cachedRates.data[0].rates.length > 1) {
62
- setMustRequestRates(true);
63
- setBypassRateCache(true);
67
+ // determine if the cached rates are valid for the current shipment by comparing the service code and carrier id
68
+ if (hasCachedRates && (shipment === null || shipment === void 0 ? void 0 : shipment.serviceCode) && (shipment === null || shipment === void 0 ? void 0 : shipment.carrierId)) {
69
+ const {
70
+ serviceCode: cachedRateServiceCode,
71
+ carrierId: cachedRateCarrierId
72
+ } = (_b = (_a = cachedRates === null || cachedRates === void 0 ? void 0 : cachedRates.rates) === null || _a === void 0 ? void 0 : _a[0]) !== null && _b !== void 0 ? _b : {};
73
+ const ratesMatch = shipment.serviceCode === cachedRateServiceCode && shipment.carrierId === cachedRateCarrierId;
74
+ // enable or disable the cache based on whether the rates match
75
+ ratesMatch ? enableCache() : disableCache();
64
76
  }
65
- }, [shipment === null || shipment === void 0 ? void 0 : shipment.serviceCode, cachedRates.data]);
77
+ }, [requestPreferredRates, isInternational, shipment, getPreferredRates, hasCachedRates, cachedRates === null || cachedRates === void 0 ? void 0 : cachedRates.rates, shipment === null || shipment === void 0 ? void 0 : shipment.carrierId, shipment === null || shipment === void 0 ? void 0 : shipment.serviceCode, enableCache, disableCache]);
66
78
  const resetAllRates = useCallback(() => {
67
79
  resetRates();
68
- setBypassRateCache(true);
80
+ // Clear the cached rates by disabling cache and forcing a refetch
81
+ setCachedRatesEnabled(false);
69
82
  }, [resetRates]);
70
- const ratesCalculating = shouldGetCachedRates ? bypassRateCache || mustRequestRates ? isCalculating : isCalculating || cachedRates.status !== "success" : false;
71
- useEffect(() => {
72
- if (shipment && mustRequestRates) {
73
- void requestRates(shipment, isInternational);
74
- setMustRequestRates(false);
75
- }
76
- }, [isInternational, mustRequestRates, requestRates, shipment]);
77
- const ratesResponse = !bypassRateCache && !ratesCalculating && cachedRates.status === "success" && cachedRates.data.length > 0 ? cachedRates.data[0] : standardRequestedRateResponse;
83
+ const ratesCalculating = useMemo(() => {
84
+ return isCalculating || cachedRatesFetching;
85
+ }, [isCalculating, cachedRatesFetching]);
86
+ const ratesResponse = cachedRatesEnabled ? cachedRates : standardRequestedRateResponse;
78
87
  // If there is a carrierId on the shipment then don't show preferred rates. There is a saved rate on the shipment.
79
- const preferredRatesResponse = cachedRates.status === "success" && cachedRates.data.length > 0 && (shipment === null || shipment === void 0 ? void 0 : shipment.carrierId) ? undefined : preferredRates;
88
+ const preferredRatesResponse = cachedRatesStatus === "success" && hasCachedRates && (shipment === null || shipment === void 0 ? void 0 : shipment.carrierId) ? undefined : preferredRates;
80
89
  return {
81
90
  preferredRatesResponse,
82
91
  ratesCalculating,
@@ -11,8 +11,7 @@ import { scopeTheme } from '../../../../utilities/styles.js';
11
11
  import { getIsVatRequired } from '../../../../utilities/vat.js';
12
12
  import { useState, useMemo, useCallback, Fragment as Fragment$1 } from 'react';
13
13
  import { useTranslation, Trans } from 'react-i18next';
14
- import { Link, Icon, Typography, Button, Next } from '@shipengine/giger';
15
- import { IconNames } from '@shipengine/giger-theme';
14
+ import { Link, Typography, Button, Next } from '@shipengine/giger';
16
15
  import { useGetFundingSourceMetadata } from '@shipengine/react-api';
17
16
  import { LabelDisplay } from '../label-display/label-display.js';
18
17
  import { EnableInsuranceBanner } from '../../../../components/enable-insurance-banner/enable-insurance-banner.js';
@@ -21,6 +20,7 @@ import { Section } from '../../../../components/section/section.js';
21
20
  import { FieldLabel } from '../../../../components/field-label/field-label.js';
22
21
  import { Spacer } from '../../../../components/spacer/spacer.js';
23
22
  import { AddressDisplay } from '../../../../components/address-display/address-display.js';
23
+ import { LinkAction } from '../../../../components/link-action/link-action.js';
24
24
  import { ItemsBreakdown } from '../../../../components/items-breakdown/items-breakdown.js';
25
25
  import { ButtonGroup } from '../../../../components/button-group/button-group.js';
26
26
  import { RateDetails } from '../../../../components/rate-details/rate-details.js';
@@ -172,30 +172,16 @@ const Shipment = ({
172
172
  justifyContent: "space-between"
173
173
  }
174
174
  }, {
175
- children: [salesOrder.salesOrderItems.reduce((total, i) => i.quantity + total, 0), jsxs(Link, Object.assign({
176
- css: theme => ({
177
- alignItems: "center",
178
- display: "flex",
179
- fontWeight: scopeTheme(theme).typography.fontWeight.normal
180
- }),
175
+ children: [salesOrder.salesOrderItems.reduce((total, i) => i.quantity + total, 0), jsx(LinkAction, {
181
176
  "data-testid": "view-shipment:actions.showItems",
177
+ icon: showItems ? "chevronTop" : "chevronBottom",
178
+ iconPlacement: "right",
182
179
  onClick: event => {
183
180
  event.preventDefault();
184
181
  setShowItems(!showItems);
185
182
  },
186
- onKeyDown: event => {
187
- if (event.key === "Enter") {
188
- event.preventDefault();
189
- setShowItems(!showItems);
190
- }
191
- },
192
- role: "button",
193
- tabIndex: 0
194
- }, {
195
- children: [showItems ? t("view-shipment:actions.hideItems") : t("view-shipment:actions.showItems"), jsx(Icon, {
196
- name: showItems ? IconNames.CHEVRON_TOP : IconNames.CHEVRON_BOTTOM
197
- })]
198
- }))]
183
+ title: showItems ? t("view-shipment:actions.hideItems") : t("view-shipment:actions.showItems")
184
+ })]
199
185
  })), jsx(Spacer, {})]
200
186
  })), showItems && jsxs("div", Object.assign({
201
187
  "data-testid": "itemsBreakdown"