{"version":3,"sources":["webpack:///src/modules/password-reset/password-reset.tsx?2fc7","webpack:///src/modules/password-reset/components/password-reset-error.tsx?5bd3","webpack:///./src/modules/smwe-footer-item/smwe-footer-item.view.tsx?2a6b","webpack:///src/modules/content-block/components/additional-content.tsx?1a32","webpack:///src/modules/content-block/components/links.tsx?5056","webpack:///src/modules/content-block/content-block.tsx?8675","webpack:///src/modules/social-share/social-share.view.tsx?76da","webpack:///src/modules/password-reset/password-reset.view.tsx?f872","webpack:///./src/modules/product-attributes/product-attributes.tsx?4f2a","webpack:///./src/modules/pdp-attributes/pdp-attributes.tsx?94a0","webpack:///src/modules/fabrikam/views/cart.view.tsx?8115","webpack:///./src/Utilities/elicit-savings-calculation.tsx?adc6","webpack:///./src/components/call-to-action.tsx?535d","webpack:///./src/modules/add-to-cart-by-url/add-to-cart-by-url.tsx?e2cd","webpack:///src/modules/password-reset/components/password-reset-loading-message.tsx?a735","webpack:///src/modules/fabrikam/views/order-history.view.tsx?46de","webpack:///./src/Utilities/heading/Heading.tsx?3fb6","webpack:///./src/modules/smwe-footer-item/smwe-footer-item.tsx?9798","webpack:///./src/modules/subscription-restriction-button/subscription-restriction-button.view.tsx?277c","webpack:///./src/modules/notification/notification.tsx?7fc1","webpack:///./src/modules/subscriptions-minicart/components/cart-display.component.tsx?2f3a","webpack:///./src/Utilities/smwe-order-summary-shipment-calculation.tsx?9ab2","webpack:///src/modules/social-share/social-share.tsx?ed88","webpack:///./src/modules/product-data-entry/product-data-entry.tsx?c077","webpack:///./src/themes/fth/views/accordion-item.view.tsx?9634","webpack:///src/modules/password-reset/components/password-reset-input.tsx?7f32","webpack:///./src/modules/subscription-restriction-button/components/links.tsx?3fb8","webpack:///./src/modules/subscription-restriction-button/subscription-restriction-button.tsx?1fe3","webpack:///src/modules/password-reset/components/password-reset-button.tsx?7c39","webpack:///src/modules/password-reset/components/password-reset-label.tsx?2eed","webpack:///./src/themes/stemichelle-new/views/accordion-item.view.tsx?1391","webpack:///src/modules/password-reset/components/password-reset-loading-icon.tsx?29cc","webpack:///src/modules/content-block/content-block.view.tsx?a86e"],"names":["PasswordReset","React","constructor","props","super","moduleClassName","handleHeadingChange","event","this","config","heading","text","target","value","_onInit","_prePopulateData","_updateErrorMessage","initializationTimer","setInterval","_isInitializationSuccessful","setTimeout","clearInterval","window","isInitialized","map","obj","ID","toLowerCase","newPasswordRegex","PAT","reenterPasswordRegex","resources","message","verifying_blurb","loadingMessage","Object","assign","PasswordRegex","defaultRegex","source","telemetryContent","getTelemetryObject","context","request","telemetryPageName","friendlyName","telemetry","componentDidMount","componentDidUpdate","shouldComponentUpdate","nextProps","nextState","state","data","render","viewProps","_objectSpread","viewState","isShowLoading","passwordReset","moduleProps","className","classnames","loading","modal","tag","Modal","isOpen","modalBody","ModalBody","icon","PasswordResetLoadingIconComponent","PasswordResetLoadingMessageComponent","defaultAADConainer","id","style","display","aadConainer","Msdyn365","editProps","onEdit","requestContext","passwordResetLocalAccount","_renderLocalAccount","renderView","localAccount","items","_renderInput","newPasswordLabelText","confirmPasswordLabelText","errorMessage","PasswordResetErrorComponent","key","passwordEntryMismatchError","requiredFieldMissingError","fieldIncorrectError","buttonsWrapper","buttons","PasswordResetButtonComponent","ariaLabel","saveButtonAriaLabel","saveButtonText","cancelButtonText","verificationSuccessModal","verificationSuccessModalMessage","type","labelText","pattern","wrapper","label","PasswordResetLabelComponent","forId","input","PasswordResetInputComponent","__decorate","observable","observer","PasswordResetError","_ref","errorClassName","role","FooterItemView","FooterItem","Module","_renderElement","HeadingContainer","Link","linkText","image","Node","assembleNode","item","itemIndex","_item$links","renderHeading","additionalContentHeading","handleAdditionalTextChange","subtext","renderParagraph","additionalContentParagraphText","links","ctaLink","index","renderLinks","linkIndex","editableLink","linkUrl","destinationUrl","openInNewTab","link","onTextChange","handleAdditionalLinkTextChange","additionalContentItemContainer","additionalContentItemLinks","contentBlockAdditionalContent","additionalContent","reactNodes","push","additionalContentNode","additionalContentItems","ContentCardLinks","_mapEditableLinks","linkdata","length","editableLinks","forEach","payLoad","getPayloadObject","contentAction","etext","attributes","getTelemetryAttributes","btnClass","additionalProperties","onClick","onTelemetryClick","ContentBlock","handleTextChange","handleParagraphChange","paragraph","handleLinkTextChange","Number","_heading$tag","_this$props$context$r","_this$props$config$im","imageAriaLabel","contentBlockTitle","imageProps","gridSettings","imageSettings","contentBlockLinks","ArrayExtensions","hasElements","LinksComponent","msdyn365__moduleLayout","contentBlockText","contentBlockImage","preserveImageSpace","moduleType","typeName","imagePropertyName","moduleId","layout","shouldSkipToMainImage","error","contentBlockviewProps","title","moduleClass","contentBlockContainer","imageContainer","detailsContainer","contentBlockAnchorTag","imageLink","_getImageLink","handleAdditionalParagraphChange","handleAdditionalText","handleAdditionalParagraph","additionalContentObject","actionableRegion","SocialShareView","SocialShareList","SocialShareItemElements","SocialShareItem","SocialShare","createElement","SocialShareElement","PasswordResetItem","PasswordResetLoading","_ref3","PasswordResetView","_ref2","button","LocalAccount","ProductAttributes","_productAttributeFactSheetURL","_productAttributeFactSheetHeader","_productAttributeTastingNotes","_productAttributeCookbookDescription","_productAttributeCookbookDescriptionHeader","_productAttributeFoodPairings","_productAttributeWineAnalysis","_productAttributeWineBlend","_productAttributeWineAging","_productAttributeWineAlcohol","_productAttributeWinePH","_productAttributeWineTA","_productAttributeWineF","content","productSpecificationData","result","_renderProductAttributes","product","filter","locale","get","_compareStrings","productattribute","attribute","Name","toUpperCase","TextValue","CallToAction","color","href","_renderWineAttributes","Heading","headingTag","attributeHeading","RichTextComponent","suffix","attributeValue","_renderProductCell","keyName","DataTypeValue","_renderCurrencyCell","_renderDateTimeCell","_renderDecimalCell","_renderIntegerCell","_renderTextCell","_renderTrueFalseCell","warning","CurrencyValue","undefined","CurrencyCode","DateTimeOffsetValue","toUTCString","IntegerValue","FloatValue","BooleanValue","string1","string2","ignoreCase","useLocale","toLocaleLowerCase","PdpAttributes","_attributesCollected","simpleProductData","productData","_parser","CommerceAttributesParser","attributeValues","psuedoAttributeValues","_getPsuedoSimpleAttributes","_attributesListRender","children","every","element","cssClass","simpleProduct","attributeArray","attr","attributeName","pos","_renderAttribute","cmsAttribute","renderPosition","_parseAttribute","toString","startsWith","_urlRender","_plaintextRender","_dateRender","_booleanRender","textDisplay","arguments","suffixText","_renderCell","date","Date","bool","booleanDisplay","url","labelOverride","cellBody","attributeClass","noLabel","name","_renderPromotions","promotions","promotionMessageWrapper","promotionMessage","promotionSeeAllLink","promotionDialog","_renderCartlines","cartLines","storeSelector","backToShoppingButton","waitingComponent","cartLoadingStatus","cartDataResult","mulitplePickUp","emailDeliveryModeCode","emptyCartText","cartLine","MsDyn365","isBrowser","cartline","_renderBOPISBlock","_renderGroupBOPISBlock","addToOrderTemplate","addToWishlist","remove","onToggleBopisHandler","isBopisSelected","pickUpInStore","callbacks","toggleBopis","onChangeStoreHandler","_cartLine$data","DeliveryMode","shipInsteadDisplayText","shipToAddressDisplayText","pickItUpDisplayText","pickUpAtStoreWithLocationText","changeStoreDisplayText","TelemetryConstant","PickupInStore","puckUpinStoreAttribute","ContainerProps","orgUnitName","Button","_renderErrorBlock","errorData","errors","Wrapper","header","_renderOrderSummarylines","orderSummaryLines","OrderSummaryItems","promoCode","subtotal","shipping","otherCharge","tax","totalDiscounts","orderTotal","_renderInvoiceSummarylines","invoiceSummaryLines","invoices","giftCard","loyalty","_renderCartLinesGroup","cartLinesGroup","cartlines","_props$context$action2","_props$context$action3","cartlineId","_renderCartLinesGroupHeader","_countItems","actionContext","channel","EmailDeliveryModeCode","multiplePickUpEnabled","count","_cartLine$pickUpInSto","pickUpText","shippingText","emailshippingText","payInvoicesDisplayText","groupTitle","IsInvoiceLine","StringExtensions","isNullOrEmpty","_renderCartLinesGroupTitle","_cartLine$data2","countItem","reduce","_item$data","Quantity","_cartLine$pickUpInSto2","_cartLine$pickUpInSto3","_cartLine$pickUpInSto4","itemLabel","itemsLabel","deliveryOption","CartView","_props$cart","_props$context$action","_props$cart2","renderModuleAttributes","promotionOptions","cart","hasInvoiceLine","CartlinesWrapper","orderSummaryHeading","OrderSummaryWrapper","invoiceSummaryLineitems","orderSummaryLineitems","OrderSummaryErrors","checkoutAsSignInUserButton","checkoutAsGuestButton","expressCheckoutButton","ExpressCheckoutSectionWrapper","createTemplateFromCartButton","calculateSavingPercentAmount","lines","total","line","callToActionContent","glyphClassName","ctaLayout","glyphPosition","createInnerCTAFragment","glyph","callToActionClass","callToActionBaseClass","disabled","defaultProps","AddToCartByUrl","totalItems","isInProgress","productsToAdd","_getProductsToAdd","entry","quantity","_addItemsToCart","_inProgress","_renderCompletion","_renderCTA","query","add","split","trim","isNaN","cartLink","_partialSuccess","_completeFailure","_completeSuccess","Waiting","inProgressText","completedSuccessfullyText","replace","completedWithErrorsText","completeFailureText","itemList","promise","finally","CartUtilities","elicitAddItemIdToCart","recordId","amount","Error","catch","Promise","resolve","PasswordResetLoadingMessage","OrderHistoryOrderInfomation","orderInformationProps","salesId","receiptId","channelName","createdDate","channelReferenceId","OrderHistoryGroupDelivery","deliveryProps","processing","address","trackingInfo","OrderHistoryGroup","groupProps","delivery","salesLinesProps","salesLines","salesLine","LineId","OrderHistoryGroups","_ref4","groupsProps","groups","group","OrderHistoryHeader","_ref5","headerProps","orderCountLabel","extraActions","OrderHistorySalesOder","_ref6","salesOrderProps","orderInfomation","orderDetailsLink","expandProductsButton","OrderHistoryList","_ref7","listProps","salesOrders","salesOrder","OrderHistoryView","_ref8","orderHistoryProps","alert","emptyMessage","backToShoppingLink","list","table","moreButton","HTag","Tag","footerItemClassName","_createHeading","_createImageMarkup","_createText","_createLinkText","ItemContainer","ariaHiddenAttr","src","defaultImageSettings","viewports","xs","q","w","h","lg","lazyload","Image","loadFailureBehavior","ContentBlockView","hasFrequency","hasName","requireFrequency","requireName","shouldDisable","Notification","_markNotificationDisplayed","notification","displayed","forceUpdate","_errorType","alertcolorclassName","_getClassName","messageTextClassName","Alert","errorType","classtype","NotificationType","info","success","validation","none","moduleData","notificationMessageObject","onAnimationEnd","messagetype","Boolean","status","CartDisplayComponent","subscriptionsProps","subscriptionsMinicart__boxPrice","subscriptionsMinicart__shipping","subscriptionsMinicart__savings","subscriptionsMinicart__goToCart","cartState","savingPercent","_cartFilteredLines","subscriptionLines","formatter","cultureFormatter","formatCurrency","cartUrl","getUrlSync","_calculateDiscountedTotalAmount","_calculateTotalAmount","format","orderSummaryShipmentCalculation","price","_this$props$subscript","filterCartLines","NetPrice","TotalAmount","CartOrderPriceGuide","NONSUBSCRIPTION_LE_3","NONSUBSCRIPTION_G_3","SUBSCRIPTION_LE_3","SUBSCRIPTION_GE_4_LE_5","SUBSCRIPTION_GE_6_AND_LE_11","SUBSCRIPTION_GE_12","GIFT_CARDS_ONLY","MIXED_ADD_PRICE","subscriptionCartLength","countCartLineAmountNoGiftCards","nonSubscriptionCartLength","orderSubscriptionBased","formatShipmentCalculation","cartLength","shipmentCalculationResult","summary","orderMixedBased","shipCostDefinition","slots","socialShareItems","cookies","isConsentGiven","params","isEditor","viewprops","caption","orientation","tabIndex","ProductDataEntry","hasTastingNotes","productTastingNotesItems","hasAttributes","productAttributesItems","customClass","productImage","_renderHeroImage","productCaption","_renderRichText","productHeading","_renderHeading","productSubHeading","productDescription","productTastingNotesHeading","_renderTastingNotesItems","productAttributesHeading","_renderProductAttributesItems","idx","tastingNotesCustomClass","tastingNotesIcon","tastingNotesName","attributeCustomClass","attributeText","_renderAccordionItemContent","AccordionItemView","drawer","accordionSlots","AccordionItemContainer","AccordionItemContent","document","getElementById","childElement","getElementsByClassName","hideAccordion","childElementCount","accordionItemContent","GetMaxLength","maxLength","parsedMaxLength","parseInt","PasswordResetInput","onChange","cta","rel","SubscriptionRestrictionButton","reaction","_this$props$data$cart","_this$props$data$cart2","_this$props$data$cart3","ExtensionProperties","_this$props$data$cart4","values","getSubscriptionValues","subscriptionRestrictionButtonViewProps","frequency","PasswordResetButton","PasswordResetLabel","htmlFor","PasswordResetLoadingIcon","renderAdditionalContent","_additionalContent$ad"],"mappings":";q4BAmEA,IAAMA,EAAN,cAA4BC,YAcxBC,YAAYC,GACRC,MAAMD,GAdO,KAAAE,gBAA0B,oBA0FpC,KAAAC,oBAAuBC,GAA0CC,KAAKL,MAAMM,OAAOC,QAASC,KAAOJ,EAAMK,OAAOC,MAGhH,KAAAC,QAAU,KACbN,KAAKO,mBACLP,KAAKQ,sBAGLR,KAAKS,oBAAsBC,YAAY,KACnCV,KAAKW,+BACN,KACHC,WAAW,KACPC,cAAcb,KAAKS,sBACpB,MAIU,KAAAE,4BAA8B,KAEvCG,QAAUA,OAAe,QAAKA,OAAe,OAA4B,2BACzED,cAAcb,KAAKS,qBACnBT,KAAKe,eAAgB,IAIZ,KAAAR,iBAAmB,KAE5BO,OAAkB,WAAKA,OAAkB,UAAmB,iBAE5DA,OAAkB,UAAmB,gBAAEE,IAAKC,IACxC,OAAQA,EAAIC,GAAGC,eACX,IAAK,cACDnB,KAAKoB,iBAAmBH,EAAII,IAC5B,MAEJ,IAAK,kBACDrB,KAAKsB,qBAAuBL,EAAII,QASnC,KAAAb,oBAAsB,KACnC,MAAM,UAAEe,GAAcvB,KAAKL,MAG3B,GAAImB,QAAUA,OAAgB,QAAG,CAC7B,MAAMU,EAAU,CACZC,gBAAiBF,EAAUG,gBAI/BC,OAAOC,OAAOd,OAAgB,QAAGU,KAjIrCxB,KAAKoB,iBAAmBS,gBAAcC,aAAaC,OACnD/B,KAAKsB,qBAAuBO,gBAAcC,aAAaC,OACvD/B,KAAKe,eAAgB,EACrBf,KAAKgC,iBAAmBC,6BACpBjC,KAAKL,MAAMuC,QAAQC,QAAQC,kBAC3BpC,KAAKL,MAAM0C,aACXrC,KAAKL,MAAM2C,WAIZC,oBACHvC,KAAKM,UAIFkC,qBAECxC,KAAKe,eAAiBD,QAAUA,OAAiB,UAAKA,OAAiB,SAAc,YAErFA,OAAiB,SAAc,aAIhC2B,sBAAsBC,EAAsDC,GAC/E,OAAI3C,KAAK4C,QAAUD,GAAa3C,KAAKL,MAAMkD,OAASH,EAAUG,KAM3DC,SACH,MAAM,OAAE7C,EAAM,UAAEsB,GAAcvB,KAAKL,MAE7BoD,EAASC,IAAA,GACRhD,KAAKL,OAAK,IACbsD,UAAW,CACPC,eAAgBlD,KAAKe,eAEzBoC,cAAe,CACXC,YAAapD,KAAKL,MAClB0D,UAAWC,IAAWtD,KAAKH,gBAAiBI,EAAOoD,YAEvDE,QAAS,CACLC,MAAO,CACHC,IAAKC,QACLC,QAAQ,GAEZC,UAAW,CACPH,IAAKI,aAETC,KAAMrE,gBAACsE,IAAiC,CAACV,UAAWrD,KAAKH,kBACzD2B,QAAS/B,gBAACuE,IAAoC,CAACX,UAAWrD,KAAKH,gBAAiB2B,QAASD,EAAUG,kBAEvGuC,mBAAoB,CAChBC,GAAI,MACJC,MAAO,CAAEC,QAAS,SAEtBC,YAAa,CACTH,GAAIlE,KAAKe,cAAgB,MAAQ,KACjCsC,UAAcrD,KAAKH,gBAAR,eAEfK,QAASD,EAAOC,SACZT,gBAAC6E,IAAa3C,OAAAC,OAAA,CACVyB,UAAcrD,KAAKH,gBAAR,aACPI,EAAOC,QAAO,CAClBqE,UAAW,CAAEC,OAAQxE,KAAKF,oBAAqB2E,eAAgBzE,KAAKL,MAAMuC,QAAQC,YAG1FuC,0BAA2B1E,KAAK2E,wBAGpC,OAAO3E,KAAKL,MAAMiF,WAAW7B,GA8DzB4B,sBACJ,MAAM,UAAEpD,GAAcvB,KAAKL,MAC3B,MAAO,CACHkF,aAAc,CACVX,GAAI,gBACJb,UAAcrD,KAAKH,gBAAR,wBAEfiF,MAAO,CACH9E,KAAK+E,aAAa,cAAe,WAAYxD,EAAUyD,qBAAsBhF,KAAKoB,kBAClFpB,KAAK+E,aAAa,kBAAmB,WAAYxD,EAAU0D,yBAA0BjF,KAAKsB,uBAE9F4D,aAAc,CACVzF,gBAAC0F,IAA2B,CACxBC,IAAI,wBACJlB,GAAG,wBACHb,UAAWrD,KAAKH,gBAChB2B,QAASD,EAAU8D,6BAEvB5F,gBAAC0F,IAA2B,CACxBC,IAAI,uBACJlB,GAAG,uBACHb,UAAWrD,KAAKH,gBAChB2B,QAASD,EAAU+D,4BAEvB7F,gBAAC0F,IAA2B,CACxBC,IAAI,uBACJlB,GAAG,iBACHb,UAAWrD,KAAKH,gBAChB2B,QAASD,EAAUgE,sBAEvB9F,gBAAC0F,IAA2B,CACxBC,IAAI,+BACJlB,GAAG,+BACHb,UAAWrD,KAAKH,mBAGxB2F,eAAgB,CACZnC,UAAcrD,KAAKH,gBAAR,aAEf4F,QAAS,CACLhG,gBAACiG,IAA4B,CACzBN,IAAI,WACJlB,GAAG,WACHb,UAAcrD,KAAKH,gBAAR,oBACX8F,UAAWpE,EAAUqE,oBACrBzF,KAAMoB,EAAUsE,eAChB7D,iBAAkBhC,KAAKgC,mBAE3BvC,gBAACiG,IAA4B,CACzBN,IAAI,SACJlB,GAAG,SACHb,UAAcrD,KAAKH,gBAAR,kBACX8F,UAAWpE,EAAUuE,iBACrB3F,KAAMoB,EAAUuE,iBAChB9D,iBAAkBhC,KAAKgC,oBAG/B+D,yBAA0B,CACtB1C,UAAcrD,KAAKH,gBAAR,qCAEfmG,gCAAiC,CAC7B9B,GAAI,kBACJb,UAAcrD,KAAKH,gBAAR,8BAKfkF,aAAab,EAAY+B,EAAcC,EAAmBC,GAC9D,MAAM9C,EAAerD,KAAKH,gBAAR,iBAClB,MAAO,CACHuG,QAAS,CACL/C,UAAWC,IAAWD,EAAW,GAAGA,KAAaa,IAAM,aAAc,cAEzEkB,IAAKlB,EACLmC,MACI5G,gBAAC6G,IAA2B3E,OAAAC,OAAA,GACpB,CACAsC,KACAqC,MAAOrC,EACPb,YACAlD,KAAM+F,KAIlBhB,aACIzF,gBAAC0F,IAA2BxD,OAAAC,OAAA,GACpB,CACAyB,UAAWrD,KAAKH,gBAChBoG,KAAM,UAIlBO,MACI/G,gBAACgH,IAA2B9E,OAAAC,OAAA,GACpB,CACAsC,KACA+B,OACAE,UACA9C,kBAnPRqD,YAAA,CAAXC,K,uCAEWD,YAAA,CAAXC,K,2CAEWD,YAAA,CAAXC,K,oCATCnH,EAAakH,YAAA,CADlBE,KACKpH,GAgQSA,a,oCCnUf,qCAyBeqH,IAVgDC,IAA8C,IAA7C,GAAE5C,EAAE,UAAEb,EAAS,KAAE4C,EAAO,OAAM,QAAEzE,GAASsF,EACrG,MAAMC,EAAiB,GAAG1D,MAAc4C,UAExC,OACIxG,gBAAA,OAAKyE,GAAIA,EAAIb,UAAWC,IAAWyD,EAAgB,QAAYd,EAAH,SAAiBe,KAAK,QAAO,YAAW,YAAW,cAAa,QACxHvH,gBAAA,KAAG4D,UAAc0D,EAAH,SAA2BvF,M,gICP/C,MAAOyF,UAAuBxH,gBACzBqD,SACH,MAAM,WAAEoE,GAAelH,KAAKL,MAC5B,OACIF,gBAAC0H,SAAMxF,OAAAC,OAAA,GAAKsF,GAEPlH,KAAKoH,eAAepH,KAAKL,QAK9ByH,eAAezH,GACnB,MAAM,QAAEO,EAAO,iBAAEmH,EAAgB,KAAEC,EAAI,SAAEC,EAAQ,MAAEC,GAAU7H,EAC7D,OAAIO,EAEIT,gBAACgI,OAAI9F,OAAAC,OAAA,GAAKyF,GACLnH,EACAqH,EACAC,GAGFF,EAEH7H,gBAACgI,OAAI9F,OAAAC,OAAA,GAAK0F,GACLC,EACAC,GAKT/H,2BAAA,KACK8H,EACAC,IAMFP,a,6MCAf,MA4FMS,EAAeA,CACjBC,EACAhI,EACAiI,KAC6C,IAAAC,EAO7C,MAAO,CACH3H,QAPgByH,EAAKzH,SAjGP4H,EAACC,EAAkCpI,EAA4CiI,KACjG,MAAMnD,EAAiB9E,EAAM8E,eAC7B,OACIhF,gBAAC6E,IAAa,CACVnE,KAAM4H,EACNtE,IAAI,IACJJ,UAAU,sDACVkB,UAAW,CAKPC,OAAQzE,IACJJ,EAAMqI,2BAA2BJ,EAAW7H,IAEhD0E,qBAkFwBqD,CAAcH,EAAKzH,QAASP,EAAOiI,GAQnEzH,KAPkBwH,EAAKM,SAtEPC,EAACC,EAAwCxI,EAA4CiI,KACzG,MAAMnD,EAAiB9E,EAAM8E,eAC7B,OACIhF,gBAAC6E,IAAa,CACVnE,KAAMgI,EACN1E,IAAI,IACJJ,UAAU,2DACVkB,UAAW,CAKPC,OAAQzE,IACJJ,EAAMqI,2BAA2BJ,EAAW7H,IAEhD0E,qBAuD0ByD,CAAgBP,EAAKM,QAAStI,EAAOiI,GAQvEQ,MAPwB,QAAbP,EAAGF,EAAKS,aAAK,IAAAP,OAAA,EAAVA,EAAY7G,IAAI,CAACqH,EAAqBC,IA1CxCC,EAACF,EAAqB1I,EAA4CiI,EAAmBY,KACrG,MAAMC,EAAoC,CACtC9C,UAAW0C,EAAQ1C,UACnBtC,UAAW,0DACXkE,SAAUc,EAAQd,SAClBmB,QAASL,EAAQK,QAAQC,eACzBC,aAAcP,EAAQO,aACtB5B,KAAM,QAEJvC,EAAiB9E,EAAM8E,eAC7B,OACIhF,gBAAC6E,IAAa,CACVc,IAAKoD,EACLK,KAAMJ,EACNlE,UAAW,CAKPuE,aAAc/I,IACVJ,EAAMoJ,+BAA+BP,EAAWZ,EAAW7H,IAE/D0E,qBAqBD8D,CAAYF,EAAS1I,EAAOiI,EAAWU,IAO9CU,+BAAgC,CAAE3F,UAAW,4DAC7C4F,2BAA4B,CAAE5F,UAAW,uDASpC6F,EACTvJ,IAEA,MAAM,kBAAEwJ,GAAsBxJ,EAC9B,IAAKwJ,EACD,OAGJ,MAAMC,EAA4D,GAKlE,OAJAD,EAAkBnI,IAAI,CAAC2G,EAAMW,IAClBc,EAAWC,KAAK3B,EAAaC,EAAMhI,EAAO2I,KAG9C,CACHgB,sBAAuB,CAAEjG,UAAW,iDACpCkG,uBAAwBH,IC/JzB,MAAMI,UAAyB/J,gBAAtCC,c,oBAeqB,KAAA+J,kBAAqBC,IAClC,IAAKA,GAAgC,IAApBA,EAASC,OACtB,OAAO,KAEX,MAAMC,EAAuC,GAqB7C,OApBAF,EAASG,QAAQ,CAAChB,EAAMP,KAEpB,MAAMwB,EAAUC,2BAAiB,QAAS/J,KAAKL,MAAMqC,iBAAkB,GAAI,IACrEuF,EAAWsB,EAAKtB,SAAWsB,EAAKtB,SAAW,GACjDuC,EAAQE,cAAcC,MAAQ1C,EAC9B,MAAM2C,EAAaC,iCAAuBnK,KAAKL,MAAMqC,iBAAkB8H,GACjEM,EAAqB,IAAV9B,EAAc,mBAAqB,qBAC9CG,EAAoC,CACtC9C,UAAWkD,EAAKlD,UAChBtC,UAAW+G,EACX7C,SAAUsB,EAAKtB,SACfmB,QAASG,EAAKH,QAAQC,eACtBC,aAAcC,EAAKD,aACnB5B,KAAMhH,KAAKL,MAAMqH,KACjBqD,qBAAsBH,EACtBI,QAASC,2BAAiBvK,KAAKL,MAAMqC,iBAAkB8H,EAASvC,IAEpEqC,EAAcP,KAAKZ,KAGhBmB,GAvCJ9G,SACH,MAAM8G,EAAgB5J,KAAKyJ,kBAAkBzJ,KAAKL,MAAMyI,OACxD,OACI3I,gBAAA,OAAK4D,UAAU,yBACVuG,GAAiBA,EAAcD,OAAS,EACrClK,gBAAC6E,IAAc,CACX8D,MAAOwB,EACPrF,UAAW,CAAEuE,aAAc9I,KAAKL,MAAMmJ,aAAcrE,eAAgBzE,KAAKL,MAAM8E,kBAEnF,OAiCL+E,Q,ykBCtBR,MAAMgB,UAAqB/K,gBAAlCC,c,oBACqB,KAAAsC,iBAAsCC,6BACnDjC,KAAKL,MAAMuC,QAAQC,QAAQC,kBAC3BpC,KAAKL,MAAM0C,aACXrC,KAAKL,MAAM2C,WAmGR,KAAAmI,iBAAoB1K,GAA0CC,KAAKL,MAAMM,OAAOC,QAASC,KAAOJ,EAAMK,OAAOC,MAS7G,KAAAqK,sBAAyB3K,GAA0CC,KAAKL,MAAMM,OAAO0K,UAAY5K,EAAMK,OAAOC,MAO9G,KAAAuK,qBAAwBpC,GAAuBzI,IAC9CC,KAAKL,MAAMM,OAAOmI,OAASpI,KAAKL,MAAMM,OAAOmI,MAAMyC,OAAOrC,MAC1DxI,KAAKL,MAAMM,OAAOmI,MAAMyC,OAAOrC,IAAYjB,SAAWxH,EAAMK,OAAOC,QAlHpEyC,SAAM,IAAAgI,EAAAC,EAAAC,EACT,MAAM,QAAE9K,EAAO,UAAEyK,EAAS,MAAEnD,EAAK,MAAEY,EAAK,UAAE/E,EAAS,eAAE4H,GAAmBjL,KAAKL,MAAMM,OAC7EiL,EAAoBhL,GACtBT,gBAAC6E,IAAa,CACVjB,UAAU,0BACVI,IAAgB,QAAbqH,EAAE5K,EAAQuD,WAAG,IAAAqH,IAAI,KACpB3K,KAAMD,EAAQC,KACdoE,UAAW,CAAEC,OAAQxE,KAAKyK,iBAAkBhG,eAAgBzE,KAAKL,MAAMuC,QAAQC,WAGjFgJ,EAAa,CACfC,aAAqD,QAAzCL,EAAE/K,KAAKL,MAAMuC,QAAQC,QAAQiJ,oBAAY,IAAAL,IAAI,GACzDM,cAAe7D,aAAK,EAALA,EAAO6D,eAEpBC,EAAoBlD,GAASmD,kBAAgBC,YAAYpD,IAC3D3I,gBAACgM,EAAc9J,OAAAC,OAAA,GACP,CACAwG,QACAU,aAAc9I,KAAK4K,qBACnBnG,eAAgBzE,KAAKL,MAAMuC,QAAQC,QACnCH,iBAAkBhC,KAAKgC,iBACvBgF,KAAgF,SAAzEhH,KAAKL,MAAMM,OAAmCyL,uBAAoC,OAAS,YAIxGC,EAAmBhB,GACrBlL,gBAAC6E,IAA0B,CACvBnE,KAAMwK,EACNtH,UAAU,yBACVkB,UAAW,CAAEC,OAAQxE,KAAK0K,sBAAuBjG,eAAgBzE,KAAKL,MAAMuC,QAAQC,WAGtFyJ,EACFnM,gBAAC6E,IAAc3C,OAAAC,OAAA,GACP4F,EACA2D,EAAU,CACd1G,eAAgBzE,KAAKL,MAAMuC,QAAQC,QACnC0J,oBAAoB,EACpBtH,UAAW,CACPa,IAA4B,QAAzB4F,EAAEhL,KAAKL,MAAMM,OAAOuH,aAAK,IAAAwD,IAAI,GAChCvG,eAAgBzE,KAAKL,MAAMuC,QAAQC,QACnC2J,WAAY9L,KAAKL,MAAMoM,SACvBC,kBAAmB,QACnBC,SAAUjM,KAAKL,MAAMuE,GACrBgI,OAASlM,KAAKL,MAAMM,OAAmCyL,wBAE3DS,uBAAqB,KAI7B,IAAKjB,IAAsBS,IAAqBL,EAE5C,OADAtL,KAAKL,MAAMuC,QAAQI,UAAU8J,MAAM,uDAC5B,KAEX,MAAMC,EAAqBrJ,IAAA,GACpBhD,KAAKL,OAAK,IACb2M,MAAOpB,EACP/K,KAAMwL,EACNnE,MAAOoE,EACPxD,MAAOkD,EACPiB,YAAavM,KAAKL,MAAMM,OAAOoD,UAC/BmJ,sBAAuB,CACnBpJ,YAAapD,KAAKL,MAClB0D,UAAWC,IAAW,mBAAoBD,IAE9CoJ,eAAgB,CAAEpJ,UAAW,2BAC7BqJ,iBAAkB,CAAErJ,UAAW,6BAC/BsJ,sBAAuB,CACnBlJ,IAAK,IACLJ,UAAW,yBACX2D,KAAM,QAEV4F,UAAW5M,KAAK6M,gBAChB5B,iBACA9B,kBAAmBD,EAA8B,CAC7CzE,eAAgBzE,KAAKL,MAAMuC,QAAQC,QACnCgH,kBAAmBnJ,KAAKL,MAAMM,OAAOkJ,kBACrCnB,2BAA4BhI,KAAKgI,2BACjC8E,gCAAiC9M,KAAK8M,gCACtC/D,+BAAgC/I,KAAK+I,iCAEzCgE,qBAAsB/M,KAAKgI,2BAC3BgF,0BAA2BhN,KAAK8M,gCAChC/D,+BAAgC/I,KAAK+I,iCAGzC,OAAO/I,KAAKL,MAAMiF,WAAWyH,GAgC1BrE,2BAA2BM,EAAevI,GACzCC,KAAKL,MAAMM,OAAOkJ,oBAClBnJ,KAAKL,MAAMM,OAAOkJ,kBAAkB0B,OAAOvC,IAAQpI,QAAUH,EAAMK,OAAOC,OAI3E0I,+BAA+BP,EAAmBF,EAAevI,GACpE,MAAMkN,EACDjN,KAAKL,MAAMM,OAAOkJ,mBACfoC,kBAAgBC,YAAYxL,KAAKL,MAAMM,OAAOkJ,oBAC9CnJ,KAAKL,MAAMM,OAAOkJ,kBAAkB0B,OAAOvC,KAC/C,GACA2E,EAAwB7E,QACxB6E,EAAwB7E,MAAMyC,OAAOrC,IAAYjB,SAAWxH,EAAMK,OAAOC,OAI1EyM,gCAAgCxE,EAAevI,GAC9CC,KAAKL,MAAMM,OAAOkJ,oBAClBnJ,KAAKL,MAAMM,OAAOkJ,kBAAkB0B,OAAOvC,IAAQL,QAAUlI,EAAMK,OAAOC,OAI1EwM,gBACJ,MAAM,UAAED,EAAS,MAAExE,EAAK,iBAAE8E,GAAqBlN,KAAKL,MAAMM,OAC1D,MAAoB,kBAAhBiN,EACIN,WAAWjE,eACJiE,EAAUjE,eACVP,GAASmD,kBAAgBC,YAAYpD,IAAUA,EAAM,GAAGM,QACxDN,EAAM,GAAGM,QAAQC,eAErB,KAEJ,MAIA6B,a,0ICrMR,MAAM2C,EAAmDxN,IAC5D,MAAM,gBAAEyN,EAAe,wBAAEC,EAAuB,gBAAEC,EAAe,YAAEC,GAAgB5N,EACnF,OAAuC,IAAnC0N,EAAwB1D,QACxBhK,EAAMuC,QAAQI,UAAU8J,MAAM,kDACvB,MAGP3M,IAAA+N,cAACrG,SAAMxF,OAAAC,OAAA,GAAK2L,GACR9N,IAAA+N,cAAC/F,OAAI9F,OAAAC,OAAA,GAAKwL,GACLC,EAAwBrM,IAAI,CAACyM,EAA+BnF,IAErD7I,IAAA+N,cAAC/F,OAAI9F,OAAAC,OAAA,GAAK0L,EAAe,CAAElI,IAAKkD,IAC3BmF,OASdN,a,iFCrBf,MAAMO,EAAkD5G,IAA4C,IAA3C,QAAEV,EAAO,MAAEC,EAAK,aAAEnB,EAAY,MAAEsB,GAAOM,EAC5F,OACIrH,gBAACgI,OAAI9F,OAAAC,OAAA,GAAKwE,GACLC,EACAnB,EACAsB,IAuCPmH,EAAwDC,IAAwC,IAAvC,MAAEpK,EAAK,UAAEI,EAAS,KAAEE,EAAI,QAAEtC,GAASoM,EAC9F,OACInO,gBAACgI,OAAI9F,OAAAC,OAAA,GAAK4B,GACN/D,gBAACgI,OAAI9F,OAAAC,OAAA,GAAKgC,GACLE,EACAtC,KAqBFqM,UAf8ClO,IACzD,MAAM,cAAEwD,EAAa,UAAEF,EAAS,QAAEM,EAAO,mBAAEU,EAAkB,YAAEI,EAAW,QAAEnE,EAAO,0BAAEwE,GAA8B/E,EAEnH,OACIF,gBAAC0H,SAAMxF,OAAAC,OAAA,GAAKuB,GACPF,EAAUC,eAAiBzD,gBAACgI,OAAI9F,OAAAC,OAAA,GAAKqC,IACrChB,EAAUC,eAAiBzD,gBAACkO,EAAoBhM,OAAAC,OAAA,GAAK2B,IACtD9D,gBAACgI,OAAI9F,OAAAC,OAAA,GAAKyC,GACLnE,EArD0C4N,KAQtD,IARuD,aACxDjJ,EAAY,MACZC,EAAK,aACLI,EAAY,eACZM,EAAc,QACdC,EAAO,yBACPM,EAAwB,gCACxBC,GACH8H,EACG,OACIrO,gBAACgI,OAAI9F,OAAAC,OAAA,GAAKiD,GACLC,GACGA,EAAM9D,IAAK2G,GAEAlI,gBAACiO,EAAiB/L,OAAAC,OAAA,GAAK+F,KAErCzC,GACGA,EAAalE,IAAI,CAACoL,EAAwB9D,IAC/B7I,gBAACA,WAAc,CAAC2F,IAAKkD,GAAQ8D,IAE5C3M,gBAACgI,OAAI9F,OAAAC,OAAA,GAAK4D,GACLC,GACGA,EAAQzE,IAAI,CAAC+M,EAAyBzF,IAC3B7I,gBAACA,WAAc,CAAC2F,IAAKkD,GAAQyF,KAIhDtO,gBAACgI,OAAI9F,OAAAC,OAAA,GAAKmE,GACNtG,gBAACgI,OAAI9F,OAAAC,OAAA,GAAKoE,OA0BTgI,CAAatJ,O,8HCtD9B,MAAMuJ,UAA0BxO,gBAAhCC,c,oBAGU,KAAAwO,8BAAwC,iBACxC,KAAAC,iCAA2C,yBAC3C,KAAAC,8BAAwC,gBACxC,KAAAC,qCAA+C,sBAC/C,KAAAC,2CAAqD,cACrD,KAAAC,8BAAwC,gBACxC,KAAAC,8BAAwC,gBACxC,KAAAC,2BAAqC,QACrC,KAAAC,2BAAqC,QACrC,KAAAC,6BAAuC,UACvC,KAAAC,wBAAkC,KAClC,KAAAC,wBAAkC,KAClC,KAAAC,uBAAiC,IAElChM,SACL,MAAMiM,EAAkC/O,KAAKL,MAAMkD,KACnD,OAAMkM,GAAWA,EAAQC,0BAA4BD,EAAQC,yBAAyBC,OAMpFxP,gBAAA,OAAK4D,UAAU,qBACZrD,KAAKkP,yBACJH,EAAQC,yBAAyBC,OACjCjP,KAAKkO,+BAENlO,KAAKkP,yBACJH,EAAQC,yBAAyBC,OACjCjP,KAAKoO,+BAENpO,KAAKkP,yBACJH,EAAQC,yBAAyBC,OACjCjP,KAAKqO,sCAENrO,KAAKkP,yBACJH,EAAQC,yBAAyBC,OACjCjP,KAAKuO,+BAENvO,KAAKkP,yBACJH,EAAQC,yBAAyBC,OACjCjP,KAAKwO,gCAvBF,KA6BHU,yBACNC,EACAC,GAEA,GAAID,GAAWA,EAAQxF,OAAQ,CAC7B,MAAM0F,EAASC,IAAItP,KAAKL,MAAO,yBAA0B,SACzD,GACEK,KAAKuP,gBAAgBH,EAAQpP,KAAKkO,+BAA+B,EAAMmB,GACvE,CACA,MAAMG,EAAmBL,EAAQC,OAC/BK,GAAaA,EAAUC,KAAMC,gBAAkBP,EAAOO,eAExD,GAAIH,GAAoBA,EAAiB7F,QAAU6F,EAAiB,GAAGI,UACrE,OACEnQ,gBAAA,OAAK4D,UAAU,8BACb5D,gBAAA,KAAG4D,UAAU,iEACb5D,gBAACoQ,IAAY,CACXxM,UAAU,iCACViJ,MAAOtM,KAAKmO,iCACZ2B,MAAM,OACNC,KAAMP,EAAiB,GAAGI,UAC1B1D,OAAO,kBAKV,GAAIlM,KAAKuP,gBAAgBH,EAAQpP,KAAKwO,+BAA+B,EAAMa,IAChF,GAAIrP,KAAKgQ,sBAAsBb,EAASnP,KAAKyO,6BACxCzO,KAAKgQ,sBAAsBb,EAASnP,KAAK0O,6BACzC1O,KAAKgQ,sBAAsBb,EAASnP,KAAK2O,+BACzC3O,KAAKgQ,sBAAsBb,EAASnP,KAAK4O,0BACzC5O,KAAKgQ,sBAAsBb,EAASnP,KAAK6O,0BACzC7O,KAAKgQ,sBAAsBb,EAASnP,KAAK8O,wBAC5C,OACErP,gBAAA,OAAK4D,UAAU,wBACb5D,gBAACwQ,UAAO,CACNC,WAAW,KACX/P,KAAMiP,EACN/L,UAAU,8BAEXrD,KAAKgQ,sBAAsBb,EAASnP,KAAKyO,4BACzCzO,KAAKgQ,sBAAsBb,EAASnP,KAAK0O,4BACzC1O,KAAKgQ,sBAAsBb,EAASnP,KAAK2O,6BAA8B,KACvE3O,KAAKgQ,sBAAsBb,EAASnP,KAAK4O,yBACzC5O,KAAKgQ,sBAAsBb,EAASnP,KAAK6O,yBACzC7O,KAAKgQ,sBAAsBb,EAASnP,KAAK8O,6BAI3C,CACL,MAAMU,EAAmBL,EAAQC,OAC/BK,GAAaA,EAAUC,KAAMC,gBAAkBP,EAAOO,eAExD,GAAIH,GAAoBA,EAAiB7F,QAAU6F,EAAiB,GAAGI,UAAW,CAChF,MAAMO,EAAoBf,IAAWpP,KAAKqO,qCAAuCrO,KAAKsO,2CAA6CkB,EAAiB,GAAGE,KACvJ,OACEjQ,gBAAA,OAAK4D,UAAU,wBACb5D,gBAACwQ,UAAO,CACNC,WAAW,KACX/P,KAAMgQ,GAAoB,GAC1B9M,UAAU,8BAEZ5D,gBAAC2Q,IAAiB,CAChB/M,UAAU,6BACVlD,KAAMqP,EAAiB,GAAGI,eAOtC,OAAO,KAGDI,sBACNb,EACAC,EACAiB,GAEA,MAAMb,EAAmBL,EAAQC,OAC/BK,GAAaA,EAAUC,KAAMvO,gBAAkBiO,EAAOjO,eAExD,GAAIqO,GAAoBA,EAAiB7F,QAAU6F,EAAiB,GAAGI,UAAW,CAChF,MAAMU,EAAiBtQ,KAAKuQ,mBAAmBf,EAAiB,GAAIa,GAC9DG,EAAahB,EAAiB,GAAGE,KAAvB,IAChB,GAAuB,OAAnBY,EACF,OACE7Q,gBAAA,OAAK4D,UAAU,0BACb5D,gBAAC2Q,IAAiB,CAChB/M,UAAU,6BACVlD,KAAMqQ,IAER/Q,gBAAA,OAAK4D,UAAU,gCAAgCiN,IAKvD,OAAO,KAGDC,mBAAmBpB,EAAyBkB,GAClD,OAAQlB,EAAQsB,eACd,KAAK,EAEH,OAAOhR,gBAAA,aACT,KAAK,EACH,OAAOO,KAAK0Q,oBAAoBvB,EAASkB,GAC3C,KAAK,EACH,OAAOrQ,KAAK2Q,oBAAoBxB,EAASkB,GAC3C,KAAK,EACH,OAAOrQ,KAAK4Q,mBAAmBzB,EAASkB,GAC1C,KAAK,EACH,OAAOrQ,KAAK6Q,mBAAmB1B,EAASkB,GAC1C,KAAK,EACH,OAAOrQ,KAAK8Q,gBAAgB3B,EAASkB,GACvC,KAAK,EACH,OAAOrQ,KAAK+Q,qBAAqB5B,GACnC,KAAK,GAIH,OAHAnP,KAAKL,MAAM2C,UAAU0O,QACnB,oEAEK,KACT,KAAK,GAIH,OAHAhR,KAAKL,MAAM2C,UAAU0O,QACnB,oEAEK,KACT,QAIE,OAHAhR,KAAKL,MAAM2C,UAAU0O,QACnB,kCAAkC7B,EAAQsB,kCAErC,MAILC,oBAAoBvB,EAAyBkB,GACnD,OAA8B,OAA1BlB,EAAQ8B,oBAAoDC,IAA1B/B,EAAQ8B,cAE1CxR,gBAAA,YACG0P,EAAQgC,aACRhC,EAAQ8B,cACRZ,GAKA,KAGDM,oBAAoBxB,EAAyBkB,GACnD,OACkC,OAAhClB,EAAQiC,0BACwBF,IAAhC/B,EAAQiC,qBACRjC,EAAQiC,oBAAoBC,YAErB5R,gBAAA,YAAO0P,EAAQiC,oBAAoBC,cAAehB,GAGpD,KAGDQ,mBAAmB1B,EAAyBkB,GAClD,OAA6B,OAAzBlB,EAAQmC,mBAAkDJ,IAAzB/B,EAAQmC,aACpC7R,gBAAA,YAAO0P,EAAQmC,aAAcjB,GAG/B,KAGDO,mBAAmBzB,EAAyBkB,GAClD,OAA2B,OAAvBlB,EAAQoC,iBAA8CL,IAAvB/B,EAAQoC,WAClC9R,gBAAA,YAAO0P,EAAQoC,WAAYlB,GAG7B,KAGDS,gBAAgB3B,EAAyBkB,GAC/C,OAA0B,OAAtBlB,EAAQS,gBAA4CsB,IAAtB/B,EAAQS,UACjCnQ,gBAAC2Q,IAAiB,CAACjQ,KAAMgP,EAAQS,WAAaS,GAAU,MAG1D,KAGDU,qBAAqB5B,GAC3B,OAAIA,EAAQqC,aACH/R,gBAAA,YAAO,OAEPA,gBAAA,YAAO,MAIV8P,gBACNkC,EACAC,EACAC,EACAC,GAWA,OATID,IACEC,GACFH,EAAUA,EAAQI,oBAClBH,EAAUA,EAAQG,sBAElBJ,EAAUA,EAAQtQ,cAClBuQ,EAAUA,EAAQvQ,gBAGfsQ,IAAYC,GAIRzD,a,mHCtQf,MAAM6D,UAAsBrS,YAIxBC,YAAYC,GACRC,MAAMD,GAHF,KAAAoS,sBAAgC,EAMjCjP,SACH,MAAMkP,EAAoBhS,KAAKL,MAAMkD,KAAKsM,QAAQF,OAC5CgD,EAAkCjS,KAAKL,MAAMkD,KACnD,KACM7C,KAAKL,MAAMkD,KAAKmM,0BAA4BhP,KAAKL,MAAMkD,KAAKmM,yBAAyBC,QACrFjP,KAAKL,MAAMkD,KAAKsM,SAAWnP,KAAKL,MAAMkD,KAAKsM,QAAQF,QAErD,OAAO,KAGNjP,KAAK+R,uBAEN/R,KAAKkS,QAAU,IAAIC,IAAyB,CACxCC,gBAAiBH,EAAYjD,yBAAyBC,OACtDoD,sBAAuBrS,KAAKsS,2BAA2BN,MAI/D,MAAM9H,EAAiBlK,KAAKuS,sBAAsB5S,MAAM6S,SACxD,OAAItI,GAAcA,EAAWuI,MAAMC,GAAuB,OAAZA,GACnC,KAIPjT,gBAAA,OAAK4D,UAAW,wBAAuBrD,KAAKL,MAAMM,OAAO0S,UAAY,KAChE3S,KAAKuS,uBAKVD,2BAA2BM,GAC/B,MAAMC,EAAmC,GAYzC,OAVA7S,KAAKL,MAAMM,OAAOiK,WAAWlJ,IAAK8R,IAC1BF,EAAcE,EAAKC,gBACnBF,EAAexJ,KAAK,CAChBqG,KAAMoD,EAAKC,cACXtC,cAAe,EACfb,UAAWgD,EAAcE,EAAKC,mBAKnCF,EAMX,4BACI,OACIpT,gBAACA,WAAc,KACVO,KAAKL,MAAMM,OAAOiK,WAAWlJ,IAAI,CAAC8R,EAAME,IAC9BvT,gBAACA,WAAc,CAAC2F,IAAK4N,GACvBhT,KAAKiT,iBAAiBH,EAAME,MAazCC,iBAAiBC,EAA+BC,GACpD,MAAM1D,EAAYzP,KAAKoT,gBAAgBF,EAAaH,eAEpD,IAAKtD,IAAcA,EAAUpP,MAAS,OAAO,KAE7C,OAAQoP,EAAUxJ,MACd,IAAK,SAED,OAAIwJ,EAAUpP,MAAMgT,WAAWC,WAAW,YAC/BtT,KAAKuT,WAAW9D,EAAkCyD,GAEtDlT,KAAKwT,iBAAiB/D,EAAkCyD,GAAc,GACjF,IAAK,SAEL,IAAK,WACD,OAAOlT,KAAKwT,iBAAiB/D,EAAkCyD,GACnE,IAAK,OACD,OAAOlT,KAAKyT,YAAYhE,EAAkCyD,GAC9D,IAAK,UACD,OAAOlT,KAAK0T,eAAejE,EAAmCyD,GAClE,QACI,OAAO,MAIXM,iBAAiBrT,EAAoC+S,GACzD,MAAMS,EADkFC,UAAAjK,OAAA,QAAAuH,IAAA0C,UAAA,IAAAA,UAAA,GAGhFnU,gBAAC2Q,IAAiB,CAACjQ,KAAM,GAAGA,EAAKE,QAAQ6S,EAAaW,YAAc,OAEpEpU,gBAAA,YAAOU,EAAKE,MAAO6S,EAAaW,YAAc,IAGtD,OAAO7T,KAAK8T,YACRH,EACAT,GAIAO,YAAYM,EAA2Bb,GAC3C,OAAOlT,KAAK8T,YACRrU,gBAAA,YAAO,IAAIuU,KAAKD,EAAK1T,OAAQgR,cAAe6B,EAAaW,YACzDX,GAIAQ,eAAeO,EAA4Bf,GAC/C,MAAMgB,EAAkBD,EAAK5T,MAASZ,gBAAA,mBAAmBA,gBAAA,kBACzD,OAAOO,KAAK8T,YACRI,EACAhB,GAIAK,WAAWY,EAA0BjB,GACzC,OAAOlT,KAAK8T,YACRrU,gBAAA,YACIA,gBAACoQ,IAAY,CACTxM,UAAU,iCACViJ,MAAO4G,EAAakB,eAAiBD,EAAI9T,MACzCyP,MAAM,OACNC,KAAMoE,EAAI9T,MACV6L,OAAO,UACPtD,cAAc,EAAI,aACN,aAAYsK,EAAakB,eAAiBD,EAAI9T,UAGlE6S,GAIAY,YAAYO,EAAuBnB,GACvC,IAAIH,EAAgBG,EAAaH,cAIjC,OAHIG,EAAakB,gBACbrB,EAAgBG,EAAakB,eAG7B3U,gBAAA,OAAK4D,UAAW,kBAAiB6P,EAAaoB,gBAAkB,MAC1DpB,EAAaqB,SAAW9U,gBAAA,QAAM4D,UAAU,uBAAuB0P,GACjEtT,gBAAA,OAAK4D,UAAU,sBACVgR,IAWTjB,gBAAgBoB,GACpB,OAAOxU,KAAKkS,QAAS5C,IAAIkF,IAIlB1C,a,iHCzKf,MA0CM2C,EAAqBC,GAEnBjV,2BAAA,KACIA,gBAACgI,OAAI9F,OAAAC,OAAA,GAAK8S,EAAWC,yBAChBD,EAAWE,iBACXF,EAAWG,oBACXH,EAAWI,kBAMtBC,EAAmBA,CACrBC,EACAzT,EACA0T,EACAC,EACAC,EACAC,EACAC,EACArT,EACAsT,EACAC,KAEA,MAAM,cAAEC,GAAkBjU,EAE1B,OAAI6T,EACO3V,2BAAA,KAAG2V,GAEVJ,EACOA,EAAUhU,IAAI,CAACyU,EAAUnN,IAExB7I,gBAAA,OAAK4D,UAAU,sBAAsB+B,IAAK,GAAGkD,KAASoN,IAASC,UAAUtC,cACpEoC,EAASG,SACTN,EAAiB,KAAOO,EAAkBJ,EAAUlU,EAAW0T,EAAejT,EAAkBuT,GAChGD,EACG7V,gBAACgI,OAAI,CAACpE,UAAU,sCACXyS,EAAuBL,EAAUlU,EAAW0T,EAAejT,EAAkBuT,GAC7EE,EAASM,mBACTN,EAASO,cACTP,EAASQ,QAEdR,EAASM,mBACTtW,gBAACgI,OAAI,CAACpE,UAAU,gCACXoS,EAASM,mBACTN,EAASO,cACTP,EAASQ,QAGdxW,2BAAA,KACKgW,EAASO,cACTP,EAASQ,UAO3BZ,EACH5V,gBAAA,OAAK4D,UAAU,wBACX5D,gBAAA,KAAG4D,UAAU,iBAAiBmS,GAC7BN,GAGLzV,2BAAA,KAAG0V,IAULe,EAAuBA,CAACT,EAA+BU,IAA6B,KACtFV,EAASW,eAAiBX,EAASW,cAAcC,UAAUC,aAAaH,IAQtEI,EAAwBd,GAAkC,KAC5DA,EAASW,eAAiBX,EAASW,cAAcC,UAAUC,aAAY,IAGrET,EAAoBA,CACtBJ,EACAlU,EACA0T,EACAjT,EACAuT,KACoB,IAAAiB,EAEpB,IAAKf,EAASW,gBAAkBnB,IAA8B,QAAbuB,EAAAf,EAAS5S,YAAI,IAAA2T,OAAA,EAAbA,EAAeZ,SAASa,gBAAiBlB,EACtF,OAAO,KAGX,MAAM,uBACFmB,EAAsB,yBACtBC,EAAwB,oBACxBC,EAAmB,8BACnBC,EAA6B,uBAC7BC,GACAvV,EAEE4U,EAAkBV,EAASW,cAAcD,gBAEzCrM,EAAUC,2BAAiB,QAAS/H,EAAmB+U,oBAAkBC,eACzEC,EAAyB9M,iCAAuBnI,EAAmB8H,GAEzE,OACIrK,gBAACgI,OAAI9F,OAAAC,OAAA,GAAK6T,EAASW,cAAcc,gBAC7BzX,gBAAA,OAAK4D,UAAU,+BACV8S,EACG1W,gBAAA,QAAM4D,UAAU,WAAWwT,GAE3BpX,gBAAA,QAAM4D,UAAU,QAAQsT,IAG/BR,GACG1W,gBAAA,OAAK4D,UAAU,oCACX5D,gBAAA,QAAM4D,UAAU,0CAA0CoS,EAASW,cAAce,aACjF1X,gBAAC2X,SAAM,CAACpQ,KAAK,OAAO3D,UAAU,mCAAmCiH,QAASiM,EAAqBd,IAC1FqB,IAIbrX,gBAAC2X,SAAMzV,OAAAC,OAAA,CACHyB,UAAU,4BACN4T,EAAsB,CAC1B3M,QAAS4L,EAAqBT,EAAUU,KAEvCA,EAAkBO,EAAyBE,KAMtDS,EAAqBC,GAClBA,GAAyC,IAA5BA,EAAUC,OAAO5N,OAI/BlK,gBAACgI,OAAI9F,OAAAC,OAAA,GAAK0V,EAAUE,SACfF,EAAUG,OACVH,EAAUC,QALR,KAUTG,EAA2BA,CAC7BC,EACAC,EACAjY,IAEKgY,EAIDlY,gBAACgI,OAAI9F,OAAAC,OAAA,GAAKgW,GACLjY,EAAMkY,UACNF,EAAkBG,SAClBH,EAAkBI,SAClBJ,EAAkBK,YAClBL,EAAkBM,IAClBN,EAAkBO,eAAiBP,EAAkBO,eAAiB,KACtEP,EAAkBQ,YAVhB,KAeTC,EAA6BA,CAC/BC,EACAT,EACAjY,IAEK0Y,EAKD5Y,gBAACgI,OAAI9F,OAAAC,OAAA,GAAKgW,GACLS,EAAoBC,SACpBD,EAAoBE,SACpBF,EAAoBG,QACpBH,EAAoBF,aARzBxY,EAAMuC,QAAQI,UAAU8J,MAAM,uDACvB,MAYTqM,EAAwBA,CAAC9Y,EAAuB4B,IAC9C5B,EAAM+Y,gBAAkB/Y,EAAM+Y,eAAe/O,OAAS,EAElDlK,gBAAA,OAAK4D,UAAU,wBACV1D,EAAM+Y,eAAe1X,IAAI2X,IAAY,IAAAC,EAAAC,EAClC,OACIpZ,gBAAA,OAAK2F,IAAKuT,EAAU,GAAGG,WAAYzV,UAAU,+BACxC0V,EACGJ,EAAU,GACVhZ,EAAMsV,cACN1T,EACAyX,EAAYL,GACsC,QAD5BC,EACtBjZ,EAAMuC,QAAQ+W,cAAcxU,eAAeyU,eAAO,IAAAN,OAAA,EAAlDA,EAAoDO,uBAEvDpE,EACG4D,EACAhZ,EAAM4B,UACN5B,EAAMsV,cACNtV,EAAMuV,qBACNvV,EAAMwV,iBACNxV,EAAMyV,kBACNzV,EAAM0V,eACN1V,EAAMqC,iBACNrC,EAAMyZ,sBAC4C,QADvBP,EAC3BlZ,EAAMuC,QAAQ+W,cAAcxU,eAAeyU,eAAO,IAAAL,OAAA,EAAlDA,EAAoDM,2BAQzExZ,EAAM0V,eACT5V,gBAAA,OAAK4D,UAAU,uBACX5D,gBAAA,OAAK4D,UAAU,wBACX5D,gBAAA,KAAG4D,UAAU,iBAAiB1D,EAAM4B,UAAUiU,eAC7C7V,EAAMuV,uBAIfzV,2BAAA,KAAGE,EAAMwV,kBAGX4D,EAA8BA,CAChCtD,EACAR,EACA1T,EACA8X,EACA9D,KACA,IAAA+D,EACA,MAAMnD,EAAwC,QAAzBmD,EAAG7D,EAASW,qBAAa,IAAAkD,OAAA,EAAtBA,EAAwBnD,iBAC1C,WAAEoD,EAAU,aAAEC,EAAY,kBAAEC,EAAiB,uBAAEC,GAA2BnY,EAChF,IAAIoY,EASJ,OAPAA,EAAaxD,EAAkBoD,EAAaC,EACxC/D,EAAS5S,MAAQ4S,EAAS5S,KAAK+S,SAASgE,cACxCD,EAAaD,EACLG,mBAAiBC,cAAcvE,KACvCoE,EAAalE,EAAS5S,MAAQ4S,EAAS5S,KAAK+S,SAASa,eAAiBlB,EAAwBkE,EAAoBE,GAIlHla,2BAAA,KACIA,gBAAA,OAAK4D,UAAU,8CACX5D,gBAAA,KAAG4D,UAAW,8CAA8CsW,EAAWxY,uBACvE1B,gBAAA,KAAG4D,UAAW,8CAA8CsW,EAAWxY,eAAkBwY,GACxFI,EAA2BtE,EAAUlU,EAAW8X,MAM3DvD,EAAyBA,CAC3BL,EACAlU,EACA0T,EACAjT,EACAuT,KACoB,IAAAyE,EAEpB,IAAKvE,EAASW,gBAAkBnB,IAA8B,QAAb+E,EAAAvE,EAAS5S,YAAI,IAAAmX,OAAA,EAAbA,EAAepE,SAASa,gBAAiBlB,EACtF,OAAO,KAGX,MAAM,uBAAEuB,EAAsB,uBAAEJ,EAAsB,oBAAEE,GAAwBrV,EAE1E4U,EAAkBV,EAASW,cAAcD,gBAEzCrM,EAAUC,2BAAiB,QAAS/H,EAAmB+U,oBAAkBC,eACzEC,EAAyB9M,iCAAuBnI,EAAmB8H,GAEzE,OACIrK,2BAAA,KACK0W,EACG1W,gBAAC2X,SAAM,CAAC/T,UAAU,qCAAqCiH,QAASiM,EAAqBd,GAAS,YAAY,UACrGqB,GAEL,KACJrX,gBAAC2X,SAAMzV,OAAAC,OAAA,CACHyB,UAAU,sCACN4T,EAAsB,CAC1B3M,QAAS4L,EAAqBT,EAAUU,KAEvCA,EAAkBO,EAAyBE,KAMtDoC,EAAevD,IACjB,IAAIwE,EAAY,EAIhB,OAHAA,EAAYxE,EAASyE,OAAO,CAACb,EAAO1R,KAAQ,IAAAwS,EACxC,OAAOd,IAAkB,QAATc,EAAAxS,EAAK9E,YAAI,IAAAsX,OAAA,EAATA,EAAWvE,SAASwE,WAAY,IACjD,GACIH,GAGLF,EAA6BA,CAACtE,EAA+BlU,EAA2B8X,KAAiB,IAAAgB,EAAAC,EAAAC,EAC3G,MAAMpE,EAAwC,QAAzBkE,EAAG5E,EAASW,qBAAa,IAAAiE,OAAA,EAAtBA,EAAwBlE,iBAC1C,UAAEqE,EAAS,WAAEC,GAAelZ,EAC5B8O,EAASgJ,EAAQ,EAAIoB,EAAaD,EACxC,OACI/a,2BAAA,KACIA,gBAACgI,OAAI,CAACpE,UAAU,oDACX8S,EACG1W,gBAAA,KAAG4D,UAAU,uDACc,QADuCiX,EAC7D7E,EAASW,qBAAa,IAAAkE,OAAA,EAAtBA,EAAwBI,eACxB,KACsB,QADlBH,EACJ9E,EAASW,qBAAa,IAAAmE,OAAA,EAAtBA,EAAwBpD,aAE7B,KACJ1X,gBAAA,KAAG4D,UAAU,uD,IACPgW,EACD,IACAhJ,E,QAONsK,UAvX6Bhb,IAAqB,IAAAib,EAAAC,EAAAC,EAAA,OAC7Drb,gBAAA,MAAAkC,OAAAC,OAAA,CAAKyB,UAAW1D,EAAM0D,UAAWa,GAAIvE,EAAMuE,IAAQvE,EAAMob,uBAAuBpb,IAC3EA,EAAM2M,MACN3M,EAAMqb,kBAAoBvG,EAAkB9U,EAAMqb,kBACxC,QAAVJ,EAAAjb,EAAMsb,YAAI,IAAAL,GAAVA,EAAYM,gBAAkBvb,EAAMyZ,sBACjCX,EAAsB9Y,EAAOA,EAAM4B,WAEnC9B,gBAACgI,OAAI9F,OAAAC,OAAA,GAAKjC,EAAMwb,kBACXpG,EACGpV,EAAMgZ,UACNhZ,EAAM4B,UACN5B,EAAMsV,cACNtV,EAAMuV,qBACNvV,EAAMwV,iBACNxV,EAAMyV,kBACNzV,EAAM0V,eACN1V,EAAMqC,iBACNrC,EAAMyZ,sBAC4C,QADvByB,EAC3Blb,EAAMuC,QAAQ+W,cAAcxU,eAAeyU,eAAO,IAAA2B,OAAA,EAAlDA,EAAoD1B,wBAI/DxZ,EAAMyb,qBACH3b,gBAACgI,OAAI9F,OAAAC,OAAA,GAAKjC,EAAM0b,qBACX1b,EAAMyb,oBACI,QAAVN,EAAAnb,EAAMsb,YAAI,IAAAH,GAAVA,EAAYI,eACP9C,EAA2BzY,EAAM2b,wBAAyB3b,EAAMiY,kBAAmBjY,GACnF+X,EAAyB/X,EAAM4b,sBAAuB5b,EAAMiY,kBAAmBjY,GACpF0X,EAAkB1X,EAAM6b,oBACxB7b,EAAM8b,2BACN9b,EAAM+b,sBACN/b,EAAMgc,uBAAyBpQ,kBAAgBC,YAAY7L,EAAMgc,uBAC9Dlc,gBAACgI,OAAI9F,OAAAC,OAAA,GAAKjC,EAAMic,+BAAgCjc,EAAMgc,uBACtD,KACHhc,EAAMuV,qBACNvV,EAAMkc,8BAGdlc,EAAMsV,iB,gFC3DT,SAAU6G,EAA6BC,GACzC,IAAIC,EAAQ,EAEZ,OADAD,WAAOlS,QAAQoS,GAAQD,GAASC,EAAK7B,UAAY,GAC7C4B,EAAQ,GAAa,GACrBA,EAAQ,EAAY,GACjB,I,kCCNX,mFAyDc,MAAOnM,UAAqBpQ,gBAOjCqD,SACL,MAEMoZ,EA7CV,SACEC,EACA7P,EACA8P,EACAC,GAEA,GAAkB,YAAdD,EACF,OAAO3c,gBAAA,QAAM4D,UAAU,0BAA0BiJ,GAGnD,GAAkB,cAAd8P,EACF,OAAO3c,gBAAA,KAAG4D,UAAW8Y,EAAc,cAAc,SAGnD,OAAQE,GACN,IAAK,QACH,OACE5c,gBAAA,OAAK4D,UAAU,kCACb5D,gBAAA,KAAG4D,UAAW,GAAG8Y,EAAgB,cAAc,SAC/C1c,gBAAA,QAAM4D,UAAU,0BAA0BiJ,IAGhD,QACE,OACE7M,gBAAA,OAAK4D,UAAU,kCACb5D,gBAAA,QAAM4D,UAAU,0BAA0BiJ,GAC1C7M,gBAAA,KAAG4D,UAAW,GAAG8Y,EAAgB,cAAc,WAmBJG,CAFlB,yBAAyBtc,KAAKL,MAAM4c,MAIjEvc,KAAKL,MAAM2M,MACXtM,KAAKL,MAAMuM,OACXlM,KAAKL,MAAM0c,eAGPG,EAA4BlZ,IAChCuM,EAAa4M,sBACbzc,KAAKL,MAAM0D,WAAa,oBACxB,MACArD,KAAKL,MAAMmQ,MAAQ,OAAO9P,KAAKL,MAAMmQ,MAAU,IAEjD,OACErQ,gBAAC2X,SAAM,CACL/T,UAAWmZ,EACXlQ,MAAOtM,KAAKL,MAAM2M,MAClByD,KAAM/P,KAAKL,MAAMoQ,KAAI,aACT/P,KAAKL,MAAM,cACvBS,OAAQJ,KAAKL,MAAMiJ,aAAe,cAAWsI,EAC7CpB,MAAO9P,KAAKL,MAAMmQ,MAClBxF,QAAStK,KAAKL,MAAM2K,QACpBoS,SAAU1c,KAAKL,MAAM+c,UAEpBR,IAjCOrM,EAAA8M,aAAuC,CACnDJ,MAAO,sBACPrQ,OAAQ,UAGK2D,EAAA4M,sBAAgC,kB,+LC9BjD,IAAMG,EAAN,cAA6Bnd,YAA7BC,c,oBAEY,KAAA6X,OAAiB,EACL,KAAAsF,WAAqB,EACrB,KAAAC,cAAwB,EASrCva,oBACH,MAAMwa,EAAgB/c,KAAKgd,oBAG3Bhd,KAAK6c,WAAaE,EAAc7C,OAC5B,CAACb,EAAO4D,IACG5D,EAAQ4D,EAAMC,SAEzB,GAIAld,KAAK6c,YACL7c,KAAKmd,gBAAgBJ,GAMtBja,SAGH,OAAK9C,KAAK6c,WAKN7c,KAAK8c,aACE9c,KAAKod,cAIZ3d,gBAAA,OAAK4D,UAAU,cACVrD,KAAKqd,oBACLrd,KAAKsd,cAXH,KAwBPN,oBAGJ,MAAMO,EAAQvd,KAAKL,MAAMuC,QAAQC,QAAQob,MAMzC,OALiBA,GAASA,EAAMC,IAC5BD,EAAMC,IAAIC,MAAM,KAAKzc,IAAIic,GAASA,EAAMS,QACxC,IAGW1c,IAAIic,IACf,MAAMQ,EAAQR,EAAMQ,MAAM,KAE1B,MAAO,CACHvZ,IAAKuZ,EAAM,GACXP,UAAYO,EAAM,KAAOE,OAAOF,EAAM,KAAQA,EAAM,GAAK,KAS7DH,aACJ,MAAMzU,EAAO7I,KAAKL,MAAMM,OAAO2d,SAC/B,OAAK/U,EAKDpJ,gBAAA,OAAK4D,UAAU,kBACX5D,gBAACoQ,IAAY,CACTvD,MAAOzD,EAAKtB,SACZwI,KAAMlH,EAAKH,QAAQC,eACnBC,aAAcC,EAAKD,aAAY,aACnBC,EAAKlD,UAAYkD,EAAKlD,UAAYkD,EAAKtB,YATpD,KAmBP8V,oBAGJ,OAAKrd,KAAKuX,OAKNvX,KAAKuX,OAASvX,KAAK6c,WACZ7c,KAAK6d,kBAIT7d,KAAK8d,mBATD9d,KAAK+d,mBAcZX,cACJ,OACI3d,gBAAA,OAAK4D,UAAU,sBACX5D,gBAACue,UAAO,CAAC3a,UAAU,wCACnB5D,gBAAC2Q,IAAiB,CAACjQ,KAAMH,KAAKL,MAAMM,OAAOge,kBAO/CF,mBACJ,MACMhP,GADc/O,KAAKL,MAAMM,OAAOie,2BAA6B,IAE9DC,QAAQ,aAAc,GAAGne,KAAK6c,YAC9BsB,QAAQ,kBAAmB,GAAGne,KAAK6c,YAExC,OACIpd,gBAAA,OAAK4D,UAAU,sBACX5D,gBAAC2Q,IAAiB,CAACjQ,KAAM4O,KAO7B8O,kBACJ,MACM9O,GADc/O,KAAKL,MAAMM,OAAOme,yBAA2B,IAE5DD,QAAQ,aAAc,GAAGne,KAAK6c,YAC9BsB,QAAQ,kBAAmB,IAAGne,KAAK6c,WAAa7c,KAAKuX,SACrD4G,QAAQ,cAAe,GAAGne,KAAKuX,QAEpC,OACI9X,gBAAA,OAAK4D,UAAU,8BACX5D,gBAAC2Q,IAAiB,CAACjQ,KAAM4O,KAO7B+O,mBACJ,MACM/O,GADc/O,KAAKL,MAAMM,OAAOoe,qBAAuB,IAExDF,QAAQ,aAAc,GAAGne,KAAK6c,YAC9BsB,QAAQ,kBAAmB,IAAGne,KAAK6c,WAAa7c,KAAKuX,SACrD4G,QAAQ,cAAe,GAAGne,KAAKuX,QAEpC,OACI9X,gBAAA,OAAK4D,UAAU,sBACX5D,gBAAC2Q,IAAiB,CAACjQ,KAAM4O,KAU7BoO,gBAAgBmB,GAICA,EAASpE,OAC1B,CAACqE,EAASpP,IAEFA,EAAQjL,KAAOyZ,MAAMxO,EAAQjL,IAItBqa,EAAQC,QAAQ,IACZC,IAAcC,sBACjB,CACIC,SAAUxP,EAAQjL,GAClB0a,OAAQzP,EAAQ+N,SAChBhb,QAASlC,KAAKL,MAAMuC,SAExB,KAAQ,MAAM,IAAI2c,MAAM,aAC1BC,MAAM,KACJ9e,KAAKuX,QAAUpI,EAAQ+N,YAM5BqB,EAEXQ,QAAQC,WAICR,QAAQ,KACjBxe,KAAK8c,cAAe,MAtNhBpW,YAAA,CAAXC,K,iCACWD,YAAA,CAAXC,K,mCAJCiW,EAAclW,YAAA,CADnBE,KACKgW,GA8NSA,a,kCC/Pf,gBAgBeqC,IAJ6DnY,IAAA,IAAC,UAAEzD,EAAS,QAAE7B,GAASsF,EAAA,OAC/FrH,gBAAA,OAAK4D,UAAcA,EAAH,qBAAkC7B,K,ocCK/C,MAAM0d,EAA2DpY,IAAA,IAAC,sBACrEqY,EAAqB,QACrBC,EAAO,UACPC,EAAS,YACTC,EAAW,YACXC,EAAW,MACXlG,EAAK,OACLuF,EAAM,mBACNY,GACH1Y,EAAA,OACGrH,gBAACgI,OAAI9F,OAAAC,OAAA,GAAKud,GACLG,EACAF,EACAC,EACAE,EACAlG,EACAuF,EACAY,IAIIC,EAAsD3R,IAAA,IAAC,cAChE4R,EAAa,QACbxf,EAAO,MACPmZ,EAAK,WACLsG,EAAU,QACVC,EAAO,aACPC,GACH/R,EAAA,OACGrO,gBAACgI,OAAI9F,OAAAC,OAAA,GAAK8d,GACLxf,EACAmZ,EACAsG,EACAC,EACAC,IAIIC,EAAsClS,IAAA,IAAC,WAAEmS,EAAU,SAAEC,EAAQ,gBAAEC,EAAe,WAAEC,GAAYtS,EAAA,OACrGnO,gBAACgI,OAAI9F,OAAAC,OAAA,GAAKme,GACLG,GACGzgB,gBAACgI,OAAI9F,OAAAC,OAAA,GAAKqe,GACLC,EAAWlf,IAAImf,GACZ1gB,gBAACA,WAAc,CAAC2F,IAAK+a,EAAUtd,KAAKsd,UAAUC,QAASD,EAAUA,eAOxEE,EAAwCC,IAAA,IAAC,YAAEC,EAAW,OAAEC,GAAQF,EAAA,OACzE7gB,gBAACgI,OAAI9F,OAAAC,OAAA,GAAK2e,GACLC,EAAOxf,IAAI,CAACyf,EAAOnY,IAChB7I,gBAACqgB,EAAiBne,OAAAC,OAAA,CAACwD,IAAKkD,GAAWmY,OAKlCC,EAAwCC,IAAA,IAAC,YAAEC,EAAW,QAAE1gB,EAAO,gBAAE2gB,EAAe,aAAEC,GAAcH,EAAA,OACzGlhB,gBAACgI,OAAI9F,OAAAC,OAAA,GAAKgf,GACL1gB,EACA2gB,EACAC,IAIIC,EAA+CC,IAAA,IAAC,gBACzDC,EAAe,gBACfC,EAAe,OACfV,EAAM,iBACNW,EAAgB,qBAChBC,GACHJ,EAAA,OACGvhB,gBAACgI,OAAI9F,OAAAC,OAAA,GAAKqf,GACLC,GAAmBzhB,gBAACyf,EAA2Bvd,OAAAC,OAAA,GAAKsf,IACpDV,GAAU/gB,gBAAC4gB,EAAkB1e,OAAAC,OAAA,GAAK4e,IAClCY,EACAD,IAIIE,EAAoCC,IAAA,IAAC,UAAEC,EAAS,YAAEC,GAAaF,EAAA,OACxE7hB,gBAACgI,OAAI9F,OAAAC,OAAA,GAAK2f,GACLC,GAAeA,EAAYxgB,IAAI,CAACygB,EAAYnZ,IAAU7I,gBAACshB,EAAqBpf,OAAAC,OAAA,CAACwD,IAAKkD,GAAWmZ,OAoCvFC,UAhC4CC,IAAA,IAAC,kBACxDC,EAAiB,OACjBnK,EAAM,MACNoK,EAAK,QACLte,EAAO,aACPue,EAAY,mBACZC,EAAkB,KAClBC,EAAI,MACJC,EAAK,WACLC,GACHP,EAAA,OACGliB,gBAAC0H,SAAMxF,OAAAC,OAAA,GAAKggB,GACPnK,GAAUhY,gBAACihB,EAAkB/e,OAAAC,OAAA,GAAK6V,IAClClU,EACAse,GACGpiB,2BAAA,KACKoiB,EACAE,GAGRD,GACGriB,gBAACgI,OAAI,CAACpE,UAAU,6CACXye,EACAC,GAGRC,GAAQviB,gBAAC4hB,EAAgB1f,OAAAC,OAAA,GAAKogB,IAC9BC,EACAC,GAAcA,K,uKC9GRjS,MARCnJ,IAAA,IAAGoJ,WAAYiS,EAAO,KAAM1e,IAAK2e,EAAG,UAAE/e,EAAS,KAAElD,EAAI,UAAEwF,EAAYxF,GAAqB2G,EAAA,OACpGsb,EAAM3iB,gBAAC2iB,EAAG,cAAazc,EAAWtC,UAAWC,IAAWD,IACnDlD,GACIV,gBAAC0iB,EAAI,cAAaxc,EAAWtC,UAAWC,IAAWD,IACvDlD,I,ykBCUH,MAAO+G,UAAmBzH,gBAC5BC,YAAYC,GACRC,MAAMD,GAGHmD,SACH,MAAM,QAAE5C,EAAO,MAAEsH,EAAK,KAAEqB,EAAI,KAAE1I,GAASH,KAAKL,MAAMM,OAC5CoiB,EAAsB/e,IAAW,kBAAmBtD,KAAKL,MAAMM,OAAOoD,WAEtEN,EAASC,IAAA,GACPhD,KAAKL,OAAK,IACdO,QAASF,KAAKsiB,eAAepiB,GAC7BsH,MAAOxH,KAAKuiB,mBAAmB/a,GAC/BrH,KAAMH,KAAKwiB,YAAYriB,GACvBoH,SAAUvH,KAAKyiB,gBAAgB5Z,GAE/B3B,WAAY,CACR9D,YAAapD,KAAKL,MAClB0D,UAAWgf,GAGfhb,iBAAkB,CACdhE,UAAW,sBAGfqf,cAAe,CACXrf,UAAW,8BAGfiE,KAAMuB,GAAQA,EAAKH,SAAWG,EAAKH,QAAQC,gBAAkB,CACzDlF,IAAK,IACLJ,UAAW,kBACX0M,KAAMlH,EAAKH,QAAQC,eACnB2D,MAAOzD,EAAKtB,SACZnH,OAAQyI,EAAKD,aAAe,cAAWsI,GAE3C7N,UAAWgf,IAGf,OAAOriB,KAAKL,MAAMiF,WAAW7B,GAGzB0f,gBAAgB5Z,GACpB,OAAKA,GAASA,EAAKtB,SAIX9H,gBAAA,QAAM4D,UAAU,yBAAyBwF,EAAKtB,UAH3C,KAMP+a,eAAepiB,GACnB,OAAKA,GAAYA,EAAQC,MAASD,EAAQC,KAAKwJ,OAK3ClK,gBAACwQ,EAAOtO,OAAAC,OAAA,GAAK1B,EAAO,CAAEyF,UAAWzF,EAAQyF,gBAAauL,EAAW7N,UAAU,+BAJpE,KAQPmf,YAAYriB,GAChB,OAAKA,EAGEV,gBAAA,OAAK4D,UAAU,wBAAwBlD,GAFnC,KAKPoiB,mBAAmB5a,EAAkBgb,GACzC,IAAKhb,IAASA,EAAKib,MAAQjb,EAAKib,IAAIjZ,OAChC,OAAO,KAGX,MAAMkZ,EAAuC,CACzCC,UAAW,CACPC,GAAI,CAAEC,EAAG,gBAAiBC,EAAG,EAAGC,EAAG,GACnCC,GAAI,CAAEH,EAAG,gBAAiBC,EAAG,EAAGC,EAAG,IAEvCE,UAAU,GAEd,OAAO3jB,gBAAC4jB,IAAK1hB,OAAAC,OAAA,GAAK+F,EAAI,CAAEyD,aAAcpL,KAAKL,MAAMuC,QAAQC,QAAQiJ,aAAeC,cAAe1D,EAAK0D,eAAiBwX,EAAsBS,oBAAoB,UAAS,cAAcX,MAI/Kzb,a,sGC9DAqc,UAzC6D5jB,IACxE,MAAM,sBACF6M,EAAqB,UACrBnJ,EAAS,eACToJ,EAAc,iBACdC,EAAgB,MAChBJ,EAAK,KACLnM,EAAI,MACJiI,EAAK,MACLZ,EAAK,aACLgc,EAAY,QACZC,EACAxjB,QAAQ,iBACJyjB,EAAgB,YAChBC,IAEJhkB,EAEJ,IAAIikB,GAAgB,EASpB,OAPIF,IAAqBF,IACrBI,GAAgB,GAEhBD,IAAgBF,IAChBG,GAAgB,GAIhBnkB,gBAAC0H,SAAMxF,OAAAC,OAAA,GAAK4K,EAAqB,CAAEnJ,UAAWC,IAAW,mBAAoBD,EAAW,CAAE,6BAA8BugB,MACpHnkB,gBAACgI,OAAI9F,OAAAC,OAAA,GAAK6K,GACLjF,GAEL/H,gBAACgI,OAAI9F,OAAAC,OAAA,GAAK8K,GACLJ,EACAnM,EACAiI,M,2FC7BjB,MAAMyb,UAAqBpkB,YAA3BC,c,oBAqBY,KAAAokB,2BAA6B,KACjC9jB,KAAKL,MAAMkD,KAAKkhB,aAAc9U,OAAQ+U,WAAY,EAClDhkB,KAAKikB,eAGD,KAAA5M,kBAAoB,CAAC7V,EAAiB0iB,KAC1C,MAAMC,EAAsBnkB,KAAKokB,cAAcF,EAAW,SACpDG,EAAuBrkB,KAAKokB,cAAcF,EAAW,QAC3D,OACIzkB,gBAAC6kB,QAAK,CAACjhB,UAAU,gBAAgByM,MAAOqU,GACpC1kB,gBAAA,OAAK4D,UAAWghB,GAAuB7iB,KAK3C,KAAA4iB,cAAgB,CAACG,EAA6BC,KAClD,OAAQD,GACJ,KAAKE,IAAiBrY,MAClB,MAAO,iBAAiBoY,EAC5B,KAAKC,IAAiBC,KAClB,MAAO,gBAAgBF,EAC3B,KAAKC,IAAiBE,QAClB,MAAO,mBAAmBH,EAC9B,KAAKC,IAAiBG,WAClB,MAAO,sBAAsBJ,EACjC,KAAKC,IAAiBzT,QAClB,MAAO,mBAAmBwT,EAC9B,KAAKC,IAAiBI,KAEtB,QACI,MAAO,KAlDZ/hB,SACH,MAAMgiB,EAAa9kB,KAAKL,MAAMkD,KAC9B,KAAMiiB,GAAcA,EAAWf,cAAgBe,EAAWf,aAAa9U,QACnE,OAAO,KAEX,MAAM8V,EAA4BD,EAAWf,aAAa9U,OAC1D,OAAI8V,EAA0BvjB,UAAYujB,EAA0Bf,UAE5DvkB,gBAAA,OAAK4D,UAAU,UAAU2hB,eAAgBhlB,KAAK8jB,4BACzC9jB,KAAKqX,kBAAkB0N,EAA0BvjB,QAASujB,EAA0BE,cAI1F,KAGJxiB,sBAAsBC,GACzB,OAAOwiB,QAAQxiB,EAAUG,KAAKkhB,cAAuD,YAAvCrhB,EAAUG,KAAKkhB,aAAaoB,SAsCnEtB,a,oLCvDT,MAAOuB,UAA6B3lB,YAC/BqD,SACH,MACIuiB,oBACI9jB,WAAW,gCAAE+jB,EAA+B,gCAAEC,EAA+B,+BAAEC,EAA8B,gCAAEC,GAC/G5iB,MAAQoY,MAAQhM,OAAQyW,IACxBxjB,SAAS,cACL+W,KAGRjZ,KAAKL,MACT,IAAK+lB,EAAa,OAAO,KACzB,MAAM,KAAEzK,GAASyK,EAEXC,EAAgB7J,YAA6B9b,KAAK4lB,mBAAmBC,mBAErEC,EAAY9lB,KAAKL,MAAM0lB,mBAAmBnjB,QAAQ6jB,iBAAiBC,eACnEC,EAAUC,YAAW,OAAQjN,IAAkB,GAC/C2F,EAAS+G,EAAgB3lB,KAAKmmB,gCAAkCnmB,KAAKomB,sBAC3E,OACI3mB,gBAAA,OAAK4D,UAAU,sCACX5D,gBAAA,OAAK4D,UAAU,wCACX5D,gBAAA,QAAM4D,UAAU,kCAAkCiiB,GAClD7lB,gBAAA,OAAK4D,UAAU,gCAAgCyiB,EAAUlH,GAAU,IACnEnf,gBAAA,OAAK4D,UAAU,iCACX5D,gBAAA,OAAK4D,UAAU,wCACVgjB,iBAAOb,EAAgCM,GAAY9lB,KAAKomB,uBAAyB,IAAMT,EAAgB,MAAQA,IAEpHlmB,gBAAA,OAAK4D,UAAU,wCAAwCsiB,E,WAG/DlmB,gBAAA,OAAK4D,UAAU,0CACX5D,gBAAA,QAAM4D,UAAU,kCAAkCkiB,GAClD9lB,gBAAA,OAAK4D,UAAU,yCAAyCyiB,EAAUQ,YAAgC,CAAErL,SAAQsL,SAEhH9mB,gBAAA,OAAK4D,UAAU,+CACX5D,gBAAC2X,SAAM,CAAC/T,UAAU,oCAAoC0M,KAAMkW,GAAUR,KAMtF,yBAA8B,IAAAe,EAI1B,OAAOC,YAA8D,QAA/CD,EAACxmB,KAAKL,MAAM0lB,mBAAmBxiB,KAAKoY,KAAKhM,cAAM,IAAAuX,OAAA,EAA9CA,EAAgDvL,MAG3E,4BACI,IAAI2D,EAAS,EAEb,OADA5e,KAAK4lB,mBAAmBC,kBAAkBhc,QAAQoS,GAAQ2C,GAAU3C,EAAKyK,UAAY,GAC9E9H,EAGX,sCACI,IAAIA,EAAS,EAEb,OADA5e,KAAK4lB,mBAAmBC,kBAAkBhc,QAAQoS,GAAQ2C,GAAU3C,EAAK0K,aAAe,GACjF/H,K,kCC/Df,8DA2BA,MAAMgI,EAAsB,CACxBC,qBAAsB,GACtBC,oBAAqB,GAErBC,kBAAmB,GACnBC,uBAAwB,GACxBC,4BAA6B,EAC7BC,mBAAoB,IAEpBC,gBAAiB,EAEjBC,gBAAiB,GAUf,SAAUd,EAA+Bxf,GAA2C,IAA1C,KAAEmU,GAAwCnU,EAGtF,MAAMsI,EAASqX,YAAgBxL,GAIzBoM,EAAyB5I,IAAc6I,+BAA+BlY,EAAOyW,mBAC7E0B,EAA4B9I,IAAc6I,+BAA+BlY,EAAO2M,OAEtF,OAAKsL,GAA2BE,EAGrBF,IAA2BE,EAE3BC,EAAuBH,IACtBA,GAA0BE,EAkB3BE,EAhB0BF,GAenB,EACmB,uBAEA,uBAqBzC,SAAyBG,GAGrB,MAAMC,EAA4BH,EAAuBE,GAQzD,OALAC,EAA0BpB,OAASK,EAAoBQ,gBAGvDO,EAA0BC,QAAU,SAASD,EAA0BC,QAEhED,EA/CIE,CAAgBR,GAThBI,EAA0B,mBA+BzC,SAASD,EAAuBE,GAC5B,OACWD,EADPC,GAAc,EACmB,oBAC1BA,GAAc,EACa,yBAC3BA,GAAc,GACY,8BAEA,sBAuBzC,SAASD,EAA0BK,GAG/B,QAAgD5W,IAA5C0V,EAAoBkB,GACpB,MAAO,CACHvB,MAAOK,EAAoBkB,GAC3BF,QAASE,GAIjB,MAAM,IAAIjJ,MAAM,uCAAuCiJ,K,yrBCrH3D,MAAMva,UAAoB9N,gBACtBC,YAAYC,GACRC,MAAMD,GAGHmD,SACH,MAAM,MAAEilB,GAAU/nB,KAAKL,MAEvB,IAAKooB,IAAUxc,kBAAgBC,YAAYuc,EAAMC,kBAE7C,OADAhoB,KAAKL,MAAMuC,QAAQI,UAAU8J,MAAM,6DAC5B,KASX,KALIpM,KAAKL,MAAMuC,QAAQC,SACnBnC,KAAKL,MAAMuC,QAAQC,QAAQ8lB,SAC3BjoB,KAAKL,MAAMuC,QAAQC,QAAQ8lB,QAAQC,gBACnCloB,KAAKL,MAAMuC,QAAQC,QAAQ8lB,QAAQC,oBAEfloB,KAAKL,MAAMuC,QAAQC,QAAQgmB,OAAOC,SACtD,OAAO,KAGX,MAAMC,EAASrlB,IAAA,GACRhD,KAAKL,OAAK,IACb4N,YAAa,CACTnK,YAAapD,KAAKL,MAClB0D,UAAWC,IAAW,kBAAmBtD,KAAKL,MAAMM,OAAOoD,YAE/D+J,gBAAiB,CACb,aAAcpN,KAAKL,MAAMM,OAAOqoB,QAChCjlB,UAAW,sBAAsBrD,KAAKL,MAAMM,OAAOqoB,SAAW,aAC7B,aAA7BtoB,KAAKL,MAAMM,OAAOsoB,YAAuC,WAAa,KAE1E9kB,IAAK,KACLuD,KAAM,SAEVsG,gBAAiB,CACbjK,UAAW,qBACXI,IAAK,KACL+kB,SAAU,IACVxhB,KAAM,QAEVqG,wBAAyB0a,GAASA,EAAMC,iBAAiBre,OAAS,GAAKoe,EAAMC,mBAGjF,OAAOhoB,KAAKL,MAAMiF,WAAWyjB,IAItB9a,a,gHCzDf,MAAMkb,UAAyBhpB,gBAIpBqD,SACH,MAAM7C,EAASD,KAAKL,MAAMM,OACpByoB,EAAkBzoB,EAAO0oB,4BAA8B1oB,EAAO0oB,yBAAyBhf,OACvFif,EAAgB3oB,EAAO4oB,0BAA4B5oB,EAAO4oB,uBAAuBlf,OAEvF,OACIlK,gBAAA,OAAK4D,UAAWC,IAAW,qBAAsBrD,EAAO6oB,cAEnD7oB,EAAO8oB,cAAgB/oB,KAAKgpB,iBAAiB/oB,EAAO8oB,cACpD9oB,EAAOgpB,gBACJxpB,gBAAA,OAAK4D,UAAU,+BACVrD,KAAKkpB,gBAAgBjpB,EAAOgpB,eAAgB,qCAIrDxpB,gBAAA,OAAK4D,UAAU,4BACVpD,EAAOkpB,gBAAkBnpB,KAAKopB,eAAenpB,EAAOkpB,eAAgB,+BACpElpB,EAAOopB,mBAAqBrpB,KAAKopB,eAAenpB,EAAOopB,kBAAmB,kCAC1EppB,EAAOqpB,oBAAsBtpB,KAAKkpB,gBAAgBjpB,EAAOqpB,mBAAoB,mCAE9E7pB,gBAAA,OAAK4D,UAAU,qCACVpD,EAAOspB,4BAA8BvpB,KAAKopB,eAAenpB,EAAOspB,2BAA4B,8CAC5FtpB,EAAO0oB,0BAA4BD,GAAmB1oB,KAAKwpB,yBAAyBvpB,EAAO0oB,2BAGhGlpB,gBAAA,OAAK4D,UAAU,kCACVpD,EAAOwpB,0BAA4BzpB,KAAKopB,eAAenpB,EAAOwpB,yBAA0B,2CACxFxpB,EAAO4oB,wBAA0BD,GAAiB5oB,KAAK0pB,8BAA8BzpB,EAAO4oB,2BAUzGO,eAAelpB,EAAwBmD,GAC3C,OACI5D,gBAACwQ,UAAO,CACJ5M,UAAWC,IAAWD,GACtB6M,WAAYhQ,EAAQuD,IACpBtD,KAAMD,EAAQC,OAOlB+oB,gBAAgB/oB,EAAgBkD,GACpC,OACI5D,gBAAC2Q,IAAiB,CACd/M,UAAWC,IAAWD,GACtBlD,KAAMA,IAOV6oB,iBAAiBD,GACrB,MAAMlG,EAAuC,CACzCC,UAAW,CACPC,GAAI,CAAEC,EAAG,gBAAiBC,EAAG,EAAGC,EAAG,GACnCC,GAAI,CAAEH,EAAG,gBAAiBC,EAAG,EAAGC,EAAG,IAEvCE,UAAU,GAGd,OACI3jB,gBAAA,OAAK4D,UAAU,6BACX5D,gBAAC4jB,IAAK1hB,OAAAC,OAAA,GACEmnB,EAAY,CAChB3d,aAAcpL,KAAKL,MAAMuC,QAAQC,QAAQiJ,aACzCC,cAAe0d,EAAa1d,eAAiBwX,MAQrD2G,yBAAyBb,GAC7B,MAAM9F,EAAuC,CACzCC,UAAW,CACPC,GAAI,CAAEC,EAAG,gBAAiBC,EAAG,EAAGC,EAAG,GACnCC,GAAI,CAAEH,EAAG,gBAAiBC,EAAG,EAAGC,EAAG,IAEvCE,UAAU,GAGd,OACI3jB,gBAAA,OAAK4D,UAAU,4CACVslB,EAAyB3nB,IAAI,CAAC2G,EAAqCgiB,IAChElqB,gBAAA,OAAK2F,IAAKukB,EAAKtmB,UAAWC,IAAW,0CAA2CqE,EAAKiiB,0BAChFjiB,EAAKkiB,kBACFpqB,gBAAA,OAAK4D,UAAU,2CACX5D,gBAAC4jB,IAAK1hB,OAAAC,OAAA,GACE+F,EAAKkiB,iBAAgB,CACzBze,aAAcpL,KAAKL,MAAMuC,QAAQC,QAAQiJ,aACzCC,cAAe1D,EAAKkiB,iBAAiBxe,eAAiBwX,MAIlEpjB,gBAAA,OAAK4D,UAAU,2CACVsE,EAAKmiB,qBAUtBJ,8BAA8Bb,GAClC,OACIppB,gBAAA,OAAK4D,UAAU,yCACVwlB,EAAuB7nB,IAAI,CAAC2G,EAAmCgiB,IAC5DlqB,gBAAA,OAAK2F,IAAKukB,EAAKtmB,UAAWC,IAAW,uCAAwCqE,EAAKoiB,uBAC7EpiB,EAAKoL,eAAiB/S,KAAKopB,eAAezhB,EAAKoL,cAAe,wCAC9DpL,EAAKqiB,eAAiBhqB,KAAKkpB,gBAAgBvhB,EAAKqiB,cAAe,4CAQzEvB,a,oGC/If,MAoBMwB,EAA+BnlB,GAE7BrF,2BAAA,KACKqF,GAASA,EAAM6E,OACf7E,EAAM9D,IAAI,CAAC2G,EAAuBW,IAE1B7I,gBAACA,WAAc,CAAC2F,IAAKkD,GAChBX,IAIb,MAIEuiB,UAnC8CvqB,IAErD,MAAM,OAAEwqB,EAAM,eAAEC,EAAc,uBAAEC,EAAsB,qBAAEC,GAAyB3qB,EAC3E+S,EAAU6X,SAASC,eAAe7qB,EAAM0qB,uBAAuBjnB,YAAYc,IAC3EumB,EAAe/X,aAAO,EAAPA,EAASgY,uBAAuB,6BACrD,IAAIC,EAAgB,GAIpB,OAHIF,GAAgBA,EAAa,IAA4C,IAAtCA,EAAa,GAAGG,oBACnDD,EAAgB,uBAGhBlrB,gBAAC0H,SAAMxF,OAAAC,OAAA,GAAKyoB,EAAsB,CAAEnmB,GAAIvE,EAAM0qB,uBAAuBjnB,YAAYc,GAAIb,UAAWC,IAAW+mB,EAAuBhnB,UAAWsnB,KACzIlrB,gBAACgI,OAAI9F,OAAAC,OAAA,GAAKuoB,GACN1qB,gBAACgI,OAAI9F,OAAAC,OAAA,GAAK0oB,GACLF,GAAkBA,EAAeS,sBAAwBT,EAAeS,qBAAqBlhB,QAAWsgB,EAA4BG,EAAeS,2B,4DCM5K,MAAMC,EAAgBC,IAClB,GAAIA,EAAW,CACX,MAAMC,EAAkBngB,OAAOogB,SAASF,EAAW,IACnD,IAAKpN,MAAMqN,GACP,OAAOA,IAoBJE,IAbgDpkB,IAAA,IAAC,GAAE5C,EAAE,KAAE+B,EAAI,MAAE5F,EAAK,QAAE8F,EAAO,UAAE9C,EAAS,UAAE0nB,EAAS,SAAEI,GAAUrkB,EAAA,OACxHrH,gBAAA,SACIyE,GAAIA,EACJ+B,KAAMA,EACN5F,MAAOA,EACPgD,UAAW,GAAGA,WAAmBA,KAAaa,IAC9CiC,QAAqB,KAAZA,EAAiBA,OAAU+K,EAAS,gBAC/B,OACd6Z,UAAWD,EAAaC,GACxBI,SAAUA,M,gKCtBH3hB,MAnBuC1C,IAAA,IAAC,MAAEsB,GAAOtB,EAAA,OAC5DrH,gBAAA,OAAK4D,UAAU,yBACV+E,EAAMpH,IAAI,CAACoqB,EAAiB9iB,KACzB,MAAM8B,EAAqB,IAAV9B,EAAc,mBAAqB,qBACpD,OAAO7I,gBAAA,KACH2F,IAAK,QAAQkD,EACbjF,UAAW+G,EACXkC,MAAO8e,EAAI7jB,SACXwI,KAAMqb,EAAI1iB,SAAW0iB,EAAI1iB,QAAQC,eAAc,aACnCyiB,EAAIzlB,UAChBvF,OAAQgrB,EAAIxiB,aAAe,cAAWsI,EACtCma,IAAI,cAEHD,EAAI7jB,c,ykBCYrB,MAAM+jB,UAAsC7rB,gBAExCC,YAAmBC,GACfC,MAAMD,GAEN4rB,YACI,KAAK,IAAAC,EAAAC,EAAAC,EAAG,MAAO,CAAC1rB,KAAKL,MAAMkD,KAAKoY,KAA0B,QAAtBuQ,EAAExrB,KAAKL,MAAMkD,KAAKoY,YAAI,IAAAuQ,OAAA,EAApBA,EAAsBvc,OAA4B,QAAtBwc,EAAEzrB,KAAKL,MAAMkD,KAAKoY,YAAI,IAAAwQ,GAAQ,QAARA,EAApBA,EAAsBxc,cAAM,IAAAwc,OAAA,EAA5BA,EAA8BxQ,KAA0B,QAAtByQ,EAAE1rB,KAAKL,MAAMkD,KAAKoY,YAAI,IAAAyQ,GAAQ,QAARA,EAApBA,EAAsBzc,cAAM,IAAAyc,OAAA,EAA5BA,EAA8BzQ,KAAK0Q,sBAC3I,KACI3rB,KAAKikB,gBAKVnhB,SAAM,IAAA8oB,EACT,MAAMC,EAASC,YAA0C,QAArBF,EAAC5rB,KAAKL,MAAMkD,KAAKoY,YAAI,IAAA2Q,GAAQ,QAARA,EAApBA,EAAsB3c,cAAM,IAAA2c,OAAA,EAA5BA,EAA8B3Q,OAE7D,QAAE/a,EAAO,UAAEyK,EAAS,MAAEnD,EAAK,MAAEY,EAAK,UAAE/E,GAAcrD,KAAKL,MAAMM,OAC7DiL,EAAoBhL,GAAWA,EAAQC,MAAQV,gBAACwQ,UAAO,CAAC5M,UAAU,0BAA0B6M,WAAYhQ,EAAQuD,IAAKtD,KAAMD,EAAQC,OACnIgL,EAAa,CACfC,aAAcpL,KAAKL,MAAMuC,QAAQC,QAAQiJ,cAAgB,GACzDC,cAAe7D,GAASA,EAAM6D,eAE5BC,EAAoBlD,GAASA,EAAMuB,OAAS,GAAKlK,gBAACgM,EAAc9J,OAAAC,OAAA,GAAK,CAAEwG,WACvEuD,EAAmBhB,GAAalL,gBAAC6E,IAA0B,CAACnE,KAAMwK,EAAWtH,UAAU,2BACvFuI,EAAoBpE,GAAS/H,gBAAC6E,IAAc3C,OAAAC,OAAA,GAAK4F,EAAW2D,IAElE,KAAKD,GAAsBS,GAAqBC,GAAsBN,GAClE,OAAO7L,gBAAA,YAGX,MAAMssB,EAAsC/oB,IAAA,GACrChD,KAAKL,OAAK,IACb2M,MAAOpB,EACP/K,KAAMwL,EACNnE,MAAOoE,EACPxD,MAAOkD,EACPiB,YAAavM,KAAKL,MAAMM,OAAOoD,UAC/BmJ,sBAAuB,CACnBpJ,YAAapD,KAAKL,MAClB0D,UAAWC,IAAW,mBAAoBD,IAE9CA,UAAWA,EACXoJ,eAAgB,CAAEpJ,UAAW,2BAC7BqJ,iBAAkB,CAAErJ,UAAW,6BAC/BmgB,eAAgBqI,EAAOG,UACvBvI,UAAWoI,EAAOrX,OAGtB,OAAOxU,KAAKL,MAAMiF,WAAWmnB,IAItBT,a,0ECxDAW,IAV6CnlB,IAA4E,IAA3E,GAAE5C,EAAE,UAAEb,EAAS,KAAElD,EAAI,UAAEwF,EAAS,SAAE+W,EAAQ,iBAAE1a,EAAgB,QAAEsI,GAASxD,EAChI,MAAMgD,EAAUC,2BAAiB,QAAS/H,EAAmB7B,GACvD+J,EAAaC,iCAAuBnI,EAAmB8H,GAC7D,OACIrK,gBAAC2X,SAAMzV,OAAAC,OAAA,CAACsC,GAAIA,EAAIb,UAAWA,EAAS,aAAcsC,EAAW+W,SAAUA,EAAUpS,QAASA,GAAaJ,GAClG/J,K,kCCvBb,gBAoBe+rB,IAN2CplB,IAAA,IAAC,GAAE5C,EAAE,MAAEqC,EAAK,UAAElD,EAAS,KAAElD,GAAM2G,EAAA,OACrFrH,gBAAA,SAAOyE,GAAOA,EAAH,SAAeb,UAAcA,EAAH,SAAsB8oB,QAAS5lB,GAC/DpG,K,oGCPT,MAoBM8pB,EAA+BnlB,GAE7BrF,2BAAA,KACKqF,GAASA,EAAM6E,OACf7E,EAAM9D,IAAI,CAAC2G,EAAuBW,IAE1B7I,gBAACA,WAAc,CAAC2F,IAAKkD,GAChBX,IAIb,MAIEuiB,UAnC8CvqB,IAErD,MAAM,OAAEwqB,EAAM,eAAEC,EAAc,uBAAEC,EAAsB,qBAAEC,GAAyB3qB,EAC3E+S,EAAU6X,SAASC,eAAe7qB,EAAM0qB,uBAAuBjnB,YAAYc,IAC3EumB,EAAe/X,aAAO,EAAPA,EAASgY,uBAAuB,6BACrD,IAAIC,EAAgB,GAIpB,OAHIF,GAAgBA,EAAa,IAA4C,IAAtCA,EAAa,GAAGG,oBACnDD,EAAgB,uBAGhBlrB,gBAAC0H,SAAMxF,OAAAC,OAAA,GAAKyoB,EAAsB,CAAEnmB,GAAIvE,EAAM0qB,uBAAuBjnB,YAAYc,GAAIb,UAAWC,IAAW+mB,EAAuBhnB,UAAWsnB,KACzIlrB,gBAACgI,OAAI9F,OAAAC,OAAA,GAAKuoB,GACN1qB,gBAACgI,OAAI9F,OAAAC,OAAA,GAAK0oB,GACLF,GAAkBA,EAAeS,sBAAwBT,EAAeS,qBAAqBlhB,QAAWsgB,EAA4BG,EAAeS,2B,kCCtB5K,gBAaeuB,IAFuDtlB,IAAA,IAAC,UAAEzD,GAAWyD,EAAA,OAAKrH,gBAAA,OAAK4D,UAAcA,EAAH,qB,iFCKzG,MAAMgpB,EAA2BljB,IAA8D,IAAAmjB,EAC3F,OACI7sB,gBAACgI,OAAI9F,OAAAC,OAAA,GAAKuH,EAAkBG,uBACiB,QADIgjB,EAC5CnjB,EAAkBI,8BAAsB,IAAA+iB,OAAA,EAAxCA,EAA0CtrB,IAAK2G,GAExClI,2BAAA,KACKkI,EAAKzH,QACNT,gBAACgI,OAAI9F,OAAAC,OAAA,GAAK+F,EAAKqB,gCACVrB,EAAKxH,KACNV,gBAACgI,OAAI9F,OAAAC,OAAA,GAAK+F,EAAKsB,4BAA6BtB,EAAKS,YAyD9Dmb,UAhD4C5jB,IACvD,MAAM,sBACF6M,EAAqB,eACrBC,EAAc,iBACdC,EAAgB,MAChBJ,EAAK,KACLnM,EAAI,MACJiI,EAAK,MACLZ,EAAK,sBACLmF,EAAqB,UACrBC,EAAS,eACT3B,EAAc,kBACd9B,GACAxJ,EAEJ,OAAIiN,EAEInN,gBAAC0H,SAAMxF,OAAAC,OAAA,GAAK4K,GACR/M,gBAACgI,OAAI9F,OAAAC,OAAA,GACG+K,EAAqB,CACzBoD,KAAMnD,EACNvJ,UAAWsJ,EAAwBA,EAAsBtJ,UAAY,GAAE,aAC3D4H,IAEZxL,gBAACgI,OAAI9F,OAAAC,OAAA,GAAK6K,GAAiBjF,IAE/B/H,gBAACgI,OAAI9F,OAAAC,OAAA,GAAK8K,GACLJ,EACAnM,EACAiI,EACAe,GAAqBkjB,EAAwBljB,KAM1D1J,gBAAC0H,SAAMxF,OAAAC,OAAA,GAAK4K,GACR/M,gBAACgI,OAAI9F,OAAAC,OAAA,GAAK6K,GAAiBjF,GAC3B/H,gBAACgI,OAAI9F,OAAAC,OAAA,GAAK8K,GACLJ,EACAnM,EACAiI,EACAe,GAAqBkjB,EAAwBljB","file":"static/js/15.e00f18011f8d5016bbed.chunk.js","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { PasswordRegex } from '@msdyn365-commerce-modules/retail-actions';\nimport { getTelemetryObject, IModuleProps, INodeProps, ITelemetryContent, Modal, ModalBody } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport { observable } from 'mobx';\nimport { observer } from 'mobx-react';\nimport * as React from 'react';\n\nimport PasswordResetButtonComponent from './components/password-reset-button';\nimport PasswordResetErrorComponent from './components/password-reset-error';\nimport PasswordResetInputComponent from './components/password-reset-input';\nimport PasswordResetLabelComponent from './components/password-reset-label';\nimport PasswordResetLoadingIconComponent from './components/password-reset-loading-icon';\nimport PasswordResetLoadingMessageComponent from './components/password-reset-loading-message';\nimport { IPasswordResetConfig, IPasswordResetProps } from './password-reset.props.autogenerated';\n\nexport interface IPasswordResetViewState {\n isShowLoading: boolean;\n}\n\nexport interface IPasswordResetItem {\n wrapper: INodeProps;\n key: string;\n label: React.ReactNode;\n errorMessage: React.ReactNode;\n input: React.ReactNode;\n}\n\nexport interface IPasswordResetLocalAccount {\n localAccount: INodeProps;\n items: IPasswordResetItem[];\n errorMessage: React.ReactNode[];\n buttonsWrapper: INodeProps;\n buttons: React.ReactNode[];\n verificationSuccessModal: INodeProps;\n verificationSuccessModalMessage: INodeProps;\n}\n\nexport interface IPasswordResetLoading {\n modal: INodeProps;\n modalBody: INodeProps;\n icon: React.ReactNode;\n message: React.ReactNode;\n}\n\nexport interface IPasswordResetViewProps {\n className: string;\n viewState: IPasswordResetViewState;\n loading: IPasswordResetLoading;\n passwordReset: IModuleProps;\n defaultAADConainer: INodeProps;\n aadConainer: INodeProps;\n heading: React.ReactNode;\n passwordResetLocalAccount: IPasswordResetLocalAccount;\n}\n\n/**\n *\n * PasswordReset component.\n * @extends {React.Component>}\n */\n@observer\nclass PasswordReset extends React.Component> {\n private readonly moduleClassName: string = 'ms-password-reset';\n\n private readonly telemetryContent?: ITelemetryContent;\n\n @observable private newPasswordRegex: string;\n\n @observable private reenterPasswordRegex: string;\n\n @observable private isInitialized: boolean;\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n private initializationTimer: any;\n\n constructor(props: IPasswordResetProps) {\n super(props);\n\n this.newPasswordRegex = PasswordRegex.defaultRegex.source;\n this.reenterPasswordRegex = PasswordRegex.defaultRegex.source;\n this.isInitialized = false;\n this.telemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n }\n\n public componentDidMount(): void {\n this._onInit();\n }\n\n // After successful AAD initialization, call initialize method provided by AAD to attach events.\n public componentDidUpdate(): void {\n // eslint-disable-next-line @typescript-eslint/dot-notation, @typescript-eslint/no-unsafe-member-access -- Auto-suppressed.\n if (this.isInitialized && window && window['$element'] && window['$element']['initialize']) {\n // eslint-disable-next-line @typescript-eslint/dot-notation, @typescript-eslint/no-unsafe-member-access -- Auto-suppressed.\n window['$element']['initialize']();\n }\n }\n\n public shouldComponentUpdate(nextProps: IPasswordResetProps, nextState: IPasswordResetViewState): boolean {\n if (this.state === nextState && this.props.data === nextProps.data) {\n return false;\n }\n return true;\n }\n\n public render(): JSX.Element {\n const { config, resources } = this.props;\n\n const viewProps = {\n ...this.props,\n viewState: {\n isShowLoading: !this.isInitialized\n },\n passwordReset: {\n moduleProps: this.props,\n className: classnames(this.moduleClassName, config.className)\n },\n loading: {\n modal: {\n tag: Modal,\n isOpen: true\n },\n modalBody: {\n tag: ModalBody\n },\n icon: ,\n message: \n },\n defaultAADConainer: {\n id: 'api',\n style: { display: 'none' }\n },\n aadConainer: {\n id: this.isInitialized ? 'api' : null,\n className: `${this.moduleClassName}__container`\n },\n heading: config.heading && (\n \n ),\n passwordResetLocalAccount: this._renderLocalAccount()\n };\n\n return this.props.renderView(viewProps) as React.ReactElement;\n }\n\n public handleHeadingChange = (event: Msdyn365.ContentEditableEvent) => (this.props.config.heading!.text = event.target.value);\n\n // eslint-disable-next-line @typescript-eslint/naming-convention\n public _onInit = () => {\n this._prePopulateData();\n this._updateErrorMessage();\n\n // Check if AAD initialization is complete. AAD do not provide any event to subscribe so we need to check variable set by AAD to check initialization status.\n this.initializationTimer = setInterval(() => {\n this._isInitializationSuccessful();\n }, 100);\n setTimeout(() => {\n clearInterval(this.initializationTimer);\n }, 10_000);\n };\n\n // After successful AAD initialization, remove waiting and preload any data, if needed.\n private readonly _isInitializationSuccessful = () => {\n // eslint-disable-next-line @typescript-eslint/dot-notation, @typescript-eslint/no-unsafe-member-access -- Auto-suppressed.\n if (window && window['$diags'] && window['$diags']['initializationSuccessful']) {\n clearInterval(this.initializationTimer);\n this.isInitialized = true;\n }\n };\n\n private readonly _prePopulateData = () => {\n // eslint-disable-next-line @typescript-eslint/dot-notation, @typescript-eslint/no-unsafe-member-access -- Auto-suppressed.\n if (window['SA_FIELDS'] && window['SA_FIELDS']['AttributeFields']) {\n // eslint-disable-next-line @typescript-eslint/dot-notation, @typescript-eslint/no-unsafe-member-access -- Auto-suppressed.\n window['SA_FIELDS']['AttributeFields'].map((obj: { ID: string; PAT: string }) => {\n switch (obj.ID.toLowerCase()) {\n case 'newpassword': {\n this.newPasswordRegex = obj.PAT;\n break;\n }\n case 'reenterpassword': {\n this.reenterPasswordRegex = obj.PAT;\n break;\n }\n default:\n }\n });\n }\n };\n\n private readonly _updateErrorMessage = () => {\n const { resources } = this.props;\n\n // eslint-disable-next-line @typescript-eslint/dot-notation -- Auto-suppressed.\n if (window && window['CONTENT']) {\n const message = {\n verifying_blurb: resources.loadingMessage\n };\n\n // eslint-disable-next-line @typescript-eslint/dot-notation -- Auto-suppressed.\n Object.assign(window['CONTENT'], message);\n }\n };\n\n private _renderLocalAccount(): IPasswordResetLocalAccount {\n const { resources } = this.props;\n return {\n localAccount: {\n id: 'attributeList',\n className: `${this.moduleClassName}__account-items attr`\n },\n items: [\n this._renderInput('newPassword', 'password', resources.newPasswordLabelText, this.newPasswordRegex),\n this._renderInput('reenterPassword', 'password', resources.confirmPasswordLabelText, this.reenterPasswordRegex)\n ],\n errorMessage: [\n ,\n ,\n ,\n \n ],\n buttonsWrapper: {\n className: `${this.moduleClassName}__buttons`\n },\n buttons: [\n ,\n \n ],\n verificationSuccessModal: {\n className: `${this.moduleClassName}__verifying-modal verifying-modal`\n },\n verificationSuccessModalMessage: {\n id: 'verifying_blurb',\n className: `${this.moduleClassName}__verifying-modal-message`\n }\n };\n }\n\n private _renderInput(id: string, type: string, labelText: string, pattern?: string): IPasswordResetItem {\n const className = `${this.moduleClassName}__account-item`;\n return {\n wrapper: {\n className: classnames(className, `${className}-${id}`, 'entry-item', 'attrEntry')\n },\n key: id,\n label: (\n \n ),\n errorMessage: (\n \n ),\n input: (\n \n )\n };\n }\n}\n\nexport default PasswordReset;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nexport interface IPasswordResetErrorProps {\n id?: string;\n className: string;\n type?: string;\n message?: string;\n}\n\nconst PasswordResetError: React.FC = ({ id, className, type = 'page', message }) => {\n const errorClassName = `${className}__${type}-error`;\n\n return (\n \n );\n};\n\nexport default PasswordResetError;\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\nimport { IFooterViewProps } from './smwe-footer-item';\r\n\r\n/**\r\n *\r\n * FooterItemView component\r\n * @extends {React.PureComponent}\r\n */\r\nexport class FooterItemView extends React.PureComponent {\r\n public render(): JSX.Element | null {\r\n const { FooterItem } = this.props;\r\n return (\r\n \r\n {/* New footer module */}\r\n {this._renderElement(this.props)}\r\n \r\n );\r\n }\r\n\r\n private _renderElement(props: IFooterViewProps): React.ReactNode | null {\r\n const { heading, HeadingContainer, Link, linkText, image } = props;\r\n if (heading) {\r\n return (\r\n \r\n {heading}\r\n {linkText}\r\n {image}\r\n \r\n );\r\n } else if (Link) {\r\n return (\r\n \r\n {linkText}\r\n {image}\r\n \r\n );\r\n }\r\n return (\r\n <>\r\n {linkText}\r\n {image}\r\n \r\n );\r\n }\r\n}\r\n\r\nexport default FooterItemView;","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { INodeProps } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IAdditionalContentData, ILinksData } from '../content-block.props.autogenerated';\n\n/**\n * IContentBlockAdditionalContentProps: Interface for\n * Content Block Additional Content Component props.\n */\nexport interface IContentBlockAdditionalContentProps {\n requestContext: Msdyn365.IRequestContext;\n additionalContent: IAdditionalContentData[] | undefined;\n handleAdditionalTextChange(index: number, event: Msdyn365.ContentEditableEvent): void;\n handleAdditionalParagraphChange(index: number, event: Msdyn365.ContentEditableEvent): void;\n handleAdditionalLinkTextChange(linkIndex: number, index: number, event: Msdyn365.ContentEditableEvent): void;\n}\n\n/**\n * IContentBlockAdditionalContentProps: Interface for\n * Content Block Additional Content view props.\n */\nexport interface IContentBlockAdditionalContentViewProps {\n additionalContentNode: INodeProps;\n additionalContentItems?: IContentBlockAdditionalContentItemViewProps[];\n}\n\n/**\n * IContentBlockAdditionalContentProps: Interface for\n * Content Block Additional Content Item view props.\n */\nexport interface IContentBlockAdditionalContentItemViewProps {\n heading: React.ReactNode;\n text: React.ReactNode;\n links: React.ReactNode;\n additionalContentItemContainer: INodeProps;\n additionalContentItemLinks: INodeProps;\n}\n\n/**\n * Renders additional content heading.\n * @param additionalContentHeading - Additional content heading.\n * @param props - Content Block Additional content component props.\n * @param itemIndex - Item index.\n * @returns Heading Node.\n */\nconst renderHeading = (additionalContentHeading: string, props: IContentBlockAdditionalContentProps, itemIndex: number) => {\n const requestContext = props.requestContext;\n return (\n {\n props.handleAdditionalTextChange(itemIndex, event);\n },\n requestContext\n }}\n />\n );\n};\n\n/**\n * Renders additional content heading.\n * @param additionalContentParagraphText - Additional content paragraph text.\n * @param props - Content Block Additional content component props.\n * @param itemIndex - Item index.\n * @returns Paragraph Node.\n */\nconst renderParagraph = (additionalContentParagraphText: string, props: IContentBlockAdditionalContentProps, itemIndex: number) => {\n const requestContext = props.requestContext;\n return (\n {\n props.handleAdditionalTextChange(itemIndex, event);\n },\n requestContext\n }}\n />\n );\n};\n\n/**\n * Renders additional content heading.\n * @param ctaLink - Additional content link.\n * @param props - Content Block Additional content component props.\n * @param itemIndex - Item index.\n * @param linkIndex - Additional content link index.\n * @returns Link Node.\n */\nconst renderLinks = (ctaLink: ILinksData, props: IContentBlockAdditionalContentProps, itemIndex: number, linkIndex: number) => {\n const editableLink: Msdyn365.ILinksData = {\n ariaLabel: ctaLink.ariaLabel,\n className: 'ms-content-block__details__additional-content-cta-links',\n linkText: ctaLink.linkText,\n linkUrl: ctaLink.linkUrl.destinationUrl,\n openInNewTab: ctaLink.openInNewTab,\n role: 'link'\n };\n const requestContext = props.requestContext;\n return (\n {\n props.handleAdditionalLinkTextChange(linkIndex, itemIndex, event);\n },\n requestContext\n }}\n />\n );\n};\n\n/**\n * Create node for each additonal content item.\n * @param item - Content block additonal content item props.\n * @param props - Content Block Additional content component props.\n * @param itemIndex - Item index.\n * @returns IContentBlockAdditionalContentItemViewProps.\n */\nconst assembleNode = (\n item: IAdditionalContentData,\n props: IContentBlockAdditionalContentProps,\n itemIndex: number\n): IContentBlockAdditionalContentItemViewProps => {\n const headingNode = item.heading && renderHeading(item.heading, props, itemIndex);\n const paragraphNode = item.subtext && renderParagraph(item.subtext, props, itemIndex);\n const linksNode = item.links?.map((ctaLink: ILinksData, index: number) => {\n return renderLinks(ctaLink, props, itemIndex, index);\n });\n\n return {\n heading: headingNode,\n text: paragraphNode,\n links: linksNode,\n additionalContentItemContainer: { className: 'ms-content-block__details__additional-content__container' },\n additionalContentItemLinks: { className: 'ms-content-block__details__additional-content-cta' }\n };\n};\n\n/**\n * ContentBlockAdditionalContent component.\n * @param props - Content Block Additional content component props.\n * @returns Content Block Additional content view props.\n */\nexport const contentBlockAdditionalContent = (\n props: IContentBlockAdditionalContentProps\n): IContentBlockAdditionalContentViewProps | undefined => {\n const { additionalContent } = props;\n if (!additionalContent) {\n return undefined;\n }\n\n const reactNodes: IContentBlockAdditionalContentItemViewProps[] = [];\n additionalContent.map((item, index: number) => {\n return reactNodes.push(assembleNode(item, props, index));\n });\n\n return {\n additionalContentNode: { className: 'ms-content-block__details__additional-content' },\n additionalContentItems: reactNodes\n };\n};\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { getPayloadObject, getTelemetryAttributes, ITelemetryContent, onTelemetryClick } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { ILinksData } from '../content-block.props.autogenerated';\n\nexport interface IContentCardLinks {\n links: ILinksData[];\n requestContext: Msdyn365.IRequestContext;\n telemetryContent: ITelemetryContent;\n role?: string;\n onTextChange?(index: number): (event: Msdyn365.ContentEditableEvent) => void;\n}\n\n/**\n *\n * ContentCardLinks component.\n * @extends {React.PureComponent}\n */\nexport class ContentCardLinks extends React.PureComponent {\n public render(): JSX.Element {\n const editableLinks = this._mapEditableLinks(this.props.links);\n return (\n
\n {editableLinks && editableLinks.length > 0 ? (\n \n ) : null}\n
\n );\n }\n\n private readonly _mapEditableLinks = (linkdata: ILinksData[]): Msdyn365.ILinksData[] | null => {\n if (!linkdata || linkdata.length === 0) {\n return null;\n }\n const editableLinks: Msdyn365.ILinksData[] = [];\n linkdata.forEach((link, index) => {\n // Construct telemetry attribute to render\n const payLoad = getPayloadObject('click', this.props.telemetryContent, '', '');\n const linkText = link.linkText ? link.linkText : '';\n payLoad.contentAction.etext = linkText;\n const attributes = getTelemetryAttributes(this.props.telemetryContent, payLoad);\n const btnClass = index === 0 ? 'msc-cta__primary' : 'msc-cta__secondary';\n const editableLink: Msdyn365.ILinksData = {\n ariaLabel: link.ariaLabel,\n className: btnClass,\n linkText: link.linkText,\n linkUrl: link.linkUrl.destinationUrl,\n openInNewTab: link.openInNewTab,\n role: this.props.role,\n additionalProperties: attributes,\n onClick: onTelemetryClick(this.props.telemetryContent, payLoad, linkText)\n };\n editableLinks.push(editableLink);\n });\n\n return editableLinks;\n };\n}\nexport default ContentCardLinks;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { ArrayExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport { getTelemetryObject, IModuleProps, INodeProps, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nimport { contentBlockAdditionalContent, IContentBlockAdditionalContentViewProps } from './components/additional-content';\nimport LinksComponent from './components/links';\nimport { actionableRegion as region, IContentBlockConfig, IContentBlockProps } from './content-block.props.autogenerated';\n\nexport interface IContentBlockViewProps extends IContentBlockProps<{}> {\n title?: React.ReactNode;\n text?: React.ReactNode;\n image?: React.ReactNode;\n links?: React.ReactNode;\n className?: string;\n contentBlockContainer: IModuleProps;\n imageContainer: INodeProps;\n detailsContainer: INodeProps;\n contentBlockAnchorTag?: INodeProps;\n imageLink?: string;\n imageAriaLabel?: string;\n additionalContent?: IContentBlockAdditionalContentViewProps;\n handleAdditionalText?(): void;\n handleAdditionalParagraph?(): void;\n handleAdditionalLinkTextChange?(): void;\n}\n\n/**\n * Site-builder configuration for the module.\n */\nexport interface IContentBlockFullConfig extends IContentBlockConfig {\n // eslint-disable-next-line @typescript-eslint/naming-convention -- This field comes from SDK.\n msdyn365__moduleLayout?: string;\n}\n\n/**\n * ContentCard component.\n * @extends {React.PureComponent}\n */\nexport class ContentBlock extends React.PureComponent> {\n private readonly telemetryContent: ITelemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n\n public render(): JSX.Element | null {\n const { heading, paragraph, image, links, className, imageAriaLabel } = this.props.config;\n const contentBlockTitle = heading && (\n \n );\n const imageProps = {\n gridSettings: this.props.context.request.gridSettings ?? {},\n imageSettings: image?.imageSettings\n };\n const contentBlockLinks = links && ArrayExtensions.hasElements(links) && (\n \n );\n const contentBlockText = paragraph && (\n \n );\n const contentBlockImage = (\n \n );\n\n if (!contentBlockTitle && !contentBlockText && !contentBlockLinks) {\n this.props.context.telemetry.error('Content block content is empty, module wont render.');\n return null;\n }\n const contentBlockviewProps = {\n ...this.props,\n title: contentBlockTitle,\n text: contentBlockText,\n image: contentBlockImage,\n links: contentBlockLinks,\n moduleClass: this.props.config.className,\n contentBlockContainer: {\n moduleProps: this.props,\n className: classnames('ms-content-block', className)\n },\n imageContainer: { className: 'ms-content-block__image' },\n detailsContainer: { className: 'ms-content-block__details' },\n contentBlockAnchorTag: {\n tag: 'a',\n className: 'ms-content-block__link',\n role: 'link'\n },\n imageLink: this._getImageLink(),\n imageAriaLabel,\n additionalContent: contentBlockAdditionalContent({\n requestContext: this.props.context.request,\n additionalContent: this.props.config.additionalContent,\n handleAdditionalTextChange: this.handleAdditionalTextChange,\n handleAdditionalParagraphChange: this.handleAdditionalParagraphChange,\n handleAdditionalLinkTextChange: this.handleAdditionalLinkTextChange\n }),\n handleAdditionalText: this.handleAdditionalTextChange,\n handleAdditionalParagraph: this.handleAdditionalParagraphChange,\n handleAdditionalLinkTextChange: this.handleAdditionalLinkTextChange\n };\n\n return this.props.renderView(contentBlockviewProps) as React.ReactElement;\n }\n\n /**\n * To handle text change.\n * @param event - To handle text change event.\n * @name - HandleTextChange\n * @public\n * @returns - The Text value.\n */\n public handleTextChange = (event: Msdyn365.ContentEditableEvent) => (this.props.config.heading!.text = event.target.value);\n\n /**\n * To handle paragraph change.\n * @param event - To handle text change event.\n * @name - HandleParagraphChange\n * @public\n * @returns - The Paragraph value.\n */\n public handleParagraphChange = (event: Msdyn365.ContentEditableEvent) => (this.props.config.paragraph = event.target.value);\n\n /**\n * Handle link text change.\n * @param linkIndex - The link index.\n * @returns - Void.\n */\n public handleLinkTextChange = (linkIndex: number) => (event: Msdyn365.ContentEditableEvent) => {\n if (this.props.config.links && this.props.config.links[Number(linkIndex)]) {\n this.props.config.links[Number(linkIndex)].linkText = event.target.value;\n }\n };\n\n public handleAdditionalTextChange(index: number, event: Msdyn365.ContentEditableEvent): void {\n if (this.props.config.additionalContent) {\n this.props.config.additionalContent[Number(index)].heading = event.target.value;\n }\n }\n\n public handleAdditionalLinkTextChange(linkIndex: number, index: number, event: Msdyn365.ContentEditableEvent): void {\n const additionalContentObject =\n (this.props.config.additionalContent &&\n ArrayExtensions.hasElements(this.props.config.additionalContent) &&\n this.props.config.additionalContent[Number(index)]) ||\n {};\n if (additionalContentObject.links) {\n additionalContentObject.links[Number(linkIndex)].linkText = event.target.value;\n }\n }\n\n public handleAdditionalParagraphChange(index: number, event: Msdyn365.ContentEditableEvent): void {\n if (this.props.config.additionalContent) {\n this.props.config.additionalContent[Number(index)].subtext = event.target.value;\n }\n }\n\n private _getImageLink(): string | null {\n const { imageLink, links, actionableRegion } = this.props.config;\n if (actionableRegion === region.imageAndLinks) {\n if (imageLink?.destinationUrl) {\n return imageLink.destinationUrl;\n } else if (links && ArrayExtensions.hasElements(links) && links[0].linkUrl) {\n return links[0].linkUrl.destinationUrl;\n }\n return null;\n }\n return null;\n }\n}\n\nexport default ContentBlock;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport React, { ReactNode } from 'react';\n\nimport { ISocialShareViewProps } from './social-share';\n\nexport const SocialShareView: React.FC = props => {\n const { SocialShareList, SocialShareItemElements, SocialShareItem, SocialShare } = props;\n if (SocialShareItemElements.length === 0) {\n props.context.telemetry.error('Social media list is empty, module wont render');\n return null;\n }\n return (\n \n \n {SocialShareItemElements.map((SocialShareElement: ReactNode, index: number) => {\n return (\n \n {SocialShareElement}\n \n );\n })}\n \n \n );\n};\n\nexport default SocialShareView;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IPasswordResetItem, IPasswordResetLoading, IPasswordResetLocalAccount, IPasswordResetViewProps } from './password-reset';\n\nconst PasswordResetItem: React.FC = ({ wrapper, label, errorMessage, input }) => {\n return (\n \n {label}\n {errorMessage}\n {input}\n \n );\n};\n\nconst LocalAccount: React.FC = ({\n localAccount,\n items,\n errorMessage,\n buttonsWrapper,\n buttons,\n verificationSuccessModal,\n verificationSuccessModalMessage\n}) => {\n return (\n \n {items &&\n items.map((item: IPasswordResetItem) => {\n // eslint-disable-next-line react/jsx-key\n return ;\n })}\n {errorMessage &&\n errorMessage.map((error: React.ReactNode, index: number) => {\n return {error};\n })}\n \n {buttons &&\n buttons.map((button: React.ReactNode, index: number) => {\n return {button};\n })}\n \n\n \n \n \n \n );\n};\n\nconst PasswordResetLoading: React.FC = ({ modal, modalBody, icon, message }) => {\n return (\n \n \n {icon}\n {message}\n \n \n );\n};\n\nconst PasswordResetView: React.FC = props => {\n const { passwordReset, viewState, loading, defaultAADConainer, aadConainer, heading, passwordResetLocalAccount } = props;\n\n return (\n \n {viewState.isShowLoading && }\n {viewState.isShowLoading && }\n \n {heading}\n {LocalAccount(passwordResetLocalAccount)}\n \n \n );\n};\n\nexport default PasswordResetView;\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\n\r\nimport { Heading } from '@msdyn365-commerce-modules/utilities';\r\nimport { RichTextComponent } from '@msdyn365-commerce/core';\r\nimport { AttributeValue } from '@msdyn365-commerce/retail-proxy';\r\nimport get from 'lodash/get';\r\nimport * as React from 'react';\r\nimport CallToAction from './../../components/call-to-action';\r\nimport { IProductAttributesData } from './product-attributes.data';\r\nimport { IProductAttributesProps } from './product-attributes.props.autogenerated';\r\n\r\n/**\r\n *\r\n * ProductAttributes component\r\n * @extends {React.PureComponent>}\r\n */\r\n// @observer\r\nclass ProductAttributes extends React.PureComponent<\r\n IProductAttributesProps\r\n > {\r\n private _productAttributeFactSheetURL: string = 'FACT SHEET URL';\r\n private _productAttributeFactSheetHeader: string = 'DOWNLOAD FACTSHEET PDF';\r\n private _productAttributeTastingNotes: string = 'TASTING NOTES';\r\n private _productAttributeCookbookDescription: string = 'COOKBOOKDESCRIPTION';\r\n private _productAttributeCookbookDescriptionHeader: string = 'Description';\r\n private _productAttributeFoodPairings: string = 'FOOD PAIRINGS';\r\n private _productAttributeWineAnalysis: string = 'WINE ANALYSIS';\r\n private _productAttributeWineBlend: string = 'BLEND';\r\n private _productAttributeWineAging: string = 'AGING';\r\n private _productAttributeWineAlcohol: string = 'ALCOHOL';\r\n private _productAttributeWinePH: string = 'PH';\r\n private _productAttributeWineTA: string = 'TA';\r\n private _productAttributeWineF: string = 'F';\r\n\r\n public render(): JSX.Element | null {\r\n const content: IProductAttributesData = this.props.data;\r\n if (!(content && content.productSpecificationData && content.productSpecificationData.result)\r\n ) {\r\n return null;\r\n }\r\n\r\n return (\r\n
\r\n {this._renderProductAttributes(\r\n content.productSpecificationData.result,\r\n this._productAttributeFactSheetURL\r\n )}\r\n {this._renderProductAttributes(\r\n content.productSpecificationData.result,\r\n this._productAttributeTastingNotes\r\n )}\r\n {this._renderProductAttributes(\r\n content.productSpecificationData.result,\r\n this._productAttributeCookbookDescription\r\n )}\r\n {this._renderProductAttributes(\r\n content.productSpecificationData.result,\r\n this._productAttributeFoodPairings\r\n )}\r\n {this._renderProductAttributes(\r\n content.productSpecificationData.result,\r\n this._productAttributeWineAnalysis\r\n )}\r\n
\r\n );\r\n }\r\n\r\n private _renderProductAttributes(\r\n product: AttributeValue[],\r\n filter: string\r\n ): JSX.Element | null {\r\n if (product && product.length) {\r\n const locale = get(this.props, 'context.request.locale', 'en-US');\r\n if (\r\n this._compareStrings(filter, this._productAttributeFactSheetURL, true, locale)\r\n ) {\r\n const productattribute = product.filter(\r\n attribute => attribute.Name!.toUpperCase() === filter.toUpperCase()\r\n );\r\n if (productattribute && productattribute.length && productattribute[0].TextValue) {\r\n return (\r\n
\r\n \r\n \r\n
\r\n );\r\n }\r\n } else if (this._compareStrings(filter, this._productAttributeWineAnalysis, true, locale)) {\r\n if (this._renderWineAttributes(product, this._productAttributeWineBlend)\r\n || this._renderWineAttributes(product, this._productAttributeWineAging)\r\n || this._renderWineAttributes(product, this._productAttributeWineAlcohol)\r\n || this._renderWineAttributes(product, this._productAttributeWinePH)\r\n || this._renderWineAttributes(product, this._productAttributeWineTA)\r\n || this._renderWineAttributes(product, this._productAttributeWineF)) {\r\n return (\r\n
\r\n \r\n {this._renderWineAttributes(product, this._productAttributeWineBlend)}\r\n {this._renderWineAttributes(product, this._productAttributeWineAging)}\r\n {this._renderWineAttributes(product, this._productAttributeWineAlcohol, '%')}\r\n {this._renderWineAttributes(product, this._productAttributeWinePH)}\r\n {this._renderWineAttributes(product, this._productAttributeWineTA)}\r\n {this._renderWineAttributes(product, this._productAttributeWineF)}\r\n
\r\n );\r\n }\r\n } else {\r\n const productattribute = product.filter(\r\n attribute => attribute.Name!.toUpperCase() === filter.toUpperCase()\r\n );\r\n if (productattribute && productattribute.length && productattribute[0].TextValue) {\r\n const attributeHeading = (filter === this._productAttributeCookbookDescription ? this._productAttributeCookbookDescriptionHeader : productattribute[0].Name);\r\n return (\r\n
\r\n \r\n \r\n
\r\n );\r\n }\r\n }\r\n }\r\n return null;\r\n }\r\n\r\n private _renderWineAttributes(\r\n product: AttributeValue[],\r\n filter: string,\r\n suffix?: string\r\n ): JSX.Element | null {\r\n const productattribute = product.filter(\r\n attribute => attribute.Name!.toLowerCase() === filter.toLowerCase()\r\n );\r\n if (productattribute && productattribute.length && productattribute[0].TextValue) {\r\n const attributeValue = this._renderProductCell(productattribute[0], suffix);\r\n const keyName = `${productattribute[0].Name}:`;\r\n if (attributeValue !== null) {\r\n return (\r\n
\r\n \r\n
{attributeValue}
\r\n
\r\n );\r\n }\r\n }\r\n return null;\r\n }\r\n\r\n private _renderProductCell(product: AttributeValue, suffix?: string): JSX.Element | null {\r\n switch (product.DataTypeValue) {\r\n case 0: // none\r\n // Return span here instead of null so the row still shows\r\n return ;\r\n case 1: // Currency\r\n return this._renderCurrencyCell(product, suffix);\r\n case 2: // DateTime\r\n return this._renderDateTimeCell(product, suffix);\r\n case 3: // Decimal\r\n return this._renderDecimalCell(product, suffix);\r\n case 4: // Integer\r\n return this._renderIntegerCell(product, suffix);\r\n case 5: // Text\r\n return this._renderTextCell(product, suffix);\r\n case 6: // TrueFalse\r\n return this._renderTrueFalseCell(product);\r\n case 40: // Video\r\n this.props.telemetry.warning(\r\n 'Got video specification type, not supported yet so skipping line'\r\n );\r\n return null;\r\n case 41: // Image\r\n this.props.telemetry.warning(\r\n 'Got image specification type, not supported yet so skipping line'\r\n );\r\n return null;\r\n default:\r\n this.props.telemetry.warning(\r\n `Got unknown specification type ${product.DataTypeValue} so skipping line`\r\n );\r\n return null;\r\n }\r\n }\r\n\r\n private _renderCurrencyCell(product: AttributeValue, suffix?: string): JSX.Element | null {\r\n if (product.CurrencyValue !== null && product.CurrencyValue !== undefined) {\r\n return (\r\n \r\n {product.CurrencyCode}\r\n {product.CurrencyValue}\r\n {suffix}\r\n \r\n );\r\n }\r\n\r\n return null;\r\n }\r\n\r\n private _renderDateTimeCell(product: AttributeValue, suffix?: string): JSX.Element | null {\r\n if (\r\n product.DateTimeOffsetValue !== null &&\r\n product.DateTimeOffsetValue !== undefined &&\r\n product.DateTimeOffsetValue.toUTCString\r\n ) {\r\n return {product.DateTimeOffsetValue.toUTCString()}{suffix};\r\n }\r\n\r\n return null;\r\n }\r\n\r\n private _renderIntegerCell(product: AttributeValue, suffix?: string): JSX.Element | null {\r\n if (product.IntegerValue !== null && product.IntegerValue !== undefined) {\r\n return {product.IntegerValue}{suffix};\r\n }\r\n\r\n return null;\r\n }\r\n\r\n private _renderDecimalCell(product: AttributeValue, suffix?: string): JSX.Element | null {\r\n if (product.FloatValue !== null && product.FloatValue !== undefined) {\r\n return {product.FloatValue}{suffix};\r\n }\r\n\r\n return null;\r\n }\r\n\r\n private _renderTextCell(product: AttributeValue, suffix?: string): JSX.Element | null {\r\n if (product.TextValue !== null && product.TextValue !== undefined) {\r\n return ;\r\n }\r\n\r\n return null;\r\n }\r\n\r\n private _renderTrueFalseCell(product: AttributeValue): JSX.Element | null {\r\n if (product.BooleanValue) {\r\n return {'Yes'};\r\n } else {\r\n return {'No'};\r\n }\r\n }\r\n\r\n private _compareStrings(\r\n string1: string,\r\n string2: string,\r\n ignoreCase: boolean,\r\n useLocale: string\r\n ): boolean {\r\n if (ignoreCase) {\r\n if (useLocale) {\r\n string1 = string1.toLocaleLowerCase();\r\n string2 = string2.toLocaleLowerCase();\r\n } else {\r\n string1 = string1.toLowerCase();\r\n string2 = string2.toLowerCase();\r\n }\r\n }\r\n return string1 === string2;\r\n }\r\n}\r\n\r\nexport default ProductAttributes;\r\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\n\r\nimport { RichTextComponent } from '@msdyn365-commerce/core';\r\nimport { AttributeValue, SimpleProduct } from '@msdyn365-commerce/retail-proxy';\r\nimport * as React from 'react';\r\nimport CommerceAttributesParser, { CommerceValueTypes, ParsedValue } from '../../Utilities/commerce-attributes-parser';\r\nimport CallToAction from './../../components/call-to-action';\r\nimport { IPdpAttributesData } from './pdp-attributes.data';\r\nimport { IAttributesData, IPdpAttributesProps } from './pdp-attributes.props.autogenerated';\r\n\r\n/**\r\n * PdpAttributes class renders a preconfigured list of attributes related to the\r\n * currentproducts page.\r\n *\r\n * PdpAttributes component\r\n * @extends {React.Component>}\r\n */\r\nclass PdpAttributes extends React.Component> {\r\n private _parser: CommerceAttributesParser | undefined;\r\n private _attributesCollected: boolean = false;\r\n\r\n constructor(props: IPdpAttributesProps) {\r\n super(props);\r\n }\r\n\r\n public render(): JSX.Element | null {\r\n const simpleProductData = this.props.data.product.result;\r\n const productData: IPdpAttributesData = this.props.data;\r\n if (\r\n !(this.props.data.productSpecificationData && this.props.data.productSpecificationData.result) ||\r\n !(this.props.data.product && this.props.data.product.result)\r\n ) {\r\n return null;\r\n }\r\n\r\n if (!this._attributesCollected) {\r\n\r\n this._parser = new CommerceAttributesParser({\r\n attributeValues: productData.productSpecificationData.result,\r\n psuedoAttributeValues: this._getPsuedoSimpleAttributes(simpleProductData!)\r\n });\r\n }\r\n\r\n const attributes: [] = this._attributesListRender.props.children;\r\n if (attributes && attributes.every(element => element === null)) {\r\n return null;\r\n }\r\n\r\n return (\r\n
\r\n {this._attributesListRender}\r\n
\r\n );\r\n }\r\n\r\n private _getPsuedoSimpleAttributes(simpleProduct: SimpleProduct): AttributeValue[] {\r\n const attributeArray: AttributeValue[] = [];\r\n\r\n this.props.config.attributes.map((attr) => {\r\n if (simpleProduct[attr.attributeName]) {\r\n attributeArray.push({\r\n Name: attr.attributeName,\r\n DataTypeValue: 5, // everything should work fine as a string\r\n TextValue: simpleProduct[attr.attributeName]\r\n });\r\n }\r\n });\r\n\r\n return attributeArray;\r\n }\r\n\r\n /**\r\n * returns JSX of the lists render\r\n */\r\n private get _attributesListRender(): JSX.Element {\r\n return (\r\n \r\n {this.props.config.attributes.map((attr, pos) => {\r\n return \r\n {this._renderAttribute(attr, pos)}\r\n ;\r\n })}\r\n \r\n );\r\n }\r\n\r\n /**\r\n * returns JSX of a specific attribute render\r\n *\r\n * @param cmsAttribute attribute configured by author\r\n * @param renderPosition position to use for styling\r\n */\r\n private _renderAttribute(cmsAttribute: IAttributesData, renderPosition: number): JSX.Element | null {\r\n const attribute = this._parseAttribute(cmsAttribute.attributeName);\r\n // if attribute doesn't exist, if attribute exists but has no value\r\n if (!attribute || !attribute.value) { return null; }\r\n\r\n switch (attribute.type) {\r\n case 'STRING':\r\n // tslint:disable-next-line:no-http-string\r\n if (attribute.value.toString().startsWith('https://' || 'http://')) {\r\n return this._urlRender(attribute as ParsedValue, cmsAttribute);\r\n }\r\n return this._plaintextRender(attribute as ParsedValue, cmsAttribute, true);\r\n case 'NUMBER':\r\n return this._plaintextRender(attribute as ParsedValue, cmsAttribute);\r\n case 'CURRENCY':\r\n return this._plaintextRender(attribute as ParsedValue, cmsAttribute);\r\n case 'DATE':\r\n return this._dateRender(attribute as ParsedValue, cmsAttribute);\r\n case 'BOOLEAN':\r\n return this._booleanRender(attribute as ParsedValue, cmsAttribute);\r\n default:\r\n return null;\r\n }\r\n }\r\n\r\n private _plaintextRender(text: ParsedValue, cmsAttribute: IAttributesData, richText: boolean = false): JSX.Element | null {\r\n const textDisplay = (richText)\r\n ? (\r\n \r\n ) : (\r\n {text.value}{cmsAttribute.suffixText || ''}\r\n );\r\n\r\n return this._renderCell(\r\n textDisplay,\r\n cmsAttribute\r\n );\r\n }\r\n\r\n private _dateRender(date: ParsedValue, cmsAttribute: IAttributesData): JSX.Element {\r\n return this._renderCell(\r\n {new Date(date.value!).toUTCString()}{cmsAttribute.suffixText},\r\n cmsAttribute\r\n );\r\n }\r\n\r\n private _booleanRender(bool: ParsedValue, cmsAttribute: IAttributesData): JSX.Element {\r\n const booleanDisplay = (bool.value) ? Yes : No;\r\n return this._renderCell(\r\n booleanDisplay,\r\n cmsAttribute\r\n );\r\n }\r\n\r\n private _urlRender(url: ParsedValue, cmsAttribute: IAttributesData): JSX.Element {\r\n return this._renderCell(\r\n \r\n \r\n ,\r\n cmsAttribute\r\n );\r\n }\r\n\r\n private _renderCell(cellBody: JSX.Element, cmsAttribute: IAttributesData): JSX.Element {\r\n let attributeName = cmsAttribute.attributeName;\r\n if (cmsAttribute.labelOverride) {\r\n attributeName = cmsAttribute.labelOverride;\r\n }\r\n return (\r\n
\r\n {!cmsAttribute.noLabel && {attributeName}}\r\n
\r\n {cellBody}\r\n
\r\n
\r\n );\r\n }\r\n\r\n /**\r\n * Parses and returns the attribute value queried\r\n *\r\n * @param name name of the attribute to get\r\n */\r\n private _parseAttribute(name: string): ParsedValue | undefined {\r\n return this._parser!.get(name);\r\n }\r\n}\r\n\r\nexport default PdpAttributes;\r\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport MsDyn365 from '@msdyn365-commerce/core';\nimport { ICartlinesViewProps, ICartResources, ICartViewProps, IOrderSummaryErrors } from '@msdyn365-commerce-modules/cart';\nimport { ICartLineItemViewProps } from '@msdyn365-commerce-modules/cart/dist/types/modules/cart/components/cart-line-items-promotion';\nimport { IInvoiceSummaryLines } from '@msdyn365-commerce-modules/invoice-payment-summary';\nimport { IOrderSummaryLines } from '@msdyn365-commerce-modules/order-summary-utilities';\nimport { ArrayExtensions, StringExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport {\n Button,\n getPayloadObject,\n getTelemetryAttributes,\n INodeProps,\n ITelemetryContent,\n Node,\n TelemetryConstant\n} from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nconst CartView: React.FC = (props: ICartViewProps) => (\n
\n {props.title}\n {props.promotionOptions && _renderPromotions(props.promotionOptions)}\n {props.cart?.hasInvoiceLine || props.multiplePickUpEnabled ? (\n _renderCartLinesGroup(props, props.resources)\n ) : (\n \n {_renderCartlines(\n props.cartlines,\n props.resources,\n props.storeSelector,\n props.backToShoppingButton,\n props.waitingComponent,\n props.cartLoadingStatus,\n props.cartDataResult,\n props.telemetryContent,\n props.multiplePickUpEnabled,\n props.context.actionContext.requestContext.channel?.EmailDeliveryModeCode\n )}\n \n )}\n {props.orderSummaryHeading && (\n \n {props.orderSummaryHeading}\n {props.cart?.hasInvoiceLine\n ? _renderInvoiceSummarylines(props.invoiceSummaryLineitems, props.OrderSummaryItems, props)\n : _renderOrderSummarylines(props.orderSummaryLineitems, props.OrderSummaryItems, props)}\n {_renderErrorBlock(props.OrderSummaryErrors)}\n {props.checkoutAsSignInUserButton}\n {props.checkoutAsGuestButton}\n {props.expressCheckoutButton && ArrayExtensions.hasElements(props.expressCheckoutButton) ? (\n {props.expressCheckoutButton}\n ) : null}\n {props.backToShoppingButton}\n {props.createTemplateFromCartButton}\n \n )}\n {props.storeSelector}\n
\n);\n\nconst _renderPromotions = (promotions: ICartLineItemViewProps): JSX.Element | undefined => {\n return (\n <>\n \n {promotions.promotionMessage}\n {promotions.promotionSeeAllLink}\n {promotions.promotionDialog}\n \n \n );\n};\n\nconst _renderCartlines = (\n cartLines: ICartlinesViewProps[] | undefined,\n resources: ICartResources,\n storeSelector: React.ReactNode | undefined,\n backToShoppingButton: React.ReactNode,\n waitingComponent: React.ReactNode,\n cartLoadingStatus: string,\n cartDataResult: boolean,\n telemetryContent?: ITelemetryContent,\n mulitplePickUp?: boolean,\n emailDeliveryModeCode?: string\n): JSX.Element[] | JSX.Element => {\n const { emptyCartText } = resources;\n\n if (cartLoadingStatus) {\n return <>{cartLoadingStatus};\n }\n if (cartLines) {\n return cartLines.map((cartLine, index) => {\n return (\n
\n {cartLine.cartline}\n {mulitplePickUp ? null : _renderBOPISBlock(cartLine, resources, storeSelector, telemetryContent, emailDeliveryModeCode)}\n {mulitplePickUp ? (\n \n {_renderGroupBOPISBlock(cartLine, resources, storeSelector, telemetryContent, emailDeliveryModeCode)}\n {cartLine.addToOrderTemplate}\n {cartLine.addToWishlist}\n {cartLine.remove}\n \n ) : cartLine.addToOrderTemplate ? (\n \n {cartLine.addToOrderTemplate}\n {cartLine.addToWishlist}\n {cartLine.remove}\n \n ) : (\n <>\n {cartLine.addToWishlist}\n {cartLine.remove}\n \n )}\n
\n );\n });\n }\n return cartDataResult ? (\n
\n

{emptyCartText}

\n {backToShoppingButton}\n
\n ) : (\n <>{waitingComponent}\n );\n};\n\n/**\n * On Toggle function.\n * @param cartLine -Cartline.\n * @param isBopisSelected -Boolean.\n * @returns Set state of button.\n */\nconst onToggleBopisHandler = (cartLine: ICartlinesViewProps, isBopisSelected: boolean) => () => {\n cartLine.pickUpInStore && cartLine.pickUpInStore.callbacks.toggleBopis(!isBopisSelected);\n};\n\n/**\n * On change store function.\n * @param cartLine -CartLine items prop.\n * @returns Set state of button.\n */\nconst onChangeStoreHandler = (cartLine: ICartlinesViewProps) => () => {\n cartLine.pickUpInStore && cartLine.pickUpInStore.callbacks.toggleBopis(true);\n};\n\nconst _renderBOPISBlock = (\n cartLine: ICartlinesViewProps,\n resources: ICartResources,\n storeSelector: React.ReactNode | undefined,\n telemetryContent?: ITelemetryContent,\n emailDeliveryModeCode?: string\n): JSX.Element | null => {\n // If it is electronic item cart line, then return null for BOPISBlock.\n if (!cartLine.pickUpInStore || !storeSelector || cartLine.data?.cartline.DeliveryMode === emailDeliveryModeCode) {\n return null;\n }\n\n const {\n shipInsteadDisplayText,\n shipToAddressDisplayText,\n pickItUpDisplayText,\n pickUpAtStoreWithLocationText,\n changeStoreDisplayText\n } = resources;\n\n const isBopisSelected = cartLine.pickUpInStore.isBopisSelected;\n\n const payLoad = getPayloadObject('click', telemetryContent!, TelemetryConstant.PickupInStore);\n const puckUpinStoreAttribute = getTelemetryAttributes(telemetryContent!, payLoad);\n\n return (\n \n
\n {isBopisSelected ? (\n {pickUpAtStoreWithLocationText}\n ) : (\n {shipToAddressDisplayText}\n )}\n
\n {isBopisSelected && (\n
\n {cartLine.pickUpInStore.orgUnitName}\n \n
\n )}\n \n {isBopisSelected ? shipInsteadDisplayText : pickItUpDisplayText}\n \n
\n );\n};\n\nconst _renderErrorBlock = (errorData: IOrderSummaryErrors | undefined): JSX.Element | null => {\n if (!errorData || errorData.errors.length === 0) {\n return null;\n }\n return (\n \n {errorData.header}\n {errorData.errors}\n \n );\n};\n\nconst _renderOrderSummarylines = (\n orderSummaryLines: IOrderSummaryLines | undefined,\n OrderSummaryItems: INodeProps,\n props: ICartViewProps\n): JSX.Element | null => {\n if (!orderSummaryLines) {\n return null;\n }\n return (\n \n {props.promoCode}\n {orderSummaryLines.subtotal}\n {orderSummaryLines.shipping}\n {orderSummaryLines.otherCharge}\n {orderSummaryLines.tax}\n {orderSummaryLines.totalDiscounts ? orderSummaryLines.totalDiscounts : null}\n {orderSummaryLines.orderTotal}\n \n );\n};\n\nconst _renderInvoiceSummarylines = (\n invoiceSummaryLines: IInvoiceSummaryLines | undefined,\n OrderSummaryItems: INodeProps,\n props: ICartViewProps\n): JSX.Element | null => {\n if (!invoiceSummaryLines) {\n props.context.telemetry.error('InvoiceSummary content is empty, module wont render');\n return null;\n }\n return (\n \n {invoiceSummaryLines.invoices}\n {invoiceSummaryLines.giftCard}\n {invoiceSummaryLines.loyalty}\n {invoiceSummaryLines.orderTotal}\n \n );\n};\n\nconst _renderCartLinesGroup = (props: ICartViewProps, resources: ICartResources): JSX.Element | undefined => {\n if (props.cartLinesGroup && props.cartLinesGroup.length > 0) {\n return (\n
\n {props.cartLinesGroup.map(cartlines => {\n return (\n
\n {_renderCartLinesGroupHeader(\n cartlines[0],\n props.storeSelector,\n resources,\n _countItems(cartlines),\n props.context.actionContext.requestContext.channel?.EmailDeliveryModeCode\n )}\n {_renderCartlines(\n cartlines,\n props.resources,\n props.storeSelector,\n props.backToShoppingButton,\n props.waitingComponent,\n props.cartLoadingStatus,\n props.cartDataResult,\n props.telemetryContent,\n props.multiplePickUpEnabled,\n props.context.actionContext.requestContext.channel?.EmailDeliveryModeCode\n )}\n
\n );\n })}\n
\n );\n }\n return props.cartDataResult ? (\n
\n
\n

{props.resources.emptyCartText}

\n {props.backToShoppingButton}\n
\n
\n ) : (\n <>{props.waitingComponent}\n );\n};\nconst _renderCartLinesGroupHeader = (\n cartLine: ICartlinesViewProps,\n storeSelector: React.ReactNode | undefined,\n resources: ICartResources,\n count: number,\n emailDeliveryModeCode?: string\n) => {\n const isBopisSelected = cartLine.pickUpInStore?.isBopisSelected;\n const { pickUpText, shippingText, emailshippingText, payInvoicesDisplayText } = resources;\n let groupTitle: string;\n\n groupTitle = isBopisSelected ? pickUpText : shippingText;\n if (cartLine.data && cartLine.data.cartline.IsInvoiceLine) {\n groupTitle = payInvoicesDisplayText;\n } else if (!StringExtensions.isNullOrEmpty(emailDeliveryModeCode)) {\n groupTitle = cartLine.data && cartLine.data.cartline.DeliveryMode === emailDeliveryModeCode ? emailshippingText : groupTitle;\n }\n\n return (\n <>\n
\n

\n

{groupTitle}

\n {_renderCartLinesGroupTitle(cartLine, resources, count)}\n
\n \n );\n};\n\nconst _renderGroupBOPISBlock = (\n cartLine: ICartlinesViewProps,\n resources: ICartResources,\n storeSelector: React.ReactNode | undefined,\n telemetryContent?: ITelemetryContent,\n emailDeliveryModeCode?: string\n): JSX.Element | null => {\n // If it is electronic item cart line, then return null for GroupBOPISBlock.\n if (!cartLine.pickUpInStore || !storeSelector || cartLine.data?.cartline.DeliveryMode === emailDeliveryModeCode) {\n return null;\n }\n\n const { changeStoreDisplayText, shipInsteadDisplayText, pickItUpDisplayText } = resources;\n\n const isBopisSelected = cartLine.pickUpInStore.isBopisSelected;\n\n const payLoad = getPayloadObject('click', telemetryContent!, TelemetryConstant.PickupInStore);\n const puckUpinStoreAttribute = getTelemetryAttributes(telemetryContent!, payLoad);\n\n return (\n <>\n {isBopisSelected ? (\n \n ) : null}\n \n {isBopisSelected ? shipInsteadDisplayText : pickItUpDisplayText}\n \n \n );\n};\n\nconst _countItems = (cartLine: ICartlinesViewProps[]): number => {\n let countItem = 0;\n countItem = cartLine.reduce((count, item) => {\n return count + (item.data?.cartline.Quantity || 0);\n }, 0);\n return countItem;\n};\n\nconst _renderCartLinesGroupTitle = (cartLine: ICartlinesViewProps, resources: ICartResources, count: number) => {\n const isBopisSelected = cartLine.pickUpInStore?.isBopisSelected;\n const { itemLabel, itemsLabel } = resources;\n const suffix = count > 1 ? itemsLabel : itemLabel;\n return (\n <>\n \n {isBopisSelected ? (\n

\n {cartLine.pickUpInStore?.deliveryOption}\n {', '}\n {cartLine.pickUpInStore?.orgUnitName}\n

\n ) : null}\n

\n ({count}\n {` `}\n {suffix})\n

\n
\n \n );\n};\n\nexport default CartView;\n","import { CartLine } from '@msdyn365-commerce/retail-proxy';\r\nexport function calculateSavingPercentAmount(lines?: CartLine[]): number {\r\n let total = 0;\r\n lines?.forEach(line => total += line.Quantity || 0);\r\n if (total > 11) { return 15; }\r\n if (total > 3) { return 10; }\r\n return 0;\r\n}","import { Button } from '@msdyn365-commerce-modules/utilities';\r\nimport classnames from 'classnames';\r\nimport * as React from 'react';\r\n\r\nexport type CallToActionLayout = 'button' | 'glyphOnly' | 'noGlyph';\r\nexport type CallToActionMotion = 'separate' | 'revelio';\r\nexport type CallToActionGlyphPosition = 'start' | 'end';\r\n\r\ninterface ICallToAction {\r\n title: string;\r\n href?: string;\r\n openInNewTab?: boolean;\r\n 'aria-label'?: string;\r\n className?: string;\r\n color?: string;\r\n glyph?: string;\r\n layout: CallToActionLayout;\r\n glyphPosition?: CallToActionGlyphPosition;\r\n disabled?: boolean;\r\n onClick?(e: React.MouseEvent): void;\r\n}\r\n\r\nfunction createInnerCTAFragment(\r\n glyphClassName: string,\r\n title: string,\r\n ctaLayout: CallToActionLayout,\r\n glyphPosition?: CallToActionGlyphPosition\r\n): React.ReactFragment {\r\n if (ctaLayout === 'noGlyph') {\r\n return {title};\r\n }\r\n\r\n if (ctaLayout === 'glyphOnly') {\r\n return