{"version":3,"file":"static/chunks/9037.bae58721019a918e.js","mappings":"ixBAiBO,IAAMA,EAAaC,EAAAA,QAAAA,IAAAA,WAAU,C,8DAAVA,C,KACXC,SAAAA,G,OAAKA,EAAEC,OAAS,eAAiB,UACzBD,SAAAA,G,OAAKA,EAAEE,MAAQF,EAAEE,MAAQ,UAMnCC,GAAcJ,EAAAA,EAAAA,SAAOK,EAAAA,YAAW,Y,+DAAlBL,C,KACdC,SAAAA,G,OAAKA,EAAEK,YAAc,OAAS,WAGnBL,SAAAA,G,OAAKA,EAAEM,mBACXN,SAAAA,G,OAAKA,EAAEM,mBAGCN,SAAAA,G,OAAKA,EAAEO,wBACXP,SAAAA,G,OAAKA,EAAEO,wBAGzBP,SAAAA,G,OAAKQ,EAAAA,EAAAA,IAAqBR,EAAG,GAA0B,OAAvBA,EAAES,UAAY,cAGvCC,EAAaX,EAAAA,QAAAA,KAAAA,WAAW,C,8DAAXA,C,KACpBC,SAAAA,G,OAAKA,EAAES,UAAWD,EAAAA,EAAAA,IAAqBR,EAAG,GAAwB,OAArBA,EAAES,SAAW,WAAaD,EAAAA,EAAAA,IAAqBR,EAAG,kBCsErG,EAnFe,Y,IACXW,EAAM,EAANA,OACAC,EAAI,EAAJA,KACAC,EAAU,EAAVA,WACAC,EAAI,EAAJA,KACAC,EAAa,EAAbA,cACAC,EAAW,EAAXA,YACAC,EAAY,EAAZA,aACAC,EAAS,EAATA,UACAC,EAAkB,EAAlBA,mBACAC,EAAS,EAATA,UAAS,IACTC,SAAAA,OAAQ,IAAG,GAAK,EAChBf,EAAe,EAAfA,gBACAC,EAAoB,EAApBA,qBAAoB,IACpBL,MAAAA,OAAK,IAAG,SAAM,MACdG,YAAAA,OAAW,IAAG,GAAK,MACnBiB,gBAAAA,OAAe,IAAG,GAAK,EACvBb,EAAQ,EAARA,SAEMc,GAAeC,EAAAA,EAAAA,cAAY,WAC7B,GAAIR,EACA,IACI,IAAMS,EAAOC,SAASC,cAAc,IAAgB,OAAZX,IACpC,OAAJS,QAAI,IAAJA,GAAAA,EAAMG,eAAe,CAAEC,MAAO,QAASC,SAAU,WACnD,MAAOC,GACLC,EAAAA,GAAwBD,MAGjC,CAACf,IAEEiB,GAAiBT,EAAAA,EAAAA,cAAY,WAC/B,GAAIN,EAAW,CACX,MAAmDA,EAA3CgB,SAAAA,OAAQ,IAAG,KAAE,IAA8BhB,EAA5BiB,OAAAA,OAAM,IAAG,KAAE,IAAiBjB,EAAfkB,MAEpC,GAAIF,GAAYC,SAFyB,IAAG,KAAE,GAEb,CAC7B,IAAME,GAAQ,gBACVA,MAAO,WACJnB,GAAS,CACZgB,SAAUA,GAAY,GACtBC,OAAQA,GAAU,MAGtBG,EAAAA,EAAAA,GAAcD,OAGvB,CAACnB,IAEJ,OACI,SAACpB,EAAU,CAACyC,QAASN,EAAgBb,UAAWA,EAAWnB,OAAQoB,EAAUnB,MAAOA,E,SAC/EY,GACO,SAAC0B,IAAI,CAAC1B,KAAMA,EAAM2B,UAAQ,E,UACtB,SAACtC,GAAW,gBACRuC,GAAI/B,EACJC,KAAMA,GAAQ+B,EAAAA,SAAAA,OACdC,OAAQ7B,EAAgB,cAAW8B,EACnCC,IAAI,+BACJC,cAAY,WACZzC,gBAAiBA,EACjBC,qBAAsBA,EACtBE,SAAUA,EACVJ,YAAaA,EACbe,UAAWE,EAAkB,qBAAuB,IAChDL,GAAY,C,UAEhB,SAACP,GAAU,kBAAKO,GAAY,CAAER,SAAUA,E,SAAWI,GAAc,gDAGzE,SAACV,GAAW,gBACRS,KAAMA,GAAQ+B,EAAAA,SAAAA,OACdJ,QAASpB,GAAsBI,EAC/BjB,gBAAiBA,EACjBC,qBAAsBA,EACtBE,SAAUA,EACVJ,YAAaA,GACTY,GAAY,C,UAEhB,SAACP,GAAU,kBAAKO,GAAY,CAAER,SAAUA,E,SAAWI,GAAc,iD,m6DCxFlF,IAasBb,EAbhBgD,GAAajD,EAAAA,EAAAA,SAAOkD,EAAAA,GAAc,Y,8DAArBlD,C,KAKbmD,GAAMnD,EAAAA,EAAAA,SAAOoD,EAAAA,YAAW,Y,uDAAlBpD,C,KAINqD,GAAMrD,EAAAA,EAAAA,SAAOsD,EAAAA,YAAW,Y,uDAAlBtD,C,KAGNuD,EAAavD,EAAAA,QAAAA,IAAAA,WAAU,C,8DAAVA,C,KACFC,SAAAA,G,OAAsB,QAAjBA,EAAAA,EAAEM,uBAAe,IAAjBN,EAAAA,EAAqB,iBAC7BA,SAAAA,G,OAAKA,EAAEuD,aAAevD,EAAEuD,aAAe,KAAO,OACpDvD,SAAAA,G,IAAMA,EAA+BA,EAAhC,QAAU,QAATA,EAAAA,EAAEwD,eAAO,IAATxD,OAAAA,EAAAA,EAAWyD,UAAW,SAAkB,QAATzD,EAAAA,EAAEwD,eAAO,IAATxD,OAAAA,EAAAA,EAAW0D,YAAa,QAG/DC,EAAU5D,EAAAA,QAAAA,IAAAA,WAAU,C,2DAAVA,C,KACLC,SAAAA,G,OAAKA,EAAE4D,WAAa,OAAoB,OAAb5D,EAAE4D,WAAW,8BAA8B,iBAIlF5D,SAAAA,G,OAAK6D,EAAAA,EAAAA,IAAY7D,MACjBA,SAAAA,G,OAAKQ,EAAAA,EAAAA,IAAqBR,EAAG,WAC7BA,SAAAA,G,OAAKQ,EAAAA,EAAAA,IAAqBR,EAAG,YAGtB8D,EAAO/D,EAAAA,QAAAA,IAAAA,WAAU,C,wDAAVA,C,IASKgE,EAAAA,GAAAA,QAKnB/D,SAAAA,G,OAAKQ,EAAAA,EAAAA,IAAqBR,EAAG,YAGtBgE,EAAcjE,EAAAA,QAAAA,IAAAA,WAAU,C,+DAAVA,C,KAErBC,SAAAA,G,OAAKQ,EAAAA,EAAAA,IAAqBR,EAAG,QAAS,cAG/BiE,EAAQlE,EAAAA,QAAAA,IAAAA,WAAU,C,yDAAVA,C,KAIfC,SAAAA,G,OAAKQ,EAAAA,EAAAA,IAAqBR,EAAG,YAGtBkE,EAAOnE,EAAAA,QAAAA,IAAAA,WAAU,C,wDAAVA,C,KAIdC,SAAAA,G,OAAKQ,EAAAA,EAAAA,IAAqBR,EAAG,WAGtBmE,EAAUpE,EAAAA,QAAAA,IAAAA,WAAU,C,2DAAVA,C,KAIVqE,GAAerE,EAAAA,EAAAA,SAAOoE,GAAQ,Y,iEAAfpE,C,KAKfsE,GAAetE,EAAAA,EAAAA,SAAOuE,EAAAA,GAAO,Y,iEAAdvE,C,KAGfwE,GAAcxE,EAAAA,EAAAA,SAAOuE,EAAAA,GAAO,Y,gEAAdvE,C,KAIdyE,EAASzE,EAAAA,QAAAA,IAAAA,WAAU,C,2DAAVA,C,KAIhBC,SAAAA,G,OAAKQ,EAAAA,EAAAA,IAAqBR,EAAG,kBAC7BA,SAAAA,G,OAAKQ,EAAAA,EAAAA,IAAqBR,EAAG,mBCjE7ByE,EAAiB,SAACC,G,OAA0B,IAAOA,GAAU,IAE7DC,EAAa,Y,IAkDiEC,EACFA,EAfhCA,EACFA,EArC1BA,EAAI,EAAJA,KAAM3D,EAAY,EAAZA,aAAc4D,EAAU,EAAVA,WAAYC,EAAO,EAAPA,QAE5CC,GAAiBC,EAAAA,EAAAA,UAAQ,WAC3B,OAAOC,OAAOC,KAAKjE,GACdkE,QAAOC,SAAAA,G,OAAuC,IAAhCA,EAAIC,QAAQT,EAAKU,aAC/BC,QAAO,SAACC,EAAKJ,G,OAASI,EAAIJ,EAAIK,QAAQ,GAAiB,OAAdb,EAAKU,SAAS,KAAI,KAAOrE,EAAamE,GAAMI,IAAM,MACjG,CAACvE,IAEEyE,GAAcV,EAAAA,EAAAA,UAAQ,W,IAERJ,EACNA,EACOA,EACIA,EACFA,EACJA,EACMA,EACKA,EACfA,EATX,MAAO,CACH/D,WAA6B,QAAjB+D,EAAAA,EAAKP,oBAAY,IAAjBO,OAAAA,EAAAA,EAAmBV,KAAKyB,WAAoB,QACxD7E,KAAuB,QAAjB8D,EAAAA,EAAKP,oBAAY,IAAjBO,OAAAA,EAAAA,EAAmBe,WAAiB,KAC1C3E,YAA8B,QAAjB4D,EAAAA,EAAKP,oBAAY,IAAjBO,OAAAA,EAAAA,EAAmBe,WAAwB,YACxDrE,gBAAkC,QAAjBsD,EAAAA,EAAKP,oBAAY,IAAjBO,OAAAA,EAAAA,EAAmBe,WAA4B,gBAChE5E,cAAgC,QAAjB6D,EAAAA,EAAKP,oBAAY,IAAjBO,OAAAA,EAAAA,EAAmBe,WAA0B,cAC5DzE,UAA4B,QAAjB0D,EAAAA,EAAKP,oBAAY,IAAjBO,OAAAA,EAAAA,EAAmBe,WAAsB,UACpDrF,gBAAkC,QAAjBsE,EAAAA,EAAKP,oBAAY,IAAjBO,OAAAA,EAAAA,EAAmBe,WAA4B,gBAChEpF,qBAAuC,QAAjBqE,EAAAA,EAAKP,oBAAY,IAAjBO,OAAAA,EAAAA,EAAmBe,WAAiC,qBAC1EzF,MAAwB,QAAjB0E,EAAAA,EAAKP,oBAAY,IAAjBO,OAAAA,EAAAA,EAAmBe,WAAsB,aAErD,CAACf,IAEEgB,GAAaZ,EAAAA,EAAAA,UAAQ,WACvB,MAAO,CACHa,IAAKjB,EAAKkB,MAAMH,WAAoB,QACpCI,IAAKnB,EAAKkB,MAAMH,WAAgB,IAChCK,KAAMpB,EAAKkB,MAAMH,WAAiB,QAEvC,CAACf,IAEJ,OACI,mBAACqB,GAAM,kBAAKpB,GAAU,CAAEO,IAAKR,EAAKQ,OAC9B,UAACa,EAAa,CACV3F,gBAAiBsE,EAAKe,WAAaf,EAAKe,WAA4B,qBAAI9C,EACxEU,aAAcqB,EAAKe,YAAcf,EAAKe,WAAyB,aAAI,EACnEnC,QAAS,CACLE,WAAYkB,EAAKe,YAAiD,QAApCf,EAAAA,EAAKe,WAA8B,yBAAC,IAApCf,EAAAA,EAA4C,EAC1EnB,SAAUmB,EAAKe,YAA+C,QAAlCf,EAAAA,EAAKe,WAA4B,uBAAC,IAAlCf,EAAAA,EAA0C,G,WAG1E,SAACqB,GAAc,kBAAKlB,GAAc,C,UAC9B,SAACkB,GAAO,kBAAKlB,GAAc,C,SACtBa,EAAWC,KACN,SAACK,EAAAA,EAAS,CAACC,QAASP,EAAWI,MAAQ,GAAgBJ,OAAbQ,EAAAA,IAA6B,OAAhBR,EAAWI,M,UAChE,SAACK,MAAG,CAACR,IAAK,GAAgBD,OAAbQ,EAAAA,IAA4B,OAAfR,EAAWC,KAAOE,IAAKH,EAAWG,SAE9D,SAACO,EAAAA,GAAgB,CAACC,MAAO,GAAIC,OAAQ,GAAI1B,QAASA,WAIhE,SAACmB,GAAQ,kBAAMlB,GAAc,CAAI0B,wBAAyB,CAAEC,OAAkB,QAAV9B,EAAAA,EAAKX,aAAK,IAAVW,OAAAA,EAAAA,EAAYe,WAAWgB,iBAC3F,SAACV,GAAO,kBAAMlB,GAAc,CAAG0B,wBAAyB,CAAEC,OAAiB,QAAT9B,EAAAA,EAAKV,YAAI,IAATU,OAAAA,EAAAA,EAAWe,WAAWgB,gBACvFjB,EAAY7E,aACT,SAACoF,EAAU,C,UACP,SAACA,EAAe,CACZtF,OAAQ,GAAiB,OAAdiE,EAAKU,SAAS,WACzBxE,KAAM4E,EAAY5E,KAClBC,cAAe2E,EAAY3E,cAC3BC,YAAa0E,EAAY1E,YACzBM,gBAAiBoE,EAAYpE,gBAC7BJ,UAAWwE,EAAYxE,UACvBL,WAAY6E,EAAY7E,WACxBP,gBAAiBoF,EAAYpF,gBAC7BC,qBAAsBmF,EAAYnF,qBAClCE,SAAU,eACVP,MAAOwF,EAAYxF,MACnBe,aAAc8D,WAgG1C,EAvFa,Y,IACT6B,EAAO,EAAPA,QACAC,EAAM,EAANA,OACAC,EAAO,EAAPA,QACAC,EAAW,EAAXA,YACA9F,EAAY,EAAZA,aACAyE,EAAW,EAAXA,YACAZ,EAAO,EAAPA,QACAkC,EAAiB,EAAjBA,kBACApD,EAAU,EAAVA,WACAqD,EAAqB,EAArBA,sBACAC,EAAG,EAAHA,IAE0BC,GAAAA,EAAAA,EAAAA,UAAS,IAA5BC,EAAmBD,EAAY,GAAxBE,EAAYF,EAAY,GAEhCG,GAAsBtC,EAAAA,EAAAA,UAAQ,WAChC,OAAOuC,EAAAA,EAAAA,GAAiBtG,EAA2B,iBACpD,CAACA,KAEJuG,EAAAA,EAAAA,YAAU,WACN,GAAmC,GAA/BvC,OAAOC,KAAK4B,GAASW,OAAzB,CACA,IAAMC,EAAOzC,OAAOC,KAAK4B,GAASa,QAAQC,MAAM,KAAKD,QAAQE,MAAM,QAAQ,GACrEC,GAAkBC,EAAAA,EAAAA,GAAoBjB,EAAS,SAAU7F,QACjC4B,IAA1BiF,EAAgBJ,IAChBL,GAASW,EAAAA,EAAAA,GAAoBF,EAAgBJ,GAAOzG,OAEzD,CAAC6F,EAAS7F,IAEb,IAAM4D,GAAaG,EAAAA,EAAAA,UAAQ,WACvB,OAAIF,EACO,CACHmD,GAAIxD,EAAesC,EAAYC,KAG7B,CACHiB,GAAIxD,EAAesC,EAAoB,QACvCmB,GAAIzD,EAAesC,EAAoB,QACvCoB,GAAI1D,EAAesC,EAAsB,UACzCqB,GAAI3D,EAAesC,EAAqB,YAGhD,CAACA,EAAaC,EAAmBlC,IAE9BuD,GAAgB,OAAIjB,GAAOkB,MAAK,SAACC,EAAMC,G,IAASD,EAA6BC,EAA7BD,OAAe,QAAfA,EAAAA,EAAK5C,kBAAU,IAAf4C,OAAAA,EAAAA,EAAiBE,YAA2B,QAAfD,EAAAA,EAAK7C,kBAAU,IAAf6C,OAAAA,EAAAA,EAAiBC,cAC9FC,GAAgBC,EAAAA,EAAAA,GAAe9B,EAAQK,GAE7C,OACI,SAACjB,GAAU,gCAACvD,GAAIkE,GAAa3F,GAAY,CAAE2C,WAAYA,IAAgBqD,GAAqB,C,UACxF,SAAChB,EAAa,CAAC2C,SAAS,O,UACpB,UAAC3C,EAAM,CAACgC,GAAI,G,UACPpB,IAAU,SAACZ,GAAS,kBAAKhF,GAAY,CAAEwF,wBAAyB,CAAEC,OAAQgC,OAC3E,SAACzC,EAAM,C,SAEc,OAAboC,QAAa,IAAbA,OAAAA,EAAAA,EAAeQ,KAAI,SAACjE,G,OAChB,SAACD,EAAU,CACPC,KAAMA,EAENE,QAASA,EACTD,WAAYA,EACZ5D,aAAcA,GAHT2D,EAAKlC,SAQzBgD,EAAY7E,aACb,SAACoF,EAAe,C,UACZ,SAACA,EAAc,CACXtF,OAAQ,GAAW,OAARiG,EAAQ,WACnB9F,KAAM4E,EAAY5E,KAClBC,cAAe2E,EAAY3E,cAC3BC,YAAa0E,EAAY1E,YACzBM,gBAAiBoE,EAAYpE,gBAC7BJ,UAAWwE,EAAYxE,UACvBL,WAAY6E,EAAY7E,WACxBP,gBAAiBoF,EAAYpF,gBAC7BC,qBAAsBmF,EAAYnF,qBAClCE,SAAU,cACVQ,aAAcqG,gB,qDCvLlC,IAAMC,EAAmB,SAACuB,EAAiCC,GACjE,IAAMC,EAAgB,GAEtB,IAAK,IAAM5D,KAAO0D,EAAQ,CACtB,IAAMG,EAAW7D,EAAI8D,OAAOH,GAC5B,IAAkB,IAAdE,EAEAD,EADmB5D,EAAI+D,MAAMF,IACDH,EAAO1D,GAG3C,OAAO4D,I,qECfIL,EAAiB,W,IAACS,EAAO,UAAH,6CAAG,GAAIlC,EAAY,uCAClD,OAAKkC,GAASlC,EAGP,IAAWmC,OAAPnC,EAAI,KAA4BA,QAAzBmC,EAAAA,EAAAA,GAAeD,GAAM,MAAQ,OAAJlC,EAAI,KAFpCkC,I,sDCHR,IAAMC,EAAiB,W,IAAC3C,EAAS,UAAH,6CAAG,GAC9B4C,EAAS,gBACTC,EAAO7C,EAAOjB,QAAQ6D,EAAQ,IACpC,OAAOC,I,gHCAExB,EAAsB,SAACyB,EAAiCC,EAAmBxI,G,kBAIhF,IAAMiE,EAAOwE,EAAE9B,MAAM,KACrB,IAAoC,IAAhC1C,EAAK,GAAGG,QAAQoE,GAAmB,iBACvCvE,EAAK,GAAKA,EAAK,GAAG2C,MAAM,QAAQ,GAChC,IAAM8B,EAAWzE,EAAKA,EAAKuC,OAAS,GAAGI,MAAM,QAAQ,GACrD+B,EAAUF,GAAGzI,cAAiB,UAAC0I,EAAY1I,EAAaiE,EAAK2E,KAAK,KAAKC,SACvE5E,EAAKK,QAAO,SAAUwE,EAAK3E,EAAK4E,GAC5B,OAAOD,EAAI3E,KAAS2E,EAAI3E,GAAO6E,MAAMC,OAAOhF,EAAK8E,EAAQ,KAAQ9E,EAAKuC,OAAS,GAAKuC,EAAQJ,EAAUF,GAAK,GAAM,MAClHS,IAVDP,EAAYQ,KAAKC,MAAMD,KAAKE,UAAUd,IACtCW,EAAS,GACf,IAAK,IAAMT,KAAKE,EAAU,EAAD,GAUzB,OAAOO,GAGEnC,EAAsB,SAAClB,EAAoC7F,G,kBAEhE,IAAMsJ,EAAaC,IACfvJ,GACA,SAAC2D,EAAMQ,GACH,OAA6C,IAAtCA,EAAIC,QAAQyB,EAAQ4C,GAAGpE,aAGhCmF,EAAc,GACpB,IAAK,IAAMC,KAAKH,EACRG,IAAM5D,EAAQ4C,GAAGpE,SACjBmF,EAAY3D,EAAQ4C,GAAGiB,MAAM9C,MAAM,QAAQ,IAAM0C,EAAWG,GAE5DD,EAAYC,EAAEjF,QAAQqB,EAAQ4C,GAAGpE,SAAW,IAAK,KAAOiF,EAAWG,GAG3E5D,EAAQ4C,GAAGzI,aAAegE,OAAO2F,OAAOH,GACxC3D,EAAQ4C,GAAGmB,SAAW/D,EAAQ4C,GAAGhH,GAAG+C,QAAQ,mBAAoB,SAASA,QAAQ,IAAK,MAhB1F,IAAK,IAAMiE,KAAK5C,EAAQ,EAAD,GAkBvB,OAAO7B,OAAO6F,OAAOhE,K,gDCpBzB,IAlBgB,SAAUiE,GACtB,IAAI5E,EAAU4E,EAAG5E,QAAS6E,EAAWD,EAAGC,SACpCC,GAAQjG,EAAAA,EAAAA,UAAQ,WAChB,IAAI+F,EACAG,EAAsF,QAA7EH,EAAkB,OAAbC,QAAkC,IAAbA,OAAsB,EAASA,EAASG,aAA0B,IAAPJ,OAAgB,EAASA,EAAGlF,IAC9H,QAAIqF,GAEqB,QADLA,EAAMtD,MAAM,KAAKwD,QAItC,CAACJ,IACJ,OAAO,IAAaC,GACd,UAACI,UAAO,CAACC,WAAW,E,WAClB,SAACC,SAAM,CAACC,OAAQrF,EAASvF,KAAK,eAC7BoK,MAEH,qB,SAAGA","sources":["webpack://_N_E/./src/components/LandingBlock/Common/Button/styled.tsx","webpack://_N_E/./src/components/LandingBlock/Common/Button/index.tsx","webpack://_N_E/./src/components/LandingBlock/Grid/styled.tsx","webpack://_N_E/./src/components/LandingBlock/Grid/index.tsx","webpack://_N_E/./src/helpers/get-partial-styles.ts","webpack://_N_E/./src/helpers/getTextWithTag.ts","webpack://_N_E/./src/helpers/isHtmlWithText.ts","webpack://_N_E/./src/services/blocks/prepareBlocks.ts","webpack://_N_E/./node_modules/@r1-frontend/ui-react/components/WebpImage/index.jsx"],"sourcesContent":["import styled from 'styled-components';\nimport { styleWithBreakPoints } from '~/src/components/LandingBlock/styled';\nimport { BaseButton } from '@r1-frontend/ui-react/components/buttons/baseButton';\n\ninterface IBtnWrapProps {\n inline: boolean;\n align?: string;\n}\n\nexport interface IBtnProps {\n backgroundColor?: string;\n backgroundHoverColor?: string;\n buttonTextColor?: string;\n propName?: string;\n isAutoWidth?: boolean;\n}\n\nexport const ButtonWrap = styled.div`\n display: ${p => p.inline ? 'inline-block' : 'flex' };\n justify-content: ${p => p.align ? p.align : 'left'};\n & a {\n text-decoration: none;\n }\n`;\n\nexport const ButtonStyle = styled(BaseButton)`\n width: ${p => p.isAutoWidth ? 'auto' : '235px' };\n position: relative;\n z-index: 8;\n background-color: ${p => p.backgroundColor};\n border-color: ${p => p.backgroundColor};\n \n &:hover {\n background-color: ${p => p.backgroundHoverColor};\n border-color: ${p => p.backgroundHoverColor};\n }\n \n ${p => styleWithBreakPoints(p, `${p.propName || 'Button'}`)};\n`;\n\nexport const ButtonText = styled.span`\n ${p => p.propName ? styleWithBreakPoints(p, `${p.propName + '.Text'}`) : styleWithBreakPoints(p, 'Button.Text')};\n`;\n","import { ReactElement, useCallback } from 'react';\nimport Link from 'next/link';\nimport * as Sentry from '@sentry/node';\nimport { dataLayerPush } from '@r1-frontend/ui-react/components/helpers';\nimport { ButtonWrap, ButtonStyle, ButtonText } from './styled';\nimport { TAnalytics } from '~/src/services/blocks/configs/Part/analyticsPartConfig';\nimport { btnTypes } from '@r1-frontend/ui-react/components/buttons/baseButton';\n\nexport interface IButtonProps {\n elemId: string,\n type?: btnTypes,\n buttonText?: string | React.ReactNode | ReactElement;\n href?: string,\n isTargetBlank?: boolean,\n idForScroll?: string,\n analytics?: TAnalytics,\n customStyles?: Record,\n buttonClickHandler?: () => void,\n className?: string,\n isInline?: boolean;\n backgroundColor?: string;\n backgroundHoverColor?: string;\n align?: 'left' | 'right' | 'center';\n isAutoWidth?: boolean;\n enableCalltouch?: boolean;\n propName?: string;\n}\n\nconst Button = ({\n elemId,\n type,\n buttonText,\n href,\n isTargetBlank,\n idForScroll,\n customStyles,\n analytics,\n buttonClickHandler,\n className,\n isInline = false,\n backgroundColor,\n backgroundHoverColor,\n align = 'left',\n isAutoWidth = false,\n enableCalltouch = false,\n propName,\n}: IButtonProps): JSX.Element => {\n const clickHandler = useCallback(() => {\n if (idForScroll) {\n try {\n const elem = document.querySelector(`#${idForScroll}`);\n elem?.scrollIntoView({ block: 'start', behavior: 'smooth' });\n } catch (err) {\n Sentry.captureException(err);\n }\n }\n }, [idForScroll]);\n\n const onSendGtmEvent = useCallback(() => {\n if (analytics) {\n const { category = '', action = '', label = '' } = analytics;\n\n if (category || action || label) {\n const event = {\n event: 'UAevent',\n ...analytics,\n category: category || '',\n action: action || '',\n };\n\n dataLayerPush(event);\n }\n }\n }, [analytics]);\n\n return (\n \n {href\n ? \n \n {buttonText || 'Купить'}\n \n \n : \n {buttonText || 'Купить'}\n \n }\n \n );\n};\n\nexport default Button;\n","import styled from 'styled-components';\nimport { FlexBoxCol, FlexBoxRow } from '@r1-frontend/ui-react/components/layouts/flexBoxGrid';\nimport GridContainer from '@r1-frontend/ui-react/components/layouts/gridContainer';\nimport { blockMargin, breakPoints, CSSPropWithBreakpoints, styleWithBreakPoints } from '~/src/components/LandingBlock/styled';\nimport Button from '~/src/components/LandingBlock/Common/Button';\n\nexport interface IGridStyles {\n Grid: CSSPropWithBreakpoints\n [key: string]: CSSPropWithBreakpoints;\n}\n\ninterface IPadding {\n horizontal?: number;\n vertical?: number;\n}\n\nexport const StyledGrid = styled(GridContainer)`\n display: flex;\n max-width: 100%;\n`;\n\nexport const Col = styled(FlexBoxCol)`\n margin-bottom: 24px;\n`;\n\nexport const Row = styled(FlexBoxRow)`\n`;\n\nexport const ColWrapper = styled.div<{backgroundColor?: string, borderRadius?: number, padding?: IPadding}>`\n background-color: ${p => p.backgroundColor ?? 'transparent' };\n border-radius: ${p => p.borderRadius ? p.borderRadius + 'px' : '0' };\n padding: ${p => +p.padding?.vertical + 'px ' + +p.padding?.horizontal + 'px'};\n`;\n\nexport const Wrapper = styled.div`\n background: ${p => p.background ? `url(${p.background}) no-repeat center / cover` : 'transparent'};\n width: 100%;\n padding: 14px 0 32px;\n \n ${p => blockMargin(p)}; \n ${p => styleWithBreakPoints(p, 'Grid')};\n ${p => styleWithBreakPoints(p, 'Grid2')};\n`;\n\nexport const Icon = styled.div`\n display: flex;\n object-fit: contain;\n \n img {\n width: auto;\n height: 100%;\n }\n \n @media (max-width: ${breakPoints.tablet}) {\n width: 48px;\n height: 48px;\n }\n \n ${p => styleWithBreakPoints(p, 'Image')};\n`;\n\nexport const IconWrapper = styled.div`\n display: flex;\n ${p => styleWithBreakPoints(p, 'Image', 'justify')};\n`;\n\nexport const Title = styled.div`\n margin-top: 12px;\n margin-bottom: 24px;\n \n ${p => styleWithBreakPoints(p, 'Title')};\n`;\n\nexport const Text = styled.div`\n margin-top: 12px;\n margin-bottom: 24px;\n \n ${p => styleWithBreakPoints(p, 'Text')};\n`;\n\nexport const BtnWrap = styled.div`\n padding-bottom: 12px;\n`;\n\nexport const BlockBtnWrap = styled(BtnWrap)`\n margin: 24px auto 0 auto;\n max-width: 158px;\n`;\n\nexport const ColumnButton = styled(Button)`\n`;\n\nexport const BlockButton = styled(Button)`\n`;\n\n\nexport const Header = styled.div`\n margin-top: 0;\n margin-bottom: 32px;\n \n ${p => styleWithBreakPoints(p, 'Grid.Header')};\n ${p => styleWithBreakPoints(p, 'Grid2.Header')};\n`;\n","import { useEffect, useMemo, useState } from 'react';\nimport { CSSObject } from 'styled-components';\n\nimport { INormalizedLandingElement } from '~/src/services/projects';\nimport { ImagePlaceholder } from '~/src/components/LandingBlock/styled';\nimport { IMG_DOMAIN } from '~/src/services/blocks/templates';\nimport { IGridItem } from '~/src/services/blocks/preparePreview';\nimport { IHeaderButtonProps } from '~/src/components/LandingBlock/Header';\nimport { getPartialStyles } from '~/src/helpers/get-partial-styles';\nimport { getTextWithTag } from '~/src/helpers/getTextWithTag';\n\nimport { prepareBlockColumns, prepareColumnStyles } from '~/src/services/blocks/prepareBlocks';\nimport WebpImage from '@r1-frontend/ui-react/components/WebpImage';\n\nimport * as ST from './styled';\n\n\ninterface IGridProps {\n blockId: string,\n header: string;\n buttonProps?: IHeaderButtonProps;\n columnCount: {\n desktop: string;\n sDesktop: string;\n table: string;\n mobile: string;\n } | string;\n columns: INormalizedLandingElement;\n customStyles: any;\n isAdmin?: boolean;\n currentBreakpoint?: string;\n background?: string;\n additionalBlockConfig?: any;\n tag?: string;\n}\n\nconst calcColumnSize = (count: string): number => 12 / (+count) || 12;\n\nconst RenderItem = ({ item, customStyles, columnSize, isAdmin }) => {\n\n const preparedStyles = useMemo(() => {\n return Object.keys(customStyles)\n .filter(key => key.indexOf(item.renderId) !== -1)\n .reduce((res, key) => (res[key.replace(`${item.renderId}.`, '')] = customStyles[key], res), {});\n }, [customStyles]);\n\n const buttonProps = useMemo(() => {\n return {\n buttonText: item.ColumnButton?.Text.properties['content'],\n href: item.ColumnButton?.properties['href'],\n idForScroll: item.ColumnButton?.properties['idForScroll'],\n enableCalltouch: item.ColumnButton?.properties['enableCalltouch'],\n isTargetBlank: item.ColumnButton?.properties['isTargetBlank'],\n analytics: item.ColumnButton?.properties['analytics'],\n backgroundColor: item.ColumnButton?.properties['backgroundColor'],\n backgroundHoverColor: item.ColumnButton?.properties['backgroundHoverColor'],\n align: item.ColumnButton?.properties['textAlign'],\n };\n }, [item]);\n\n const imageProps = useMemo(() => {\n return {\n src: item.Image.properties['content'],\n alt: item.Image.properties['alt'],\n webp: item.Image.properties['webp'],\n };\n }, [item]);\n\n return (\n \n \n \n \n {imageProps.src\n ? \n {imageProps.alt}/\n \n : \n }\n \n \n \n \n {buttonProps.buttonText &&\n \n \n \n }\n \n \n );\n};\n\nconst Grid = ({\n blockId,\n header,\n columns,\n columnCount,\n customStyles,\n buttonProps,\n isAdmin,\n currentBreakpoint,\n background,\n additionalBlockConfig,\n tag,\n}: IGridProps): JSX.Element => {\n const [items, setItems] = useState([]);\n\n const partialButtonStyles = useMemo(() => {\n return getPartialStyles(customStyles as CSSObject, 'BlockButton');\n }, [customStyles]);\n\n useEffect(() => {\n if (Object.keys(columns).length == 0) return;\n const root = Object.keys(columns).shift().split('.').shift().match(/\\w+/g)[0];\n const preparedColumns = prepareBlockColumns(columns, 'Column', customStyles);\n if (preparedColumns[root] !== undefined) {\n setItems(prepareColumnStyles(preparedColumns[root], customStyles));\n }\n }, [columns, customStyles]);\n\n const columnSize = useMemo(() => {\n if (isAdmin) {\n return {\n xs: calcColumnSize(columnCount[currentBreakpoint]),\n };\n } else {\n return {\n xs: calcColumnSize(columnCount['mobile']),\n sm: calcColumnSize(columnCount['tablet']),\n md: calcColumnSize(columnCount['sDesktop']),\n lg: calcColumnSize(columnCount['desktop']),\n };\n }\n }, [columnCount, currentBreakpoint, isAdmin]);\n\n const sortedColumns = [...items].sort((prev, next) => prev.properties?.sortOrder - next.properties?.sortOrder);\n const headerWithTag = getTextWithTag(header, tag);\n\n return (\n \n \n \n {header && }\n \n {\n sortedColumns?.map((item: IGridItem) => (\n \n ))\n }\n \n {buttonProps.buttonText &&\n \n \n \n }\n \n \n \n );\n};\n\nexport default Grid;\n","import { CSSObject } from 'styled-components';\n\n/**\n * Убирает название родительского блока из строки со стилями\n * ключ 'Header1.Button.text' => 'Button.text'\n * TODO вынести в отдельный хелпер, потребуется для других компонентов\n */\n export const getPartialStyles = (styles: Record, name: string): CSSObject => {\n const partialStyles = {};\n\n for (const key in styles) {\n const position = key.search(name);\n if (position !== -1) {\n const partialKey = key.slice(position);\n partialStyles[partialKey] = styles[key];\n }\n }\n return partialStyles;\n};\n","import { isHtmlWithText } from './isHtmlWithText';\n\nexport const getTextWithTag = (text = '', tag?: string): string => {\n if (!text || !tag) {\n return text;\n }\n return `<${tag}>${isHtmlWithText(text)}`;\n};\n","\nexport const isHtmlWithText = (__html = ''): string => {\n const regExp = /(<([^>]+)>)/ig;\n const html = __html.replace(regExp, '');\n return html;\n};\n","import pickBy from 'lodash/pickBy';\nimport { INormalizedLandingElement } from '~/src/services/projects';\n\n// TODO: погрумить, возможно эти методы можно более эффективно написать\nexport const prepareBlockColumns = (data: INormalizedLandingElement, blockName: string, customStyles: any) => {\n const tempProps = JSON.parse(JSON.stringify(data));\n const result = {};\n for (const i in tempProps) {\n const keys = i.split('.');\n if (keys[1].indexOf(blockName) === -1) continue;\n keys[0] = keys[0].match(/\\w+/g)[0];\n const blockKey = keys[keys.length - 1].match(/\\w+/g)[0];\n tempProps[i].customStyles = { [blockKey] : customStyles[keys.join('.').trim()] };\n keys.reduce(function (acc, key, index) {\n return acc[key] || (acc[key] = isNaN(Number(keys[index + 1])) ? (keys.length - 1 == index ? tempProps[i] : {}) : []);\n }, result);\n }\n return result;\n};\n\nexport const prepareColumnStyles = (columns: INormalizedLandingElement, customStyles: any) => {\n for (const i in columns) {\n const tempStyles = pickBy(\n customStyles,\n (item, key) => {\n return key.indexOf(columns[i].renderId) !== -1;\n },\n );\n const customStyle = {};\n for (const j in tempStyles) {\n if (j === columns[i].renderId) {\n customStyle[columns[i].title.match(/\\w+/g)[0]] = tempStyles[j];\n } else {\n customStyle[j.replace(columns[i].renderId + '.', '')] = tempStyles[j];\n }\n }\n columns[i].customStyles = Object.assign(customStyle);\n columns[i].scrollId = columns[i].id.replace(/(\\w*)\\[(\\d*)\\]/mg, '$1-$2').replace('.', '-');\n }\n return Object.values(columns);\n};\n","import React, { useMemo } from 'react';\nvar WebpImage = function (_a) {\n var urlWebp = _a.urlWebp, children = _a.children;\n var isSvg = useMemo(function () {\n var _a;\n var image = (_a = children === null || children === void 0 ? void 0 : children.props) === null || _a === void 0 ? void 0 : _a.src;\n if (image) {\n var extension = image.split('.').pop();\n return extension === 'svg';\n }\n return false;\n }, [children]);\n return (urlWebp && !isSvg)\n ? \n \n {children}\n \n : <>{children};\n};\nexport default WebpImage;\n"],"names":["ButtonWrap","styled","p","inline","align","ButtonStyle","BaseButton","isAutoWidth","backgroundColor","backgroundHoverColor","styleWithBreakPoints","propName","ButtonText","elemId","type","buttonText","href","isTargetBlank","idForScroll","customStyles","analytics","buttonClickHandler","className","isInline","enableCalltouch","clickHandler","useCallback","elem","document","querySelector","scrollIntoView","block","behavior","err","Sentry","onSendGtmEvent","category","action","label","event","dataLayerPush","onClick","Link","passHref","id","btnTypes","target","undefined","rel","data-testid","StyledGrid","GridContainer","Col","FlexBoxCol","Row","FlexBoxRow","ColWrapper","borderRadius","padding","vertical","horizontal","Wrapper","background","blockMargin","Icon","breakPoints","IconWrapper","Title","Text","BtnWrap","BlockBtnWrap","ColumnButton","Button","BlockButton","Header","calcColumnSize","count","RenderItem","item","columnSize","isAdmin","preparedStyles","useMemo","Object","keys","filter","key","indexOf","renderId","reduce","res","replace","buttonProps","properties","imageProps","src","Image","alt","webp","ST","WebpImage","urlWebp","IMG_DOMAIN","img","ImagePlaceholder","width","height","dangerouslySetInnerHTML","__html","htmlContent","blockId","header","columns","columnCount","currentBreakpoint","additionalBlockConfig","tag","useState","items","setItems","partialButtonStyles","getPartialStyles","useEffect","length","root","shift","split","match","preparedColumns","prepareBlockColumns","prepareColumnStyles","xs","sm","md","lg","sortedColumns","sort","prev","next","sortOrder","headerWithTag","getTextWithTag","modeName","map","styles","name","partialStyles","position","search","slice","text","isHtmlWithText","regExp","html","data","blockName","i","blockKey","tempProps","join","trim","acc","index","isNaN","Number","result","JSON","parse","stringify","tempStyles","pickBy","customStyle","j","title","assign","scrollId","values","_a","children","isSvg","image","props","pop","picture","draggable","source","srcSet"],"sourceRoot":""}