@shipengine/alchemy 2.1.8 → 2.2.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.
@@ -0,0 +1,18 @@
1
+ type ElementContainerContextValue = {
2
+ elementContainer: HTMLDivElement | null;
3
+ };
4
+ export type ElementContainerProviderProps = {
5
+ children: React.ReactNode;
6
+ className?: string;
7
+ };
8
+ /**
9
+ * Provides the HTML element marking the boundary of the Element
10
+ *
11
+ * Useful for re-targetting portal-based UI that would otherwise render at React's #root, placing it outside of
12
+ * the Element and lacking any styles.
13
+ *
14
+ * @example <IconTooltip container={elementContainer} {...otherProps} />
15
+ */
16
+ export declare const ElementContainerProvider: ({ children, className, }: ElementContainerProviderProps) => import("@emotion/react/jsx-runtime").JSX.Element;
17
+ export declare const useElementContainer: () => ElementContainerContextValue;
18
+ export {};
@@ -0,0 +1 @@
1
+ export * from "./element-container-provider";
@@ -1,3 +1,4 @@
1
1
  export * from "./alchemy-provider";
2
2
  export * from "./element";
3
+ export * from "./element-container-provider";
3
4
  export * from "./error-boundary";
package/index.js CHANGED
@@ -2523,6 +2523,12 @@ var Currency = /* @__PURE__ */ ((Currency2) => {
2523
2523
  return Currency2;
2524
2524
  })(Currency || {});
2525
2525
 
2526
+ var RateCardStatus = /* @__PURE__ */ ((RateCardStatus2) => {
2527
+ RateCardStatus2["DRAFT"] = "Draft";
2528
+ RateCardStatus2["PUBLISHED"] = "Published";
2529
+ return RateCardStatus2;
2530
+ })(RateCardStatus || {});
2531
+
2526
2532
  var ConfirmationType = /* @__PURE__ */ ((ConfirmationType2) => {
2527
2533
  ConfirmationType2["DELIVERY"] = "delivery";
2528
2534
  ConfirmationType2["SIGNATURE"] = "signature";
@@ -2562,7 +2568,8 @@ const types = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.defineProperty({
2562
2568
  Currency,
2563
2569
  CustomsContentsType,
2564
2570
  CustomsNonDeliveryType,
2565
- InsuranceProviderType
2571
+ InsuranceProviderType,
2572
+ RateCardStatus
2566
2573
  }, Symbol.toStringTag, { value: 'Module' }));
2567
2574
 
2568
2575
  class AccountSettingsAPI {
@@ -9771,6 +9778,24 @@ var classnames = {
9771
9778
 
9772
9779
  const cx = classnamesExports;
9773
9780
 
9781
+ const ElementContainerContext = React.createContext(void 0);
9782
+ const ElementContainerProvider = ({
9783
+ children,
9784
+ className
9785
+ }) => {
9786
+ const { scope } = useAlchemy();
9787
+ const elementContainerRef = React.useRef(null);
9788
+ return /* @__PURE__ */ jsx(ElementContainerContext.Provider, { value: { elementContainer: elementContainerRef.current }, children: /* @__PURE__ */ jsx("div", { className: cx(scope, className), "data-testid": scope, ref: elementContainerRef, children }) });
9789
+ };
9790
+ const useElementContainer = () => {
9791
+ const context = React.useContext(ElementContainerContext);
9792
+ if (!context)
9793
+ throw new Error(
9794
+ "useElementContainer must be called from within the scope of <ElementContainerProvider />"
9795
+ );
9796
+ return context;
9797
+ };
9798
+
9774
9799
  class ErrorBoundary extends React__namespace.Component {
9775
9800
  constructor(props) {
9776
9801
  super(props);
@@ -10242,7 +10267,7 @@ const Element = ({
10242
10267
  }) => {
10243
10268
  const { scope, onError } = useAlchemy();
10244
10269
  const i18n = useI18n({ resources });
10245
- return /* @__PURE__ */ jsx("div", { className: cx(scope, className), "data-testid": scope, children: /* @__PURE__ */ jsx(react.CacheProvider, { value: memoizedCreateCache(scope), children: /* @__PURE__ */ jsx(reactI18next.I18nextProvider, { i18n, children: /* @__PURE__ */ jsx(ErrorBoundary, { fallback: FallbackComponent, onError, children }) }) }) });
10270
+ return /* @__PURE__ */ jsx(ElementContainerProvider, { className, children: /* @__PURE__ */ jsx(react.CacheProvider, { value: memoizedCreateCache(scope), children: /* @__PURE__ */ jsx(reactI18next.I18nextProvider, { i18n, children: /* @__PURE__ */ jsx(ErrorBoundary, { fallback: FallbackComponent, onError, children }) }) }) });
10246
10271
  };
10247
10272
 
10248
10273
  var __defProp = Object.defineProperty;
@@ -10320,12 +10345,14 @@ exports.CustomPackagesAPI = CustomPackagesAPI;
10320
10345
  exports.CustomsContentsType = CustomsContentsType;
10321
10346
  exports.CustomsNonDeliveryType = CustomsNonDeliveryType;
10322
10347
  exports.Element = Element;
10348
+ exports.ElementContainerProvider = ElementContainerProvider;
10323
10349
  exports.ErrorBoundary = ErrorBoundary;
10324
10350
  exports.FundingSourcesAPI = FundingSourcesAPI;
10325
10351
  exports.InsuranceAPI = InsuranceAPI;
10326
10352
  exports.InsuranceProviderType = InsuranceProviderType;
10327
10353
  exports.LabelsAPI = LabelsAPI;
10328
10354
  exports.OrderSourcesAPI = OrderSourcesAPI;
10355
+ exports.RateCardStatus = RateCardStatus;
10329
10356
  exports.RateCardsAPI = RateCardsAPI;
10330
10357
  exports.RatesAPI = RatesAPI;
10331
10358
  exports.SE = types;
@@ -10359,6 +10386,7 @@ exports.useCreateShipment = useCreateShipment;
10359
10386
  exports.useCreateWarehouse = useCreateWarehouse;
10360
10387
  exports.useDeleteWarehouse = useDeleteWarehouse;
10361
10388
  exports.useDownloadRateCard = useDownloadRateCard;
10389
+ exports.useElementContainer = useElementContainer;
10362
10390
  exports.useFundingSourcesAddFunds = useFundingSourcesAddFunds;
10363
10391
  exports.useGetAccountSettings = useGetAccountSettings;
10364
10392
  exports.useGetAutoFundingConfiguration = useGetAutoFundingConfiguration;
package/index.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import { createContext, forwardRef, useContext, createElement as createElement$1, Fragment, useState, useEffect, useCallback, useMemo } from 'react';
2
+ import { createContext, forwardRef, useContext, createElement as createElement$1, Fragment, useState, useEffect, useCallback, useMemo, useRef } from 'react';
3
3
  import { jsx as jsx$1, jsxs as jsxs$1 } from 'react/jsx-runtime';
4
4
  import { css, Global, ThemeProvider, CacheProvider } from '@emotion/react';
5
5
  import { BrandName } from '@packlink/brands';
@@ -2501,6 +2501,12 @@ var Currency = /* @__PURE__ */ ((Currency2) => {
2501
2501
  return Currency2;
2502
2502
  })(Currency || {});
2503
2503
 
2504
+ var RateCardStatus = /* @__PURE__ */ ((RateCardStatus2) => {
2505
+ RateCardStatus2["DRAFT"] = "Draft";
2506
+ RateCardStatus2["PUBLISHED"] = "Published";
2507
+ return RateCardStatus2;
2508
+ })(RateCardStatus || {});
2509
+
2504
2510
  var ConfirmationType = /* @__PURE__ */ ((ConfirmationType2) => {
2505
2511
  ConfirmationType2["DELIVERY"] = "delivery";
2506
2512
  ConfirmationType2["SIGNATURE"] = "signature";
@@ -2540,7 +2546,8 @@ const types = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.defineProperty({
2540
2546
  Currency,
2541
2547
  CustomsContentsType,
2542
2548
  CustomsNonDeliveryType,
2543
- InsuranceProviderType
2549
+ InsuranceProviderType,
2550
+ RateCardStatus
2544
2551
  }, Symbol.toStringTag, { value: 'Module' }));
2545
2552
 
2546
2553
  class AccountSettingsAPI {
@@ -9749,6 +9756,24 @@ var classnames = {
9749
9756
 
9750
9757
  const cx = classnamesExports;
9751
9758
 
9759
+ const ElementContainerContext = createContext(void 0);
9760
+ const ElementContainerProvider = ({
9761
+ children,
9762
+ className
9763
+ }) => {
9764
+ const { scope } = useAlchemy();
9765
+ const elementContainerRef = useRef(null);
9766
+ return /* @__PURE__ */ jsx(ElementContainerContext.Provider, { value: { elementContainer: elementContainerRef.current }, children: /* @__PURE__ */ jsx("div", { className: cx(scope, className), "data-testid": scope, ref: elementContainerRef, children }) });
9767
+ };
9768
+ const useElementContainer = () => {
9769
+ const context = useContext(ElementContainerContext);
9770
+ if (!context)
9771
+ throw new Error(
9772
+ "useElementContainer must be called from within the scope of <ElementContainerProvider />"
9773
+ );
9774
+ return context;
9775
+ };
9776
+
9752
9777
  class ErrorBoundary extends React.Component {
9753
9778
  constructor(props) {
9754
9779
  super(props);
@@ -10220,7 +10245,7 @@ const Element = ({
10220
10245
  }) => {
10221
10246
  const { scope, onError } = useAlchemy();
10222
10247
  const i18n = useI18n({ resources });
10223
- return /* @__PURE__ */ jsx("div", { className: cx(scope, className), "data-testid": scope, children: /* @__PURE__ */ jsx(CacheProvider, { value: memoizedCreateCache(scope), children: /* @__PURE__ */ jsx(I18nextProvider, { i18n, children: /* @__PURE__ */ jsx(ErrorBoundary, { fallback: FallbackComponent, onError, children }) }) }) });
10248
+ return /* @__PURE__ */ jsx(ElementContainerProvider, { className, children: /* @__PURE__ */ jsx(CacheProvider, { value: memoizedCreateCache(scope), children: /* @__PURE__ */ jsx(I18nextProvider, { i18n, children: /* @__PURE__ */ jsx(ErrorBoundary, { fallback: FallbackComponent, onError, children }) }) }) });
10224
10249
  };
10225
10250
 
10226
10251
  var __defProp = Object.defineProperty;
@@ -10284,4 +10309,4 @@ const alchemy = {
10284
10309
  createElement
10285
10310
  };
10286
10311
 
10287
- export { AccountSettingsAPI, AddressesAPI, AlchemyContext, AlchemyProvider, AlchemyTestProvider, CarriersAPI, CodedError, ConfirmationType, CreditCardVendor, Currency, CustomPackagesAPI, CustomsContentsType, CustomsNonDeliveryType, Element, ErrorBoundary, FundingSourcesAPI, InsuranceAPI, InsuranceProviderType, LabelsAPI, OrderSourcesAPI, RateCardsAPI, RatesAPI, types as SE, SalesOrderShipmentsAPI, SalesOrdersAPI, ShipEngine, ShipEngineAPI, ShipEngineContext, ShipmentsAPI, WarehousesAPI, alchemy, alchemy as default, delay, getEndUserIpAddress, isCodedError, isCodedErrors, logger, memoizedCreateCache, onError, renderAlchemyProviders, retryUntil, useAddFunds, useAlchemy, useCalculateRates, useConnectCarrier, useCreateFundingSource, useCreateLabel, useCreateRateCard, useCreateSalesOrderShipment, useCreateShipment, useCreateWarehouse, useDeleteWarehouse, useDownloadRateCard, useFundingSourcesAddFunds, useGetAccountSettings, useGetAutoFundingConfiguration, useGetCarrierById, useGetCountriesByCarrier, useGetCurrenciesByCarrier, useGetFundingSourceById, useGetInsuranceAccount, useGetLabel, useGetPackageRatingGroupByCarrier, useGetRateCardById, useGetSalesOrder, useGetSalesOrderShipment, useGetServicesByCarrier, useGetShipment, useGetShipmentRates, useGetWalletHistory, useI18n, useListCarriers, useListCustomPackageTypes, useListFundingSources, useListLabels, useListOrderSources, useListRateCards, useListSalesOrderShipments, useListSalesOrders, useListShipments, useListWarehouses, useLoadFonts, useLoadIcons, useLoadTheme, useNotifySalesOrderShipped, useParseAddress, usePublishRateCard, useRefreshOrderSource, useRefreshOrderSourceAsync, useRegisterCarrier, useShipEngine, useUpdateAccountSettings, useUpdateAutoFunding, useUpdateFundingSource, useUpdateRateCard, useUpdateSalesOrderShipment, useUpdateWarehouse, useUploadRateCard, useValidateAddresses, useVoidLabel };
10312
+ export { AccountSettingsAPI, AddressesAPI, AlchemyContext, AlchemyProvider, AlchemyTestProvider, CarriersAPI, CodedError, ConfirmationType, CreditCardVendor, Currency, CustomPackagesAPI, CustomsContentsType, CustomsNonDeliveryType, Element, ElementContainerProvider, ErrorBoundary, FundingSourcesAPI, InsuranceAPI, InsuranceProviderType, LabelsAPI, OrderSourcesAPI, RateCardStatus, RateCardsAPI, RatesAPI, types as SE, SalesOrderShipmentsAPI, SalesOrdersAPI, ShipEngine, ShipEngineAPI, ShipEngineContext, ShipmentsAPI, WarehousesAPI, alchemy, alchemy as default, delay, getEndUserIpAddress, isCodedError, isCodedErrors, logger, memoizedCreateCache, onError, renderAlchemyProviders, retryUntil, useAddFunds, useAlchemy, useCalculateRates, useConnectCarrier, useCreateFundingSource, useCreateLabel, useCreateRateCard, useCreateSalesOrderShipment, useCreateShipment, useCreateWarehouse, useDeleteWarehouse, useDownloadRateCard, useElementContainer, useFundingSourcesAddFunds, useGetAccountSettings, useGetAutoFundingConfiguration, useGetCarrierById, useGetCountriesByCarrier, useGetCurrenciesByCarrier, useGetFundingSourceById, useGetInsuranceAccount, useGetLabel, useGetPackageRatingGroupByCarrier, useGetRateCardById, useGetSalesOrder, useGetSalesOrderShipment, useGetServicesByCarrier, useGetShipment, useGetShipmentRates, useGetWalletHistory, useI18n, useListCarriers, useListCustomPackageTypes, useListFundingSources, useListLabels, useListOrderSources, useListRateCards, useListSalesOrderShipments, useListSalesOrders, useListShipments, useListWarehouses, useLoadFonts, useLoadIcons, useLoadTheme, useNotifySalesOrderShipped, useParseAddress, usePublishRateCard, useRefreshOrderSource, useRefreshOrderSourceAsync, useRegisterCarrier, useShipEngine, useUpdateAccountSettings, useUpdateAutoFunding, useUpdateFundingSource, useUpdateRateCard, useUpdateSalesOrderShipment, useUpdateWarehouse, useUploadRateCard, useValidateAddresses, useVoidLabel };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@shipengine/alchemy",
3
- "version": "2.1.8",
3
+ "version": "2.2.0",
4
4
  "main": "./index.js",
5
5
  "types": "./index.d.ts",
6
6
  "exports": {