@commercelayer/react-components 2.51.0 → 2.52.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/cjs/components/AddToCartButton.js +1 -1
- package/lib/cjs/components/AdjustmentAmount.d.ts +4 -0
- package/lib/cjs/components/AdjustmentAmount.js +1 -0
- package/lib/cjs/components/AvailabilityContainer.js +1 -1
- package/lib/cjs/components/BraintreePayment.js +1 -1
- package/lib/cjs/components/LineItemsCount.d.ts +2 -0
- package/lib/cjs/components/LineItemsCount.js +1 -1
- package/lib/cjs/components/LineItemsEmpty.js +1 -1
- package/lib/cjs/components/PricesContainer.js +1 -1
- package/lib/cjs/config/components.d.ts +14 -0
- package/lib/cjs/config/components.js +1 -1
- package/lib/cjs/reducers/AvailabilityReducer.d.ts +7 -7
- package/lib/cjs/reducers/AvailabilityReducer.js +1 -1
- package/lib/cjs/reducers/PlaceOrderReducer.js +1 -1
- package/lib/cjs/utils/getLineItemsCount.d.ts +7 -1
- package/lib/cjs/utils/getLineItemsCount.js +1 -1
- package/lib/esm/components/AddToCartButton.js +1 -1
- package/lib/esm/components/AdjustmentAmount.d.ts +4 -0
- package/lib/esm/components/AdjustmentAmount.js +1 -0
- package/lib/esm/components/AvailabilityContainer.js +1 -1
- package/lib/esm/components/BraintreePayment.js +1 -1
- package/lib/esm/components/LineItemsCount.d.ts +2 -0
- package/lib/esm/components/LineItemsCount.js +1 -1
- package/lib/esm/components/LineItemsEmpty.js +1 -1
- package/lib/esm/components/PricesContainer.js +1 -1
- package/lib/esm/config/components.d.ts +14 -0
- package/lib/esm/config/components.js +1 -1
- package/lib/esm/reducers/AvailabilityReducer.d.ts +7 -7
- package/lib/esm/reducers/AvailabilityReducer.js +1 -1
- package/lib/esm/reducers/PlaceOrderReducer.js +1 -1
- package/lib/esm/utils/getLineItemsCount.d.ts +7 -1
- package/lib/esm/utils/getLineItemsCount.js +1 -1
- package/lib/tsconfig.prod.esm.tsbuildinfo +1 -1
- package/lib/tsconfig.prod.tsbuildinfo +1 -1
- package/package.json +2 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const tslib_1=require("tslib"),jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),Parent_1=(0,tslib_1.__importDefault)(require("./utils/Parent")),OrderContext_1=(0,tslib_1.__importDefault)(require("../context/OrderContext")),lodash_1=require("lodash"),ItemContext_1=(0,tslib_1.__importDefault)(require("../context/ItemContext")),getCurrentItemKey_1=(0,tslib_1.__importDefault)(require("../utils/getCurrentItemKey")),components_1=(0,tslib_1.__importDefault)(require("../config/components")),SkuListsContext_1=(0,tslib_1.__importDefault)(require("../context/SkuListsContext")),ExternalFunctionContext_1=(0,tslib_1.__importDefault)(require("../context/ExternalFunctionContext")),isFunction_1=(0,tslib_1.__importDefault)(require("lodash/isFunction")),propTypes=components_1.default.AddToCartButton.propTypes,defaultProps=components_1.default.AddToCartButton.defaultProps,displayName=components_1.default.AddToCartButton.displayName,AddToCartButton=props=>{var _a,_b,_c;const{label="Add to cart",children,skuCode,bundleCode,disabled,skuListId,lineItem}=props,p=(0,tslib_1.__rest)(props,["label","children","skuCode","bundleCode","disabled","skuListId","lineItem"]),{addToCart,orderId,getOrder,setOrderErrors}=(0,react_1.useContext)(OrderContext_1.default),{url,callExternalFunction}=(0,react_1.useContext)(ExternalFunctionContext_1.default),{item,items,quantity,option,prices,lineItems,lineItem:lineItemContext,skuCode:itemSkuCode}=(0,react_1.useContext)(ItemContext_1.default),{skuLists}=(0,react_1.useContext)(SkuListsContext_1.default),sCode=!(0,lodash_1.isEmpty)(items)&&skuCode?(_a=items[skuCode])===null||_a===void 0?void 0:_a.code:skuCode||(0,getCurrentItemKey_1.default)(item)||itemSkuCode,availabilityQuantity=(
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const tslib_1=require("tslib"),jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),Parent_1=(0,tslib_1.__importDefault)(require("./utils/Parent")),OrderContext_1=(0,tslib_1.__importDefault)(require("../context/OrderContext")),lodash_1=require("lodash"),ItemContext_1=(0,tslib_1.__importDefault)(require("../context/ItemContext")),getCurrentItemKey_1=(0,tslib_1.__importDefault)(require("../utils/getCurrentItemKey")),components_1=(0,tslib_1.__importDefault)(require("../config/components")),SkuListsContext_1=(0,tslib_1.__importDefault)(require("../context/SkuListsContext")),ExternalFunctionContext_1=(0,tslib_1.__importDefault)(require("../context/ExternalFunctionContext")),isFunction_1=(0,tslib_1.__importDefault)(require("lodash/isFunction")),propTypes=components_1.default.AddToCartButton.propTypes,defaultProps=components_1.default.AddToCartButton.defaultProps,displayName=components_1.default.AddToCartButton.displayName,AddToCartButton=props=>{var _a,_b,_c;const{label="Add to cart",children,skuCode,bundleCode,disabled,skuListId,lineItem}=props,p=(0,tslib_1.__rest)(props,["label","children","skuCode","bundleCode","disabled","skuListId","lineItem"]),{addToCart,orderId,getOrder,setOrderErrors}=(0,react_1.useContext)(OrderContext_1.default),{url,callExternalFunction}=(0,react_1.useContext)(ExternalFunctionContext_1.default),{item,items,quantity,option,prices,lineItems,lineItem:lineItemContext,skuCode:itemSkuCode}=(0,react_1.useContext)(ItemContext_1.default),{skuLists}=(0,react_1.useContext)(SkuListsContext_1.default),sCode=!(0,lodash_1.isEmpty)(items)&&skuCode?(_a=items[skuCode])===null||_a===void 0?void 0:_a.code:skuCode||(0,getCurrentItemKey_1.default)(item)||itemSkuCode,availabilityQuantity=(_c=(_b=item[sCode])===null||_b===void 0?void 0:_b.inventory)===null||_c===void 0?void 0:_c.quantity,handleClick=()=>{var _a2,_b2;const qty=quantity[sCode],opt=option[sCode],customLineItem=(0,lodash_1.isEmpty)(lineItem||lineItemContext)?lineItems[sCode]:lineItem||lineItemContext;if(!(0,lodash_1.isEmpty)(skuLists)&&skuListId&&url){const slQty=quantity[skuListId]||1;if((0,lodash_1.has)(skuLists,skuListId)){const lineItems2=skuLists&&skuLists[skuListId].map(skuCode2=>({skuCode:skuCode2,quantity:slQty,_update_quantity:1}));return callExternalFunction({url,data:{resourceType:"orders",inputs:[{id:orderId,lineItems:lineItems2}]}}).then(res=>(getOrder&&orderId&&getOrder(orderId),res)).catch(({response})=>(setOrderErrors&&setOrderErrors(response.data),response))}}return url?callExternalFunction({url,data:{bundleCode,skuCode:sCode,skuId:(_b2=item[sCode])===null||_b2===void 0?void 0:_b2.id,quantity:qty,option:opt,lineItem:customLineItem}}).then(res=>(getOrder&&orderId&&getOrder(orderId),res)).catch(({response})=>(setOrderErrors&&setOrderErrors(response.data),response)):addToCart&&addToCart({bundleCode,skuCode:sCode,skuId:(_a2=item[sCode])===null||_a2===void 0?void 0:_a2.id,quantity:qty,option:opt,lineItem:customLineItem})};console.log("sCode",sCode,availabilityQuantity);const autoDisabled=!(0,lodash_1.isEmpty)(skuLists)||skuListId?!1:disabled||!prices[sCode]||!sCode||availabilityQuantity===0,parentProps=Object.assign({handleClick,disabled:disabled||autoDisabled,label},props);return children?(0,jsx_runtime_1.jsx)(Parent_1.default,Object.assign({},parentProps,{children}),void 0):(0,jsx_runtime_1.jsx)("button",Object.assign({},p,{disabled:autoDisabled,onClick:handleClick},{children:(0,isFunction_1.default)(label)?label():label}),void 0)};AddToCartButton.propTypes=propTypes,AddToCartButton.defaultProps=defaultProps,AddToCartButton.displayName=displayName,exports.default=AddToCartButton;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const tslib_1=require("tslib"),jsx_runtime_1=require("react/jsx-runtime"),BaseOrderPrice_1=(0,tslib_1.__importDefault)(require("./utils/BaseOrderPrice")),components_1=(0,tslib_1.__importDefault)(require("../config/components")),propTypes=components_1.default.AdjustmentAmount.propTypes,defaultProps=components_1.default.AdjustmentAmount.defaultProps,displayName=components_1.default.AdjustmentAmount.displayName,AdjustmentAmount=props=>(0,jsx_runtime_1.jsx)(BaseOrderPrice_1.default,Object.assign({base:"amount",type:"adjustment"},props),void 0);AdjustmentAmount.propTypes=propTypes,AdjustmentAmount.defaultProps=defaultProps,AdjustmentAmount.displayName=displayName,exports.default=AdjustmentAmount;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const tslib_1=require("tslib"),jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),AvailabilityReducer_1=(0,tslib_1.__importStar)(require("../reducers/AvailabilityReducer")),AvailabilityContext_1=(0,tslib_1.__importDefault)(require("../context/AvailabilityContext")),lodash_1=require("lodash"),ItemContext_1=(0,tslib_1.__importDefault)(require("../context/ItemContext")),getCurrentItemKey_1=(0,tslib_1.__importDefault)(require("../utils/getCurrentItemKey")),components_1=(0,tslib_1.__importDefault)(require("../config/components")),CommerceLayerContext_1=(0,tslib_1.__importDefault)(require("../context/CommerceLayerContext")),LineItemChildrenContext_1=(0,tslib_1.__importDefault)(require("../context/LineItemChildrenContext")),propTypes=components_1.default.AvailabilityContainer.propTypes,displayName=components_1.default.AvailabilityContainer.displayName,AvailabilityContainer=props=>{const{children,skuCode}=props,{item,skuCode:itemSkuCode}=(0,react_1.useContext)(ItemContext_1.default),{lineItem}=(0,react_1.useContext)(LineItemChildrenContext_1.default),config=(0,react_1.useContext)(CommerceLayerContext_1.default),[state,dispatch]=(0,react_1.useReducer)(AvailabilityReducer_1.default,AvailabilityReducer_1.availabilityInitialState);return(0,react_1.useEffect)(()=>{var _a,_b,_c;const sCode=skuCode||(0,getCurrentItemKey_1.default)(item)||itemSkuCode||(lineItem==null?void 0:lineItem.sku_code);if(sCode){const[level]=((_b=(_a=item[sCode])===null||_a===void 0?void 0:_a.inventory)===null||_b===void 0?void 0:_b.levels)||{quantity:null,delivery_lead_times:[]};if(!(0,lodash_1.isEmpty)(level)&&((_c=level==null?void 0:level.delivery_lead_times)===null||_c===void 0?void 0:_c.length)>0){const[delivery]=level==null?void 0:level.delivery_lead_times;dispatch({type:"setAvailability",payload:Object.assign(Object.assign({},delivery),{quantity:level==null?void 0:level.quantity})})}else config.accessToken&&(0,AvailabilityReducer_1.getAvailability)({skuCode:sCode,config,dispatch})}return()=>{dispatch({type:"setAvailability",payload:{}})}},[config.accessToken,item,itemSkuCode]),(0,jsx_runtime_1.jsx)(AvailabilityContext_1.default.Provider,Object.assign({value:Object.assign({},state)},{children}),void 0)};AvailabilityContainer.propTypes=propTypes,AvailabilityContainer.displayName=displayName,exports.default=AvailabilityContainer;
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const tslib_1=require("tslib"),jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),AvailabilityReducer_1=(0,tslib_1.__importStar)(require("../reducers/AvailabilityReducer")),AvailabilityContext_1=(0,tslib_1.__importDefault)(require("../context/AvailabilityContext")),lodash_1=require("lodash"),ItemContext_1=(0,tslib_1.__importDefault)(require("../context/ItemContext")),getCurrentItemKey_1=(0,tslib_1.__importDefault)(require("../utils/getCurrentItemKey")),components_1=(0,tslib_1.__importDefault)(require("../config/components")),CommerceLayerContext_1=(0,tslib_1.__importDefault)(require("../context/CommerceLayerContext")),LineItemChildrenContext_1=(0,tslib_1.__importDefault)(require("../context/LineItemChildrenContext")),propTypes=components_1.default.AvailabilityContainer.propTypes,displayName=components_1.default.AvailabilityContainer.displayName,AvailabilityContainer=props=>{const{children,skuCode}=props,{item,skuCode:itemSkuCode,setItem}=(0,react_1.useContext)(ItemContext_1.default),{lineItem}=(0,react_1.useContext)(LineItemChildrenContext_1.default),config=(0,react_1.useContext)(CommerceLayerContext_1.default),[state,dispatch]=(0,react_1.useReducer)(AvailabilityReducer_1.default,AvailabilityReducer_1.availabilityInitialState);return(0,react_1.useEffect)(()=>{var _a,_b,_c;const sCode=skuCode||(0,getCurrentItemKey_1.default)(item)||itemSkuCode||(lineItem==null?void 0:lineItem.sku_code);if(sCode){const[level]=((_b=(_a=item[sCode])===null||_a===void 0?void 0:_a.inventory)===null||_b===void 0?void 0:_b.levels)||[{quantity:null,delivery_lead_times:[]}];if(!(0,lodash_1.isEmpty)(level)&&((_c=level==null?void 0:level.delivery_lead_times)===null||_c===void 0?void 0:_c.length)>0){const[delivery]=level==null?void 0:level.delivery_lead_times;dispatch({type:"setAvailability",payload:Object.assign(Object.assign({},delivery),{quantity:level==null?void 0:level.quantity})})}else config.accessToken&&!(item==null?void 0:item[sCode])&&(0,AvailabilityReducer_1.getAvailability)({skuCode:sCode,config,dispatch,setItem})}return()=>{dispatch({type:"setAvailability",payload:{}})}},[config.accessToken,item,itemSkuCode]),(0,jsx_runtime_1.jsx)(AvailabilityContext_1.default.Provider,Object.assign({value:Object.assign({},state)},{children}),void 0)};AvailabilityContainer.propTypes=propTypes,AvailabilityContainer.displayName=displayName,exports.default=AvailabilityContainer;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const tslib_1=require("tslib"),jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),PaymentMethodContext_1=(0,tslib_1.__importDefault)(require("../context/PaymentMethodContext")),isEmpty_1=(0,tslib_1.__importDefault)(require("lodash/isEmpty")),OrderContext_1=(0,tslib_1.__importDefault)(require("../context/OrderContext")),Parent_1=(0,tslib_1.__importDefault)(require("./utils/Parent")),localStorage_1=require("../utils/localStorage"),promisify_1=(0,tslib_1.__importDefault)(require("../utils/promisify")),defaultConfig={styles:{input:{"font-size":"16px",color:"#3A3A3A"},".number":{"font-family":"monospace"},":focus":{color:"blue"},".valid":{color:"green"},".invalid":{color:"red"},"@media screen and (max-width: 700px)":{input:{"font-size":"14px"}}},fields:{number:{label:"Card Number",selector:"#card-number",placeholder:"4111 1111 1111 1111"},cvv:{label:"CVV",selector:"#cvv",placeholder:"123"},expirationDate:{label:"Expiration Date",selector:"#expiration-date",placeholder:"10/2022"}},submitLabel:"Set payment method"},BraintreePayment=({authorization,config,templateCustomerSaveToWallet})=>{var _a,_b,_c;const{fields,styles,containerClassName,cardContainerClassName,fieldsContainerClassName,expDateContainerClassName,fieldLabelClassName,cvvContainerClassName,inputWrapperClassName,cardDetailsContainerClassName}=Object.assign(Object.assign({},defaultConfig),config),[loadBraintree,setLoadBraintree]=(0,react_1.useState)(!1),{setPaymentSource,paymentSource,setPaymentMethodErrors,currentPaymentMethodType,setPaymentRef}=(0,react_1.useContext)(PaymentMethodContext_1.default),{order}=(0,react_1.useContext)(OrderContext_1.default),ref=(0,react_1.useRef)(null),handleSubmitForm=async(event,hostedFieldsInstance,threeDSInstance)=>{var _a2,_b2;const savePaymentSourceToCustomerWallet=(_b2=(_a2=event==null?void 0:event.elements)===null||_a2===void 0?void 0:_a2.save_payment_source_to_customer_wallet)===null||_b2===void 0?void 0:_b2.checked;if(savePaymentSourceToCustomerWallet&&(0,localStorage_1.setCustomerOrderParam)("_save_payment_source_to_customer_wallet",savePaymentSourceToCustomerWallet),hostedFieldsInstance)try{const payload=await(0,promisify_1.default)(hostedFieldsInstance).then(payload2=>payload2),billingAddress=order==null?void 0:order.billing_address,verifyCardOptions={nonce:payload.nonce,bin:payload.details.bin,amount:order==null?void 0:order.total_amount_with_taxes_float,email:order==null?void 0:order.customer_email,billingAddress:{givenName:billingAddress==null?void 0:billingAddress.first_name,surname:billingAddress==null?void 0:billingAddress.last_name,phoneNumber:billingAddress==null?void 0:billingAddress.phone,streetAddress:billingAddress==null?void 0:billingAddress.line_1,countryCodeAlpha2:billingAddress==null?void 0:billingAddress.country_code,postalCode:billingAddress==null?void 0:billingAddress.zip_code,region:billingAddress==null?void 0:billingAddress.state_code,locality:billingAddress==null?void 0:billingAddress.city},onLookupComplete:(_data,next)=>{next()}},response=await threeDSInstance.verifyCard(verifyCardOptions);return response.rawCardinalSDKVerificationData.Validated&&paymentSource?(paymentSource&&await setPaymentSource({paymentSourceId:paymentSource.id,paymentResource:"braintree_payments",attributes:{
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const tslib_1=require("tslib"),jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),PaymentMethodContext_1=(0,tslib_1.__importDefault)(require("../context/PaymentMethodContext")),isEmpty_1=(0,tslib_1.__importDefault)(require("lodash/isEmpty")),OrderContext_1=(0,tslib_1.__importDefault)(require("../context/OrderContext")),Parent_1=(0,tslib_1.__importDefault)(require("./utils/Parent")),localStorage_1=require("../utils/localStorage"),promisify_1=(0,tslib_1.__importDefault)(require("../utils/promisify")),defaultConfig={styles:{input:{"font-size":"16px",color:"#3A3A3A"},".number":{"font-family":"monospace"},":focus":{color:"blue"},".valid":{color:"green"},".invalid":{color:"red"},"@media screen and (max-width: 700px)":{input:{"font-size":"14px"}}},fields:{number:{label:"Card Number",selector:"#card-number",placeholder:"4111 1111 1111 1111"},cvv:{label:"CVV",selector:"#cvv",placeholder:"123"},expirationDate:{label:"Expiration Date",selector:"#expiration-date",placeholder:"10/2022"}},submitLabel:"Set payment method"},BraintreePayment=({authorization,config,templateCustomerSaveToWallet})=>{var _a,_b,_c;const{fields,styles,containerClassName,cardContainerClassName,fieldsContainerClassName,expDateContainerClassName,fieldLabelClassName,cvvContainerClassName,inputWrapperClassName,cardDetailsContainerClassName}=Object.assign(Object.assign({},defaultConfig),config),[loadBraintree,setLoadBraintree]=(0,react_1.useState)(!1),{setPaymentSource,paymentSource,setPaymentMethodErrors,currentPaymentMethodType,setPaymentRef}=(0,react_1.useContext)(PaymentMethodContext_1.default),{order}=(0,react_1.useContext)(OrderContext_1.default),ref=(0,react_1.useRef)(null),handleSubmitForm=async(event,hostedFieldsInstance,threeDSInstance)=>{var _a2,_b2;const savePaymentSourceToCustomerWallet=(_b2=(_a2=event==null?void 0:event.elements)===null||_a2===void 0?void 0:_a2.save_payment_source_to_customer_wallet)===null||_b2===void 0?void 0:_b2.checked;if(savePaymentSourceToCustomerWallet&&(0,localStorage_1.setCustomerOrderParam)("_save_payment_source_to_customer_wallet",savePaymentSourceToCustomerWallet),hostedFieldsInstance)try{const payload=await(0,promisify_1.default)(hostedFieldsInstance).then(payload2=>payload2),billingAddress=order==null?void 0:order.billing_address,verifyCardOptions={nonce:payload.nonce,bin:payload.details.bin,amount:order==null?void 0:order.total_amount_with_taxes_float,email:order==null?void 0:order.customer_email,billingAddress:{givenName:billingAddress==null?void 0:billingAddress.first_name,surname:billingAddress==null?void 0:billingAddress.last_name,phoneNumber:billingAddress==null?void 0:billingAddress.phone,streetAddress:billingAddress==null?void 0:billingAddress.line_1,countryCodeAlpha2:billingAddress==null?void 0:billingAddress.country_code,postalCode:billingAddress==null?void 0:billingAddress.zip_code,region:billingAddress==null?void 0:billingAddress.state_code,locality:billingAddress==null?void 0:billingAddress.city},onLookupComplete:(_data,next)=>{next()}},response=await threeDSInstance.verifyCard(verifyCardOptions);return response.rawCardinalSDKVerificationData.Validated&&paymentSource?(paymentSource&&await setPaymentSource({paymentSourceId:paymentSource.id,paymentResource:"braintree_payments",attributes:{payment_method_nonce:response.nonce,options:{id:response.nonce,card:{last4:response.details.lastFour,exp_year:response.details.expirationYear,exp_month:response.details.expirationMonth,brand:response.details.cardType.toLowerCase()}}}}),!0):!1}catch(error){return console.error(error),setPaymentMethodErrors([{code:"PAYMENT_INTENT_AUTHENTICATION_FAILURE",resource:"payment_methods",field:currentPaymentMethodType,message:error.message}]),!1}return!1};return(0,react_1.useEffect)(()=>{if(!ref&&authorization&&(0,localStorage_1.setCustomerOrderParam)("_save_payment_source_to_customer_wallet","false"),authorization&&!loadBraintree&&!(0,isEmpty_1.default)(window)){const braintreeClient=require("braintree-web/client"),hostedFields=require("braintree-web/hosted-fields"),threeDSecure=require("braintree-web/three-d-secure");braintreeClient.create({authorization},(clientErr,clientInstance)=>{if(clientErr){console.error(clientErr);return}hostedFields.create({client:clientInstance,fields,styles},(hostedFieldsErr,hostedFieldsInstance)=>{if(hostedFieldsErr){console.error(hostedFieldsErr);return}setLoadBraintree(!0),threeDSecure.create({authorization,version:2},(threeDSecureErr,threeDSecureInstance)=>{threeDSecureErr&&(console.error("3DSecure error",threeDSecureErr),setPaymentMethodErrors([{code:"PAYMENT_INTENT_AUTHENTICATION_FAILURE",resource:"payment_methods",field:currentPaymentMethodType,message:threeDSecureErr.message}])),ref.current&&(ref.current.onsubmit=()=>handleSubmitForm(ref.current,hostedFieldsInstance,threeDSecureInstance),setPaymentRef({ref}))})})})}return()=>{setPaymentRef({ref:{current:null}}),setLoadBraintree(!1)}},[authorization,ref]),!authorization&&!loadBraintree?null:(0,jsx_runtime_1.jsx)("div",Object.assign({className:containerClassName},{children:(0,jsx_runtime_1.jsxs)("form",Object.assign({ref,id:"braintree-form",onSubmit:handleSubmitForm,className:containerClassName},{children:[(0,jsx_runtime_1.jsxs)("div",Object.assign({className:fieldsContainerClassName},{children:[(0,jsx_runtime_1.jsxs)("div",Object.assign({className:cardContainerClassName},{children:[(0,jsx_runtime_1.jsx)("label",Object.assign({className:fieldLabelClassName,htmlFor:"card-number"},{children:(_a=fields==null?void 0:fields.number)===null||_a===void 0?void 0:_a.label}),void 0),(0,jsx_runtime_1.jsx)("div",{className:inputWrapperClassName,id:"card-number"},void 0)]}),void 0),(0,jsx_runtime_1.jsxs)("div",Object.assign({className:cardDetailsContainerClassName},{children:[(0,jsx_runtime_1.jsxs)("div",Object.assign({className:expDateContainerClassName},{children:[(0,jsx_runtime_1.jsx)("label",Object.assign({className:fieldLabelClassName,htmlFor:"expiration-date"},{children:(_b=fields==null?void 0:fields.expirationDate)===null||_b===void 0?void 0:_b.label}),void 0),(0,jsx_runtime_1.jsx)("div",{className:inputWrapperClassName,id:"expiration-date"},void 0)]}),void 0),(0,jsx_runtime_1.jsxs)("div",Object.assign({className:cvvContainerClassName},{children:[(0,jsx_runtime_1.jsx)("label",Object.assign({className:fieldLabelClassName,htmlFor:"cvv"},{children:(_c=fields==null?void 0:fields.cvv)===null||_c===void 0?void 0:_c.label}),void 0),(0,jsx_runtime_1.jsx)("div",{className:inputWrapperClassName,id:"cvv"},void 0)]}),void 0)]}),void 0)]}),void 0),(0,jsx_runtime_1.jsx)("div",Object.assign({className:fieldsContainerClassName},{children:templateCustomerSaveToWallet&&(0,jsx_runtime_1.jsx)(Parent_1.default,Object.assign({},{name:"save_payment_source_to_customer_wallet"},{children:templateCustomerSaveToWallet}),void 0)}),void 0)]}),void 0)}),void 0)};exports.default=BraintreePayment;
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import { FunctionComponent } from 'react';
|
|
2
|
+
import { TypeAccepted } from '../utils/getLineItemsCount';
|
|
2
3
|
import { FunctionChildren } from '../typings/index';
|
|
3
4
|
declare type LineItemsCountChildrenProps = FunctionChildren<Omit<LineItemsCountProps, 'children'> & {
|
|
4
5
|
quantity: number;
|
|
5
6
|
}>;
|
|
6
7
|
declare type LineItemsCountProps = {
|
|
7
8
|
children?: LineItemsCountChildrenProps;
|
|
9
|
+
typeAccepted?: TypeAccepted[];
|
|
8
10
|
} & JSX.IntrinsicElements['span'];
|
|
9
11
|
declare const LineItemsCount: FunctionComponent<LineItemsCountProps>;
|
|
10
12
|
export default LineItemsCount;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const tslib_1=require("tslib"),jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),Parent_1=(0,tslib_1.__importDefault)(require("./utils/Parent")),getLineItemsCount_1=(0,tslib_1.__importDefault)(require("../utils/getLineItemsCount")),lodash_1=require("lodash"),LineItemContext_1=(0,tslib_1.__importDefault)(require("../context/LineItemContext")),components_1=(0,tslib_1.__importDefault)(require("../config/components")),propTypes=components_1.default.LineItemsCount.propTypes,displayName=components_1.default.LineItemsCount.displayName,LineItemsCount=props=>{const{children}=props,p=(0,tslib_1.__rest)(props,["children"]),{lineItems}=(0,react_1.useContext)(LineItemContext_1.default),[quantity,setQuantity]=(0,react_1.useState)(0);(0,react_1.useEffect)(()=>{if(!(0,lodash_1.isEmpty)(lineItems)){const qty=(0,getLineItemsCount_1.default)(lineItems||[]);setQuantity(qty)}return()=>{setQuantity(0)}},[lineItems]);const parentProps=Object.assign({quantity},p);return children?(0,jsx_runtime_1.jsx)(Parent_1.default,Object.assign({},parentProps,{children}),void 0):(0,jsx_runtime_1.jsx)("span",Object.assign({},p,{children:quantity}),void 0)};LineItemsCount.propTypes=propTypes,LineItemsCount.displayName=displayName,exports.default=LineItemsCount;
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const tslib_1=require("tslib"),jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),Parent_1=(0,tslib_1.__importDefault)(require("./utils/Parent")),getLineItemsCount_1=(0,tslib_1.__importDefault)(require("../utils/getLineItemsCount")),lodash_1=require("lodash"),LineItemContext_1=(0,tslib_1.__importDefault)(require("../context/LineItemContext")),components_1=(0,tslib_1.__importDefault)(require("../config/components")),propTypes=components_1.default.LineItemsCount.propTypes,displayName=components_1.default.LineItemsCount.displayName,LineItemsCount=props=>{const{children,typeAccepted}=props,p=(0,tslib_1.__rest)(props,["children","typeAccepted"]),{lineItems}=(0,react_1.useContext)(LineItemContext_1.default),[quantity,setQuantity]=(0,react_1.useState)(0);(0,react_1.useEffect)(()=>{if(!(0,lodash_1.isEmpty)(lineItems)){const qty=(0,getLineItemsCount_1.default)({lineItems:lineItems||[],typeAccepted});setQuantity(qty)}return()=>{setQuantity(0)}},[lineItems,typeAccepted]);const parentProps=Object.assign({quantity,typeAccepted},p);return children?(0,jsx_runtime_1.jsx)(Parent_1.default,Object.assign({},parentProps,{children}),void 0):(0,jsx_runtime_1.jsx)("span",Object.assign({},p,{children:quantity}),void 0)};LineItemsCount.propTypes=propTypes,LineItemsCount.displayName=displayName,exports.default=LineItemsCount;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const tslib_1=require("tslib"),jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),Parent_1=(0,tslib_1.__importDefault)(require("./utils/Parent")),getLineItemsCount_1=(0,tslib_1.__importDefault)(require("../utils/getLineItemsCount")),lodash_1=require("lodash"),LineItemContext_1=(0,tslib_1.__importDefault)(require("../context/LineItemContext")),components_1=(0,tslib_1.__importDefault)(require("../config/components")),propTypes=components_1.default.LineItemsEmpty.propTypes,displayName=components_1.default.LineItemsEmpty.displayName,LineItemsEmpty=props=>{const{children,text="Your shopping bag is empty"}=props,p=(0,tslib_1.__rest)(props,["children","text"]),{lineItems}=(0,react_1.useContext)(LineItemContext_1.default),[quantity,setQuantity]=(0,react_1.useState)(0),emptyText=quantity===0?(0,jsx_runtime_1.jsx)("span",Object.assign({},p,{children:text}),void 0):null;(0,react_1.useEffect)(()=>{if(!(0,lodash_1.isEmpty)(lineItems)){const qty=(0,getLineItemsCount_1.default)(lineItems||[]);setQuantity(qty)}return()=>{setQuantity(0)}},[lineItems]);const parentProps=Object.assign({quantity,text},p);return children?(0,jsx_runtime_1.jsx)(Parent_1.default,Object.assign({},parentProps,{children}),void 0):emptyText};LineItemsEmpty.propTypes=propTypes,LineItemsEmpty.displayName=displayName,exports.default=LineItemsEmpty;
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const tslib_1=require("tslib"),jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),Parent_1=(0,tslib_1.__importDefault)(require("./utils/Parent")),getLineItemsCount_1=(0,tslib_1.__importDefault)(require("../utils/getLineItemsCount")),lodash_1=require("lodash"),LineItemContext_1=(0,tslib_1.__importDefault)(require("../context/LineItemContext")),components_1=(0,tslib_1.__importDefault)(require("../config/components")),propTypes=components_1.default.LineItemsEmpty.propTypes,displayName=components_1.default.LineItemsEmpty.displayName,LineItemsEmpty=props=>{const{children,text="Your shopping bag is empty"}=props,p=(0,tslib_1.__rest)(props,["children","text"]),{lineItems}=(0,react_1.useContext)(LineItemContext_1.default),[quantity,setQuantity]=(0,react_1.useState)(0),emptyText=quantity===0?(0,jsx_runtime_1.jsx)("span",Object.assign({},p,{children:text}),void 0):null;(0,react_1.useEffect)(()=>{if(!(0,lodash_1.isEmpty)(lineItems)){const qty=(0,getLineItemsCount_1.default)({lineItems:lineItems||[]});setQuantity(qty)}return()=>{setQuantity(0)}},[lineItems]);const parentProps=Object.assign({quantity,text},p);return children?(0,jsx_runtime_1.jsx)(Parent_1.default,Object.assign({},parentProps,{children}),void 0):emptyText};LineItemsEmpty.propTypes=propTypes,LineItemsEmpty.displayName=displayName,exports.default=LineItemsEmpty;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const tslib_1=require("tslib"),jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),getPrices_1=(0,tslib_1.__importDefault)(require("../utils/getPrices")),lodash_1=require("lodash"),CommerceLayerContext_1=(0,tslib_1.__importDefault)(require("../context/CommerceLayerContext")),PriceReducer_1=(0,tslib_1.__importStar)(require("../reducers/PriceReducer")),PriceReducer_2=require("../reducers/PriceReducer"),PricesContext_1=(0,tslib_1.__importDefault)(require("../context/PricesContext")),getCurrentItemKey_1=(0,tslib_1.__importDefault)(require("../utils/getCurrentItemKey")),ItemContext_1=(0,tslib_1.__importDefault)(require("../context/ItemContext")),components_1=(0,tslib_1.__importDefault)(require("../config/components")),propTypes=components_1.default.PricesContainer.propTypes,defaultProps=components_1.default.PricesContainer.defaultProps,displayName=components_1.default.PricesContainer.displayName,PricesContainer=props=>{const{children,skuCode="",loader="Loading...",perPage=10,filters={}}=props,[state,dispatch]=(0,react_1.useReducer)(PriceReducer_1.default,PriceReducer_2.priceInitialState),config=(0,react_1.useContext)(CommerceLayerContext_1.default),{setPrices,prices,items,item:currentItem,skuCode:itemSkuCode}=(0,react_1.useContext)(ItemContext_1.default);(0,lodash_1.indexOf)(state.skuCodes,skuCode)===-1&&skuCode&&state.skuCodes.push(skuCode);const sCode=(0,getCurrentItemKey_1.default)(currentItem)||skuCode||itemSkuCode||"",setSkuCodes=skuCodes=>{dispatch({type:"setSkuCodes",payload:{skuCodes}})};(0,react_1.useEffect)(()=>{if(currentItem&&(0,lodash_1.has)(prices,sCode)&&dispatch({type:"setPrices",payload:{prices}}),!(0,lodash_1.isEmpty)(items)&&(0,lodash_1.isEmpty)(currentItem)){const p=(0,getPrices_1.default)(items);dispatch({type:"setPrices",payload:{prices:p}})}return(config.accessToken&&(0,lodash_1.isEmpty)(currentItem)||config.accessToken&&!(0,lodash_1.has)(prices,sCode))&&(state.skuCodes.length>0||skuCode)&&(0,PriceReducer_2.getSkusPrice)(sCode&&[sCode]||state.skuCodes,{config,dispatch,setPrices,prices,perPage,filters}),()=>{(0,lodash_1.isEmpty)(currentItem)&&(0,PriceReducer_1.unsetPriceState)(dispatch)}},[config.accessToken,currentItem,sCode]);const priceValue=Object.assign(Object.assign({},state),{skuCode:sCode,loader,setSkuCodes});return(0,jsx_runtime_1.jsx)(PricesContext_1.default.Provider,Object.assign({value:priceValue},{children}),void 0)};PricesContainer.propTypes=propTypes,PricesContainer.defaultProps=defaultProps,PricesContainer.displayName=displayName,exports.default=PricesContainer;
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const tslib_1=require("tslib"),jsx_runtime_1=require("react/jsx-runtime"),react_1=require("react"),getPrices_1=(0,tslib_1.__importDefault)(require("../utils/getPrices")),lodash_1=require("lodash"),CommerceLayerContext_1=(0,tslib_1.__importDefault)(require("../context/CommerceLayerContext")),PriceReducer_1=(0,tslib_1.__importStar)(require("../reducers/PriceReducer")),PriceReducer_2=require("../reducers/PriceReducer"),PricesContext_1=(0,tslib_1.__importDefault)(require("../context/PricesContext")),getCurrentItemKey_1=(0,tslib_1.__importDefault)(require("../utils/getCurrentItemKey")),ItemContext_1=(0,tslib_1.__importDefault)(require("../context/ItemContext")),components_1=(0,tslib_1.__importDefault)(require("../config/components")),propTypes=components_1.default.PricesContainer.propTypes,defaultProps=components_1.default.PricesContainer.defaultProps,displayName=components_1.default.PricesContainer.displayName,PricesContainer=props=>{const{children,skuCode="",loader="Loading...",perPage=10,filters={}}=props,[state,dispatch]=(0,react_1.useReducer)(PriceReducer_1.default,PriceReducer_2.priceInitialState),config=(0,react_1.useContext)(CommerceLayerContext_1.default),{setPrices,prices,items,item:currentItem,skuCode:itemSkuCode}=(0,react_1.useContext)(ItemContext_1.default);(0,lodash_1.indexOf)(state.skuCodes,skuCode)===-1&&skuCode&&state.skuCodes.push(skuCode);const sCode=(0,getCurrentItemKey_1.default)(currentItem)||skuCode||itemSkuCode||"",setSkuCodes=skuCodes=>{dispatch({type:"setSkuCodes",payload:{skuCodes}})};(0,react_1.useEffect)(()=>{if(currentItem&&(0,lodash_1.has)(prices,sCode)&&dispatch({type:"setPrices",payload:{prices}}),!(0,lodash_1.isEmpty)(items)&&(0,lodash_1.isEmpty)(currentItem)){const p=(0,getPrices_1.default)(items);dispatch({type:"setPrices",payload:{prices:p}})}return(config.accessToken&&(0,lodash_1.isEmpty)(currentItem)||config.accessToken&&!(0,lodash_1.has)(prices,sCode))&&(state.skuCodes.length>0||skuCode)&&(0,PriceReducer_2.getSkusPrice)(sCode&&[sCode]||state.skuCodes,{config,dispatch,setPrices,prices,perPage,filters}),()=>{(0,lodash_1.isEmpty)(currentItem)&&(0,PriceReducer_1.unsetPriceState)(dispatch)}},[config.accessToken,currentItem,sCode,state.skuCodes.length]);const priceValue=Object.assign(Object.assign({},state),{skuCode:sCode,loader,setSkuCodes});return(0,jsx_runtime_1.jsx)(PricesContext_1.default.Provider,Object.assign({value:priceValue},{children}),void 0)};PricesContainer.propTypes=propTypes,PricesContainer.defaultProps=defaultProps,PricesContainer.displayName=displayName,exports.default=PricesContainer;
|
|
@@ -66,6 +66,20 @@ declare const components: {
|
|
|
66
66
|
required: boolean;
|
|
67
67
|
};
|
|
68
68
|
};
|
|
69
|
+
AdjustmentAmount: {
|
|
70
|
+
displayName: string;
|
|
71
|
+
propTypes: {
|
|
72
|
+
id: PropTypes.Requireable<string>;
|
|
73
|
+
className: PropTypes.Requireable<string>;
|
|
74
|
+
style: PropTypes.Requireable<object>;
|
|
75
|
+
name: PropTypes.Requireable<string>;
|
|
76
|
+
children: PropTypes.Requireable<(...args: any[]) => any>;
|
|
77
|
+
format: PropTypes.Requireable<BaseFormatPrice>;
|
|
78
|
+
};
|
|
79
|
+
defaultProps: {
|
|
80
|
+
format: BaseFormatPrice;
|
|
81
|
+
};
|
|
82
|
+
};
|
|
69
83
|
AddToCartButton: {
|
|
70
84
|
displayName: string;
|
|
71
85
|
propTypes: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const tslib_1=require("tslib"),prop_types_1=(0,tslib_1.__importDefault)(require("prop-types")),childrenTypes_1=(0,tslib_1.__importDefault)(require("../utils/childrenTypes")),_typings_1=require("../typings/index"),errors_1=require("../typings/errors"),index_1=require("../typings/index"),components={Address:{permittedChildren:["AddressField","ReactNode"],displayName:"Address",propTypes:{children:childrenTypes_1.default.isRequired}},AddressCountrySelector:{displayName:"AddressCountrySelector",propTypes:{children:prop_types_1.default.func,placeholder:prop_types_1.default.shape({label:prop_types_1.default.string.isRequired,value:prop_types_1.default.oneOfType([prop_types_1.default.string,prop_types_1.default.number]).isRequired}),value:prop_types_1.default.string,name:prop_types_1.default.oneOf(["billing_address_country_code","shipping_address_country_code"]).isRequired,required:prop_types_1.default.bool},defaultProps:{required:!0}},AddressStateSelector:{displayName:"AddressStateSelector",propTypes:{children:prop_types_1.default.func,placeholder:prop_types_1.default.shape({label:prop_types_1.default.string.isRequired,value:prop_types_1.default.oneOfType([prop_types_1.default.string,prop_types_1.default.number]).isRequired}),value:prop_types_1.default.string,name:prop_types_1.default.oneOf(["billing_address_state_code","shipping_address_state_code"]).isRequired,required:prop_types_1.default.bool},defaultProps:{required:!0}},AddressField:{displayName:"AddressField",propTypes:{children:prop_types_1.default.func}},AddressInput:{displayName:"AddressInput",propTypes:{children:prop_types_1.default.func,name:prop_types_1.default.oneOf(["billing_address_city","billing_address_company","billing_address_email","billing_address_first_name","billing_address_last_name","billing_address_line_1","billing_address_line_2","billing_address_phone","billing_address_state_code","billing_address_zip_code","billing_address_billing_info","billing_address_save_to_customer_book","shipping_address_city","shipping_address_company","shipping_address_email","shipping_address_first_name","shipping_address_last_name","shipping_address_line_1","shipping_address_line_2","shipping_address_phone","shipping_address_state_code","shipping_address_zip_code","shipping_address_save_to_customer_book"]).isRequired,type:prop_types_1.default.oneOf(["checkbox","date","email","number","tel","text","textarea"]).isRequired,placeholder:prop_types_1.default.string,disabled:prop_types_1.default.bool,required:prop_types_1.default.bool},defaultProps:{required:!0}},AddToCartButton:{displayName:"AddToCartButton",propTypes:{children:prop_types_1.default.func,label:prop_types_1.default.oneOfType([prop_types_1.default.string,prop_types_1.default.element]),skuCode:prop_types_1.default.string,disabled:prop_types_1.default.bool,lineItem:prop_types_1.default.shape({name:prop_types_1.default.string.isRequired,imageUrl:prop_types_1.default.string})},defaultProps:{label:"Add to cart"}},AddressesContainer:{displayName:"AddressesContainer",permittedChildren:["BillingAddressForm","BillingAddressContainer","ShippingAddressForm","ShippingAddressContainer","SaveAddressesButton","ReactNode"],propTypes:{children:childrenTypes_1.default.isRequired,shipToDifferentAddress:prop_types_1.default.bool}},AvailabilityContainer:{displayName:"AvailabilityContainer",permittedChildren:["AvailabilityTemplate","ReactNode"],propTypes:{children:childrenTypes_1.default.isRequired,skuCode:prop_types_1.default.string}},AvailabilityTemplate:{displayName:"AvailabilityTemplate",propTypes:{timeFormat:prop_types_1.default.oneOf(["days","hours"]),showShippingMethodName:prop_types_1.default.bool,children:prop_types_1.default.func},defaultProps:{timeFormat:"days",showShippingMethodName:!1}},BillingAddressContainer:{permittedChildren:["Address","ReactNode"],propTypes:{children:childrenTypes_1.default.isRequired}},BillingAddressForm:{permittedChildren:["AddressInput","ReactNode"],propTypes:{children:childrenTypes_1.default.isRequired}},CheckoutLink:{displayName:"CheckoutLink",propTypes:{children:prop_types_1.default.func,label:prop_types_1.default.string},defaultProps:{label:"Checkout"}},CommerceLayer:{permittedChildren:["OrderContainer","OrderStorage","PricesContainer","GiftCardContainer","ReactNode"],propTypes:{children:childrenTypes_1.default.isRequired,accessToken:prop_types_1.default.string.isRequired,endpoint:prop_types_1.default.string.isRequired}},CustomerContainer:{displayName:"CustomerContainer",permittedChildren:["CustomerInput","SaveCustomerButton","AddressesContainer","PaymentMethodsContainer","ShipmentsContainer","ReactNode"],propTypes:{children:childrenTypes_1.default.isRequired,isGuest:prop_types_1.default.bool}},CustomerInput:{displayName:"CustomerInput",propTypes:{children:prop_types_1.default.func,name:prop_types_1.default.oneOf(["customerEmail"]),type:prop_types_1.default.oneOf(["email"]),placeholder:prop_types_1.default.string,disabled:prop_types_1.default.bool,required:prop_types_1.default.bool,saveOnBlur:prop_types_1.default.bool},defaultProps:{required:!0}},DeliveryLeadTime:{displayName:"DeliveryLeadTime",propTypes:{type:prop_types_1.default.oneOf(["max_days","max_hours","min_days","min_hours"]).isRequired,children:prop_types_1.default.func}},DiscountAmount:{displayName:"DiscountAmount",propTypes:_typings_1.baseOrderComponentPricePropTypes,defaultProps:{format:"formatted"}},Errors:{displayName:"Errors",propTypes:errors_1.ErrorPropTypes,defaultProps:{messages:[],field:"base"}},ExternalFunction:{displayName:"ExternalFunction",permittedChildren:["AddToCartButton","ReactNode"],propTypes:{children:childrenTypes_1.default.isRequired,url:prop_types_1.default.string.isRequired}},GiftCard:{permittedChildren:["GiftCardCurrencySelector","GiftCardInput","Errors","MetadataInput","SubmitButton","ReactNode"],displayName:"GiftCard",propTypes:{children:childrenTypes_1.default.isRequired,onSubmit:prop_types_1.default.func},defaultProps:{onSubmit:void 0}},GiftCardAmount:{displayName:"GiftCardAmount",propTypes:_typings_1.baseOrderComponentPricePropTypes},GiftCardContainer:{permittedChildren:["GiftCard","Errors","ReactNode"],displayName:"GiftCardContainer",propTypes:{children:childrenTypes_1.default.isRequired}},GiftCardCurrencySelector:{displayName:"GiftCardCurrencySelector",propTypes:{children:prop_types_1.default.func,placeholder:prop_types_1.default.shape({value:prop_types_1.default.oneOfType([prop_types_1.default.string,prop_types_1.default.number]).isRequired,label:prop_types_1.default.string.isRequired}),value:prop_types_1.default.string,required:prop_types_1.default.bool},defaultProps:{required:!0}},GiftCardInput:{displayName:"GiftCardInput",propTypes:{type:prop_types_1.default.oneOf(["text","email","number","date","checkbox"]).isRequired,name:prop_types_1.default.oneOf(["balanceCents","balanceMaxCents","singleUse","rechargeable","imageUrl","expiresAt","referenceOrigin","email","firstName","lastName","reference"]).isRequired,children:prop_types_1.default.func,placeholder:prop_types_1.default.string}},GiftCardOrCouponForm:{permittedChildren:["GiftCardOrCouponInput","GiftCardOrCouponSubmit","ReactNode"],propTypes:{children:childrenTypes_1.default.isRequired}},GiftCardOrCouponInput:{displayName:"GiftCardOrCouponInput",propTypes:{children:prop_types_1.default.func,placeholder:prop_types_1.default.string,disabled:prop_types_1.default.bool,required:prop_types_1.default.bool}},GiftCardOrCouponSubmit:{displayName:"GiftCardOrCouponSubmit",propTypes:{children:prop_types_1.default.func,label:prop_types_1.default.oneOfType([prop_types_1.default.string,prop_types_1.default.object])}},GiftCardOrCouponCode:{displayName:"GiftCardOrCouponCode",propTypes:{children:prop_types_1.default.func,type:prop_types_1.default.oneOf(["coupon","gift_card"])}},GiftCardOrCouponRemoveButton:{displayName:"GiftCardOrCouponRemoveButton",propTypes:{children:prop_types_1.default.func,type:prop_types_1.default.oneOf(["coupon","gift_card"]),label:prop_types_1.default.oneOfType([prop_types_1.default.string,prop_types_1.default.object])}},ItemContainer:{permittedChildren:["PricesContainer","VariantsContainer","SkuOptionContainer","QuantitySelector","AddToCartButton","AvailabilityContainer","SkuListsContainer","ReactNode"],displayName:"ItemContainer",propTypes:{children:childrenTypes_1.default.isRequired,skuCode:prop_types_1.default.string,lineItem:prop_types_1.default.shape({name:prop_types_1.default.string.isRequired,imageUrl:prop_types_1.default.string})}},LineItem:{permittedChildren:["AvailabilityContainer","LineItemImage","LineItemName","LineItemOptions","LineItemQuantity","LineItemAmount","LineItemRemoveLink","StockTransfer","Errors","ReactNode"],displayName:"LineItem",propTypes:{children:childrenTypes_1.default.isRequired,type:prop_types_1.default.oneOf(["skus","gift_cards","shipments","payment_methods","promotions","adjustments","bundles"])},defaultProps:{type:"skus"}},LineItemAmount:{displayName:"LineItemAmount",propTypes:Object.assign(Object.assign({},_typings_1.baseOrderComponentPricePropTypes),{type:prop_types_1.default.oneOf(["total","unit","option"])}),defaultProps:{format:"formatted",type:"total"}},LineItemImage:{displayName:"LineItemImage",propTypes:{width:prop_types_1.default.number,children:prop_types_1.default.func}},LineItemName:{displayName:"LineItemName",propTypes:{children:prop_types_1.default.func}},LineItemCode:{displayName:"LineItemCode",propTypes:{children:prop_types_1.default.func}},LineItemOption:{displayName:"LineItemOption",propTypes:{name:prop_types_1.default.string,children:prop_types_1.default.func,valueClassName:prop_types_1.default.string,className:prop_types_1.default.string,id:prop_types_1.default.string,style:prop_types_1.default.object}},LineItemOptions:{permittedChildren:["LineItemOption","ReactNode"],displayName:"LineItemOptions",propTypes:{children:childrenTypes_1.default.isRequired,title:prop_types_1.default.string,showName:prop_types_1.default.bool,skuOptionId:prop_types_1.default.string}},LineItemQuantity:{displayName:"LineItemQuantity",propTypes:{children:prop_types_1.default.func,max:prop_types_1.default.number,disabled:prop_types_1.default.bool,readonly:prop_types_1.default.bool},defaultProps:{max:50}},LineItemRemoveLink:{displayName:"LineItemRemoveLink",propTypes:{children:prop_types_1.default.func,label:prop_types_1.default.string},defaultProps:{label:"Remove"}},LineItemsContainer:{permittedChildren:["LineItemsCount","LineItemsEmpty","LineItem","ReactNode"],displayName:"LineItemsContainer",propTypes:{children:childrenTypes_1.default.isRequired,filters:prop_types_1.default.object,loader:_typings_1.PTLoader},defaultProps:{filters:{},loader:"Loading..."}},LineItemsCount:{displayName:"LineItemsCount",propTypes:{children:prop_types_1.default.func,id:prop_types_1.default.string,className:prop_types_1.default.string,name:prop_types_1.default.string,style:prop_types_1.default.object}},LineItemsEmpty:{displayName:"LineItemsEmpty",propTypes:{children:prop_types_1.default.func,id:prop_types_1.default.string,className:prop_types_1.default.string,name:prop_types_1.default.string,style:prop_types_1.default.object,text:prop_types_1.default.string}},MetadataInput:{displayName:"MetadataInput",propTypes:index_1.BaseInputComponentPropTypes},OrderContainer:{permittedChildren:["AddressesContainer","CustomerContainer","ItemContainer","LineItemsContainer","SubTotalAmount","DiscountAmount","ShippingAmount","TaxesAmount","GiftCardAmount","TotalAmount","CheckoutLink","GiftCardContainer","ShipmentsContainer","PaymentMethodsContainer","PaymentMethodAmount","GiftCardOrCouponForm","GiftCardOrCouponCode","GiftCardOrCouponRemoveButton","Errors","OrderNumber","ReactNode"],displayName:"OrderContainer",propTypes:{children:childrenTypes_1.default.isRequired,orderId:prop_types_1.default.string,metadata:_typings_1.BMObject,attributes:prop_types_1.default.object},defaultProps:{metadata:{}}},OrderNumber:{displayName:"OrderNumber",propTypes:{className:prop_types_1.default.string},defaultProps:{format:"formatted"}},OrderStorage:{permittedChildren:["OrderContainer","ReactNode"],displayName:"OrderStorage",propTypes:{children:childrenTypes_1.default.isRequired,clearWhenPlaced:prop_types_1.default.bool,persistKey:prop_types_1.default.string.isRequired}},PaymentMethod:{permittedChildren:["PaymentMethodName","PaymentMethodRadioButton","PaymentMethodPrice","PaymentSource","ReactNode","Errors"],displayName:"PaymentMethod",propTypes:{children:childrenTypes_1.default.isRequired}},PaymentMethodAmount:{displayName:"PaymentMethodAmount",propTypes:_typings_1.baseOrderComponentPricePropTypes,defaultProps:{format:"formatted"}},PaymentMethodName:{displayName:"PaymentMethodName",propTypes:{children:prop_types_1.default.func}},PaymentMethodPrice:{displayName:"PaymentMethodPrice",propTypes:Object.assign(Object.assign({},_typings_1.baseOrderComponentPricePropTypes),{type:prop_types_1.default.oneOf(["amount"])})},PaymentMethodRadioButton:{displayName:"PaymentMethodRadioButton",propTypes:{children:prop_types_1.default.func}},PaymentMethodsContainer:{displayName:"PaymentMethodsContainer",permittedChildren:["PaymentSource","ReactNode","PlaceOrderContainer"],propTypes:{children:childrenTypes_1.default.isRequired}},PaymentSource:{displayName:"PaymentSource",permittedChildren:["PaymentSourceBrandIcon","PaymentSourceBrandName","PaymentSourceEditButton","PaymentSourceDetail","ReactNode"],propTypes:{children:childrenTypes_1.default,readonly:prop_types_1.default.bool}},PaymentSourceBrandIcon:{displayName:"PaymentSourceBrandIcon",propTypes:{children:prop_types_1.default.func,width:prop_types_1.default.number,height:prop_types_1.default.number,src:prop_types_1.default.string,className:prop_types_1.default.string}},PaymentSourceBrandName:{displayName:"PaymentSourceBrandName",propTypes:{children:prop_types_1.default.func,label:prop_types_1.default.string}},PaymentSourceEditButton:{displayName:"PaymentSourceEditButton",propTypes:{children:prop_types_1.default.func,label:prop_types_1.default.oneOfType([prop_types_1.default.string,prop_types_1.default.element])}},PaymentSourceDetail:{displayName:"PaymentSourceDetail",propTypes:{type:prop_types_1.default.oneOf(["last4","exp_year","exp_month"]).isRequired}},PlaceOrderButton:{displayName:"PlaceOrderButton",propTypes:{children:prop_types_1.default.func,label:prop_types_1.default.oneOfType([prop_types_1.default.string,prop_types_1.default.element])},defaultProps:{label:"Place order"}},PlaceOrderContainer:{displayName:"PlaceOrderContainer",permittedChildren:["PaymentMethod","PlaceOrderButton","PrivacyAndTermsCheckbox","ReactNode"],propTypes:{children:childrenTypes_1.default.isRequired}},Price:{displayName:"Price",propTypes:{children:prop_types_1.default.func,compareClassName:prop_types_1.default.string,skuCode:prop_types_1.default.string,showCompare:prop_types_1.default.bool},defaultProps:{skuCode:""}},PricesContainer:{permittedChildren:["Price","ReactNode"],displayName:"PricesContainer",propTypes:{children:childrenTypes_1.default.isRequired,skuCode:prop_types_1.default.string,loader:_typings_1.PTLoader,perPage:prop_types_1.default.number,filters:prop_types_1.default.object},defaultProps:{perPage:10,filters:{},loader:"Loading...",skuCode:""}},PrivacyAndTermsCheckbox:{displayName:"PrivacyAndTermsCheckbox",propTypes:{children:prop_types_1.default.func}},QuantitySelector:{displayName:"QuantitySelector",propTypes:{children:prop_types_1.default.func,min:prop_types_1.default.number,max:prop_types_1.default.number,value:prop_types_1.default.string,skuCode:prop_types_1.default.string,disabled:prop_types_1.default.bool},defaultProps:{min:1}},SaveAddressesButton:{displayName:"SaveAddressesButton",propTypes:{children:prop_types_1.default.func,label:prop_types_1.default.oneOfType([prop_types_1.default.string,prop_types_1.default.element]),onClick:prop_types_1.default.func,disabled:prop_types_1.default.bool},defaultProps:{label:"Continue to delivery"}},Shipment:{permittedChildren:["LineItemsContainer","LineItem","ShippingMethod","ReactNode"],displayName:"Shipment",propTypes:{children:childrenTypes_1.default.isRequired}},ShipmentField:{displayName:"ShipmentField",propTypes:{children:prop_types_1.default.func,name:prop_types_1.default.oneOf(["cost_amount_cents","cost_amount_float","currency_code","formatted_cost_amount","number","status","key_number"]).isRequired}},ShipmentsContainer:{displayName:"ShipmentsContainer",permittedChildren:["Shipment","ReactNode"],propTypes:{children:childrenTypes_1.default.isRequired}},ShippingAddressContainer:{permittedChildren:["Address","ReactNode"],propTypes:{children:childrenTypes_1.default.isRequired}},SaveCustomerButton:{displayName:"SaveCustomerButton",propTypes:{children:prop_types_1.default.func,label:prop_types_1.default.oneOfType([prop_types_1.default.string,prop_types_1.default.element]),onClick:prop_types_1.default.func},defaultProps:{label:"Save"}},ShippingAddressForm:{permittedChildren:["AddressInput","ReactNode"],propTypes:{children:childrenTypes_1.default.isRequired}},ShippingAmount:{displayName:"ShippingAmount",propTypes:_typings_1.baseOrderComponentPricePropTypes},ShippingMethod:{permittedChildren:["ShippingMethodName","ShippingMethodPrice","ShippingMethodRadioButton","DeliveryLeadTime","ReactNode"],displayName:"ShippingMethod",propTypes:{children:childrenTypes_1.default.isRequired,readonly:prop_types_1.default.bool}},ShippingMethodName:{displayName:"ShippingMethodName",propTypes:{children:prop_types_1.default.func}},ShippingMethodRadioButton:{displayName:"ShippingMethodRadioButton",propTypes:{children:prop_types_1.default.func}},ShippingMethodPrice:{displayName:"ShippingMethodPrice",propTypes:Object.assign(Object.assign({},_typings_1.baseOrderComponentPricePropTypes),{type:prop_types_1.default.oneOf(["amount"])}),defaultProps:{format:"formatted",type:"amount"}},SkuList:{permittedChildren:["AddToCartButton","QuantitySelector","ReactNode"],displayName:"SkuList",propTypes:{children:childrenTypes_1.default.isRequired,id:prop_types_1.default.string.isRequired}},SkuListsContainer:{permittedChildren:["SkuList","ReactNode"],displayName:"SkuListsContainer",propTypes:{children:childrenTypes_1.default.isRequired}},SkuOption:{permittedChildren:["SkuOptionInput","ReactNode"],displayName:"SkuOption",propTypes:{children:childrenTypes_1.default.isRequired,id:prop_types_1.default.string.isRequired}},SkuOptionInput:{displayName:"SkuOptionInput",propTypes:index_1.BaseInputComponentPropTypes},SkuOptionsContainer:{permittedChildren:["SkuOption","ReactNode"],displayName:"SkuOptionsContainer",propTypes:{children:childrenTypes_1.default.isRequired,skuCode:prop_types_1.default.string}},StockTransfer:{permittedChildren:["StockTransferField","ReactNode"],displayName:"StockTransfer",propTypes:{children:childrenTypes_1.default.isRequired}},StockTransferField:{displayName:"StockTransferField",propTypes:{children:prop_types_1.default.func,type:prop_types_1.default.oneOf(["quantity","sku_code"]).isRequired}},SubmitButton:{displayName:"SubmitButton",propTypes:{children:prop_types_1.default.func,label:prop_types_1.default.oneOfType([prop_types_1.default.string,prop_types_1.default.element])},defaultProps:{label:"Submit"}},SubTotalAmount:{displayName:"SubTotalAmount",propTypes:_typings_1.baseOrderComponentPricePropTypes,defaultProps:{format:"formatted"}},TaxesAmount:{displayName:"TaxesAmount",propTypes:_typings_1.baseOrderComponentPricePropTypes,defaultProps:{format:"formatted"}},TotalAmount:{displayName:"TotalAmount",propTypes:_typings_1.baseOrderComponentPricePropTypes,defaultProps:{format:"formatted"}},VariantsContainer:{permittedChildren:["VariantSelector","ReactNode"],displayName:"VariantsContainer",propTypes:{children:childrenTypes_1.default.isRequired,skuCode:prop_types_1.default.string,filters:prop_types_1.default.object},defaultProps:{skuCode:"",filters:{}}},VariantSelector:{displayName:"VariantSelector",propTypes:{options:prop_types_1.default.arrayOf(prop_types_1.default.shape({label:prop_types_1.default.string.isRequired,code:prop_types_1.default.string.isRequired,lineItem:prop_types_1.default.shape({name:prop_types_1.default.string.isRequired,imageUrl:prop_types_1.default.string})}).isRequired).isRequired,name:prop_types_1.default.string,children:prop_types_1.default.func,type:prop_types_1.default.oneOf(["select","radio"]),loader:prop_types_1.default.element,placeholder:prop_types_1.default.string,skuCode:prop_types_1.default.string},defaultProps:{placeholder:"Select a variant",type:"select"}}};exports.default=components;
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const tslib_1=require("tslib"),prop_types_1=(0,tslib_1.__importDefault)(require("prop-types")),childrenTypes_1=(0,tslib_1.__importDefault)(require("../utils/childrenTypes")),_typings_1=require("../typings/index"),errors_1=require("../typings/errors"),index_1=require("../typings/index"),components={Address:{permittedChildren:["AddressField","ReactNode"],displayName:"Address",propTypes:{children:childrenTypes_1.default.isRequired}},AddressCountrySelector:{displayName:"AddressCountrySelector",propTypes:{children:prop_types_1.default.func,placeholder:prop_types_1.default.shape({label:prop_types_1.default.string.isRequired,value:prop_types_1.default.oneOfType([prop_types_1.default.string,prop_types_1.default.number]).isRequired}),value:prop_types_1.default.string,name:prop_types_1.default.oneOf(["billing_address_country_code","shipping_address_country_code"]).isRequired,required:prop_types_1.default.bool},defaultProps:{required:!0}},AddressStateSelector:{displayName:"AddressStateSelector",propTypes:{children:prop_types_1.default.func,placeholder:prop_types_1.default.shape({label:prop_types_1.default.string.isRequired,value:prop_types_1.default.oneOfType([prop_types_1.default.string,prop_types_1.default.number]).isRequired}),value:prop_types_1.default.string,name:prop_types_1.default.oneOf(["billing_address_state_code","shipping_address_state_code"]).isRequired,required:prop_types_1.default.bool},defaultProps:{required:!0}},AddressField:{displayName:"AddressField",propTypes:{children:prop_types_1.default.func}},AddressInput:{displayName:"AddressInput",propTypes:{children:prop_types_1.default.func,name:prop_types_1.default.oneOf(["billing_address_city","billing_address_company","billing_address_email","billing_address_first_name","billing_address_last_name","billing_address_line_1","billing_address_line_2","billing_address_phone","billing_address_state_code","billing_address_zip_code","billing_address_billing_info","billing_address_save_to_customer_book","shipping_address_city","shipping_address_company","shipping_address_email","shipping_address_first_name","shipping_address_last_name","shipping_address_line_1","shipping_address_line_2","shipping_address_phone","shipping_address_state_code","shipping_address_zip_code","shipping_address_save_to_customer_book"]).isRequired,type:prop_types_1.default.oneOf(["checkbox","date","email","number","tel","text","textarea"]).isRequired,placeholder:prop_types_1.default.string,disabled:prop_types_1.default.bool,required:prop_types_1.default.bool},defaultProps:{required:!0}},AdjustmentAmount:{displayName:"AdjustmentAmount",propTypes:_typings_1.baseOrderComponentPricePropTypes,defaultProps:{format:"formatted"}},AddToCartButton:{displayName:"AddToCartButton",propTypes:{children:prop_types_1.default.func,label:prop_types_1.default.oneOfType([prop_types_1.default.string,prop_types_1.default.element]),skuCode:prop_types_1.default.string,disabled:prop_types_1.default.bool,lineItem:prop_types_1.default.shape({name:prop_types_1.default.string.isRequired,imageUrl:prop_types_1.default.string})},defaultProps:{label:"Add to cart"}},AddressesContainer:{displayName:"AddressesContainer",permittedChildren:["BillingAddressForm","BillingAddressContainer","ShippingAddressForm","ShippingAddressContainer","SaveAddressesButton","ReactNode"],propTypes:{children:childrenTypes_1.default.isRequired,shipToDifferentAddress:prop_types_1.default.bool}},AvailabilityContainer:{displayName:"AvailabilityContainer",permittedChildren:["AvailabilityTemplate","ReactNode"],propTypes:{children:childrenTypes_1.default.isRequired,skuCode:prop_types_1.default.string}},AvailabilityTemplate:{displayName:"AvailabilityTemplate",propTypes:{timeFormat:prop_types_1.default.oneOf(["days","hours"]),showShippingMethodName:prop_types_1.default.bool,children:prop_types_1.default.func},defaultProps:{timeFormat:"days",showShippingMethodName:!1}},BillingAddressContainer:{permittedChildren:["Address","ReactNode"],propTypes:{children:childrenTypes_1.default.isRequired}},BillingAddressForm:{permittedChildren:["AddressInput","ReactNode"],propTypes:{children:childrenTypes_1.default.isRequired}},CheckoutLink:{displayName:"CheckoutLink",propTypes:{children:prop_types_1.default.func,label:prop_types_1.default.string},defaultProps:{label:"Checkout"}},CommerceLayer:{permittedChildren:["OrderContainer","OrderStorage","PricesContainer","GiftCardContainer","ReactNode"],propTypes:{children:childrenTypes_1.default.isRequired,accessToken:prop_types_1.default.string.isRequired,endpoint:prop_types_1.default.string.isRequired}},CustomerContainer:{displayName:"CustomerContainer",permittedChildren:["CustomerInput","SaveCustomerButton","AddressesContainer","PaymentMethodsContainer","ShipmentsContainer","ReactNode"],propTypes:{children:childrenTypes_1.default.isRequired,isGuest:prop_types_1.default.bool}},CustomerInput:{displayName:"CustomerInput",propTypes:{children:prop_types_1.default.func,name:prop_types_1.default.oneOf(["customerEmail"]),type:prop_types_1.default.oneOf(["email"]),placeholder:prop_types_1.default.string,disabled:prop_types_1.default.bool,required:prop_types_1.default.bool,saveOnBlur:prop_types_1.default.bool},defaultProps:{required:!0}},DeliveryLeadTime:{displayName:"DeliveryLeadTime",propTypes:{type:prop_types_1.default.oneOf(["max_days","max_hours","min_days","min_hours"]).isRequired,children:prop_types_1.default.func}},DiscountAmount:{displayName:"DiscountAmount",propTypes:_typings_1.baseOrderComponentPricePropTypes,defaultProps:{format:"formatted"}},Errors:{displayName:"Errors",propTypes:errors_1.ErrorPropTypes,defaultProps:{messages:[],field:"base"}},ExternalFunction:{displayName:"ExternalFunction",permittedChildren:["AddToCartButton","ReactNode"],propTypes:{children:childrenTypes_1.default.isRequired,url:prop_types_1.default.string.isRequired}},GiftCard:{permittedChildren:["GiftCardCurrencySelector","GiftCardInput","Errors","MetadataInput","SubmitButton","ReactNode"],displayName:"GiftCard",propTypes:{children:childrenTypes_1.default.isRequired,onSubmit:prop_types_1.default.func},defaultProps:{onSubmit:void 0}},GiftCardAmount:{displayName:"GiftCardAmount",propTypes:_typings_1.baseOrderComponentPricePropTypes},GiftCardContainer:{permittedChildren:["GiftCard","Errors","ReactNode"],displayName:"GiftCardContainer",propTypes:{children:childrenTypes_1.default.isRequired}},GiftCardCurrencySelector:{displayName:"GiftCardCurrencySelector",propTypes:{children:prop_types_1.default.func,placeholder:prop_types_1.default.shape({value:prop_types_1.default.oneOfType([prop_types_1.default.string,prop_types_1.default.number]).isRequired,label:prop_types_1.default.string.isRequired}),value:prop_types_1.default.string,required:prop_types_1.default.bool},defaultProps:{required:!0}},GiftCardInput:{displayName:"GiftCardInput",propTypes:{type:prop_types_1.default.oneOf(["text","email","number","date","checkbox"]).isRequired,name:prop_types_1.default.oneOf(["balanceCents","balanceMaxCents","singleUse","rechargeable","imageUrl","expiresAt","referenceOrigin","email","firstName","lastName","reference"]).isRequired,children:prop_types_1.default.func,placeholder:prop_types_1.default.string}},GiftCardOrCouponForm:{permittedChildren:["GiftCardOrCouponInput","GiftCardOrCouponSubmit","ReactNode"],propTypes:{children:childrenTypes_1.default.isRequired}},GiftCardOrCouponInput:{displayName:"GiftCardOrCouponInput",propTypes:{children:prop_types_1.default.func,placeholder:prop_types_1.default.string,disabled:prop_types_1.default.bool,required:prop_types_1.default.bool}},GiftCardOrCouponSubmit:{displayName:"GiftCardOrCouponSubmit",propTypes:{children:prop_types_1.default.func,label:prop_types_1.default.oneOfType([prop_types_1.default.string,prop_types_1.default.object])}},GiftCardOrCouponCode:{displayName:"GiftCardOrCouponCode",propTypes:{children:prop_types_1.default.func,type:prop_types_1.default.oneOf(["coupon","gift_card"])}},GiftCardOrCouponRemoveButton:{displayName:"GiftCardOrCouponRemoveButton",propTypes:{children:prop_types_1.default.func,type:prop_types_1.default.oneOf(["coupon","gift_card"]),label:prop_types_1.default.oneOfType([prop_types_1.default.string,prop_types_1.default.object])}},ItemContainer:{permittedChildren:["PricesContainer","VariantsContainer","SkuOptionContainer","QuantitySelector","AddToCartButton","AvailabilityContainer","SkuListsContainer","ReactNode"],displayName:"ItemContainer",propTypes:{children:childrenTypes_1.default.isRequired,skuCode:prop_types_1.default.string,lineItem:prop_types_1.default.shape({name:prop_types_1.default.string.isRequired,imageUrl:prop_types_1.default.string})}},LineItem:{permittedChildren:["AvailabilityContainer","LineItemImage","LineItemName","LineItemOptions","LineItemQuantity","LineItemAmount","LineItemRemoveLink","StockTransfer","Errors","ReactNode"],displayName:"LineItem",propTypes:{children:childrenTypes_1.default.isRequired,type:prop_types_1.default.oneOf(["skus","gift_cards","shipments","payment_methods","promotions","adjustments","bundles"])},defaultProps:{type:"skus"}},LineItemAmount:{displayName:"LineItemAmount",propTypes:Object.assign(Object.assign({},_typings_1.baseOrderComponentPricePropTypes),{type:prop_types_1.default.oneOf(["total","unit","option"])}),defaultProps:{format:"formatted",type:"total"}},LineItemImage:{displayName:"LineItemImage",propTypes:{width:prop_types_1.default.number,children:prop_types_1.default.func}},LineItemName:{displayName:"LineItemName",propTypes:{children:prop_types_1.default.func}},LineItemCode:{displayName:"LineItemCode",propTypes:{children:prop_types_1.default.func}},LineItemOption:{displayName:"LineItemOption",propTypes:{name:prop_types_1.default.string,children:prop_types_1.default.func,valueClassName:prop_types_1.default.string,className:prop_types_1.default.string,id:prop_types_1.default.string,style:prop_types_1.default.object}},LineItemOptions:{permittedChildren:["LineItemOption","ReactNode"],displayName:"LineItemOptions",propTypes:{children:childrenTypes_1.default.isRequired,title:prop_types_1.default.string,showName:prop_types_1.default.bool,skuOptionId:prop_types_1.default.string}},LineItemQuantity:{displayName:"LineItemQuantity",propTypes:{children:prop_types_1.default.func,max:prop_types_1.default.number,disabled:prop_types_1.default.bool,readonly:prop_types_1.default.bool},defaultProps:{max:50}},LineItemRemoveLink:{displayName:"LineItemRemoveLink",propTypes:{children:prop_types_1.default.func,label:prop_types_1.default.string},defaultProps:{label:"Remove"}},LineItemsContainer:{permittedChildren:["LineItemsCount","LineItemsEmpty","LineItem","ReactNode"],displayName:"LineItemsContainer",propTypes:{children:childrenTypes_1.default.isRequired,filters:prop_types_1.default.object,loader:_typings_1.PTLoader},defaultProps:{filters:{},loader:"Loading..."}},LineItemsCount:{displayName:"LineItemsCount",propTypes:{children:prop_types_1.default.func,id:prop_types_1.default.string,className:prop_types_1.default.string,name:prop_types_1.default.string,style:prop_types_1.default.object}},LineItemsEmpty:{displayName:"LineItemsEmpty",propTypes:{children:prop_types_1.default.func,id:prop_types_1.default.string,className:prop_types_1.default.string,name:prop_types_1.default.string,style:prop_types_1.default.object,text:prop_types_1.default.string}},MetadataInput:{displayName:"MetadataInput",propTypes:index_1.BaseInputComponentPropTypes},OrderContainer:{permittedChildren:["AddressesContainer","CustomerContainer","ItemContainer","LineItemsContainer","SubTotalAmount","DiscountAmount","AdjustmentAmount","ShippingAmount","TaxesAmount","GiftCardAmount","TotalAmount","CheckoutLink","GiftCardContainer","ShipmentsContainer","PaymentMethodsContainer","PaymentMethodAmount","GiftCardOrCouponForm","GiftCardOrCouponCode","GiftCardOrCouponRemoveButton","Errors","OrderNumber","ReactNode"],displayName:"OrderContainer",propTypes:{children:childrenTypes_1.default.isRequired,orderId:prop_types_1.default.string,metadata:_typings_1.BMObject,attributes:prop_types_1.default.object},defaultProps:{metadata:{}}},OrderNumber:{displayName:"OrderNumber",propTypes:{className:prop_types_1.default.string},defaultProps:{format:"formatted"}},OrderStorage:{permittedChildren:["OrderContainer","ReactNode"],displayName:"OrderStorage",propTypes:{children:childrenTypes_1.default.isRequired,clearWhenPlaced:prop_types_1.default.bool,persistKey:prop_types_1.default.string.isRequired}},PaymentMethod:{permittedChildren:["PaymentMethodName","PaymentMethodRadioButton","PaymentMethodPrice","PaymentSource","ReactNode","Errors"],displayName:"PaymentMethod",propTypes:{children:childrenTypes_1.default.isRequired}},PaymentMethodAmount:{displayName:"PaymentMethodAmount",propTypes:_typings_1.baseOrderComponentPricePropTypes,defaultProps:{format:"formatted"}},PaymentMethodName:{displayName:"PaymentMethodName",propTypes:{children:prop_types_1.default.func}},PaymentMethodPrice:{displayName:"PaymentMethodPrice",propTypes:Object.assign(Object.assign({},_typings_1.baseOrderComponentPricePropTypes),{type:prop_types_1.default.oneOf(["amount"])})},PaymentMethodRadioButton:{displayName:"PaymentMethodRadioButton",propTypes:{children:prop_types_1.default.func}},PaymentMethodsContainer:{displayName:"PaymentMethodsContainer",permittedChildren:["PaymentSource","ReactNode","PlaceOrderContainer"],propTypes:{children:childrenTypes_1.default.isRequired}},PaymentSource:{displayName:"PaymentSource",permittedChildren:["PaymentSourceBrandIcon","PaymentSourceBrandName","PaymentSourceEditButton","PaymentSourceDetail","ReactNode"],propTypes:{children:childrenTypes_1.default,readonly:prop_types_1.default.bool}},PaymentSourceBrandIcon:{displayName:"PaymentSourceBrandIcon",propTypes:{children:prop_types_1.default.func,width:prop_types_1.default.number,height:prop_types_1.default.number,src:prop_types_1.default.string,className:prop_types_1.default.string}},PaymentSourceBrandName:{displayName:"PaymentSourceBrandName",propTypes:{children:prop_types_1.default.func,label:prop_types_1.default.string}},PaymentSourceEditButton:{displayName:"PaymentSourceEditButton",propTypes:{children:prop_types_1.default.func,label:prop_types_1.default.oneOfType([prop_types_1.default.string,prop_types_1.default.element])}},PaymentSourceDetail:{displayName:"PaymentSourceDetail",propTypes:{type:prop_types_1.default.oneOf(["last4","exp_year","exp_month"]).isRequired}},PlaceOrderButton:{displayName:"PlaceOrderButton",propTypes:{children:prop_types_1.default.func,label:prop_types_1.default.oneOfType([prop_types_1.default.string,prop_types_1.default.element])},defaultProps:{label:"Place order"}},PlaceOrderContainer:{displayName:"PlaceOrderContainer",permittedChildren:["PaymentMethod","PlaceOrderButton","PrivacyAndTermsCheckbox","ReactNode"],propTypes:{children:childrenTypes_1.default.isRequired}},Price:{displayName:"Price",propTypes:{children:prop_types_1.default.func,compareClassName:prop_types_1.default.string,skuCode:prop_types_1.default.string,showCompare:prop_types_1.default.bool},defaultProps:{skuCode:""}},PricesContainer:{permittedChildren:["Price","ReactNode"],displayName:"PricesContainer",propTypes:{children:childrenTypes_1.default.isRequired,skuCode:prop_types_1.default.string,loader:_typings_1.PTLoader,perPage:prop_types_1.default.number,filters:prop_types_1.default.object},defaultProps:{perPage:10,filters:{},loader:"Loading...",skuCode:""}},PrivacyAndTermsCheckbox:{displayName:"PrivacyAndTermsCheckbox",propTypes:{children:prop_types_1.default.func}},QuantitySelector:{displayName:"QuantitySelector",propTypes:{children:prop_types_1.default.func,min:prop_types_1.default.number,max:prop_types_1.default.number,value:prop_types_1.default.string,skuCode:prop_types_1.default.string,disabled:prop_types_1.default.bool},defaultProps:{min:1}},SaveAddressesButton:{displayName:"SaveAddressesButton",propTypes:{children:prop_types_1.default.func,label:prop_types_1.default.oneOfType([prop_types_1.default.string,prop_types_1.default.element]),onClick:prop_types_1.default.func,disabled:prop_types_1.default.bool},defaultProps:{label:"Continue to delivery"}},Shipment:{permittedChildren:["LineItemsContainer","LineItem","ShippingMethod","ReactNode"],displayName:"Shipment",propTypes:{children:childrenTypes_1.default.isRequired}},ShipmentField:{displayName:"ShipmentField",propTypes:{children:prop_types_1.default.func,name:prop_types_1.default.oneOf(["cost_amount_cents","cost_amount_float","currency_code","formatted_cost_amount","number","status","key_number"]).isRequired}},ShipmentsContainer:{displayName:"ShipmentsContainer",permittedChildren:["Shipment","ReactNode"],propTypes:{children:childrenTypes_1.default.isRequired}},ShippingAddressContainer:{permittedChildren:["Address","ReactNode"],propTypes:{children:childrenTypes_1.default.isRequired}},SaveCustomerButton:{displayName:"SaveCustomerButton",propTypes:{children:prop_types_1.default.func,label:prop_types_1.default.oneOfType([prop_types_1.default.string,prop_types_1.default.element]),onClick:prop_types_1.default.func},defaultProps:{label:"Save"}},ShippingAddressForm:{permittedChildren:["AddressInput","ReactNode"],propTypes:{children:childrenTypes_1.default.isRequired}},ShippingAmount:{displayName:"ShippingAmount",propTypes:_typings_1.baseOrderComponentPricePropTypes},ShippingMethod:{permittedChildren:["ShippingMethodName","ShippingMethodPrice","ShippingMethodRadioButton","DeliveryLeadTime","ReactNode"],displayName:"ShippingMethod",propTypes:{children:childrenTypes_1.default.isRequired,readonly:prop_types_1.default.bool}},ShippingMethodName:{displayName:"ShippingMethodName",propTypes:{children:prop_types_1.default.func}},ShippingMethodRadioButton:{displayName:"ShippingMethodRadioButton",propTypes:{children:prop_types_1.default.func}},ShippingMethodPrice:{displayName:"ShippingMethodPrice",propTypes:Object.assign(Object.assign({},_typings_1.baseOrderComponentPricePropTypes),{type:prop_types_1.default.oneOf(["amount"])}),defaultProps:{format:"formatted",type:"amount"}},SkuList:{permittedChildren:["AddToCartButton","QuantitySelector","ReactNode"],displayName:"SkuList",propTypes:{children:childrenTypes_1.default.isRequired,id:prop_types_1.default.string.isRequired}},SkuListsContainer:{permittedChildren:["SkuList","ReactNode"],displayName:"SkuListsContainer",propTypes:{children:childrenTypes_1.default.isRequired}},SkuOption:{permittedChildren:["SkuOptionInput","ReactNode"],displayName:"SkuOption",propTypes:{children:childrenTypes_1.default.isRequired,id:prop_types_1.default.string.isRequired}},SkuOptionInput:{displayName:"SkuOptionInput",propTypes:index_1.BaseInputComponentPropTypes},SkuOptionsContainer:{permittedChildren:["SkuOption","ReactNode"],displayName:"SkuOptionsContainer",propTypes:{children:childrenTypes_1.default.isRequired,skuCode:prop_types_1.default.string}},StockTransfer:{permittedChildren:["StockTransferField","ReactNode"],displayName:"StockTransfer",propTypes:{children:childrenTypes_1.default.isRequired}},StockTransferField:{displayName:"StockTransferField",propTypes:{children:prop_types_1.default.func,type:prop_types_1.default.oneOf(["quantity","sku_code"]).isRequired}},SubmitButton:{displayName:"SubmitButton",propTypes:{children:prop_types_1.default.func,label:prop_types_1.default.oneOfType([prop_types_1.default.string,prop_types_1.default.element])},defaultProps:{label:"Submit"}},SubTotalAmount:{displayName:"SubTotalAmount",propTypes:_typings_1.baseOrderComponentPricePropTypes,defaultProps:{format:"formatted"}},TaxesAmount:{displayName:"TaxesAmount",propTypes:_typings_1.baseOrderComponentPricePropTypes,defaultProps:{format:"formatted"}},TotalAmount:{displayName:"TotalAmount",propTypes:_typings_1.baseOrderComponentPricePropTypes,defaultProps:{format:"formatted"}},VariantsContainer:{permittedChildren:["VariantSelector","ReactNode"],displayName:"VariantsContainer",propTypes:{children:childrenTypes_1.default.isRequired,skuCode:prop_types_1.default.string,filters:prop_types_1.default.object},defaultProps:{skuCode:"",filters:{}}},VariantSelector:{displayName:"VariantSelector",propTypes:{options:prop_types_1.default.arrayOf(prop_types_1.default.shape({label:prop_types_1.default.string.isRequired,code:prop_types_1.default.string.isRequired,lineItem:prop_types_1.default.shape({name:prop_types_1.default.string.isRequired,imageUrl:prop_types_1.default.string})}).isRequired).isRequired,name:prop_types_1.default.string,children:prop_types_1.default.func,type:prop_types_1.default.oneOf(["select","radio"]),loader:prop_types_1.default.element,placeholder:prop_types_1.default.string,skuCode:prop_types_1.default.string},defaultProps:{placeholder:"Select a variant",type:"select"}}};exports.default=components;
|
|
@@ -2,6 +2,7 @@ import { BaseError } from '../typings/errors';
|
|
|
2
2
|
import { Sku } from '@commercelayer/sdk';
|
|
3
3
|
import { CommerceLayerConfig } from '../context/CommerceLayerContext';
|
|
4
4
|
import { Dispatch } from 'react';
|
|
5
|
+
import { Items } from './ItemReducer';
|
|
5
6
|
export declare type DeliveryLeadTime = {
|
|
6
7
|
shipping_method: {
|
|
7
8
|
name: string;
|
|
@@ -40,13 +41,12 @@ export interface AvailabilityAction {
|
|
|
40
41
|
payload: AvailabilityPayload;
|
|
41
42
|
}
|
|
42
43
|
export declare const availabilityInitialState: AvailabilityState;
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
}
|
|
44
|
+
declare type GetAvailability = (args: {
|
|
45
|
+
skuCode: string;
|
|
46
|
+
dispatch: Dispatch<AvailabilityAction>;
|
|
47
|
+
config: CommerceLayerConfig;
|
|
48
|
+
setItem?: (item: Items) => void;
|
|
49
|
+
}) => void;
|
|
50
50
|
export declare const getAvailability: GetAvailability;
|
|
51
51
|
export declare type AvailabilityActionType = 'setAvailability' | 'setErrors';
|
|
52
52
|
declare const availabilityReducer: (state: AvailabilityState, reducer: AvailabilityAction) => AvailabilityState;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.getAvailability=exports.availabilityInitialState=void 0;const tslib_1=require("tslib"),baseReducer_1=(0,tslib_1.__importDefault)(require("../utils/baseReducer")),getSdk_1=(0,tslib_1.__importDefault)(require("../utils/getSdk"));exports.availabilityInitialState={quantity:null,min:{days:0,hours:0},max:{days:0,hours:0},errors:[]};const getAvailability=async({skuCode,dispatch,config})=>{var _a;const sdk=(0,getSdk_1.default)(config);try{const[sku]=await sdk.skus.list({fields:{skus:["id"]},filters:{code_in:skuCode}}),skuInventory=await sdk.skus.retrieve(sku.id,{fields:{skus:["inventory"]}}),[level]=((_a=skuInventory.inventory)===null||_a===void 0?void 0:_a.levels)||[],[delivery]=(level==null?void 0:level.delivery_lead_times)||[];dispatch({type:"setAvailability",payload:Object.assign(Object.assign({},delivery),{quantity:skuInventory.inventory.quantity})})}catch(error){console.error("Get SKU availability",error)}};exports.getAvailability=getAvailability;const typeAction=["setAvailability","setErrors"],availabilityReducer=(state,reducer)=>(0,baseReducer_1.default)(state,reducer,typeAction);exports.default=availabilityReducer;
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.getAvailability=exports.availabilityInitialState=void 0;const tslib_1=require("tslib"),baseReducer_1=(0,tslib_1.__importDefault)(require("../utils/baseReducer")),getSdk_1=(0,tslib_1.__importDefault)(require("../utils/getSdk"));exports.availabilityInitialState={quantity:null,min:{days:0,hours:0},max:{days:0,hours:0},errors:[]};const getAvailability=async({skuCode,dispatch,config,setItem})=>{var _a;const sdk=(0,getSdk_1.default)(config);try{const[sku]=await sdk.skus.list({fields:{skus:["id"]},filters:{code_in:skuCode}}),skuInventory=await sdk.skus.retrieve(sku.id,{fields:{skus:["inventory"]}}),[level]=((_a=skuInventory.inventory)===null||_a===void 0?void 0:_a.levels)||[],[delivery]=(level==null?void 0:level.delivery_lead_times)||[];dispatch({type:"setAvailability",payload:Object.assign(Object.assign({},delivery),{quantity:skuInventory.inventory.quantity})}),setItem&&setItem({[skuCode]:skuInventory})}catch(error){console.error("Get SKU availability",error)}};exports.getAvailability=getAvailability;const typeAction=["setAvailability","setErrors"],availabilityReducer=(state,reducer)=>(0,baseReducer_1.default)(state,reducer,typeAction);exports.default=availabilityReducer;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.setPlaceOrder=exports.placeOrderPermitted=exports.setPlaceOrderErrors=exports.placeOrderInitialState=void 0;const tslib_1=require("tslib"),baseReducer_1=(0,tslib_1.__importDefault)(require("../utils/baseReducer")),isEmpty_1=(0,tslib_1.__importDefault)(require("lodash/isEmpty")),shipments_1=require("../utils/shipments"),customerOrderOptions_1=require("../utils/customerOrderOptions"),getSdk_1=(0,tslib_1.__importDefault)(require("../utils/getSdk")),getErrors_1=(0,tslib_1.__importDefault)(require("../utils/getErrors"));exports.placeOrderInitialState={errors:[],isPermitted:!1};const setPlaceOrderErrors=(errors,dispatch)=>{dispatch&&dispatch({type:"setErrors",payload:{errors}})};exports.setPlaceOrderErrors=setPlaceOrderErrors;const placeOrderPermitted=async({config,order,dispatch,options})=>{var _a;if(order&&config){let isPermitted=!0;order.privacy_url&&order.terms_url&&(isPermitted=localStorage.getItem("privacy-terms")==="true");const billingAddress=order.billing_address;(0,isEmpty_1.default)(billingAddress)&&(isPermitted=!1);const shippingAddress=order.shipping_address;(0,isEmpty_1.default)(shippingAddress)&&(isPermitted=!1);const shipments=order.shipments,shipment=shipments&&(0,shipments_1.shipmentsFilled)(shipments);!(0,isEmpty_1.default)(shipments)&&!shipment&&(isPermitted=!1);const paymentMethod=order.payment_method,paymentSource=order.payment_source;order.total_amount_with_taxes_cents!==0&&(0,isEmpty_1.default)(paymentMethod==null?void 0:paymentMethod.id)&&(isPermitted=!1),dispatch({type:"setPlaceOrderPermitted",payload:{isPermitted,paymentType:paymentMethod==null?void 0:paymentMethod.payment_source_type,paymentSecret:paymentSource==null?void 0:paymentSource.client_secret,paymentId:(_a=paymentSource==null?void 0:paymentSource.options)===null||_a===void 0?void 0:_a.id,paymentSource,options}})}};exports.placeOrderPermitted=placeOrderPermitted;const setPlaceOrder=async({state,order,config,setOrderErrors,paymentSource})=>{const response={placed:!1};try{if(state&&order&&config){const sdk=(0,getSdk_1.default)(config),{options,paymentType}=state;if(paymentType==="paypal_payments"&&paymentSource){if(!(options==null?void 0:options.paypalPayerId)&&(paymentSource==null?void 0:paymentSource.approval_url))return window.location.href=paymentSource==null?void 0:paymentSource.approval_url,response;await sdk.paypal_payments.update({id:paymentSource.id,paypal_payer_id:options==null?void 0:options.paypalPayerId})}const updateAttributes={id:order.id,_place:!0};switch((0,customerOrderOptions_1.saveBillingAddress)()&&await sdk.orders.update({id:order.id,_save_billing_address_to_customer_address_book:!0}),(0,customerOrderOptions_1.saveShippingAddress)()&&await sdk.orders.update({id:order.id,_save_shipping_address_to_customer_address_book:!0}),paymentType){case"braintree_payments":return(0,customerOrderOptions_1.saveToWallet)()&&await sdk.orders.update({id:order.id,_save_payment_source_to_customer_wallet:!0}),await sdk.orders.update(updateAttributes),setOrderErrors&&setOrderErrors([]),{placed:!0};default:return(0,customerOrderOptions_1.saveToWallet)()&&await sdk.orders.update({id:order.id,_save_payment_source_to_customer_wallet:!0}),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.setPlaceOrder=exports.placeOrderPermitted=exports.setPlaceOrderErrors=exports.placeOrderInitialState=void 0;const tslib_1=require("tslib"),baseReducer_1=(0,tslib_1.__importDefault)(require("../utils/baseReducer")),isEmpty_1=(0,tslib_1.__importDefault)(require("lodash/isEmpty")),shipments_1=require("../utils/shipments"),customerOrderOptions_1=require("../utils/customerOrderOptions"),getSdk_1=(0,tslib_1.__importDefault)(require("../utils/getSdk")),getErrors_1=(0,tslib_1.__importDefault)(require("../utils/getErrors"));exports.placeOrderInitialState={errors:[],isPermitted:!1};const setPlaceOrderErrors=(errors,dispatch)=>{dispatch&&dispatch({type:"setErrors",payload:{errors}})};exports.setPlaceOrderErrors=setPlaceOrderErrors;const placeOrderPermitted=async({config,order,dispatch,options})=>{var _a;if(order&&config){let isPermitted=!0;order.privacy_url&&order.terms_url&&(isPermitted=localStorage.getItem("privacy-terms")==="true");const billingAddress=order.billing_address;(0,isEmpty_1.default)(billingAddress)&&(isPermitted=!1);const shippingAddress=order.shipping_address;(0,isEmpty_1.default)(shippingAddress)&&(isPermitted=!1);const shipments=order.shipments,shipment=shipments&&(0,shipments_1.shipmentsFilled)(shipments);!(0,isEmpty_1.default)(shipments)&&!shipment&&(isPermitted=!1);const paymentMethod=order.payment_method,paymentSource=order.payment_source;order.total_amount_with_taxes_cents!==0&&(0,isEmpty_1.default)(paymentMethod==null?void 0:paymentMethod.id)&&(isPermitted=!1),dispatch({type:"setPlaceOrderPermitted",payload:{isPermitted,paymentType:paymentMethod==null?void 0:paymentMethod.payment_source_type,paymentSecret:paymentSource==null?void 0:paymentSource.client_secret,paymentId:(_a=paymentSource==null?void 0:paymentSource.options)===null||_a===void 0?void 0:_a.id,paymentSource,options}})}};exports.placeOrderPermitted=placeOrderPermitted;const setPlaceOrder=async({state,order,config,setOrderErrors,paymentSource})=>{const response={placed:!1};try{if(state&&order&&config){const sdk=(0,getSdk_1.default)(config),{options,paymentType}=state;if(paymentType==="paypal_payments"&&paymentSource){if(!(options==null?void 0:options.paypalPayerId)&&(paymentSource==null?void 0:paymentSource.approval_url))return window.location.href=paymentSource==null?void 0:paymentSource.approval_url,response;await sdk.paypal_payments.update({id:paymentSource.id,paypal_payer_id:options==null?void 0:options.paypalPayerId})}const updateAttributes={id:order.id,_place:!0};switch((0,customerOrderOptions_1.saveBillingAddress)()&&await sdk.orders.update({id:order.id,_save_billing_address_to_customer_address_book:!0}),(0,customerOrderOptions_1.saveShippingAddress)()&&await sdk.orders.update({id:order.id,_save_shipping_address_to_customer_address_book:!0}),paymentType){case"braintree_payments":return(0,customerOrderOptions_1.saveToWallet)()&&await sdk.orders.update({id:order.id,_save_payment_source_to_customer_wallet:!0}),await sdk.orders.update(updateAttributes),setOrderErrors&&setOrderErrors([]),{placed:!0};default:return await sdk.orders.update(updateAttributes),(0,customerOrderOptions_1.saveToWallet)()&&await sdk.orders.update({id:order.id,_save_payment_source_to_customer_wallet:!0}),setOrderErrors&&setOrderErrors([]),{placed:!0}}}return response}catch(error){const errors=(0,getErrors_1.default)(error,"orders");return setOrderErrors&&setOrderErrors(errors),Object.assign(Object.assign({},response),{errors})}};exports.setPlaceOrder=setPlaceOrder;const type=["setErrors","setPlaceOrderPermitted"],placeOrderReducer=(state,reducer)=>(0,baseReducer_1.default)(state,reducer,type);exports.default=placeOrderReducer;
|
|
@@ -1,6 +1,12 @@
|
|
|
1
1
|
import { LineItem } from '@commercelayer/sdk';
|
|
2
|
+
import { LineItemType } from '../typings/index';
|
|
2
3
|
export interface GetLineItemsCountInterface {
|
|
3
|
-
(
|
|
4
|
+
(args: {
|
|
5
|
+
lineItems: LineItem[];
|
|
6
|
+
quantity?: number;
|
|
7
|
+
typeAccepted?: TypeAccepted[];
|
|
8
|
+
}): number;
|
|
4
9
|
}
|
|
10
|
+
export declare type TypeAccepted = Extract<LineItemType, 'skus' | 'gift_cards' | 'bundles' | 'adjustments'>;
|
|
5
11
|
declare const getLineItemsCount: GetLineItemsCountInterface;
|
|
6
12
|
export default getLineItemsCount;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const getLineItemsCount=(lineItems,quantity=0
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const getLineItemsCount=({lineItems,quantity=0,typeAccepted=["skus","gift_cards","bundles","adjustments"]})=>(lineItems.filter(l=>l.item_type&&typeAccepted.includes(l.item_type)).forEach(l=>{l.quantity&&(quantity+=l.quantity)}),quantity);exports.default=getLineItemsCount;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__rest}from"tslib";import{jsx as _jsx}from"react/jsx-runtime";import{useContext}from"react";import Parent from"./utils/Parent";import OrderContext from"../context/OrderContext";import{isEmpty,has}from"lodash";import ItemContext from"../context/ItemContext";import getCurrentItemKey from"../utils/getCurrentItemKey";import components from"../config/components";import SkuListsContext from"../context/SkuListsContext";import ExternalFunctionContext from"../context/ExternalFunctionContext";import isFunction from"lodash/isFunction";const propTypes=components.AddToCartButton.propTypes,defaultProps=components.AddToCartButton.defaultProps,displayName=components.AddToCartButton.displayName,AddToCartButton=props=>{var _a,_b,_c;const{label="Add to cart",children,skuCode,bundleCode,disabled,skuListId,lineItem}=props,p=__rest(props,["label","children","skuCode","bundleCode","disabled","skuListId","lineItem"]),{addToCart,orderId,getOrder,setOrderErrors}=useContext(OrderContext),{url,callExternalFunction}=useContext(ExternalFunctionContext),{item,items,quantity,option,prices,lineItems,lineItem:lineItemContext,skuCode:itemSkuCode}=useContext(ItemContext),{skuLists}=useContext(SkuListsContext),sCode=!isEmpty(items)&&skuCode?(_a=items[skuCode])===null||_a===void 0?void 0:_a.code:skuCode||getCurrentItemKey(item)||itemSkuCode,availabilityQuantity=(
|
|
1
|
+
import{__rest}from"tslib";import{jsx as _jsx}from"react/jsx-runtime";import{useContext}from"react";import Parent from"./utils/Parent";import OrderContext from"../context/OrderContext";import{isEmpty,has}from"lodash";import ItemContext from"../context/ItemContext";import getCurrentItemKey from"../utils/getCurrentItemKey";import components from"../config/components";import SkuListsContext from"../context/SkuListsContext";import ExternalFunctionContext from"../context/ExternalFunctionContext";import isFunction from"lodash/isFunction";const propTypes=components.AddToCartButton.propTypes,defaultProps=components.AddToCartButton.defaultProps,displayName=components.AddToCartButton.displayName,AddToCartButton=props=>{var _a,_b,_c;const{label="Add to cart",children,skuCode,bundleCode,disabled,skuListId,lineItem}=props,p=__rest(props,["label","children","skuCode","bundleCode","disabled","skuListId","lineItem"]),{addToCart,orderId,getOrder,setOrderErrors}=useContext(OrderContext),{url,callExternalFunction}=useContext(ExternalFunctionContext),{item,items,quantity,option,prices,lineItems,lineItem:lineItemContext,skuCode:itemSkuCode}=useContext(ItemContext),{skuLists}=useContext(SkuListsContext),sCode=!isEmpty(items)&&skuCode?(_a=items[skuCode])===null||_a===void 0?void 0:_a.code:skuCode||getCurrentItemKey(item)||itemSkuCode,availabilityQuantity=(_c=(_b=item[sCode])===null||_b===void 0?void 0:_b.inventory)===null||_c===void 0?void 0:_c.quantity,handleClick=()=>{var _a2,_b2;const qty=quantity[sCode],opt=option[sCode],customLineItem=isEmpty(lineItem||lineItemContext)?lineItems[sCode]:lineItem||lineItemContext;if(!isEmpty(skuLists)&&skuListId&&url){const slQty=quantity[skuListId]||1;if(has(skuLists,skuListId)){const lineItems2=skuLists&&skuLists[skuListId].map(skuCode2=>({skuCode:skuCode2,quantity:slQty,_update_quantity:1}));return callExternalFunction({url,data:{resourceType:"orders",inputs:[{id:orderId,lineItems:lineItems2}]}}).then(res=>(getOrder&&orderId&&getOrder(orderId),res)).catch(({response})=>(setOrderErrors&&setOrderErrors(response.data),response))}}return url?callExternalFunction({url,data:{bundleCode,skuCode:sCode,skuId:(_b2=item[sCode])===null||_b2===void 0?void 0:_b2.id,quantity:qty,option:opt,lineItem:customLineItem}}).then(res=>(getOrder&&orderId&&getOrder(orderId),res)).catch(({response})=>(setOrderErrors&&setOrderErrors(response.data),response)):addToCart&&addToCart({bundleCode,skuCode:sCode,skuId:(_a2=item[sCode])===null||_a2===void 0?void 0:_a2.id,quantity:qty,option:opt,lineItem:customLineItem})};console.log("sCode",sCode,availabilityQuantity);const autoDisabled=!isEmpty(skuLists)||skuListId?!1:disabled||!prices[sCode]||!sCode||availabilityQuantity===0,parentProps=Object.assign({handleClick,disabled:disabled||autoDisabled,label},props);return children?_jsx(Parent,Object.assign({},parentProps,{children}),void 0):_jsx("button",Object.assign({},p,{disabled:autoDisabled,onClick:handleClick},{children:isFunction(label)?label():label}),void 0)};AddToCartButton.propTypes=propTypes,AddToCartButton.defaultProps=defaultProps,AddToCartButton.displayName=displayName;export default AddToCartButton;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{jsx as _jsx}from"react/jsx-runtime";import BaseOrderPrice from"./utils/BaseOrderPrice";import components from"../config/components";const propTypes=components.AdjustmentAmount.propTypes,defaultProps=components.AdjustmentAmount.defaultProps,displayName=components.AdjustmentAmount.displayName,AdjustmentAmount=props=>_jsx(BaseOrderPrice,Object.assign({base:"amount",type:"adjustment"},props),void 0);AdjustmentAmount.propTypes=propTypes,AdjustmentAmount.defaultProps=defaultProps,AdjustmentAmount.displayName=displayName;export default AdjustmentAmount;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as _jsx}from"react/jsx-runtime";import{useContext,useReducer,useEffect}from"react";import availabilityReducer,{availabilityInitialState,getAvailability}from"../reducers/AvailabilityReducer";import AvailabilityContext from"../context/AvailabilityContext";import{isEmpty}from"lodash";import ItemContext from"../context/ItemContext";import getCurrentItemKey from"../utils/getCurrentItemKey";import components from"../config/components";import CommerceLayerContext from"../context/CommerceLayerContext";import LineItemChildrenContext from"../context/LineItemChildrenContext";const propTypes=components.AvailabilityContainer.propTypes,displayName=components.AvailabilityContainer.displayName,AvailabilityContainer=props=>{const{children,skuCode}=props,{item,skuCode:itemSkuCode}=useContext(ItemContext),{lineItem}=useContext(LineItemChildrenContext),config=useContext(CommerceLayerContext),[state,dispatch]=useReducer(availabilityReducer,availabilityInitialState);return useEffect(()=>{var _a,_b,_c;const sCode=skuCode||getCurrentItemKey(item)||itemSkuCode||(lineItem==null?void 0:lineItem.sku_code);if(sCode){const[level]=((_b=(_a=item[sCode])===null||_a===void 0?void 0:_a.inventory)===null||_b===void 0?void 0:_b.levels)||{quantity:null,delivery_lead_times:[]};if(!isEmpty(level)&&((_c=level==null?void 0:level.delivery_lead_times)===null||_c===void 0?void 0:_c.length)>0){const[delivery]=level==null?void 0:level.delivery_lead_times;dispatch({type:"setAvailability",payload:Object.assign(Object.assign({},delivery),{quantity:level==null?void 0:level.quantity})})}else config.accessToken&&getAvailability({skuCode:sCode,config,dispatch})}return()=>{dispatch({type:"setAvailability",payload:{}})}},[config.accessToken,item,itemSkuCode]),_jsx(AvailabilityContext.Provider,Object.assign({value:Object.assign({},state)},{children}),void 0)};AvailabilityContainer.propTypes=propTypes,AvailabilityContainer.displayName=displayName;export default AvailabilityContainer;
|
|
1
|
+
import{jsx as _jsx}from"react/jsx-runtime";import{useContext,useReducer,useEffect}from"react";import availabilityReducer,{availabilityInitialState,getAvailability}from"../reducers/AvailabilityReducer";import AvailabilityContext from"../context/AvailabilityContext";import{isEmpty}from"lodash";import ItemContext from"../context/ItemContext";import getCurrentItemKey from"../utils/getCurrentItemKey";import components from"../config/components";import CommerceLayerContext from"../context/CommerceLayerContext";import LineItemChildrenContext from"../context/LineItemChildrenContext";const propTypes=components.AvailabilityContainer.propTypes,displayName=components.AvailabilityContainer.displayName,AvailabilityContainer=props=>{const{children,skuCode}=props,{item,skuCode:itemSkuCode,setItem}=useContext(ItemContext),{lineItem}=useContext(LineItemChildrenContext),config=useContext(CommerceLayerContext),[state,dispatch]=useReducer(availabilityReducer,availabilityInitialState);return useEffect(()=>{var _a,_b,_c;const sCode=skuCode||getCurrentItemKey(item)||itemSkuCode||(lineItem==null?void 0:lineItem.sku_code);if(sCode){const[level]=((_b=(_a=item[sCode])===null||_a===void 0?void 0:_a.inventory)===null||_b===void 0?void 0:_b.levels)||[{quantity:null,delivery_lead_times:[]}];if(!isEmpty(level)&&((_c=level==null?void 0:level.delivery_lead_times)===null||_c===void 0?void 0:_c.length)>0){const[delivery]=level==null?void 0:level.delivery_lead_times;dispatch({type:"setAvailability",payload:Object.assign(Object.assign({},delivery),{quantity:level==null?void 0:level.quantity})})}else config.accessToken&&!(item==null?void 0:item[sCode])&&getAvailability({skuCode:sCode,config,dispatch,setItem})}return()=>{dispatch({type:"setAvailability",payload:{}})}},[config.accessToken,item,itemSkuCode]),_jsx(AvailabilityContext.Provider,Object.assign({value:Object.assign({},state)},{children}),void 0)};AvailabilityContainer.propTypes=propTypes,AvailabilityContainer.displayName=displayName;export default AvailabilityContainer;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{useContext,useEffect,useRef,useState}from"react";import PaymentMethodContext from"../context/PaymentMethodContext";import isEmpty from"lodash/isEmpty";import OrderContext from"../context/OrderContext";import Parent from"./utils/Parent";import{setCustomerOrderParam}from"../utils/localStorage";import promisify from"../utils/promisify";const defaultConfig={styles:{input:{"font-size":"16px",color:"#3A3A3A"},".number":{"font-family":"monospace"},":focus":{color:"blue"},".valid":{color:"green"},".invalid":{color:"red"},"@media screen and (max-width: 700px)":{input:{"font-size":"14px"}}},fields:{number:{label:"Card Number",selector:"#card-number",placeholder:"4111 1111 1111 1111"},cvv:{label:"CVV",selector:"#cvv",placeholder:"123"},expirationDate:{label:"Expiration Date",selector:"#expiration-date",placeholder:"10/2022"}},submitLabel:"Set payment method"},BraintreePayment=({authorization,config,templateCustomerSaveToWallet})=>{var _a,_b,_c;const{fields,styles,containerClassName,cardContainerClassName,fieldsContainerClassName,expDateContainerClassName,fieldLabelClassName,cvvContainerClassName,inputWrapperClassName,cardDetailsContainerClassName}=Object.assign(Object.assign({},defaultConfig),config),[loadBraintree,setLoadBraintree]=useState(!1),{setPaymentSource,paymentSource,setPaymentMethodErrors,currentPaymentMethodType,setPaymentRef}=useContext(PaymentMethodContext),{order}=useContext(OrderContext),ref=useRef(null),handleSubmitForm=async(event,hostedFieldsInstance,threeDSInstance)=>{var _a2,_b2;const savePaymentSourceToCustomerWallet=(_b2=(_a2=event==null?void 0:event.elements)===null||_a2===void 0?void 0:_a2.save_payment_source_to_customer_wallet)===null||_b2===void 0?void 0:_b2.checked;if(savePaymentSourceToCustomerWallet&&setCustomerOrderParam("_save_payment_source_to_customer_wallet",savePaymentSourceToCustomerWallet),hostedFieldsInstance)try{const payload=await promisify(hostedFieldsInstance).then(payload2=>payload2),billingAddress=order==null?void 0:order.billing_address,verifyCardOptions={nonce:payload.nonce,bin:payload.details.bin,amount:order==null?void 0:order.total_amount_with_taxes_float,email:order==null?void 0:order.customer_email,billingAddress:{givenName:billingAddress==null?void 0:billingAddress.first_name,surname:billingAddress==null?void 0:billingAddress.last_name,phoneNumber:billingAddress==null?void 0:billingAddress.phone,streetAddress:billingAddress==null?void 0:billingAddress.line_1,countryCodeAlpha2:billingAddress==null?void 0:billingAddress.country_code,postalCode:billingAddress==null?void 0:billingAddress.zip_code,region:billingAddress==null?void 0:billingAddress.state_code,locality:billingAddress==null?void 0:billingAddress.city},onLookupComplete:(_data,next)=>{next()}},response=await threeDSInstance.verifyCard(verifyCardOptions);return response.rawCardinalSDKVerificationData.Validated&&paymentSource?(paymentSource&&await setPaymentSource({paymentSourceId:paymentSource.id,paymentResource:"braintree_payments",attributes:{
|
|
1
|
+
import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";import{useContext,useEffect,useRef,useState}from"react";import PaymentMethodContext from"../context/PaymentMethodContext";import isEmpty from"lodash/isEmpty";import OrderContext from"../context/OrderContext";import Parent from"./utils/Parent";import{setCustomerOrderParam}from"../utils/localStorage";import promisify from"../utils/promisify";const defaultConfig={styles:{input:{"font-size":"16px",color:"#3A3A3A"},".number":{"font-family":"monospace"},":focus":{color:"blue"},".valid":{color:"green"},".invalid":{color:"red"},"@media screen and (max-width: 700px)":{input:{"font-size":"14px"}}},fields:{number:{label:"Card Number",selector:"#card-number",placeholder:"4111 1111 1111 1111"},cvv:{label:"CVV",selector:"#cvv",placeholder:"123"},expirationDate:{label:"Expiration Date",selector:"#expiration-date",placeholder:"10/2022"}},submitLabel:"Set payment method"},BraintreePayment=({authorization,config,templateCustomerSaveToWallet})=>{var _a,_b,_c;const{fields,styles,containerClassName,cardContainerClassName,fieldsContainerClassName,expDateContainerClassName,fieldLabelClassName,cvvContainerClassName,inputWrapperClassName,cardDetailsContainerClassName}=Object.assign(Object.assign({},defaultConfig),config),[loadBraintree,setLoadBraintree]=useState(!1),{setPaymentSource,paymentSource,setPaymentMethodErrors,currentPaymentMethodType,setPaymentRef}=useContext(PaymentMethodContext),{order}=useContext(OrderContext),ref=useRef(null),handleSubmitForm=async(event,hostedFieldsInstance,threeDSInstance)=>{var _a2,_b2;const savePaymentSourceToCustomerWallet=(_b2=(_a2=event==null?void 0:event.elements)===null||_a2===void 0?void 0:_a2.save_payment_source_to_customer_wallet)===null||_b2===void 0?void 0:_b2.checked;if(savePaymentSourceToCustomerWallet&&setCustomerOrderParam("_save_payment_source_to_customer_wallet",savePaymentSourceToCustomerWallet),hostedFieldsInstance)try{const payload=await promisify(hostedFieldsInstance).then(payload2=>payload2),billingAddress=order==null?void 0:order.billing_address,verifyCardOptions={nonce:payload.nonce,bin:payload.details.bin,amount:order==null?void 0:order.total_amount_with_taxes_float,email:order==null?void 0:order.customer_email,billingAddress:{givenName:billingAddress==null?void 0:billingAddress.first_name,surname:billingAddress==null?void 0:billingAddress.last_name,phoneNumber:billingAddress==null?void 0:billingAddress.phone,streetAddress:billingAddress==null?void 0:billingAddress.line_1,countryCodeAlpha2:billingAddress==null?void 0:billingAddress.country_code,postalCode:billingAddress==null?void 0:billingAddress.zip_code,region:billingAddress==null?void 0:billingAddress.state_code,locality:billingAddress==null?void 0:billingAddress.city},onLookupComplete:(_data,next)=>{next()}},response=await threeDSInstance.verifyCard(verifyCardOptions);return response.rawCardinalSDKVerificationData.Validated&&paymentSource?(paymentSource&&await setPaymentSource({paymentSourceId:paymentSource.id,paymentResource:"braintree_payments",attributes:{payment_method_nonce:response.nonce,options:{id:response.nonce,card:{last4:response.details.lastFour,exp_year:response.details.expirationYear,exp_month:response.details.expirationMonth,brand:response.details.cardType.toLowerCase()}}}}),!0):!1}catch(error){return console.error(error),setPaymentMethodErrors([{code:"PAYMENT_INTENT_AUTHENTICATION_FAILURE",resource:"payment_methods",field:currentPaymentMethodType,message:error.message}]),!1}return!1};return useEffect(()=>{if(!ref&&authorization&&setCustomerOrderParam("_save_payment_source_to_customer_wallet","false"),authorization&&!loadBraintree&&!isEmpty(window)){const braintreeClient=require("braintree-web/client"),hostedFields=require("braintree-web/hosted-fields"),threeDSecure=require("braintree-web/three-d-secure");braintreeClient.create({authorization},(clientErr,clientInstance)=>{if(clientErr){console.error(clientErr);return}hostedFields.create({client:clientInstance,fields,styles},(hostedFieldsErr,hostedFieldsInstance)=>{if(hostedFieldsErr){console.error(hostedFieldsErr);return}setLoadBraintree(!0),threeDSecure.create({authorization,version:2},(threeDSecureErr,threeDSecureInstance)=>{threeDSecureErr&&(console.error("3DSecure error",threeDSecureErr),setPaymentMethodErrors([{code:"PAYMENT_INTENT_AUTHENTICATION_FAILURE",resource:"payment_methods",field:currentPaymentMethodType,message:threeDSecureErr.message}])),ref.current&&(ref.current.onsubmit=()=>handleSubmitForm(ref.current,hostedFieldsInstance,threeDSecureInstance),setPaymentRef({ref}))})})})}return()=>{setPaymentRef({ref:{current:null}}),setLoadBraintree(!1)}},[authorization,ref]),!authorization&&!loadBraintree?null:_jsx("div",Object.assign({className:containerClassName},{children:_jsxs("form",Object.assign({ref,id:"braintree-form",onSubmit:handleSubmitForm,className:containerClassName},{children:[_jsxs("div",Object.assign({className:fieldsContainerClassName},{children:[_jsxs("div",Object.assign({className:cardContainerClassName},{children:[_jsx("label",Object.assign({className:fieldLabelClassName,htmlFor:"card-number"},{children:(_a=fields==null?void 0:fields.number)===null||_a===void 0?void 0:_a.label}),void 0),_jsx("div",{className:inputWrapperClassName,id:"card-number"},void 0)]}),void 0),_jsxs("div",Object.assign({className:cardDetailsContainerClassName},{children:[_jsxs("div",Object.assign({className:expDateContainerClassName},{children:[_jsx("label",Object.assign({className:fieldLabelClassName,htmlFor:"expiration-date"},{children:(_b=fields==null?void 0:fields.expirationDate)===null||_b===void 0?void 0:_b.label}),void 0),_jsx("div",{className:inputWrapperClassName,id:"expiration-date"},void 0)]}),void 0),_jsxs("div",Object.assign({className:cvvContainerClassName},{children:[_jsx("label",Object.assign({className:fieldLabelClassName,htmlFor:"cvv"},{children:(_c=fields==null?void 0:fields.cvv)===null||_c===void 0?void 0:_c.label}),void 0),_jsx("div",{className:inputWrapperClassName,id:"cvv"},void 0)]}),void 0)]}),void 0)]}),void 0),_jsx("div",Object.assign({className:fieldsContainerClassName},{children:templateCustomerSaveToWallet&&_jsx(Parent,Object.assign({},{name:"save_payment_source_to_customer_wallet"},{children:templateCustomerSaveToWallet}),void 0)}),void 0)]}),void 0)}),void 0)};export default BraintreePayment;
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import { FunctionComponent } from 'react';
|
|
2
|
+
import { TypeAccepted } from '../utils/getLineItemsCount';
|
|
2
3
|
import { FunctionChildren } from '../typings/index';
|
|
3
4
|
declare type LineItemsCountChildrenProps = FunctionChildren<Omit<LineItemsCountProps, 'children'> & {
|
|
4
5
|
quantity: number;
|
|
5
6
|
}>;
|
|
6
7
|
declare type LineItemsCountProps = {
|
|
7
8
|
children?: LineItemsCountChildrenProps;
|
|
9
|
+
typeAccepted?: TypeAccepted[];
|
|
8
10
|
} & JSX.IntrinsicElements['span'];
|
|
9
11
|
declare const LineItemsCount: FunctionComponent<LineItemsCountProps>;
|
|
10
12
|
export default LineItemsCount;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__rest}from"tslib";import{jsx as _jsx}from"react/jsx-runtime";import{useContext,useState,useEffect}from"react";import Parent from"./utils/Parent";import getLineItemsCount from"../utils/getLineItemsCount";import{isEmpty}from"lodash";import LineItemContext from"../context/LineItemContext";import components from"../config/components";const propTypes=components.LineItemsCount.propTypes,displayName=components.LineItemsCount.displayName,LineItemsCount=props=>{const{children}=props,p=__rest(props,["children"]),{lineItems}=useContext(LineItemContext),[quantity,setQuantity]=useState(0);useEffect(()=>{if(!isEmpty(lineItems)){const qty=getLineItemsCount(lineItems||[]);setQuantity(qty)}return()=>{setQuantity(0)}},[lineItems]);const parentProps=Object.assign({quantity},p);return children?_jsx(Parent,Object.assign({},parentProps,{children}),void 0):_jsx("span",Object.assign({},p,{children:quantity}),void 0)};LineItemsCount.propTypes=propTypes,LineItemsCount.displayName=displayName;export default LineItemsCount;
|
|
1
|
+
import{__rest}from"tslib";import{jsx as _jsx}from"react/jsx-runtime";import{useContext,useState,useEffect}from"react";import Parent from"./utils/Parent";import getLineItemsCount from"../utils/getLineItemsCount";import{isEmpty}from"lodash";import LineItemContext from"../context/LineItemContext";import components from"../config/components";const propTypes=components.LineItemsCount.propTypes,displayName=components.LineItemsCount.displayName,LineItemsCount=props=>{const{children,typeAccepted}=props,p=__rest(props,["children","typeAccepted"]),{lineItems}=useContext(LineItemContext),[quantity,setQuantity]=useState(0);useEffect(()=>{if(!isEmpty(lineItems)){const qty=getLineItemsCount({lineItems:lineItems||[],typeAccepted});setQuantity(qty)}return()=>{setQuantity(0)}},[lineItems,typeAccepted]);const parentProps=Object.assign({quantity,typeAccepted},p);return children?_jsx(Parent,Object.assign({},parentProps,{children}),void 0):_jsx("span",Object.assign({},p,{children:quantity}),void 0)};LineItemsCount.propTypes=propTypes,LineItemsCount.displayName=displayName;export default LineItemsCount;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__rest}from"tslib";import{jsx as _jsx}from"react/jsx-runtime";import{useContext,useState,useEffect}from"react";import Parent from"./utils/Parent";import getLineItemsCount from"../utils/getLineItemsCount";import{isEmpty}from"lodash";import LineItemContext from"../context/LineItemContext";import components from"../config/components";const propTypes=components.LineItemsEmpty.propTypes,displayName=components.LineItemsEmpty.displayName,LineItemsEmpty=props=>{const{children,text="Your shopping bag is empty"}=props,p=__rest(props,["children","text"]),{lineItems}=useContext(LineItemContext),[quantity,setQuantity]=useState(0),emptyText=quantity===0?_jsx("span",Object.assign({},p,{children:text}),void 0):null;useEffect(()=>{if(!isEmpty(lineItems)){const qty=getLineItemsCount(lineItems||[]);setQuantity(qty)}return()=>{setQuantity(0)}},[lineItems]);const parentProps=Object.assign({quantity,text},p);return children?_jsx(Parent,Object.assign({},parentProps,{children}),void 0):emptyText};LineItemsEmpty.propTypes=propTypes,LineItemsEmpty.displayName=displayName;export default LineItemsEmpty;
|
|
1
|
+
import{__rest}from"tslib";import{jsx as _jsx}from"react/jsx-runtime";import{useContext,useState,useEffect}from"react";import Parent from"./utils/Parent";import getLineItemsCount from"../utils/getLineItemsCount";import{isEmpty}from"lodash";import LineItemContext from"../context/LineItemContext";import components from"../config/components";const propTypes=components.LineItemsEmpty.propTypes,displayName=components.LineItemsEmpty.displayName,LineItemsEmpty=props=>{const{children,text="Your shopping bag is empty"}=props,p=__rest(props,["children","text"]),{lineItems}=useContext(LineItemContext),[quantity,setQuantity]=useState(0),emptyText=quantity===0?_jsx("span",Object.assign({},p,{children:text}),void 0):null;useEffect(()=>{if(!isEmpty(lineItems)){const qty=getLineItemsCount({lineItems:lineItems||[]});setQuantity(qty)}return()=>{setQuantity(0)}},[lineItems]);const parentProps=Object.assign({quantity,text},p);return children?_jsx(Parent,Object.assign({},parentProps,{children}),void 0):emptyText};LineItemsEmpty.propTypes=propTypes,LineItemsEmpty.displayName=displayName;export default LineItemsEmpty;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as _jsx}from"react/jsx-runtime";import{useEffect,useContext,useReducer}from"react";import getPrices from"../utils/getPrices";import{isEmpty,indexOf,has}from"lodash";import CommerceLayerContext from"../context/CommerceLayerContext";import priceReducer,{unsetPriceState}from"../reducers/PriceReducer";import{priceInitialState,getSkusPrice}from"../reducers/PriceReducer";import PricesContext from"../context/PricesContext";import getCurrentItemKey from"../utils/getCurrentItemKey";import ItemContext from"../context/ItemContext";import components from"../config/components";const propTypes=components.PricesContainer.propTypes,defaultProps=components.PricesContainer.defaultProps,displayName=components.PricesContainer.displayName,PricesContainer=props=>{const{children,skuCode="",loader="Loading...",perPage=10,filters={}}=props,[state,dispatch]=useReducer(priceReducer,priceInitialState),config=useContext(CommerceLayerContext),{setPrices,prices,items,item:currentItem,skuCode:itemSkuCode}=useContext(ItemContext);indexOf(state.skuCodes,skuCode)===-1&&skuCode&&state.skuCodes.push(skuCode);const sCode=getCurrentItemKey(currentItem)||skuCode||itemSkuCode||"",setSkuCodes=skuCodes=>{dispatch({type:"setSkuCodes",payload:{skuCodes}})};useEffect(()=>{if(currentItem&&has(prices,sCode)&&dispatch({type:"setPrices",payload:{prices}}),!isEmpty(items)&&isEmpty(currentItem)){const p=getPrices(items);dispatch({type:"setPrices",payload:{prices:p}})}return(config.accessToken&&isEmpty(currentItem)||config.accessToken&&!has(prices,sCode))&&(state.skuCodes.length>0||skuCode)&&getSkusPrice(sCode&&[sCode]||state.skuCodes,{config,dispatch,setPrices,prices,perPage,filters}),()=>{isEmpty(currentItem)&&unsetPriceState(dispatch)}},[config.accessToken,currentItem,sCode]);const priceValue=Object.assign(Object.assign({},state),{skuCode:sCode,loader,setSkuCodes});return _jsx(PricesContext.Provider,Object.assign({value:priceValue},{children}),void 0)};PricesContainer.propTypes=propTypes,PricesContainer.defaultProps=defaultProps,PricesContainer.displayName=displayName;export default PricesContainer;
|
|
1
|
+
import{jsx as _jsx}from"react/jsx-runtime";import{useEffect,useContext,useReducer}from"react";import getPrices from"../utils/getPrices";import{isEmpty,indexOf,has}from"lodash";import CommerceLayerContext from"../context/CommerceLayerContext";import priceReducer,{unsetPriceState}from"../reducers/PriceReducer";import{priceInitialState,getSkusPrice}from"../reducers/PriceReducer";import PricesContext from"../context/PricesContext";import getCurrentItemKey from"../utils/getCurrentItemKey";import ItemContext from"../context/ItemContext";import components from"../config/components";const propTypes=components.PricesContainer.propTypes,defaultProps=components.PricesContainer.defaultProps,displayName=components.PricesContainer.displayName,PricesContainer=props=>{const{children,skuCode="",loader="Loading...",perPage=10,filters={}}=props,[state,dispatch]=useReducer(priceReducer,priceInitialState),config=useContext(CommerceLayerContext),{setPrices,prices,items,item:currentItem,skuCode:itemSkuCode}=useContext(ItemContext);indexOf(state.skuCodes,skuCode)===-1&&skuCode&&state.skuCodes.push(skuCode);const sCode=getCurrentItemKey(currentItem)||skuCode||itemSkuCode||"",setSkuCodes=skuCodes=>{dispatch({type:"setSkuCodes",payload:{skuCodes}})};useEffect(()=>{if(currentItem&&has(prices,sCode)&&dispatch({type:"setPrices",payload:{prices}}),!isEmpty(items)&&isEmpty(currentItem)){const p=getPrices(items);dispatch({type:"setPrices",payload:{prices:p}})}return(config.accessToken&&isEmpty(currentItem)||config.accessToken&&!has(prices,sCode))&&(state.skuCodes.length>0||skuCode)&&getSkusPrice(sCode&&[sCode]||state.skuCodes,{config,dispatch,setPrices,prices,perPage,filters}),()=>{isEmpty(currentItem)&&unsetPriceState(dispatch)}},[config.accessToken,currentItem,sCode,state.skuCodes.length]);const priceValue=Object.assign(Object.assign({},state),{skuCode:sCode,loader,setSkuCodes});return _jsx(PricesContext.Provider,Object.assign({value:priceValue},{children}),void 0)};PricesContainer.propTypes=propTypes,PricesContainer.defaultProps=defaultProps,PricesContainer.displayName=displayName;export default PricesContainer;
|
|
@@ -66,6 +66,20 @@ declare const components: {
|
|
|
66
66
|
required: boolean;
|
|
67
67
|
};
|
|
68
68
|
};
|
|
69
|
+
AdjustmentAmount: {
|
|
70
|
+
displayName: string;
|
|
71
|
+
propTypes: {
|
|
72
|
+
id: PropTypes.Requireable<string>;
|
|
73
|
+
className: PropTypes.Requireable<string>;
|
|
74
|
+
style: PropTypes.Requireable<object>;
|
|
75
|
+
name: PropTypes.Requireable<string>;
|
|
76
|
+
children: PropTypes.Requireable<(...args: any[]) => any>;
|
|
77
|
+
format: PropTypes.Requireable<BaseFormatPrice>;
|
|
78
|
+
};
|
|
79
|
+
defaultProps: {
|
|
80
|
+
format: BaseFormatPrice;
|
|
81
|
+
};
|
|
82
|
+
};
|
|
69
83
|
AddToCartButton: {
|
|
70
84
|
displayName: string;
|
|
71
85
|
propTypes: {
|