{"version":3,"sources":["webpack:///./presentation/components/ribbons/domain-search-start/DomainSearchStart.tsx","webpack:///./presentation/components/ribbons/domain-search-start/DomainSearchStart.stylesheet.ts","webpack:///./presentation/components/ribbons/domain-search-start/ConnectedDomainSearchStart.ts","webpack:///./presentation/components/ribbons/domain-search-start/index.ts","webpack:///./presentation/utils/ribbonPadding.ts","webpack:///../node_modules/@ux/text-button/dist/es/text-button.js","webpack:///../node_modules/@ux/typography/dist/es/typography.js","webpack:///./presentation/hocs/errorBoundary.tsx","webpack:///./presentation/hocs/withRibbonImpression.ts","webpack:///./presentation/utils/ribbonWidth.ts","webpack:///./presentation/hocs/deepLink.tsx","webpack:///./presentation/components/ribbons/Ribbon/Ribbon.tsx","webpack:///./presentation/components/ribbons/Ribbon/ConnectedRibbon.ts","webpack:///./presentation/components/ribbons/Ribbon/index.ts","webpack:///./presentation/components/Shortcode/PendingShortcode.tsx","webpack:///./presentation/components/Shortcode/Alt.tsx","webpack:///./presentation/components/Shortcode/Bold.tsx","webpack:///./presentation/components/Shortcode/Italic.tsx","webpack:///./presentation/components/Shortcode/Link.tsx","webpack:///./presentation/components/Shortcode/Text.tsx","webpack:///./presentation/components/Shortcode/Tooltip.tsx","webpack:///./presentation/components/Shortcode/Shortcode.tsx","webpack:///./presentation/components/Shortcode/index.ts","webpack:///./presentation/hocs/visibilitySet.tsx","webpack:///../node_modules/@ux/search-input/dist/es/searchInput.js","webpack:///./presentation/components/ribbons/domain-search-start/DomainSearchForm.tsx"],"names":["enhance","pureEnhance","hocs","errorBoundary","visibilitySet","hooks","withProps","ownerProps","hasTitle","r","isNotNilOrEmpty","hasSubtitle","hasPrecursor","props","theme","colorway","spacing","useStyles","default","content","flex","flexBasis","justifyContent","display","flexDirection","search","marginTop","gu2px","searchText","precursor","textAlign","color","getTitleColor","title","subtitle","getBodyColor","id","styles","loading","layout","hBaseline","name","text","form","Ribbon","type","style","vblock","justify","Justify","CENTER","xs","md","lg","component","Shortcode","against","code","depth","DomainSearchForm","createFormName","mapDispatchToProps","submit","pipe","withHooks","connect","withHandlers","onSubmit","actions","tld","destination","domain","Promise","ribbonType","ribbonName","reduxForm","propNamespace","DomainSearchStart","isMinSm","isMinLg","flush","shrinkLeading","shrinkTrailing","getPaddingSize","shrinkSide","isFlush","leading","Flush","LEADING","trailing","TRAILING","paddingTop","paddingBottom","Size","Against","ContentType","_defineProperty","obj","key","value","Object","defineProperty","enumerable","configurable","writable","disabled","block","caps","size","MD","contentType","DEFAULT","_ref","_useStyles","hover","active","palette","typography","fill","LIGHT","secondary","NEUTRAL","DARK","tertiary","PRIMARY","primaryContrast","PRIMARY_FADED","HIGHLIGHT","highlightContrast","HIGHLIGHT_FADED","highlight","root","assign","width","A","fontFamily","lineHeight","backgroundColor","outline","cursor","textDecoration","transition","inner","opacity","borderBottomStyle","textTransform","SM","fontSize","LG","INHERIT","PHONE_NUMBER","borderBottomWidth","TextButton","_a","children","domProps","s","e","t","p","prototype","hasOwnProperty","call","indexOf","getOwnPropertySymbols","i","length","__rest","createElement","mergeStyles","createHeading","headingSize","stylesheet","Number","concat","Y","fontWeight","Heading01","Heading02","Heading03","Heading04","Heading05","Heading06","stylesheet$1","_ref$theme","gu","marginBottom","SubHeading01","SubHeading02","stylesheet$2","PreHeading01","PreHeading02","BodyCopy01","isMinMd","getBackgroundColor","ribbonPadding","cssSides","Side","X","WrappedComponent","ErrorBoundary","compose","withState","lifecycle","componentDidCatch","this","setHasErrored","hooksA","mapProps","selector","useMemo","getRibbonAnalytics","analytics","useSelector","dispatch","useDispatch","bindActionCreators","sendImpression","onImpression","hooksB","isFullyInViewport","stopWatcher","useEffect","mapPropsHoc","branch","Watch","deepLink","withRouter","componentDidMount","location","hash","scrollWhenReady","animationComplete","setTimeout","scroller","scrollTo","duration","delay","smooth","mapFit","fit","Fit","FULLSCREEN","minHeight","FILL","AUTO","height","isFinite","targetRef","useRef","withBreakpointsHook","duoLayout","activeFit","findResponsiveItem","getBreakpoints","padding","duoLayoutFlex","flexSize","percentage","duoRibbonWidth","position","ribbon","modifier","Colorway","PRIMARY_GRADIENT","backgroundImage","primary","primaryGradient","ref","withRibbonImpression","randomWidth","Math","floor","random","puree","lines","elements","RecursiveShortcode","rest","fontStyle","getUsfConfig","wlSelectors","getAppConfig","mapStateToProps","attributes","externalRoutes","to","goto","analyticskey","TextButtonSize","escapeShortCodes","nl2br","string","split","map","reduce","prev","cur","newline","isFalse","formatText","ReactTooltip","lazy","eventToggle","CallToAction","label","fallback","tagName","useDefaultStyles","maxWidth","Glyph","Sup","List","OrderedList","ListItem","TickListItem","ProductPrice","PhoneNumber","element","genericShortcodeHandler","shortcodeName","Component","String","getAgainst","Element","nuller","Text","Italic","Bold","Alt","Link","Tooltip","glyph","PendingShortcode","BaseComponent","mixWithWhite","toMix","mix","SearchInput","hasSuffix","suffix","hasPrefix","prefix","buttonText","_reactCSS","curvature","whiteSpace","paddingLeft","background","grey10","input","textOverflow","overflow","paddingRight","weight","family","CONTENT","border","affix","alignItems","WebkitUserSelect","MozUserSelect","MsUserSelect","userSelect","affixText","marginRight","OFF","topLeftRadius","topRightRadius","bottomLeftRadius","bottomRightRadius","WEAK","STRONG","boxShadow","borderColor","button","inputProps","kind","ReduxFormSearchInput$1","enhance$1","meta","placeholder","method","handleSubmit","data-selector","ReduxFormSearchInput"],"mappings":";+WAiLeA,MA/BCC,YACd,oBACA,CACEC,KAAM,CACJC,IACAC,KAEFC,MAAO,CACLC,oBAAWC,IAAD,CACRC,SAAUC,IACRC,kBACA,CAAE,OAAQ,SACVH,GAEFI,YAAaF,IACXC,kBACA,CAAE,OAAQ,YACVH,GAEFK,aAAcH,IACZC,kBACA,CAAE,OAAQ,aACVH,MAGJD,oBC5JUO,IACd,MAAM,MACJC,EADI,SAEJC,GACEF,GAEE,QACJG,GACEF,EAEJ,OAAOG,YAAU,CACfC,QAAS,CACPC,QAAS,CACPC,KAAM,EACNC,UAAW,OACXC,eAAgB,SAChBC,QAAS,OACTC,cAAe,UAEjBC,OAAQ,CACNC,UAAWC,YAAM,EAAGX,IAEtBY,WAAY,CACVL,QAAS,QAEXM,UAAW,CACTC,UAAW,SACXC,MAAOC,YAAclB,EAAOC,IAE9BkB,MAAO,CACLH,UAAW,SACXC,MAAOC,YAAclB,EAAOC,IAE9BmB,SAAU,CACRJ,UAAW,SACXC,MAAOI,YAAarB,EAAOC,GAC3BW,UAAWC,YAAM,EAAGX,MAGvB,QD2HUhB,CApIW,EACxBoC,KACAC,SACAvB,QACAwB,UACAvB,WACAwB,SACAC,YACAC,OACAC,OACAlC,WACAI,eACAD,cACAgC,OACAlB,aAEA,MAAM,UACJI,EADI,MAEJI,EAFI,SAGJC,GACEQ,EAEJ,OACE,kBAACE,EAAA,EAAD,CACER,GAAIA,EACJtB,MAAOA,EACP2B,KAAMA,EACNF,OAAQA,EACRxB,SAAUA,EACVuB,QAASA,EACTO,KAAK,qBAEL,yBAAKC,MAAOT,EAAOlB,SACjB,kBAAC,IAAD,KACE,kBAAC,IAAD,CACE4B,QAAQ,EACRC,QAASC,IAAQC,QAEjB,kBAAC,IAAD,CACEC,GAAI,GACJC,GAAI,EACJC,GAAI,GAEJ,kBAAC,IAAD,CACEvC,MAAOA,GAEQF,EACb,kBAAC,IAAD,CACEE,MAAOA,EACPgC,MAAOT,EAAOR,UACdyB,UAAU,KAEV,kBAACC,EAAA,EAAD,CACEzC,MAAOA,EACP0C,QAASzC,EACT0C,KAAM5B,KAZd,KAgBiBrB,EACb,kBAAC,IAAD,CACEM,MAAOA,EACP4C,MAAOlB,EACPM,MAAOT,EAAOJ,OAEd,kBAACsB,EAAA,EAAD,CACEzC,MAAOA,EACP0C,QAASzC,EACT0C,KAAMxB,KAzBd,KA6BiBtB,EACb,kBAAC,IAAD,CACEG,MAAOA,EACPgC,MAAOT,EAAOH,SACdwB,MAAOlD,EAAWgC,EAAY,EAAIA,GAElC,kBAACe,EAAA,EAAD,CACEzC,MAAOA,EACP0C,QAASzC,EACT0C,KAAMvB,KAtCd,KA0CE,yBAAKY,MAAOT,EAAOZ,QACjB,kBAACkC,EAAA,EAAD,CACElC,OAAQA,EACRkB,KAAMA,EACN7B,MAAOA,a,SElH3B,MAAM8C,EAAiBnD,IACrBA,IAAO,MAEPA,IAASA,IAAM,CAAE,MAAO,sBACxBA,IAAO,KACPA,IAAQ,SAMJoD,EAAqB,CACzBC,YAuDa9D,MAnDCC,YACd,6BACA,CACE8D,KAAM,CACJC,YAAU,CACR1D,oBAAU2D,iBAZM,EAYmBJ,IACnCvD,oBAAUsD,GACVM,uBAAa,CACXC,SAAU,EACRC,SACEN,UAEFrC,QACE4C,MACAC,eAEF3B,OACAF,UAWI,EAAG8B,YAGA,IAAIC,QAAQ,KACjBV,EAAO,CACLS,SACAF,MACAC,cACA3B,OACA8B,WAAY,oBACZC,WAAYjC,UAMtBkC,YAAU,CACRC,cAAe,WAMR5E,CAAQ6E,GCpFRA,a,oBCHf,0EAKe,MACb7D,UACA8D,UACAC,UACAxC,SACAyC,YASA,GAAIvE,IAASuE,GAAO,GAElB,MAAO,GAGT,MAAM,cAEJC,EAFI,eAIJC,GACEzE,IAAY,GAAI8B,GASd4C,EAAiB,CAACC,EAAoBC,IAEtCA,EACK,EAGF5E,IAAO,CACZ,CAAEA,IAAS2E,GAAY,GAAO,IAAM3E,IAClCA,KAAS,GACTA,IAAS,GACTA,IAAS,IAHyBA,CAIlCqE,IACF,CAAErE,IAAS,WAAW,GAAOA,IAAS,IACtC,CAAEA,IAAS,WAAW,GAAOA,IAAS,IACtC,CAAEA,IAAKA,IAAS,KARXA,CASJ,CACDsE,UACAD,UACAG,gBACAC,mBAIEI,EAAUH,EAAe,gBAAiBH,IAAUO,IAAMC,SAC1DC,EAAWN,EAAe,iBAAkBH,IAAUO,IAAMG,UAElE,MAAO,CACLC,WAAYhE,YAAM2D,EAAStE,GAC3B4E,cAAejE,YAAM8D,EAAUzE,M,oBClEnC,0GAqCI6E,EASAC,EAYAC,EA1DJ,wIAiEA,SAASC,EAAgBC,EAAKC,EAAKC,GAYjC,OAXID,KAAOD,EACTG,OAAOC,eAAeJ,EAAKC,EAAK,CAC9BC,MAAOA,EACPG,YAAY,EACZC,cAAc,EACdC,UAAU,IAGZP,EAAIC,GAAOC,EAGNF,GAtCT,SAAWJ,GACTA,EAAS,GAAI,KACbA,EAAS,GAAI,KACbA,EAAS,GAAI,KACbA,EAAc,QAAI,UAJpB,CAKGA,IAASA,EAAO,KAInB,SAAWC,GACTA,EAAe,MAAI,QACnBA,EAAiB,QAAI,UACrBA,EAAc,KAAI,OAClBA,EAAiB,QAAI,UACrBA,EAAuB,cAAI,gBAC3BA,EAAmB,UAAI,YACvBA,EAAyB,gBAAI,kBAP/B,CAQGA,IAAYA,EAAU,KAIzB,SAAWC,GACTA,EAAqB,QAAI,UACzBA,EAA0B,aAAI,eAFhC,CAGGA,IAAgBA,EAAc,KAiBjC,IA+HI/F,EAAU,YAAY,aAAc,CACtCK,MAAO,CAAC,uBAAa,CACnBoG,UAAU,EACVC,OAAO,EACPC,MAAM,EACNC,KAAMf,EAAKgB,GACXC,YAAaf,EAAYgB,UACvB,qBAtIW,SAAoBC,GACnC,IAAIC,EAEAnG,EAAQkG,EAAKlG,MACb0C,EAAUwD,EAAKxD,QACfkD,EAAQM,EAAKN,MACbD,EAAWO,EAAKP,SAChBG,EAAOI,EAAKJ,KACZD,EAAOK,EAAKL,KACZG,EAAcE,EAAKF,YACnBI,EAAQF,EAAKE,MACbC,EAASH,EAAKG,OACdC,EAAUtG,EAAMsG,QAChBC,EAAavG,EAAMuG,WACnBC,EAAO,YAAK,CAAC,CAAC,YAAOxB,EAAQyB,OAAQ,YAAOH,EAAQI,YAAa,CAAC,YAAO1B,EAAQ2B,SAAU,YAAOL,EAAQI,YAAa,CAAC,YAAO1B,EAAQ4B,MAAO,YAAON,EAAQO,WAAY,CAAC,YAAO7B,EAAQ8B,SAAU,YAAOR,EAAQS,kBAAmB,CAAC,YAAO/B,EAAQgC,eAAgB,YAAOV,EAAQI,YAAa,CAAC,YAAO1B,EAAQiC,WAAY,YAAOX,EAAQY,oBAAqB,CAAC,YAAOlC,EAAQmC,iBAAkB,YAAOb,EAAQc,YAAa,CAAC,IAAG,YAAOd,EAAQI,aAA3a,CAAybhE,GACpc,OAAO,aAyDJwC,EAzDeiB,EAAa,CAC7B/F,QAAS,CACPiH,KAAM/B,OAAOgC,OAAO,GAAI,kBAAQtH,EAAMuG,YAAa,YAAS,SAAU,CACpEtF,MAAO,cACPe,MAAO,QACPuF,MAAO,IACL,YAAS,SAAU,IAAKC,EAAG,GAAI,YAAS,UAAW,IAAKA,EAAG,GAAI,CACjEC,WAAYlB,EAAWlG,QACvBqH,WAAY,IACZ5C,cAAe,EACf7D,MAAOuF,EACPxF,UAAW,OACX2G,gBAAiB,cACjBC,QAAS,EACTC,OAAQ,YAAOlC,GAAU,GAAQ,cAAgB,UACjDmC,eAAgB,OAChBC,WAAY,sDASdC,MAAO1C,OAAOgC,OAAO,GAAI,YAAS,eAAgB,CAChDtF,MAAO,SACPf,MAAOuF,EACPe,MAAO,MAGXnB,MAAO,CACLiB,KAAM,CACJY,QAAS,KAEXD,MAAO,CACLE,kBAAmB,QACnBD,QAAS,MAGb5B,OAAQ,CACN2B,MAAO,CACLE,kBAAmB,QACnBD,QAAS,MAGbpC,KAAM,CACJwB,KAAM,CACJc,cAAe,cAGnBvC,MAAO,CACLyB,KAAM,CACJ5G,QAAS,QACT8G,MAAO,qBAAW,QAGO,mBAAS,OAAQxC,EAAKqD,IAAK,CACxDf,KAAM,CACJgB,SAAU,IAAM,OAEhBnD,EAAgBiB,EAAY,mBAAS,OAAQpB,EAAKgB,IAAK,CACzDsB,KAAM,CACJgB,SAAU,IAAM,OAEhBnD,EAAgBiB,EAAY,mBAAS,OAAQpB,EAAKuD,IAAK,CACzDjB,KAAM,CACJgB,SAAU,IAAM,OAEhBnD,EAAgBiB,EAAY,mBAAS,OAAQpB,EAAKwD,SAAU,CAC9DlB,KAAM,CACJgB,SAAU,UACVX,WAAY,aAEZxC,EAAgBiB,EAAY,mBAAS,cAAelB,EAAYuD,cAAe,CACjFR,MAAO,CACLS,kBAAmB,KAEnBvD,EAAgBiB,EAAY,WAAY,CAC1CkB,KAAM,CACJY,QAAS,MAET9B,GAAa,CAAC,CAChBC,MAAOA,GACN,CACDC,OAAQA,GACP,CACDR,KAAMA,GACL,CACDD,MAAOA,GACN,CACDD,SAAUA,GACT,CACDG,KAAMA,GACL,CACDE,YAAaA,GACZ,CACDtD,QAASA,QAsBgB,mBAAS,YAAK,CAAC,QAAS,UAAW,QAAS,SAAU,QAAS,QAAS,OAAQ,QAAS,OAAQ,oBAE1HgG,EAAa,YAAgBxJ,GApBZ,SAAwByJ,GAC3C,IAAIpH,EAASoH,EAAGpH,OACZqH,EAAWD,EAAGC,SACdC,EA5KN,SAAgBC,EAAGC,GACf,IAAIC,EAAI,GACR,IAAK,IAAIC,KAAKH,EAAOxD,OAAO4D,UAAUC,eAAeC,KAAKN,EAAGG,IAAMF,EAAEM,QAAQJ,GAAK,IAC9ED,EAAEC,GAAKH,EAAEG,IACb,GAAS,MAALH,GAAqD,mBAAjCxD,OAAOgE,sBACtB,KAAIC,EAAI,EAAb,IAAgBN,EAAI3D,OAAOgE,sBAAsBR,GAAIS,EAAIN,EAAEO,OAAQD,IAASR,EAAEM,QAAQJ,EAAEM,IAAM,IAC1FP,EAAEC,EAAEM,IAAMT,EAAEG,EAAEM,KACtB,OAAOP,EAqKMS,CAAOd,EAAI,CAAC,SAAU,aAErC,OAAO,IAAMe,cAAc,IAAapE,OAAOgC,OAAO,CACpDtF,MAAOT,EAAO8F,MACbwB,GAAW,IAAMa,cAAc,OAAQ,CACxC1H,MAAOT,EAAOyG,OACbY,QAaU,O,oBC1Nf,0hBAWIe,EAAc,YAAK,YAAS,YAAM,SAAU,CAAC,YAAS,IAAgB,CAAC,YAAK,CAAC,SAAU,SAAU,YAAO,GAAI,WAAY,MAAY,YAAO,WAE3IC,EAAgB,SAAuBjI,EAAMa,EAAWqH,EAAaC,GACvE,OAAO,YAAYnI,EAAM,CACvBvC,KAAM,CAAC,KACPG,MAAO,CAAC,uBAAa,CACnBiD,UAAWA,IACT,0BAAe,SAAUzC,GAC3B,OAAO+J,EAAWxE,OAAOgC,OAAO,GAAIvH,EAAO,CACzC8J,YAAaA,QAEb,mBAAS,YAAKF,GAAa,SAAU5J,GAEvC,OAAI,YAAGgK,OAAQhK,EAAM6C,OACZ,YAAM,YAAa,IAAIoH,OAAOjK,EAAM6C,OAAQ7C,GAG9CA,QAdJ,EAgBJ,SAAUmG,GACX,IAAIlE,EAAQkE,EAAKlE,MACb4G,EAAW1C,EAAK0C,SAChBpG,EAAY0D,EAAK1D,UACrB,OAAO,wBAAcA,EAAW,CAC9BR,MAAOA,GACN4G,OAIHkB,EAAa,SAAoB5D,GACnC,IAAIK,EAAaL,EAAKlG,MAAMuG,WACxBvC,EAAUkC,EAAKlC,QACfC,EAAUiC,EAAKjC,QACf4F,EAAc3D,EAAK2D,YACvB,OAAO,IAAS,CACdzJ,QAAS,CACPiH,KAAM/B,OAAOgC,OAAO,GAAIuC,EAAY,GAAGtD,GAAa,YAAS,SAAU,IAAK0D,EAAG,GAAI,CACjFC,WAAY,SACZzC,WAAYlB,EAAW9F,WAG3BuD,QAAS,CACPqD,KAAM/B,OAAOgC,OAAO,GAAIuC,EAAY,GAAGtD,KAEzCtC,QAAS,CACPoD,KAAM/B,OAAOgC,OAAO,GAAIuC,EAAY,GAAGtD,MAExC,CAAC,CACFvC,QAASA,GACR,CACDC,QAASA,MAMTkG,EAAYP,EAAc,YAAa,KAAM,CAAC,YAAW,aAAY,WAAUE,GAC/EM,EAAYR,EAAc,YAAa,KAAM,CAAC,WAAU,YAAW,cAAaE,GAChFO,EAAYT,EAAc,YAAa,KAAM,CAAC,WAAU,WAAU,aAAYE,GAC9EQ,EAAYV,EAAc,YAAa,KAAM,CAAC,WAAU,WAAU,YAAWE,GAC7ES,EAAYX,EAAc,YAAa,KAAM,CAAC,YAAW,WAAU,YAAWE,GAC9EU,EAAYZ,EAAc,YAAa,KAAM,CAAC,aAAY,YAAW,YAAWE,GAEhFW,EAAe,SAAoBvE,GACrC,IAAIwE,EAAaxE,EAAKlG,MAClBuG,EAAamE,EAAWnE,WACxBrG,EAAUwK,EAAWxK,QACrByK,EAAKzE,EAAKyE,GACV3G,EAAUkC,EAAKlC,QACfC,EAAUiC,EAAKjC,QACf4F,EAAc3D,EAAK2D,YACvB,OAAO,IAAS,CACdzJ,QAAS,CACPiH,KAAM/B,OAAOgC,OAAO,GAAIuC,EAAY,GAAGtD,GAAa,CAClD3F,UAAW,YAAM,YAAU,EAAG+J,GAAKzK,GACnC0K,aAAc,EACdV,WAAY,SACZzC,WAAYlB,EAAW9F,WAG3BuD,QAAS,CACPqD,KAAM/B,OAAOgC,OAAO,GAAIuC,EAAY,GAAGtD,KAEzCtC,QAAS,CACPoD,KAAM/B,OAAOgC,OAAO,GAAIuC,EAAY,GAAGtD,MAExC,CAAC,CACFvC,QAASA,GACR,CACDC,QAASA,MAMT4G,EAAejB,EAAc,eAAgB,KAAM,CAAC,YAAW,WAAU,YAAWa,GACpFK,EAAelB,EAAc,eAAgB,KAAM,CAAC,aAAY,aAAY,cAAY,SAAU7J,GACpG,OAAO0K,EAAa,YAAe1K,EAAO,CACxC4K,GAAI,QAIJI,EAAe,SAAoB7E,GACrC,IAAIwE,EAAaxE,EAAKlG,MAClBuG,EAAamE,EAAWnE,WACxBrG,EAAUwK,EAAWxK,QACrB8D,EAAUkC,EAAKlC,QACfC,EAAUiC,EAAKjC,QACf4F,EAAc3D,EAAK2D,YACvB,OAAO,IAAS,CACdzJ,QAAS,CACPiH,KAAM/B,OAAOgC,OAAO,GAAIuC,EAAY,GAAGtD,GAAa,CAClD3F,UAAW,EACXgK,aAAc,YAAM,EAAG1K,GACvBgK,WAAY,SACZzC,WAAYlB,EAAW9F,WAG3BuD,QAAS,CACPqD,KAAM/B,OAAOgC,OAAO,GAAIuC,EAAY,GAAGtD,KAEzCtC,QAAS,CACPoD,KAAM/B,OAAOgC,OAAO,GAAIuC,EAAY,GAAGtD,MAExC,CAAC,CACFvC,QAASA,GACR,CACDC,QAASA,MAMT+G,EAAepB,EAAc,eAAgB,MAAO,CAAC,aAAY,YAAW,YAAWmB,GACvFE,EAAerB,EAAc,eAAgB,MAAO,CAAC,aAAY,aAAY,aAAYmB,GAiCzFG,EAAatB,EAAc,aAAc,IAAK,CAAC,UAAS,UAAS,YA/BlD,SAAoB1D,GACrC,IAAIwE,EAAaxE,EAAKlG,MAClBuG,EAAamE,EAAWnE,WACxBrG,EAAUwK,EAAWxK,QACrB8D,EAAUkC,EAAKlC,QACfC,EAAUiC,EAAKjC,QACf4F,EAAc3D,EAAK2D,YACvB,OAAO,IAAS,CACdzJ,QAAS,CACPiH,KAAM/B,OAAOgC,OAAO,GAAIuC,EAAY,GAAGtD,GAAa,CAClD3F,UAAW,YAAM,EAAGV,GACpB0K,aAAc,EACdV,WAAY,SACZzC,WAAYlB,EAAWlG,WAG3B2D,QAAS,CACPqD,KAAM/B,OAAOgC,OAAO,GAAIuC,EAAY,GAAGtD,KAEzCtC,QAAS,CACPoD,KAAM/B,OAAOgC,OAAO,GAAIuC,EAAY,GAAGtD,MAExC,CAAC,CACFvC,QAASA,GACR,CACDC,QAASA,S,oBC5Kb,qGAmCA,MAAM6F,EAAa,EACjB9J,QACAC,WACA+D,UACAmH,UACAlH,UACAxC,SACAyC,YAEA,MAAM,QACJhE,GACEF,EAEJ,OAAOG,YAAU,CACfC,QAAS,CACPiH,KAAM,CACJM,gBAAiByD,YAAmBpL,EAAOC,GAC3CgB,MAAOC,YAAclB,EAAOC,MACzBoL,YAAc,CACfnL,UACA8D,UACAC,UACAxC,SACAyC,aAECoH,YAAS,OAAQC,IAAKC,EAAG3K,YAAM,EAAGX,IACrCc,UAAW,WAGfgD,QAAS,CACPqD,KAAM,IACDiE,YAAS,OAAQC,IAAKC,EAAG3K,YAAM,EAAGX,OAGxC,CACD,CAAED,YACF,CAAE+D,WACF,CAAEmH,cAIUM,QACd,MAAMC,EAAgB/L,IACpBA,IAAS,cAAc,GACvB,EAAG4B,YACD,yBAAKS,MAAOT,EAAO8F,MACjB,kBAAC,IAAD,KACE,kBAAC,IAAD,CAAS/F,GAAG,6BAIjBvB,GACC,kBAAC0L,EAAqB1L,IAI1B,OAAO4L,kBACLC,oBAAU,aAAc,iBAAiB,GACzCC,oBAAU,CACRC,kBAAmB,WAEjBC,KAAKhM,MAAMiM,eAAc,MAG7BxM,oBAAUsK,GARL6B,CASLD,K,gLCxFJ,MAAMO,EAAShJ,eACbiJ,mBAAUnM,IACR,MAAM,GAAEuB,GAAOvB,EACToM,EAAWC,kBAAQ,IAAMC,YAAmB/K,GAAK,CAAEA,IACnDgL,EAAYC,YAAYJ,GACxBK,EAAWC,cACXnJ,EAAUoJ,6BAAmB,CAAEC,oBAAkBH,GAEvD,OAAO7M,IAAgBI,EAAO,CAC5BuM,YACAhJ,cAGJF,uBAAa,CACXwJ,aAAc,EACZjL,OACAI,OACAuK,YACAhJ,SACEqJ,qBASE,IAAMA,EAAe,IACtBL,EACH1I,WAAYjC,EACZgC,WAAY5B,OAKZ8K,EAAS5J,eACbzD,oBAAU,EACRsN,oBACAC,cACAH,eACAN,gBAOAU,oBAAU,KACJF,IACFC,IACAH,EAAaN,KAEd,CAAEQ,OAIM3N,kBAAY,mBAAoB,CAC7CC,KAAM,CACJ6N,mBAAYhB,GACZiB,iBACEvN,IAAgBA,IAAaA,KAAU,aACvCwN,SAEFF,mBAAYJ,M,0CCzDD,I,iBCyBAO,MApCEzB,kBACf0B,IACAxB,oBAAU,CACRyB,kBAAmB,WAKjB,GAAIvB,KAAKhM,MAAMwN,SAASC,OAApB,WAAiCzB,KAAKhM,MAAM4B,MAAQ,CACtD,MAAM8L,EAAkB,KAGtB,GAAI1B,KAAKhM,MAAMyB,UAAYuK,KAAKhM,MAAM2N,kBACpC,OAAOC,WAAWF,EAAiB,KAGrCG,WAASC,SAAS9B,KAAKhM,MAAM4B,KAAM,CACjCmM,SAAU,IACVC,MAAO,IACPC,QAAQ,KAGZL,WAAWF,EAAiB,SAIjChC,GACS1L,GACN,kBAAC,WAAD,KACE,kBAAC,UAAD,CAAS4B,KAAM5B,EAAM4B,OACrB,kBAAC8J,EAAqB1L,K,wECK9B,MAAMkO,EAAUC,GAAavO,IAAO,CAClC,CAAEA,IAASwO,IAAIC,YAAazO,IAAS,CACnC0O,UAAW,WAEb,CAAE1O,IAASwO,IAAIG,MAAO3O,IAAS,CAC7BW,KAAM,EACNC,UAAW,UAEb,CAAEZ,IAASwO,IAAII,MAAO5O,IAAS,CAC7B6O,OAAQ,UAEV,CAAEC,SAAU9O,IAAS,CACnB0O,UAAWH,KAEb,CAAEvO,IAAKA,IAAS,CACd6O,OAAQ,WAfiB7O,CAiB1BuO,GAkIYhP,MA9BQC,YAAY,SAAU,CAC3CC,KAAM,CACJgO,GAEF7N,MAAO,CACLC,oBAAU,KAgBD,CACLkP,UAhBgBC,iBAAO,OAmB3BC,IACApP,oBA5He,EACjBQ,QACAC,WACAuB,UACAC,SACAyC,WACGnE,MAEH,MAAM,QACJuG,EADI,QAEJpG,GACEF,GACE,IAEJkO,GACEvO,IAAY,GAAI8B,IAEd,QACJuC,EADI,QAEJmH,EAFI,QAGJlH,EAHI,UAIJ4K,GACE9O,EAEE+O,EAAYC,YAChBC,YAAejP,GACfmO,GAGIe,EAAU5D,YAAc,CAC5BnL,UACA8D,UACAC,UACAxC,SACAyC,UAGIgL,EFjGsB,GAC5B/D,UACA0D,gBAKA,IAAK1D,GAAwB,MAAb0D,EACd,MAAO,GAGT,MAAMM,EAAYhE,GAAW0D,EAAa,GAAK,IAC/C,MAAO,CACLvO,KAAM8O,qBAAWD,KEoFGE,CAAe,CACnClE,UACA0D,cAGF,OAAO1O,YAAU,CACfC,QAAS,CACPiH,KAAM,CACJM,gBAAiByD,YAAmBpL,EAAOC,GAC3CqP,SAAU,WACV7O,QAAS,OACTC,cAAe,SACf6G,MAAO6H,qBAAW,QACfnB,EAAOa,MACPG,KACAC,GAELlH,MAAO,CACL1H,KAAM,EACNC,UAAW,OACXE,QAAS,OACT+N,OAAQ,QAEVe,OAAQ,CACN9O,QAAS,OACTC,cAAe,SACf6G,MAAO6H,qBAAW,OAItB,CAACI,mBAAS,WAAYC,IAASC,mBAAoB,CACjDrI,KAAM,CACJsI,gBAAiB,6BAAF,OAA+BrJ,EAAQsJ,QAAvC,aAAmDtJ,EAAQuJ,gBAA3D,QAGlB,CACD,CAAErO,WACF,CAAEvB,YACF,CAAE+D,WACF,CAAEmH,WACF,CAAElH,iBAmDS/E,CA/CW,EACxBqC,SACAmN,YACA9F,cAEA,6BAAS5G,MAAOT,EAAO8F,MACrB,yBAAKrF,MAAOT,EAAOyG,OACjB,yBACEhG,MAAOT,EAAOgO,OACdO,IAAKpB,GAEJ9F,MCjJM1J,MAJCC,YAAY,kBAAmB,CAC7CC,KAAM,CAAE2Q,IAGK7Q,CAAQ4C,GCJRA,O,yDCOf,MAAMkO,EAAc,IAAMC,KAAKC,MAAO,GAAAD,KAAKE,SAAwB,IAuBpDjR,MArBCkR,YAAkB,mBAAlBA,EAqBDlR,CAjBc,EAC3ByD,OACAD,aAEA,yBACEV,MAAO,CACLvB,QAAS,eACT8G,MAAO,GAAF,OAAKyI,IAAL,OAGP,kBAAC,IAAD,CACEK,MAAO1N,GAAQA,EAAK2N,SAAW,EAAI,EACnC5N,QAASA,M,4WCzBAvD,kBACb,MADaA,CAEb,EACAoR,qBACAD,WACAtQ,QACA0C,aACG8N,KAEH,0BAAMxO,MAAO,CACXf,MAAOtB,IAAO,CACZ,CAAEA,IAAS,SAAUA,IAASK,EAAMsG,QAAQsJ,UAC5C,CAAEjQ,IAAS,WAAYA,IAASK,EAAMsG,QAAQsJ,UAC9C,CAAEjQ,IAAS,QAASA,IAASK,EAAMsG,QAAQO,WAC3C,CAAElH,IAAKA,IAAS,aAJXA,CAKJ+C,KAGH,kBAAC6N,EAAD,GACED,SAAUA,EACVtQ,MAAOA,EACP0C,QAASA,GACL8N,M,+MCvBKrR,kBACb,OADaA,CAEb,EAAGmR,WAAUC,wBAAuBC,KACpC,0BAAMxO,MAAO,CAAEkI,WAAY,SACzB,kBAACqG,EAAD,GACED,SAAUA,GACNE,M,+MCNKrR,kBACb,OADaA,CAEb,EAAGmR,WAAUC,wBAAuBC,KACpC,0BAAMxO,MAAO,CAAEyO,UAAW,WACxB,kBAACF,EAAD,GACED,SAAUA,GACNE,M,iQCCV,MAAME,EAAeC,IAAYC,aAAa,OAExCC,EAAkBlR,IACtB+Q,EACA/Q,IAAS,GAAI,CAAE,mBACfA,IAAQ,mBAGKR,kBACb,OAAQ,CAENK,oBAAU2D,YAAQ0N,KAHP1R,CAIV,EACHoR,qBACAD,WACAtK,cACA8K,aACA9Q,QACA0C,UACAqO,oBACGP,KAEH,kBAAC,IAAD,CACExQ,MAAOA,EACPgR,GAAIF,EAAWG,KACf3P,GAAIwP,EAAWI,aAAX,yBAA4CJ,EAAWI,cAAiB,KAC5ExO,QAASA,EACTsD,YAAaA,EACbF,KAAMqL,IAAe5I,QACrBwI,eAAgBA,GAEhB,kBAACR,EAAD,GACED,SAAUA,GACNE,M,0BCvCV,MAAMY,EAAmBzR,IACvBA,IAAU,KAAM,KAChBA,IAAU,MAAO,MACjBA,IAAU,MAAO,OAGb0R,EAASC,GAAmBA,EAAOC,MAAM,MAC5CC,IAAI7R,KAGJ8R,OAAO,CAACC,EAAMC,EAAKpI,IAAM,CAAEmI,EAAO,wBAAItM,IAAKmE,IAAOoI,IAetCxS,kBACb,OADaA,CAEb,EAAGyC,OAAMyP,WACT,kBAAC,WAAD,KAhBiB,EAACzP,EAAcgQ,IAA6BjS,IAC7DyR,EAEAzR,IACEA,IAASkS,kBAAQD,IACjBP,GAL2D1R,CAO7DiC,GAUGkQ,CAAWlQ,EAAMyP,K,eCtBtB,MAAMU,EAAeC,eAAK,IAAM,qCAKjB7S,kBACb,mBAAoB,CAClByP,IACApP,oBAAU,EACRQ,QACAiE,cAEO,CACLgO,YAAahO,OAAU,EAAS,UAChCgL,QAAS,GAAF,OAAKpO,YAAM,EAAGb,EAAME,SAApB,UATAf,CAab,EACAoR,qBACAvQ,QACA0C,UACAuM,UACAgD,cACAnB,aACAR,eAEA,MAAM4B,EACJ,kBAAC,IAAD,CACElS,MAAOA,EACP8F,KAAMqL,IAAe5I,QACrB7F,QAASA,GAERoO,EAAWqB,OAIhB,OACE,kBAAC,WAAD,CAAUC,SAAUF,GAElB,kBAACH,EAAD,CACEM,QAAQ,OACRJ,YAAaA,EACbK,kBAAkB,EAClBrD,QAASA,EACT5O,QACE,yBACE2B,MAAO,CACLuQ,SAAU,MAGZ,kBAAChC,EAAD,CACED,SAAUA,MAKf4B,M,iNC5CT,MAAMM,GAAQR,eAAK,IAAM,iCAKnBS,GAAMT,eAAK,IAAM,iCAKjBU,GAAOV,eAAK,IAAM,iCAKlBW,GAAcX,eAAK,IAAM,iCAKzBY,GAAWZ,eAAK,IAAM,iCAKtBa,GAAeb,eAAK,IAAM,iCAK1Bc,GAAed,eAAK,IAAM,iCAK1Be,GAAcf,eAAK,IAAM,iCA8BzBzB,GAAqB,EAAGD,cAAaE,KACzC,kBAAC,WAAD,KAIQ7Q,IAAY,GAAI2Q,GAJxB,0BAMI,kBAAC7N,GAAD,IACE2C,IAAKmE,EACL5G,KAAMqQ,GACFxC,WATV,IAsBF,SAASyC,GACPC,EACAC,GAEA,MAAO,CACLxT,IACEA,IAAS,OAAQ,WACjBA,IAAS,OAAQuT,IAElBnT,GACC,kBAACoT,EAAcpT,IAKrB,MAAM0C,GAAY,EAAGE,UAAS6N,MAC5B,MAAMzQ,EAAQJ,IACZA,IACE,IAAMA,IAAKyT,OAAQzQ,GACnBhD,IAAQ,OAAQgD,GAChBhD,IAAgBgD,IAElBhD,IACEA,IAAW,WACVM,GAAaoT,YAAWpT,IAE3BN,IAAQ,qBAAsB4Q,IAC9B5Q,IACEA,IAAW,cACXA,IAAY,KAbFA,CAeZ6Q,GAGI8C,EAAU3T,IAAO,CACrB,CACEA,IACA4T,UAEF,CACE5T,IAASyT,OAAQ,QACjB,IAEE,kBAACI,EAAD,CAAM5R,KAAMe,KAGhB,CACEhD,IAAS,OAAQ,QACjB,IACE,kBAAC6T,EAASzT,IAGdkT,GAAwB,IAAKQ,GAC7BR,GAAwB,IAAKS,GAC7BT,GAAwB,MAAOU,GAC/BV,GAAwB,MAAOR,IAC/BQ,GAAwB,QAAST,IACjCS,GAAwB,MAAOF,IAC/BE,GAAwB,OAAQW,GAChCX,GAAwB,eAAgBH,IACxCG,GAAwB,UAAWY,GACnC,CACElU,IACEA,IAAS,OAAQ,WACjBA,IAAS,OAAQ,SAEnB,IAAMA,IACJA,IAAS,QAAS,UAClB,IACE,kBAACgT,GAAgB5S,GAEnB,IACE,kBAAC2S,GAAS3S,GANRJ,CAQJI,EAAM+Q,aAEV,CACEnR,IACEA,IAAS,OAAQ,WACjBA,IAAS,OAAQ,OAEnB,IAAMA,IACJA,IAAS,QAAS,SAClB,IACE,kBAACkT,GAAD,MACM9S,EADN,CAEE+T,MAAOnU,IAAS,OAAQ,QAASI,EAAM+Q,eAG3C,IACE,kBAAC8B,GAAa7S,GATZJ,CAWJI,EAAM+Q,aAGVmC,GAAwB,OAAQ1C,IAChC,CACE5Q,IACA4T,YAIJ,OACE,kBAACD,EAAYvT,IAgBFb,OAFCC,YAAY,YAEbD,CAZWa,GACxB,kBAAC,WAAD,CACEqS,SACE,kBAAC2B,EAAqBhU,IAGxB,kBAAC0C,GAAc1C,KC5NJ0C,Q,oBCNf,oCAGgBuR,OAAuBrU,IACrCA,IAAO,WACNI,GAAU,kBAACiU,EAAkBjU,GAC7BA,GACC,yBAAKiC,MAAO,CAAEvB,QAAS,SACrB,kBAACuT,EAAkBjU,M,oBCRzB,mPAgBA,SAASmF,EAAgBC,EAAKC,EAAKC,GAYjC,OAXID,KAAOD,EACTG,OAAOC,eAAeJ,EAAKC,EAAK,CAC9BC,MAAOA,EACPG,YAAY,EACZC,cAAc,EACdC,UAAU,IAGZP,EAAIC,GAAOC,EAGNF,EAGT,IAAI8O,EAAe,SAAsBC,GACvC,OAAO,IAAM,QAAQC,IAAI,IAAMD,GAAQ,KAAM5C,UA6J3C8C,EAdU,YAAY,cAAe,CACvChV,KAAM,CACN,KACAG,MAAO,CAAC,uBAAa,CACnB8G,QAAQ,EACRV,UAAU,IACR,qBAAU,SAAUlG,GACtB,MAAO,CACL4U,UAAW,0BAAgB5U,EAAW6U,QACtCC,UAAW,0BAAgB9U,EAAW+U,QACtCC,WAAY,YAAO,YAAO,YAAO,WAAW,GAAO,YAAc,IAAc,CAAC,SAAU,WAAY,YAAO,YAAK,CAAC,SAAU,QAAhB,CAAyBhV,IAAc,YAAO,MAA/I,CAAsJA,OAElK,0BAxJW,SAAoByG,GACnC,IAAIwO,EAEArO,EAASH,EAAKG,OACdrG,EAAQkG,EAAKlG,MACbgE,EAAUkC,EAAKlC,QACfsC,EAAUtG,EAAMsG,QAChBpG,EAAUF,EAAME,QAChBqG,EAAavG,EAAMuG,WACnBoO,EAAY3U,EAAM2U,UACtB,OAAO,KAoDJzP,EApDcwP,EAAY,CAC3BtU,QAAS,CACPiH,KAAM/B,OAAOgC,OAAO,CAClB7G,QAAS,OACTwO,QAAS,YAAM,EAAG/O,GAClBmI,SAAU,EACVd,MAAO,qBAAW,KAClBqN,WAAY,SACZtF,SAAU,WACVuF,YAAa,YAAM,EAAG3U,GACtB4U,WAAY,QACX,YAAS,SAAU,CACpBvN,MAAO,EACPvF,MAAO,QACPf,MAAOqF,EAAQyO,SACb,CACFhN,WAAY,iLAEdiN,MAAO1P,OAAOgC,OAAO,CACnBC,MAAO,qBAAW,KAClBK,QAAS,OACTqN,aAAc,WACdL,WAAY,SACZM,SAAU,SACVC,aAAc,YAAM,EAAGjV,IACtB,kBAAQqG,GAAa,YAAS,OAAQ,CACvC6O,OAAQ,IACRC,OAAQ9O,EAAW,gBAAc+O,WAC/B,CACFC,OAAQ,SAEVC,MAAOlQ,OAAOgC,OAAO,GAAI,kBAAQf,GAAa,YAAS,OAAQ,CAC7D8O,OAAQ9O,EAAW,gBAAc+O,WAC/B,CACF7U,QAAS,OACTkH,gBAAiB,cACjB1G,MAAOqF,EAAQsJ,QACf6F,WAAY,SACZ/U,cAAe,MACfF,eAAgB,SAChBkV,iBAAkB,OAClBC,cAAe,OACfC,aAAc,OACdC,WAAY,OACZhO,OAAQ,YAEViO,UAAW,CACTpV,cAAe,SACfF,eAAgB,SAChBuV,YAAa,YAAM,EAAG7V,MAGE,mBAAS,YAAakT,OAAO,IAAU4C,MAAO,CAC1E3O,KAAM/B,OAAOgC,OAAO,GAAI,YAAS,SAAU,CACzC2O,cAAe,EACfC,eAAgB,EAChBC,iBAAkB,EAClBC,kBAAmB,OAEnBlR,EAAgBwP,EAAW,mBAAS,YAAatB,OAAO,IAAUiD,OAAQ,CAC5EhP,KAAM/B,OAAOgC,OAAO,GAAI,YAAS,SAAU,CACzC2O,cAAe,EACfC,eAAgB,EAChBC,iBAAkB,EAClBC,kBAAmB,OAEnBlR,EAAgBwP,EAAW,mBAAS,YAAatB,OAAO,IAAUkD,SAAU,CAC9EjP,KAAM/B,OAAOgC,OAAO,GAAI,YAAS,SAAU,CACzC2O,cAAe,GACfC,eAAgB,GAChBC,iBAAkB,GAClBC,kBAAmB,QAEnBlR,EAAgBwP,EAAW,SAAU,CACvCrN,KAAM,CACJO,QAAS,EACT2O,UAAW,mBAAmBvM,OAAOiK,EAAa3N,EAAQsJ,UAC1D4G,YAAalQ,EAAQsJ,WAErB1K,EAAgBwP,EAAW,UAAW,CACxCrN,KAAM,CACJwN,YAAa,YAAM,EAAG3U,MAEtBwU,GAAY,CAAC,CACf1Q,QAASA,GACR,CACDqC,OAAQA,GACP,CACDsO,UAAWA,UAwDGzV,EApDI,SAAyBgH,GAC7C,IAAIlG,EAAQkG,EAAKlG,MACbuB,EAAS2E,EAAK3E,OACd+S,EAASpO,EAAKoO,OACdE,EAAStO,EAAKsO,OACdH,EAAYnO,EAAKmO,UACjBE,EAAYrO,EAAKqO,UACjBkC,EAASvQ,EAAKuQ,OACd9Q,EAAWO,EAAKP,SAChB8O,EAAavO,EAAKuO,WAClBiC,EAAaxQ,EAAKwQ,WACtB,OAAO,IAAMhN,cAAc,MAAO,CAChC1H,MAAOT,EAAO8F,MACbkN,EAAY,IAAM7K,cAAc,OAAQ,CACzC1H,MAAOT,EAAOiU,OACb,IAAM9L,cAAc,OAAQ,CAC7B1H,MAAOT,EAAOuU,WACbtB,IAAW,KAAM,IAAM9K,cAAc,QAASpE,OAAOgC,OAAO,CAC7DvF,KAAM,OACNC,MAAOT,EAAOyT,OACb0B,EAAY,CACb/Q,SAAUA,KACP0O,EAAY,IAAM3K,cAAc,MAAO,CAC1C1H,MAAOT,EAAOiU,OACb,IAAM9L,cAAc,OAAQ,CAC7B1H,MAAOT,EAAOuU,WACbxB,IAAW,KAAM,IAAM5K,cAAc,IAAQ,CAC9C,eAAgB,SAChB1J,MAAOA,EACP8F,KAAM,IAAKC,GACX4Q,KAAM,IAAK7P,QACX/E,KAAM,SACN6D,OAAO,EACPkO,MAAO2C,EAAO3C,MACdnO,SAAUA,GACT8O,OA4CL,IAiBImC,EADY,YAAY,uBACCC,EAjBF,SAA8BlO,GACvD,IAAI3I,EAAQ2I,EAAG3I,MACXgV,EAAQrM,EAAGqM,MACX8B,EAAOnO,EAAGmO,KACVJ,EAAa/N,EAAG+N,WAChBlG,EAfN,SAAgB1H,EAAGC,GACf,IAAIC,EAAI,GACR,IAAK,IAAIC,KAAKH,EAAOxD,OAAO4D,UAAUC,eAAeC,KAAKN,EAAGG,IAAMF,EAAEM,QAAQJ,GAAK,IAC9ED,EAAEC,GAAKH,EAAEG,IACb,GAAS,MAALH,GAAqD,mBAAjCxD,OAAOgE,sBACtB,KAAIC,EAAI,EAAb,IAAgBN,EAAI3D,OAAOgE,sBAAsBR,GAAIS,EAAIN,EAAEO,OAAQD,IAASR,EAAEM,QAAQJ,EAAEM,IAAM,IAC1FP,EAAEC,EAAEM,IAAMT,EAAEG,EAAEM,KACtB,OAAOP,EAQES,CAAOd,EAAI,CAAC,QAAS,QAAS,OAAQ,eAEjD,OAAO,IAAMe,cAAc0K,EAAa9O,OAAOgC,OAAO,CACpDtH,MAAOA,GACNwQ,EAAM,CACPkG,WAAY,YAAM1B,EAAO0B,GACzBrQ,OAAQ,aAAO,EAAO,SAAUyQ,GAChCnR,SAAU,aAAO,EAAO,aAAcmR,U,oBCpO1C,8EA4BA,MAwDM5X,EAAUC,YAAY,aAAc,CACxCI,MAAO,CACLC,oBA1DgBO,IAClB,MAAM,MACJC,GACED,GAEE,QACJG,GACEF,EAEJ,OAAOG,YAAU,CACfC,QAAS,CACPO,OAAQ,CACNC,UAAWC,YAAM,EAAGX,MAGvB,SA+CUhB,MA5CU,EACvByB,SACAkB,OACA7B,QACAuB,aAEA,MAAM,IACJgC,EADI,MAEJuQ,EAFI,MAGJ3B,EAHI,YAIJ4E,GACEpW,EACJ,OACE,yBAAKqB,MAAOT,EAAOZ,QACjB,0BACEqW,OAAO,OACP3T,SAAUxB,EAAKoV,aACfC,gBAAc,sBAEd,kBAAC,IAAD,CACEvV,KAAK,SACL2S,OAAQ/Q,EACRmT,WAAY,CACVK,eAEFN,OAAQ,CACN7U,KAAMuQ,EACN2B,MAAOA,GAET9T,MAAOA,EAEPwC,UAAW2U","file":"pex-static/25.275f165e20da26b86a2b.chunk.js","sourcesContent":["import React from 'react';\nimport {\n withProps,\n} from '@team-griffin/rehook';\n\nimport errorBoundary from 'presentation/hocs/errorBoundary';\nimport Ribbon from '../Ribbon';\nimport stylesheet, { Styles } from './DomainSearchStart.stylesheet';\nimport visibilitySet from 'presentation/hocs/visibilitySet';\nimport Shortcode, { ShortcodeProps } from 'components/Shortcode';\nimport { isNotNilOrEmpty } from '@team-griffin/capra';\nimport PaddingBox from '@ux/padding-box';\nimport DomainSearchForm from './DomainSearchForm';\nimport {\n PreHeading01,\n SubHeading01,\n Heading02,\n} from '@ux/typography';\nimport { Container, Row, Column, Justify } from '@ux/grid';\nimport * as r from 'ramda';\nimport pureEnhance from '@ux/pure-enhance';\nimport { RibbonProps } from 'domain/constants/ribbons';\nimport { InjectedFormProps } from 'redux-form';\n\nexport interface OuterProps extends RibbonProps {\n text?: {\n title?: ShortcodeProps,\n precursor?: ShortcodeProps,\n subtitle?: ShortcodeProps,\n },\n search: {\n tld: string,\n glyph: string,\n label: string,\n placeholder?: string,\n destination?: string,\n },\n form: InjectedFormProps,\n}\nexport interface InnerProps extends OuterProps {\n styles: Styles,\n hasTitle: boolean,\n hasPrecursor: boolean,\n hasSubtitle: boolean,\n}\nconst DomainSearchStart = ({\n id,\n styles,\n theme,\n loading,\n colorway,\n layout,\n hBaseline,\n name,\n text,\n hasTitle,\n hasPrecursor,\n hasSubtitle,\n form,\n search,\n}: InnerProps) => {\n const {\n precursor,\n title,\n subtitle,\n } = text;\n\n return (\n \n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n
\n \n \n \n
\n
\n \n );\n};\n\nconst enhance = pureEnhance(\n 'DomainSearchStart',\n {\n hocs: [\n errorBoundary,\n visibilitySet,\n ],\n hooks: [\n withProps((ownerProps: OuterProps) => ({\n hasTitle: r.pathSatisfies(\n isNotNilOrEmpty,\n [ 'text', 'title' ],\n ownerProps,\n ),\n hasSubtitle: r.pathSatisfies(\n isNotNilOrEmpty,\n [ 'text', 'subtitle' ],\n ownerProps,\n ),\n hasPrecursor: r.pathSatisfies(\n isNotNilOrEmpty,\n [ 'text', 'precursor' ],\n ownerProps,\n ),\n })),\n withProps(stylesheet),\n ],\n }\n);\n\n\nexport default enhance(DomainSearchStart);\n","import { gu2px } from '@ux/theme-utils';\nimport { getTitleColor, getBodyColor } from 'presentation/utils/colorway';\nimport { useStyles } from '@team-griffin/stylr';\nimport { InnerProps } from './DomainSearchStart';\nimport { CSSProperties } from 'react';\n\nexport interface Styles {\n content: CSSProperties,\n searchText: CSSProperties,\n precursor: CSSProperties,\n title: CSSProperties,\n subtitle: CSSProperties,\n search: CSSProperties,\n}\n\nexport default (props: InnerProps) => {\n const {\n theme,\n colorway,\n } = props;\n\n const {\n spacing,\n } = theme;\n\n return useStyles({\n default: {\n content: {\n flex: 1,\n flexBasis: 'auto',\n justifyContent: 'center',\n display: 'flex',\n flexDirection: 'column',\n },\n search: {\n marginTop: gu2px(3, spacing),\n },\n searchText: {\n display: 'none',\n },\n precursor: {\n textAlign: 'center',\n color: getTitleColor(theme, colorway),\n },\n title: {\n textAlign: 'center',\n color: getTitleColor(theme, colorway),\n },\n subtitle: {\n textAlign: 'center',\n color: getBodyColor(theme, colorway),\n marginTop: gu2px(2, spacing),\n },\n },\n }, []);\n};\n","import {\n withProps,\n withHandlers,\n} from '@team-griffin/rehook';\nimport { reduxForm, InjectedFormProps } from 'redux-form';\nimport {\n connect,\n} from '@ux/fabric';\nimport * as r from 'ramda';\nimport DomainSearchStart, { OuterProps as PureProps } from './DomainSearchStart';\nimport { submit } from 'application/signals/ribbons/domain-search-start';\nimport pureEnhance, { withHooks } from '@ux/pure-enhance';\n\ninterface ConnectedProps {\n form: InjectedFormProps,\n}\ninterface InnerProps extends PureProps {}\ninterface OuterProps extends Omit {}\n\n\nconst createFormName = r.pipe(\n r.prop('id'),\n //@ts-ignore\n r.append(r.__, [ 'usf', 'domainSearchStart' ]),\n r.join('.'),\n r.objOf('form'),\n);\n\n//@ts-ignore\nconst mapStateToProps = void 0;\n\nconst mapDispatchToProps = {\n submit,\n};\n\n\nconst enhance = pureEnhance(\n 'ConnectedDomainSearchStart',\n {\n pipe: [\n withHooks([\n withProps(connect(mapStateToProps, mapDispatchToProps)),\n withProps(createFormName),\n withHandlers({\n onSubmit: ({\n actions: {\n submit,\n },\n search: {\n tld,\n destination,\n },\n form,\n name,\n }: {\n actions: {\n submit: Function,\n },\n search: {\n tld: string,\n destination: string,\n },\n form: InjectedFormProps,\n name: string,\n }) => ({ domain }: {\n domain: string,\n }) => {\n return new Promise(() => {\n submit({\n domain,\n tld,\n destination,\n form,\n ribbonType: 'DomainSearchStart',\n ribbonName: name,\n });\n });\n },\n }),\n ]),\n reduxForm({\n propNamespace: 'form',\n }),\n ],\n },\n);\n\nexport default enhance(DomainSearchStart);\n","import DomainSearchStart from './ConnectedDomainSearchStart';\nimport { OuterProps as DomainSearchFormProps } from './DomainSearchForm';\nexport { DomainSearchFormProps };\nexport default DomainSearchStart;\n","import { Flush } from 'domain/constants/ribbons';\nimport { gu2px } from '@ux/theme-utils';\nimport * as r from 'ramda';\nimport { Layout } from 'domain/constants/layout';\n\nexport default ({\n spacing,\n isMinSm,\n isMinLg,\n layout,\n flush,\n}: {\n spacing: number,\n isMinSm: boolean,\n isMinLg: boolean,\n layout?: Layout,\n flush?: Flush|boolean,\n}) => {\n\n if (r.equals(flush, true)) {\n // Component will handle all padding, used on full bleed image ribbons\n return {};\n }\n\n const {\n //@ts-ignore\n shrinkLeading,\n //@ts-ignore\n shrinkTrailing,\n } = r.defaultTo({}, layout);\n\n /*\n shrinkSide:\n shrink[Leading/Trailing] prop is true then return a reduced padding\n depending on screen size\n isFlush:\n leading or trailing edge has been designated as flush, no padding\n */\n const getPaddingSize = (shrinkSide: string, isFlush: boolean) => {\n\n if (isFlush) {\n return 0;\n }\n\n return r.cond([\n [ r.propEq(shrinkSide, true), () => r.ifElse(\n r.equals(true),\n r.always(1),\n r.always(0.5),\n )(isMinSm) ],\n [ r.propEq('isMinLg', true), r.always(6) ],\n [ r.propEq('isMinSm', true), r.always(5) ],\n [ r.T, r.always(4) ],\n ])({\n isMinLg,\n isMinSm,\n shrinkLeading,\n shrinkTrailing,\n });\n };\n\n const leading = getPaddingSize('shrinkLeading', flush === Flush.LEADING);\n const trailing = getPaddingSize('shrinkTrailing', flush === Flush.TRAILING);\n\n return {\n paddingTop: gu2px(leading, spacing),\n paddingBottom: gu2px(trailing, spacing),\n };\n};\n","import React from 'react';\nimport { defaultProps, withProps, mapProps } from '@team-griffin/rehook';\nimport pureEnhance from '@ux/pure-enhance';\nimport { DynamicLink } from '@ux/dynamic-link';\nimport { useStyles, withInteraction } from '@team-griffin/stylr';\nimport cssSides, { Side } from '@team-griffin/css-sides';\nimport longhand from '@team-griffin/css-longhand';\nimport px2em from '@ux/px2em';\nimport { content } from '@ux/type-size';\nimport { percentage, modifier } from '@ux/style-utils';\nimport { cond, equals, always, T, omit } from 'ramda';\n\n/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n\r\nfunction __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) if (e.indexOf(p[i]) < 0)\r\n t[p[i]] = s[p[i]];\r\n return t;\r\n}\n\nvar Size;\n\n(function (Size) {\n Size[\"SM\"] = \"SM\";\n Size[\"MD\"] = \"MD\";\n Size[\"LG\"] = \"LG\";\n Size[\"INHERIT\"] = \"INHERIT\";\n})(Size || (Size = {}));\n\nvar Against;\n\n(function (Against) {\n Against[\"LIGHT\"] = \"LIGHT\";\n Against[\"NEUTRAL\"] = \"NEUTRAL\";\n Against[\"DARK\"] = \"DARK\";\n Against[\"PRIMARY\"] = \"PRIMARY\";\n Against[\"PRIMARY_FADED\"] = \"PRIMARY_FADED\";\n Against[\"HIGHLIGHT\"] = \"HIGHLIGHT\";\n Against[\"HIGHLIGHT_FADED\"] = \"HIGHLIGHT_FADED\";\n})(Against || (Against = {}));\n\nvar ContentType;\n\n(function (ContentType) {\n ContentType[\"DEFAULT\"] = \"DEFAULT\";\n ContentType[\"PHONE_NUMBER\"] = \"PHONE_NUMBER\";\n})(ContentType || (ContentType = {}));\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nvar stylesheet = function stylesheet(_ref) {\n var _useStyles;\n\n var theme = _ref.theme,\n against = _ref.against,\n block = _ref.block,\n disabled = _ref.disabled,\n size = _ref.size,\n caps = _ref.caps,\n contentType = _ref.contentType,\n hover = _ref.hover,\n active = _ref.active;\n var palette = theme.palette,\n typography = theme.typography;\n var fill = cond([[equals(Against.LIGHT), always(palette.secondary)], [equals(Against.NEUTRAL), always(palette.secondary)], [equals(Against.DARK), always(palette.tertiary)], [equals(Against.PRIMARY), always(palette.primaryContrast)], [equals(Against.PRIMARY_FADED), always(palette.secondary)], [equals(Against.HIGHLIGHT), always(palette.highlightContrast)], [equals(Against.HIGHLIGHT_FADED), always(palette.highlight)], [T, always(palette.secondary)]])(against);\n return useStyles((_useStyles = {\n default: {\n root: Object.assign({}, content(theme.typography), longhand('border', {\n color: 'transparent',\n style: 'solid',\n width: 0\n }), cssSides('margin', Side.A, 0), cssSides('padding', Side.A, 0), {\n fontFamily: typography.content,\n lineHeight: 1.1,\n paddingBottom: 1,\n color: fill,\n textAlign: 'left',\n backgroundColor: 'transparent',\n outline: 0,\n cursor: equals(disabled, true) ? 'not-allowed' : 'pointer',\n textDecoration: 'none',\n transition: 'opacity 0.2s ease-in-out, border 0.1s ease-in-out'\n }),\n\n /*\r\n we apply the border on the inner text span as we need to ensure\r\n that if the text wraps over 2 lines, both lines have a dotted border.\r\n If there is any padding on this inner element it breaks the underline\r\n when in a css column.\r\n */\n inner: Object.assign({}, longhand('borderBottom', {\n style: 'dotted',\n color: fill,\n width: 1\n }))\n },\n hover: {\n root: {\n opacity: 0.75\n },\n inner: {\n borderBottomStyle: 'solid',\n opacity: 0.75\n }\n },\n active: {\n inner: {\n borderBottomStyle: 'solid',\n opacity: 0.75\n }\n },\n caps: {\n root: {\n textTransform: 'uppercase'\n }\n },\n block: {\n root: {\n display: 'block',\n width: percentage(100)\n }\n }\n }, _defineProperty(_useStyles, modifier('size', Size.SM), {\n root: {\n fontSize: px2em(12)\n }\n }), _defineProperty(_useStyles, modifier('size', Size.MD), {\n root: {\n fontSize: px2em(14)\n }\n }), _defineProperty(_useStyles, modifier('size', Size.LG), {\n root: {\n fontSize: px2em(16)\n }\n }), _defineProperty(_useStyles, modifier('size', Size.INHERIT), {\n root: {\n fontSize: 'inherit',\n lineHeight: 'inherit'\n }\n }), _defineProperty(_useStyles, modifier('contentType', ContentType.PHONE_NUMBER), {\n inner: {\n borderBottomWidth: 0\n }\n }), _defineProperty(_useStyles, \"disabled\", {\n root: {\n opacity: 0.3\n }\n }), _useStyles), [{\n hover: hover\n }, {\n active: active\n }, {\n caps: caps\n }, {\n block: block\n }, {\n disabled: disabled\n }, {\n size: size\n }, {\n contentType: contentType\n }, {\n against: against\n }]);\n};\n\nvar PureTextButton = function PureTextButton(_a) {\n var styles = _a.styles,\n children = _a.children,\n domProps = __rest(_a, [\"styles\", \"children\"]);\n\n return React.createElement(DynamicLink, Object.assign({\n style: styles.root\n }, domProps), React.createElement(\"span\", {\n style: styles.inner\n }, children));\n};\nvar enhance = pureEnhance('TextButton', {\n hooks: [defaultProps({\n disabled: false,\n block: false,\n caps: false,\n size: Size.MD,\n contentType: ContentType.DEFAULT\n }), withProps(stylesheet), mapProps(omit(['theme', 'against', 'hover', 'active', 'focus', 'hocus', 'caps', 'block', 'size', 'contentType']))]\n});\nvar TextButton = withInteraction(enhance(PureTextButton)); // eslint-disable-next-line no-underscore-dangle\n\nexport default TextButton;\nexport { Against, ContentType, Size };\n","import { headingXl, headingXxl, display, headingL, headingM, headingS, headingXs, headingXxs, content } from '@ux/type-size';\nimport reactCSS from 'reactcss';\nimport cssSides, { Side } from '@team-griffin/css-sides';\nimport { createElement } from 'react';\nimport { defaultProps, mapProps } from '@team-griffin/rehook';\nimport pureEnhance from '@ux/pure-enhance';\nimport { withStylesHook } from '@ux/style-utils';\nimport { withBreakpoints } from '@ux/responsive';\nimport { pipe, converge, assoc, mergeDeepRight, path, propOr, identity, dissoc, is, defaultTo } from 'ramda';\nimport { gu2px } from '@ux/theme-utils';\n\nvar mergeStyles = pipe(converge(assoc('style'), [converge(mergeDeepRight, [path(['styles', 'root']), propOr({}, 'style')]), identity]), dissoc('styles'));\n\nvar createHeading = function createHeading(name, component, headingSize, stylesheet) {\n return pureEnhance(name, {\n hocs: [withBreakpoints],\n hooks: [defaultProps({\n component: component\n }), withStylesHook(function (props) {\n return stylesheet(Object.assign({}, props, {\n headingSize: headingSize\n }));\n }), mapProps(pipe(mergeStyles, function (props) {\n // if a `depth` prop is provided, make the `` element\n if (is(Number, props.depth)) {\n return assoc('component', \"h\".concat(props.depth), props);\n }\n\n return props;\n }))]\n })(function (_ref) {\n var style = _ref.style,\n children = _ref.children,\n component = _ref.component;\n return createElement(component, {\n style: style\n }, children);\n });\n};\n\nvar stylesheet = function stylesheet(_ref) {\n var typography = _ref.theme.typography,\n isMinSm = _ref.isMinSm,\n isMinLg = _ref.isMinLg,\n headingSize = _ref.headingSize;\n return reactCSS({\n default: {\n root: Object.assign({}, headingSize[0](typography), cssSides('margin', Side.Y, 0), {\n fontWeight: 'normal',\n fontFamily: typography.display\n })\n },\n isMinSm: {\n root: Object.assign({}, headingSize[1](typography))\n },\n isMinLg: {\n root: Object.assign({}, headingSize[2](typography))\n }\n }, [{\n isMinSm: isMinSm\n }, {\n isMinLg: isMinLg\n }]);\n};\n/* eslint-disable max-len */\n\n\nvar Heading01 = createHeading('Heading01', 'h1', [headingXl, headingXxl, display], stylesheet);\nvar Heading02 = createHeading('Heading02', 'h1', [headingL, headingXl, headingXxl], stylesheet);\nvar Heading03 = createHeading('Heading03', 'h1', [headingM, headingL, headingXl], stylesheet);\nvar Heading04 = createHeading('Heading04', 'h1', [headingS, headingM, headingL], stylesheet);\nvar Heading05 = createHeading('Heading05', 'h1', [headingXs, headingS, headingM], stylesheet);\nvar Heading06 = createHeading('Heading06', 'h1', [headingXxs, headingXs, headingS], stylesheet);\n\nvar stylesheet$1 = function stylesheet(_ref) {\n var _ref$theme = _ref.theme,\n typography = _ref$theme.typography,\n spacing = _ref$theme.spacing,\n gu = _ref.gu,\n isMinSm = _ref.isMinSm,\n isMinLg = _ref.isMinLg,\n headingSize = _ref.headingSize;\n return reactCSS({\n default: {\n root: Object.assign({}, headingSize[0](typography), {\n marginTop: gu2px(defaultTo(2, gu), spacing),\n marginBottom: 0,\n fontWeight: 'normal',\n fontFamily: typography.display\n })\n },\n isMinSm: {\n root: Object.assign({}, headingSize[1](typography))\n },\n isMinLg: {\n root: Object.assign({}, headingSize[2](typography))\n }\n }, [{\n isMinSm: isMinSm\n }, {\n isMinLg: isMinLg\n }]);\n};\n/* eslint-disable max-len */\n\n\nvar SubHeading01 = createHeading('SubHeading01', 'h2', [headingXs, headingS, headingM], stylesheet$1);\nvar SubHeading02 = createHeading('SubHeading02', 'h3', [headingXxs, headingXxs, headingXs], function (props) {\n return stylesheet$1(mergeDeepRight(props, {\n gu: 1\n }));\n});\n\nvar stylesheet$2 = function stylesheet(_ref) {\n var _ref$theme = _ref.theme,\n typography = _ref$theme.typography,\n spacing = _ref$theme.spacing,\n isMinSm = _ref.isMinSm,\n isMinLg = _ref.isMinLg,\n headingSize = _ref.headingSize;\n return reactCSS({\n default: {\n root: Object.assign({}, headingSize[0](typography), {\n marginTop: 0,\n marginBottom: gu2px(1, spacing),\n fontWeight: 'normal',\n fontFamily: typography.display\n })\n },\n isMinSm: {\n root: Object.assign({}, headingSize[1](typography))\n },\n isMinLg: {\n root: Object.assign({}, headingSize[2](typography))\n }\n }, [{\n isMinSm: isMinSm\n }, {\n isMinLg: isMinLg\n }]);\n};\n/* eslint-disable max-len */\n\n\nvar PreHeading01 = createHeading('PreHeading01', 'div', [headingXxs, headingXs, headingS], stylesheet$2);\nvar PreHeading02 = createHeading('PreHeading02', 'div', [headingXxs, headingXxs, headingXs], stylesheet$2);\n\nvar stylesheet$3 = function stylesheet(_ref) {\n var _ref$theme = _ref.theme,\n typography = _ref$theme.typography,\n spacing = _ref$theme.spacing,\n isMinSm = _ref.isMinSm,\n isMinLg = _ref.isMinLg,\n headingSize = _ref.headingSize;\n return reactCSS({\n default: {\n root: Object.assign({}, headingSize[0](typography), {\n marginTop: gu2px(1, spacing),\n marginBottom: 0,\n fontWeight: 'normal',\n fontFamily: typography.content\n })\n },\n isMinSm: {\n root: Object.assign({}, headingSize[1](typography))\n },\n isMinLg: {\n root: Object.assign({}, headingSize[2](typography))\n }\n }, [{\n isMinSm: isMinSm\n }, {\n isMinLg: isMinLg\n }]);\n};\n/* eslint-disable max-len */\n\n\nvar BodyCopy01 = createHeading('BodyCopy01', 'p', [content, content, content], stylesheet$3);\n\nvar index = null;\n\nexport default index;\nexport { BodyCopy01, Heading01, Heading02, Heading03, Heading04, Heading05, Heading06, PreHeading01, PreHeading02, SubHeading01, SubHeading02 };\n","import React, { CSSProperties } from 'react';\nimport {\n compose,\n lifecycle,\n withState,\n withProps,\n} from 'recompose';\nimport Message from '@ux/message';\nimport { Container } from '@ux/grid';\nimport * as r from 'ramda';\nimport cssSides, { Side } from '@team-griffin/css-sides';\nimport {\n getBackgroundColor,\n getTitleColor,\n} from 'presentation/utils/colorway';\nimport { gu2px, Theme } from '@ux/theme-utils';\nimport ribbonPadding from 'presentation/utils/ribbonPadding';\nimport { useStyles } from '@team-griffin/stylr';\nimport { Colorway } from 'domain/constants/colorway';\nimport { Layout } from 'domain/constants/layout';\nimport { Flush } from 'domain/constants/ribbons';\nimport { BreakpointProps } from '@ux/responsive';\ninterface OuterProps extends BreakpointProps {\n theme: Theme,\n colorway: Colorway,\n layout: Layout,\n flush?: Flush|boolean,\n}\n\ninterface InnerProps extends OuterProps {\n styles: {\n root: CSSProperties,\n }\n hasErrored: boolean,\n}\nconst stylesheet = ({\n theme,\n colorway,\n isMinSm,\n isMinMd,\n isMinLg,\n layout,\n flush,\n}: InnerProps) => {\n const {\n spacing,\n } = theme;\n\n return useStyles({\n default: {\n root: {\n backgroundColor: getBackgroundColor(theme, colorway),\n color: getTitleColor(theme, colorway),\n ...ribbonPadding({\n spacing,\n isMinSm,\n isMinLg,\n layout,\n flush,\n }),\n ...cssSides('Side', Side.X, gu2px(3, spacing)),\n textAlign: 'center',\n },\n },\n isMinSm: {\n root: {\n ...cssSides('Side', Side.X, gu2px(4, spacing)),\n },\n },\n }, [\n { colorway },\n { isMinSm },\n { isMinMd },\n ]);\n};\n\nexport default (WrappedComponent: any) => {\n const ErrorBoundary = r.ifElse(\n r.propEq('hasErrored', true),\n ({ styles }) => (\n
\n \n \n \n
\n ),\n (props: InnerProps) => (\n \n ),\n );\n\n return compose(\n withState('hasErrored', 'setHasErrored', false),\n lifecycle({\n componentDidCatch: function() {\n //@ts-ignore\n this.props.setHasErrored(true);\n },\n }),\n withProps(stylesheet),\n )(ErrorBoundary);\n};\n","import { useMemo, useEffect } from 'react';\nimport { branch, mapProps as mapPropsHoc } from 'recompose';\nimport pureEnhance from '@ux/pure-enhance';\nimport { useDispatch, useSelector } from 'react-redux';\nimport { bindActionCreators } from 'redux';\nimport { pipe, withProps, mapProps, withHandlers } from '@team-griffin/rehook';\nimport { Watch } from 'scrollmonitor-react';\nimport * as r from 'ramda';\nimport { sendImpression } from 'application/signals/ribbons';\nimport { getRibbonAnalytics } from 'domain/selectors/ribbons';\nimport { Type } from 'domain/constants/ribbons';\n\nconst hooksA = pipe(\n mapProps((props: any) => {\n const { id } = props;\n const selector = useMemo(() => getRibbonAnalytics(id), [ id ]);\n const analytics = useSelector(selector);\n const dispatch = useDispatch();\n const actions = bindActionCreators({ sendImpression }, dispatch);\n\n return r.mergeDeepLeft(props, {\n analytics,\n actions,\n });\n }),\n withHandlers({\n onImpression: ({\n name,\n type,\n analytics,\n actions: {\n sendImpression,\n },\n }: {\n name: string,\n type: Type,\n analytics: any,\n actions: {\n sendImpression: Function,\n }\n }) => () => sendImpression({\n ...analytics,\n ribbonName: name,\n ribbonType: type,\n }),\n }),\n);\n\nconst hooksB = pipe(\n withProps(({\n isFullyInViewport,\n stopWatcher,\n onImpression,\n analytics,\n }: {\n isFullyInViewport: boolean,\n stopWatcher: () => void,\n onImpression: (a: any) => void,\n analytics: any,\n }) => {\n useEffect(() => {\n if (isFullyInViewport) {\n stopWatcher();\n onImpression(analytics);\n }\n }, [ isFullyInViewport ]);\n }),\n);\n\nexport default pureEnhance('RibbonImpression', {\n hocs: [\n mapPropsHoc(hooksA),\n branch(\n r.propSatisfies(r.complement(r.isNil), 'analytics'),\n Watch,\n ),\n mapPropsHoc(hooksB),\n ],\n});\n","import { percentage } from '@ux/style-utils';\n\nexport const duoRibbonWidth = ({\n isMinMd,\n duoLayout,\n}: {\n isMinMd: boolean,\n duoLayout?: boolean,\n}) => {\n if (!isMinMd || duoLayout == null) {\n return {};\n }\n\n const flexSize = (isMinMd && duoLayout) ? 50 : 100;\n return {\n flex: percentage(flexSize),\n };\n};\n\nexport default null;","import React, { Fragment } from 'react';\nimport {\n compose,\n lifecycle,\n} from 'recompose';\nimport { withRouter } from 'react-router';\nimport { Element, scroller } from 'react-scroll';\n\nconst deepLink = compose(\n withRouter,\n lifecycle({\n componentDidMount: function() {\n //Adding some ts-ignores here so it doesn't throw not recognizing\n //this.props\n\n //@ts-ignore\n if (this.props.location.hash === `#${this.props.name}`) {\n const scrollWhenReady = () => {\n // we can't scroll to eagerly or we'll end up in the wrong place\n //@ts-ignore\n if (this.props.loading || !this.props.animationComplete) {\n return setTimeout(scrollWhenReady, 100);\n }\n //@ts-ignore\n scroller.scrollTo(this.props.name, {\n duration: 500,\n delay: 100,\n smooth: true,\n });\n };\n setTimeout(scrollWhenReady, 100);\n }\n },\n }),\n (WrappedComponent: any) => {\n return (props: any) => (\n \n \n \n \n );\n },\n);\n\nexport default deepLink;\n","import React, { useRef, useLayoutEffect, CSSProperties, ReactNode, Ref } from 'react';\nimport { withProps } from '@team-griffin/rehook';\nimport pureEnhance from '@ux/pure-enhance';\nimport { withBreakpointsHook, BreakpointProps } from '@ux/responsive';\nimport findResponsiveItem from 'presentation/utils/findResponsiveItem';\nimport getBreakpoints from 'presentation/utils/getBreakpoints';\nimport ribbonPadding from 'presentation/utils/ribbonPadding';\nimport { duoRibbonWidth } from 'presentation/utils/ribbonWidth';\nimport { percentage, modifier } from '@ux/style-utils';\nimport deepLink from 'presentation/hocs/deepLink';\nimport { getBackgroundColor } from 'presentation/utils/colorway';\nimport { useStyles } from '@team-griffin/stylr';\nimport { Colorway } from 'domain/constants/colorway';\nimport { Fit, Flush, RibbonProps } from 'domain/constants/ribbons';\nimport * as r from 'ramda';\n\nexport {\n Flush,\n};\n\ninterface OuterProps extends RibbonProps {\n children?: ReactNode,\n}\ninterface WithHandlerProps extends OuterProps {\n setAnimationComplete: Function,\n setRibbonHeight: Function,\n setHeight: Function,\n onAnimationEnd: (props: {\n newHeight: number;\n }) => void,\n}\n\ninterface InnerProps extends WithHandlerProps, BreakpointProps {\n rendered: boolean,\n targetRef: Ref,\n duration: number,\n styles: {\n root: CSSProperties,\n inner: CSSProperties,\n ribbon: CSSProperties,\n }\n}\n\nconst mapFit = (fit: Fit) => r.cond([\n [ r.equals(Fit.FULLSCREEN), r.always({\n minHeight: '100vh',\n }) ],\n [ r.equals(Fit.FILL), r.always({\n flex: 1,\n flexBasis: 'auto',\n }) ],\n [ r.equals(Fit.AUTO), r.always({\n height: 'auto',\n }) ],\n [ isFinite, r.always({\n minHeight: fit,\n }) ],\n [ r.T, r.always({\n height: 'auto',\n }) ],\n])(fit);\n\nconst stylesheet = ({\n theme,\n colorway,\n loading,\n layout,\n flush,\n ...props\n}: InnerProps) => {\n const {\n palette,\n spacing,\n } = theme;\n const {\n //@ts-ignore\n fit,\n } = r.defaultTo({}, layout);\n\n const {\n isMinSm,\n isMinMd,\n isMinLg,\n duoLayout,\n } = props;\n\n const activeFit = findResponsiveItem(\n getBreakpoints(props),\n fit,\n );\n\n const padding = ribbonPadding({\n spacing,\n isMinSm,\n isMinLg,\n layout,\n flush,\n });\n\n const duoLayoutFlex = duoRibbonWidth({\n isMinMd,\n duoLayout,\n });\n\n return useStyles({\n default: {\n root: {\n backgroundColor: getBackgroundColor(theme, colorway),\n position: 'relative',\n display: 'flex',\n flexDirection: 'column',\n width: percentage(100),\n ...mapFit(activeFit),\n ...padding,\n ...duoLayoutFlex,\n },\n inner: {\n flex: 1,\n flexBasis: 'auto',\n display: 'flex',\n height: 'auto',\n },\n ribbon: {\n display: 'flex',\n flexDirection: 'column',\n width: percentage(100),\n },\n },\n\n [modifier('colorway', Colorway.PRIMARY_GRADIENT)]: {\n root: {\n backgroundImage: `linear-gradient(to right, ${palette.primary}, ${palette.primaryGradient})`,\n },\n },\n }, [\n { loading },\n { colorway },\n { isMinSm },\n { isMinMd },\n { isMinLg },\n ]);\n};\n\nexport const PureRibbon = ({\n styles,\n targetRef,\n children,\n}: InnerProps) => (\n
\n
\n \n {children}\n
\n \n
\n);\n\nexport const enhance = pureEnhance('Ribbon', {\n hocs: [\n deepLink,\n ],\n hooks: [\n withProps(() => {\n const targetRef = useRef({});\n\n if (process.env.NODE_ENV !== 'production') {\n useLayoutEffect(() => {\n // when backstop runs on ribbons, this lets us filter out a lot of false\n // positives and a lot of race condition fails by only initialising\n // the snapshot once loading has finished + a delay to wait for fonts etc to load\n // eslint-disable-next-line\n setTimeout(() => {\n // eslint-disable-next-line\n console.log('BACKSTOP_RIBBON_READY');\n }, 3000);\n }, [ targetRef.current ]);\n }\n\n return {\n targetRef,\n };\n }),\n withBreakpointsHook,\n withProps(stylesheet),\n ],\n});\n\nexport default enhance(PureRibbon);\n","import pureEnhance from '@ux/pure-enhance';\nimport withRibbonImpression from 'presentation/hocs/withRibbonImpression';\n\nimport Ribbon from './Ribbon';\n\nconst enhance = pureEnhance('ConnectedRibbon', {\n hocs: [ withRibbonImpression ],\n});\n\nexport default enhance(Ribbon);\n","import Ribbon from './ConnectedRibbon';\nimport { Flush } from './Ribbon';\n\nexport { Flush };\n\nexport default Ribbon;\n","import React from 'react';\nimport { puree, GetInnerProps } from '@ux/pure-enhance';\nimport Shimmer from '@ux/shimmer';\nimport { ShortcodeProps } from './';\nimport { Colorway } from '@ux/theme-utils';\n\nexport interface OuterProps {\n against?: Colorway,\n code: ShortcodeProps,\n}\n\n// random % width for shimmer betwen 50% and 95%\nconst randomWidth = () => Math.floor((Math.random() * (95 - 50)) + 50);\n\nconst enhance = puree('PendingShortcode')();\n\ntype InnerProps = GetInnerProps;\n\nconst PurePendingShortcode = ({\n code,\n against,\n}: InnerProps) => (\n \n \n \n);\n\nexport default enhance(PurePendingShortcode);\n","import React from 'react';\nimport * as r from 'ramda';\nimport pureEnhance from '@ux/pure-enhance';\nimport { RecursiveShortcodeProps } from './Shortcode';\n\nexport default pureEnhance(\n 'Alt',\n)(({\n RecursiveShortcode,\n elements,\n theme,\n against,\n ...rest\n}) => (\n \n \n \n));\n","import React from 'react';\nimport { RecursiveShortcodeProps } from './Shortcode';\nimport pureEnhance from '@ux/pure-enhance';\n\nexport default pureEnhance(\n 'Bold',\n)(({ elements, RecursiveShortcode, ...rest }) => (\n \n \n \n));\n","import React from 'react';\nimport pureEnhance from '@ux/pure-enhance';\nimport { RecursiveShortcodeProps } from './Shortcode';\n\nexport default pureEnhance(\n 'Bold',\n)(({ elements, RecursiveShortcode, ...rest }) => (\n \n \n \n));","import React from 'react';\nimport { withProps } from '@team-griffin/rehook';\nimport TextButton, {\n Size as TextButtonSize,\n} from '@ux/text-button';\nimport { connect } from '@ux/fabric';\nimport { selectors as wlSelectors } from '@ux/whitelabel';\nimport pureEnhance from '@ux/pure-enhance';\nimport * as r from 'ramda';\nimport { RecursiveShortcodeProps } from './Shortcode';\n\nconst getUsfConfig = wlSelectors.getAppConfig('usf');\n\nconst mapStateToProps = r.pipe(\n getUsfConfig,\n r.pathOr([], [ 'externalRoutes' ]),\n r.objOf('externalRoutes'),\n);\n\nexport default pureEnhance(\n 'Link', [\n //@ts-ignore (apparently incompatible states)\n withProps(connect(mapStateToProps)),\n ])(({\n RecursiveShortcode,\n elements,\n contentType,\n attributes,\n theme,\n against,\n externalRoutes,\n ...rest\n}) => (\n \n \n \n));\n","import React, { Fragment } from 'react';\nimport { isFalse } from '@team-griffin/capra';\nimport * as r from 'ramda';\nimport pureEnhance from '@ux/pure-enhance';\n\nconst escapeShortCodes = r.pipe(\n r.replace('[!', '['),\n r.replace('!/]', '/]'),\n r.replace('[/!', '[/'),\n);\n\nconst nl2br = (string: string) => string.split('\\n')\n .map(r.identity)\n //@ts-ignore typescript cant figure typing out\n // eslint-disable-next-line react/no-array-index-key\n .reduce((prev, cur, i) => [ prev, (
), cur ]);\n\nconst formatText = (text: string, newline: boolean|Element) => r.pipe(\n escapeShortCodes,\n // unless newline is false, run through nl2br\n r.unless(\n r.always(isFalse(newline)),\n nl2br,\n ),\n)(text);\n\ninterface Props {\n text: string,\n nl2br: Element,\n}\nexport default pureEnhance(\n 'Text',\n)(({ text, nl2br }) => (\n \n {formatText(text, nl2br)}\n \n));\n","import React, { lazy, Suspense } from 'react';\nimport { withProps } from '@team-griffin/rehook';\nimport TextButton, { Size as TextButtonSize } from '@ux/text-button';\nimport { withBreakpointsHook } from '@ux/responsive';\nimport { gu2px } from '@ux/theme-utils';\nimport pureEnhance from '@ux/pure-enhance';\nimport { RecursiveShortcodeProps } from './Shortcode';\n\n/*\n React-Tooltip is a heavy dependency therefore we asynchronously load it in\n and gracefully decorate the functionality in once it has loaded\n*/\nconst ReactTooltip = lazy(() => import(\n /* webpackChunkName: \"react-tooltip-lite\" */\n 'react-tooltip-lite'\n));\n\nexport default pureEnhance(\n 'TooltipShortcode', [\n withBreakpointsHook,\n withProps(({\n theme,\n isMinLg,\n }: RecursiveShortcodeProps) => {\n return {\n eventToggle: isMinLg ? void 0 : 'onClick',\n padding: `${gu2px(2, theme.spacing)}px`, // requires String; gross\n };\n }),\n ],\n)(({\n RecursiveShortcode,\n theme,\n against,\n padding,\n eventToggle,\n attributes,\n elements,\n}) => {\n const CallToAction = (\n \n {attributes.label}\n \n );\n\n return (\n \n {/*@ts-ignore children doesnt exist */}\n \n \n \n )}\n >\n {CallToAction}\n \n \n );\n});\n","import React, { Fragment, Suspense, lazy, ReactNode } from 'react';\nimport pureEnhance from '@ux/pure-enhance';\nimport PendingShortcode from './PendingShortcode';\nimport { getAgainst } from 'presentation/utils/colorway';\nimport { nuller } from '@team-griffin/capra';\nimport { Theme } from '@ux/theme-utils';\nimport { Layout } from 'domain/constants/layout';\nimport { Styles } from './stylesheets';\nimport { BreakpointProps } from '@ux/responsive';\nimport { ShortcodeProps } from '.';\nimport * as r from 'ramda';\nimport { Against } from '@ux/button';\n\n/*\n These shortcodes should not be lazy loaded in as they are already in the\n main bundle and it causes a unnecessary shimmer which makes the page feel\n less responsive\n*/\nimport Alt from './Alt';\nimport Bold from './Bold';\nimport Italic from './Italic';\nimport Link from './Link';\nimport Text from './Text';\nimport Tooltip from './Tooltip';\n\nconst Glyph = lazy(() => import(\n /* webpackChunkName: \"shortcode-glyph\" */\n './Glyph'\n));\n\nconst Sup = lazy(() => import(\n /* webpackChunkName: \"shortcode-sup\" */\n './Sup'\n));\n\nconst List = lazy(() => import(\n /* webpackChunkName: \"shortcode-list\" */\n './List'\n));\n\nconst OrderedList = lazy(() => import(\n /* webpackChunkName: \"shortcode-ordered-list\" */\n './OrderedList'\n));\n\nconst ListItem = lazy(() => import(\n /* webpackChunkName: \"shortcode-list-item\" */\n './ListItem'\n));\n\nconst TickListItem = lazy(() => import(\n /* webpackChunkName: \"shortcode-tick-list-item\" */\n './TickListItem'\n));\n\nconst ProductPrice = lazy(() => import(\n /* webpackChunkName: \"shortcode-product-price\" */\n './ProductPrice'\n));\n\nconst PhoneNumber = lazy(() => import(\n /* webpackChunkName: \"shortcode-phone-number\" */\n './PhoneNumber'\n));\n\ndeclare const i: number;\ndeclare const element: ShortcodeProps;\n\nexport interface RecursiveShortcodeProps extends BreakpointProps{\n elements: ShortcodeProps[],\n layout?: Layout,\n RecursiveShortcode: React.LazyExoticComponent,\n theme?: Theme,\n against?: Against,\n styles?: Styles,\n attributes?: {\n use?: string,\n number?: number,\n analyticskey?: string,\n goto?: string,\n label?: ReactNode,\n prices?: string,\n inctax?: string,\n }\n nl2br?: boolean,\n rest: {\n [key: string]: any,\n }\n [key: string]: any,\n}\nconst RecursiveShortcode = ({ elements, ...rest }: RecursiveShortcodeProps) => (\n \n \n \n \n \n);\n\nexport interface ShortcodeOuterProps {\n theme?: Theme,\n against?: Against,\n RecursiveShortcode: React.LazyExoticComponent,\n code: RecursiveShortcodeProps,\n}\n\nfunction genericShortcodeHandler(\n shortcodeName: string,\n Component: React.LazyExoticComponent | React.ComponentType,\n) {\n return [\n r.both(\n r.propEq('type', 'element'),\n r.propEq('name', shortcodeName),\n ),\n (props: ShortcodeOuterProps) => (\n \n ),\n ];\n}\n\nconst Shortcode = ({ code, ...rest }: ShortcodeOuterProps) => {\n const props = r.pipe(\n r.ifElse(\n () => r.is(String, code),\n r.assoc('code', code),\n r.mergeDeepLeft(code),\n ),\n r.over(\n r.lensProp('against'),\n (colorway) => getAgainst(colorway),\n ),\n r.assoc('RecursiveShortcode', RecursiveShortcode),\n r.over(\n r.lensProp('attributes'),\n r.defaultTo({}),\n ),\n )(rest);\n\n // @ts-ignore\n const Element = r.cond([\n [\n r.isNil,\n nuller,\n ],\n [\n r.propIs(String, 'code'),\n () => (\n //@ts-ignore\n \n ),\n ],\n [\n r.propEq('type', 'text'),\n () => (\n \n ),\n ],\n genericShortcodeHandler('i', Italic),\n genericShortcodeHandler('b', Bold),\n genericShortcodeHandler('alt', Alt),\n genericShortcodeHandler('sup', Sup),\n genericShortcodeHandler('glyph', Glyph),\n genericShortcodeHandler('tel', PhoneNumber),\n genericShortcodeHandler('link', Link),\n genericShortcodeHandler('productprice', ProductPrice),\n genericShortcodeHandler('tooltip', Tooltip),\n [\n r.both(\n r.propEq('type', 'element'),\n r.propEq('name', 'list'),\n ),\n () => r.ifElse(\n r.propEq('style', 'number'),\n () => (\n \n ),\n () => (\n \n ),\n )(props.attributes),\n ],\n [\n r.both(\n r.propEq('type', 'element'),\n r.propEq('name', 'li'),\n ),\n () => r.ifElse(\n r.propEq('style', 'glyph'),\n () => (\n \n ),\n () => (\n \n ),\n )(props.attributes),\n ],\n //@ts-ignore\n genericShortcodeHandler('root', RecursiveShortcode),\n [\n r.T,\n nuller,\n ],\n ]);\n\n return (\n \n );\n};\n\nconst ShortcodeWrapper = (props: ShortcodeOuterProps) => (\n \n )}\n >\n \n \n);\n\nconst enhance = pureEnhance('Shortcode');\n\nexport default enhance(ShortcodeWrapper);\n","import Shortcode, { RecursiveShortcodeProps } from './Shortcode';\n\n//TODO: help.. please.\nexport type ShortcodeProps = RecursiveShortcodeProps;\n\n\nexport default Shortcode;\n","import React from 'react';\nimport * as r from 'ramda';\n\nexport default (BaseComponent: any) => r.ifElse(\n r.prop('visible'),\n (props) => ,\n (props) => (\n
\n \n
\n ),\n);\n","import React from 'react';\nimport Button, { Size, Kind } from '@ux/button';\nimport { ifElse, either, propEq, pathSatisfies, always, path, merge, propOr } from 'ramda';\nimport { isNotNilOrEmpty } from '@team-griffin/capra';\nimport longhand from '@team-griffin/css-longhand';\nimport { gu2px, Curvature } from '@ux/theme-utils';\nimport { percentage, modifier, withStylesHook } from '@ux/style-utils';\nimport { TypefaceStyle } from '@ux/typeface';\nimport { content } from '@ux/type-size';\nimport reactCSS from 'reactcss';\nimport color from 'color';\nimport { withBreakpoints } from '@ux/responsive';\nimport pureEnhance from '@ux/pure-enhance';\nimport { isNilOrEmpty } from 'ramda-adjunct';\nimport { defaultProps, withProps } from '@team-griffin/rehook';\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nvar mixWithWhite = function mixWithWhite(toMix) {\n return color('#fff').mix(color(toMix), 0.25).string();\n};\n\nvar stylesheet = function stylesheet(_ref) {\n var _reactCSS;\n\n var active = _ref.active,\n theme = _ref.theme,\n isMinSm = _ref.isMinSm;\n var palette = theme.palette,\n spacing = theme.spacing,\n typography = theme.typography,\n curvature = theme.curvature;\n return reactCSS((_reactCSS = {\n default: {\n root: Object.assign({\n display: 'flex',\n padding: gu2px(1, spacing),\n fontSize: 0,\n width: percentage(100),\n whiteSpace: 'nowrap',\n position: 'relative',\n paddingLeft: gu2px(3, spacing),\n background: '#fff'\n }, longhand('border', {\n width: 1,\n style: 'solid',\n color: palette.grey10\n }), {\n transition: \"\\n color 0.2s ease-in-out,\\n box-shadow 0.2s ease-in-out,\\n border-color 0.2s ease-in-out,\\n background-color 0.2s ease-in-out\\n \"\n }),\n input: Object.assign({\n width: percentage(100),\n outline: 'none',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n paddingRight: gu2px(3, spacing)\n }, content(typography), longhand('font', {\n weight: 300,\n family: typography[TypefaceStyle.CONTENT]\n }), {\n border: 'none'\n }),\n affix: Object.assign({}, content(typography), longhand('font', {\n family: typography[TypefaceStyle.CONTENT]\n }), {\n display: 'flex',\n backgroundColor: 'transparent',\n color: palette.primary,\n alignItems: 'center',\n flexDirection: 'row',\n justifyContent: 'center',\n WebkitUserSelect: 'none',\n MozUserSelect: 'none',\n MsUserSelect: 'none',\n userSelect: 'none',\n cursor: 'default'\n }),\n affixText: {\n flexDirection: 'column',\n justifyContent: 'center',\n marginRight: gu2px(3, spacing)\n }\n }\n }, _defineProperty(_reactCSS, modifier('curvature', String(Curvature.OFF)), {\n root: Object.assign({}, longhand('border', {\n topLeftRadius: 0,\n topRightRadius: 0,\n bottomLeftRadius: 0,\n bottomRightRadius: 0\n }))\n }), _defineProperty(_reactCSS, modifier('curvature', String(Curvature.WEAK)), {\n root: Object.assign({}, longhand('border', {\n topLeftRadius: 3,\n topRightRadius: 3,\n bottomLeftRadius: 3,\n bottomRightRadius: 3\n }))\n }), _defineProperty(_reactCSS, modifier('curvature', String(Curvature.STRONG)), {\n root: Object.assign({}, longhand('border', {\n topLeftRadius: 50,\n topRightRadius: 50,\n bottomLeftRadius: 50,\n bottomRightRadius: 50\n }))\n }), _defineProperty(_reactCSS, \"active\", {\n root: {\n outline: 0,\n boxShadow: \"inset 0 0 0 2px \".concat(mixWithWhite(palette.primary)),\n borderColor: palette.primary\n }\n }), _defineProperty(_reactCSS, \"isMinSm\", {\n root: {\n paddingLeft: gu2px(4, spacing)\n }\n }), _reactCSS), [{\n isMinSm: isMinSm\n }, {\n active: active\n }, {\n curvature: curvature\n }]);\n};\n\nvar PureSearchInput = function PureSearchInput(_ref) {\n var theme = _ref.theme,\n styles = _ref.styles,\n suffix = _ref.suffix,\n prefix = _ref.prefix,\n hasSuffix = _ref.hasSuffix,\n hasPrefix = _ref.hasPrefix,\n button = _ref.button,\n disabled = _ref.disabled,\n buttonText = _ref.buttonText,\n inputProps = _ref.inputProps;\n return React.createElement(\"div\", {\n style: styles.root\n }, hasPrefix ? React.createElement(\"span\", {\n style: styles.affix\n }, React.createElement(\"span\", {\n style: styles.affixText\n }, prefix)) : null, React.createElement(\"input\", Object.assign({\n type: \"text\",\n style: styles.input\n }, inputProps, {\n disabled: disabled\n })), hasSuffix ? React.createElement(\"div\", {\n style: styles.affix\n }, React.createElement(\"span\", {\n style: styles.affixText\n }, suffix)) : null, React.createElement(Button, {\n \"data-test-id\": \"button\",\n theme: theme,\n size: Size.MD,\n kind: Kind.PRIMARY,\n type: \"submit\",\n block: true,\n glyph: button.glyph,\n disabled: disabled\n }, buttonText));\n};\n\nvar enhance = pureEnhance('SearchInput', {\n hocs: [//@ts-ignore\n withBreakpoints],\n hooks: [defaultProps({\n active: false,\n disabled: false\n }), withProps(function (ownerProps) {\n return {\n hasSuffix: isNotNilOrEmpty(ownerProps.suffix),\n hasPrefix: isNotNilOrEmpty(ownerProps.prefix),\n buttonText: ifElse(either(propEq('isMinSm', true), pathSatisfies(isNilOrEmpty, ['button', 'glyph'])), always(path(['button', 'text'])(ownerProps)), always(null))(ownerProps)\n };\n }), withStylesHook(stylesheet)]\n});\nvar SearchInput = enhance(PureSearchInput); // eslint-disable-next-line no-underscore-dangle\n\n/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n\r\nfunction __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) if (e.indexOf(p[i]) < 0)\r\n t[p[i]] = s[p[i]];\r\n return t;\r\n}\n\nvar ReduxFormSearchInput = function ReduxFormSearchInput(_a) {\n var theme = _a.theme,\n input = _a.input,\n meta = _a.meta,\n inputProps = _a.inputProps,\n rest = __rest(_a, [\"theme\", \"input\", \"meta\", \"inputProps\"]);\n\n return React.createElement(SearchInput, Object.assign({\n theme: theme\n }, rest, {\n inputProps: merge(input, inputProps),\n active: propOr(false, 'active', meta),\n disabled: propOr(false, 'submitting', meta)\n }));\n};\n\nvar enhance$1 = pureEnhance('ReduxFormSearchInput');\nvar ReduxFormSearchInput$1 = enhance$1(ReduxFormSearchInput);\n\nexport default SearchInput;\nexport { ReduxFormSearchInput$1 as ReduxFormSearchInput };\n","import React, { CSSProperties } from 'react';\nimport { Theme, gu2px } from '@ux/theme-utils';\nimport { ReduxFormSearchInput } from '@ux/search-input';\nimport DebouncedField from 'redux-form-debounce-field';\nimport { InjectedFormProps } from 'redux-form';\nimport pureEnhance from '@ux/pure-enhance';\nimport { useStyles } from '@team-griffin/stylr';\nimport { withProps } from '@team-griffin/rehook';\n\nexport interface Styles {\n search: CSSProperties,\n}\n\nexport interface OuterProps {\n search: {\n tld: string,\n glyph: string,\n label: string,\n placeholder?: string,\n destination?: string,\n },\n form: InjectedFormProps,\n theme: Theme,\n}\nexport interface InnerProps extends OuterProps {\n styles: Styles,\n}\n\nconst stylesheet = (props: InnerProps) => {\n const {\n theme,\n } = props;\n\n const {\n spacing,\n } = theme;\n\n return useStyles({\n default: {\n search: {\n marginTop: gu2px(3, spacing),\n },\n },\n }, []);\n};\n\nconst DomainSearchForm = ({\n search,\n form,\n theme,\n styles,\n}: InnerProps) => {\n const {\n tld,\n glyph,\n label,\n placeholder,\n } = search;\n return (\n
\n \n \n \n
\n );\n};\n\nconst enhance = pureEnhance('SearchForm', {\n hooks: [\n withProps(stylesheet),\n ],\n});\n\nexport default enhance(DomainSearchForm);\n"],"sourceRoot":""}