PageSourceSearch

https://www.faber-castell.fr/dist/FC.Ecom/modules/Shop-components-CheckoutSummary.674ba028.js

js faber-castell.fr collected 2026-10-02 12:14:14 UTC 15,440 bytes, 1 lines download raw bytes

1"use strict";(self["FC.EcomwebpackJsonp"]=self["FC.EcomwebpackJsonp"]||[]).push([[8134,2768,5369,2834,6919],{14422:(e,t,a)=>{a.r(t),a.d(t,{default:()=>o,getCartAmount:()=>l});var n=a(27378),r=a(68780);function l(){var e=(0,r.v9)((function(e){return e.cart})).items.reduce((function(e,t){return e+t.quantity}),0);return e>99?"99+":e}const o=function(){var e=l();return n.createElement(n.Fragment,null,e)}},11549:(e,t,a)=>{a.r(t),a.d(t,{default:()=>d,getEngravingTotalPrice:()=>m});var n=a(27378),r=a(68780),l=a(15211),o=a(15547),c=a(47012),i=a(88030),u=a(30795),s=a(21803);function m(e){var t,a=e.items.reduce((function(e,t){var a,n,r;return e+(null!==(n=null===(a=t.engravingOption)||void 0===a?void 0:a.price)&&void 0!==n?n:0)*(null!==(r=t.quantity)&&void 0!==r?r:0)}),0);return 0===a?null:(0,c.getPriceValueFormatted)(a,null===(t=e.cartSummary.subTotal)||void 0===t?void 0:t.currencyIsoCode)}const d=function(e){var t=e.benefits,a=e.commonTexts,d=(0,r.v9)((function(e){return e.cart})),p=function(){return n.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none"},n.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M8.99844 16.2001L4.79844 12.0001L3.39844 13.4001L8.99844 19.0001L20.9984 7.0001L19.5984 5.6001L8.99844 16.2001Z",fill:"#039A54"}))},f=m(d);return n.createElement(n.Fragment,null,n.createElement("ul",{"aria-live":"polite",className:"cart-summary__wrapper"},n.createElement("li",{className:"cart-summary__subtotal"},n.createElement("span",null,null==a?void 0:a.subTotal),n.createElement("span",null,(0,c.getPriceFormatted)(d.cartSummary.totalPriceWithTax))),n.createElement(o.default,{commonTexts:null==a?void 0:a.couponTexts,editable:!0}),n.createElement(l.default,{showWhen:null!==f},n.createElement("li",{className:"cart-summary__engraving"},n.createElement("span",null,null==a?void 0:a.engraving),n.createElement("span",null,f))),n.createElement("li",{className:"cart-summary__shipping"},n.createElement("div",{className:"cart-summary__shipping-free"},n.createElement("div",{className:"cart-summary__shiping-free-content"},n.createElement(s.default,{id:"cart-summary-shipping-label",text:null==a?void 0:a.shippingCost,tooltipCssClass:"cart-summary__shipping-tooltip tooltip",tooltipText:null==a?void 0:a.additionalShippingCostInfo})),n.createElement("span",{id:"cart-summary-shipping-price"},(0,c.getPriceFormatted)(d.cartSummary.deliveryCost)))),n.createElement(u.default,{commonTexts:a})),n.createElement(i.default,{commonTexts:null==a?void 0:a.addCouponTexts}),n.createElement(l.default,{showWhen:(t||[]).length>0},n.createElement("ul",{className:"cart-summary__benefits"},t.map((function(e,t){return n.createElement("li",{key:t},n.createElement(p,null),e)})))),n.createElement("form",{method:"post",action:"/shop/checkout-1-billing-and-shipping?guest=1"},n.createElement("div",{className:"cart-summary__button"},n.createElement("button",{className:"btn btn--primary cart-summary__button-confirm",type:"submit",name:"action",value:"CartItems","data-check-inventory-url":"/shop/check-inventory"},null==a?void 0:a.orderButtonLabel))))}},68185:(e,t,a)=>{a.r(t),a.d(t,{default:()=>f});var n=a(27378),r=a(68780),l=a(50688),o=a(15211),c=a(15547),i=a(47012),u=a(11549),s=a(98530),m=a(21803),d=function(e,t,a,n){return new(a||(a=Promise))((function(r,l){function o(e){try{i(n.next(e))}catch(e){l(e)}}function c(e){try{i(n.throw(e))}catch(e){l(e)}}function i(e){var t;e.done?r(e.value):(t=e.value,t instanceof a?t:new a((function(e){e(t)}))).then(o,c)}i((n=n.apply(e,t||[])).next())}))},p=function(e,t){var a,n,r,l,o={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return l={next:c(0),throw:c(1),return:c(2)},"function"==typeof Symbol&&(l[Symbol.iterator]=function(){return this}),l;function c(l){return function(c){return function(l){if(a)throw new TypeError("Generator is already executing.");for(;o;)try{if(a=1,n&&(r=2&l[0]?n.return:l[0]?n.throw||((r=n.return)&&r.call(n),0):n.next)&&!(r=r.call(n,l[1])).done)return r;switch(n=0,r&&(l=[2&l[0],r.value]),l[0]){case 0:case 1:r=l;break;case 4:return o.label++,{value:l[1],done:!1};case 5:o.label++,n=l[1],l=[0];continue;case 7:l=o.ops.pop(),o.trys.pop();continue;default:if(!(r=o.trys,(r=r.length>0&&r[r.length-1])||6!==l[0]&&2!==l[0])){o=0;continue}if(3===l[0]&&(!r||l[1]>r[0]&&l[1]<r[3])){o.label=l[1];break}if(6===l[0]&&o.label<r[1]){o.label=r[1],r=l;break}if(r&&o.label<r[2]){o.label=r[2],o.ops.push(l);break}r[2]&&o.ops.pop(),o.trys.pop();continue}l=t.call(e,o)}catch(e){l=[6,e],n=0}finally{a=r=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}([l,c])}}};
1const f=function(e){var t=this,a=e.cartUrl,f=e.commonTexts,v=(0,r.v9)((function(e){return e.cart})),y=(0,u.getEngravingTotalPrice)(v);return(0,n.useEffect)((function(){v.id&&d(t,void 0,void 0,(function(){var e;return p(this,(function(t){switch(t.label){case 0:return t.trys.push([0,2,,3]),[4,s.default.client.put(s.default.getProductsReservationEndpoint(v.id))];case 1:if(!1===t.sent().data.created)throw"server answered with 'false'";return[3,3];case 2:return e=t.sent(),console.error("Products reservation error:",e),[3,3];case 3:return[2]}}))}))}),[v]),n.createElement(n.Fragment,null,n.createElement(l.default,{cartUrl:a,commonTexts:f}),n.createElement("ul",{className:"cart-summary__wrapper"},n.createElement("li",{className:"cart-summary__subtotal"},n.createElement("span",null,null==f?void 0:f.subTotal),n.createElement("span",null,(0,i.getPriceFormatted)(v.cartSummary.totalPriceWithTax))),n.createElement(c.default,{commonTexts:null==f?void 0:f.couponTexts,editable:!1}),n.createElement(o.default,{showWhen:null!==y},n.createElement("li",{className:"cart-summary__engraving"},n.createElement("span",null,null==f?void 0:f.engraving),n.createElement("span",null,y))),n.createElement("li",{className:"cart-summary__shipping"},n.createElement("div",{className:"cart-summary__shipping-free"},n.createElement("span",null,null==f?void 0:f.shippingCost),n.createElement("span",null,(0,i.getPriceFormatted)(v.cartSummary.deliveryCost))),n.createElement(o.default,{showWhen:!(0,i.isNullOrEmpty)(null==f?void 0:f.additionalShippingCostInfo)},n.createElement("p",null,null==f?void 0:f.additionalShippingCostInfo))),n.createElement("li",{className:"cart-summary__total-price"},n.createElement("div",{className:"cart-summary__price-vat"},n.createElement("span",null,null==f?void 0:f.total),n.createElement("span",null,(0,i.getPriceFormatted)(v.cartSummary.grandTotal))),n.createElement(o.default,{showWhen:v.items.length&&!(0,i.isNullOrEmpty)(null==f?void 0:f.additionalTotalInfo)},n.createElement(m.default,{cssClass:"cart-summary__vat",text:null==f?void 0:f.additionalTotalInfo.replaceAll("{x}",(0,i.getPriceFormatted)(v.cartSummary.totalTax)),textClass:"cart-summary__vat-text",tooltipCssClass:"cart-summary__vat-tooltip tooltip",tooltipText:null==f?void 0:f.additionalTotalInfoTooltip})))))}},50688:(e,t,a)=>{a.r(t),a.d(t,{default:()=>c});var n=a(27378),r=a(32036),l=a(14422),o=function(e,t){var a="function"==typeof Symbol&&e[Symbol.iterator];if(!a)return e;var n,r,l=a.call(e),o=[];try{for(;(void 0===t||t-- >0)&&!(n=l.next()).done;)o.push(n.value)}catch(e){r={error:e}}finally{try{n&&!n.done&&(a=l.return)&&a.call(l)}finally{if(r)throw r.error}}return o};const c=function(e){var t=e.cartUrl,a=e.commonTexts,c=o((0,n.useState)(!1),2),i=c[0],u=c[1];return n.createElement("section",{className:"checkout-summary__header"},n.createElement("div",{className:"checkout-summary__header-wrapper ".concat(i?"open":"")},n.createElement("span",{className:"checkout-summary__order-overview",id:"order-overview"},null==a?void 0:a.headline),n.createElement("button",{className:"checkout-summary__total-product ".concat(i?"active":""),onClick:function(){u(!i)},"aria-expanded":i,"aria-controls":"checkout-summary-order"},i?null==a?void 0:a.hideItems:n.createElement(n.Fragment,null,null==a?void 0:a.totalItemsInOrder," (",n.createElement(l.default,null),")"))),n.createElement("div",{className:"checkout-summary__order ".concat(i?"show":""),id:"checkout-summary-order"},n.createElement(r.default,{commonTexts:null==a?void 0:a.cartItemTexts,editable:!1,handleTabIndex:i})),n.createElement("div",{className:"cart-summary__edit"},n.createElement("span",{className:"cart-summary__edit-title"},null==a?void 0:a.cart),n.createElement("a",{className:"cart-summary__edit-link",href:t,"data-focusable":"Space"},null==a?void 0:a.editCart)))}},88030:(e,t,a)=>{a.r(t),a.d(t,{default:()=>m});var n=a(27378),r=a(68780),l=a(15211),o=a(93628),c=a(47012),i=function(e,t,a,n){return new(a||(a=Promise))((function(r,l){function o(e){try{i(n.next(e))}catch(e){l(e)}}function c(e){try{i(n.throw(e))}catch(e){l(e)}}function i(e){var t;e.done?r(e.value):(t=e.value,t instanceof a?t:new a((function(e){e(t)}))).then(o,c)}i((n=n.apply(e,t||[])).next())}))},u=function(e,t){var a,n,r,l,o={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]}
1,trys:[],ops:[]};return l={next:c(0),throw:c(1),return:c(2)},"function"==typeof Symbol&&(l[Symbol.iterator]=function(){return this}),l;function c(l){return function(c){return function(l){if(a)throw new TypeError("Generator is already executing.");for(;o;)try{if(a=1,n&&(r=2&l[0]?n.return:l[0]?n.throw||((r=n.return)&&r.call(n),0):n.next)&&!(r=r.call(n,l[1])).done)return r;switch(n=0,r&&(l=[2&l[0],r.value]),l[0]){case 0:case 1:r=l;break;case 4:return o.label++,{value:l[1],done:!1};case 5:o.label++,n=l[1],l=[0];continue;case 7:l=o.ops.pop(),o.trys.pop();continue;default:if(!(r=o.trys,(r=r.length>0&&r[r.length-1])||6!==l[0]&&2!==l[0])){o=0;continue}if(3===l[0]&&(!r||l[1]>r[0]&&l[1]<r[3])){o.label=l[1];break}if(6===l[0]&&o.label<r[1]){o.label=r[1],r=l;break}if(r&&o.label<r[2]){o.label=r[2],o.ops.push(l);break}r[2]&&o.ops.pop(),o.trys.pop();continue}l=t.call(e,o)}catch(e){l=[6,e],n=0}finally{a=r=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}([l,c])}}},s=function(e,t){var a="function"==typeof Symbol&&e[Symbol.iterator];if(!a)return e;var n,r,l=a.call(e),o=[];try{for(;(void 0===t||t-- >0)&&!(n=l.next()).done;)o.push(n.value)}catch(e){r={error:e}}finally{try{n&&!n.done&&(a=l.return)&&a.call(l)}finally{if(r)throw r.error}}return o};const m=function(e){var t=e.commonTexts,a=(0,r.I0)(),m=(0,r.v9)((function(e){return e.coupons})),d=s((0,n.useState)(""),2),p=d[0],f=d[1],v=s((0,n.useState)(null),2),y=v[0],E=v[1],h=s((0,n.useState)(!1),2),b=h[0],_=h[1],g=function(e){var t=e.target.value;f(t)},x=function(e){var a=e.target.value;_(!!p),m.coupons.some((function(e){return!!e.code}))&&E((null==t?void 0:t.maximumExceeded)||""),""===a&&e.target.required?E(e.target.dataset.msg):E(null)};return n.createElement("div",{className:"cart-summary__coupon-field"},n.createElement("div",{className:"cp-alpaca-form"},n.createElement("form",{onSubmit:function(e){return i(void 0,void 0,void 0,(function(){var n;return u(this,(function(r){switch(r.label){case 0:if(e.preventDefault(),E(""),m.coupons.some((function(e){return!!e.code})))return E((null==t?void 0:t.maximumExceeded)||""),[2];if(!p)return E((null==t?void 0:t.emptyPromoCode)||""),[2];r.label=1;case 1:return r.trys.push([1,3,,4]),(n=document.getElementById("coupon-apply-button")).disabled=!0,[4,a((0,o.addCouponAsync)(p,(function(){E(null==t?void 0:t.invalidPromoCode)})))];case 2:return r.sent(),f(""),_(!1),n.disabled=!1,n.focus(),[3,4];case 3:return r.sent(),E("An error occurred while applying the coupon."),[3,4];case 4:return[2]}}
1))}))},noValidate:!0},function(e,a,o,i){void 0===o&&(o=!0),void 0===i&&(i="");var u="".concat(e,"_").concat(Date.now()),s=["form-field field text",i,o&&"required",b&&"focused",y&&"error"].filter(Boolean).join(" ");return n.createElement("div",{className:s},n.createElement(l.default,{showWhen:!(0,c.isNullOrEmpty)(null==t?void 0:t.inputLabel)},n.createElement("label",{htmlFor:u},null==t?void 0:t.inputLabel)),n.createElement("input",{id:u,name:e,className:"input-text text".concat(o?" required":""),type:"text",required:o,"data-msg":o?null==t?void 0:t.emptyPromoCode:void 0,value:a((0,r.v9)((function(e){return e}))),onChange:g,onFocus:function(){return _(!0)},onBlur:x}),n.createElement("p",{className:"error message-info",role:"alert"},y))}("CouponCode",(function(){return p})),n.createElement("button",{id:"coupon-apply-button",className:"btn btn--primary",type:"submit"},null==t?void 0:t.applyButtonLabel))))}},15547:(e,t,a)=>{a.r(t),a.d(t,{default:()=>c});var n=a(27378),r=a(68780),l=a(93628),o=a(47012);const c=function(e){var t=e.commonTexts,a=e.editable,c=(0,r.v9)((function(e){return e.coupons})),i=(0,r.I0)();return n.createElement(n.Fragment,null,c.coupons.map((function(e,r){var c,u=!!(null===(c=e.code)||void 0===c?void 0:c.length),s=u?null==t?void 0:t.itemTitle:e.label;return n.createElement("li",{key:"".concat(e.code,"|").concat(e.label,"|").concat(r),className:"cart-summary__promo-code",tabIndex:0},n.createElement("div",{className:"cart-summary__promo-wrapper"},s&&n.createElement("span",{className:"cart-summary__discount-code"},s),u&&n.createElement("div",{className:"cart-summary__promo-code-wrapper"},n.createElement("p",{className:"cart-summary__code-name"},e.code),a&&n.createElement("button",{onClick:function(){return t=e.label,void i((0,l.removeCouponAsync)(t));var t},className:"cart-summary__remove-promo remove-link subline",type:"button"},null==t?void 0:t.remove))),n.createElement("div",{className:"cart-summary__discount-price"},n.createElement("span",{className:"cart-summary__price"},"-",(0,o.getPriceFormatted)(e.amount))))})))}},30795:(e,t,a)=>{a.r(t),a.d(t,{default:()=>i});var n=a(27378),r=a(15211),l=a(47012),o=a(68780),c=a(21803);const i=function(e){var t=e.commonTexts,a=e.setState,i=void 0===a||a,u=(0,o.v9)((function(e){return e.cart}));return n.createElement(r.default,{showWhen:u.items.length>0},n.createElement("li",{className:"cart-summary__total-price"},n.createElement("div",{id:"cart-summary-total",className:"cart-summary__price-vat"},n.createElement("span",null,null==t?void 0:t.total),n.createElement("span",null,(0,l.getPriceFormatted)(u.cartSummary.grandTotal))),n.createElement("div",{className:"cart-summary__total-price-content"},n.createElement(r.default,{showWhen:!(0,l.isNullOrEmpty)(null==t?void 0:t.additionalTotalInfo)},i?n.createElement(n.Fragment,null,n.createElement(c.default,{id:"cart-summary-info",text:null==t?void 0:t.additionalTotalInfo.replaceAll("{x}",(0,l.getPriceFormatted)(u.cartSummary.totalTax)),tooltipCssClass:"cart-summary__vat-tooltip tooltip",tooltipText:null==t?void 0:t.additionalTotalInfoTooltip})):n.createElement("p",{id:"cart-summary-info"},null==t?void 0:t.additionalTotalInfo.replaceAll("{x}",(0,l.getPriceFormatted)(u.cartSummary.totalTax)))))))}},21803:(e,t,a)=>{a.r(t),a.d(t,{default:()=>l});var n=a(27378),r=a(47012);const l=function(e){var t=e.cssClass,a=e.id,l=e.text,o=e.textClass,c=e.tooltipCssClass,i=e.tooltipText;if((0,n.useEffect)((function(){(0,r.isNullOrEmpty)(i)||window.FaberCastell.addModules(["Tooltip"])}),[]),(0,r.isNullOrEmpty)(i))return n.createElement("p",{className:t,id:a},n.createElement("span",null,l));var u="product-info-vat-tooltip-"+crypto.randomUUID();return n.createElement("p",{"aria-describedby":u,className:t,"data-module":"Tooltip","data-tooltip":u,id:a,tabIndex:0},n.createElement("span",{className:o},l),n.createElement("span",{"aria-hidden":"true",id:u,className:["tooltip",c].join(" "),role:"tooltip"},n.createElement("span",{className:"copy"},i)))}}}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.