1define("WNCSabyGet/Buttons/Double",["require","exports","react/jsx-runtime","react","I18n/i18n","i18n!WNCSabyGet","WNCCore/Buttons/double","WNCSabyGet/core","UICore/Adaptive","WNCSabyGet/basketUtils","Controls/Store","WNCCore/core","optional!BookingWidgetBase/Components/WidgetOpener","WNCCore/reactHooks","Application/Env","clsx"],(function(e,t,o,s,i,n,r,a,l,u,c,d,p,y,b,f){"use strict";function C(t,C){var h,k,g;const{forceEnableOrder:v,shopRecord:m,orderFromTableMode:S,isDelivery:B,caption:N,historyId:T,isAlwaysVisible:w=!1,onMainActionClick:W,onAdditionalActionClick:A}=t,O=(0,s.useRef)(null),x=null!==(h=t.shopType)&&void 0!==h?h:null==m?void 0:m.get("ShopType"),{device:D}=(0,l.useAdaptiveMode)(),E=D.isPhone(),I=(0,s.useMemo)((()=>{if(T)return T;else if(void 0!==t.priceListType&&void 0!==t.shopType&&(t.uuid||t.pointId||t.priceListHierarchy))return(0,u.getBasketHistoryId)({...t,salePoint:t.pointId});else return b.logger.error("WNCSabyGet/Buttons/Double: historyId undefined"),""}),[T]),[M,P]=(0,s.useState)((()=>(0,u.getBasketStoreState)(I))),j=(0,s.useRef)(),G=(0,s.useRef)(null),q=null!==(k=null==M?void 0:M.basketCost)&&void 0!==k?k:0;(0,s.useEffect)((()=>{const e=(0,u.subscribeToBasketStateChange)((e=>{var t;return null===(t=O.current)||void 0===t||t.notifyEvent(null,"basketFilledChanged",e.isBasketFilled),P(e)}),I);return()=>(0,u.unsubscribeFromBasketStateChange)(e)}),[I]);const L=(0,s.useMemo)((()=>{const e=new Map([[a.ShopType.shop,n("ÐаказаÑÑ")],[a.ShopType.salon,n("ÐапиÑаÑÑÑÑ")],[a.ShopType.hotel,n("ÐÑониÑоваÑÑ Ð½Ð¾Ð¼ÐµÑ")],[a.ShopType.restaurant,E||S?n("Ðаказ"):n("ÐÑониÑоваÑÑ")]]);return N||(B?n("ÐаказаÑÑ"):e.get(x)||n("ÐÑониÑоваÑÑ"))}),[S]),R=(0,s.useCallback)((o=>{new Promise(((t,o)=>{e(["WNCSabyGet/basket/actions/showWidget"],t,o)})).then((({showWidgetDouble:e})=>{e(I,{...t,beforeOpenCallback:o,shopType:x,isDelivery:B,logicOpener:G.current,basketPopupTarget:G.current,widgetOpener:j.current})})).catch((function(e){requirejs.onError(e)}))}),[x,B,t.basketWidgetOptions,t.pointId,t.deliveryCfg,t.queueId,t.orderSource,t.category,t.showBasketAuthDialog,t.noBasketButton,t.uuid,t.priceListHierarchy,t.priceListType]),F=(0,s.useCallback)((()=>R(W)),[W,R]),H=(0,s.useCallback)((()=>R(A)),[A,R]),z=(0,s.useMemo)((()=>c.default.get(`hideBasketButton-${I}`)),[]),U=(0,y.useTeeRef)(C,G);if(z&&!w)return(0,o.jsx)("div",{ref:U});else return(0,o.jsxs)("div",{className:(0,f.clsx)("wnc-sg-double",t.className),ref:U,"data-qa":t["data-qa"],children:[(0,o.jsx)(r.default,{...t,className:"",buttonClassName:t.buttonClassName||"",caption:L,count:(null==M?void 0:M.totalBasketCount)||0,cost:q,precision:q%1==0?0:2,currency:i.controller.currentLocaleConfig.money.symbol,showEmptyCaption:t.showEmptyCaption,showEmptyDecimals:!1,currencySize:"l",moneyDataQa:"wnc-sg-double-money","data-qa":`wnc-sg-double-${null!==(g=t.position)&&void 0!==g?g:(0,a.getPositionByPriceType)(t.priceListType)}`,onMainActionClick:v?void 0:F,onAdditionalActionClick:v?void 0:H}),(0,o.jsx)(p.default,{ref:j,basketPopupOffset:{horizontal:0,...t.basketPopupOffset||{}},forceOpenBasket:t.showEmptyCaption}),(0,o.jsx)(d.Notifier,{ref:O})]})}Object.defineProperty(t,"__esModule",{value:!0}),C.displayName="WNCSabyGet/Buttons/Double",t.default=(0,s.forwardRef)(C)}));
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.