@makeswift/runtime 0.2.2 → 0.2.4
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/Box.cjs.js +14 -14
- package/dist/Box.cjs.js.map +1 -1
- package/dist/Button.cjs.js +23 -23
- package/dist/Button.cjs.js.map +1 -1
- package/dist/Carousel.cjs.js +8 -8
- package/dist/Carousel.cjs.js.map +1 -1
- package/dist/Carousel.es.js.map +1 -1
- package/dist/Countdown.cjs.js +13 -13
- package/dist/Countdown.cjs.js.map +1 -1
- package/dist/Divider.cjs.js +4 -4
- package/dist/Divider.cjs.js.map +1 -1
- package/dist/Embed.cjs.js +2 -2
- package/dist/Embed.cjs.js.map +1 -1
- package/dist/Form.cjs.js +72 -72
- package/dist/Form.cjs.js.map +1 -1
- package/dist/Image.cjs2.js +10 -10
- package/dist/Image.cjs2.js.map +1 -1
- package/dist/Navigation.cjs.js +17 -17
- package/dist/Navigation.cjs.js.map +1 -1
- package/dist/Root.cjs.js +2 -2
- package/dist/Root.cjs.js.map +1 -1
- package/dist/SocialLinks.cjs.js +3 -3
- package/dist/SocialLinks.cjs.js.map +1 -1
- package/dist/Text.cjs.js +21 -21
- package/dist/Text.cjs.js.map +1 -1
- package/dist/actions.es.js +1 -1
- package/dist/components.cjs.js +18 -18
- package/dist/cssMediaRules.cjs.js +7 -7
- package/dist/cssMediaRules.cjs.js.map +1 -1
- package/dist/index.cjs.js +374 -8
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.cjs2.js +10 -10
- package/dist/index.cjs2.js.map +1 -1
- package/dist/index.cjs3.js +3 -3
- package/dist/index.cjs3.js.map +1 -1
- package/dist/index.es.js +367 -12
- package/dist/index.es.js.map +1 -1
- package/dist/index.es2.js.map +1 -1
- package/dist/next.cjs.js +22 -402
- package/dist/next.cjs.js.map +1 -1
- package/dist/next.es.js +12 -388
- package/dist/next.es.js.map +1 -1
- package/dist/react-builder-preview.cjs.js +11 -11
- package/dist/react-builder-preview.cjs.js.map +1 -1
- package/dist/react-builder-preview.es.js +1 -1
- package/dist/react.cjs.js +8 -8
- package/dist/types/src/next/api-handler.d.ts +25 -1
- package/dist/types/src/next/api-handler.d.ts.map +1 -1
- package/dist/types/src/next/index.d.ts +1 -1
- package/dist/types/src/next/index.d.ts.map +1 -1
- package/dist/types/src/runtimes/react/use-style.d.ts.map +1 -1
- package/dist/useBoxShadow.cjs.js +3 -3
- package/dist/useBoxShadow.cjs.js.map +1 -1
- package/dist/useMediaQuery.cjs.js +6 -6
- package/dist/useMediaQuery.cjs.js.map +1 -1
- package/package.json +4 -4
package/dist/Navigation.cjs.js
CHANGED
|
@@ -38,7 +38,7 @@ var Image = require("./Image.cjs2.js");
|
|
|
38
38
|
var Button = require("./Button.cjs.js");
|
|
39
39
|
var jsxRuntime = require("react/jsx-runtime");
|
|
40
40
|
var cssMediaRules = require("./cssMediaRules.cjs.js");
|
|
41
|
-
var
|
|
41
|
+
var next = require("./index.cjs.js");
|
|
42
42
|
var index$1 = require("./index.cjs3.js");
|
|
43
43
|
require("next/image");
|
|
44
44
|
require("./useBoxShadow.cjs.js");
|
|
@@ -314,7 +314,7 @@ const StyledDropDownItem = styled__default["default"](index$1.Link).withConfig({
|
|
|
314
314
|
const letterSpacing = textStyle.letterSpacing == null ? null : textStyle.letterSpacing;
|
|
315
315
|
const textTransform = textStyle.textTransform || [];
|
|
316
316
|
return styled.css`
|
|
317
|
-
color: ${color == null ? "black" :
|
|
317
|
+
color: ${color == null ? "black" : next.colorToString(color)};
|
|
318
318
|
font-size: ${`${fontSize.value}${fontSize.unit}`};
|
|
319
319
|
font-weight: ${fontWeight};
|
|
320
320
|
font-style: ${fontStyle.includes("italic") ? "italic" : "normal"};
|
|
@@ -334,7 +334,7 @@ function DropDownItem$1(_a) {
|
|
|
334
334
|
"color"
|
|
335
335
|
]);
|
|
336
336
|
return /* @__PURE__ */ jsxRuntime.jsx(StyledDropDownItem, __spreadProps(__spreadValues({}, restOfProps), {
|
|
337
|
-
color:
|
|
337
|
+
color: next.useResponsiveColor(color)
|
|
338
338
|
}));
|
|
339
339
|
}
|
|
340
340
|
function DropDownButton(_c) {
|
|
@@ -353,7 +353,7 @@ function DropDownButton(_c) {
|
|
|
353
353
|
]);
|
|
354
354
|
const container = React.useRef(null);
|
|
355
355
|
const [position, setPosition] = React.useState("left");
|
|
356
|
-
|
|
356
|
+
next.useIsomorphicLayoutEffect(() => {
|
|
357
357
|
if (container.current && container.current.ownerDocument.defaultView.innerWidth < container.current.offsetLeft + DROP_DOWN_MENU_WIDTH) {
|
|
358
358
|
setPosition("right");
|
|
359
359
|
} else {
|
|
@@ -363,8 +363,8 @@ function DropDownButton(_c) {
|
|
|
363
363
|
return /* @__PURE__ */ jsxRuntime.jsxs(DropDownContainer, {
|
|
364
364
|
ref: container,
|
|
365
365
|
children: [/* @__PURE__ */ jsxRuntime.jsx(Button["default"], __spreadProps(__spreadValues({}, restOfProps), {
|
|
366
|
-
textColor:
|
|
367
|
-
color:
|
|
366
|
+
textColor: next.useResponsiveColor(textColor),
|
|
367
|
+
color: next.useResponsiveColor(color),
|
|
368
368
|
children: /* @__PURE__ */ jsxRuntime.jsxs("div", {
|
|
369
369
|
style: {
|
|
370
370
|
display: "flex",
|
|
@@ -439,7 +439,7 @@ const StyledLink = styled__default["default"](index$1.Link).withConfig({
|
|
|
439
439
|
color: black;
|
|
440
440
|
${cssMediaRules.cssTextStyle()}
|
|
441
441
|
${(p) => cssMediaRules.cssMediaRules([p.color], ([color]) => styled.css`
|
|
442
|
-
color: ${color == null ? "black" :
|
|
442
|
+
color: ${color == null ? "black" : next.colorToString(color)};
|
|
443
443
|
`)}
|
|
444
444
|
`;
|
|
445
445
|
function DropDownItem(_e) {
|
|
@@ -449,7 +449,7 @@ function DropDownItem(_e) {
|
|
|
449
449
|
"color"
|
|
450
450
|
]);
|
|
451
451
|
return /* @__PURE__ */ jsxRuntime.jsx(StyledLink, __spreadProps(__spreadValues({}, restOfProps), {
|
|
452
|
-
color:
|
|
452
|
+
color: next.useResponsiveColor(color)
|
|
453
453
|
}));
|
|
454
454
|
}
|
|
455
455
|
function MobileDropDownButton(_g) {
|
|
@@ -472,8 +472,8 @@ function MobileDropDownButton(_g) {
|
|
|
472
472
|
const [isOpen, setIsOpen] = React.useState(false);
|
|
473
473
|
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
474
474
|
children: [/* @__PURE__ */ jsxRuntime.jsx(ButtonLink$1, __spreadProps(__spreadValues({}, restOfProps), {
|
|
475
|
-
textColor:
|
|
476
|
-
color:
|
|
475
|
+
textColor: next.useResponsiveColor(textColor),
|
|
476
|
+
color: next.useResponsiveColor(color),
|
|
477
477
|
onPointerDown: () => setIsOpen((prev) => !prev),
|
|
478
478
|
children: /* @__PURE__ */ jsxRuntime.jsxs("div", {
|
|
479
479
|
style: {
|
|
@@ -516,8 +516,8 @@ function NavigationButton$1(props) {
|
|
|
516
516
|
"color"
|
|
517
517
|
]);
|
|
518
518
|
return /* @__PURE__ */ jsxRuntime.jsx(Button["default"], __spreadProps(__spreadValues({}, restOfProps), {
|
|
519
|
-
textColor:
|
|
520
|
-
color:
|
|
519
|
+
textColor: next.useResponsiveColor(textColor),
|
|
520
|
+
color: next.useResponsiveColor(color)
|
|
521
521
|
}));
|
|
522
522
|
}
|
|
523
523
|
const ButtonLink = styled__default["default"](NavigationButton$1)`
|
|
@@ -538,7 +538,7 @@ const Container$1 = styled__default["default"].div.withConfig({
|
|
|
538
538
|
display: none;
|
|
539
539
|
` : styled.css`
|
|
540
540
|
display: flex;
|
|
541
|
-
background-color: ${backgroundColor == null ? "black" :
|
|
541
|
+
background-color: ${backgroundColor == null ? "black" : next.colorToString(backgroundColor)};
|
|
542
542
|
transform: ${p.open ? `translate3d(0,0,0)` : `translate3d(${{
|
|
543
543
|
coverRight: "",
|
|
544
544
|
coverLeft: "-"
|
|
@@ -569,7 +569,7 @@ const CloseIconContainer = styled__default["default"].button.withConfig({
|
|
|
569
569
|
background: none;
|
|
570
570
|
fill: currentColor;
|
|
571
571
|
${(p) => cssMediaRules.cssMediaRules([p.color], ([color]) => styled.css`
|
|
572
|
-
color: ${color == null ? "rgba(161, 168, 194, 0.5)" :
|
|
572
|
+
color: ${color == null ? "rgba(161, 168, 194, 0.5)" : next.colorToString(color)};
|
|
573
573
|
`)}
|
|
574
574
|
`;
|
|
575
575
|
function MobileMenu({
|
|
@@ -647,7 +647,7 @@ const OpenIconContainer = styled__default["default"].button.withConfig({
|
|
|
647
647
|
${(p) => cssMediaRules.cssMediaRules([p.mobileMenuAnimation, p.alignment, p.color], ([mobileMenuAnimation, alignment = "flex-end", color]) => styled.css`
|
|
648
648
|
display: ${mobileMenuAnimation == null ? "none" : "flex"};
|
|
649
649
|
justify-content: ${alignment};
|
|
650
|
-
color: ${color == null ? "rgba(161, 168, 194, 0.5)" :
|
|
650
|
+
color: ${color == null ? "rgba(161, 168, 194, 0.5)" : next.colorToString(color)};
|
|
651
651
|
`)}
|
|
652
652
|
`;
|
|
653
653
|
function NavigationButton(props) {
|
|
@@ -659,8 +659,8 @@ function NavigationButton(props) {
|
|
|
659
659
|
"color"
|
|
660
660
|
]);
|
|
661
661
|
return /* @__PURE__ */ jsxRuntime.jsx(Button["default"], __spreadProps(__spreadValues({}, restOfProps), {
|
|
662
|
-
textColor:
|
|
663
|
-
color:
|
|
662
|
+
textColor: next.useResponsiveColor(textColor),
|
|
663
|
+
color: next.useResponsiveColor(color)
|
|
664
664
|
}));
|
|
665
665
|
}
|
|
666
666
|
const placeholder = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Navigation.cjs.js","sources":["../src/components/icons/mobile-menu-28.svg","../src/components/builtin/Navigation/components/LinksPlaceholder/index.tsx","../src/components/icons/caret-down-8.svg","../src/components/icons/plus-8.svg","../src/components/icons/arrow-down-8.svg","../src/components/icons/chevron-down-8.svg","../src/components/builtin/Navigation/components/DropDownButton/index.tsx","../src/components/icons/times-16.svg","../src/components/builtin/Navigation/components/MobileMenu/components/MobileDropDownButton/index.tsx","../src/components/builtin/Navigation/components/MobileMenu/index.tsx","../src/components/builtin/Navigation/Navigation.tsx"],"sourcesContent":["export default \"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyOCIgaGVpZ2h0PSIyOCI+CiAgPHBhdGggZD0iTTI3IDE1SDFhMSAxIDAgMCAxLTEtMSAxIDEgMCAwIDEgMS0xaDI2YTEgMSAwIDAgMSAxIDEgMSAxIDAgMCAxLTEgMXptMC0xMEgxYTEgMSAwIDAgMC0xIDEgMSAxIDAgMCAwIDEgMWgyNmExIDEgMCAwIDAgMS0xIDEgMSAwIDAgMC0xLTF6bTAgMTZIMWExIDEgMCAwIDAtMSAxIDEgMSAwIDAgMCAxIDFoMjZhMSAxIDAgMCAwIDEtMSAxIDEgMCAwIDAtMS0xeiIvPgo8L3N2Zz4=\"","import styled from 'styled-components'\n\nimport { ResponsiveLengthValue } from '../../../../../prop-controllers/descriptors'\nimport GutterContainer from '../../../../shared/GutterContainer'\n\nconst PlaceholderLink = styled.div.withConfig({\n shouldForwardProp: prop => !['width', 'button'].includes(prop.toString()),\n})<{ width: number; button?: boolean }>`\n width: ${props => props.width}px;\n height: ${props => (props.button === true ? 32 : 8)}px;\n background-color: #a1a8c2;\n border-radius: ${props => (props.button === true ? 6 : 2)}px;\n opacity: 0.4;\n`\n\ntype Props = { gutter?: ResponsiveLengthValue }\n\nconst links = [{ width: 50 }, { width: 70 }, { width: 60 }, { width: 80, button: true }]\n\nexport default function LinksPlaceholder({ gutter }: Props): JSX.Element {\n return (\n <>\n {links.map((link, i) => (\n <GutterContainer key={i} gutter={gutter} first={i === 0} last={i === links.length - 1}>\n <PlaceholderLink {...link} />\n </GutterContainer>\n ))}\n </>\n )\n}\n","export default \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iOCIgaGVpZ2h0PSI4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0xIDJhMSAxIDAgMCAwLS43MDcgMS43MDdsMyAzYTEgMSAwIDAgMCAxLjQxNCAwbDMtM0ExIDEgMCAwIDAgNyAySDF6Ii8+PC9zdmc+\"","export default \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iOCIgaGVpZ2h0PSI4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik00IDBhMSAxIDAgMCAwLTEgMXYySDFhMSAxIDAgMSAwIDAgMmgydjJhMSAxIDAgMCAwIDIgMFY1aDJhMSAxIDAgMCAwIDAtMkg1VjFhMSAxIDAgMCAwLTEtMXoiLz48L3N2Zz4=\"","export default \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iOCIgaGVpZ2h0PSI4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik01IDFhMSAxIDAgMCAwLTIgMHYzLjU4NmwtLjI5My0uMjkzYTEgMSAwIDAgMC0xLjQxNCAxLjQxNGwyIDJhMSAxIDAgMCAwIDEuNDE0IDBsMi0yYTEgMSAwIDAgMC0xLjQxNC0xLjQxNEw1IDQuNTg2VjF6Ii8+PC9zdmc+\"","export default \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iOCIgaGVpZ2h0PSI4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNLjI5MyAyLjI5M2ExIDEgMCAwIDEgMS40MTQgMEw0IDQuNTg2bDIuMjkzLTIuMjkzYTEgMSAwIDAgMSAxLjQxNCAxLjQxNGwtMyAzYTEgMSAwIDAgMS0xLjQxNCAwbC0zLTNhMSAxIDAgMCAxIDAtMS40MTR6Ii8+PC9zdmc+\"","import { ComponentPropsWithoutRef, useRef, useState } from 'react'\nimport styled, { css, keyframes } from 'styled-components'\n\nimport { ReactComponent as CaretDown8 } from '../../../../icons/caret-down-8.svg'\nimport { ReactComponent as Plus8 } from '../../../../icons/plus-8.svg'\nimport { ReactComponent as ArrowDown8 } from '../../../../icons/arrow-down-8.svg'\nimport { ReactComponent as ChevronDown8 } from '../../../../icons/chevron-down-8.svg'\nimport { cssMediaRules, cssTextStyle } from '../../../../utils/cssMediaRules'\nimport {\n ResponsiveValue,\n ResponsiveColorValue,\n TextStyleValue,\n LinkValue,\n} from '../../../../../prop-controllers/descriptors'\nimport { ColorValue as Color } from '../../../../utils/types'\nimport { colorToString } from '../../../../utils/colorToString'\nimport { useResponsiveColor } from '../../../../hooks'\n\nimport { Link } from '../../../../shared/Link'\nimport Button from '../../../Button'\nimport { useIsomorphicLayoutEffect } from '../../../../hooks/useIsomorphicLayoutEffect'\n\nconst DROP_DOWN_MENU_WIDTH = 200\n\ntype Position = 'left' | 'right'\n\nconst DropDownMenu = styled.div.withConfig({\n shouldForwardProp: prop => !['position'].includes(prop.toString()),\n})<{ position: Position }>`\n position: absolute;\n top: 100%;\n left: ${props => (props.position === 'left' ? 0 : 'auto')};\n right: ${props => (props.position === 'right' ? 0 : 'auto')};\n background: #fff;\n margin: 0;\n padding: 8px 0;\n border-radius: 4px;\n box-shadow: 0 3px 10px rgba(0, 0, 0, 0.15);\n width: ${DROP_DOWN_MENU_WIDTH}px;\n z-index: 99;\n list-style: none;\n overflow: hidden;\n transform-origin: 50% 0;\n will-change: transform, opacity;\n transform-style: preserve-3d;\n display: none;\n`\n\nconst dropIn = keyframes`\n 0% {\n opacity: 0;\n transform: rotateX(-20deg);\n }\n 100% {\n opacity: 1;\n transform: none;\n }\n`\n\nconst DropDownContainer = styled.div`\n position: relative;\n\n &:hover > ${DropDownMenu} {\n display: block;\n animation: ${dropIn} 0.25s;\n }\n`\n\nconst StyledDropDownItem = styled(Link).withConfig({\n shouldForwardProp: prop => !['color', 'textStyle'].includes(prop.toString()),\n})<{\n color?: ResponsiveValue<Color> | null\n textStyle?: TextStyleValue\n}>`\n display: block;\n text-decoration: none;\n line-height: 1.4;\n padding: 8px 16px;\n color: black;\n background-color: transparent;\n transition: background-color 0.2s;\n ${cssTextStyle()}\n ${p =>\n cssMediaRules([p.color, p.textStyle] as const, ([color, textStyle = {}]) => {\n const fontSize = textStyle.fontSize || { value: 14, unit: 'px' }\n const fontWeight = textStyle.fontWeight == null ? 'normal' : textStyle.fontWeight\n const fontStyle = textStyle.fontStyle || []\n const letterSpacing = textStyle.letterSpacing == null ? null : textStyle.letterSpacing\n const textTransform = textStyle.textTransform || []\n\n return css`\n color: ${color == null ? 'black' : colorToString(color)};\n font-size: ${`${fontSize.value}${fontSize.unit}`};\n font-weight: ${fontWeight};\n font-style: ${fontStyle.includes('italic') ? 'italic' : 'normal'};\n letter-spacing: ${letterSpacing == null ? 'normal' : `${letterSpacing}px`};\n text-transform: ${textTransform.includes('uppercase') ? 'uppercase' : 'none'};\n `\n })}\n\n &:hover {\n background-color: rgba(0, 0, 0, 0.04);\n }\n`\n\ntype BaseDropDownItemProps = {\n color?: ResponsiveColorValue\n textStyle?: TextStyleValue\n}\n\ntype DropDownItemProps = BaseDropDownItemProps &\n Omit<ComponentPropsWithoutRef<typeof StyledDropDownItem>, keyof BaseDropDownItemProps>\n\nfunction DropDownItem({ color, ...restOfProps }: DropDownItemProps) {\n // @ts-expect-error: HTMLDivElement `color` attribute conflicts with prop.\n return <StyledDropDownItem {...restOfProps} color={useResponsiveColor(color)} />\n}\n\ntype Props = ComponentPropsWithoutRef<typeof Button> & {\n label: string\n caret?: 'caret' | 'plus' | 'arrow-down' | 'chevron-down'\n links?: Array<{\n id: string\n payload: ComponentPropsWithoutRef<typeof DropDownItem> & {\n link?: LinkValue\n label: string\n }\n }>\n}\n\nexport default function DropDownButton({\n label,\n caret = 'caret',\n links = [],\n textColor,\n color,\n ...restOfProps\n}: Props): JSX.Element {\n const container = useRef<HTMLDivElement>(null)\n const [position, setPosition] = useState<Position>('left')\n\n useIsomorphicLayoutEffect(() => {\n if (\n container.current &&\n container.current.ownerDocument.defaultView!.innerWidth <\n container.current.offsetLeft + DROP_DOWN_MENU_WIDTH\n ) {\n setPosition('right')\n } else {\n setPosition('left')\n }\n }, [setPosition])\n\n return (\n <DropDownContainer ref={container}>\n <Button\n {...restOfProps}\n textColor={useResponsiveColor(textColor)}\n color={useResponsiveColor(color)}\n >\n <div style={{ display: 'flex', alignItems: 'center' }}>\n <span style={{ marginRight: 6 }}>{label}</span>\n <span style={{ display: 'inline-flex', fill: 'currentColor' }}>\n {caret === 'caret' && <CaretDown8 />}\n {caret === 'plus' && <Plus8 />}\n {caret === 'arrow-down' && <ArrowDown8 />}\n {caret === 'chevron-down' && <ChevronDown8 />}\n </span>\n </div>\n </Button>\n <DropDownMenu position={position}>\n {links.map(({ id, payload }) => (\n <DropDownItem {...payload} key={id}>\n {payload.label}\n </DropDownItem>\n ))}\n </DropDownMenu>\n </DropDownContainer>\n )\n}\n","export default \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMy43MDcgMy43MDdhMSAxIDAgMCAwLTEuNDE0LTEuNDE0TDggNi41ODYgMy43MDcgMi4yOTNhMSAxIDAgMCAwLTEuNDE0IDEuNDE0TDYuNTg2IDhsLTQuMjkzIDQuMjkzYTEgMSAwIDEgMCAxLjQxNCAxLjQxNEw4IDkuNDE0bDQuMjkzIDQuMjkzYTEgMSAwIDAgMCAxLjQxNC0xLjQxNEw5LjQxNCA4bDQuMjkzLTQuMjkzWiIvPgo8L3N2Zz4=\"","import { ComponentPropsWithoutRef, useState } from 'react'\nimport styled, { css } from 'styled-components'\n\nimport { cssMediaRules, cssTextStyle } from '../../../../../../utils/cssMediaRules'\nimport {\n ResponsiveValue,\n ResponsiveColorValue,\n TextStyleValue,\n LinkValue,\n} from '../../../../../../../prop-controllers/descriptors'\nimport { ColorValue as Color } from '../../../../../../utils/types'\nimport { colorToString } from '../../../../../../utils/colorToString'\nimport { useResponsiveColor } from '../../../../../../hooks'\n\nimport { ReactComponent as CaretDown8 } from '../../../../../../icons/caret-down-8.svg'\nimport { ReactComponent as Plus8 } from '../../../../../../icons/plus-8.svg'\nimport { ReactComponent as ArrowDown8 } from '../../../../../../icons/arrow-down-8.svg'\nimport { ReactComponent as ChevronDown8 } from '../../../../../../icons/chevron-down-8.svg'\n\nimport { Link } from '../../../../../../shared/Link'\nimport Button from '../../../../../Button'\n\nconst DropDownMenu = styled.div.withConfig({\n shouldForwardProp: prop => !['open'].includes(prop.toString()),\n})<{ open: boolean }>`\n display: ${props => (props.open ? 'flex' : 'none')};\n flex-direction: column;\n padding: 8px;\n`\n\nconst ButtonLink = styled(Button)`\n margin: 8px 0;\n`\n\nconst StyledLink = styled(Link).withConfig({\n shouldForwardProp: prop => !['textStyle', 'color'].includes(prop.toString()),\n})<{\n textStyle?: TextStyleValue\n color?: ResponsiveValue<Color> | null\n}>`\n text-decoration: none;\n line-height: 1.4;\n padding: 8px 16px;\n color: black;\n ${cssTextStyle()}\n ${p =>\n cssMediaRules(\n [p.color] as const,\n ([color]) => css`\n color: ${color == null ? 'black' : colorToString(color)};\n `,\n )}\n`\n\ntype BaseDropDownItemProps = {\n color?: ResponsiveColorValue\n textStyle?: TextStyleValue\n}\n\ntype DropDownItemProps = BaseDropDownItemProps &\n Omit<ComponentPropsWithoutRef<typeof StyledLink>, keyof BaseDropDownItemProps>\n\nfunction DropDownItem({ color, ...restOfProps }: DropDownItemProps) {\n // @ts-expect-error: HTMLAnchorElement `color` attribute conflict with props\n return <StyledLink {...restOfProps} color={useResponsiveColor(color)} />\n}\n\ntype Props = ComponentPropsWithoutRef<typeof Button> & {\n label: string\n links?: Array<{\n id: string\n payload: ComponentPropsWithoutRef<typeof DropDownItem> & {\n link?: LinkValue\n label: string\n }\n }>\n onClose?: () => unknown\n caret?: string\n}\n\nexport default function MobileDropDownButton({\n label,\n caret,\n links = [],\n onClose = () => {},\n color,\n textColor,\n ...restOfProps\n}: Props): JSX.Element {\n const [isOpen, setIsOpen] = useState(false)\n return (\n <>\n <ButtonLink\n {...restOfProps}\n textColor={useResponsiveColor(textColor)}\n color={useResponsiveColor(color)}\n onPointerDown={() => setIsOpen(prev => !prev)}\n >\n <div style={{ display: 'flex', alignItems: 'center' }}>\n <span style={{ marginRight: 6 }}>{label}</span>\n <span style={{ display: 'inline-flex', fill: 'currentColor' }}>\n <>\n {caret === 'caret' && <CaretDown8 />}\n {caret === 'plus' && <Plus8 />}\n {caret === 'arrow-down' && <ArrowDown8 />}\n {caret === 'chevron-down' && <ChevronDown8 />}\n </>\n </span>\n </div>\n </ButtonLink>\n <DropDownMenu open={isOpen}>\n {links.map(({ id, payload }) => (\n <DropDownItem {...payload} key={id} onClick={onClose}>\n {payload.label}\n </DropDownItem>\n ))}\n </DropDownMenu>\n </>\n )\n}\n","import { ComponentPropsWithoutRef, Fragment } from 'react'\nimport styled, { css } from 'styled-components'\n\nimport { cssMediaRules } from '../../../../utils/cssMediaRules'\nimport {\n ResponsiveValue,\n NavigationLinksValue,\n NavigationButton as NavigationButtonValue,\n} from '../../../../../prop-controllers/descriptors'\nimport { ColorValue as Color } from '../../../../utils/types'\nimport { colorToString } from '../../../../utils/colorToString'\nimport { ReactComponent as Times16 } from '../../../../icons/times-16.svg'\n\nimport Button from '../../../Button'\nimport DropDownButton from './components/MobileDropDownButton'\nimport { ResponsiveColor } from '../../../../../runtimes/react/controls'\nimport { useResponsiveColor } from '../../../../hooks'\n\ntype NavigationButtonProps = NavigationButtonValue['payload'] &\n Omit<ComponentPropsWithoutRef<typeof Button>, 'color' | 'textColor'>\n\nfunction NavigationButton(props: NavigationButtonProps): JSX.Element {\n const { textColor, color, ...restOfProps } = props\n\n return (\n <Button\n {...restOfProps}\n textColor={useResponsiveColor(textColor)}\n color={useResponsiveColor(color)}\n />\n )\n}\n\nconst ButtonLink = styled(NavigationButton)`\n margin: 8px 0;\n`\n\nconst Container = styled.div.withConfig({\n shouldForwardProp: prop => !['animation', 'backgroundColor', 'open'].includes(prop.toString()),\n})<{\n animation?: ResponsiveValue<'coverRight' | 'coverLeft'>\n backgroundColor?: ResponsiveValue<Color> | null\n open: boolean\n}>`\n position: fixed;\n flex-direction: column;\n width: 100%;\n padding: 40px 15px;\n transition: transform 300ms ease-in-out;\n overflow-y: auto;\n z-index: 9999;\n max-width: 575px;\n ${p =>\n cssMediaRules([p.animation, p.backgroundColor] as const, ([animation, backgroundColor]) =>\n animation == null\n ? css`\n display: none;\n `\n : css`\n display: flex;\n background-color: ${backgroundColor == null ? 'black' : colorToString(backgroundColor)};\n transform: ${p.open\n ? `translate3d(0,0,0)`\n : `translate3d(${{ coverRight: '', coverLeft: '-' }[animation]}100%, 0, 0)`};\n ${{\n coverRight: { top: 0, bottom: 0, right: 0 },\n coverLeft: { top: 0, bottom: 0, left: 0 },\n }[animation]}\n `,\n )}\n`\n\nconst CloseIconContainer = styled.button.withConfig({\n shouldForwardProp: prop => !['color'].includes(prop.toString()),\n})<{ color?: ResponsiveValue<Color> | null }>`\n position: absolute;\n top: 15px;\n right: 15px;\n padding: 0;\n border: 0;\n outline: 0;\n background: none;\n fill: currentColor;\n ${p =>\n cssMediaRules(\n [p.color] as const,\n ([color]) => css`\n color: ${color == null ? 'rgba(161, 168, 194, 0.5)' : colorToString(color)};\n `,\n )}\n`\n\ntype Props = {\n animation?: ResponsiveValue<'coverRight' | 'coverLeft'>\n backgroundColor?: ResponsiveColor | null\n closeIconColor?: ResponsiveColor | null\n links?: NavigationLinksValue\n onClose?: () => unknown\n open?: boolean\n}\n\nexport default function MobileMenu({\n animation,\n backgroundColor,\n open = false,\n closeIconColor,\n links = [],\n onClose = () => {},\n}: Props): JSX.Element {\n return (\n <Container animation={animation} backgroundColor={backgroundColor} open={open}>\n {/* @ts-expect-error: HTMLButtonElement `color` attribute conflicts with prop */}\n <CloseIconContainer color={closeIconColor} onClick={onClose}>\n <Times16 />\n </CloseIconContainer>\n <div\n style={{ display: 'flex', flexDirection: 'column', alignItems: 'center', flexShrink: 0 }}\n >\n {links.map(link => (\n <Fragment key={link.id}>\n {link.type === 'button' && (\n <ButtonLink {...link.payload} onClick={onClose}>\n {link.payload.label}\n </ButtonLink>\n )}\n {link.type === 'dropdown' && <DropDownButton {...link.payload} onClose={onClose} />}\n </Fragment>\n ))}\n </div>\n </Container>\n )\n}\n","import { ComponentPropsWithoutRef, forwardRef, useState } from 'react'\nimport styled, { css } from 'styled-components'\n\nimport { ReactComponent as MobileMenu28 } from '../../icons/mobile-menu-28.svg'\n\nimport GutterContainer from '../../shared/GutterContainer'\nimport Image from '../Image'\nimport Button from '../Button'\nimport LinksPlaceholder from './components/LinksPlaceholder'\nimport DropDownButton from './components/DropDownButton'\nimport MobileMenu from './components/MobileMenu'\nimport {\n ResponsiveValue,\n CheckboxValue,\n ElementIDValue,\n GapXValue,\n ImageValue,\n LinkValue,\n MarginValue,\n NavigationLinksValue,\n ResponsiveIconRadioGroupValue,\n ResponsiveLengthValue,\n ResponsiveSelectValue,\n TextInputValue,\n TextStyleValue,\n NavigationButton as NavigationButtonValue,\n WidthValue,\n} from '../../../prop-controllers/descriptors'\nimport { cssMargin, cssMediaRules, cssTextStyle, cssWidth } from '../../utils/cssMediaRules'\nimport { ColorValue as Color } from '../../utils/types'\nimport { colorToString } from '../../utils/colorToString'\nimport { ResponsiveColor } from '../../../runtimes/react/controls'\nimport { useResponsiveColor } from '../../hooks'\n\ntype Props = {\n id?: ElementIDValue\n links?: NavigationLinksValue\n linkTextStyle?: TextStyleValue\n showLogo?: CheckboxValue\n logoFile?: ImageValue\n logoWidth?: ResponsiveLengthValue\n logoAltText?: TextInputValue\n logoLink?: LinkValue\n alignment?: ResponsiveIconRadioGroupValue<'flex-start' | 'center' | 'flex-end'>\n gutter?: GapXValue\n mobileMenuAnimation?: ResponsiveSelectValue<'coverRight' | 'coverLeft'>\n mobileMenuOpenIconColor?: ResponsiveColor | null\n mobileMenuCloseIconColor?: ResponsiveColor | null\n mobileMenuBackgroundColor?: ResponsiveColor | null\n width?: WidthValue\n margin?: MarginValue\n}\n\nconst Container = styled.nav.withConfig({\n shouldForwardProp: prop => !['width', 'margin', 'textStyle', 'gutter'].includes(prop.toString()),\n})<{\n width: Props['width']\n margin: Props['margin']\n textStyle: Props['linkTextStyle']\n gutter: Props['gutter']\n}>`\n display: flex;\n align-items: center;\n ${cssWidth()}\n ${cssMargin()}\n ${cssTextStyle()}\n ${p =>\n cssMediaRules(\n [p.gutter] as const,\n ([gutter = { value: 0, unit: 'px' }]) => css`\n gap: ${gutter.value}${gutter.unit};\n `,\n )}\n`\n\nconst LinksContainer = styled.div.withConfig({\n shouldForwardProp: prop => !['alignment', 'mobileMenuAnimation'].includes(prop.toString()),\n})<{\n alignment: Props['alignment']\n mobileMenuAnimation: Props['mobileMenuAnimation']\n}>`\n display: flex;\n align-items: center;\n flex-grow: 1;\n ${p =>\n cssMediaRules(\n [p.alignment, p.mobileMenuAnimation] as const,\n ([alignment = 'flex-end', mobileMenuAnimation]) => css`\n display: ${mobileMenuAnimation == null ? 'flex' : 'none'};\n justify-content: ${alignment};\n `,\n )}\n`\n\nconst OpenIconContainer = styled.button.withConfig({\n shouldForwardProp: prop =>\n !['mobileMenuAnimation', 'alignment', 'color'].includes(prop.toString()),\n})<{\n mobileMenuAnimation: Props['mobileMenuAnimation']\n alignment: Props['alignment']\n color: ResponsiveValue<Color> | null | undefined\n}>`\n display: none;\n flex-grow: 1;\n align-items: center;\n background: none;\n outline: 0;\n border: 0;\n padding: 0;\n fill: currentColor;\n ${p =>\n cssMediaRules(\n [p.mobileMenuAnimation, p.alignment, p.color] as const,\n ([mobileMenuAnimation, alignment = 'flex-end', color]) => css`\n display: ${mobileMenuAnimation == null ? 'none' : 'flex'};\n justify-content: ${alignment};\n color: ${color == null ? 'rgba(161, 168, 194, 0.5)' : colorToString(color)};\n `,\n )}\n`\n\ntype NavigationButtonProps = NavigationButtonValue['payload'] &\n Omit<ComponentPropsWithoutRef<typeof Button>, 'color' | 'textColor'>\n\nfunction NavigationButton(props: NavigationButtonProps): JSX.Element {\n const { textColor, color, ...restOfProps } = props\n\n return (\n <Button\n {...restOfProps}\n textColor={useResponsiveColor(textColor)}\n color={useResponsiveColor(color)}\n />\n )\n}\n\nconst placeholder = {\n src: \"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='93.12' height='36' viewBox='0 0 93.12 36'%3E%3Cg id='Layer_2' data-name='Layer 2'%3E%3Cg id='Layer_1-2' data-name='Layer 1'%3E%3Cpath d='M18,0A18,18,0,1,1,0,18,18,18,0,0,1,18,0ZM49.36,21.94h6.36V24H46.8V10h2.56Zm9.06.72a4.88,4.88,0,0,1-1.64-3.72,5,5,0,0,1,1.64-3.74,5.57,5.57,0,0,1,7.7,0,5.09,5.09,0,0,1,.26,7.18l-.26.26a5.56,5.56,0,0,1-7.7,0Zm1.68-6a3.39,3.39,0,0,0,0,4.52,3,3,0,0,0,4.24.08l.08-.08a3.39,3.39,0,0,0,0-4.52,3,3,0,0,0-4.24-.08Zm10,10.68,1-1.92a5.28,5.28,0,0,0,3.3,1.22,3.6,3.6,0,0,0,2.32-.72,2.73,2.73,0,0,0,.9-2.26V22.5a3.61,3.61,0,0,1-1.45,1.26,4.35,4.35,0,0,1-2,.46,4.57,4.57,0,0,1-3.58-1.54A5.48,5.48,0,0,1,69.2,18.9a5.42,5.42,0,0,1,1.36-3.74,4.64,4.64,0,0,1,3.62-1.5,4,4,0,0,1,3.44,1.72v-1.5h2.46v9a6.13,6.13,0,0,1-1.43,4.46,5.27,5.27,0,0,1-4,1.44,7.09,7.09,0,0,1-4.53-1.42Zm1.54-8.44a3.4,3.4,0,0,0,.82,2.3,2.72,2.72,0,0,0,2.17.94,3.13,3.13,0,0,0,1.21-.22,2.89,2.89,0,0,0,1-.62,3.08,3.08,0,0,0,.63-1,3.62,3.62,0,0,0,.21-1.3,4,4,0,0,0-.23-1.33,3.3,3.3,0,0,0-.63-1.05,2.74,2.74,0,0,0-1-.68,3.35,3.35,0,0,0-1.25-.24,2.92,2.92,0,0,0-1.2.24,2.58,2.58,0,0,0-.93.67,3,3,0,0,0-.59,1,3.89,3.89,0,0,0-.19,1.31ZM83.8,22.66a4.88,4.88,0,0,1-1.64-3.72A5,5,0,0,1,83.8,15.2a5.57,5.57,0,0,1,7.7,0,5.09,5.09,0,0,1,.26,7.18,3.19,3.19,0,0,1-.26.26,5.56,5.56,0,0,1-7.7,0Zm1.68-6a3.39,3.39,0,0,0,0,4.52,3,3,0,0,0,4.24.08l.08-.08a3.39,3.39,0,0,0,0-4.52,3,3,0,0,0-4.24-.08Z' fill='%23a1a8c2' opacity='0.4' style='isolation: isolate'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A\",\n dimensions: { width: 93, height: 36 },\n}\n\nconst Navigation = forwardRef<HTMLDivElement, Props>(function Navigation(\n {\n id,\n links = [],\n linkTextStyle,\n showLogo,\n logoFile,\n logoWidth,\n logoAltText,\n logoLink,\n alignment,\n gutter,\n mobileMenuAnimation,\n mobileMenuOpenIconColor,\n mobileMenuCloseIconColor,\n mobileMenuBackgroundColor,\n width,\n margin,\n },\n ref,\n) {\n const [isOpen, setIsOpen] = useState(false)\n\n return (\n <Container\n ref={ref}\n id={id}\n width={width}\n margin={margin}\n textStyle={linkTextStyle}\n gutter={gutter}\n >\n {showLogo === true && (\n <Image\n altText={logoAltText}\n file={logoFile}\n link={logoLink}\n placeholder={placeholder}\n width={logoWidth}\n />\n )}\n <div style={{ display: 'flex', flexGrow: 1, justifyContent: 'flex-end' }}>\n <LinksContainer alignment={alignment} mobileMenuAnimation={mobileMenuAnimation}>\n {links.length > 0 ? (\n links.map((link, i) => (\n <GutterContainer\n key={link.id}\n gutter={gutter}\n first={i === 0}\n last={i === links.length - 1}\n >\n {link.type === 'button' && (\n <NavigationButton {...link.payload}>{link.payload.label}</NavigationButton>\n )}\n {link.type === 'dropdown' && <DropDownButton {...link.payload} />}\n </GutterContainer>\n ))\n ) : (\n <LinksPlaceholder gutter={gutter} />\n )}\n </LinksContainer>\n <OpenIconContainer\n alignment={alignment}\n // @ts-expect-error: HTMLButtonElement `color` attribute conflicts with prop\n color={mobileMenuOpenIconColor}\n mobileMenuAnimation={mobileMenuAnimation}\n onClick={() => setIsOpen(true)}\n >\n <MobileMenu28 />\n </OpenIconContainer>\n <MobileMenu\n animation={mobileMenuAnimation}\n backgroundColor={mobileMenuBackgroundColor}\n closeIconColor={mobileMenuCloseIconColor}\n links={links}\n onClose={() => setIsOpen(false)}\n open={isOpen}\n />\n </div>\n </Container>\n )\n})\n\nexport default Navigation\n"],"names":["_path","_extends","React","PlaceholderLink","styled","div","withConfig","shouldForwardProp","prop","includes","toString","props","width","button","links","gutter","_Fragment","map","link","i","GutterContainer","length","DROP_DOWN_MENU_WIDTH","DropDownMenu","position","dropIn","keyframes","DropDownContainer","StyledDropDownItem","Link","cssTextStyle","p","cssMediaRules","color","textStyle","fontSize","value","unit","fontWeight","fontStyle","letterSpacing","textTransform","css","colorToString","restOfProps","useResponsiveColor","label","caret","textColor","container","useRef","setPosition","useState","useIsomorphicLayoutEffect","current","ownerDocument","defaultView","innerWidth","offsetLeft","_jsx","Button","display","alignItems","marginRight","_jsxs","fill","CaretDown8","Plus8","ArrowDown8","ChevronDown8","id","payload","DropDownItem","open","ButtonLink","StyledLink","onClose","isOpen","setIsOpen","prev","NavigationButton","Container","animation","backgroundColor","coverRight","coverLeft","top","bottom","right","left","CloseIconContainer","closeIconColor","Times16","flexDirection","flexShrink","Fragment","type","DropDownButton","nav","cssWidth","cssMargin","LinksContainer","alignment","mobileMenuAnimation","OpenIconContainer","placeholder","src","dimensions","height","Navigation","forwardRef","linkTextStyle","showLogo","logoFile","logoWidth","logoAltText","logoLink","mobileMenuOpenIconColor","mobileMenuCloseIconColor","mobileMenuBackgroundColor","margin","ref","Image","flexGrow","justifyContent","MobileMenu28"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Navigation.cjs.js","sources":["../src/components/icons/mobile-menu-28.svg","../src/components/builtin/Navigation/components/LinksPlaceholder/index.tsx","../src/components/icons/caret-down-8.svg","../src/components/icons/plus-8.svg","../src/components/icons/arrow-down-8.svg","../src/components/icons/chevron-down-8.svg","../src/components/builtin/Navigation/components/DropDownButton/index.tsx","../src/components/icons/times-16.svg","../src/components/builtin/Navigation/components/MobileMenu/components/MobileDropDownButton/index.tsx","../src/components/builtin/Navigation/components/MobileMenu/index.tsx","../src/components/builtin/Navigation/Navigation.tsx"],"sourcesContent":["export default \"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyOCIgaGVpZ2h0PSIyOCI+CiAgPHBhdGggZD0iTTI3IDE1SDFhMSAxIDAgMCAxLTEtMSAxIDEgMCAwIDEgMS0xaDI2YTEgMSAwIDAgMSAxIDEgMSAxIDAgMCAxLTEgMXptMC0xMEgxYTEgMSAwIDAgMC0xIDEgMSAxIDAgMCAwIDEgMWgyNmExIDEgMCAwIDAgMS0xIDEgMSAwIDAgMC0xLTF6bTAgMTZIMWExIDEgMCAwIDAtMSAxIDEgMSAwIDAgMCAxIDFoMjZhMSAxIDAgMCAwIDEtMSAxIDEgMCAwIDAtMS0xeiIvPgo8L3N2Zz4=\"","import styled from 'styled-components'\n\nimport { ResponsiveLengthValue } from '../../../../../prop-controllers/descriptors'\nimport GutterContainer from '../../../../shared/GutterContainer'\n\nconst PlaceholderLink = styled.div.withConfig({\n shouldForwardProp: prop => !['width', 'button'].includes(prop.toString()),\n})<{ width: number; button?: boolean }>`\n width: ${props => props.width}px;\n height: ${props => (props.button === true ? 32 : 8)}px;\n background-color: #a1a8c2;\n border-radius: ${props => (props.button === true ? 6 : 2)}px;\n opacity: 0.4;\n`\n\ntype Props = { gutter?: ResponsiveLengthValue }\n\nconst links = [{ width: 50 }, { width: 70 }, { width: 60 }, { width: 80, button: true }]\n\nexport default function LinksPlaceholder({ gutter }: Props): JSX.Element {\n return (\n <>\n {links.map((link, i) => (\n <GutterContainer key={i} gutter={gutter} first={i === 0} last={i === links.length - 1}>\n <PlaceholderLink {...link} />\n </GutterContainer>\n ))}\n </>\n )\n}\n","export default \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iOCIgaGVpZ2h0PSI4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0xIDJhMSAxIDAgMCAwLS43MDcgMS43MDdsMyAzYTEgMSAwIDAgMCAxLjQxNCAwbDMtM0ExIDEgMCAwIDAgNyAySDF6Ii8+PC9zdmc+\"","export default \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iOCIgaGVpZ2h0PSI4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik00IDBhMSAxIDAgMCAwLTEgMXYySDFhMSAxIDAgMSAwIDAgMmgydjJhMSAxIDAgMCAwIDIgMFY1aDJhMSAxIDAgMCAwIDAtMkg1VjFhMSAxIDAgMCAwLTEtMXoiLz48L3N2Zz4=\"","export default \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iOCIgaGVpZ2h0PSI4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik01IDFhMSAxIDAgMCAwLTIgMHYzLjU4NmwtLjI5My0uMjkzYTEgMSAwIDAgMC0xLjQxNCAxLjQxNGwyIDJhMSAxIDAgMCAwIDEuNDE0IDBsMi0yYTEgMSAwIDAgMC0xLjQxNC0xLjQxNEw1IDQuNTg2VjF6Ii8+PC9zdmc+\"","export default \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iOCIgaGVpZ2h0PSI4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNLjI5MyAyLjI5M2ExIDEgMCAwIDEgMS40MTQgMEw0IDQuNTg2bDIuMjkzLTIuMjkzYTEgMSAwIDAgMSAxLjQxNCAxLjQxNGwtMyAzYTEgMSAwIDAgMS0xLjQxNCAwbC0zLTNhMSAxIDAgMCAxIDAtMS40MTR6Ii8+PC9zdmc+\"","import { ComponentPropsWithoutRef, useRef, useState } from 'react'\nimport styled, { css, keyframes } from 'styled-components'\n\nimport { ReactComponent as CaretDown8 } from '../../../../icons/caret-down-8.svg'\nimport { ReactComponent as Plus8 } from '../../../../icons/plus-8.svg'\nimport { ReactComponent as ArrowDown8 } from '../../../../icons/arrow-down-8.svg'\nimport { ReactComponent as ChevronDown8 } from '../../../../icons/chevron-down-8.svg'\nimport { cssMediaRules, cssTextStyle } from '../../../../utils/cssMediaRules'\nimport {\n ResponsiveValue,\n ResponsiveColorValue,\n TextStyleValue,\n LinkValue,\n} from '../../../../../prop-controllers/descriptors'\nimport { ColorValue as Color } from '../../../../utils/types'\nimport { colorToString } from '../../../../utils/colorToString'\nimport { useResponsiveColor } from '../../../../hooks'\n\nimport { Link } from '../../../../shared/Link'\nimport Button from '../../../Button'\nimport { useIsomorphicLayoutEffect } from '../../../../hooks/useIsomorphicLayoutEffect'\n\nconst DROP_DOWN_MENU_WIDTH = 200\n\ntype Position = 'left' | 'right'\n\nconst DropDownMenu = styled.div.withConfig({\n shouldForwardProp: prop => !['position'].includes(prop.toString()),\n})<{ position: Position }>`\n position: absolute;\n top: 100%;\n left: ${props => (props.position === 'left' ? 0 : 'auto')};\n right: ${props => (props.position === 'right' ? 0 : 'auto')};\n background: #fff;\n margin: 0;\n padding: 8px 0;\n border-radius: 4px;\n box-shadow: 0 3px 10px rgba(0, 0, 0, 0.15);\n width: ${DROP_DOWN_MENU_WIDTH}px;\n z-index: 99;\n list-style: none;\n overflow: hidden;\n transform-origin: 50% 0;\n will-change: transform, opacity;\n transform-style: preserve-3d;\n display: none;\n`\n\nconst dropIn = keyframes`\n 0% {\n opacity: 0;\n transform: rotateX(-20deg);\n }\n 100% {\n opacity: 1;\n transform: none;\n }\n`\n\nconst DropDownContainer = styled.div`\n position: relative;\n\n &:hover > ${DropDownMenu} {\n display: block;\n animation: ${dropIn} 0.25s;\n }\n`\n\nconst StyledDropDownItem = styled(Link).withConfig({\n shouldForwardProp: prop => !['color', 'textStyle'].includes(prop.toString()),\n})<{\n color?: ResponsiveValue<Color> | null\n textStyle?: TextStyleValue\n}>`\n display: block;\n text-decoration: none;\n line-height: 1.4;\n padding: 8px 16px;\n color: black;\n background-color: transparent;\n transition: background-color 0.2s;\n ${cssTextStyle()}\n ${p =>\n cssMediaRules([p.color, p.textStyle] as const, ([color, textStyle = {}]) => {\n const fontSize = textStyle.fontSize || { value: 14, unit: 'px' }\n const fontWeight = textStyle.fontWeight == null ? 'normal' : textStyle.fontWeight\n const fontStyle = textStyle.fontStyle || []\n const letterSpacing = textStyle.letterSpacing == null ? null : textStyle.letterSpacing\n const textTransform = textStyle.textTransform || []\n\n return css`\n color: ${color == null ? 'black' : colorToString(color)};\n font-size: ${`${fontSize.value}${fontSize.unit}`};\n font-weight: ${fontWeight};\n font-style: ${fontStyle.includes('italic') ? 'italic' : 'normal'};\n letter-spacing: ${letterSpacing == null ? 'normal' : `${letterSpacing}px`};\n text-transform: ${textTransform.includes('uppercase') ? 'uppercase' : 'none'};\n `\n })}\n\n &:hover {\n background-color: rgba(0, 0, 0, 0.04);\n }\n`\n\ntype BaseDropDownItemProps = {\n color?: ResponsiveColorValue\n textStyle?: TextStyleValue\n}\n\ntype DropDownItemProps = BaseDropDownItemProps &\n Omit<ComponentPropsWithoutRef<typeof StyledDropDownItem>, keyof BaseDropDownItemProps>\n\nfunction DropDownItem({ color, ...restOfProps }: DropDownItemProps) {\n // @ts-expect-error: HTMLDivElement `color` attribute conflicts with prop.\n return <StyledDropDownItem {...restOfProps} color={useResponsiveColor(color)} />\n}\n\ntype Props = ComponentPropsWithoutRef<typeof Button> & {\n label: string\n caret?: 'caret' | 'plus' | 'arrow-down' | 'chevron-down'\n links?: Array<{\n id: string\n payload: ComponentPropsWithoutRef<typeof DropDownItem> & {\n link?: LinkValue\n label: string\n }\n }>\n}\n\nexport default function DropDownButton({\n label,\n caret = 'caret',\n links = [],\n textColor,\n color,\n ...restOfProps\n}: Props): JSX.Element {\n const container = useRef<HTMLDivElement>(null)\n const [position, setPosition] = useState<Position>('left')\n\n useIsomorphicLayoutEffect(() => {\n if (\n container.current &&\n container.current.ownerDocument.defaultView!.innerWidth <\n container.current.offsetLeft + DROP_DOWN_MENU_WIDTH\n ) {\n setPosition('right')\n } else {\n setPosition('left')\n }\n }, [setPosition])\n\n return (\n <DropDownContainer ref={container}>\n <Button\n {...restOfProps}\n textColor={useResponsiveColor(textColor)}\n color={useResponsiveColor(color)}\n >\n <div style={{ display: 'flex', alignItems: 'center' }}>\n <span style={{ marginRight: 6 }}>{label}</span>\n <span style={{ display: 'inline-flex', fill: 'currentColor' }}>\n {caret === 'caret' && <CaretDown8 />}\n {caret === 'plus' && <Plus8 />}\n {caret === 'arrow-down' && <ArrowDown8 />}\n {caret === 'chevron-down' && <ChevronDown8 />}\n </span>\n </div>\n </Button>\n <DropDownMenu position={position}>\n {links.map(({ id, payload }) => (\n <DropDownItem {...payload} key={id}>\n {payload.label}\n </DropDownItem>\n ))}\n </DropDownMenu>\n </DropDownContainer>\n )\n}\n","export default \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMy43MDcgMy43MDdhMSAxIDAgMCAwLTEuNDE0LTEuNDE0TDggNi41ODYgMy43MDcgMi4yOTNhMSAxIDAgMCAwLTEuNDE0IDEuNDE0TDYuNTg2IDhsLTQuMjkzIDQuMjkzYTEgMSAwIDEgMCAxLjQxNCAxLjQxNEw4IDkuNDE0bDQuMjkzIDQuMjkzYTEgMSAwIDAgMCAxLjQxNC0xLjQxNEw5LjQxNCA4bDQuMjkzLTQuMjkzWiIvPgo8L3N2Zz4=\"","import { ComponentPropsWithoutRef, useState } from 'react'\nimport styled, { css } from 'styled-components'\n\nimport { cssMediaRules, cssTextStyle } from '../../../../../../utils/cssMediaRules'\nimport {\n ResponsiveValue,\n ResponsiveColorValue,\n TextStyleValue,\n LinkValue,\n} from '../../../../../../../prop-controllers/descriptors'\nimport { ColorValue as Color } from '../../../../../../utils/types'\nimport { colorToString } from '../../../../../../utils/colorToString'\nimport { useResponsiveColor } from '../../../../../../hooks'\n\nimport { ReactComponent as CaretDown8 } from '../../../../../../icons/caret-down-8.svg'\nimport { ReactComponent as Plus8 } from '../../../../../../icons/plus-8.svg'\nimport { ReactComponent as ArrowDown8 } from '../../../../../../icons/arrow-down-8.svg'\nimport { ReactComponent as ChevronDown8 } from '../../../../../../icons/chevron-down-8.svg'\n\nimport { Link } from '../../../../../../shared/Link'\nimport Button from '../../../../../Button'\n\nconst DropDownMenu = styled.div.withConfig({\n shouldForwardProp: prop => !['open'].includes(prop.toString()),\n})<{ open: boolean }>`\n display: ${props => (props.open ? 'flex' : 'none')};\n flex-direction: column;\n padding: 8px;\n`\n\nconst ButtonLink = styled(Button)`\n margin: 8px 0;\n`\n\nconst StyledLink = styled(Link).withConfig({\n shouldForwardProp: prop => !['textStyle', 'color'].includes(prop.toString()),\n})<{\n textStyle?: TextStyleValue\n color?: ResponsiveValue<Color> | null\n}>`\n text-decoration: none;\n line-height: 1.4;\n padding: 8px 16px;\n color: black;\n ${cssTextStyle()}\n ${p =>\n cssMediaRules(\n [p.color] as const,\n ([color]) => css`\n color: ${color == null ? 'black' : colorToString(color)};\n `,\n )}\n`\n\ntype BaseDropDownItemProps = {\n color?: ResponsiveColorValue\n textStyle?: TextStyleValue\n}\n\ntype DropDownItemProps = BaseDropDownItemProps &\n Omit<ComponentPropsWithoutRef<typeof StyledLink>, keyof BaseDropDownItemProps>\n\nfunction DropDownItem({ color, ...restOfProps }: DropDownItemProps) {\n // @ts-expect-error: HTMLAnchorElement `color` attribute conflict with props\n return <StyledLink {...restOfProps} color={useResponsiveColor(color)} />\n}\n\ntype Props = ComponentPropsWithoutRef<typeof Button> & {\n label: string\n links?: Array<{\n id: string\n payload: ComponentPropsWithoutRef<typeof DropDownItem> & {\n link?: LinkValue\n label: string\n }\n }>\n onClose?: () => unknown\n caret?: string\n}\n\nexport default function MobileDropDownButton({\n label,\n caret,\n links = [],\n onClose = () => {},\n color,\n textColor,\n ...restOfProps\n}: Props): JSX.Element {\n const [isOpen, setIsOpen] = useState(false)\n return (\n <>\n <ButtonLink\n {...restOfProps}\n textColor={useResponsiveColor(textColor)}\n color={useResponsiveColor(color)}\n onPointerDown={() => setIsOpen(prev => !prev)}\n >\n <div style={{ display: 'flex', alignItems: 'center' }}>\n <span style={{ marginRight: 6 }}>{label}</span>\n <span style={{ display: 'inline-flex', fill: 'currentColor' }}>\n <>\n {caret === 'caret' && <CaretDown8 />}\n {caret === 'plus' && <Plus8 />}\n {caret === 'arrow-down' && <ArrowDown8 />}\n {caret === 'chevron-down' && <ChevronDown8 />}\n </>\n </span>\n </div>\n </ButtonLink>\n <DropDownMenu open={isOpen}>\n {links.map(({ id, payload }) => (\n <DropDownItem {...payload} key={id} onClick={onClose}>\n {payload.label}\n </DropDownItem>\n ))}\n </DropDownMenu>\n </>\n )\n}\n","import { ComponentPropsWithoutRef, Fragment } from 'react'\nimport styled, { css } from 'styled-components'\n\nimport { cssMediaRules } from '../../../../utils/cssMediaRules'\nimport {\n ResponsiveValue,\n NavigationLinksValue,\n NavigationButton as NavigationButtonValue,\n} from '../../../../../prop-controllers/descriptors'\nimport { ColorValue as Color } from '../../../../utils/types'\nimport { colorToString } from '../../../../utils/colorToString'\nimport { ReactComponent as Times16 } from '../../../../icons/times-16.svg'\n\nimport Button from '../../../Button'\nimport DropDownButton from './components/MobileDropDownButton'\nimport { ResponsiveColor } from '../../../../../runtimes/react/controls'\nimport { useResponsiveColor } from '../../../../hooks'\n\ntype NavigationButtonProps = NavigationButtonValue['payload'] &\n Omit<ComponentPropsWithoutRef<typeof Button>, 'color' | 'textColor'>\n\nfunction NavigationButton(props: NavigationButtonProps): JSX.Element {\n const { textColor, color, ...restOfProps } = props\n\n return (\n <Button\n {...restOfProps}\n textColor={useResponsiveColor(textColor)}\n color={useResponsiveColor(color)}\n />\n )\n}\n\nconst ButtonLink = styled(NavigationButton)`\n margin: 8px 0;\n`\n\nconst Container = styled.div.withConfig({\n shouldForwardProp: prop => !['animation', 'backgroundColor', 'open'].includes(prop.toString()),\n})<{\n animation?: ResponsiveValue<'coverRight' | 'coverLeft'>\n backgroundColor?: ResponsiveValue<Color> | null\n open: boolean\n}>`\n position: fixed;\n flex-direction: column;\n width: 100%;\n padding: 40px 15px;\n transition: transform 300ms ease-in-out;\n overflow-y: auto;\n z-index: 9999;\n max-width: 575px;\n ${p =>\n cssMediaRules([p.animation, p.backgroundColor] as const, ([animation, backgroundColor]) =>\n animation == null\n ? css`\n display: none;\n `\n : css`\n display: flex;\n background-color: ${backgroundColor == null ? 'black' : colorToString(backgroundColor)};\n transform: ${p.open\n ? `translate3d(0,0,0)`\n : `translate3d(${{ coverRight: '', coverLeft: '-' }[animation]}100%, 0, 0)`};\n ${{\n coverRight: { top: 0, bottom: 0, right: 0 },\n coverLeft: { top: 0, bottom: 0, left: 0 },\n }[animation]}\n `,\n )}\n`\n\nconst CloseIconContainer = styled.button.withConfig({\n shouldForwardProp: prop => !['color'].includes(prop.toString()),\n})<{ color?: ResponsiveValue<Color> | null }>`\n position: absolute;\n top: 15px;\n right: 15px;\n padding: 0;\n border: 0;\n outline: 0;\n background: none;\n fill: currentColor;\n ${p =>\n cssMediaRules(\n [p.color] as const,\n ([color]) => css`\n color: ${color == null ? 'rgba(161, 168, 194, 0.5)' : colorToString(color)};\n `,\n )}\n`\n\ntype Props = {\n animation?: ResponsiveValue<'coverRight' | 'coverLeft'>\n backgroundColor?: ResponsiveColor | null\n closeIconColor?: ResponsiveColor | null\n links?: NavigationLinksValue\n onClose?: () => unknown\n open?: boolean\n}\n\nexport default function MobileMenu({\n animation,\n backgroundColor,\n open = false,\n closeIconColor,\n links = [],\n onClose = () => {},\n}: Props): JSX.Element {\n return (\n <Container animation={animation} backgroundColor={backgroundColor} open={open}>\n {/* @ts-expect-error: HTMLButtonElement `color` attribute conflicts with prop */}\n <CloseIconContainer color={closeIconColor} onClick={onClose}>\n <Times16 />\n </CloseIconContainer>\n <div\n style={{ display: 'flex', flexDirection: 'column', alignItems: 'center', flexShrink: 0 }}\n >\n {links.map(link => (\n <Fragment key={link.id}>\n {link.type === 'button' && (\n <ButtonLink {...link.payload} onClick={onClose}>\n {link.payload.label}\n </ButtonLink>\n )}\n {link.type === 'dropdown' && <DropDownButton {...link.payload} onClose={onClose} />}\n </Fragment>\n ))}\n </div>\n </Container>\n )\n}\n","import { ComponentPropsWithoutRef, forwardRef, useState } from 'react'\nimport styled, { css } from 'styled-components'\n\nimport { ReactComponent as MobileMenu28 } from '../../icons/mobile-menu-28.svg'\n\nimport GutterContainer from '../../shared/GutterContainer'\nimport Image from '../Image'\nimport Button from '../Button'\nimport LinksPlaceholder from './components/LinksPlaceholder'\nimport DropDownButton from './components/DropDownButton'\nimport MobileMenu from './components/MobileMenu'\nimport {\n ResponsiveValue,\n CheckboxValue,\n ElementIDValue,\n GapXValue,\n ImageValue,\n LinkValue,\n MarginValue,\n NavigationLinksValue,\n ResponsiveIconRadioGroupValue,\n ResponsiveLengthValue,\n ResponsiveSelectValue,\n TextInputValue,\n TextStyleValue,\n NavigationButton as NavigationButtonValue,\n WidthValue,\n} from '../../../prop-controllers/descriptors'\nimport { cssMargin, cssMediaRules, cssTextStyle, cssWidth } from '../../utils/cssMediaRules'\nimport { ColorValue as Color } from '../../utils/types'\nimport { colorToString } from '../../utils/colorToString'\nimport { ResponsiveColor } from '../../../runtimes/react/controls'\nimport { useResponsiveColor } from '../../hooks'\n\ntype Props = {\n id?: ElementIDValue\n links?: NavigationLinksValue\n linkTextStyle?: TextStyleValue\n showLogo?: CheckboxValue\n logoFile?: ImageValue\n logoWidth?: ResponsiveLengthValue\n logoAltText?: TextInputValue\n logoLink?: LinkValue\n alignment?: ResponsiveIconRadioGroupValue<'flex-start' | 'center' | 'flex-end'>\n gutter?: GapXValue\n mobileMenuAnimation?: ResponsiveSelectValue<'coverRight' | 'coverLeft'>\n mobileMenuOpenIconColor?: ResponsiveColor | null\n mobileMenuCloseIconColor?: ResponsiveColor | null\n mobileMenuBackgroundColor?: ResponsiveColor | null\n width?: WidthValue\n margin?: MarginValue\n}\n\nconst Container = styled.nav.withConfig({\n shouldForwardProp: prop => !['width', 'margin', 'textStyle', 'gutter'].includes(prop.toString()),\n})<{\n width: Props['width']\n margin: Props['margin']\n textStyle: Props['linkTextStyle']\n gutter: Props['gutter']\n}>`\n display: flex;\n align-items: center;\n ${cssWidth()}\n ${cssMargin()}\n ${cssTextStyle()}\n ${p =>\n cssMediaRules(\n [p.gutter] as const,\n ([gutter = { value: 0, unit: 'px' }]) => css`\n gap: ${gutter.value}${gutter.unit};\n `,\n )}\n`\n\nconst LinksContainer = styled.div.withConfig({\n shouldForwardProp: prop => !['alignment', 'mobileMenuAnimation'].includes(prop.toString()),\n})<{\n alignment: Props['alignment']\n mobileMenuAnimation: Props['mobileMenuAnimation']\n}>`\n display: flex;\n align-items: center;\n flex-grow: 1;\n ${p =>\n cssMediaRules(\n [p.alignment, p.mobileMenuAnimation] as const,\n ([alignment = 'flex-end', mobileMenuAnimation]) => css`\n display: ${mobileMenuAnimation == null ? 'flex' : 'none'};\n justify-content: ${alignment};\n `,\n )}\n`\n\nconst OpenIconContainer = styled.button.withConfig({\n shouldForwardProp: prop =>\n !['mobileMenuAnimation', 'alignment', 'color'].includes(prop.toString()),\n})<{\n mobileMenuAnimation: Props['mobileMenuAnimation']\n alignment: Props['alignment']\n color: ResponsiveValue<Color> | null | undefined\n}>`\n display: none;\n flex-grow: 1;\n align-items: center;\n background: none;\n outline: 0;\n border: 0;\n padding: 0;\n fill: currentColor;\n ${p =>\n cssMediaRules(\n [p.mobileMenuAnimation, p.alignment, p.color] as const,\n ([mobileMenuAnimation, alignment = 'flex-end', color]) => css`\n display: ${mobileMenuAnimation == null ? 'none' : 'flex'};\n justify-content: ${alignment};\n color: ${color == null ? 'rgba(161, 168, 194, 0.5)' : colorToString(color)};\n `,\n )}\n`\n\ntype NavigationButtonProps = NavigationButtonValue['payload'] &\n Omit<ComponentPropsWithoutRef<typeof Button>, 'color' | 'textColor'>\n\nfunction NavigationButton(props: NavigationButtonProps): JSX.Element {\n const { textColor, color, ...restOfProps } = props\n\n return (\n <Button\n {...restOfProps}\n textColor={useResponsiveColor(textColor)}\n color={useResponsiveColor(color)}\n />\n )\n}\n\nconst placeholder = {\n src: \"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='93.12' height='36' viewBox='0 0 93.12 36'%3E%3Cg id='Layer_2' data-name='Layer 2'%3E%3Cg id='Layer_1-2' data-name='Layer 1'%3E%3Cpath d='M18,0A18,18,0,1,1,0,18,18,18,0,0,1,18,0ZM49.36,21.94h6.36V24H46.8V10h2.56Zm9.06.72a4.88,4.88,0,0,1-1.64-3.72,5,5,0,0,1,1.64-3.74,5.57,5.57,0,0,1,7.7,0,5.09,5.09,0,0,1,.26,7.18l-.26.26a5.56,5.56,0,0,1-7.7,0Zm1.68-6a3.39,3.39,0,0,0,0,4.52,3,3,0,0,0,4.24.08l.08-.08a3.39,3.39,0,0,0,0-4.52,3,3,0,0,0-4.24-.08Zm10,10.68,1-1.92a5.28,5.28,0,0,0,3.3,1.22,3.6,3.6,0,0,0,2.32-.72,2.73,2.73,0,0,0,.9-2.26V22.5a3.61,3.61,0,0,1-1.45,1.26,4.35,4.35,0,0,1-2,.46,4.57,4.57,0,0,1-3.58-1.54A5.48,5.48,0,0,1,69.2,18.9a5.42,5.42,0,0,1,1.36-3.74,4.64,4.64,0,0,1,3.62-1.5,4,4,0,0,1,3.44,1.72v-1.5h2.46v9a6.13,6.13,0,0,1-1.43,4.46,5.27,5.27,0,0,1-4,1.44,7.09,7.09,0,0,1-4.53-1.42Zm1.54-8.44a3.4,3.4,0,0,0,.82,2.3,2.72,2.72,0,0,0,2.17.94,3.13,3.13,0,0,0,1.21-.22,2.89,2.89,0,0,0,1-.62,3.08,3.08,0,0,0,.63-1,3.62,3.62,0,0,0,.21-1.3,4,4,0,0,0-.23-1.33,3.3,3.3,0,0,0-.63-1.05,2.74,2.74,0,0,0-1-.68,3.35,3.35,0,0,0-1.25-.24,2.92,2.92,0,0,0-1.2.24,2.58,2.58,0,0,0-.93.67,3,3,0,0,0-.59,1,3.89,3.89,0,0,0-.19,1.31ZM83.8,22.66a4.88,4.88,0,0,1-1.64-3.72A5,5,0,0,1,83.8,15.2a5.57,5.57,0,0,1,7.7,0,5.09,5.09,0,0,1,.26,7.18,3.19,3.19,0,0,1-.26.26,5.56,5.56,0,0,1-7.7,0Zm1.68-6a3.39,3.39,0,0,0,0,4.52,3,3,0,0,0,4.24.08l.08-.08a3.39,3.39,0,0,0,0-4.52,3,3,0,0,0-4.24-.08Z' fill='%23a1a8c2' opacity='0.4' style='isolation: isolate'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A\",\n dimensions: { width: 93, height: 36 },\n}\n\nconst Navigation = forwardRef<HTMLDivElement, Props>(function Navigation(\n {\n id,\n links = [],\n linkTextStyle,\n showLogo,\n logoFile,\n logoWidth,\n logoAltText,\n logoLink,\n alignment,\n gutter,\n mobileMenuAnimation,\n mobileMenuOpenIconColor,\n mobileMenuCloseIconColor,\n mobileMenuBackgroundColor,\n width,\n margin,\n },\n ref,\n) {\n const [isOpen, setIsOpen] = useState(false)\n\n return (\n <Container\n ref={ref}\n id={id}\n width={width}\n margin={margin}\n textStyle={linkTextStyle}\n gutter={gutter}\n >\n {showLogo === true && (\n <Image\n altText={logoAltText}\n file={logoFile}\n link={logoLink}\n placeholder={placeholder}\n width={logoWidth}\n />\n )}\n <div style={{ display: 'flex', flexGrow: 1, justifyContent: 'flex-end' }}>\n <LinksContainer alignment={alignment} mobileMenuAnimation={mobileMenuAnimation}>\n {links.length > 0 ? (\n links.map((link, i) => (\n <GutterContainer\n key={link.id}\n gutter={gutter}\n first={i === 0}\n last={i === links.length - 1}\n >\n {link.type === 'button' && (\n <NavigationButton {...link.payload}>{link.payload.label}</NavigationButton>\n )}\n {link.type === 'dropdown' && <DropDownButton {...link.payload} />}\n </GutterContainer>\n ))\n ) : (\n <LinksPlaceholder gutter={gutter} />\n )}\n </LinksContainer>\n <OpenIconContainer\n alignment={alignment}\n // @ts-expect-error: HTMLButtonElement `color` attribute conflicts with prop\n color={mobileMenuOpenIconColor}\n mobileMenuAnimation={mobileMenuAnimation}\n onClick={() => setIsOpen(true)}\n >\n <MobileMenu28 />\n </OpenIconContainer>\n <MobileMenu\n animation={mobileMenuAnimation}\n backgroundColor={mobileMenuBackgroundColor}\n closeIconColor={mobileMenuCloseIconColor}\n links={links}\n onClose={() => setIsOpen(false)}\n open={isOpen}\n />\n </div>\n </Container>\n )\n})\n\nexport default Navigation\n"],"names":["_path","_extends","React","PlaceholderLink","styled","div","withConfig","shouldForwardProp","prop","includes","toString","props","width","button","links","gutter","_Fragment","map","link","i","GutterContainer","length","DROP_DOWN_MENU_WIDTH","DropDownMenu","position","dropIn","keyframes","DropDownContainer","StyledDropDownItem","Link","cssTextStyle","p","cssMediaRules","color","textStyle","fontSize","value","unit","fontWeight","fontStyle","letterSpacing","textTransform","css","colorToString","restOfProps","useResponsiveColor","label","caret","textColor","container","useRef","setPosition","useState","useIsomorphicLayoutEffect","current","ownerDocument","defaultView","innerWidth","offsetLeft","_jsx","Button","display","alignItems","marginRight","_jsxs","fill","CaretDown8","Plus8","ArrowDown8","ChevronDown8","id","payload","DropDownItem","open","ButtonLink","StyledLink","onClose","isOpen","setIsOpen","prev","NavigationButton","Container","animation","backgroundColor","coverRight","coverLeft","top","bottom","right","left","CloseIconContainer","closeIconColor","Times16","flexDirection","flexShrink","Fragment","type","DropDownButton","nav","cssWidth","cssMargin","LinksContainer","alignment","mobileMenuAnimation","OpenIconContainer","placeholder","src","dimensions","height","Navigation","forwardRef","linkTextStyle","showLogo","logoFile","logoWidth","logoAltText","logoLink","mobileMenuOpenIconColor","mobileMenuCloseIconColor","mobileMenuBackgroundColor","margin","ref","Image","flexGrow","justifyContent","MobileMenu28"],"mappings":"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"}
|
package/dist/Root.cjs.js
CHANGED
|
@@ -23,7 +23,7 @@ var styled = require("styled-components");
|
|
|
23
23
|
var polished = require("polished");
|
|
24
24
|
var React = require("react");
|
|
25
25
|
var jsxRuntime = require("react/jsx-runtime");
|
|
26
|
-
var
|
|
26
|
+
var next = require("./index.cjs.js");
|
|
27
27
|
var cssMediaRules = require("./cssMediaRules.cjs.js");
|
|
28
28
|
var index = require("./index.cjs2.js");
|
|
29
29
|
require("use-sync-external-store/shim/with-selector");
|
|
@@ -137,7 +137,7 @@ const Root = React.forwardRef(function Page({
|
|
|
137
137
|
index: index2,
|
|
138
138
|
columnGap,
|
|
139
139
|
rowGap,
|
|
140
|
-
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
140
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(next.Element, {
|
|
141
141
|
element: child
|
|
142
142
|
})
|
|
143
143
|
}, child.key)) : /* @__PURE__ */ jsxRuntime.jsx(Placeholder, {})
|
package/dist/Root.cjs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Root.cjs.js","sources":["../src/components/builtin/Root/components/Placeholder/index.tsx","../src/components/builtin/Root/Root.tsx"],"sourcesContent":["import { forwardRef } from 'react'\nimport styled from 'styled-components'\n\nconst PlaceholderBase = styled.div`\n width: 100%;\n background: rgba(161, 168, 194, 0.18);\n height: 80px;\n padding: 8px;\n`\n\ntype Props = Record<string, never>\n\nexport default forwardRef<HTMLDivElement, Props>(function Placeholder(props: Props, ref) {\n return (\n <PlaceholderBase {...props} ref={ref}>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"100%\"\n height=\"100%\"\n style={{ overflow: 'visible' }}\n >\n <rect\n x={0}\n y={0}\n width=\"100%\"\n height=\"100%\"\n strokeWidth={2}\n strokeDasharray=\"4 2\"\n fill=\"none\"\n stroke=\"rgba(161, 168, 194, 0.40)\"\n rx=\"4\"\n ry=\"4\"\n />\n </svg>\n </PlaceholderBase>\n )\n})\n","import styled, { createGlobalStyle } from 'styled-components'\nimport { normalize } from 'polished'\nimport { forwardRef, Ref } from 'react'\n\nimport Placeholder from './components/Placeholder'\nimport {\n GridValue,\n BackgroundsValue,\n GapXValue,\n GapYValue,\n} from '../../../prop-controllers/descriptors'\nimport { Element } from '../../../runtimes/react'\nimport { cssGridItem } from '../../utils/cssMediaRules'\nimport BackgroundsContainer from '../../shared/BackgroundsContainer'\nimport { Props } from '../../../prop-controllers'\n\nconst Normalize = createGlobalStyle`\n html {\n box-sizing: border-box;\n }\n\n *, *::before, *::after {\n box-sizing: inherit;\n }\n\n ${normalize()}\n`\n\nconst Grid = styled.div`\n display: flex;\n flex-wrap: wrap;\n width: 100%;\n`\n\nconst GridItem = styled.div.withConfig({\n shouldForwardProp: prop => !['grid', 'index', 'rowGap', 'columnGap'].includes(prop.toString()),\n})`\n display: flex;\n align-items: flex-start;\n ${cssGridItem()}\n`\n\ntype Props = {\n children?: GridValue\n backgrounds?: BackgroundsValue\n rowGap?: GapYValue\n columnGap?: GapXValue\n}\n\nconst Root = forwardRef(function Page(\n { children, backgrounds, rowGap, columnGap }: Props,\n ref: Ref<HTMLDivElement>,\n) {\n return (\n <>\n <Normalize />\n <BackgroundsContainer ref={ref} style={{ background: 'white' }} backgrounds={backgrounds}>\n <Grid>\n {children && children.elements.length > 0 ? (\n children.elements.map((child, index) => (\n <GridItem\n key={child.key}\n grid={children.columns}\n index={index}\n columnGap={columnGap}\n rowGap={rowGap}\n >\n <Element element={child} />\n </GridItem>\n ))\n ) : (\n <Placeholder />\n )}\n </Grid>\n </BackgroundsContainer>\n </>\n )\n})\n\nexport default Root\n"],"names":["PlaceholderBase","styled","div","forwardRef","props","ref","overflow","Normalize","createGlobalStyle","normalize","Grid","GridItem","withConfig","shouldForwardProp","prop","includes","toString","cssGridItem","Root","children","backgrounds","rowGap","columnGap","_Fragment","_jsx","BackgroundsContainer","background","elements","length","map","child","index","columns","Element","key"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,MAAMA,kBAAkBC,gBAAOC,WAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAS/B,IAAeC,cAAAA,MAAAA,WAAkC,sBAAqBC,OAAcC,KAAK;AAErF,wCAAC,iBAAD,iCAAqBD,QAArB;AAAA,IAA4B;AAAA,IAC1B,yCAAA,OAAA;AAAA,MACE,OAAM;AAAA,MACN,OAAM;AAAA,MACN,QAAO;AAAA,MACP,OAAO;AAAA,QAAEE,UAAU;AAAA,MAJrB;AAAA,MAME,yCAAA,QAAA;AAAA,QACE,GAAG;AAAA,QACH,GAAG;AAAA,QACH,OAAM;AAAA,QACN,QAAO;AAAA,QACP,aAAa;AAAA,QACb,iBAAgB;AAAA,QAChB,MAAK;AAAA,QACL,QAAO;AAAA,QACP,IAAG;AAAA,QACH,IAAG;AAAA,MAAA,CAVL;AAAA,IAAA,CANF;AAAA,EAAA,EAFJ;AAuBD,CAxBwB;ACIzB,MAAMC,YAAYC,OAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,IASdC,SAAY,UAAA;AAAA;AAGhB,MAAMC,OAAOT,gBAAOC,WAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAMpB,MAAMS,WAAWV,gBAAAA,WAAOC,IAAIU,WAAW;AAAA,EACrCC,mBAAmBC,CAAAA,SAAQ,CAAC,CAAC,QAAQ,SAAS,UAAU,WAA5B,EAAyCC,SAASD,KAAKE,SAAAA,CAAvD;AADS,CAAtB;AAAA;AAAA;AAAA,IAKbC,cAAc,YAAA;AAAA;AAUZC,MAAAA,OAAOf,MAAAA,WAAW,cACtB;AAAA,EAAEgB;AAAAA,EAAUC;AAAAA,EAAaC;AAAAA,EAAQC;AAAAA,GACjCjB,KACA;AAEE,yCAAAkB,WAAAA,UAAA;AAAA,IAAA,UAAA,CACGC,2BAAAA,IAAA,WADH,CAAA,CAAA,kCAEGC,4BAAD;AAAA,MAAsB;AAAA,MAAU,OAAO;AAAA,QAAEC,YAAY;AAAA,MAArD;AAAA,MAAgE;AAAA,MAAhE,yCACG,MAAD;AAAA,QACGP,UAAAA,YAAYA,SAASQ,SAASC,SAAS,IACtCT,SAASQ,SAASE,IAAI,CAACC,OAAOC,0CAC3B,UAAD;AAAA,UAEE,MAAMZ,SAASa;AAAAA,UACf;AAAA,UACA;AAAA,UACA;AAAA,UALF,yCAOGC,
|
|
1
|
+
{"version":3,"file":"Root.cjs.js","sources":["../src/components/builtin/Root/components/Placeholder/index.tsx","../src/components/builtin/Root/Root.tsx"],"sourcesContent":["import { forwardRef } from 'react'\nimport styled from 'styled-components'\n\nconst PlaceholderBase = styled.div`\n width: 100%;\n background: rgba(161, 168, 194, 0.18);\n height: 80px;\n padding: 8px;\n`\n\ntype Props = Record<string, never>\n\nexport default forwardRef<HTMLDivElement, Props>(function Placeholder(props: Props, ref) {\n return (\n <PlaceholderBase {...props} ref={ref}>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"100%\"\n height=\"100%\"\n style={{ overflow: 'visible' }}\n >\n <rect\n x={0}\n y={0}\n width=\"100%\"\n height=\"100%\"\n strokeWidth={2}\n strokeDasharray=\"4 2\"\n fill=\"none\"\n stroke=\"rgba(161, 168, 194, 0.40)\"\n rx=\"4\"\n ry=\"4\"\n />\n </svg>\n </PlaceholderBase>\n )\n})\n","import styled, { createGlobalStyle } from 'styled-components'\nimport { normalize } from 'polished'\nimport { forwardRef, Ref } from 'react'\n\nimport Placeholder from './components/Placeholder'\nimport {\n GridValue,\n BackgroundsValue,\n GapXValue,\n GapYValue,\n} from '../../../prop-controllers/descriptors'\nimport { Element } from '../../../runtimes/react'\nimport { cssGridItem } from '../../utils/cssMediaRules'\nimport BackgroundsContainer from '../../shared/BackgroundsContainer'\nimport { Props } from '../../../prop-controllers'\n\nconst Normalize = createGlobalStyle`\n html {\n box-sizing: border-box;\n }\n\n *, *::before, *::after {\n box-sizing: inherit;\n }\n\n ${normalize()}\n`\n\nconst Grid = styled.div`\n display: flex;\n flex-wrap: wrap;\n width: 100%;\n`\n\nconst GridItem = styled.div.withConfig({\n shouldForwardProp: prop => !['grid', 'index', 'rowGap', 'columnGap'].includes(prop.toString()),\n})`\n display: flex;\n align-items: flex-start;\n ${cssGridItem()}\n`\n\ntype Props = {\n children?: GridValue\n backgrounds?: BackgroundsValue\n rowGap?: GapYValue\n columnGap?: GapXValue\n}\n\nconst Root = forwardRef(function Page(\n { children, backgrounds, rowGap, columnGap }: Props,\n ref: Ref<HTMLDivElement>,\n) {\n return (\n <>\n <Normalize />\n <BackgroundsContainer ref={ref} style={{ background: 'white' }} backgrounds={backgrounds}>\n <Grid>\n {children && children.elements.length > 0 ? (\n children.elements.map((child, index) => (\n <GridItem\n key={child.key}\n grid={children.columns}\n index={index}\n columnGap={columnGap}\n rowGap={rowGap}\n >\n <Element element={child} />\n </GridItem>\n ))\n ) : (\n <Placeholder />\n )}\n </Grid>\n </BackgroundsContainer>\n </>\n )\n})\n\nexport default Root\n"],"names":["PlaceholderBase","styled","div","forwardRef","props","ref","overflow","Normalize","createGlobalStyle","normalize","Grid","GridItem","withConfig","shouldForwardProp","prop","includes","toString","cssGridItem","Root","children","backgrounds","rowGap","columnGap","_Fragment","_jsx","BackgroundsContainer","background","elements","length","map","child","index","columns","Element","key"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,MAAMA,kBAAkBC,gBAAOC,WAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAS/B,IAAeC,cAAAA,MAAAA,WAAkC,sBAAqBC,OAAcC,KAAK;AAErF,wCAAC,iBAAD,iCAAqBD,QAArB;AAAA,IAA4B;AAAA,IAC1B,yCAAA,OAAA;AAAA,MACE,OAAM;AAAA,MACN,OAAM;AAAA,MACN,QAAO;AAAA,MACP,OAAO;AAAA,QAAEE,UAAU;AAAA,MAJrB;AAAA,MAME,yCAAA,QAAA;AAAA,QACE,GAAG;AAAA,QACH,GAAG;AAAA,QACH,OAAM;AAAA,QACN,QAAO;AAAA,QACP,aAAa;AAAA,QACb,iBAAgB;AAAA,QAChB,MAAK;AAAA,QACL,QAAO;AAAA,QACP,IAAG;AAAA,QACH,IAAG;AAAA,MAAA,CAVL;AAAA,IAAA,CANF;AAAA,EAAA,EAFJ;AAuBD,CAxBwB;ACIzB,MAAMC,YAAYC,OAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAAAA,IASdC,SAAY,UAAA;AAAA;AAGhB,MAAMC,OAAOT,gBAAOC,WAAAA;AAAAA;AAAAA;AAAAA;AAAAA;AAMpB,MAAMS,WAAWV,gBAAAA,WAAOC,IAAIU,WAAW;AAAA,EACrCC,mBAAmBC,CAAAA,SAAQ,CAAC,CAAC,QAAQ,SAAS,UAAU,WAA5B,EAAyCC,SAASD,KAAKE,SAAAA,CAAvD;AADS,CAAtB;AAAA;AAAA;AAAA,IAKbC,cAAc,YAAA;AAAA;AAUZC,MAAAA,OAAOf,MAAAA,WAAW,cACtB;AAAA,EAAEgB;AAAAA,EAAUC;AAAAA,EAAaC;AAAAA,EAAQC;AAAAA,GACjCjB,KACA;AAEE,yCAAAkB,WAAAA,UAAA;AAAA,IAAA,UAAA,CACGC,2BAAAA,IAAA,WADH,CAAA,CAAA,kCAEGC,4BAAD;AAAA,MAAsB;AAAA,MAAU,OAAO;AAAA,QAAEC,YAAY;AAAA,MAArD;AAAA,MAAgE;AAAA,MAAhE,yCACG,MAAD;AAAA,QACGP,UAAAA,YAAYA,SAASQ,SAASC,SAAS,IACtCT,SAASQ,SAASE,IAAI,CAACC,OAAOC,0CAC3B,UAAD;AAAA,UAEE,MAAMZ,SAASa;AAAAA,UACf;AAAA,UACA;AAAA,UACA;AAAA,UALF,yCAOGC,cAAD;AAAA,YAAS,SAASH;AAAAA,UAAAA,CAAlB;AAAA,QAAA,GANKA,MAAMI,GADb,CADF,IAYCV,2BAAAA,IAAA,aAAD,CAAA,CAAA;AAAA,MAAA,CAdJ;AAAA,IAAA,CAHJ,CAAA;AAAA,EAAA,CADF;AAwBD,CA5BsB;;"}
|
package/dist/SocialLinks.cjs.js
CHANGED
|
@@ -4,7 +4,7 @@ var React = require("react");
|
|
|
4
4
|
var styled = require("styled-components");
|
|
5
5
|
var index$1 = require("./index.cjs3.js");
|
|
6
6
|
var cssMediaRules = require("./cssMediaRules.cjs.js");
|
|
7
|
-
var
|
|
7
|
+
var next = require("./index.cjs.js");
|
|
8
8
|
var jsxRuntime = require("react/jsx-runtime");
|
|
9
9
|
var index = require("./index.cjs4.js");
|
|
10
10
|
require("scroll-into-view-if-needed");
|
|
@@ -815,7 +815,7 @@ const StyledLink = styled__default["default"](index$1.Link).withConfig({
|
|
|
815
815
|
naked: 0,
|
|
816
816
|
square: 0
|
|
817
817
|
}[shape]};
|
|
818
|
-
background: ${shape === "naked" ? "transparent" : backgroundColor == null ? "currentColor" :
|
|
818
|
+
background: ${shape === "naked" ? "transparent" : backgroundColor == null ? "currentColor" : next.colorToString(backgroundColor)};
|
|
819
819
|
|
|
820
820
|
:hover {
|
|
821
821
|
${{
|
|
@@ -833,7 +833,7 @@ const StyledLink = styled__default["default"](index$1.Link).withConfig({
|
|
|
833
833
|
}
|
|
834
834
|
|
|
835
835
|
svg {
|
|
836
|
-
fill: ${fill == null ? shape === "naked" || backgroundColor != null ? "currentColor" : "white" :
|
|
836
|
+
fill: ${fill == null ? shape === "naked" || backgroundColor != null ? "currentColor" : "white" : next.colorToString(fill)};
|
|
837
837
|
width: ${{
|
|
838
838
|
small: 16,
|
|
839
839
|
medium: 20,
|