@treely/strapi-slices 5.2.1 → 5.2.3

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.
@@ -3,6 +3,8 @@ declare const rootMessagesDe: {
3
3
  'unit.formatter.tonsCo2PerYear': string;
4
4
  'sections.timeline.backgroundShapes': string;
5
5
  'sections.timeline.showMoreButton': string;
6
+ 'sections.textCarousel.moveRight': string;
7
+ 'sections.textCarousel.moveLeft': string;
6
8
  'sections.shopCheckout.intro.price': string;
7
9
  'sections.shopCheckout.contributionValue.label.EUR': string;
8
10
  'sections.shopCheckout.contributionValue.label.CHF': string;
@@ -3,6 +3,8 @@ declare const rootMessagesEn: {
3
3
  'unit.formatter.tonsCo2PerYear': string;
4
4
  'sections.timeline.backgroundShapes': string;
5
5
  'sections.timeline.showMoreButton': string;
6
+ 'sections.textCarousel.moveRight': string;
7
+ 'sections.textCarousel.moveLeft': string;
6
8
  'sections.shopCheckout.intro.price': string;
7
9
  'sections.shopCheckout.contributionValue.label.EUR': string;
8
10
  'sections.shopCheckout.contributionValue.label.CHF': string;
@@ -0,0 +1,5 @@
1
+ declare const messagesDe: {
2
+ 'sections.textCarousel.moveRight': string;
3
+ 'sections.textCarousel.moveLeft': string;
4
+ };
5
+ export default messagesDe;
@@ -0,0 +1,5 @@
1
+ declare const messagesDe: {
2
+ 'sections.textCarousel.moveRight': string;
3
+ 'sections.textCarousel.moveLeft': string;
4
+ };
5
+ export default messagesDe;
@@ -1022,9 +1022,9 @@ var IconGrid = function IconGrid(_ref) {
1022
1022
  })), React__default.default.createElement(boemly.Spacer, {
1023
1023
  h: "20"
1024
1024
  })) : React__default.default.createElement(React__default.default.Fragment, null), React__default.default.createElement(boemly.SimpleGrid, {
1025
- columns: [1, null, null, 2],
1026
- gap: "32",
1027
- rowGap: ['16', null, null, '28']
1025
+ columns: [1, null, null, 2, 3],
1026
+ gap: "16",
1027
+ rowGap: ['16', null, null, '20']
1028
1028
  }, slice.iconsWithTextAndButton.map(function (iconWithTextAndButton) {
1029
1029
  return React__default.default.createElement(boemly.Box, {
1030
1030
  key: iconWithTextAndButton.id
@@ -1977,249 +1977,64 @@ var TextCardGrid = function TextCardGrid(_ref) {
1977
1977
  };
1978
1978
 
1979
1979
  var _templateObject$5, _templateObject2$2, _templateObject3$1;
1980
- var CarouselContainer = /*#__PURE__*/styled__default.default(boemly.Box)(_templateObject$5 || (_templateObject$5 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n overflow-x: scroll;\n\n margin-top: var(--boemly-space-6);\n padding: var(--boemly-space-8) 0;\n\n scrollbar-width: none;\n\n &::-webkit-scrollbar {\n display: none;\n }\n @media screen and (max-width: ", ") {\n margin-top: var(--boemly-space-4);\n }\n"])), BREAKPOINT_MD);
1981
- var CarouselInnerContainer = /*#__PURE__*/styled__default.default(framerMotion.motion.div)(_templateObject2$2 || (_templateObject2$2 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n justify-content: center;\n width: calc(\n (var(--boemly-sizes-sm) + var(--boemly-space-16)) *\n ", " +\n var(--boemly-space-16)\n );\n min-width: var(--boemly-sizes-full);\n\n @media screen and (max-width: ", ") {\n width: calc(\n (var(--boemly-sizes-xs) + var(--boemly-space-4)) *\n ", " +\n var(--boemly-space-6)\n );\n }\n"])), function (_ref) {
1980
+ var CarouselContainer = /*#__PURE__*/styled__default.default(boemly.Box)(_templateObject$5 || (_templateObject$5 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin-top: var(--boemly-space-6);\n padding: var(--boemly-space-8) 0;\n\n @media screen and (max-width: ", ") {\n margin-top: var(--boemly-space-4);\n width: var(--boemly-size-full);\n }\n\n width: var(--boemly-size-full);\n\n overflow-x: hidden;\n\n @media screen and (max-width: ", ") {\n overflow-x: scroll;\n }\n"])), BREAKPOINT_MD, BREAKPOINT_MD);
1981
+ var CarouselInnerContainer = /*#__PURE__*/styled__default.default(framerMotion.motion.div)(_templateObject2$2 || (_templateObject2$2 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n justify-content: center;\n width: calc(\n (var(--boemly-sizes-sm) + var(--boemly-space-16)) *\n ", " +\n var(--boemly-space-16)\n );\n min-width: var(--boemly-sizes-full);\n\n @media screen and (max-width: ", ") {\n justify-content: flex-start;\n width: calc(\n (var(--boemly-sizes-2xs) + var(--boemly-space-4)) *\n ", " +\n var(--boemly-space-6)\n );\n }\n"])), function (_ref) {
1982
1982
  var numberofitems = _ref.numberofitems;
1983
1983
  return numberofitems;
1984
1984
  }, BREAKPOINT_MD, function (_ref2) {
1985
1985
  var numberofitems = _ref2.numberofitems;
1986
1986
  return numberofitems;
1987
1987
  });
1988
- var CardContainer = /*#__PURE__*/styled__default.default(boemly.Box)(_templateObject3$1 || (_templateObject3$1 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n width: ", ";\n\n margin-right: var(--boemly-space-16);\n\n &:first-of-type {\n margin-left: var(--boemly-space-16);\n }\n\n @media screen and (max-width: ", ") {\n width: var(--boemly-sizes-xs);\n\n margin-right: var(--boemly-space-4);\n\n &:first-of-type {\n margin-left: var(--boemly-space-6);\n }\n }\n"])), function (_ref3) {
1988
+ var CardContainer = /*#__PURE__*/styled__default.default(boemly.Box)(_templateObject3$1 || (_templateObject3$1 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n width: ", ";\n\n margin-right: var(--boemly-space-6);\n\n &:first-of-type {\n margin-left: var(--boemly-space-6);\n }\n\n @media screen and (max-width: ", ") {\n width: var(--boemly-sizes-2xs);\n\n margin-right: var(--boemly-space-4);\n\n &:first-of-type {\n margin-left: var(--boemly-space-6);\n }\n }\n"])), function (_ref3) {
1989
1989
  var numberofitems = _ref3.numberofitems;
1990
1990
  return numberofitems === 3 ? 'var(--boemly-sizes-xl)' : 'var(--boemly-sizes-sm)';
1991
1991
  }, BREAKPOINT_MD);
1992
1992
 
1993
- var TextCarousel = function TextCarousel(_ref) {
1994
- var slice = _ref.slice;
1995
- var _useToken = boemly.useToken('colors', ['primary.50']),
1996
- primary50 = _useToken[0];
1997
- var containerRef = React.useRef(null);
1998
- return React__default.default.createElement(boemly.DefaultSectionContainer, {
1999
- backgroundColor: primary50,
2000
- title: slice.title
2001
- }, React__default.default.createElement(boemly.Wrapper, null, React__default.default.createElement(boemly.DefaultSectionHeader, {
2002
- tagline: slice.tagline,
2003
- title: slice.title,
2004
- text: slice.text,
2005
- taglineProps: {
2006
- textAlign: 'center'
2007
- },
2008
- titleProps: {
2009
- textAlign: 'center',
2010
- maxW: '6xl',
2011
- marginX: 'auto'
2012
- },
2013
- textProps: {
2014
- textAlign: 'center',
2015
- maxW: '2xl',
2016
- marginX: 'auto'
2017
- }
2018
- })), React__default.default.createElement(CarouselContainer, {
2019
- ref: containerRef
2020
- }, React__default.default.createElement(CarouselInnerContainer, {
2021
- drag: "x",
2022
- dragConstraints: containerRef,
2023
- numberofitems: slice.slides.length
2024
- }, slice.slides.map(function (_ref2) {
2025
- var id = _ref2.id,
2026
- title = _ref2.title,
2027
- text = _ref2.text,
2028
- icon = _ref2.icon;
2029
- return React__default.default.createElement(CardContainer, {
2030
- key: id,
2031
- numberofitems: slice.slides.length
2032
- }, React__default.default.createElement(boemly.TextCardWithIcon, {
2033
- title: title,
2034
- text: text,
2035
- icon: React__default.default.createElement(Image__default.default, {
2036
- src: strapiMediaUrl(icon.img, 'small'),
2037
- alt: icon.alt,
2038
- fill: true,
2039
- style: {
2040
- objectFit: icon.objectFit || 'contain'
2041
- }
2042
- }),
2043
- displayAs: "column"
2044
- }));
2045
- }))), React__default.default.createElement(React__default.default.Fragment, null, slice.button && React__default.default.createElement(boemly.Wrapper, null, React__default.default.createElement(boemly.Center, null, React__default.default.createElement(StrapiLinkButton, {
2046
- link: slice.button,
2047
- size: "xl",
2048
- mt: ['8', null, '14']
2049
- })))));
2050
- };
2051
-
2052
- var TextWithTextCards = function TextWithTextCards(_ref) {
2053
- var slice = _ref.slice;
2054
- var _useRouter = router.useRouter(),
2055
- push = _useRouter.push;
2056
- var _useToken = boemly.useToken('colors', ['white']),
2057
- white = _useToken[0];
2058
- var _useMediaQuery = boemly.useMediaQuery(BREAKPOINT_LG_QUERY),
2059
- belowBreakpoint = _useMediaQuery[0];
2060
- return React__default.default.createElement(boemly.DefaultSectionContainer, {
2061
- backgroundColor: white,
2062
- title: slice.title
2063
- }, React__default.default.createElement(React__default.default.Fragment, null, slice.shape && React__default.default.createElement(boemly.Box, {
2064
- position: "absolute",
2065
- right: ['-28', null, null, '-136'],
2066
- top: ['96', null, null, '-28'],
2067
- width: ['sm', null, null, '4xl'],
2068
- height: ['sm', null, null, '4xl'],
2069
- borderBottomRightRadius: "full"
2070
- }, React__default.default.createElement(Image__default.default, {
2071
- src: strapiMediaUrl(slice.shape.img, 'medium'),
2072
- alt: slice.shape.alt,
2073
- fill: true,
2074
- style: {
2075
- objectFit: slice.shape.objectFit || 'cover',
2076
- borderBottomRightRadius: 'var(--boemly-radii-full)'
2077
- }
2078
- }))), React__default.default.createElement(boemly.Wrapper, null, React__default.default.createElement(React__default.default.Fragment, null, React__default.default.createElement(boemly.Grid, {
2079
- templateColumns: ['repeat(8, 1fr)', null, null, null, 'repeat(16, 1fr)'],
2080
- templateRows: ['repeat(2, auto)', null, null, null, 'repeat(1, auto)'],
2081
- rowGap: "12"
2082
- }, React__default.default.createElement(boemly.GridItem, {
2083
- colSpan: [8, null, null, null, 9],
2084
- rowSpan: 1,
2085
- pr: ['0', null, null, null, '32']
2086
- }, React__default.default.createElement(boemly.DefaultSectionHeader, {
2087
- tagline: slice.tagline,
2088
- title: slice.title,
2089
- text: slice.text,
2090
- textProps: {
2091
- pr: ['0', null, null, null, '10']
2092
- }
2093
- }), slice.contact && !belowBreakpoint && React__default.default.createElement(boemly.ContactArea, {
2094
- title: slice.contact.title,
2095
- text: slice.contact.text,
2096
- avatar: {
2097
- name: slice.contact.avatar.name,
2098
- description: slice.contact.avatar.description,
2099
- image: React__default.default.createElement(Image__default.default, {
2100
- src: strapiMediaUrl(slice.contact.avatar.image.img, 'small'),
2101
- alt: slice.contact.avatar.image.alt,
2102
- fill: true,
2103
- style: {
2104
- objectFit: slice.contact.avatar.image.objectFit || 'cover'
2105
- }
2106
- })
2107
- },
2108
- link: {
2109
- text: slice.contact.button.text,
2110
- onClick: function onClick() {
2111
- var _slice$contact;
2112
- return push(strapiLinkUrl((_slice$contact = slice.contact) == null ? void 0 : _slice$contact.button));
2113
- }
2114
- }
2115
- })), React__default.default.createElement(boemly.GridItem, {
2116
- colSpan: [8, null, null, null, 7],
2117
- rowSpan: 1,
2118
- position: "relative"
2119
- }, slice.cards.map(function (card) {
2120
- return React__default.default.createElement(boemly.TextCardWithIcon, {
2121
- key: card.id,
2122
- title: card.title,
2123
- text: card.text,
2124
- icon: React__default.default.createElement(Image__default.default, {
2125
- src: strapiMediaUrl(card.icon.img, 'small'),
2126
- alt: card.icon.alt,
2127
- fill: true,
2128
- style: {
2129
- objectFit: card.icon.objectFit || 'contain'
2130
- }
2131
- })
2132
- });
2133
- }))), slice.contact && belowBreakpoint && React__default.default.createElement(boemly.ContactArea, {
2134
- title: slice.contact.title,
2135
- text: slice.contact.text,
2136
- avatar: {
2137
- name: slice.contact.avatar.name,
2138
- description: slice.contact.avatar.description,
2139
- image: React__default.default.createElement(Image__default.default, {
2140
- src: strapiMediaUrl(slice.contact.avatar.image.img, 'small'),
2141
- alt: slice.contact.avatar.image.alt,
2142
- fill: true,
2143
- style: {
2144
- objectFit: slice.contact.avatar.image.objectFit || 'cover'
2145
- }
2146
- })
2147
- },
2148
- link: {
2149
- text: slice.contact.button.text,
2150
- onClick: function onClick() {
2151
- var _slice$contact2;
2152
- return push(strapiLinkUrl((_slice$contact2 = slice.contact) == null ? void 0 : _slice$contact2.button));
2153
- }
2154
- }
2155
- }))));
2156
- };
2157
-
2158
- var CreditsAvailableState;
2159
- (function (CreditsAvailableState) {
2160
- CreditsAvailableState["YES"] = "yes";
2161
- CreditsAvailableState["SOME"] = "some";
2162
- CreditsAvailableState["NO"] = "no";
2163
- CreditsAvailableState["NOT_YET"] = "notYet";
2164
- })(CreditsAvailableState || (CreditsAvailableState = {}));
2165
- var CreditsAvailableState$1 = CreditsAvailableState;
2166
-
2167
- var FORMAT_AS_HECTARE_CONFIG = {
2168
- unit: 'hectare',
2169
- unitDisplay: 'short',
2170
- style: 'unit',
2171
- maximumFractionDigits: 2
2172
- };
2173
- var FORMAT_AS_PERCENT_CONFIG = {
2174
- style: 'percent',
2175
- maximumFractionDigits: 2
2176
- };
2177
-
2178
- var messagesDe$d = {
1993
+ var messagesDe$f = {
2179
1994
  'sections.comparison.backgroundShapes': 'Hintergrundformen'
2180
1995
  };
2181
1996
 
2182
- var messagesDe$c = {
1997
+ var messagesDe$e = {
2183
1998
  'components.creditsAvailableBadge.text.yes': 'Credits verfügbar',
2184
1999
  'components.creditsAvailableBadge.text.some': 'Einige verbleibende Credits',
2185
2000
  'components.creditsAvailableBadge.text.no': 'Keine verbleibenden Credits',
2186
2001
  'components.creditsAvailableBadge.text.notYet': 'Gutschriften bald verfügbar'
2187
2002
  };
2188
2003
 
2189
- var messagesDe$b = {
2004
+ var messagesDe$d = {
2190
2005
  'sections.cta.backgroundShapes': 'Dunkle Hintergrundformen',
2191
2006
  'sections.cta.backgroundShapesLight': 'Helle Hintergrundformen'
2192
2007
  };
2193
2008
 
2194
- var messagesDe$a = {
2009
+ var messagesDe$c = {
2195
2010
  'sections.customerCard.more': 'Weiterlesen'
2196
2011
  };
2197
2012
 
2198
- var messagesDe$9 = {
2013
+ var messagesDe$b = {
2199
2014
  'sections.customerQuoteCard.more': 'Weiterlesen'
2200
2015
  };
2201
2016
 
2202
- var messagesDe$8 = {
2017
+ var messagesDe$a = {
2203
2018
  'sections.glossary.copyButtonLabel': 'Kopiere den Link zu diesem Abschnitt in die Zwischenablage',
2204
2019
  'sections.glossary.copySuccessMessage': 'Link in die Zwischenablage kopiert',
2205
2020
  'sections.glossary.copyFailureMessage': 'Link konnte nicht in die Zwischenablage kopiert werden'
2206
2021
  };
2207
2022
 
2208
- var messagesDe$7 = {
2023
+ var messagesDe$9 = {
2209
2024
  'features.portfolio.documentsDownloadList.projectDocuments': 'Projektdokumente',
2210
2025
  'features.portfolio.documentsDownloadList.downloadDocument': 'Dokument herunterladen'
2211
2026
  };
2212
2027
 
2213
- var messagesDe$6 = {
2028
+ var messagesDe$8 = {
2214
2029
  'sections.projectFacts.projectInfo.value': 'Projekt Infos',
2215
2030
  'projects.projectFacts.properties.area': 'Fläche'
2216
2031
  };
2217
2032
 
2218
- var messagesDe$5 = {
2033
+ var messagesDe$7 = {
2219
2034
  'sections.projectsMap.link.text': 'Mehr Infos'
2220
2035
  };
2221
2036
 
2222
- var messagesDe$4 = {
2037
+ var messagesDe$6 = {
2223
2038
  'features.projectInfo.projectInfo.value': 'Projekt Infos',
2224
2039
  'features.projectInfo.properties.area': 'Projekt Fläche',
2225
2040
  'features.projectInfo.properties.location': 'Standort',
@@ -2234,14 +2049,14 @@ var messagesDe$4 = {
2234
2049
  'features.projectInfo.properties.year': '{years} {years, plural, one {Jahr} other {Jahre} }'
2235
2050
  };
2236
2051
 
2237
- var messagesDe$3 = {
2052
+ var messagesDe$5 = {
2238
2053
  'components.portfolioProjectCard.text.yes': 'Credits verfügbar',
2239
2054
  'components.portfolioProjectCard.text.some': 'Einige verbleibende Credits',
2240
2055
  'components.portfolioProjectCard.text.no': 'Keine verbleibenden Credits',
2241
2056
  'components.portfolioProjectCard.text.notYet': 'Gutschriften bald verfügbar'
2242
2057
  };
2243
2058
 
2244
- var messagesDe$2 = {
2059
+ var messagesDe$4 = {
2245
2060
  'portfolio.smallCheckout.contributionValueCurrency.label.CHF': 'Geben Sie den Beitrag in Fr. ein',
2246
2061
  'portfolio.smallCheckout.contributionValueCurrency.label.EUR': 'Geben Sie den Beitrag in € ein',
2247
2062
  'portfolio.smallCheckout.contributionValueCurrency.unit.EUR': '€',
@@ -2257,7 +2072,7 @@ var messagesDe$2 = {
2257
2072
  'portfolio.smallCheckout.cta.button': 'Unser Vertriebsteam kontaktieren'
2258
2073
  };
2259
2074
 
2260
- var messagesDe$1 = {
2075
+ var messagesDe$3 = {
2261
2076
  'sections.shopCheckout.intro.price': 'Preis',
2262
2077
  'sections.shopCheckout.contributionValue.label.EUR': 'Geben sie einen Betrag in € ein',
2263
2078
  'sections.shopCheckout.contributionValue.label.CHF': 'Geben sie einen Betrag in CHF ein',
@@ -2272,7 +2087,12 @@ var messagesDe$1 = {
2272
2087
  'sections.shopCheckout.submit': 'Kaufen'
2273
2088
  };
2274
2089
 
2275
- var messagesDe = {
2090
+ var messagesDe$2 = {
2091
+ 'sections.textCarousel.moveRight': 'Nach rechts bewegen',
2092
+ 'sections.textCarousel.moveLeft': 'Nach links bewegen'
2093
+ };
2094
+
2095
+ var messagesDe$1 = {
2276
2096
  'sections.timeline.backgroundShapes': 'Hintergrundformen',
2277
2097
  'sections.timeline.showMoreButton': 'Drei weitere Meilensteine anzeigen'
2278
2098
  };
@@ -2282,7 +2102,7 @@ var unitMessagesDe = {
2282
2102
  'unit.formatter.tonsCo2PerYear': '{number} tCO₂/Jahr'
2283
2103
  };
2284
2104
 
2285
- var rootMessagesDe = /*#__PURE__*/_extends({}, messagesDe$c, messagesDe$7, messagesDe$3, messagesDe$4, messagesDe$2, messagesDe$d, messagesDe$b, messagesDe$a, messagesDe$9, messagesDe$8, messagesDe$6, messagesDe$5, messagesDe$1, messagesDe, unitMessagesDe);
2105
+ var rootMessagesDe = /*#__PURE__*/_extends({}, messagesDe$e, messagesDe$9, messagesDe$5, messagesDe$6, messagesDe$4, messagesDe$f, messagesDe$d, messagesDe$c, messagesDe$b, messagesDe$a, messagesDe$8, messagesDe$7, messagesDe$3, messagesDe$2, messagesDe$1, unitMessagesDe);
2286
2106
 
2287
2107
  var messagesEn$d = {
2288
2108
  'sections.comparison.backgroundShapes': 'Background shapes'
@@ -2381,6 +2201,11 @@ var messagesEn$1 = {
2381
2201
  'sections.shopCheckout.submit': 'Checkout'
2382
2202
  };
2383
2203
 
2204
+ var messagesDe = {
2205
+ 'sections.textCarousel.moveRight': 'Move right',
2206
+ 'sections.textCarousel.moveLeft': 'Move left'
2207
+ };
2208
+
2384
2209
  var messagesEn = {
2385
2210
  'sections.timeline.backgroundShapes': 'Background shapes',
2386
2211
  'sections.timeline.showMoreButton': 'Show three more milestones'
@@ -2391,7 +2216,7 @@ var unitMessagesEn = {
2391
2216
  'unit.formatter.tonsCo2PerYear': '{number} tCO₂/year'
2392
2217
  };
2393
2218
 
2394
- var rootMessagesEn = /*#__PURE__*/_extends({}, messagesEn$c, messagesEn$7, messagesEn$3, messagesEn$4, messagesEn$2, messagesEn$d, messagesEn$b, messagesEn$a, messagesEn$9, messagesEn$8, messagesEn$6, messagesEn$5, messagesEn$1, messagesEn, unitMessagesEn);
2219
+ var rootMessagesEn = /*#__PURE__*/_extends({}, messagesEn$c, messagesEn$7, messagesEn$3, messagesEn$4, messagesEn$2, messagesEn$d, messagesEn$b, messagesEn$a, messagesEn$9, messagesEn$8, messagesEn$6, messagesEn$5, messagesEn$1, messagesDe, messagesEn, unitMessagesEn);
2395
2220
 
2396
2221
  var _templateObject$4;
2397
2222
  var GLOBAL_STYLE = /*#__PURE__*/react$1.css(_templateObject$4 || (_templateObject$4 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n :root {\n --default-hero-height: calc(100vh - var(--boemly-space-24));\n }\n\n a {\n text-decoration: none;\n }\n"])));
@@ -2419,6 +2244,273 @@ var ContextProvider = function ContextProvider(_ref) {
2419
2244
  }, children));
2420
2245
  };
2421
2246
 
2247
+ var TextCarousel = function TextCarousel(_ref) {
2248
+ var slice = _ref.slice;
2249
+ var _useToken = boemly.useToken('colors', ['primary.50']),
2250
+ primary50 = _useToken[0];
2251
+ var _useMeasure = reactUse.useMeasure(),
2252
+ slideRef = _useMeasure[0],
2253
+ slideWidth = _useMeasure[1].width;
2254
+ var _useContext = React.useContext(IntlContext),
2255
+ formatMessage = _useContext.formatMessage;
2256
+ var containerRef = React.useRef(null);
2257
+ var _useWindowSize = reactUse.useWindowSize(),
2258
+ windowWidth = _useWindowSize.width;
2259
+ var _useState = React.useState(0),
2260
+ sliderIndex = _useState[0],
2261
+ setSliderIndex = _useState[1];
2262
+ var allowScroll = windowWidth / 2 / slideWidth < slice.slides.length;
2263
+ var canMoveRight = sliderIndex < slice.slides.length - 1;
2264
+ var canMoveLeft = sliderIndex !== 0;
2265
+ return React__default.default.createElement(boemly.DefaultSectionContainer, {
2266
+ backgroundColor: primary50,
2267
+ title: slice.title
2268
+ }, React__default.default.createElement(boemly.Wrapper, null, React__default.default.createElement(boemly.DefaultSectionHeader, {
2269
+ tagline: slice.tagline,
2270
+ title: slice.title,
2271
+ text: slice.text,
2272
+ taglineProps: {
2273
+ textAlign: 'center'
2274
+ },
2275
+ titleProps: {
2276
+ textAlign: 'center',
2277
+ maxW: '6xl',
2278
+ marginX: 'auto'
2279
+ },
2280
+ textProps: {
2281
+ textAlign: 'center',
2282
+ maxW: '2xl',
2283
+ marginX: 'auto'
2284
+ }
2285
+ })), React__default.default.createElement(CarouselContainer, {
2286
+ ref: containerRef
2287
+ }, React__default.default.createElement(boemly.Box, {
2288
+ position: "relative",
2289
+ width: "full"
2290
+ }, React__default.default.createElement(CarouselInnerContainer, {
2291
+ numberofitems: slice.slides.length,
2292
+ animate: {
2293
+ x: slideWidth * -sliderIndex
2294
+ },
2295
+ transition: {
2296
+ duration: 0.3,
2297
+ ease: 'easeInOut'
2298
+ }
2299
+ }, slice.slides.map(function (_ref2) {
2300
+ var id = _ref2.id,
2301
+ title = _ref2.title,
2302
+ text = _ref2.text,
2303
+ icon = _ref2.icon;
2304
+ return React__default.default.createElement(CardContainer, {
2305
+ key: id,
2306
+ ref: slideRef,
2307
+ numberofitems: slice.slides.length
2308
+ }, React__default.default.createElement(boemly.TextCardWithIcon, {
2309
+ title: title,
2310
+ text: text,
2311
+ icon: React__default.default.createElement(Image__default.default, {
2312
+ src: strapiMediaUrl(icon.img, 'small'),
2313
+ alt: icon.alt,
2314
+ fill: true,
2315
+ style: {
2316
+ objectFit: icon.objectFit || 'contain'
2317
+ }
2318
+ }),
2319
+ displayAs: "column"
2320
+ }));
2321
+ })), React__default.default.createElement(boemly.Box, {
2322
+ display: ['none', null, null, !!allowScroll ? 'flex' : 'none'],
2323
+ pointerEvents: "none",
2324
+ position: "absolute",
2325
+ top: "40%",
2326
+ left: "0",
2327
+ width: "full",
2328
+ py: "0",
2329
+ px: "32",
2330
+ justifyContent: "space-between"
2331
+ }, React__default.default.createElement(boemly.Box, null, React__default.default.createElement(framerMotion.AnimatePresence, null, canMoveLeft && React__default.default.createElement(boemly.IconButton, {
2332
+ key: "leftButton",
2333
+ as: framerMotion.motion.button,
2334
+ initial: {
2335
+ opacity: 0
2336
+ },
2337
+ animate: {
2338
+ opacity: 1
2339
+ },
2340
+ exit: {
2341
+ opacity: 0
2342
+ },
2343
+ size: "lg",
2344
+ variant: "outline",
2345
+ onClick: function onClick() {
2346
+ return setSliderIndex(sliderIndex - 1);
2347
+ },
2348
+ "aria-label": formatMessage({
2349
+ id: 'sections.textCarousel.moveLeft'
2350
+ }),
2351
+ icon: React__default.default.createElement(react.ArrowLeft, {
2352
+ size: 16
2353
+ }),
2354
+ pointerEvents: "auto",
2355
+ boxShadow: "md"
2356
+ }))), React__default.default.createElement(boemly.Box, null, React__default.default.createElement(framerMotion.AnimatePresence, null, canMoveRight && React__default.default.createElement(boemly.IconButton, {
2357
+ key: "rightButton",
2358
+ as: framerMotion.motion.button,
2359
+ initial: {
2360
+ opacity: 0
2361
+ },
2362
+ animate: {
2363
+ opacity: 1
2364
+ },
2365
+ exit: {
2366
+ opacity: 0
2367
+ },
2368
+ size: "lg",
2369
+ variant: "outline",
2370
+ onClick: function onClick() {
2371
+ return setSliderIndex(sliderIndex + 1);
2372
+ },
2373
+ "aria-label": formatMessage({
2374
+ id: 'sections.textCarousel.moveRight'
2375
+ }),
2376
+ icon: React__default.default.createElement(react.ArrowRight, {
2377
+ size: 16
2378
+ }),
2379
+ pointerEvents: "auto",
2380
+ boxShadow: "md"
2381
+ })))))), React__default.default.createElement(React__default.default.Fragment, null, slice.button && React__default.default.createElement(boemly.Wrapper, null, React__default.default.createElement(boemly.Center, null, React__default.default.createElement(StrapiLinkButton, {
2382
+ link: slice.button,
2383
+ size: "xl",
2384
+ mt: ['8', null, '14']
2385
+ })))));
2386
+ };
2387
+
2388
+ var TextWithTextCards = function TextWithTextCards(_ref) {
2389
+ var slice = _ref.slice;
2390
+ var _useRouter = router.useRouter(),
2391
+ push = _useRouter.push;
2392
+ var _useToken = boemly.useToken('colors', ['white']),
2393
+ white = _useToken[0];
2394
+ var _useMediaQuery = boemly.useMediaQuery(BREAKPOINT_LG_QUERY),
2395
+ belowBreakpoint = _useMediaQuery[0];
2396
+ return React__default.default.createElement(boemly.DefaultSectionContainer, {
2397
+ backgroundColor: white,
2398
+ title: slice.title
2399
+ }, React__default.default.createElement(React__default.default.Fragment, null, slice.shape && React__default.default.createElement(boemly.Box, {
2400
+ position: "absolute",
2401
+ right: ['-28', null, null, '-136'],
2402
+ top: ['96', null, null, '-28'],
2403
+ width: ['sm', null, null, '4xl'],
2404
+ height: ['sm', null, null, '4xl'],
2405
+ borderBottomRightRadius: "full"
2406
+ }, React__default.default.createElement(Image__default.default, {
2407
+ src: strapiMediaUrl(slice.shape.img, 'medium'),
2408
+ alt: slice.shape.alt,
2409
+ fill: true,
2410
+ style: {
2411
+ objectFit: slice.shape.objectFit || 'cover',
2412
+ borderBottomRightRadius: 'var(--boemly-radii-full)'
2413
+ }
2414
+ }))), React__default.default.createElement(boemly.Wrapper, null, React__default.default.createElement(React__default.default.Fragment, null, React__default.default.createElement(boemly.Grid, {
2415
+ templateColumns: ['repeat(8, 1fr)', null, null, null, 'repeat(16, 1fr)'],
2416
+ templateRows: ['repeat(2, auto)', null, null, null, 'repeat(1, auto)'],
2417
+ rowGap: "12"
2418
+ }, React__default.default.createElement(boemly.GridItem, {
2419
+ colSpan: [8, null, null, null, 9],
2420
+ rowSpan: 1,
2421
+ pr: ['0', null, null, null, '32']
2422
+ }, React__default.default.createElement(boemly.DefaultSectionHeader, {
2423
+ tagline: slice.tagline,
2424
+ title: slice.title,
2425
+ text: slice.text,
2426
+ textProps: {
2427
+ pr: ['0', null, null, null, '10']
2428
+ }
2429
+ }), slice.contact && !belowBreakpoint && React__default.default.createElement(boemly.ContactArea, {
2430
+ title: slice.contact.title,
2431
+ text: slice.contact.text,
2432
+ avatar: {
2433
+ name: slice.contact.avatar.name,
2434
+ description: slice.contact.avatar.description,
2435
+ image: React__default.default.createElement(Image__default.default, {
2436
+ src: strapiMediaUrl(slice.contact.avatar.image.img, 'small'),
2437
+ alt: slice.contact.avatar.image.alt,
2438
+ fill: true,
2439
+ style: {
2440
+ objectFit: slice.contact.avatar.image.objectFit || 'cover'
2441
+ }
2442
+ })
2443
+ },
2444
+ link: {
2445
+ text: slice.contact.button.text,
2446
+ onClick: function onClick() {
2447
+ var _slice$contact;
2448
+ return push(strapiLinkUrl((_slice$contact = slice.contact) == null ? void 0 : _slice$contact.button));
2449
+ }
2450
+ }
2451
+ })), React__default.default.createElement(boemly.GridItem, {
2452
+ colSpan: [8, null, null, null, 7],
2453
+ rowSpan: 1,
2454
+ position: "relative"
2455
+ }, slice.cards.map(function (card) {
2456
+ return React__default.default.createElement(boemly.TextCardWithIcon, {
2457
+ key: card.id,
2458
+ title: card.title,
2459
+ text: card.text,
2460
+ icon: React__default.default.createElement(Image__default.default, {
2461
+ src: strapiMediaUrl(card.icon.img, 'small'),
2462
+ alt: card.icon.alt,
2463
+ fill: true,
2464
+ style: {
2465
+ objectFit: card.icon.objectFit || 'contain'
2466
+ }
2467
+ })
2468
+ });
2469
+ }))), slice.contact && belowBreakpoint && React__default.default.createElement(boemly.ContactArea, {
2470
+ title: slice.contact.title,
2471
+ text: slice.contact.text,
2472
+ avatar: {
2473
+ name: slice.contact.avatar.name,
2474
+ description: slice.contact.avatar.description,
2475
+ image: React__default.default.createElement(Image__default.default, {
2476
+ src: strapiMediaUrl(slice.contact.avatar.image.img, 'small'),
2477
+ alt: slice.contact.avatar.image.alt,
2478
+ fill: true,
2479
+ style: {
2480
+ objectFit: slice.contact.avatar.image.objectFit || 'cover'
2481
+ }
2482
+ })
2483
+ },
2484
+ link: {
2485
+ text: slice.contact.button.text,
2486
+ onClick: function onClick() {
2487
+ var _slice$contact2;
2488
+ return push(strapiLinkUrl((_slice$contact2 = slice.contact) == null ? void 0 : _slice$contact2.button));
2489
+ }
2490
+ }
2491
+ }))));
2492
+ };
2493
+
2494
+ var CreditsAvailableState;
2495
+ (function (CreditsAvailableState) {
2496
+ CreditsAvailableState["YES"] = "yes";
2497
+ CreditsAvailableState["SOME"] = "some";
2498
+ CreditsAvailableState["NO"] = "no";
2499
+ CreditsAvailableState["NOT_YET"] = "notYet";
2500
+ })(CreditsAvailableState || (CreditsAvailableState = {}));
2501
+ var CreditsAvailableState$1 = CreditsAvailableState;
2502
+
2503
+ var FORMAT_AS_HECTARE_CONFIG = {
2504
+ unit: 'hectare',
2505
+ unitDisplay: 'short',
2506
+ style: 'unit',
2507
+ maximumFractionDigits: 2
2508
+ };
2509
+ var FORMAT_AS_PERCENT_CONFIG = {
2510
+ style: 'percent',
2511
+ maximumFractionDigits: 2
2512
+ };
2513
+
2422
2514
  var PortfolioProjectCard = function PortfolioProjectCard(_ref) {
2423
2515
  var _creditsAvailableMess, _project$creditsAvail, _project$thumbnail, _project$thumbnail2, _project$thumbnail3;
2424
2516
  var project = _ref.project;