@redneckz/wildless-cms-uni-blocks 0.4.4 → 0.4.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (123) hide show
  1. package/bundle/blocks.schema.json +1 -1
  2. package/bundle/bundle.umd.js +38 -11
  3. package/bundle/bundle.umd.min.js +1 -1
  4. package/dist/components/BenefitsBlock/BenefitsBlock.js +32 -9
  5. package/dist/components/BenefitsBlock/BenefitsBlock.js.map +1 -1
  6. package/dist/components/BenefitsBlock/BenefitsBlockContent.d.ts +9 -2
  7. package/dist/content-page-repository/transformContentPage.js +9 -3
  8. package/dist/content-page-repository/transformContentPage.js.map +1 -1
  9. package/dist/content-page-repository/transformImg.d.ts +11 -0
  10. package/dist/content-page-repository/transformImg.js +100 -0
  11. package/dist/content-page-repository/transformImg.js.map +1 -0
  12. package/dist/content-page-repository/transformPicture.js +15 -40
  13. package/dist/content-page-repository/transformPicture.js.map +1 -1
  14. package/dist/content-page-repository/transformSrc.d.ts +3 -0
  15. package/dist/content-page-repository/transformSrc.js +20 -0
  16. package/dist/content-page-repository/transformSrc.js.map +1 -0
  17. package/dist/model/ImageSize.d.ts +6 -0
  18. package/dist/model/ImageSize.js +2 -0
  19. package/dist/model/ImageSize.js.map +1 -0
  20. package/dist/model/Picture.d.ts +19 -6
  21. package/dist/ui-kit/Img/ImgAsPicture.js +6 -2
  22. package/dist/ui-kit/Img/ImgAsPicture.js.map +1 -1
  23. package/dist/utils/isPictureSizeEmpty.d.ts +2 -0
  24. package/dist/utils/isPictureSizeEmpty.js +7 -0
  25. package/dist/utils/isPictureSizeEmpty.js.map +1 -0
  26. package/lib/common.css +1 -1
  27. package/lib/components/BenefitsBlock/BenefitsBlock.fixture.d.ts +2 -0
  28. package/lib/components/BenefitsBlock/BenefitsBlock.js +32 -9
  29. package/lib/components/BenefitsBlock/BenefitsBlock.js.map +1 -1
  30. package/lib/components/BenefitsBlock/BenefitsBlockContent.d.ts +9 -2
  31. package/lib/content-page-repository/transformContentPage.js +9 -3
  32. package/lib/content-page-repository/transformContentPage.js.map +1 -1
  33. package/lib/content-page-repository/transformImg.d.ts +11 -0
  34. package/lib/content-page-repository/transformImg.js +94 -0
  35. package/lib/content-page-repository/transformImg.js.map +1 -0
  36. package/lib/content-page-repository/transformPicture.js +15 -40
  37. package/lib/content-page-repository/transformPicture.js.map +1 -1
  38. package/lib/content-page-repository/transformSrc.d.ts +3 -0
  39. package/lib/content-page-repository/transformSrc.js +14 -0
  40. package/lib/content-page-repository/transformSrc.js.map +1 -0
  41. package/lib/model/ImageSize.d.ts +6 -0
  42. package/lib/model/ImageSize.js +2 -0
  43. package/lib/model/ImageSize.js.map +1 -0
  44. package/lib/model/Picture.d.ts +19 -6
  45. package/lib/ui-kit/Img/ImgAsPicture.js +6 -2
  46. package/lib/ui-kit/Img/ImgAsPicture.js.map +1 -1
  47. package/lib/utils/isPictureSizeEmpty.d.ts +2 -0
  48. package/lib/utils/isPictureSizeEmpty.js +4 -0
  49. package/lib/utils/isPictureSizeEmpty.js.map +1 -0
  50. package/mobile/bundle/bundle.umd.js +6 -2
  51. package/mobile/bundle/bundle.umd.min.js +1 -1
  52. package/mobile/dist/components/BenefitsBlock/BenefitsBlock.js +32 -9
  53. package/mobile/dist/components/BenefitsBlock/BenefitsBlock.js.map +1 -1
  54. package/mobile/dist/components/BenefitsBlock/BenefitsBlockContent.d.ts +9 -2
  55. package/mobile/dist/content-page-repository/transformContentPage.js +9 -3
  56. package/mobile/dist/content-page-repository/transformContentPage.js.map +1 -1
  57. package/mobile/dist/content-page-repository/transformImg.d.ts +11 -0
  58. package/mobile/dist/content-page-repository/transformImg.js +100 -0
  59. package/mobile/dist/content-page-repository/transformImg.js.map +1 -0
  60. package/mobile/dist/content-page-repository/transformPicture.js +15 -40
  61. package/mobile/dist/content-page-repository/transformPicture.js.map +1 -1
  62. package/mobile/dist/content-page-repository/transformSrc.d.ts +3 -0
  63. package/mobile/dist/content-page-repository/transformSrc.js +20 -0
  64. package/mobile/dist/content-page-repository/transformSrc.js.map +1 -0
  65. package/mobile/dist/model/ImageSize.d.ts +6 -0
  66. package/mobile/dist/model/ImageSize.js +2 -0
  67. package/mobile/dist/model/ImageSize.js.map +1 -0
  68. package/mobile/dist/model/Picture.d.ts +19 -6
  69. package/mobile/dist/ui-kit/Img/ImgAsPicture.js +6 -2
  70. package/mobile/dist/ui-kit/Img/ImgAsPicture.js.map +1 -1
  71. package/mobile/dist/utils/isPictureSizeEmpty.d.ts +2 -0
  72. package/mobile/dist/utils/isPictureSizeEmpty.js +7 -0
  73. package/mobile/dist/utils/isPictureSizeEmpty.js.map +1 -0
  74. package/mobile/lib/components/BenefitsBlock/BenefitsBlock.js +32 -9
  75. package/mobile/lib/components/BenefitsBlock/BenefitsBlock.js.map +1 -1
  76. package/mobile/lib/components/BenefitsBlock/BenefitsBlockContent.d.ts +9 -2
  77. package/mobile/lib/content-page-repository/transformContentPage.js +9 -3
  78. package/mobile/lib/content-page-repository/transformContentPage.js.map +1 -1
  79. package/mobile/lib/content-page-repository/transformImg.d.ts +11 -0
  80. package/mobile/lib/content-page-repository/transformImg.js +94 -0
  81. package/mobile/lib/content-page-repository/transformImg.js.map +1 -0
  82. package/mobile/lib/content-page-repository/transformPicture.js +15 -40
  83. package/mobile/lib/content-page-repository/transformPicture.js.map +1 -1
  84. package/mobile/lib/content-page-repository/transformSrc.d.ts +3 -0
  85. package/mobile/lib/content-page-repository/transformSrc.js +14 -0
  86. package/mobile/lib/content-page-repository/transformSrc.js.map +1 -0
  87. package/mobile/lib/model/ImageSize.d.ts +6 -0
  88. package/mobile/lib/model/ImageSize.js +2 -0
  89. package/mobile/lib/model/ImageSize.js.map +1 -0
  90. package/mobile/lib/model/Picture.d.ts +19 -6
  91. package/mobile/lib/ui-kit/Img/ImgAsPicture.js +6 -2
  92. package/mobile/lib/ui-kit/Img/ImgAsPicture.js.map +1 -1
  93. package/mobile/lib/utils/isPictureSizeEmpty.d.ts +2 -0
  94. package/mobile/lib/utils/isPictureSizeEmpty.js +4 -0
  95. package/mobile/lib/utils/isPictureSizeEmpty.js.map +1 -0
  96. package/mobile/src/components/BenefitsBlock/BenefitsBlock.example.json +1 -0
  97. package/mobile/src/components/BenefitsBlock/BenefitsBlock.tsx +78 -28
  98. package/mobile/src/components/BenefitsBlock/BenefitsBlockContent.ts +10 -2
  99. package/mobile/src/components/ContentPage/ContentPage.page.json +1 -2
  100. package/mobile/src/components/__snapshots__/Blocks.spec.tsx.snap +1 -1
  101. package/mobile/src/content-page-repository/transformContentPage.ts +10 -3
  102. package/mobile/src/content-page-repository/transformImg.ts +157 -0
  103. package/mobile/src/content-page-repository/transformPicture.ts +24 -58
  104. package/mobile/src/content-page-repository/transformSrc.ts +21 -0
  105. package/mobile/src/model/ImageSize.ts +6 -0
  106. package/mobile/src/model/Picture.ts +29 -6
  107. package/mobile/src/ui-kit/Img/ImgAsPicture.tsx +8 -2
  108. package/mobile/src/utils/isPictureSizeEmpty.ts +5 -0
  109. package/package.json +2 -1
  110. package/src/components/BenefitsBlock/BenefitsBlock.example.json +1 -0
  111. package/src/components/BenefitsBlock/BenefitsBlock.fixture.tsx +94 -1
  112. package/src/components/BenefitsBlock/BenefitsBlock.tsx +78 -28
  113. package/src/components/BenefitsBlock/BenefitsBlockContent.ts +10 -2
  114. package/src/components/ContentPage/ContentPage.page.json +1 -2
  115. package/src/components/__snapshots__/Blocks.spec.tsx.snap +1 -1
  116. package/src/content-page-repository/transformContentPage.ts +10 -3
  117. package/src/content-page-repository/transformImg.ts +157 -0
  118. package/src/content-page-repository/transformPicture.ts +24 -58
  119. package/src/content-page-repository/transformSrc.ts +21 -0
  120. package/src/model/ImageSize.ts +6 -0
  121. package/src/model/Picture.ts +29 -6
  122. package/src/ui-kit/Img/ImgAsPicture.tsx +8 -2
  123. package/src/utils/isPictureSizeEmpty.ts +5 -0
package/lib/common.css CHANGED
@@ -1 +1 @@
1
- @import "../fonts/ubuntu/ubuntu.css";@import "../fonts/mohave/mohave.css";html{scroll-behavior:smooth}[data-theme=pc]{--color-primary-main:66,171,68;--color-primary-hover:36,131,65;--color-primary-active:36,95,52;--color-secondary-hover:36,131,65;--color-secondary-active:36,95,52;--color-gradient-from:141,189,76;--color-gradient-to:69,172,69}[data-theme=bc]{--color-primary-main:131,184,62;--color-primary-hover:92,146,29;--color-primary-active:60,94,16;--color-secondary-hover:92,146,29;--color-secondary-active:60,94,16;--color-gradient-from:141,189,76;--color-gradient-to:69,172,69}[data-theme=eo]{--color-primary-main:221,182,61;--color-primary-hover:187,151,39;--color-primary-active:126,99,12;--color-secondary-hover:187,151,39;--color-secondary-active:126,99,12;--color-gradient-from:141,189,76;--color-gradient-to:69,172,69}.container{margin-left:auto;margin-right:auto;width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.invisible{visibility:hidden}.static{position:static}.absolute{position:absolute}.relative{position:relative}.sticky{position:-webkit-sticky;position:sticky}.inset-x-0{left:0;right:0}.-bottom-3{bottom:-.75rem}.left-3{left:.75rem}.right-3{right:.75rem}.top-8{top:2rem}.top-0{top:0}.bottom-0{bottom:0}.left-0{left:0}.right-0{right:0}.left-8{left:2rem}.right-8{right:2rem}.top-1\/2{top:50%}.top-4{top:1rem}.right-4{right:1rem}.-top-4{top:-1rem}.left-\[50px\]{left:50px}.right-\[50px\]{right:50px}.top-\[62px\]{top:62px}.bottom-6{bottom:1.5rem}.left-1{left:.25rem}.right-\[22px\]{right:22px}.top-24{top:6rem}.top-2{top:.5rem}.-bottom-1{bottom:-.25rem}.top-1{top:.25rem}.right-1{right:.25rem}.top-\[108px\]{top:108px}.top-11{top:2.75rem}.right-7{right:1.75rem}.z-10{z-index:10}.z-40{z-index:40}.z-20{z-index:20}.z-\[1\]{z-index:1}.order-2{order:2}.col-span-12{grid-column:span 12/span 12}.col-span-6{grid-column:span 6/span 6}.col-span-8{grid-column:span 8/span 8}.col-span-4{grid-column:span 4/span 4}.m-0{margin:0}.m-auto{margin:auto}.mx-\[7px\]{margin-left:7px;margin-right:7px}.mx-auto{margin-left:auto;margin-right:auto}.mx-7{margin-left:1.75rem;margin-right:1.75rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-1{margin-left:.25rem;margin-right:.25rem}.mx-0\.5{margin-left:.125rem;margin-right:.125rem}.mx-0{margin-left:0;margin-right:0}.mx-8{margin-left:2rem;margin-right:2rem}.my-2{margin-top:.5rem}.mb-2,.my-2{margin-bottom:.5rem}.mb-5{margin-bottom:1.25rem}.mb-1{margin-bottom:.25rem}.mb-2\.5{margin-bottom:.625rem}.mr-3{margin-right:.75rem}.mb-4{margin-bottom:1rem}.mb-3\.5{margin-bottom:.875rem}.mb-3{margin-bottom:.75rem}.mt-auto{margin-top:auto}.mt-8{margin-top:2rem}.mb-14{margin-bottom:3.5rem}.ml-5{margin-left:1.25rem}.mt-2{margin-top:.5rem}.mt-9{margin-top:2.25rem}.mb-\[14px\]{margin-bottom:14px}.mr-4{margin-right:1rem}.mt-\[14px\]{margin-top:14px}.mt-14{margin-top:3.5rem}.-mb-7{margin-bottom:-1.75rem}.mt-6{margin-top:1.5rem}.mb-1\.5{margin-bottom:.375rem}.mb-\[3px\]{margin-bottom:3px}.mt-3{margin-top:.75rem}.mt-7{margin-top:1.75rem}.mt-4{margin-top:1rem}.ml-3{margin-left:.75rem}.-mt-4{margin-top:-1rem}.mt-\[50px\]{margin-top:50px}.mr-1\.5{margin-right:.375rem}.mr-1{margin-right:.25rem}.mt-5{margin-top:1.25rem}.mb-9{margin-bottom:2.25rem}.mb-\[18px\]{margin-bottom:18px}.mr-6{margin-right:1.5rem}.ml-2{margin-left:.5rem}.mr-14{margin-right:3.5rem}.mb-\[30px\]{margin-bottom:30px}.-mr-12{margin-right:-3rem}.mb-6{margin-bottom:1.5rem}.mt-1{margin-top:.25rem}.mt-\[98px\]{margin-top:98px}.mt-\[54px\]{margin-top:54px}.ml-6{margin-left:1.5rem}.mr-8{margin-right:2rem}.ml-auto{margin-left:auto}.mr-2{margin-right:.5rem}.mb-7{margin-bottom:1.75rem}.mr-5{margin-right:1.25rem}.mr-7{margin-right:1.75rem}.mr-52{margin-right:13rem}.mt-2\.5{margin-top:.625rem}.mb-8{margin-bottom:2rem}.mr-\[30px\]{margin-right:30px}.mr-2\.5{margin-right:.625rem}.mt-\[10px\]{margin-top:10px}.mt-\[30px\]{margin-top:30px}.mb-10{margin-bottom:2.5rem}.-mt-2\.5{margin-top:-.625rem}.-mt-2{margin-top:-.5rem}.mb-\[7px\]{margin-bottom:7px}.mt-\[-50px\]{margin-top:-50px}.mb-\[154px\]{margin-bottom:154px}.mt-1\.5{margin-top:.375rem}.mr-9{margin-right:2.25rem}.mr-11{margin-right:2.75rem}.mb-0\.5{margin-bottom:.125rem}.mb-0{margin-bottom:0}.ml-\[34px\]{margin-left:34px}.ml-2\.5{margin-left:.625rem}.mr-\[14px\]{margin-right:14px}.mr-auto{margin-right:auto}.ml-7{margin-left:1.75rem}.-mt-0\.5{margin-top:-.125rem}.-mt-0{margin-top:0}.ml-px{margin-left:1px}.mb-\[1px\]{margin-bottom:1px}.mr-\[10px\]{margin-right:10px}.box-border{box-sizing:border-box}.box-content{box-sizing:content-box}.block{display:block}.\!block{display:block!important}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-full{height:100%}.h-\[50px\]{height:50px}.h-auto{height:auto}.h-\[180px\]{height:180px}.h-\[88px\]{height:88px}.h-\[77px\]{height:77px}.h-\[24px\]{height:24px}.h-\[126px\]{height:126px}.h-2{height:.5rem}.h-6{height:1.5rem}.h-\[63px\]{height:63px}.h-8{height:2rem}.h-fit{height:-webkit-fit-content;height:-moz-fit-content;height:fit-content}.h-9{height:2.25rem}.h-14{height:3.5rem}.h-\[207px\]{height:207px}.h-\[3px\]{height:3px}.h-\[1px\]{height:1px}.h-4{height:1rem}.h-12{height:3rem}.h-28{height:7rem}.h-\[70px\]{height:70px}.h-0\.5{height:.125rem}.h-0{height:0}.h-\[100px\]{height:100px}.h-\[22px\]{height:22px}.h-5{height:1.25rem}.h-3{height:.75rem}.h-\[2px\]{height:2px}.h-\[243px\]{height:243px}.h-1\.5{height:.375rem}.h-1{height:.25rem}.h-\[7px\]{height:7px}.h-\[38px\]{height:38px}.h-\[20px\]{height:20px}.h-16{height:4rem}.max-h-0{max-height:0}.max-h-6{max-height:1.5rem}.max-h-12{max-height:3rem}.min-h-\[300px\]{min-height:300px}.min-h-\[320px\]{min-height:320px}.min-h-\[360px\]{min-height:360px}.min-h-\[160px\]{min-height:160px}.min-h-\[24px\]{min-height:24px}.min-h-\[63px\]{min-height:63px}.min-h-\[32px\]{min-height:32px}.min-h-6{min-height:1.5rem}.min-h-\[454px\]{min-height:454px}.min-h-12{min-height:3rem}.min-h-\[218px\]{min-height:218px}.min-h-\[70px\]{min-height:70px}.min-h-\[50px\]{min-height:50px}.min-h-8{min-height:2rem}.min-h-\[100px\]{min-height:100px}.min-h-4{min-height:1rem}.min-h-2{min-height:.5rem}.min-h-1\.5{min-height:.375rem}.min-h-1{min-height:.25rem}.min-h-\[7px\]{min-height:7px}.w-full{width:100%}.w-\[50px\]{width:50px}.w-\[49\%\]{width:49%}.w-\[160px\]{width:160px}.w-\[468px\]{width:468px}.w-\[240px\]{width:240px}.w-\[387px\]{width:387px}.w-\[322px\]{width:322px}.w-\[24px\]{width:24px}.w-\[351px\]{width:351px}.w-\[84px\]{width:84px}.w-6{width:1.5rem}.w-\[63px\]{width:63px}.w-80{width:20rem}.w-\[200px\]{width:200px}.w-8{width:2rem}.w-fit{width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}.w-20{width:5rem}.w-\[204px\]{width:204px}.w-14{width:3.5rem}.w-1\/5{width:20%}.w-\[82px\]{width:82px}.w-\[364px\]{width:364px}.w-\[260px\]{width:260px}.w-52{width:13rem}.w-\[3px\]{width:3px}.w-\[136px\]{width:136px}.w-\[125px\]{width:125px}.w-\[33px\]{width:33px}.w-\[558px\]{width:558px}.w-12{width:3rem}.w-4{width:1rem}.w-\[354px\]{width:354px}.w-\[70px\]{width:70px}.w-\[2px\]{width:2px}.w-\[100px\]{width:100px}.w-\[276px\]{width:276px}.w-\[22px\]{width:22px}.w-\[158px\]{width:158px}.w-\[36px\]{width:36px}.w-5{width:1.25rem}.w-3{width:.75rem}.w-\[1280px\]{width:1280px}.w-\[214px\]{width:214px}.w-\[76px\]{width:76px}.w-2{width:.5rem}.w-1\.5{width:.375rem}.w-1{width:.25rem}.w-\[7px\]{width:7px}.w-10{width:2.5rem}.w-\[20px\]{width:20px}.min-w-\[50px\]{min-width:50px}.min-w-\[160px\]{min-width:160px}.min-w-\[387px\]{min-width:387px}.min-w-\[322px\]{min-width:322px}.min-w-\[24px\]{min-width:24px}.min-w-\[402px\]{min-width:402px}.min-w-\[63px\]{min-width:63px}.min-w-\[364px\]{min-width:364px}.min-w-\[260px\]{min-width:260px}.min-w-\[32px\]{min-width:32px}.min-w-full{min-width:100%}.min-w-\[460px\]{min-width:460px}.min-w-6{min-width:1.5rem}.min-w-\[120px\]{min-width:120px}.min-w-\[92px\]{min-width:92px}.min-w-\[168px\]{min-width:168px}.min-w-\[80\%\]{min-width:80%}.min-w-12{min-width:3rem}.min-w-\[354px\]{min-width:354px}.min-w-\[277px\]{min-width:277px}.min-w-\[524px\]{min-width:524px}.min-w-\[70px\]{min-width:70px}.min-w-\[100px\]{min-width:100px}.min-w-\[22px\]{min-width:22px}.min-w-4{min-width:1rem}.min-w-\[214px\]{min-width:214px}.min-w-2{min-width:.5rem}.min-w-1\.5{min-width:.375rem}.min-w-1{min-width:.25rem}.min-w-\[7px\]{min-width:7px}.max-w-\[47rem\]{max-width:47rem}.max-w-\[500px\]{max-width:500px}.max-w-\[488px\]{max-width:488px}.max-w-\[292px\]{max-width:292px}.max-w-\[600px\]{max-width:600px}.max-w-\[308px\]{max-width:308px}.max-w-\[509px\]{max-width:509px}.max-w-\[calc\(100\%-186px\)\]{max-width:calc(100% - 186px)}.max-w-\[236px\]{max-width:236px}.max-w-\[752px\]{max-width:752px}.max-w-\[240px\]{max-width:240px}.max-w-\[170px\]{max-width:170px}.flex-1{flex:1 1 0%}.flex-none{flex:none}.flex-shrink-0,.shrink-0{flex-shrink:0}.flex-grow,.grow{flex-grow:1}.grow-0{flex-grow:0}.basis-1\/2{flex-basis:50%}.basis-full{flex-basis:100%}.basis-\[calc\(50\%-20px\)\]{flex-basis:calc(50% - 20px)}.basis-0{flex-basis:0px}.origin-top{transform-origin:top}.-translate-x-8{--tw-translate-x:-2rem}.-translate-x-8,.rotate-180{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate:180deg}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@-webkit-keyframes expansion{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes expansion{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.animate-expansion{-webkit-animation:expansion .3s ease-out;animation:expansion .3s ease-out}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize{resize:both}.snap-center{scroll-snap-align:center}.snap-always{scroll-snap-stop:always}.scroll-mt-12{scroll-margin-top:3rem}.list-none{list-style-type:none}.list-disc{list-style-type:disc}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.auto-rows-auto{grid-auto-rows:auto}.grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-\[max-content_1fr\]{grid-template-columns:-webkit-max-content 1fr;grid-template-columns:max-content 1fr}.grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.content-center{align-content:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3\.5{gap:.875rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-\[18px\]{gap:18px}.gap-\[54px\]{gap:54px}.gap-5{gap:1.25rem}.gap-2\.5{gap:.625rem}.gap-\[14px\]{gap:14px}.gap-\[122px\]{gap:122px}.gap-6{gap:1.5rem}.gap-\[6px\]{gap:6px}.gap-0\.5{gap:.125rem}.gap-0{gap:0}.gap-8{gap:2rem}.gap-x-20{-moz-column-gap:5rem;column-gap:5rem}.gap-x-5{-moz-column-gap:1.25rem;column-gap:1.25rem}.gap-y-\[26px\]{row-gap:26px}.gap-x-6{-moz-column-gap:1.5rem;column-gap:1.5rem}.gap-y-2\.5{row-gap:.625rem}.gap-y-2{row-gap:.5rem}.gap-x-\[101px\]{-moz-column-gap:101px;column-gap:101px}.gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.gap-x-1{-moz-column-gap:.25rem;column-gap:.25rem}.self-start{align-self:flex-start}.self-end{align-self:flex-end}.self-center{align-self:center}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-hidden{overflow-x:hidden}.overflow-y-hidden{overflow-y:hidden}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-md{border-radius:.375rem}.rounded-\[40px\]{border-radius:40px}.rounded-none{border-radius:0}.rounded-t-md{border-top-left-radius:.375rem;border-top-right-radius:.375rem}.rounded-b-md{border-bottom-left-radius:.375rem;border-bottom-right-radius:.375rem}.rounded-tl-lg{border-top-left-radius:.5rem}.border{border-width:1px}.border-0{border-width:0}.border-\[1px\]{border-width:1px}.border-2{border-width:2px}.border-y-0{border-bottom-width:0;border-top-width:0}.border-x-0{border-left-width:0;border-right-width:0}.border-y{border-top-width:1px}.border-b,.border-y{border-bottom-width:1px}.border-b-0{border-bottom-width:0}.border-t-0{border-top-width:0}.border-t{border-top-width:1px}.border-r,.border-r-\[1px\]{border-right-width:1px}.border-solid{border-style:solid}.border-none{border-style:none}.border-main-divider{--tw-border-opacity:1;border-color:rgba(235,237,240,var(--tw-border-opacity))}.border-gray,.border-main-stroke{--tw-border-opacity:1;border-color:rgba(201,202,204,var(--tw-border-opacity))}.border-primary-main{--tw-border-opacity:1;border-color:rgba(var(--color-primary-main),var(--tw-border-opacity))}.border-main{--tw-border-opacity:1;border-color:rgba(240,244,240,var(--tw-border-opacity))}.border-white{--tw-border-opacity:1;border-color:rgb(255 255 255/var(--tw-border-opacity))}.border-secondary-hover{--tw-border-opacity:1;border-color:rgba(var(--color-secondary-hover),var(--tw-border-opacity))}.border-white\/50{border-color:hsla(0,0%,100%,.5) ;}.border-black\/50{border-color:rgba(0,0,0,.5)}.border-transparent{border-color:transparent}.border-black{--tw-border-opacity:1;border-color:rgb(0 0 0/var(--tw-border-opacity))}.border-y-main-divider{--tw-border-opacity:1;border-bottom-color:rgba(235,237,240,var(--tw-border-opacity));border-top-color:rgba(235,237,240,var(--tw-border-opacity))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.bg-primary-main{--tw-bg-opacity:1;background-color:rgba(var(--color-primary-main),var(--tw-bg-opacity))}.bg-transparent{background-color:transparent}.bg-main-divider{--tw-bg-opacity:1;background-color:rgba(235,237,240,var(--tw-bg-opacity))}.bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity))}.bg-secondary-text{--tw-bg-opacity:1;background-color:rgba(125,126,127,var(--tw-bg-opacity))}.bg-main{--tw-bg-opacity:1;background-color:rgba(240,244,240,var(--tw-bg-opacity))}.bg-secondary-light{--tw-bg-opacity:1;background-color:rgba(245,247,249,var(--tw-bg-opacity))}.bg-primary-text{--tw-bg-opacity:1;background-color:rgba(28,28,28,var(--tw-bg-opacity))}.bg-main-divider\/20{background-color:rgba(235,237,240,.2)}.bg-inherit{background-color:inherit}.bg-white\/10{background-color:hsla(0,0%,100%,.1) ;}.bg-white\/30{background-color:hsla(0,0%,100%,.3)}.bg-primary-main\/10{background-color:rgba(var(--color-primary-main),.1)}.bg-secondary-dark{--tw-bg-opacity:1;background-color:rgba(226,228,229,var(--tw-bg-opacity))}.bg-slate-100{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity))}.bg-main-stroke{--tw-bg-opacity:1;background-color:rgba(201,202,204,var(--tw-bg-opacity))}.bg-green-to-yellow{background-image:linear-gradient(180deg,#42ab44,#f6db7d)}.bg-opacity-from-white{background-image:linear-gradient(90deg,#fff,hsla(0,0%,100%,.7) 25%,hsla(0,0%,100%,0) 80%);}.bg-opacity-to-white{background-image:linear-gradient(270deg,#fff 34.89%,hsla(0,0%,100%,0) 92.52%);}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.bg-opacity-from-main{background-image:linear-gradient(90deg,rgba(var(--color-primary-main),1) 0,rgba(var(--color-primary-main),0) 80%);}.bg-opacity-to-main{background-image:linear-gradient(270deg,rgba(var(--color-primary-main),1) 34.89%,rgba(var(--color-primary-main),0) 92.52%);}.from-main-gradient-start{--tw-gradient-from:rgba(var(--color-gradient-from),1);--tw-gradient-to:rgba(var(--color-gradient-from),0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-white{--tw-gradient-from:#fff;--tw-gradient-to:hsla(0,0%,100%,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.to-main-gradient-end{--tw-gradient-to:rgba(var(--color-gradient-to),1)}.to-transparent{--tw-gradient-to:transparent}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.p-0{padding:0}.p-\[50px\]{padding:50px}.p-4{padding:1rem}.\!p-0{padding:0!important}.p-12{padding:3rem}.p-3{padding:.75rem}.p-5{padding:1.25rem}.p-9{padding:2.25rem}.p-\[30px\]{padding:30px}.p-6{padding:1.5rem}.p-\[42px\]{padding:42px}.p-1\.5{padding:.375rem}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3\.5{padding:.875rem}.p-14{padding:3.5rem}.p-7{padding:1.75rem}.p-\[26px\]{padding:26px}.p-\[10px\]{padding:10px}.py-6{padding-bottom:1.5rem;padding-top:1.5rem}.px-4{padding-left:1rem;padding-right:1rem}.py-\[14px\]{padding-bottom:14px;padding-top:14px}.px-0{padding-left:0;padding-right:0}.\!px-0{padding-left:0!important;padding-right:0!important}.px-5{padding-left:1.25rem;padding-right:1.25rem}.py-4{padding-bottom:1rem;padding-top:1rem}.py-\[50px\]{padding-bottom:50px;padding-top:50px}.py-\[11px\]{padding-bottom:11px;padding-top:11px}.px-7{padding-left:1.75rem;padding-right:1.75rem}.py-3\.5{padding-bottom:.875rem;padding-top:.875rem}.py-3{padding-bottom:.75rem;padding-top:.75rem}.py-7{padding-bottom:1.75rem;padding-top:1.75rem}.py-\[26px\]{padding-bottom:26px;padding-top:26px}.py-5{padding-bottom:1.25rem;padding-top:1.25rem}.py-0{padding-bottom:0;padding-top:0}.px-20{padding-left:5rem;padding-right:5rem}.px-\[50px\]{padding-left:50px;padding-right:50px}.py-2\.5{padding-bottom:.625rem;padding-top:.625rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.py-1\.5{padding-bottom:.375rem;padding-top:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.py-1{padding-bottom:.25rem;padding-top:.25rem}.px-\[26px\]{padding-left:26px;padding-right:26px}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-12{padding-bottom:3rem;padding-top:3rem}.px-10{padding-left:2.5rem;padding-right:2.5rem}.py-0\.5{padding-bottom:.125rem;padding-top:.125rem}.px-\[70px\]{padding-left:70px;padding-right:70px}.px-\[88px\]{padding-left:88px;padding-right:88px}.py-\[18px\]{padding-bottom:18px;padding-top:18px}.px-9{padding-left:2.25rem;padding-right:2.25rem}.pr-2\.5{padding-right:.625rem}.pr-2{padding-right:.5rem}.pt-5{padding-top:1.25rem}.pb-3\.5{padding-bottom:.875rem}.pb-3{padding-bottom:.75rem}.pr-9{padding-right:2.25rem}.pr-\[4\.75rem\]{padding-right:4.75rem}.pr-\[9\.4rem\]{padding-right:9.4rem}.pl-6{padding-left:1.5rem}.pb-9{padding-bottom:2.25rem}.pl-9{padding-left:2.25rem}.pt-9{padding-top:2.25rem}.pr-6{padding-right:1.5rem}.pb-6{padding-bottom:1.5rem}.pt-7{padding-top:1.75rem}.pl-\[50px\]{padding-left:50px}.pr-\[50px\]{padding-right:50px}.pb-\[46px\]{padding-bottom:46px}.pt-6{padding-top:1.5rem}.pl-11{padding-left:2.75rem}.pb-1{padding-bottom:.25rem}.pt-4{padding-top:1rem}.pt-2{padding-top:.5rem}.pl-4{padding-left:1rem}.pb-4{padding-bottom:1rem}.pr-1{padding-right:.25rem}.pl-2\.5{padding-left:.625rem}.pl-2{padding-left:.5rem}.pb-\[30px\]{padding-bottom:30px}.pt-\[3px\]{padding-top:3px}.pt-3{padding-top:.75rem}.pt-2\.5{padding-top:.625rem}.pr-\[11px\]{padding-right:11px}.pr-3{padding-right:.75rem}.pb-2{padding-bottom:.5rem}.pb-5{padding-bottom:1.25rem}.pl-0\.5{padding-left:.125rem}.pl-0{padding-left:0}.pr-4{padding-right:1rem}.pb-12{padding-bottom:3rem}.pl-3{padding-left:.75rem}.pt-\[50px\]{padding-top:50px}.pb-14{padding-bottom:3.5rem}.pb-\[23px\]{padding-bottom:23px}.pt-\[42px\]{padding-top:42px}.pb-0{padding-bottom:0}.pt-10{padding-top:2.5rem}.pr-0{padding-right:0}.pl-10{padding-left:2.5rem}.pt-1\.5{padding-top:.375rem}.pl-1{padding-left:.25rem}.pt-1{padding-top:.25rem}.pt-0\.5{padding-top:.125rem}.pt-0{padding-top:0}.pr-28{padding-right:7rem}.pl-12{padding-left:3rem}.pr-\[6\%\]{padding-right:6%}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.align-top{vertical-align:top}.align-middle{vertical-align:middle}.font-sans{font-family:Ubuntu,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.font-mohave{font-family:Mohave,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.text-m-light{font-size:.9375rem;font-weight:300;line-height:1.25rem}.text-l{font-size:1rem;font-weight:400;line-height:1.5rem}.text-m-title-xs{font-size:1.0625rem;line-height:1.375rem}.text-h6{font-size:1.25rem;font-weight:400;line-height:1.75rem}.text-xl{font-size:1.125rem;font-weight:400;line-height:1.5rem}.text-l-light{font-size:1rem;font-weight:300;line-height:1.5rem}.text-h4{font-size:1.75rem;font-weight:400;line-height:2.25rem}.text-xl-light{font-size:1.125rem;font-weight:300;line-height:1.5rem}.text-title-extra{font-size:15.625rem;line-height:14.687rem}.text-\[44px\]{font-size:44px}.text-m{font-size:.9375rem;font-weight:400;line-height:1.25rem}.text-h3{font-size:2rem;font-weight:400;line-height:2.5rem}.text-title-huge{font-size:12.5rem;line-height:15.625rem}.text-\[65px\]{font-size:65px}.text-xs-light{font-size:.75rem;font-weight:300;line-height:1.125rem}.text-s{font-weight:400}.text-s,.text-s-light{font-size:.875rem;line-height:1.25rem}.text-s-light{font-weight:300}.text-h5{font-size:1.5rem;font-weight:400;line-height:1.875rem}.text-m-title{font-size:1.375rem;line-height:1.8125rem}.text-xs{font-size:.75rem;line-height:1rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-h0{font-size:3.5rem;font-weight:400;line-height:3.5rem}.text-h1{font-size:3.125rem;font-weight:400;line-height:3.25rem}.text-h2{font-size:2.5rem;font-weight:400;line-height:3rem}.text-h5-light{font-size:1.5rem;font-weight:300;line-height:1.875rem}.font-medium{font-weight:500}.font-light{font-weight:300}.leading-\[75px\]{line-height:75px}.leading-5{line-height:1.25rem}.leading-\[18px\]{line-height:18px}.-tracking-\[5px\]{letter-spacing:-5px}.tracking-\[-14px\]{letter-spacing:-14px}.tracking-\[-25px\]{letter-spacing:-25px}.text-primary-text{--tw-text-opacity:1;color:rgba(28,28,28,var(--tw-text-opacity))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.text-primary-main{--tw-text-opacity:1;color:rgba(var(--color-primary-main),var(--tw-text-opacity))}.text-secondary-text{--tw-text-opacity:1;color:rgba(125,126,127,var(--tw-text-opacity))}.text-transparent{color:transparent}.text-secondary-text\/80{color:hsla(210,1%,49%,.8)}.text-white\/80{color:hsla(0,0%,100%,.8)}.\!text-secondary-text{--tw-text-opacity:1!important;color:rgba(125,126,127,var(--tw-text-opacity))!important}.text-secondary-light{--tw-text-opacity:1;color:rgba(245,247,249,var(--tw-text-opacity))}.text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity))}.no-underline{-webkit-text-decoration-line:none;text-decoration-line:none}.placeholder-transparent::-moz-placeholder{color:transparent}.placeholder-transparent::placeholder{color:transparent}.opacity-80{opacity:.8}.opacity-30{opacity:.3}.opacity-0{opacity:0}.shadow-\[0_8px_32px_0px_\#00000014\]{--tw-shadow:0 8px 32px 0px #00000014;--tw-shadow-colored:0 8px 32px 0px var(--tw-shadow-color)}.shadow-\[0_8px_32px_0px_\#00000014\],.shadow-blue-gray\/24{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-blue-gray\/24{--tw-shadow:0 14px 36px -4px rgba(21,40,90,.24) ;;--tw-shadow-colored:0 14px 36px -4px var(--tw-shadow-color)}.shadow-dark-blue\/42{--tw-shadow:0 18px 36px -4px rgba(24,39,75,.42) ;;--tw-shadow-colored:0 18px 36px -4px var(--tw-shadow-color)}.shadow-\[0_4px_25px_rgba\(0\2c 0\2c 0\2c 0\.07\)\],.shadow-dark-blue\/42{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-\[0_4px_25px_rgba\(0\2c 0\2c 0\2c 0\.07\)\]{--tw-shadow:0 4px 25px rgba(0,0,0,.07);--tw-shadow-colored:0 4px 25px var(--tw-shadow-color)}.outline-none{outline:2px solid transparent;outline-offset:2px}.invert{--tw-invert:invert(100%)}.filter,.invert{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-height{transition-duration:.15s;transition-property:height;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-300{transition-duration:.3s}.duration-1000{transition-duration:1s}.duration-500{transition-duration:.5s}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.rotate-180{transform:rotate(180deg)}.no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.horizontal-list{-webkit-overflow-scrolling:touch;display:flex;overflow-x:scroll;scroll-snap-type:x mandatory}.horizontal-list-item{flex-shrink:0;scroll-snap-align:start;scroll-snap-stop:always;width:100%}.calc-rate-text{-webkit-text-fill-color:transparent;text-fill-color:transparent;background:linear-gradient(180deg,#42ab44,#f6db7d);-webkit-background-clip:text}input[type=range].slider{-webkit-appearance:none;background:transparent;background-image:linear-gradient(rgb(var(--color-primary-main)),rgb(var(--color-primary-main)));background-repeat:no-repeat;border-radius:5px;height:4px}input[type=range].slider::-webkit-slider-thumb{-webkit-appearance:none;background:rgb(var(--color-primary-main));border-radius:50%;box-shadow:none;cursor:pointer;height:18px;width:18px}input[type=range].slider::-moz-range-thumb{background:rgb(var(--color-primary-main));border-radius:50%;box-shadow:none;cursor:pointer;height:12px;width:12px}input[type=range].slider::-ms-thumb{background:rgb(var(--color-primary-main));border-radius:50%;box-shadow:none;cursor:pointer;height:18px;width:18px}input[type=range].slider:disabled{background-image:linear-gradient(#c9cacc,#c9cacc);cursor:default;pointer-events:none}input[type=range].slider:disabled::-webkit-slider-thumb{background:#c9cacc}input[type=range].slider:disabled::-moz-range-thumb{background:#c9cacc}input[type=range].slider:disabled::-ms-thumb{background:#c9cacc}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}.after\:block:after{content:var(--tw-content);display:block}.after\:h-2\.5:after{content:var(--tw-content);height:.625rem}.after\:h-2:after{content:var(--tw-content);height:.5rem}.after\:w-2\.5:after{content:var(--tw-content);width:.625rem}.after\:w-2:after{content:var(--tw-content);width:.5rem}.after\:rounded-full:after{border-radius:9999px;content:var(--tw-content)}.first\:mt-0:first-child{margin-top:0}.first\:rounded-tl-md:first-child{border-top-left-radius:.375rem}.first\:rounded-bl-md:first-child{border-bottom-left-radius:.375rem}.first\:pt-7:first-child{padding-top:1.75rem}.first\:pl-0:first-child{padding-left:0}.first\:pt-5:first-child{padding-top:1.25rem}.last\:mb-0:last-child{margin-bottom:0}.last\:mr-0:last-child{margin-right:0}.last\:w-1\/4:last-child{width:25%}.last\:rounded-tr-md:last-child{border-top-right-radius:.375rem}.last\:rounded-br-md:last-child{border-bottom-right-radius:.375rem}.last\:border-b-0:last-child{border-bottom-width:0}.last\:border-r-0:last-child{border-right-width:0}.last\:pb-7:last-child{padding-bottom:1.75rem}.last\:pr-0:last-child{padding-right:0}.last\:pb-5:last-child{padding-bottom:1.25rem}.odd\:ml-0:nth-child(odd){margin-left:0}.odd\:bg-main-divider:nth-child(odd){--tw-bg-opacity:1;background-color:rgba(235,237,240,var(--tw-bg-opacity))}.last\:odd\:mx-0:nth-child(odd):last-child{margin-left:0;margin-right:0}.even\:mr-0:nth-child(2n){margin-right:0}.visited\:text-secondary-text:visited{color:rgba(125,126,127,var(--tw-text-opacity))}.checked\:border-primary-main:checked{--tw-border-opacity:1;border-color:rgba(var(--color-primary-main),var(--tw-border-opacity))}.checked\:after\:bg-primary-main:checked:after,.checked\:bg-primary-main:checked{--tw-bg-opacity:1;background-color:rgba(var(--color-primary-main),var(--tw-bg-opacity))}.checked\:after\:bg-primary-main:checked:after{content:var(--tw-content)}.hover\:h-\[88px\]:hover{height:88px}.hover\:border-primary-main:hover{--tw-border-opacity:1;border-color:rgba(var(--color-primary-main),var(--tw-border-opacity))}.hover\:border-transparent:hover{border-color:transparent}.hover\:border-primary-hover:hover{border-color:#868686 ;}.hover\:bg-secondary-hover:hover{--tw-bg-opacity:1;background-color:rgba(var(--color-secondary-hover),var(--tw-bg-opacity))}.hover\:bg-primary-main:hover{--tw-bg-opacity:1;background-color:rgba(var(--color-primary-main),var(--tw-bg-opacity))}.hover\:bg-primary-hover:hover{--tw-bg-opacity:1;background-color:rgba(var(--color-primary-hover),var(--tw-bg-opacity))}.hover\:py-\[26px\]:hover{padding-bottom:26px;padding-top:26px}.hover\:text-primary-main:hover{--tw-text-opacity:1;color:rgba(var(--color-primary-main),var(--tw-text-opacity))}.hover\:text-black:hover{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity))}.hover\:text-secondary-hover:hover{--tw-text-opacity:1;color:rgba(var(--color-secondary-hover),var(--tw-text-opacity))}.hover\:text-white:hover{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.hover\:text-primary-hover:hover{--tw-text-opacity:1;color:rgba(var(--color-primary-hover),var(--tw-text-opacity))}.focus\:border:focus{border-width:1px}.focus\:border-primary-focus:focus{border-color:#1c1c1c ;}.focus\:border-primary-text:focus{--tw-border-opacity:1;border-color:rgba(28,28,28,var(--tw-border-opacity))}.active\:bg-secondary-active:active{--tw-bg-opacity:1;background-color:rgba(var(--color-secondary-active),var(--tw-bg-opacity))}.active\:bg-primary-active:active{--tw-bg-opacity:1;background-color:rgba(var(--color-primary-active),var(--tw-bg-opacity))}.disabled\:border-main-stroke:disabled{--tw-border-opacity:1;border-color:rgba(201,202,204,var(--tw-border-opacity))}.disabled\:bg-main-divider:disabled{--tw-bg-opacity:1;background-color:rgba(235,237,240,var(--tw-bg-opacity))}.group:last-child .group-last\:last\:pb-0:last-child{padding-bottom:0}.group:hover .group-hover\:border-checkbox-hover{border-color:#868686 ;}.group:hover .group-hover\:text-primary-main{--tw-text-opacity:1;color:rgba(var(--color-primary-main),var(--tw-text-opacity))}.group:hover .group-hover\:text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.group:hover .group-hover\:text-primary-hover{--tw-text-opacity:1;color:rgba(var(--color-primary-hover),var(--tw-text-opacity))}.group:hover .group-hover\:invert-0{--tw-invert:invert(0);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.peer:checked~.peer-checked\:block{display:block}.peer:-moz-placeholder-shown~.peer-placeholder-shown\:invisible{visibility:hidden}.peer:placeholder-shown~.peer-placeholder-shown\:invisible{visibility:hidden}.peer:focus~.peer-focus\:visible{visibility:visible}@media (min-width:1280px) and (max-width:1535px){.xl\:gap-8{gap:2rem}.xl\:gap-5{gap:1.25rem}}
1
+ @import "../fonts/ubuntu/ubuntu.css";@import "../fonts/mohave/mohave.css";html{scroll-behavior:smooth}[data-theme=pc]{--color-primary-main:66,171,68;--color-primary-hover:36,131,65;--color-primary-active:36,95,52;--color-secondary-hover:36,131,65;--color-secondary-active:36,95,52;--color-gradient-from:141,189,76;--color-gradient-to:69,172,69}[data-theme=bc]{--color-primary-main:131,184,62;--color-primary-hover:92,146,29;--color-primary-active:60,94,16;--color-secondary-hover:92,146,29;--color-secondary-active:60,94,16;--color-gradient-from:141,189,76;--color-gradient-to:69,172,69}[data-theme=eo]{--color-primary-main:221,182,61;--color-primary-hover:187,151,39;--color-primary-active:126,99,12;--color-secondary-hover:187,151,39;--color-secondary-active:126,99,12;--color-gradient-from:141,189,76;--color-gradient-to:69,172,69}.container{margin-left:auto;margin-right:auto;width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.invisible{visibility:hidden}.static{position:static}.absolute{position:absolute}.relative{position:relative}.sticky{position:-webkit-sticky;position:sticky}.inset-x-0{left:0;right:0}.-bottom-3{bottom:-.75rem}.left-3{left:.75rem}.right-3{right:.75rem}.top-8{top:2rem}.top-0{top:0}.bottom-0{bottom:0}.left-0{left:0}.right-0{right:0}.left-8{left:2rem}.right-8{right:2rem}.top-1\/2{top:50%}.top-4{top:1rem}.right-4{right:1rem}.-top-4{top:-1rem}.left-\[50px\]{left:50px}.right-\[50px\]{right:50px}.top-\[62px\]{top:62px}.bottom-6{bottom:1.5rem}.left-1{left:.25rem}.right-\[22px\]{right:22px}.top-24{top:6rem}.top-2{top:.5rem}.-bottom-1{bottom:-.25rem}.top-1{top:.25rem}.right-1{right:.25rem}.top-\[108px\]{top:108px}.top-11{top:2.75rem}.right-7{right:1.75rem}.z-10{z-index:10}.z-40{z-index:40}.z-20{z-index:20}.z-\[1\]{z-index:1}.order-2{order:2}.col-span-12{grid-column:span 12/span 12}.col-span-6{grid-column:span 6/span 6}.col-span-8{grid-column:span 8/span 8}.col-span-4{grid-column:span 4/span 4}.m-0{margin:0}.m-auto{margin:auto}.mx-\[7px\]{margin-left:7px;margin-right:7px}.mx-auto{margin-left:auto;margin-right:auto}.mx-7{margin-left:1.75rem;margin-right:1.75rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-1{margin-left:.25rem;margin-right:.25rem}.mx-0\.5{margin-left:.125rem;margin-right:.125rem}.mx-0{margin-left:0;margin-right:0}.mx-8{margin-left:2rem;margin-right:2rem}.my-2{margin-top:.5rem}.mb-2,.my-2{margin-bottom:.5rem}.mb-5{margin-bottom:1.25rem}.mb-1{margin-bottom:.25rem}.mb-2\.5{margin-bottom:.625rem}.mr-3{margin-right:.75rem}.mb-4{margin-bottom:1rem}.mb-3\.5{margin-bottom:.875rem}.mb-3{margin-bottom:.75rem}.mt-auto{margin-top:auto}.mt-8{margin-top:2rem}.mb-14{margin-bottom:3.5rem}.ml-5{margin-left:1.25rem}.mt-2{margin-top:.5rem}.mt-9{margin-top:2.25rem}.mb-\[14px\]{margin-bottom:14px}.mr-4{margin-right:1rem}.mt-\[14px\]{margin-top:14px}.mt-14{margin-top:3.5rem}.-mb-7{margin-bottom:-1.75rem}.mt-6{margin-top:1.5rem}.mb-1\.5{margin-bottom:.375rem}.mb-\[3px\]{margin-bottom:3px}.mt-3{margin-top:.75rem}.mt-7{margin-top:1.75rem}.mt-4{margin-top:1rem}.ml-3{margin-left:.75rem}.-mt-4{margin-top:-1rem}.mt-\[50px\]{margin-top:50px}.mr-1\.5{margin-right:.375rem}.mr-1{margin-right:.25rem}.mt-5{margin-top:1.25rem}.mb-9{margin-bottom:2.25rem}.mb-\[18px\]{margin-bottom:18px}.mr-6{margin-right:1.5rem}.ml-2{margin-left:.5rem}.mr-14{margin-right:3.5rem}.mb-\[30px\]{margin-bottom:30px}.-mr-12{margin-right:-3rem}.mb-6{margin-bottom:1.5rem}.mt-1{margin-top:.25rem}.mt-\[98px\]{margin-top:98px}.mt-\[54px\]{margin-top:54px}.ml-6{margin-left:1.5rem}.mr-8{margin-right:2rem}.ml-auto{margin-left:auto}.mr-2{margin-right:.5rem}.mb-7{margin-bottom:1.75rem}.mr-5{margin-right:1.25rem}.mr-7{margin-right:1.75rem}.mr-52{margin-right:13rem}.mt-2\.5{margin-top:.625rem}.mb-8{margin-bottom:2rem}.mr-\[30px\]{margin-right:30px}.mr-2\.5{margin-right:.625rem}.mt-\[10px\]{margin-top:10px}.mt-\[30px\]{margin-top:30px}.mb-10{margin-bottom:2.5rem}.-mt-2\.5{margin-top:-.625rem}.-mt-2{margin-top:-.5rem}.mb-\[7px\]{margin-bottom:7px}.mt-\[-50px\]{margin-top:-50px}.mb-\[154px\]{margin-bottom:154px}.mt-1\.5{margin-top:.375rem}.mr-9{margin-right:2.25rem}.mr-11{margin-right:2.75rem}.mb-0\.5{margin-bottom:.125rem}.mb-0{margin-bottom:0}.ml-\[34px\]{margin-left:34px}.ml-2\.5{margin-left:.625rem}.mr-\[14px\]{margin-right:14px}.mr-auto{margin-right:auto}.ml-7{margin-left:1.75rem}.-mt-0\.5{margin-top:-.125rem}.-mt-0{margin-top:0}.ml-px{margin-left:1px}.mb-\[1px\]{margin-bottom:1px}.mr-\[10px\]{margin-right:10px}.box-border{box-sizing:border-box}.box-content{box-sizing:content-box}.block{display:block}.\!block{display:block!important}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-full{height:100%}.h-\[50px\]{height:50px}.h-auto{height:auto}.h-\[180px\]{height:180px}.h-\[88px\]{height:88px}.h-\[77px\]{height:77px}.h-\[24px\]{height:24px}.h-\[126px\]{height:126px}.h-2{height:.5rem}.h-6{height:1.5rem}.h-\[63px\]{height:63px}.h-8{height:2rem}.h-fit{height:-webkit-fit-content;height:-moz-fit-content;height:fit-content}.h-9{height:2.25rem}.h-14{height:3.5rem}.h-\[207px\]{height:207px}.h-\[3px\]{height:3px}.h-\[1px\]{height:1px}.h-4{height:1rem}.h-12{height:3rem}.h-28{height:7rem}.h-\[70px\]{height:70px}.h-0\.5{height:.125rem}.h-0{height:0}.h-\[100px\]{height:100px}.h-\[22px\]{height:22px}.h-5{height:1.25rem}.h-3{height:.75rem}.h-\[2px\]{height:2px}.h-\[243px\]{height:243px}.h-1\.5{height:.375rem}.h-1{height:.25rem}.h-\[7px\]{height:7px}.h-\[38px\]{height:38px}.h-\[20px\]{height:20px}.h-16{height:4rem}.max-h-0{max-height:0}.max-h-6{max-height:1.5rem}.max-h-12{max-height:3rem}.min-h-\[300px\]{min-height:300px}.min-h-\[320px\]{min-height:320px}.min-h-\[360px\]{min-height:360px}.min-h-\[160px\]{min-height:160px}.min-h-\[24px\]{min-height:24px}.min-h-\[63px\]{min-height:63px}.min-h-\[32px\]{min-height:32px}.min-h-6{min-height:1.5rem}.min-h-\[454px\]{min-height:454px}.min-h-12{min-height:3rem}.min-h-\[218px\]{min-height:218px}.min-h-\[70px\]{min-height:70px}.min-h-\[50px\]{min-height:50px}.min-h-8{min-height:2rem}.min-h-\[100px\]{min-height:100px}.min-h-4{min-height:1rem}.min-h-2{min-height:.5rem}.min-h-1\.5{min-height:.375rem}.min-h-1{min-height:.25rem}.min-h-\[7px\]{min-height:7px}.w-full{width:100%}.w-\[50px\]{width:50px}.w-\[49\%\]{width:49%}.w-\[160px\]{width:160px}.w-\[468px\]{width:468px}.w-\[240px\]{width:240px}.w-\[387px\]{width:387px}.w-\[322px\]{width:322px}.w-\[24px\]{width:24px}.w-\[351px\]{width:351px}.w-\[84px\]{width:84px}.w-6{width:1.5rem}.w-\[63px\]{width:63px}.w-80{width:20rem}.w-\[200px\]{width:200px}.w-8{width:2rem}.w-fit{width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}.w-20{width:5rem}.w-\[204px\]{width:204px}.w-14{width:3.5rem}.w-1\/5{width:20%}.w-\[82px\]{width:82px}.w-\[364px\]{width:364px}.w-\[260px\]{width:260px}.w-52{width:13rem}.w-\[3px\]{width:3px}.w-\[136px\]{width:136px}.w-\[125px\]{width:125px}.w-\[33px\]{width:33px}.w-\[558px\]{width:558px}.w-12{width:3rem}.w-4{width:1rem}.w-\[354px\]{width:354px}.w-\[70px\]{width:70px}.w-\[2px\]{width:2px}.w-\[100px\]{width:100px}.w-\[276px\]{width:276px}.w-\[22px\]{width:22px}.w-\[158px\]{width:158px}.w-\[36px\]{width:36px}.w-5{width:1.25rem}.w-3{width:.75rem}.w-\[1280px\]{width:1280px}.w-\[214px\]{width:214px}.w-\[76px\]{width:76px}.w-2{width:.5rem}.w-1\.5{width:.375rem}.w-1{width:.25rem}.w-\[7px\]{width:7px}.w-10{width:2.5rem}.w-\[20px\]{width:20px}.min-w-\[50px\]{min-width:50px}.min-w-\[160px\]{min-width:160px}.min-w-\[387px\]{min-width:387px}.min-w-\[322px\]{min-width:322px}.min-w-\[24px\]{min-width:24px}.min-w-\[402px\]{min-width:402px}.min-w-\[63px\]{min-width:63px}.min-w-\[364px\]{min-width:364px}.min-w-\[260px\]{min-width:260px}.min-w-\[32px\]{min-width:32px}.min-w-full{min-width:100%}.min-w-\[460px\]{min-width:460px}.min-w-6{min-width:1.5rem}.min-w-\[120px\]{min-width:120px}.min-w-\[92px\]{min-width:92px}.min-w-\[168px\]{min-width:168px}.min-w-\[80\%\]{min-width:80%}.min-w-12{min-width:3rem}.min-w-\[354px\]{min-width:354px}.min-w-\[277px\]{min-width:277px}.min-w-\[524px\]{min-width:524px}.min-w-\[70px\]{min-width:70px}.min-w-\[100px\]{min-width:100px}.min-w-\[22px\]{min-width:22px}.min-w-4{min-width:1rem}.min-w-\[214px\]{min-width:214px}.min-w-2{min-width:.5rem}.min-w-1\.5{min-width:.375rem}.min-w-1{min-width:.25rem}.min-w-\[7px\]{min-width:7px}.max-w-\[47rem\]{max-width:47rem}.max-w-\[500px\]{max-width:500px}.max-w-\[488px\]{max-width:488px}.max-w-\[292px\]{max-width:292px}.max-w-\[600px\]{max-width:600px}.max-w-\[308px\]{max-width:308px}.max-w-\[509px\]{max-width:509px}.max-w-\[calc\(100\%-186px\)\]{max-width:calc(100% - 186px)}.max-w-\[236px\]{max-width:236px}.max-w-\[752px\]{max-width:752px}.max-w-\[240px\]{max-width:240px}.max-w-\[170px\]{max-width:170px}.flex-1{flex:1 1 0%}.flex-none{flex:none}.flex-shrink-0,.shrink-0{flex-shrink:0}.flex-grow,.grow{flex-grow:1}.grow-0{flex-grow:0}.basis-1\/2{flex-basis:50%}.basis-full{flex-basis:100%}.basis-\[calc\(50\%-20px\)\]{flex-basis:calc(50% - 20px)}.basis-0{flex-basis:0px}.origin-top{transform-origin:top}.-translate-x-8{--tw-translate-x:-2rem}.-translate-x-8,.rotate-180{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate:180deg}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@-webkit-keyframes expansion{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes expansion{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.animate-expansion{-webkit-animation:expansion .3s ease-out;animation:expansion .3s ease-out}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize{resize:both}.snap-center{scroll-snap-align:center}.snap-always{scroll-snap-stop:always}.scroll-mt-12{scroll-margin-top:3rem}.list-none{list-style-type:none}.list-disc{list-style-type:disc}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.auto-rows-auto{grid-auto-rows:auto}.grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-\[max-content_1fr\]{grid-template-columns:-webkit-max-content 1fr;grid-template-columns:max-content 1fr}.grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.content-center{align-content:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3\.5{gap:.875rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-\[18px\]{gap:18px}.gap-\[54px\]{gap:54px}.gap-5{gap:1.25rem}.gap-2\.5{gap:.625rem}.gap-\[14px\]{gap:14px}.gap-\[122px\]{gap:122px}.gap-6{gap:1.5rem}.gap-\[6px\]{gap:6px}.gap-0\.5{gap:.125rem}.gap-0{gap:0}.gap-8{gap:2rem}.gap-x-20{-moz-column-gap:5rem;column-gap:5rem}.gap-x-5{-moz-column-gap:1.25rem;column-gap:1.25rem}.gap-y-\[26px\]{row-gap:26px}.gap-x-6{-moz-column-gap:1.5rem;column-gap:1.5rem}.gap-y-2\.5{row-gap:.625rem}.gap-y-2{row-gap:.5rem}.gap-x-\[101px\]{-moz-column-gap:101px;column-gap:101px}.gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.gap-x-1{-moz-column-gap:.25rem;column-gap:.25rem}.self-start{align-self:flex-start}.self-end{align-self:flex-end}.self-center{align-self:center}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-hidden{overflow-x:hidden}.overflow-y-hidden{overflow-y:hidden}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-md{border-radius:.375rem}.rounded-\[40px\]{border-radius:40px}.rounded-none{border-radius:0}.rounded-t-md{border-top-left-radius:.375rem;border-top-right-radius:.375rem}.rounded-b-md{border-bottom-left-radius:.375rem;border-bottom-right-radius:.375rem}.rounded-tl-lg{border-top-left-radius:.5rem}.border{border-width:1px}.border-0{border-width:0}.border-\[1px\]{border-width:1px}.border-2{border-width:2px}.border-y-0{border-bottom-width:0;border-top-width:0}.border-x-0{border-left-width:0;border-right-width:0}.border-y{border-top-width:1px}.border-b,.border-y{border-bottom-width:1px}.border-b-0{border-bottom-width:0}.border-t-0{border-top-width:0}.border-t{border-top-width:1px}.border-r,.border-r-\[1px\]{border-right-width:1px}.border-solid{border-style:solid}.border-none{border-style:none}.border-main-divider{--tw-border-opacity:1;border-color:rgba(235,237,240,var(--tw-border-opacity))}.border-gray,.border-main-stroke{--tw-border-opacity:1;border-color:rgba(201,202,204,var(--tw-border-opacity))}.border-primary-main{--tw-border-opacity:1;border-color:rgba(var(--color-primary-main),var(--tw-border-opacity))}.border-main{--tw-border-opacity:1;border-color:rgba(240,244,240,var(--tw-border-opacity))}.border-white{--tw-border-opacity:1;border-color:rgb(255 255 255/var(--tw-border-opacity))}.border-secondary-hover{--tw-border-opacity:1;border-color:rgba(var(--color-secondary-hover),var(--tw-border-opacity))}.border-white\/50{border-color:hsla(0,0%,100%,.5) ;}.border-black\/50{border-color:rgba(0,0,0,.5)}.border-transparent{border-color:transparent}.border-black{--tw-border-opacity:1;border-color:rgb(0 0 0/var(--tw-border-opacity))}.border-y-main-divider{--tw-border-opacity:1;border-bottom-color:rgba(235,237,240,var(--tw-border-opacity));border-top-color:rgba(235,237,240,var(--tw-border-opacity))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.bg-primary-main{--tw-bg-opacity:1;background-color:rgba(var(--color-primary-main),var(--tw-bg-opacity))}.bg-transparent{background-color:transparent}.bg-main-divider{--tw-bg-opacity:1;background-color:rgba(235,237,240,var(--tw-bg-opacity))}.bg-white\/30{background-color:hsla(0,0%,100%,.3)}.bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity))}.bg-secondary-text{--tw-bg-opacity:1;background-color:rgba(125,126,127,var(--tw-bg-opacity))}.bg-main{--tw-bg-opacity:1;background-color:rgba(240,244,240,var(--tw-bg-opacity))}.bg-secondary-light{--tw-bg-opacity:1;background-color:rgba(245,247,249,var(--tw-bg-opacity))}.bg-primary-text{--tw-bg-opacity:1;background-color:rgba(28,28,28,var(--tw-bg-opacity))}.bg-main-divider\/20{background-color:rgba(235,237,240,.2)}.bg-inherit{background-color:inherit}.bg-white\/10{background-color:hsla(0,0%,100%,.1) ;}.bg-primary-main\/10{background-color:rgba(var(--color-primary-main),.1)}.bg-secondary-dark{--tw-bg-opacity:1;background-color:rgba(226,228,229,var(--tw-bg-opacity))}.bg-slate-100{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity))}.bg-main-stroke{--tw-bg-opacity:1;background-color:rgba(201,202,204,var(--tw-bg-opacity))}.bg-green-to-yellow{background-image:linear-gradient(180deg,#42ab44,#f6db7d)}.bg-opacity-from-white{background-image:linear-gradient(90deg,#fff,hsla(0,0%,100%,.7) 25%,hsla(0,0%,100%,0) 80%);}.bg-opacity-to-white{background-image:linear-gradient(270deg,#fff 34.89%,hsla(0,0%,100%,0) 92.52%);}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.bg-opacity-from-main{background-image:linear-gradient(90deg,rgba(var(--color-primary-main),1) 0,rgba(var(--color-primary-main),0) 80%);}.bg-opacity-to-main{background-image:linear-gradient(270deg,rgba(var(--color-primary-main),1) 34.89%,rgba(var(--color-primary-main),0) 92.52%);}.from-main-gradient-start{--tw-gradient-from:rgba(var(--color-gradient-from),1);--tw-gradient-to:rgba(var(--color-gradient-from),0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-white{--tw-gradient-from:#fff;--tw-gradient-to:hsla(0,0%,100%,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.to-main-gradient-end{--tw-gradient-to:rgba(var(--color-gradient-to),1)}.to-transparent{--tw-gradient-to:transparent}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.p-0{padding:0}.p-\[50px\]{padding:50px}.p-4{padding:1rem}.\!p-0{padding:0!important}.p-12{padding:3rem}.p-3{padding:.75rem}.p-5{padding:1.25rem}.p-9{padding:2.25rem}.p-\[30px\]{padding:30px}.p-6{padding:1.5rem}.p-\[42px\]{padding:42px}.p-1\.5{padding:.375rem}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3\.5{padding:.875rem}.p-14{padding:3.5rem}.p-7{padding:1.75rem}.p-\[26px\]{padding:26px}.p-\[10px\]{padding:10px}.py-6{padding-bottom:1.5rem;padding-top:1.5rem}.px-4{padding-left:1rem;padding-right:1rem}.py-\[14px\]{padding-bottom:14px;padding-top:14px}.px-0{padding-left:0;padding-right:0}.\!px-0{padding-left:0!important;padding-right:0!important}.px-5{padding-left:1.25rem;padding-right:1.25rem}.py-4{padding-bottom:1rem;padding-top:1rem}.py-\[50px\]{padding-bottom:50px;padding-top:50px}.py-\[11px\]{padding-bottom:11px;padding-top:11px}.px-7{padding-left:1.75rem;padding-right:1.75rem}.py-3\.5{padding-bottom:.875rem;padding-top:.875rem}.py-3{padding-bottom:.75rem;padding-top:.75rem}.py-7{padding-bottom:1.75rem;padding-top:1.75rem}.py-\[26px\]{padding-bottom:26px;padding-top:26px}.py-5{padding-bottom:1.25rem;padding-top:1.25rem}.py-0{padding-bottom:0;padding-top:0}.px-20{padding-left:5rem;padding-right:5rem}.px-\[50px\]{padding-left:50px;padding-right:50px}.py-2\.5{padding-bottom:.625rem;padding-top:.625rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.py-1\.5{padding-bottom:.375rem;padding-top:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.py-1{padding-bottom:.25rem;padding-top:.25rem}.px-\[26px\]{padding-left:26px;padding-right:26px}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-12{padding-bottom:3rem;padding-top:3rem}.px-10{padding-left:2.5rem;padding-right:2.5rem}.py-0\.5{padding-bottom:.125rem;padding-top:.125rem}.px-\[70px\]{padding-left:70px;padding-right:70px}.px-\[88px\]{padding-left:88px;padding-right:88px}.py-\[18px\]{padding-bottom:18px;padding-top:18px}.px-9{padding-left:2.25rem;padding-right:2.25rem}.pr-2\.5{padding-right:.625rem}.pr-2{padding-right:.5rem}.pt-5{padding-top:1.25rem}.pb-3\.5{padding-bottom:.875rem}.pb-3{padding-bottom:.75rem}.pr-9{padding-right:2.25rem}.pr-\[4\.75rem\]{padding-right:4.75rem}.pr-\[9\.4rem\]{padding-right:9.4rem}.pl-6{padding-left:1.5rem}.pb-9{padding-bottom:2.25rem}.pl-9{padding-left:2.25rem}.pt-9{padding-top:2.25rem}.pr-6{padding-right:1.5rem}.pb-6{padding-bottom:1.5rem}.pt-7{padding-top:1.75rem}.pl-\[50px\]{padding-left:50px}.pr-\[50px\]{padding-right:50px}.pb-\[46px\]{padding-bottom:46px}.pt-6{padding-top:1.5rem}.pl-11{padding-left:2.75rem}.pb-1{padding-bottom:.25rem}.pt-4{padding-top:1rem}.pt-2{padding-top:.5rem}.pl-4{padding-left:1rem}.pb-4{padding-bottom:1rem}.pr-1{padding-right:.25rem}.pl-2\.5{padding-left:.625rem}.pl-2{padding-left:.5rem}.pb-\[30px\]{padding-bottom:30px}.pt-\[3px\]{padding-top:3px}.pt-3{padding-top:.75rem}.pt-2\.5{padding-top:.625rem}.pr-\[11px\]{padding-right:11px}.pr-3{padding-right:.75rem}.pb-2{padding-bottom:.5rem}.pb-5{padding-bottom:1.25rem}.pl-0\.5{padding-left:.125rem}.pl-0{padding-left:0}.pr-4{padding-right:1rem}.pb-12{padding-bottom:3rem}.pl-3{padding-left:.75rem}.pt-\[50px\]{padding-top:50px}.pb-14{padding-bottom:3.5rem}.pb-\[23px\]{padding-bottom:23px}.pt-\[42px\]{padding-top:42px}.pb-0{padding-bottom:0}.pt-10{padding-top:2.5rem}.pr-0{padding-right:0}.pl-10{padding-left:2.5rem}.pt-1\.5{padding-top:.375rem}.pl-1{padding-left:.25rem}.pt-1{padding-top:.25rem}.pt-0\.5{padding-top:.125rem}.pt-0{padding-top:0}.pr-28{padding-right:7rem}.pl-12{padding-left:3rem}.pr-\[6\%\]{padding-right:6%}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.align-top{vertical-align:top}.align-middle{vertical-align:middle}.font-sans{font-family:Ubuntu,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.font-mohave{font-family:Mohave,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.text-m-light{font-size:.9375rem;font-weight:300;line-height:1.25rem}.text-l{font-size:1rem;font-weight:400;line-height:1.5rem}.text-m-title-xs{font-size:1.0625rem;line-height:1.375rem}.text-h6{font-size:1.25rem;font-weight:400;line-height:1.75rem}.text-xl{font-size:1.125rem;font-weight:400;line-height:1.5rem}.text-l-light{font-size:1rem;font-weight:300;line-height:1.5rem}.text-h4{font-size:1.75rem;font-weight:400;line-height:2.25rem}.text-xl-light{font-size:1.125rem;font-weight:300;line-height:1.5rem}.text-title-extra{font-size:15.625rem;line-height:14.687rem}.text-\[44px\]{font-size:44px}.text-m{font-size:.9375rem;font-weight:400;line-height:1.25rem}.text-h3{font-size:2rem;font-weight:400;line-height:2.5rem}.text-title-huge{font-size:12.5rem;line-height:15.625rem}.text-\[65px\]{font-size:65px}.text-xs-light{font-size:.75rem;font-weight:300;line-height:1.125rem}.text-s{font-weight:400}.text-s,.text-s-light{font-size:.875rem;line-height:1.25rem}.text-s-light{font-weight:300}.text-h5{font-size:1.5rem;font-weight:400;line-height:1.875rem}.text-m-title{font-size:1.375rem;line-height:1.8125rem}.text-xs{font-size:.75rem;line-height:1rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-h0{font-size:3.5rem;font-weight:400;line-height:3.5rem}.text-h1{font-size:3.125rem;font-weight:400;line-height:3.25rem}.text-h2{font-size:2.5rem;font-weight:400;line-height:3rem}.text-h5-light{font-size:1.5rem;font-weight:300;line-height:1.875rem}.font-medium{font-weight:500}.font-light{font-weight:300}.leading-\[75px\]{line-height:75px}.leading-5{line-height:1.25rem}.leading-\[18px\]{line-height:18px}.-tracking-\[5px\]{letter-spacing:-5px}.tracking-\[-14px\]{letter-spacing:-14px}.tracking-\[-25px\]{letter-spacing:-25px}.text-primary-text{--tw-text-opacity:1;color:rgba(28,28,28,var(--tw-text-opacity))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.text-primary-main{--tw-text-opacity:1;color:rgba(var(--color-primary-main),var(--tw-text-opacity))}.text-secondary-text{--tw-text-opacity:1;color:rgba(125,126,127,var(--tw-text-opacity))}.text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity))}.text-transparent{color:transparent}.text-secondary-text\/80{color:hsla(210,1%,49%,.8)}.text-white\/80{color:hsla(0,0%,100%,.8)}.\!text-secondary-text{--tw-text-opacity:1!important;color:rgba(125,126,127,var(--tw-text-opacity))!important}.text-secondary-light{--tw-text-opacity:1;color:rgba(245,247,249,var(--tw-text-opacity))}.no-underline{-webkit-text-decoration-line:none;text-decoration-line:none}.placeholder-transparent::-moz-placeholder{color:transparent}.placeholder-transparent::placeholder{color:transparent}.opacity-80{opacity:.8}.opacity-30{opacity:.3}.opacity-0{opacity:0}.shadow-\[0_8px_32px_0px_\#00000014\]{--tw-shadow:0 8px 32px 0px #00000014;--tw-shadow-colored:0 8px 32px 0px var(--tw-shadow-color)}.shadow-\[0_8px_32px_0px_\#00000014\],.shadow-blue-gray\/24{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-blue-gray\/24{--tw-shadow:0 14px 36px -4px rgba(21,40,90,.24) ;;--tw-shadow-colored:0 14px 36px -4px var(--tw-shadow-color)}.shadow-dark-blue\/42{--tw-shadow:0 18px 36px -4px rgba(24,39,75,.42) ;;--tw-shadow-colored:0 18px 36px -4px var(--tw-shadow-color)}.shadow-\[0_4px_25px_rgba\(0\2c 0\2c 0\2c 0\.07\)\],.shadow-dark-blue\/42{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-\[0_4px_25px_rgba\(0\2c 0\2c 0\2c 0\.07\)\]{--tw-shadow:0 4px 25px rgba(0,0,0,.07);--tw-shadow-colored:0 4px 25px var(--tw-shadow-color)}.outline-none{outline:2px solid transparent;outline-offset:2px}.invert{--tw-invert:invert(100%)}.filter,.invert{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-height{transition-duration:.15s;transition-property:height;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-300{transition-duration:.3s}.duration-1000{transition-duration:1s}.duration-500{transition-duration:.5s}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.rotate-180{transform:rotate(180deg)}.no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.horizontal-list{-webkit-overflow-scrolling:touch;display:flex;overflow-x:scroll;scroll-snap-type:x mandatory}.horizontal-list-item{flex-shrink:0;scroll-snap-align:start;scroll-snap-stop:always;width:100%}.calc-rate-text{-webkit-text-fill-color:transparent;text-fill-color:transparent;background:linear-gradient(180deg,#42ab44,#f6db7d);-webkit-background-clip:text}input[type=range].slider{-webkit-appearance:none;background:transparent;background-image:linear-gradient(rgb(var(--color-primary-main)),rgb(var(--color-primary-main)));background-repeat:no-repeat;border-radius:5px;height:4px}input[type=range].slider::-webkit-slider-thumb{-webkit-appearance:none;background:rgb(var(--color-primary-main));border-radius:50%;box-shadow:none;cursor:pointer;height:18px;width:18px}input[type=range].slider::-moz-range-thumb{background:rgb(var(--color-primary-main));border-radius:50%;box-shadow:none;cursor:pointer;height:12px;width:12px}input[type=range].slider::-ms-thumb{background:rgb(var(--color-primary-main));border-radius:50%;box-shadow:none;cursor:pointer;height:18px;width:18px}input[type=range].slider:disabled{background-image:linear-gradient(#c9cacc,#c9cacc);cursor:default;pointer-events:none}input[type=range].slider:disabled::-webkit-slider-thumb{background:#c9cacc}input[type=range].slider:disabled::-moz-range-thumb{background:#c9cacc}input[type=range].slider:disabled::-ms-thumb{background:#c9cacc}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}.after\:block:after{content:var(--tw-content);display:block}.after\:h-2\.5:after{content:var(--tw-content);height:.625rem}.after\:h-2:after{content:var(--tw-content);height:.5rem}.after\:w-2\.5:after{content:var(--tw-content);width:.625rem}.after\:w-2:after{content:var(--tw-content);width:.5rem}.after\:rounded-full:after{border-radius:9999px;content:var(--tw-content)}.first\:mt-0:first-child{margin-top:0}.first\:rounded-tl-md:first-child{border-top-left-radius:.375rem}.first\:rounded-bl-md:first-child{border-bottom-left-radius:.375rem}.first\:pt-7:first-child{padding-top:1.75rem}.first\:pl-0:first-child{padding-left:0}.first\:pt-5:first-child{padding-top:1.25rem}.last\:mb-0:last-child{margin-bottom:0}.last\:mr-0:last-child{margin-right:0}.last\:w-1\/4:last-child{width:25%}.last\:rounded-tr-md:last-child{border-top-right-radius:.375rem}.last\:rounded-br-md:last-child{border-bottom-right-radius:.375rem}.last\:border-b-0:last-child{border-bottom-width:0}.last\:border-r-0:last-child{border-right-width:0}.last\:pb-7:last-child{padding-bottom:1.75rem}.last\:pr-0:last-child{padding-right:0}.last\:pb-5:last-child{padding-bottom:1.25rem}.odd\:ml-0:nth-child(odd){margin-left:0}.odd\:bg-main-divider:nth-child(odd){--tw-bg-opacity:1;background-color:rgba(235,237,240,var(--tw-bg-opacity))}.last\:odd\:mx-0:nth-child(odd):last-child{margin-left:0;margin-right:0}.even\:mr-0:nth-child(2n){margin-right:0}.visited\:text-secondary-text:visited{color:rgba(125,126,127,var(--tw-text-opacity))}.checked\:border-primary-main:checked{--tw-border-opacity:1;border-color:rgba(var(--color-primary-main),var(--tw-border-opacity))}.checked\:after\:bg-primary-main:checked:after,.checked\:bg-primary-main:checked{--tw-bg-opacity:1;background-color:rgba(var(--color-primary-main),var(--tw-bg-opacity))}.checked\:after\:bg-primary-main:checked:after{content:var(--tw-content)}.hover\:h-\[88px\]:hover{height:88px}.hover\:border-primary-main:hover{--tw-border-opacity:1;border-color:rgba(var(--color-primary-main),var(--tw-border-opacity))}.hover\:border-transparent:hover{border-color:transparent}.hover\:border-primary-hover:hover{border-color:#868686 ;}.hover\:bg-secondary-hover:hover{--tw-bg-opacity:1;background-color:rgba(var(--color-secondary-hover),var(--tw-bg-opacity))}.hover\:bg-primary-main:hover{--tw-bg-opacity:1;background-color:rgba(var(--color-primary-main),var(--tw-bg-opacity))}.hover\:bg-primary-hover:hover{--tw-bg-opacity:1;background-color:rgba(var(--color-primary-hover),var(--tw-bg-opacity))}.hover\:py-\[26px\]:hover{padding-bottom:26px;padding-top:26px}.hover\:text-primary-main:hover{--tw-text-opacity:1;color:rgba(var(--color-primary-main),var(--tw-text-opacity))}.hover\:text-black:hover{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity))}.hover\:text-secondary-hover:hover{--tw-text-opacity:1;color:rgba(var(--color-secondary-hover),var(--tw-text-opacity))}.hover\:text-white:hover{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.hover\:text-primary-hover:hover{--tw-text-opacity:1;color:rgba(var(--color-primary-hover),var(--tw-text-opacity))}.focus\:border:focus{border-width:1px}.focus\:border-primary-focus:focus{border-color:#1c1c1c ;}.focus\:border-primary-text:focus{--tw-border-opacity:1;border-color:rgba(28,28,28,var(--tw-border-opacity))}.active\:bg-secondary-active:active{--tw-bg-opacity:1;background-color:rgba(var(--color-secondary-active),var(--tw-bg-opacity))}.active\:bg-primary-active:active{--tw-bg-opacity:1;background-color:rgba(var(--color-primary-active),var(--tw-bg-opacity))}.disabled\:border-main-stroke:disabled{--tw-border-opacity:1;border-color:rgba(201,202,204,var(--tw-border-opacity))}.disabled\:bg-main-divider:disabled{--tw-bg-opacity:1;background-color:rgba(235,237,240,var(--tw-bg-opacity))}.group:last-child .group-last\:last\:pb-0:last-child{padding-bottom:0}.group:hover .group-hover\:border-checkbox-hover{border-color:#868686 ;}.group:hover .group-hover\:text-primary-main{--tw-text-opacity:1;color:rgba(var(--color-primary-main),var(--tw-text-opacity))}.group:hover .group-hover\:text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.group:hover .group-hover\:text-primary-hover{--tw-text-opacity:1;color:rgba(var(--color-primary-hover),var(--tw-text-opacity))}.group:hover .group-hover\:invert-0{--tw-invert:invert(0);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.peer:checked~.peer-checked\:block{display:block}.peer:-moz-placeholder-shown~.peer-placeholder-shown\:invisible{visibility:hidden}.peer:placeholder-shown~.peer-placeholder-shown\:invisible{visibility:hidden}.peer:focus~.peer-focus\:visible{visibility:visible}@media (min-width:1280px) and (max-width:1535px){.xl\:gap-8{gap:2rem}.xl\:gap-5{gap:1.25rem}}
@@ -3,5 +3,7 @@ declare const _default: {
3
3
  'desc-img': JSX.Element;
4
4
  'desc-icon': JSX.Element;
5
5
  list: JSX.Element;
6
+ 'list-green': JSX.Element;
7
+ 'desc-icon-green': JSX.Element;
6
8
  };
7
9
  export default _default;
@@ -3,22 +3,45 @@ import { JSX } from '@redneckz/uni-jsx';
3
3
  import { BlockWrapper } from '../../ui-kit/BlockWrapper.js';
4
4
  import { Heading } from '../../ui-kit/Heading/Heading.js';
5
5
  import { Img } from '../../ui-kit/Img/Img.js';
6
- export const BenefitsBlock = JSX(({ className = '', title, benefitList, ...rest }) => {
7
- return (_jsxs(BlockWrapper, { className: `font-sans text-primary-text bg-white p-12 flex flex-col items-center ${className}`, ...rest, children: [title ? (_jsx(Heading, { headingType: "h3", as: "h2", className: "max-w-[47rem] text-center", title: title })) : null, benefitList?.length ? renderBenefits(benefitList) : null] }));
6
+ const benefitsBlockStyleMap = {
7
+ primary: 'bg-white',
8
+ secondary: 'bg-primary-main',
9
+ };
10
+ const benefitsTextStyleMap = {
11
+ primary: '',
12
+ secondary: 'text-white',
13
+ };
14
+ const benefitsDescriptionStyleMap = {
15
+ primary: 'text-secondary-text',
16
+ secondary: 'text-white opacity-80',
17
+ };
18
+ const benefitsIconStyleMap = {
19
+ primary: 'bg-main-divider text-primary-main',
20
+ secondary: 'bg-white/30 text-black',
21
+ };
22
+ export const BenefitsBlock = JSX(({ className = '', title, benefitList, benefitsBlockVersion = 'primary', ...rest }) => {
23
+ return (_jsxs(BlockWrapper, { className: `font-sans text-primary-text p-12 flex flex-col items-center ${className} ${benefitsBlockStyleMap[benefitsBlockVersion]}`, ...rest, children: [title ? (_jsx(Heading, { headingType: "h3", as: "h2", className: `max-w-[47rem] text-center ${benefitsTextStyleMap[benefitsBlockVersion]}`, title: title })) : null, benefitList?.length ? renderBenefits(benefitList, benefitsBlockVersion) : null] }));
8
24
  });
9
- const renderBenefits = (benefits) => {
10
- return (_jsx("div", { className: "flex flex-wrap w-full justify-center gap-x-20 mt-8", children: benefits.map(renderStep) }));
25
+ const renderBenefits = (benefitList, benefitsBlockVersion) => {
26
+ return (_jsx("div", { className: "flex flex-wrap w-full justify-center gap-x-20 mt-8", children: benefitList.map(renderStep(benefitsBlockVersion)) }));
27
+ };
28
+ const setIconVersion = (benefitIcon, benefitsBlockVersion) => {
29
+ if (!benefitIcon.icon) {
30
+ return benefitIcon;
31
+ }
32
+ benefitIcon.iconVersion = benefitsBlockVersion === 'secondary' ? 'white' : 'normal';
33
+ return benefitIcon;
11
34
  };
12
- const renderStep = (benefit, i) => {
13
- const description = benefit?.description || undefined;
14
- return (_jsxs("div", { className: "flex items-center basis-1/2 max-w-[500px] mb-14", children: [benefit?.icon?.icon ? (_jsx(Img, { className: "w-[50px] h-[50px] min-w-[50px] p-3 rounded-full bg-main-divider", image: benefit.icon, asSVG: true })) : null, benefit?.icon?.src ? _jsx(Img, { image: benefit.icon }) : null, _jsxs("div", { className: "ml-5", children: [benefit?.label ? _jsx("h3", { className: "text-h6 m-0", children: benefit.label }) : null, renderDescription(description)] })] }, String(i)));
35
+ const renderStep = (benefitsBlockVersion) => (benefit, i) => {
36
+ const description = (benefit?.description || undefined);
37
+ return (_jsxs("div", { className: "flex items-center basis-1/2 max-w-[500px] mb-14", children: [benefit?.icon?.icon ? (_jsx(Img, { className: `w-[50px] h-[50px] min-w-[50px] p-3 rounded-full ${benefitsIconStyleMap[benefitsBlockVersion]}`, image: setIconVersion(benefit.icon, benefitsBlockVersion), asSVG: true })) : null, benefit?.icon?.src ? _jsx(Img, { image: benefit.icon }) : null, _jsxs("div", { className: "ml-5", children: [benefit?.label ? (_jsx("h3", { className: `text-h6 m-0 ${benefitsTextStyleMap[benefitsBlockVersion]}`, children: benefit.label })) : null, renderDescription(description, benefitsBlockVersion)] })] }, String(i)));
15
38
  };
16
- const renderDescription = (description) => {
39
+ const renderDescription = (description, benefitsBlockVersion) => {
17
40
  const benefitType = description ? description?.benefitType : null;
18
41
  if (!benefitType) {
19
42
  return null;
20
43
  }
21
- return description ? (_jsx("div", { className: "text-l-light text-secondary-text mt-2", children: benefitType === 'list'
44
+ return description ? (_jsx("div", { className: `text-l-light mt-2 ${benefitsDescriptionStyleMap[benefitsBlockVersion]}`, children: benefitType === 'list'
22
45
  ? renderListBenefit(description)
23
46
  : renderTextBenefit(description) })) : null;
24
47
  };
@@ -1 +1 @@
1
- {"version":3,"file":"BenefitsBlock.js","sourceRoot":"","sources":["../../../src/components/BenefitsBlock/BenefitsBlock.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AACvD,OAAO,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAC;AAM3C,MAAM,CAAC,MAAM,aAAa,GAAG,GAAG,CAC9B,CAAC,EAAE,SAAS,GAAG,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE;IAClD,OAAO,CACL,MAAC,YAAY,IACX,SAAS,EAAE,wEAAwE,SAAS,EAAE,KAC1F,IAAI,aAEP,KAAK,CAAC,CAAC,CAAC,CACP,KAAC,OAAO,IAAC,WAAW,EAAC,IAAI,EAAC,EAAE,EAAC,IAAI,EAAC,SAAS,EAAC,2BAA2B,EAAC,KAAK,EAAE,KAAK,GAAI,CACzF,CAAC,CAAC,CAAC,IAAI,EACP,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,IAC5C,CAChB,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,MAAM,cAAc,GAAG,CAAC,QAA4B,EAAE,EAAE;IACtD,OAAO,CACL,cAAK,SAAS,EAAC,oDAAoD,YAChE,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,GACrB,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CAAC,OAAyB,EAAE,CAAS,EAAE,EAAE;IAC1D,MAAM,WAAW,GAAG,OAAO,EAAE,WAAW,IAAI,SAAS,CAAC;IAEtD,OAAO,CACL,eAAqB,SAAS,EAAC,iDAAiD,aAC7E,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CACrB,KAAC,GAAG,IACF,SAAS,EAAC,iEAAiE,EAC3E,KAAK,EAAE,OAAO,CAAC,IAAI,EACnB,KAAK,SACL,CACH,CAAC,CAAC,CAAC,IAAI,EACP,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,KAAC,GAAG,IAAC,KAAK,EAAE,OAAO,CAAC,IAAI,GAAI,CAAC,CAAC,CAAC,IAAI,EACzD,eAAK,SAAS,EAAC,MAAM,aAClB,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,aAAI,SAAS,EAAC,aAAa,YAAE,OAAO,CAAC,KAAK,GAAM,CAAC,CAAC,CAAC,IAAI,EACxE,iBAAiB,CAAC,WAAW,CAAC,IAC3B,KAZE,MAAM,CAAC,CAAC,CAAC,CAab,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAC,WAA4B,EAAE,EAAE;IACzD,MAAM,WAAW,GAAG,WAAW,CAAC,CAAC,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC;IAClE,IAAI,CAAC,WAAW,EAAE;QAChB,OAAO,IAAI,CAAC;KACb;IAED,OAAO,WAAW,CAAC,CAAC,CAAC,CACnB,cAAK,SAAS,EAAC,uCAAuC,YACnD,WAAW,KAAK,MAAM;YACrB,CAAC,CAAC,iBAAiB,CAAC,WAA6B,CAAC;YAClD,CAAC,CAAC,iBAAiB,CAAC,WAA6B,CAAC,GAChD,CACP,CAAC,CAAC,CAAC,IAAI,CAAC;AACX,CAAC,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAC,WAA4B,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;AAEpG,MAAM,iBAAiB,GAAG,CAAC,WAA4B,EAAE,EAAE;IACzD,MAAM,aAAa,GAAG,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC;IAEnE,OAAO,WAAW,EAAE,KAAK,IAAI,WAAW,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAC1D,aAAI,SAAS,EAAE,aAAa,YACzB,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAC/B,uBAAkC,CAAC,IAA1B,mBAAmB,CAAC,EAAE,CAAU,CAC1C,CAAC,GACC,CACN,CAAC,CAAC,CAAC,IAAI,CAAC;AACX,CAAC,CAAC"}
1
+ {"version":3,"file":"BenefitsBlock.js","sourceRoot":"","sources":["../../../src/components/BenefitsBlock/BenefitsBlock.tsx"],"names":[],"mappings":"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"}
@@ -33,13 +33,18 @@ export declare type DescriptionDef = EmptyOption | TextBenefitDef | ListBenefitD
33
33
  /**
34
34
  * @title Преимущество
35
35
  */
36
- export interface BenefitItemProps {
36
+ export interface BenefitBlockItemProps {
37
37
  /** @title Название */
38
38
  label?: string;
39
39
  /** @title Описание */
40
40
  description?: DescriptionDef;
41
41
  icon?: Picture;
42
42
  }
43
+ /**
44
+ * @title Цвет блока
45
+ * @enumNames ["Основная", "Второстепенная"]
46
+ */
47
+ export declare type BenefitsBlockVersion = 'primary' | 'secondary';
43
48
  /**
44
49
  * @title Блок преимущества
45
50
  */
@@ -48,5 +53,7 @@ export declare type BenefitsBlockContent = TitleProps & {
48
53
  * @title Список преимуществ
49
54
  * @maxItems 6
50
55
  */
51
- benefitList?: BenefitItemProps[];
56
+ benefitList?: BenefitBlockItemProps[];
57
+ /** @default primary */
58
+ benefitsBlockVersion?: BenefitsBlockVersion;
52
59
  };
@@ -9,12 +9,17 @@ export async function transformContentPage(pagePath, options) {
9
9
  // eslint-disable-next-line @typescript-eslint/no-unsafe-argument
10
10
  return mapJSON(JSON.parse(content), async (value, [key]) => {
11
11
  const isMarkdown = typeof value === 'string' && key?.endsWith('__md');
12
- const isPicture = value && isLocalPath(value?.src);
13
12
  if (isMarkdown) {
14
13
  return await transformMarkdown(value);
15
14
  }
16
- else if (isPicture) {
17
- return await transformPicture(pagePath, value, options);
15
+ else if (isPicture(value)) {
16
+ try {
17
+ return await transformPicture(pagePath, value, options);
18
+ }
19
+ catch (ex) {
20
+ console.warn('Error while transforming picture on page: %s', pagePath);
21
+ console.error(ex);
22
+ }
18
23
  }
19
24
  return value;
20
25
  });
@@ -22,4 +27,5 @@ export async function transformContentPage(pagePath, options) {
22
27
  const isLocalPath = (_) => isString(_) && _.length < 512 && !isURL(_);
23
28
  const isString = (_) => Boolean(_ && typeof _ === 'string');
24
29
  const isURL = (src) => ['data:', 'https:', 'http:'].some((proto) => src.startsWith(proto));
30
+ const isPicture = (_) => Boolean(_ && isLocalPath(_?.src));
25
31
  //# sourceMappingURL=transformContentPage.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"transformContentPage.js","sourceRoot":"","sources":["../../src/content-page-repository/transformContentPage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AAGxB,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;AAE7C,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,QAAgB,EAChB,OAA8B;IAE9B,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAEjD,iEAAiE;IACjE,OAAO,OAAO,CAAiB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,KAAU,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE;QAC9E,MAAM,UAAU,GAAG,OAAO,KAAK,KAAK,QAAQ,IAAI,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QACtE,MAAM,SAAS,GAAG,KAAK,IAAI,WAAW,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QACnD,IAAI,UAAU,EAAE;YACd,OAAO,MAAM,iBAAiB,CAAC,KAAK,CAAC,CAAC;SACvC;aAAM,IAAI,SAAS,EAAE;YACpB,OAAO,MAAM,gBAAgB,CAAC,QAAQ,EAAE,KAAgB,EAAE,OAAO,CAAC,CAAC;SACpE;QAED,OAAO,KAAK,CAAC;IACf,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,WAAW,GAAG,CAAC,CAAM,EAAW,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAEpF,MAAM,QAAQ,GAAG,CAAC,CAAM,EAAe,EAAE,CAAC,OAAO,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC;AAE9E,MAAM,KAAK,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"transformContentPage.js","sourceRoot":"","sources":["../../src/content-page-repository/transformContentPage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AAGxB,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;AAE7C,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,QAAgB,EAChB,OAA8B;IAE9B,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAEjD,iEAAiE;IACjE,OAAO,OAAO,CAAiB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,KAAU,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE;QAC9E,MAAM,UAAU,GAAG,OAAO,KAAK,KAAK,QAAQ,IAAI,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QAEtE,IAAI,UAAU,EAAE;YACd,OAAO,MAAM,iBAAiB,CAAC,KAAK,CAAC,CAAC;SACvC;aAAM,IAAI,SAAS,CAAC,KAAK,CAAC,EAAE;YAC3B,IAAI;gBACF,OAAO,MAAM,gBAAgB,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;aACzD;YAAC,OAAO,EAAE,EAAE;gBACX,OAAO,CAAC,IAAI,CAAC,8CAA8C,EAAE,QAAQ,CAAC,CAAC;gBACvE,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;aACnB;SACF;QAED,OAAO,KAAK,CAAC;IACf,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,WAAW,GAAG,CAAC,CAAM,EAAW,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAEpF,MAAM,QAAQ,GAAG,CAAC,CAAM,EAAe,EAAE,CAAC,OAAO,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC;AAE9E,MAAM,KAAK,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;AAEnG,MAAM,SAAS,GAAG,CAAC,CAAM,EAAgB,EAAE,CAAC,OAAO,CAAC,CAAC,IAAI,WAAW,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC"}
@@ -0,0 +1,11 @@
1
+ import type { ImageSize } from '../model/ImageSize';
2
+ import type { TransformationOptions } from './TransformationOptions';
3
+ import type { ImgSource } from '../model/Picture';
4
+ declare type TransformImgParams = {
5
+ pagePath: string;
6
+ src: string;
7
+ containerSize?: ImageSize;
8
+ transformationOptions: TransformationOptions & ImgSource;
9
+ };
10
+ export declare function transformImg({ pagePath, src, containerSize, transformationOptions, }: TransformImgParams): Promise<string>;
11
+ export {};
@@ -0,0 +1,94 @@
1
+ import fs from 'fs';
2
+ import path from 'path';
3
+ import util from 'util';
4
+ import sharp from 'sharp';
5
+ import { transformSrc } from './transformSrc.js';
6
+ import { isPictureSizeEmpty } from '../utils/isPictureSizeEmpty.js';
7
+ const mkdir = util.promisify(fs.mkdir);
8
+ export async function transformImg({ pagePath, src, containerSize, transformationOptions, }) {
9
+ if (!src) {
10
+ return '';
11
+ }
12
+ const { contentDir, publicDir, format, options, size, alignment } = transformationOptions;
13
+ const pageDir = path.dirname(pagePath);
14
+ const imgPath = `${pageDir}/${src}`;
15
+ let chain = sharp(imgPath);
16
+ const targetSize = getPictureSize(size, containerSize);
17
+ if (targetSize) {
18
+ chain = resizeImg(chain, targetSize, getResizeFit(targetSize));
19
+ }
20
+ if (containerSize) {
21
+ chain = resizeImg(chain, containerSize);
22
+ // Save intermediate transform result to modify further
23
+ const { data } = await chain.toBuffer({ resolveWithObject: true });
24
+ chain = resizeImg(sharp(data), getCompositionResizeSize(containerSize, targetSize), getResizeFit(targetSize));
25
+ chain = await compositeImg({ chain, containerSize, alignment });
26
+ }
27
+ if (format) {
28
+ chain = chain.toFormat(format, options);
29
+ }
30
+ const transformedSrc = transformSrc(src, transformationOptions);
31
+ const transformedImgPath = `${publicDir}/${path.relative(contentDir, `${path.dirname(pagePath)}/${transformedSrc}`)}`;
32
+ await mkdir(path.dirname(transformedImgPath), { recursive: true });
33
+ try {
34
+ await chain.toFile(transformedImgPath);
35
+ }
36
+ catch (e) {
37
+ console.error(e);
38
+ }
39
+ return transformedSrc;
40
+ }
41
+ function createBackgroundImageChain({ width, height }) {
42
+ const channels = 4;
43
+ const rgbaColor = 0x00000000;
44
+ const canvas = Buffer.alloc(width * height * channels, rgbaColor);
45
+ return sharp(canvas, { raw: { width, height, channels } });
46
+ }
47
+ function resizeImg(chain, size, options) {
48
+ return chain.resize(size?.width, size?.height, {
49
+ fit: sharp.fit.fill,
50
+ background: { r: 0, g: 0, b: 0, alpha: 0 },
51
+ ...options,
52
+ });
53
+ }
54
+ async function compositeImg({ chain, containerSize, alignment, }) {
55
+ const { data } = await chain.toBuffer({ resolveWithObject: true });
56
+ return createBackgroundImageChain(containerSize).composite([
57
+ {
58
+ input: data,
59
+ gravity: alignment,
60
+ },
61
+ ]);
62
+ }
63
+ function getPictureSize(size, containerSize) {
64
+ // If containerSize is undefined intrinsic dimensions of image will be used then.
65
+ return isPictureSizeEmpty(size) ? containerSize : size;
66
+ }
67
+ function getCompositionResizeSize(containerSize, size = {}) {
68
+ const { width, height } = size;
69
+ const { width: containerWidth, height: containerHeight } = containerSize;
70
+ let widthRatio = 0;
71
+ let heightRatio = 0;
72
+ if (!(width || height)) {
73
+ return undefined;
74
+ }
75
+ if (width) {
76
+ widthRatio = containerWidth / width;
77
+ }
78
+ if (height) {
79
+ heightRatio = containerHeight / height;
80
+ }
81
+ return widthRatio > heightRatio
82
+ ? { width: Math.min(Number(width), containerWidth) }
83
+ : { height: Math.min(Number(height), containerHeight) };
84
+ }
85
+ function getResizeFit(size) {
86
+ /*
87
+ Editor behaviour with one dimension present: resize by given dimension maintaining aspect ratio. (fit: contain)
88
+ With two dimensions present: resize trying to fill given dimensions (fit: fill)
89
+ */
90
+ return {
91
+ fit: size?.width && size?.height ? sharp.fit.fill : sharp.fit.contain,
92
+ };
93
+ }
94
+ //# sourceMappingURL=transformImg.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transformImg.js","sourceRoot":"","sources":["../../src/content-page-repository/transformImg.ts"],"names":[],"mappings":"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"}
@@ -1,55 +1,30 @@
1
- import fs from 'fs';
2
1
  import path from 'path';
3
2
  import sharp from 'sharp';
4
- import util from 'util';
5
- const mkdir = util.promisify(fs.mkdir);
3
+ import { transformImg } from './transformImg.js';
6
4
  export async function transformPicture(pagePath, picture, options) {
7
5
  const sources = picture.sources || [];
8
6
  const src = picture?.src || '';
9
- const [transformedPicture, ...transformedSources] = await Promise.all([picture].concat(sources).map((_) => transformImg(pagePath, src, { ...options, ..._ })));
7
+ const transformedPicture = await transformImg({
8
+ pagePath,
9
+ src,
10
+ transformationOptions: { ...options, ...picture },
11
+ });
12
+ const { width, height } = await sharp(path.resolve(options.publicDir, transformedPicture)).metadata();
13
+ const containerSize = width && height ? { width, height } : undefined;
14
+ const transformedSources = await Promise.all(sources.map((_) => transformImg({
15
+ pagePath,
16
+ src,
17
+ containerSize,
18
+ transformationOptions: { ...options, ..._ },
19
+ })));
10
20
  return {
11
21
  ...picture,
12
22
  src: transformedPicture,
13
23
  sources: transformedSources.map((_, i) => ({
14
24
  ...sources[i],
15
25
  src: _,
26
+ size: { width, height },
16
27
  })),
17
28
  };
18
29
  }
19
- async function transformImg(pagePath, src, transformationOptions) {
20
- const { contentDir, publicDir, format, options, size } = transformationOptions;
21
- const pageDir = path.dirname(pagePath);
22
- const imgPath = `${pageDir}/${src}`;
23
- let chain = sharp(imgPath);
24
- if (size) {
25
- chain = chain.resize(size?.width, size?.height, {
26
- fit: sharp.fit.contain,
27
- background: [0, 0, 0, 0],
28
- });
29
- }
30
- if (format) {
31
- chain = chain.toFormat(format, options);
32
- }
33
- const transformedSrc = transformSrc(src, transformationOptions);
34
- const transformedImgPath = `${publicDir}/${path.relative(contentDir, `${path.dirname(pagePath)}/${transformedSrc}`)}`;
35
- await mkdir(path.dirname(transformedImgPath), { recursive: true });
36
- try {
37
- await chain.toFile(transformedImgPath);
38
- }
39
- catch (e) {
40
- console.error(e);
41
- }
42
- return transformedSrc;
43
- }
44
- function transformSrc(src, { format, size }) {
45
- const noTransform = !format && !size;
46
- if (noTransform) {
47
- return src;
48
- }
49
- const fileName = path.basename(src, path.extname(src));
50
- const fileSizes = [size?.width, size?.height].filter(Boolean);
51
- const suffix = fileSizes.length ? `-${fileSizes.join('-')}` : '';
52
- const ext = String(format) || path.extname(src);
53
- return `${fileName}${suffix}.${ext}`;
54
- }
55
30
  //# sourceMappingURL=transformPicture.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"transformPicture.js","sourceRoot":"","sources":["../../src/content-page-repository/transformPicture.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transformPicture.js","sourceRoot":"","sources":["../../src/content-page-repository/transformPicture.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,QAAgB,EAChB,OAAgB,EAChB,OAA8B;IAE9B,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC;IACtC,MAAM,GAAG,GAAG,OAAO,EAAE,GAAG,IAAI,EAAE,CAAC;IAE/B,MAAM,kBAAkB,GAAG,MAAM,YAAY,CAAC;QAC5C,QAAQ;QACR,GAAG;QACH,qBAAqB,EAAE,EAAE,GAAG,OAAO,EAAE,GAAG,OAAO,EAAE;KAClD,CAAC,CAAC;IAEH,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,KAAK,CACnC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,kBAAkB,CAAC,CACpD,CAAC,QAAQ,EAAE,CAAC;IACb,MAAM,aAAa,GAAG,KAAK,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IAEtE,MAAM,kBAAkB,GAAG,MAAM,OAAO,CAAC,GAAG,CAC1C,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAChB,YAAY,CAAC;QACX,QAAQ;QACR,GAAG;QACH,aAAa;QACb,qBAAqB,EAAE,EAAE,GAAG,OAAO,EAAE,GAAG,CAAC,EAAE;KAC5C,CAAC,CACH,CACF,CAAC;IAEF,OAAO;QACL,GAAG,OAAO;QACV,GAAG,EAAE,kBAAkB;QACvB,OAAO,EAAE,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;YACzC,GAAG,OAAO,CAAC,CAAC,CAAC;YACb,GAAG,EAAE,CAAC;YACN,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE;SACxB,CAAC,CAAC;KACJ,CAAC;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { ImgSource } from '../model/Picture';
2
+ import type { TransformationOptions } from './TransformationOptions';
3
+ export declare function transformSrc(src: string, { format, size }: TransformationOptions & ImgSource): string;
@@ -0,0 +1,14 @@
1
+ import path from 'path';
2
+ import { isPictureSizeEmpty } from '../utils/isPictureSizeEmpty.js';
3
+ export function transformSrc(src, { format, size }) {
4
+ const noTransform = isPictureSizeEmpty(size) && !format;
5
+ if (noTransform) {
6
+ return src;
7
+ }
8
+ const fileName = path.basename(src, path.extname(src));
9
+ const fileSizes = [size?.width, size?.height].filter(Boolean);
10
+ const suffix = fileSizes.length ? `-${fileSizes.join('-')}` : '';
11
+ const ext = format ? String(format) : 'webp';
12
+ return `${fileName}${suffix}.${ext}`;
13
+ }
14
+ //# sourceMappingURL=transformSrc.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transformSrc.js","sourceRoot":"","sources":["../../src/content-page-repository/transformSrc.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AAGxB,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAEjE,MAAM,UAAU,YAAY,CAC1B,GAAW,EACX,EAAE,MAAM,EAAE,IAAI,EAAqC;IAEnD,MAAM,WAAW,GAAG,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;IACxD,IAAI,WAAW,EAAE;QACf,OAAO,GAAG,CAAC;KACZ;IAED,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;IACvD,MAAM,SAAS,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC9D,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACjE,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAE7C,OAAO,GAAG,QAAQ,GAAG,MAAM,IAAI,GAAG,EAAE,CAAC;AACvC,CAAC"}
@@ -0,0 +1,6 @@
1
+ export declare type ImageSize = {
2
+ /** @title Ширина */
3
+ width: number;
4
+ /** @title Высота */
5
+ height: number;
6
+ };
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=ImageSize.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ImageSize.js","sourceRoot":"","sources":["../../src/model/ImageSize.ts"],"names":[],"mappings":""}
@@ -1,6 +1,23 @@
1
1
  import type { IconName } from '../icons/IconName';
2
2
  import type { IconVersion } from './IconVersion';
3
+ import { ImageSize } from './ImageSize';
3
4
  export declare type ImgFormats = 'jpeg' | 'jpg' | 'png' | 'gif' | 'webp' | 'heif' | 'avif';
5
+ /**
6
+ * @title Позиционирование
7
+ * @enumNames [
8
+ * "Сверху слева",
9
+ * "Сверху по центру",
10
+ * "Сверху справа",
11
+ * "Посередине слева",
12
+ * "Посередине по центру",
13
+ * "Посередине справа",
14
+ * "Снизу слева",
15
+ * "Снизу по центру",
16
+ * "Снизу справа"
17
+ * ]
18
+ * @default "center"
19
+ */
20
+ export declare type ImgAlignment = 'northwest' | 'north' | 'northeast' | 'west' | 'center' | 'east' | 'southwest' | 'south' | 'southeast';
4
21
  export interface Img {
5
22
  /** @title Картинка */
6
23
  src?: string;
@@ -15,6 +32,7 @@ export interface Img {
15
32
  */
16
33
  export declare type MediaQuery = 1919 | 1439 | 1279;
17
34
  export interface ImgSource {
35
+ alignment?: ImgAlignment;
18
36
  /** @title Иконка */
19
37
  icon?: IconName;
20
38
  iconVersion?: IconVersion;
@@ -26,12 +44,7 @@ export interface ImgSource {
26
44
  options?: Record<string, any>;
27
45
  media?: MediaQuery;
28
46
  /** @title Размер изображения */
29
- size?: {
30
- /** @title Ширина */
31
- width?: number;
32
- /** @title Высота */
33
- height?: number;
34
- };
47
+ size?: Partial<ImageSize>;
35
48
  }
36
49
  /** @title Изображение */
37
50
  export interface Picture extends Img, ImgSource {
@@ -14,14 +14,18 @@ export const ImgAsPicture = JSX(({ className = '', image, imageClassName = '', i
14
14
  return (_jsxs("picture", { className: `${pictureStyles} ${className}`, children: [image?.sources?.length
15
15
  ? image.sources
16
16
  .sort(sourcesComparator)
17
- .map(({ src, format, media, size }, index) => (_jsx("source", { srcSet: src, type: formatToMimeType(format), media: media ? `(max-width: ${media}px)` : '', ...size }, `${index}_${src}`)))
17
+ .map(({ src, format, media }, index) => (_jsx("source", { srcSet: src, type: formatToMimeType(format), media: media ? `(max-width: ${media}px)` : '', ...image.size }, `${index}_${src}`)))
18
18
  : null, renderImg(image, imageClassName, isMobile)] }));
19
19
  });
20
20
  const renderImg = (image, imageClassName = '', isMobile = false) => {
21
+ const style = {
22
+ width: image.size?.width ? `${image.size?.width}px` : '100%',
23
+ height: image.size?.height ? `${image.size?.height}px` : '100%',
24
+ };
21
25
  const title = image.title || '';
22
26
  const alt = image.alt || image.title;
23
27
  const imgStyle = isMobile ? 'm-auto' : 'm-0';
24
- return (_jsx("img", { src: image.src, className: `${imgStyle} ${imageClassName}`, alt: alt, title: title, ...image.size }));
28
+ return (_jsx("img", { src: image.src, className: `${imgStyle} ${imageClassName}`, alt: alt, title: title, style: style, ...image.size }));
25
29
  };
26
30
  export function formatToMimeType(format) {
27
31
  return format ? `image/${String(format)}` : undefined;