@4alldigital/foundation-ui--gamma 1.41.1 → 1.41.2

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.
package/dist/index.esm.js CHANGED
@@ -1,8 +1,7 @@
1
- 'use client';
2
1
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
3
2
  import React, { useRef, useEffect, useState, useMemo, createContext, useContext } from 'react';
4
3
  import cx from 'classnames';
5
- import { useInView, useIsomorphicLayoutEffect, animate, motion, motionValue } from 'framer-motion';
4
+ import { useInView, useIsomorphicLayoutEffect, animate, motion, motionValue, useAnimation } from 'framer-motion';
6
5
  import { twMerge } from 'tailwind-merge';
7
6
  import { Icon as Icon$1 } from '@iconify/react';
8
7
  import { Tabs as Tabs$1, TabList, Tab, TabPanel } from 'react-tabs';
@@ -231,10 +230,10 @@ var Checkbox = React.forwardRef(function MyInput(_a, ref) {
231
230
  Checkbox.displayName = 'Checkbox';
232
231
 
233
232
  var Link = function (_a) {
234
- var href = _a.href, children = _a.children, _b = _a.onClick, onClick = _b === void 0 ? function () { return console.log('Link clicked'); } : _b, history = _a.history, target = _a.target, id = _a.id, testID = _a.testID, className = _a.className, prefetch = _a.prefetch;
233
+ var href = _a.href, children = _a.children, _b = _a.onClick, onClick = _b === void 0 ? function () { return console.log('Link clicked'); } : _b, history = _a.history, target = _a.target, id = _a.id, testID = _a.testID, className = _a.className, prefetch = _a.prefetch, _c = _a.hideExternalIcon, hideExternalIcon = _c === void 0 ? false : _c;
235
234
  var linkClasses = cx('link cursor-pointer no-underline text-body-text dark:text-dark-body-text', className);
236
235
  // Check if link is external
237
- var isExternal = href && href.startsWith('http');
236
+ var isExternal = !hideExternalIcon && href && href.startsWith('http');
238
237
  if (isExternal) {
239
238
  return (jsxs("span", { children: [jsx("a", { "data-testid": testID || id || 'Link', className: cx(linkClasses), href: href, target: "_blank", rel: "noopener noreferrer", children: children }), jsx(Icon, { name: "mdi:external-link", className: "inline-block w-4 h-4 ml-1 mb-0" })] }));
240
239
  }
@@ -252,7 +251,7 @@ var Link = function (_a) {
252
251
  prefetch: prefetch || false,
253
252
  }, children);
254
253
  }
255
- catch (_c) {
254
+ catch (_d) {
256
255
  console.log('Not using Next Link.');
257
256
  var handleClick = function (event) {
258
257
  if (onClick) {
@@ -407,16 +406,17 @@ var Hr = function (_a) {
407
406
  Hr.displayName = 'Hr';
408
407
 
409
408
  var Image = function (_a) {
410
- var src = _a.src, alt = _a.alt, title = _a.title, caption = _a.caption, _b = _a.figure, figure = _b === void 0 ? false : _b, onLoad = _a.onLoad, id = _a.id, className = _a.className, testID = _a.testID, rest = __rest(_a, ["src", "alt", "title", "caption", "figure", "onLoad", "id", "className", "testID"]);
409
+ var src = _a.src, alt = _a.alt, title = _a.title, caption = _a.caption, _b = _a.figure, figure = _b === void 0 ? false : _b, onLoad = _a.onLoad, id = _a.id, className = _a.className, _c = _a.sizes, sizes = _c === void 0 ? '(max-width: 768px) 100vw, (max-width: 1200px) 50vw, 33vw' : _c, testID = _a.testID, rest = __rest(_a, ["src", "alt", "title", "caption", "figure", "onLoad", "id", "className", "sizes", "testID"]);
411
410
  try {
412
411
  // eslint-disable-next-line @typescript-eslint/no-var-requires
413
412
  var nextImage = require('next/image').default;
414
413
  if (!nextImage)
415
414
  throw new Error('Next.js Image not found');
416
415
  var hasFill = !rest.width ? true : false;
417
- return React.createElement(nextImage, __assign({ src: typeof src === 'string' ? src : src, alt: alt, title: title, fill: hasFill, onLoad: onLoad, className: className }, rest));
416
+ var useSizes = hasFill ? { sizes: sizes } : {};
417
+ return React.createElement(nextImage, __assign(__assign({ src: typeof src === 'string' ? src : src, alt: alt, title: title, fill: hasFill, onLoad: onLoad, className: className }, useSizes), rest));
418
418
  }
419
- catch (_c) {
419
+ catch (_d) {
420
420
  var figureClasses = cx('m-0');
421
421
  var classes = cx('w-full h-full', className);
422
422
  /**
@@ -1249,14 +1249,6 @@ var DisplayHeading = function (_a) {
1249
1249
  };
1250
1250
  DisplayHeading.displayName = 'DisplayHeading';
1251
1251
 
1252
- var Container = function (_a) {
1253
- var children = _a.children, className = _a.className, spacing = _a.spacing, padded = _a.padded, isNarrow = _a.isNarrow, isCentered = _a.isCentered, isFlush = _a.isFlush;
1254
- var classes = twMerge(cx('container mx-auto my-0', { 'px-4': padded }, { 'py-40': spacing === 'feature' }, { 'py-24': spacing === 'component' }, { 'py-16': spacing === 'module' }, { 'py-10': spacing === 'element' }, { 'py-4': spacing === 'atom' }, { 'py-0': spacing === 'none' }, { 'max-w-3xl': isNarrow }, { 'flex items-center justify-center flex-col': isCentered }, { 'px-0 max-w-full mx-0': isFlush }));
1255
- var contentClasses = cx('mx-4 md:mx-0 w-full', className);
1256
- return (jsx("div", { "data-testid": "Container", className: classes, children: jsx("div", { className: contentClasses, children: children }) }));
1257
- };
1258
- Container.displayName = 'Container';
1259
-
1260
1252
  var SPACING;
1261
1253
  (function (SPACING) {
1262
1254
  SPACING["NONE"] = "py-0";
@@ -1269,17 +1261,27 @@ var SPACING;
1269
1261
  })(SPACING || (SPACING = {}));
1270
1262
 
1271
1263
  var PanelCards = function (_a) {
1272
- var testID = _a.testID, cardData = _a.cardData, title = _a.title, description = _a.description, withSeparators = _a.withSeparators, _b = _a.spacing, spacing = _b === void 0 ? SPACING.COMPONENT : _b;
1264
+ var testID = _a.testID, cardData = _a.cardData, title = _a.title, description = _a.description, withSeparators = _a.withSeparators, _b = _a.spacing, spacing = _b === void 0 ? SPACING.MODULE : _b;
1273
1265
  var ref = useRef(null);
1274
1266
  var isInView = useInView(ref, { once: true });
1275
- return (jsx("div", { "data-testid": testID || 'PanelCards', className: spacing, children: jsxs(Container, { children: [jsxs("div", { className: "relative text-center py-8", children: [title && jsx(DisplayHeading, { text: title }), description && jsx(Copy, { align: COPY_ALIGN.CENTER, children: description })] }), jsx("div", { ref: ref, "data-testid": "PanelCards", className: "flex gap-8 justify-between", children: cardData === null || cardData === void 0 ? void 0 : cardData.map(function (card, index) { return (jsxs(Fragment, { children: [jsx("div", { className: cx('relative flex flex-1 items-center justify-center', { '': withSeparators }), style: {
1276
- transform: isInView ? 'none' : 'translateY(200px)',
1277
- opacity: isInView ? 1 : 0,
1278
- transition: "all 0.9s cubic-bezier(0.17, 0.55, 0.55, 1) ".concat(0.1 * index, "s"),
1279
- }, children: jsx(Card, __assign({}, card)) }, index), withSeparators && index < cardData.length - 1 && (jsx("div", { className: "w-1 h-10 border-0 border-r border-solid border-primary500" }, "separator-".concat(index)))] })); }) })] }) }));
1267
+ return (jsxs("div", { ref: ref, "data-testid": testID || 'PanelCards', className: spacing, children: [(title || description) && (jsxs("div", { className: "relative text-center py-8", children: [title && jsx(DisplayHeading, { text: title }), description && jsx(Copy, { align: COPY_ALIGN.CENTER, children: description })] })), jsx("div", { className: "flex gap-8", children: cardData === null || cardData === void 0 ? void 0 : cardData.map(function (card, index) { return (jsxs("span", { className: "flex gap-8 justify-between", children: [jsx("div", { className: cx('relative flex flex-1 items-center justify-center', { '': withSeparators }), style: {
1268
+ transform: isInView ? 'none' : 'translateY(200px)',
1269
+ opacity: isInView ? 1 : 0,
1270
+ transition: "all 0.9s cubic-bezier(0.17, 0.55, 0.55, 1) ".concat(0.1 * index, "s"),
1271
+ }, children: jsx(Card, __assign({}, card)) }), withSeparators && index < cardData.length - 1 && (jsx("div", { className: "w-1 h-10 border-0 border-r border-solid border-primary500" }, "separator-".concat(index)))] }, "card-".concat(index))); }) })] }));
1280
1272
  };
1281
1273
  PanelCards.displayName = 'PanelCards';
1282
1274
 
1275
+ var Container = function (_a) {
1276
+ var children = _a.children, className = _a.className, spacing = _a.spacing, padded = _a.padded, isNarrow = _a.isNarrow, isCentered = _a.isCentered, isFlush = _a.isFlush;
1277
+ var classes = twMerge(cx('container mx-auto my-0', { 'px-4': padded }, { 'py-40': spacing === 'feature' }, { 'py-24': spacing === 'component' }, { 'py-16': spacing === 'module' }, { 'py-10': spacing === 'element' }, { 'py-4': spacing === 'atom' }, { 'py-0': spacing === 'none' }, { 'max-w-3xl': isNarrow }, { 'flex items-center justify-center flex-col': isCentered }, { 'px-0 max-w-full mx-0': isFlush }));
1278
+ var contentClasses = cx('mx-4 md:mx-0', {
1279
+ 'w-full': !isCentered,
1280
+ }, className);
1281
+ return (jsx("div", { "data-testid": "Container", className: classes, children: jsx("div", { className: contentClasses, children: children }) }));
1282
+ };
1283
+ Container.displayName = 'Container';
1284
+
1283
1285
  var PanelFeature = function (_a) {
1284
1286
  var testID = _a.testID, title = _a.title, description = _a.description, inversed = _a.inversed, assets = _a.assets, buttonData = _a.buttonData, _b = _a.withBg, withBg = _b === void 0 ? true : _b, _c = _a.spacing, spacing = _c === void 0 ? SPACING.DEFAULT : _c;
1285
1287
  return (jsxs("div", { "data-testid": testID || 'PanelFeature', className: cx("relative m-auto w-full flex flex-none flex-nowrap", spacing), children: [withBg && (jsx("div", { className: "rounded-full blur-[250px] flex flex-none aspect-1 absolute -top-24 -left-48 w-[500px] opacity-20 bg-gradient-to-r from-primary-darker to-primary-lighter" })), jsx(Container, { children: jsxs("div", { className: cx('relative flex sm:flex-col md:flex-row flex-nowrap w-full h-min justify-between overflow-visible p-0 items-center gap-16', {
@@ -1431,8 +1433,26 @@ var PanelHero = function (_a) {
1431
1433
  var testID = _a.testID, title = _a.title, description = _a.description, image = _a.image, _b = _a.buttonData, buttonData = _b === void 0 ? {
1432
1434
  variant: BTN_VARIANTS.PRIMARY,
1433
1435
  size: BTN_SIZES.LARGE,
1434
- } : _b, _c = _a.inversed, inversed = _c === void 0 ? false : _c, _d = _a.withBg, withBg = _d === void 0 ? true : _d, _e = _a.spacing, spacing = _e === void 0 ? SPACING.ELEMENT : _e, video = _a.video;
1436
+ } : _b, _c = _a.inversed, inversed = _c === void 0 ? false : _c, _d = _a.withBg, withBg = _d === void 0 ? true : _d, _e = _a.spacing, spacing = _e === void 0 ? SPACING.MODULE : _e, video = _a.video;
1437
+ var controls = useAnimation();
1435
1438
  var ref = useRef(null);
1439
+ var isInView = useInView(ref);
1440
+ var defaultAnimation = {
1441
+ damping: 30,
1442
+ delay: 0,
1443
+ mass: 1.2,
1444
+ stiffness: 200,
1445
+ type: 'spring',
1446
+ duration: 0.5,
1447
+ };
1448
+ useEffect(function () {
1449
+ if (isInView) {
1450
+ controls.start(function (i) { return ({
1451
+ transform: 'none',
1452
+ transition: __assign(__assign({}, defaultAnimation), { delay: i * 0.1 }),
1453
+ }); });
1454
+ }
1455
+ }, [controls, isInView]);
1436
1456
  var aspectRatioClass = useMemo(function () {
1437
1457
  switch (video === null || video === void 0 ? void 0 : video.aspectRatioValue) {
1438
1458
  case '4/3':
@@ -1452,7 +1472,6 @@ var PanelHero = function (_a) {
1452
1472
  }
1453
1473
  }, [video]);
1454
1474
  var translateX = inversed ? 'translateX(100px)' : 'translateX(-100px)';
1455
- var defaultAnimation = { damping: 30, delay: 0, mass: 1.2, stiffness: 200, type: 'spring' };
1456
1475
  return (jsxs("div", { "data-testid": testID || 'PanelHero', className: cx('relative m-auto w-full flex flex-none flex-nowrap', spacing), children: [withBg && (jsx("div", { className: cx('rounded-full blur-[200px] flex flex-none aspect-1 absolute w-[700px] opacity-20 bg-gradient-to-r from-primary-darker to-primary-lighter z-0', {
1457
1476
  '-bottom-24 right-0': !inversed,
1458
1477
  '-top-24 left-0': inversed,
@@ -1464,20 +1483,11 @@ var PanelHero = function (_a) {
1464
1483
  'text-left bg-gradient-to-r': inversed,
1465
1484
  }), children: [jsx(motion.div, { initial: {
1466
1485
  transform: translateX,
1467
- }, animate: {
1468
- transform: 'none',
1469
- transition: __assign({}, defaultAnimation),
1470
- }, transition: { duration: 0.5 }, children: jsx(DisplayHeading, { text: title }) }), jsx(motion.div, { initial: {
1486
+ }, custom: 0, animate: controls, children: jsx(DisplayHeading, { text: title }) }), jsx(motion.div, { initial: {
1471
1487
  transform: translateX,
1472
- }, animate: {
1473
- transform: 'none',
1474
- transition: __assign(__assign({}, defaultAnimation), { delay: 0.1 }),
1475
- }, transition: { duration: 0.5 }, children: jsx(HtmlContent, { className: "mb-0", align: inversed ? COPY_ALIGN.LEFT : COPY_ALIGN.RIGHT, data: description }) }), jsx(motion.div, { initial: {
1488
+ }, custom: 1, animate: controls, children: jsx(HtmlContent, { className: "mb-0", align: inversed ? COPY_ALIGN.LEFT : COPY_ALIGN.RIGHT, data: description }) }), jsx(motion.div, { initial: {
1476
1489
  transform: translateX,
1477
- }, animate: {
1478
- transform: 'none',
1479
- transition: __assign(__assign({}, defaultAnimation), { delay: 0.2 }),
1480
- }, transition: { duration: 0.5 }, children: jsx("div", { className: cx('flex items-center', {
1490
+ }, custom: 2, animate: controls, children: jsx("div", { className: cx('flex items-center', {
1481
1491
  'justify-end': !inversed,
1482
1492
  'justify-start': inversed,
1483
1493
  }), children: jsx(Button, __assign({}, buttonData)) }) })] }) }), jsx("div", { className: "relative w-1/2 z-0", children: jsxs("div", { className: cx('relative scale-[1.35] rounded overflow-hidden shadow', aspectRatioClass), children: [image && jsx(Image, { src: image, alt: title, fill: true }), video && (jsx(Video, { sources: video.sources, options: {
@@ -1489,21 +1499,16 @@ var PanelHero = function (_a) {
1489
1499
  PanelHero.displayName = 'PanelHero';
1490
1500
 
1491
1501
  var PanelProduct = function (_a) {
1492
- var testID = _a.testID, title = _a.title, description = _a.description, image1 = _a.image1, image2 = _a.image2, _b = _a.iosLink, iosLink = _b === void 0 ? '#' : _b, _c = _a.androidLink, androidLink = _c === void 0 ? '#' : _c, _d = _a.inversed, inversed = _d === void 0 ? false : _d, _e = _a.withBg, withBg = _e === void 0 ? true : _e, _f = _a.spacing, spacing = _f === void 0 ? SPACING.DEFAULT : _f;
1493
- return (jsxs("div", { "data-testid": testID || 'PanelFeature', className: cx('relative py-8 m-auto w-full flex flex-none flex-nowrap', spacing), children: [withBg && (jsx("div", { className: "rounded-full blur-[250px] flex flex-none aspect-1 absolute -bottom-24 -right-48 w-[500px] opacity-20 bg-gradient-to-r from-primary-darker to-primary-lighter" })), jsx(Container, { children: jsxs("div", { className: cx('relative flex flex-col md:flex-row flex-nowrap w-full h-full overflow-visible gap-16 border border-solid border-primary bg-primary bg-opacity-10 backdrop-blur-lg rounded border-opacityDark20 p-8', {
1502
+ var testID = _a.testID, title = _a.title, description = _a.description, image1 = _a.image1, image2 = _a.image2, _b = _a.iosLink, iosLink = _b === void 0 ? '#' : _b, _c = _a.androidLink, androidLink = _c === void 0 ? '#' : _c, _d = _a.inversed, inversed = _d === void 0 ? false : _d, _e = _a.withBg, withBg = _e === void 0 ? true : _e, _f = _a.spacing, spacing = _f === void 0 ? SPACING.MODULE : _f;
1503
+ return (jsxs("div", { "data-testid": testID || 'PanelFeature', className: cx('relative m-auto w-full flex flex-none flex-nowrap', spacing), children: [withBg && (jsx("div", { className: "rounded-full blur-[250px] flex flex-none aspect-1 absolute -bottom-24 -right-48 w-[500px] opacity-20 bg-gradient-to-r from-primary-darker to-primary-lighter" })), jsx(Container, { children: jsxs("div", { className: cx('relative flex flex-col md:flex-row flex-nowrap w-full h-full overflow-visible gap-16 border border-solid border-primary bg-primary bg-opacity-10 backdrop-blur-lg rounded border-opacityDark20 p-8', {
1494
1504
  'flex-row-reverse': inversed,
1495
- }), children: [jsxs("div", { className: "w-full md:w-1/2 top-0 relative", children: [jsx("div", { className: "absolute aspect-[8/17] -rotate-12 w-[135px] left-1/3 top-4 md:w-[180px] md:left-1/3 md:top-4 lg:w-[210px] lg:left-1/2 lg:-top-1/3", children: jsx(Image, { src: image2, alt: title }) }), jsx("div", { className: "relative md:absolute aspect-[8/17] -rotate-0 w-[150px] left-0 top-0 md:w-[220px] md:left-0 md:-top-6 lg:w-[250px] lg:left-1/4 lg:-top-1/2", children: jsx(Image, { src: image1, alt: title }) })] }), jsxs("div", { className: "w-full md:w-1/2", children: [jsx("div", { children: jsx(DisplayHeading, { text: title }) }), jsx("div", { children: jsx(Copy, { children: description }) }), jsxs("div", { className: "flex items-center justify-start gap-4", children: [jsx("div", { className: "relative w-[150px] h-[50px]", children: jsx(Link, { href: iosLink, target: "_blank", children: jsx(Image, { src: "https://tools.applemediaservices.com/api/badges/download-on-the-app-store/black/en-us", alt: "App Store" }) }) }), jsx("div", { className: "relative w-[190px] h-[75px]", children: jsx(Link, { href: androidLink, target: "_blank", children: jsx(Image, { src: "https://play.google.com/intl/en_us/badges/static/images/badges/en_badge_web_generic.png", alt: "Google Play" }) }) })] })] })] }) })] }));
1505
+ }), children: [jsxs("div", { className: "w-full md:w-1/2 top-0 relative", children: [jsx("div", { className: "absolute aspect-[8/17] -rotate-12 w-[135px] left-1/3 top-4 md:w-[180px] md:left-1/3 md:top-4 lg:w-[210px] lg:left-1/2 lg:-top-1/3", children: jsx(Image, { src: image2, alt: title }) }), jsx("div", { className: "relative md:absolute aspect-[8/17] -rotate-0 w-[150px] left-0 top-0 md:w-[220px] md:left-0 md:-top-6 lg:w-[250px] lg:left-1/4 lg:-top-1/2", children: jsx(Image, { src: image1, alt: title }) })] }), jsxs("div", { className: "w-full md:w-1/2", children: [jsx("div", { children: jsx(DisplayHeading, { text: title }) }), jsx("div", { children: jsx(Copy, { children: description }) }), jsxs("div", { className: "flex items-center justify-start gap-4", children: [jsx("div", { className: "relative w-[150px] h-[50px]", children: jsx(Link, { href: iosLink, target: "_blank", hideExternalIcon: true, children: jsx(Image, { src: "https://apple-resources.s3.amazonaws.com/media-badges/download-on-the-app-store/black/en-us.svg", alt: "App Store" }) }) }), jsx("div", { className: "relative w-[190px] h-[75px]", children: jsx(Link, { href: androidLink, target: "_blank", hideExternalIcon: true, children: jsx(Image, { src: "https://play.google.com/intl/en_us/badges/static/images/badges/en_badge_web_generic.png", alt: "Google Play" }) }) })] })] })] }) })] }));
1496
1506
  };
1497
1507
  PanelProduct.displayName = 'PanelProduct';
1498
1508
 
1499
1509
  var PanelVideo = function (_a) {
1500
- var testID = _a.testID, sources = _a.sources, className = _a.className, title = _a.title, description = _a.description, _b = _a.spacing, spacing = _b === void 0 ? SPACING.NONE : _b;
1501
- return (jsxs("div", { "data-testid": testID || '"PanelVideo"', className: cx('relative m-auto w-full flex flex-none flex-nowrap aspect-[16/6.6]', spacing, className), children: [jsx(Video, { rounded: false, sources: sources, options: {
1502
- autoplay: true,
1503
- muted: true,
1504
- controls: false,
1505
- loop: true,
1506
- } }), jsxs("div", { className: "absolute top-0 left-0 w-full h-full z-10", children: [jsx("div", { className: "absolute top-0 left-0 w-full h-full bg-gradient-to-r from-transparent to-black opacity-50" }), jsxs("div", { className: "absolute top-0 left-0 w-full h-full flex flex-col items-end justify-center pr-24 invert", children: [title && (jsx(motion.div, { initial: {
1510
+ var testID = _a.testID, className = _a.className, title = _a.title, description = _a.description, _b = _a.spacing, spacing = _b === void 0 ? SPACING.NONE : _b, videoProps = _a.videoProps;
1511
+ return (jsxs("div", { "data-testid": testID || '"PanelVideo"', className: cx('relative m-auto w-full flex flex-none flex-nowrap aspect-[16/6.6]', spacing, className), children: [jsx(Video, { rounded: false, options: __assign({ autoplay: true, muted: true, controls: false, loop: true }, videoProps === null || videoProps === void 0 ? void 0 : videoProps.options), sources: videoProps === null || videoProps === void 0 ? void 0 : videoProps.sources }), jsxs("div", { className: "absolute top-0 left-0 w-full h-full z-10", children: [jsx("div", { className: "absolute top-0 left-0 w-full h-full bg-gradient-to-r from-transparent to-black opacity-50" }), jsxs("div", { className: "absolute top-0 left-0 w-full h-full flex flex-col items-end justify-center pr-24 invert", children: [title && (jsx(motion.div, { initial: {
1507
1512
  transform: 'translateX(25px)',
1508
1513
  }, animate: {
1509
1514
  transform: 'none',
package/dist/index.js CHANGED
@@ -1,4 +1,3 @@
1
- 'use client';
2
1
  'use strict';
3
2
 
4
3
  var jsxRuntime = require('react/jsx-runtime');
@@ -233,10 +232,10 @@ var Checkbox = React.forwardRef(function MyInput(_a, ref) {
233
232
  Checkbox.displayName = 'Checkbox';
234
233
 
235
234
  var Link = function (_a) {
236
- var href = _a.href, children = _a.children, _b = _a.onClick, onClick = _b === void 0 ? function () { return console.log('Link clicked'); } : _b, history = _a.history, target = _a.target, id = _a.id, testID = _a.testID, className = _a.className, prefetch = _a.prefetch;
235
+ var href = _a.href, children = _a.children, _b = _a.onClick, onClick = _b === void 0 ? function () { return console.log('Link clicked'); } : _b, history = _a.history, target = _a.target, id = _a.id, testID = _a.testID, className = _a.className, prefetch = _a.prefetch, _c = _a.hideExternalIcon, hideExternalIcon = _c === void 0 ? false : _c;
237
236
  var linkClasses = cx('link cursor-pointer no-underline text-body-text dark:text-dark-body-text', className);
238
237
  // Check if link is external
239
- var isExternal = href && href.startsWith('http');
238
+ var isExternal = !hideExternalIcon && href && href.startsWith('http');
240
239
  if (isExternal) {
241
240
  return (jsxRuntime.jsxs("span", { children: [jsxRuntime.jsx("a", { "data-testid": testID || id || 'Link', className: cx(linkClasses), href: href, target: "_blank", rel: "noopener noreferrer", children: children }), jsxRuntime.jsx(Icon, { name: "mdi:external-link", className: "inline-block w-4 h-4 ml-1 mb-0" })] }));
242
241
  }
@@ -254,7 +253,7 @@ var Link = function (_a) {
254
253
  prefetch: prefetch || false,
255
254
  }, children);
256
255
  }
257
- catch (_c) {
256
+ catch (_d) {
258
257
  console.log('Not using Next Link.');
259
258
  var handleClick = function (event) {
260
259
  if (onClick) {
@@ -409,16 +408,17 @@ var Hr = function (_a) {
409
408
  Hr.displayName = 'Hr';
410
409
 
411
410
  var Image = function (_a) {
412
- var src = _a.src, alt = _a.alt, title = _a.title, caption = _a.caption, _b = _a.figure, figure = _b === void 0 ? false : _b, onLoad = _a.onLoad, id = _a.id, className = _a.className, testID = _a.testID, rest = __rest(_a, ["src", "alt", "title", "caption", "figure", "onLoad", "id", "className", "testID"]);
411
+ var src = _a.src, alt = _a.alt, title = _a.title, caption = _a.caption, _b = _a.figure, figure = _b === void 0 ? false : _b, onLoad = _a.onLoad, id = _a.id, className = _a.className, _c = _a.sizes, sizes = _c === void 0 ? '(max-width: 768px) 100vw, (max-width: 1200px) 50vw, 33vw' : _c, testID = _a.testID, rest = __rest(_a, ["src", "alt", "title", "caption", "figure", "onLoad", "id", "className", "sizes", "testID"]);
413
412
  try {
414
413
  // eslint-disable-next-line @typescript-eslint/no-var-requires
415
414
  var nextImage = require('next/image').default;
416
415
  if (!nextImage)
417
416
  throw new Error('Next.js Image not found');
418
417
  var hasFill = !rest.width ? true : false;
419
- return React.createElement(nextImage, __assign({ src: typeof src === 'string' ? src : src, alt: alt, title: title, fill: hasFill, onLoad: onLoad, className: className }, rest));
418
+ var useSizes = hasFill ? { sizes: sizes } : {};
419
+ return React.createElement(nextImage, __assign(__assign({ src: typeof src === 'string' ? src : src, alt: alt, title: title, fill: hasFill, onLoad: onLoad, className: className }, useSizes), rest));
420
420
  }
421
- catch (_c) {
421
+ catch (_d) {
422
422
  var figureClasses = cx('m-0');
423
423
  var classes = cx('w-full h-full', className);
424
424
  /**
@@ -1251,14 +1251,6 @@ var DisplayHeading = function (_a) {
1251
1251
  };
1252
1252
  DisplayHeading.displayName = 'DisplayHeading';
1253
1253
 
1254
- var Container = function (_a) {
1255
- var children = _a.children, className = _a.className, spacing = _a.spacing, padded = _a.padded, isNarrow = _a.isNarrow, isCentered = _a.isCentered, isFlush = _a.isFlush;
1256
- var classes = tailwindMerge.twMerge(cx('container mx-auto my-0', { 'px-4': padded }, { 'py-40': spacing === 'feature' }, { 'py-24': spacing === 'component' }, { 'py-16': spacing === 'module' }, { 'py-10': spacing === 'element' }, { 'py-4': spacing === 'atom' }, { 'py-0': spacing === 'none' }, { 'max-w-3xl': isNarrow }, { 'flex items-center justify-center flex-col': isCentered }, { 'px-0 max-w-full mx-0': isFlush }));
1257
- var contentClasses = cx('mx-4 md:mx-0 w-full', className);
1258
- return (jsxRuntime.jsx("div", { "data-testid": "Container", className: classes, children: jsxRuntime.jsx("div", { className: contentClasses, children: children }) }));
1259
- };
1260
- Container.displayName = 'Container';
1261
-
1262
1254
  var SPACING;
1263
1255
  (function (SPACING) {
1264
1256
  SPACING["NONE"] = "py-0";
@@ -1271,17 +1263,27 @@ var SPACING;
1271
1263
  })(SPACING || (SPACING = {}));
1272
1264
 
1273
1265
  var PanelCards = function (_a) {
1274
- var testID = _a.testID, cardData = _a.cardData, title = _a.title, description = _a.description, withSeparators = _a.withSeparators, _b = _a.spacing, spacing = _b === void 0 ? SPACING.COMPONENT : _b;
1266
+ var testID = _a.testID, cardData = _a.cardData, title = _a.title, description = _a.description, withSeparators = _a.withSeparators, _b = _a.spacing, spacing = _b === void 0 ? SPACING.MODULE : _b;
1275
1267
  var ref = React.useRef(null);
1276
1268
  var isInView = framerMotion.useInView(ref, { once: true });
1277
- return (jsxRuntime.jsx("div", { "data-testid": testID || 'PanelCards', className: spacing, children: jsxRuntime.jsxs(Container, { children: [jsxRuntime.jsxs("div", { className: "relative text-center py-8", children: [title && jsxRuntime.jsx(DisplayHeading, { text: title }), description && jsxRuntime.jsx(Copy, { align: exports.COPY_ALIGN.CENTER, children: description })] }), jsxRuntime.jsx("div", { ref: ref, "data-testid": "PanelCards", className: "flex gap-8 justify-between", children: cardData === null || cardData === void 0 ? void 0 : cardData.map(function (card, index) { return (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx("div", { className: cx('relative flex flex-1 items-center justify-center', { '': withSeparators }), style: {
1278
- transform: isInView ? 'none' : 'translateY(200px)',
1279
- opacity: isInView ? 1 : 0,
1280
- transition: "all 0.9s cubic-bezier(0.17, 0.55, 0.55, 1) ".concat(0.1 * index, "s"),
1281
- }, children: jsxRuntime.jsx(Card, __assign({}, card)) }, index), withSeparators && index < cardData.length - 1 && (jsxRuntime.jsx("div", { className: "w-1 h-10 border-0 border-r border-solid border-primary500" }, "separator-".concat(index)))] })); }) })] }) }));
1269
+ return (jsxRuntime.jsxs("div", { ref: ref, "data-testid": testID || 'PanelCards', className: spacing, children: [(title || description) && (jsxRuntime.jsxs("div", { className: "relative text-center py-8", children: [title && jsxRuntime.jsx(DisplayHeading, { text: title }), description && jsxRuntime.jsx(Copy, { align: exports.COPY_ALIGN.CENTER, children: description })] })), jsxRuntime.jsx("div", { className: "flex gap-8", children: cardData === null || cardData === void 0 ? void 0 : cardData.map(function (card, index) { return (jsxRuntime.jsxs("span", { className: "flex gap-8 justify-between", children: [jsxRuntime.jsx("div", { className: cx('relative flex flex-1 items-center justify-center', { '': withSeparators }), style: {
1270
+ transform: isInView ? 'none' : 'translateY(200px)',
1271
+ opacity: isInView ? 1 : 0,
1272
+ transition: "all 0.9s cubic-bezier(0.17, 0.55, 0.55, 1) ".concat(0.1 * index, "s"),
1273
+ }, children: jsxRuntime.jsx(Card, __assign({}, card)) }), withSeparators && index < cardData.length - 1 && (jsxRuntime.jsx("div", { className: "w-1 h-10 border-0 border-r border-solid border-primary500" }, "separator-".concat(index)))] }, "card-".concat(index))); }) })] }));
1282
1274
  };
1283
1275
  PanelCards.displayName = 'PanelCards';
1284
1276
 
1277
+ var Container = function (_a) {
1278
+ var children = _a.children, className = _a.className, spacing = _a.spacing, padded = _a.padded, isNarrow = _a.isNarrow, isCentered = _a.isCentered, isFlush = _a.isFlush;
1279
+ var classes = tailwindMerge.twMerge(cx('container mx-auto my-0', { 'px-4': padded }, { 'py-40': spacing === 'feature' }, { 'py-24': spacing === 'component' }, { 'py-16': spacing === 'module' }, { 'py-10': spacing === 'element' }, { 'py-4': spacing === 'atom' }, { 'py-0': spacing === 'none' }, { 'max-w-3xl': isNarrow }, { 'flex items-center justify-center flex-col': isCentered }, { 'px-0 max-w-full mx-0': isFlush }));
1280
+ var contentClasses = cx('mx-4 md:mx-0', {
1281
+ 'w-full': !isCentered,
1282
+ }, className);
1283
+ return (jsxRuntime.jsx("div", { "data-testid": "Container", className: classes, children: jsxRuntime.jsx("div", { className: contentClasses, children: children }) }));
1284
+ };
1285
+ Container.displayName = 'Container';
1286
+
1285
1287
  var PanelFeature = function (_a) {
1286
1288
  var testID = _a.testID, title = _a.title, description = _a.description, inversed = _a.inversed, assets = _a.assets, buttonData = _a.buttonData, _b = _a.withBg, withBg = _b === void 0 ? true : _b, _c = _a.spacing, spacing = _c === void 0 ? SPACING.DEFAULT : _c;
1287
1289
  return (jsxRuntime.jsxs("div", { "data-testid": testID || 'PanelFeature', className: cx("relative m-auto w-full flex flex-none flex-nowrap", spacing), children: [withBg && (jsxRuntime.jsx("div", { className: "rounded-full blur-[250px] flex flex-none aspect-1 absolute -top-24 -left-48 w-[500px] opacity-20 bg-gradient-to-r from-primary-darker to-primary-lighter" })), jsxRuntime.jsx(Container, { children: jsxRuntime.jsxs("div", { className: cx('relative flex sm:flex-col md:flex-row flex-nowrap w-full h-min justify-between overflow-visible p-0 items-center gap-16', {
@@ -1433,8 +1435,26 @@ var PanelHero = function (_a) {
1433
1435
  var testID = _a.testID, title = _a.title, description = _a.description, image = _a.image, _b = _a.buttonData, buttonData = _b === void 0 ? {
1434
1436
  variant: exports.BTN_VARIANTS.PRIMARY,
1435
1437
  size: exports.BTN_SIZES.LARGE,
1436
- } : _b, _c = _a.inversed, inversed = _c === void 0 ? false : _c, _d = _a.withBg, withBg = _d === void 0 ? true : _d, _e = _a.spacing, spacing = _e === void 0 ? SPACING.ELEMENT : _e, video = _a.video;
1438
+ } : _b, _c = _a.inversed, inversed = _c === void 0 ? false : _c, _d = _a.withBg, withBg = _d === void 0 ? true : _d, _e = _a.spacing, spacing = _e === void 0 ? SPACING.MODULE : _e, video = _a.video;
1439
+ var controls = framerMotion.useAnimation();
1437
1440
  var ref = React.useRef(null);
1441
+ var isInView = framerMotion.useInView(ref);
1442
+ var defaultAnimation = {
1443
+ damping: 30,
1444
+ delay: 0,
1445
+ mass: 1.2,
1446
+ stiffness: 200,
1447
+ type: 'spring',
1448
+ duration: 0.5,
1449
+ };
1450
+ React.useEffect(function () {
1451
+ if (isInView) {
1452
+ controls.start(function (i) { return ({
1453
+ transform: 'none',
1454
+ transition: __assign(__assign({}, defaultAnimation), { delay: i * 0.1 }),
1455
+ }); });
1456
+ }
1457
+ }, [controls, isInView]);
1438
1458
  var aspectRatioClass = React.useMemo(function () {
1439
1459
  switch (video === null || video === void 0 ? void 0 : video.aspectRatioValue) {
1440
1460
  case '4/3':
@@ -1454,7 +1474,6 @@ var PanelHero = function (_a) {
1454
1474
  }
1455
1475
  }, [video]);
1456
1476
  var translateX = inversed ? 'translateX(100px)' : 'translateX(-100px)';
1457
- var defaultAnimation = { damping: 30, delay: 0, mass: 1.2, stiffness: 200, type: 'spring' };
1458
1477
  return (jsxRuntime.jsxs("div", { "data-testid": testID || 'PanelHero', className: cx('relative m-auto w-full flex flex-none flex-nowrap', spacing), children: [withBg && (jsxRuntime.jsx("div", { className: cx('rounded-full blur-[200px] flex flex-none aspect-1 absolute w-[700px] opacity-20 bg-gradient-to-r from-primary-darker to-primary-lighter z-0', {
1459
1478
  '-bottom-24 right-0': !inversed,
1460
1479
  '-top-24 left-0': inversed,
@@ -1466,20 +1485,11 @@ var PanelHero = function (_a) {
1466
1485
  'text-left bg-gradient-to-r': inversed,
1467
1486
  }), children: [jsxRuntime.jsx(framerMotion.motion.div, { initial: {
1468
1487
  transform: translateX,
1469
- }, animate: {
1470
- transform: 'none',
1471
- transition: __assign({}, defaultAnimation),
1472
- }, transition: { duration: 0.5 }, children: jsxRuntime.jsx(DisplayHeading, { text: title }) }), jsxRuntime.jsx(framerMotion.motion.div, { initial: {
1488
+ }, custom: 0, animate: controls, children: jsxRuntime.jsx(DisplayHeading, { text: title }) }), jsxRuntime.jsx(framerMotion.motion.div, { initial: {
1473
1489
  transform: translateX,
1474
- }, animate: {
1475
- transform: 'none',
1476
- transition: __assign(__assign({}, defaultAnimation), { delay: 0.1 }),
1477
- }, transition: { duration: 0.5 }, children: jsxRuntime.jsx(HtmlContent, { className: "mb-0", align: inversed ? exports.COPY_ALIGN.LEFT : exports.COPY_ALIGN.RIGHT, data: description }) }), jsxRuntime.jsx(framerMotion.motion.div, { initial: {
1490
+ }, custom: 1, animate: controls, children: jsxRuntime.jsx(HtmlContent, { className: "mb-0", align: inversed ? exports.COPY_ALIGN.LEFT : exports.COPY_ALIGN.RIGHT, data: description }) }), jsxRuntime.jsx(framerMotion.motion.div, { initial: {
1478
1491
  transform: translateX,
1479
- }, animate: {
1480
- transform: 'none',
1481
- transition: __assign(__assign({}, defaultAnimation), { delay: 0.2 }),
1482
- }, transition: { duration: 0.5 }, children: jsxRuntime.jsx("div", { className: cx('flex items-center', {
1492
+ }, custom: 2, animate: controls, children: jsxRuntime.jsx("div", { className: cx('flex items-center', {
1483
1493
  'justify-end': !inversed,
1484
1494
  'justify-start': inversed,
1485
1495
  }), children: jsxRuntime.jsx(Button, __assign({}, buttonData)) }) })] }) }), jsxRuntime.jsx("div", { className: "relative w-1/2 z-0", children: jsxRuntime.jsxs("div", { className: cx('relative scale-[1.35] rounded overflow-hidden shadow', aspectRatioClass), children: [image && jsxRuntime.jsx(Image, { src: image, alt: title, fill: true }), video && (jsxRuntime.jsx(Video, { sources: video.sources, options: {
@@ -1491,21 +1501,16 @@ var PanelHero = function (_a) {
1491
1501
  PanelHero.displayName = 'PanelHero';
1492
1502
 
1493
1503
  var PanelProduct = function (_a) {
1494
- var testID = _a.testID, title = _a.title, description = _a.description, image1 = _a.image1, image2 = _a.image2, _b = _a.iosLink, iosLink = _b === void 0 ? '#' : _b, _c = _a.androidLink, androidLink = _c === void 0 ? '#' : _c, _d = _a.inversed, inversed = _d === void 0 ? false : _d, _e = _a.withBg, withBg = _e === void 0 ? true : _e, _f = _a.spacing, spacing = _f === void 0 ? SPACING.DEFAULT : _f;
1495
- return (jsxRuntime.jsxs("div", { "data-testid": testID || 'PanelFeature', className: cx('relative py-8 m-auto w-full flex flex-none flex-nowrap', spacing), children: [withBg && (jsxRuntime.jsx("div", { className: "rounded-full blur-[250px] flex flex-none aspect-1 absolute -bottom-24 -right-48 w-[500px] opacity-20 bg-gradient-to-r from-primary-darker to-primary-lighter" })), jsxRuntime.jsx(Container, { children: jsxRuntime.jsxs("div", { className: cx('relative flex flex-col md:flex-row flex-nowrap w-full h-full overflow-visible gap-16 border border-solid border-primary bg-primary bg-opacity-10 backdrop-blur-lg rounded border-opacityDark20 p-8', {
1504
+ var testID = _a.testID, title = _a.title, description = _a.description, image1 = _a.image1, image2 = _a.image2, _b = _a.iosLink, iosLink = _b === void 0 ? '#' : _b, _c = _a.androidLink, androidLink = _c === void 0 ? '#' : _c, _d = _a.inversed, inversed = _d === void 0 ? false : _d, _e = _a.withBg, withBg = _e === void 0 ? true : _e, _f = _a.spacing, spacing = _f === void 0 ? SPACING.MODULE : _f;
1505
+ return (jsxRuntime.jsxs("div", { "data-testid": testID || 'PanelFeature', className: cx('relative m-auto w-full flex flex-none flex-nowrap', spacing), children: [withBg && (jsxRuntime.jsx("div", { className: "rounded-full blur-[250px] flex flex-none aspect-1 absolute -bottom-24 -right-48 w-[500px] opacity-20 bg-gradient-to-r from-primary-darker to-primary-lighter" })), jsxRuntime.jsx(Container, { children: jsxRuntime.jsxs("div", { className: cx('relative flex flex-col md:flex-row flex-nowrap w-full h-full overflow-visible gap-16 border border-solid border-primary bg-primary bg-opacity-10 backdrop-blur-lg rounded border-opacityDark20 p-8', {
1496
1506
  'flex-row-reverse': inversed,
1497
- }), children: [jsxRuntime.jsxs("div", { className: "w-full md:w-1/2 top-0 relative", children: [jsxRuntime.jsx("div", { className: "absolute aspect-[8/17] -rotate-12 w-[135px] left-1/3 top-4 md:w-[180px] md:left-1/3 md:top-4 lg:w-[210px] lg:left-1/2 lg:-top-1/3", children: jsxRuntime.jsx(Image, { src: image2, alt: title }) }), jsxRuntime.jsx("div", { className: "relative md:absolute aspect-[8/17] -rotate-0 w-[150px] left-0 top-0 md:w-[220px] md:left-0 md:-top-6 lg:w-[250px] lg:left-1/4 lg:-top-1/2", children: jsxRuntime.jsx(Image, { src: image1, alt: title }) })] }), jsxRuntime.jsxs("div", { className: "w-full md:w-1/2", children: [jsxRuntime.jsx("div", { children: jsxRuntime.jsx(DisplayHeading, { text: title }) }), jsxRuntime.jsx("div", { children: jsxRuntime.jsx(Copy, { children: description }) }), jsxRuntime.jsxs("div", { className: "flex items-center justify-start gap-4", children: [jsxRuntime.jsx("div", { className: "relative w-[150px] h-[50px]", children: jsxRuntime.jsx(Link, { href: iosLink, target: "_blank", children: jsxRuntime.jsx(Image, { src: "https://tools.applemediaservices.com/api/badges/download-on-the-app-store/black/en-us", alt: "App Store" }) }) }), jsxRuntime.jsx("div", { className: "relative w-[190px] h-[75px]", children: jsxRuntime.jsx(Link, { href: androidLink, target: "_blank", children: jsxRuntime.jsx(Image, { src: "https://play.google.com/intl/en_us/badges/static/images/badges/en_badge_web_generic.png", alt: "Google Play" }) }) })] })] })] }) })] }));
1507
+ }), children: [jsxRuntime.jsxs("div", { className: "w-full md:w-1/2 top-0 relative", children: [jsxRuntime.jsx("div", { className: "absolute aspect-[8/17] -rotate-12 w-[135px] left-1/3 top-4 md:w-[180px] md:left-1/3 md:top-4 lg:w-[210px] lg:left-1/2 lg:-top-1/3", children: jsxRuntime.jsx(Image, { src: image2, alt: title }) }), jsxRuntime.jsx("div", { className: "relative md:absolute aspect-[8/17] -rotate-0 w-[150px] left-0 top-0 md:w-[220px] md:left-0 md:-top-6 lg:w-[250px] lg:left-1/4 lg:-top-1/2", children: jsxRuntime.jsx(Image, { src: image1, alt: title }) })] }), jsxRuntime.jsxs("div", { className: "w-full md:w-1/2", children: [jsxRuntime.jsx("div", { children: jsxRuntime.jsx(DisplayHeading, { text: title }) }), jsxRuntime.jsx("div", { children: jsxRuntime.jsx(Copy, { children: description }) }), jsxRuntime.jsxs("div", { className: "flex items-center justify-start gap-4", children: [jsxRuntime.jsx("div", { className: "relative w-[150px] h-[50px]", children: jsxRuntime.jsx(Link, { href: iosLink, target: "_blank", hideExternalIcon: true, children: jsxRuntime.jsx(Image, { src: "https://apple-resources.s3.amazonaws.com/media-badges/download-on-the-app-store/black/en-us.svg", alt: "App Store" }) }) }), jsxRuntime.jsx("div", { className: "relative w-[190px] h-[75px]", children: jsxRuntime.jsx(Link, { href: androidLink, target: "_blank", hideExternalIcon: true, children: jsxRuntime.jsx(Image, { src: "https://play.google.com/intl/en_us/badges/static/images/badges/en_badge_web_generic.png", alt: "Google Play" }) }) })] })] })] }) })] }));
1498
1508
  };
1499
1509
  PanelProduct.displayName = 'PanelProduct';
1500
1510
 
1501
1511
  var PanelVideo = function (_a) {
1502
- var testID = _a.testID, sources = _a.sources, className = _a.className, title = _a.title, description = _a.description, _b = _a.spacing, spacing = _b === void 0 ? SPACING.NONE : _b;
1503
- return (jsxRuntime.jsxs("div", { "data-testid": testID || '"PanelVideo"', className: cx('relative m-auto w-full flex flex-none flex-nowrap aspect-[16/6.6]', spacing, className), children: [jsxRuntime.jsx(Video, { rounded: false, sources: sources, options: {
1504
- autoplay: true,
1505
- muted: true,
1506
- controls: false,
1507
- loop: true,
1508
- } }), jsxRuntime.jsxs("div", { className: "absolute top-0 left-0 w-full h-full z-10", children: [jsxRuntime.jsx("div", { className: "absolute top-0 left-0 w-full h-full bg-gradient-to-r from-transparent to-black opacity-50" }), jsxRuntime.jsxs("div", { className: "absolute top-0 left-0 w-full h-full flex flex-col items-end justify-center pr-24 invert", children: [title && (jsxRuntime.jsx(framerMotion.motion.div, { initial: {
1512
+ var testID = _a.testID, className = _a.className, title = _a.title, description = _a.description, _b = _a.spacing, spacing = _b === void 0 ? SPACING.NONE : _b, videoProps = _a.videoProps;
1513
+ return (jsxRuntime.jsxs("div", { "data-testid": testID || '"PanelVideo"', className: cx('relative m-auto w-full flex flex-none flex-nowrap aspect-[16/6.6]', spacing, className), children: [jsxRuntime.jsx(Video, { rounded: false, options: __assign({ autoplay: true, muted: true, controls: false, loop: true }, videoProps === null || videoProps === void 0 ? void 0 : videoProps.options), sources: videoProps === null || videoProps === void 0 ? void 0 : videoProps.sources }), jsxRuntime.jsxs("div", { className: "absolute top-0 left-0 w-full h-full z-10", children: [jsxRuntime.jsx("div", { className: "absolute top-0 left-0 w-full h-full bg-gradient-to-r from-transparent to-black opacity-50" }), jsxRuntime.jsxs("div", { className: "absolute top-0 left-0 w-full h-full flex flex-col items-end justify-center pr-24 invert", children: [title && (jsxRuntime.jsx(framerMotion.motion.div, { initial: {
1509
1514
  transform: 'translateX(25px)',
1510
1515
  }, animate: {
1511
1516
  transform: 'none',
@@ -1,7 +1,7 @@
1
1
  import { Props } from './Image.types';
2
2
  import React from 'react';
3
3
  declare const Image: {
4
- ({ src, alt, title, caption, figure, onLoad, id, className, testID, ...rest }: Props): React.ReactElement;
4
+ ({ src, alt, title, caption, figure, onLoad, id, className, sizes, testID, ...rest }: Props): React.ReactElement;
5
5
  displayName: string;
6
6
  };
7
7
  export default Image;
@@ -10,6 +10,8 @@ export interface Props extends ImageProps {
10
10
  figure?: boolean;
11
11
  /** The image will take up the entire width of the container. */
12
12
  fluid?: boolean;
13
+ /** The next/image sizes attribute. */
14
+ sizes?: string;
13
15
  crossOrigin?: 'anonymous' | 'use-credentials';
14
16
  id?: string;
15
17
  testID?: string;
@@ -1,7 +1,7 @@
1
1
  import { Props } from './Link.types';
2
2
  import React from 'react';
3
3
  declare const Link: {
4
- ({ href, children, onClick, history, target, id, testID, className, prefetch, }: Props): React.ReactElement;
4
+ ({ href, children, onClick, history, target, id, testID, className, prefetch, hideExternalIcon, }: Props): React.ReactElement;
5
5
  displayName: string;
6
6
  };
7
7
  export default Link;
@@ -10,4 +10,5 @@ export interface Props {
10
10
  testID?: string;
11
11
  className?: string;
12
12
  prefetch?: boolean;
13
+ hideExternalIcon?: boolean;
13
14
  }
@@ -3,8 +3,8 @@ import { SPACING } from '../Hero/Hero.types';
3
3
  export interface Props {
4
4
  testID?: string;
5
5
  cardData: CardProps[];
6
- title: string;
7
- description: string;
6
+ title?: string;
7
+ description?: string;
8
8
  withSeparators?: boolean;
9
9
  spacing?: SPACING;
10
10
  }
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
2
  import { Props } from './PanelVideo.types';
3
3
  declare const PanelVideo: {
4
- ({ testID, sources, className, title, description, spacing, }: Props): React.ReactElement;
4
+ ({ testID, className, title, description, spacing, videoProps, }: Props): React.ReactElement;
5
5
  displayName: string;
6
6
  };
7
7
  export default PanelVideo;
@@ -1,12 +1,10 @@
1
- import { SPACING } from "../Hero/Hero.types";
1
+ import { SPACING } from '../Hero/Hero.types';
2
+ import { Props as videoProps } from '../Video/Video.types';
2
3
  export interface Props {
3
4
  testID?: string;
4
- sources: {
5
- src: string;
6
- type?: string;
7
- }[];
8
5
  className?: string;
9
6
  title?: string;
10
7
  description?: string;
11
8
  spacing?: SPACING;
9
+ videoProps: videoProps;
12
10
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@4alldigital/foundation-ui--gamma",
3
- "version": "1.41.1",
3
+ "version": "1.41.2",
4
4
  "description": "Foundation UI Component library with GAMMA theme. ",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.esm.js",
@@ -39,7 +39,7 @@
39
39
  "publishConfig": {
40
40
  "access": "public"
41
41
  },
42
- "gitHead": "c7a9bbde6ae348f40758b3c5e16ddf96cc2a0b64",
42
+ "gitHead": "8e67d387a0b23b11b2ccab353e9c3bc6ffcd2d26",
43
43
  "dependencies": {
44
44
  "@elastic/datemath": "^5.0.3",
45
45
  "@elastic/react-search-ui": "^1.21.1",