@makeswift/runtime 0.2.16 → 0.2.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (158) hide show
  1. package/dist/Box.cjs.js +2 -3
  2. package/dist/Box.cjs.js.map +1 -1
  3. package/dist/Box.es.js +2 -3
  4. package/dist/Box.es.js.map +1 -1
  5. package/dist/Button.cjs.js +2 -3
  6. package/dist/Button.cjs.js.map +1 -1
  7. package/dist/Button.es.js +2 -3
  8. package/dist/Button.es.js.map +1 -1
  9. package/dist/Carousel.cjs.js +3 -4
  10. package/dist/Carousel.cjs.js.map +1 -1
  11. package/dist/Carousel.es.js +3 -4
  12. package/dist/Carousel.es.js.map +1 -1
  13. package/dist/Countdown.cjs.js +2 -3
  14. package/dist/Countdown.cjs.js.map +1 -1
  15. package/dist/Countdown.es.js +2 -3
  16. package/dist/Countdown.es.js.map +1 -1
  17. package/dist/Divider.cjs.js +2 -3
  18. package/dist/Divider.cjs.js.map +1 -1
  19. package/dist/Divider.es.js +2 -3
  20. package/dist/Divider.es.js.map +1 -1
  21. package/dist/Embed.cjs.js +2 -3
  22. package/dist/Embed.cjs.js.map +1 -1
  23. package/dist/Embed.es.js +2 -3
  24. package/dist/Embed.es.js.map +1 -1
  25. package/dist/Form.cjs.js +2 -3
  26. package/dist/Form.cjs.js.map +1 -1
  27. package/dist/Form.es.js +2 -3
  28. package/dist/Form.es.js.map +1 -1
  29. package/dist/{Image.cjs2.js → Image.cjs.js} +3 -4
  30. package/dist/{Image.es2.js.map → Image.cjs.js.map} +1 -1
  31. package/dist/{Image.es2.js → Image.es.js} +3 -4
  32. package/dist/Image.es.js.map +1 -0
  33. package/dist/Navigation.cjs.js +3 -4
  34. package/dist/Navigation.cjs.js.map +1 -1
  35. package/dist/Navigation.es.js +3 -4
  36. package/dist/Navigation.es.js.map +1 -1
  37. package/dist/Root.cjs.js +2 -3
  38. package/dist/Root.cjs.js.map +1 -1
  39. package/dist/Root.es.js +2 -3
  40. package/dist/Root.es.js.map +1 -1
  41. package/dist/SocialLinks.cjs.js +2 -3
  42. package/dist/SocialLinks.cjs.js.map +1 -1
  43. package/dist/SocialLinks.es.js +2 -3
  44. package/dist/SocialLinks.es.js.map +1 -1
  45. package/dist/Text.cjs.js +2 -3
  46. package/dist/Text.cjs.js.map +1 -1
  47. package/dist/Text.es.js +2 -3
  48. package/dist/Text.es.js.map +1 -1
  49. package/dist/Video.cjs.js +2 -3
  50. package/dist/Video.cjs.js.map +1 -1
  51. package/dist/Video.es.js +2 -3
  52. package/dist/Video.es.js.map +1 -1
  53. package/dist/builder.cjs.js +3 -2
  54. package/dist/builder.cjs.js.map +1 -1
  55. package/dist/builder.es.js +3 -2
  56. package/dist/builder.es.js.map +1 -1
  57. package/dist/combobox.cjs.js +8 -0
  58. package/dist/combobox.cjs.js.map +1 -0
  59. package/dist/combobox.es.js +6 -0
  60. package/dist/combobox.es.js.map +1 -0
  61. package/dist/components.cjs.js +3 -4
  62. package/dist/components.cjs.js.map +1 -1
  63. package/dist/components.es.js +3 -4
  64. package/dist/components.es.js.map +1 -1
  65. package/dist/control-serialization.cjs.js +148 -147
  66. package/dist/control-serialization.cjs.js.map +1 -1
  67. package/dist/control-serialization.es.js +3 -2
  68. package/dist/control-serialization.es.js.map +1 -1
  69. package/dist/control.cjs.js +437 -0
  70. package/dist/control.cjs.js.map +1 -0
  71. package/dist/control.es.js +426 -0
  72. package/dist/control.es.js.map +1 -0
  73. package/dist/controls.cjs.js +26 -19
  74. package/dist/controls.cjs.js.map +1 -1
  75. package/dist/controls.es.js +4 -5
  76. package/dist/controls.es.js.map +1 -1
  77. package/dist/index.cjs.js +222 -217
  78. package/dist/index.cjs.js.map +1 -1
  79. package/dist/index.es.js +17 -12
  80. package/dist/index.es.js.map +1 -1
  81. package/dist/main.cjs.js +1 -2
  82. package/dist/main.cjs.js.map +1 -1
  83. package/dist/main.es.js +1 -2
  84. package/dist/main.es.js.map +1 -1
  85. package/dist/next.cjs.js +2 -3
  86. package/dist/next.cjs.js.map +1 -1
  87. package/dist/next.es.js +2 -3
  88. package/dist/next.es.js.map +1 -1
  89. package/dist/prop-controllers.cjs.js +1 -2
  90. package/dist/prop-controllers.cjs.js.map +1 -1
  91. package/dist/prop-controllers.es.js +1 -2
  92. package/dist/prop-controllers.es.js.map +1 -1
  93. package/dist/react-builder-preview.cjs.js +2 -3
  94. package/dist/react-builder-preview.cjs.js.map +1 -1
  95. package/dist/react-builder-preview.es.js +3 -4
  96. package/dist/react-builder-preview.es.js.map +1 -1
  97. package/dist/react-page.cjs.js +32 -358
  98. package/dist/react-page.cjs.js.map +1 -1
  99. package/dist/react-page.es.js +11 -337
  100. package/dist/react-page.es.js.map +1 -1
  101. package/dist/react.cjs.js +2 -3
  102. package/dist/react.cjs.js.map +1 -1
  103. package/dist/react.es.js +2 -3
  104. package/dist/react.es.js.map +1 -1
  105. package/dist/slot.cjs.js +359 -3
  106. package/dist/slot.cjs.js.map +1 -1
  107. package/dist/slot.es.js +310 -2
  108. package/dist/slot.es.js.map +1 -1
  109. package/dist/text-input.cjs.js +0 -6
  110. package/dist/text-input.cjs.js.map +1 -1
  111. package/dist/text-input.es.js +1 -5
  112. package/dist/text-input.es.js.map +1 -1
  113. package/dist/types/src/controls/color.d.ts +2 -0
  114. package/dist/types/src/controls/color.d.ts.map +1 -1
  115. package/dist/types/src/controls/control.d.ts +3 -0
  116. package/dist/types/src/controls/control.d.ts.map +1 -1
  117. package/dist/types/src/controls/image.d.ts +2 -0
  118. package/dist/types/src/controls/image.d.ts.map +1 -1
  119. package/dist/types/src/controls/link.d.ts +2 -0
  120. package/dist/types/src/controls/link.d.ts.map +1 -1
  121. package/dist/types/src/controls/list.d.ts +2 -0
  122. package/dist/types/src/controls/list.d.ts.map +1 -1
  123. package/dist/types/src/controls/shape.d.ts +2 -0
  124. package/dist/types/src/controls/shape.d.ts.map +1 -1
  125. package/dist/types/src/controls/slot.d.ts +2 -1
  126. package/dist/types/src/controls/slot.d.ts.map +1 -1
  127. package/dist/types/src/controls/style.d.ts +2 -0
  128. package/dist/types/src/controls/style.d.ts.map +1 -1
  129. package/dist/types/src/next/preview-mode.d.ts.map +1 -1
  130. package/dist/types/src/prop-controllers/copy/backgrounds.d.ts +1 -54
  131. package/dist/types/src/prop-controllers/copy/backgrounds.d.ts.map +1 -1
  132. package/dist/types/src/prop-controllers/copy/grid.d.ts +1 -1
  133. package/dist/types/src/prop-controllers/copy/grid.d.ts.map +1 -1
  134. package/dist/types/src/prop-controllers/copy/image.d.ts +1 -1
  135. package/dist/types/src/prop-controllers/copy/image.d.ts.map +1 -1
  136. package/dist/types/src/prop-controllers/copy/link.d.ts +1 -1
  137. package/dist/types/src/prop-controllers/copy/link.d.ts.map +1 -1
  138. package/dist/types/src/prop-controllers/copy/navigation-links.d.ts +1 -1
  139. package/dist/types/src/prop-controllers/copy/navigation-links.d.ts.map +1 -1
  140. package/dist/types/src/prop-controllers/copy/responsive-color.d.ts +1 -1
  141. package/dist/types/src/prop-controllers/copy/responsive-color.d.ts.map +1 -1
  142. package/dist/types/src/prop-controllers/copy/shadows.d.ts +1 -1
  143. package/dist/types/src/prop-controllers/copy/shadows.d.ts.map +1 -1
  144. package/dist/types/src/state/react-page.d.ts.map +1 -1
  145. package/package.json +1 -1
  146. package/dist/Image.cjs2.js.map +0 -1
  147. package/dist/color.cjs.js +0 -8
  148. package/dist/color.cjs.js.map +0 -1
  149. package/dist/color.es.js +0 -6
  150. package/dist/color.es.js.map +0 -1
  151. package/dist/image.cjs.js +0 -282
  152. package/dist/image.cjs.js.map +0 -1
  153. package/dist/image.es.js +0 -240
  154. package/dist/image.es.js.map +0 -1
  155. package/dist/shape.cjs.js +0 -20
  156. package/dist/shape.cjs.js.map +0 -1
  157. package/dist/shape.es.js +0 -14
  158. package/dist/shape.es.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Image.es.js","sources":["../src/components/builtin/Image/Image.tsx"],"sourcesContent":["import styled, { css } from 'styled-components'\nimport { useState, useEffect, Ref, forwardRef } from 'react'\nimport NextImage from 'next/image'\n\nimport {\n BorderRadiusValue,\n BorderValue,\n ElementIDValue,\n ImageValue,\n LinkValue,\n MarginValue,\n PaddingValue,\n ResponsiveOpacityValue,\n ShadowsValue,\n TextInputValue,\n WidthValue,\n} from '../../../prop-controllers/descriptors'\nimport {\n cssBorder,\n cssBorderRadius,\n cssBoxShadow,\n cssMargin,\n cssMediaRules,\n cssPadding,\n cssWidth,\n} from '../../utils/cssMediaRules'\nimport { DEVICES, findDeviceOverride } from '../../utils/devices'\nimport {\n BorderPropControllerData,\n BoxShadowPropControllerData,\n useBorder,\n useBoxShadow,\n useFile,\n} from '../../hooks'\nimport { placeholders } from '../../utils/placeholders'\nimport { useIsInBuilder } from '../../../runtimes/react'\nimport { Link } from '../../shared/Link'\n\ntype Props = {\n id?: ElementIDValue\n file?: ImageValue\n altText?: TextInputValue\n link?: LinkValue\n width?: WidthValue\n margin?: MarginValue\n padding?: PaddingValue\n border?: BorderValue\n borderRadius?: BorderRadiusValue\n boxShadow?: ShadowsValue\n opacity?: ResponsiveOpacityValue\n placeholder?: { src: string; dimensions: { width: number; height: number } }\n className?: string\n}\n\nfunction loadImage(src: string): Promise<HTMLImageElement> {\n return new Promise<HTMLImageElement>((resolve, reject) => {\n const image = new Image()\n\n image.onload = () => resolve(image)\n image.onerror = reject\n image.src = src\n })\n}\n\nfunction imageSizes(width?: Props['width']): string {\n const baseDevice = DEVICES.find(device => device.maxWidth == null)\n const baseWidth = baseDevice && width && findDeviceOverride(width, baseDevice.id)\n const baseWidthSize =\n baseWidth == null || baseWidth.value.unit !== 'px' ? '100vw' : `${baseWidth.value.value}px`\n\n return DEVICES.map(device => {\n const override = findDeviceOverride(width, device.id)\n\n if (override == null || device.maxWidth == null || override.value.unit !== 'px') return null\n\n return `(max-width: ${device.maxWidth}px) ${Math.min(device.maxWidth, override.value.value)}px`\n })\n .filter((size): size is NonNullable<typeof size> => size != null)\n .reduce((sourceSizes, sourceSize) => `${sourceSize}, ${sourceSizes}`, baseWidthSize)\n}\n\nconst ImageContainer = styled.div.withConfig({\n shouldForwardProp: prop =>\n ![\n 'width',\n 'margin',\n 'padding',\n 'border',\n 'borderRadius',\n 'boxShadow',\n 'opacity',\n 'dimensions',\n ].includes(prop.toString()),\n})<{\n width?: Props['width']\n margin?: Props['margin']\n padding?: Props['padding']\n border?: BorderPropControllerData | null | undefined\n borderRadius: Props['borderRadius']\n boxShadow?: BoxShadowPropControllerData | null | undefined\n opacity: Props['opacity']\n link?: Props['link']\n dimensions: { width: number; height: number }\n}>`\n line-height: 0;\n overflow: hidden;\n ${props => cssWidth(`${props.dimensions.width}px`)(props)}\n ${cssMargin()}\n ${cssPadding()}\n ${cssBorder()}\n ${cssBorderRadius()}\n ${cssBoxShadow()}\n ${p =>\n cssMediaRules(\n [p.opacity],\n ([opacity = 1]) => css`\n opacity: ${opacity};\n `,\n )}\n`\n\nconst UnoptimizedImage = styled.img`\n width: 100%;\n`\n\ntype Dimensions = {\n width: number\n height: number\n}\n\nconst ImageComponent = forwardRef(function Image(\n {\n id,\n width,\n margin,\n padding,\n file,\n border,\n borderRadius,\n altText,\n link,\n opacity,\n boxShadow,\n placeholder = placeholders.image,\n className,\n }: Props,\n ref: Ref<HTMLImageElement>,\n) {\n const fileData = useFile(file)\n const borderData = useBorder(border)\n const boxShadowData = useBoxShadow(boxShadow)\n const imageSrc = fileData?.publicUrl ? fileData.publicUrl : placeholder.src\n const dataDimensions = fileData?.publicUrl ? fileData?.dimensions : placeholder.dimensions\n const [measuredDimensions, setMeasuredDimensions] = useState<Dimensions | null>(null)\n const isInBuilder = useIsInBuilder()\n\n useEffect(() => {\n if (dataDimensions) return\n\n let cleanedUp = false\n\n loadImage(imageSrc)\n .then(image => {\n if (!cleanedUp) {\n setMeasuredDimensions({ width: image.naturalWidth, height: image.naturalHeight })\n }\n })\n .catch(console.error)\n\n return () => {\n cleanedUp = true\n }\n }, [dataDimensions, imageSrc])\n\n const dimensions = dataDimensions ?? measuredDimensions\n\n if (!dimensions) return null\n\n return (\n <ImageContainer\n as={link ? Link : 'div'}\n link={link}\n dimensions={dimensions}\n ref={ref}\n id={id}\n className={className}\n width={width}\n margin={margin}\n opacity={opacity}\n padding={padding}\n border={borderData}\n borderRadius={borderRadius}\n boxShadow={boxShadowData}\n >\n {isInBuilder ? (\n <UnoptimizedImage src={imageSrc} alt={altText} />\n ) : (\n <NextImage\n layout=\"responsive\"\n src={imageSrc}\n sizes={imageSizes(width)}\n alt={altText}\n width={dimensions.width}\n height={dimensions.height}\n />\n )}\n </ImageContainer>\n )\n})\n\nexport default ImageComponent\n"],"names":["src","Promise","resolve","reject","image","Image","onload","onerror","width","baseDevice","DEVICES","find","device","maxWidth","baseWidth","findDeviceOverride","id","baseWidthSize","value","unit","map","override","Math","min","filter","size","reduce","sourceSizes","sourceSize","ImageContainer","styled","div","withConfig","shouldForwardProp","prop","includes","toString","props","cssWidth","dimensions","cssMargin","cssPadding","cssBorder","cssBorderRadius","cssBoxShadow","p","cssMediaRules","opacity","css","UnoptimizedImage","img","ImageComponent","forwardRef","margin","padding","file","border","borderRadius","altText","link","boxShadow","placeholder","placeholders","className","ref","fileData","useFile","borderData","useBorder","boxShadowData","useBoxShadow","imageSrc","publicUrl","dataDimensions","measuredDimensions","setMeasuredDimensions","useState","isInBuilder","useIsInBuilder","useEffect","cleanedUp","then","naturalWidth","height","naturalHeight","catch","console","error","Link","_jsx","imageSizes"],"mappings":"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"}
@@ -34,7 +34,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
34
34
  var React = require("react");
35
35
  var styled = require("styled-components");
36
36
  var index = require("./index.cjs4.js");
37
- var Image = require("./Image.cjs2.js");
37
+ var Image = require("./Image.cjs.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");
@@ -48,16 +48,15 @@ require("./react-page.cjs.js");
48
48
  require("redux");
49
49
  require("redux-thunk");
50
50
  require("./actions.cjs.js");
51
- require("./image.cjs.js");
52
- require("./color.cjs.js");
53
51
  require("./slot.cjs.js");
52
+ require("./control.cjs.js");
54
53
  require("next/dynamic");
55
54
  require("@apollo/client");
56
55
  require("@apollo/client/link/batch-http");
57
56
  require("slate");
58
57
  require("./graphql.cjs.js");
59
- require("./shape.cjs.js");
60
58
  require("./text-input.cjs.js");
59
+ require("./combobox.cjs.js");
61
60
  require("@emotion/css");
62
61
  require("color");
63
62
  require("scroll-into-view-if-needed");
@@ -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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"}
@@ -33,7 +33,7 @@ import * as React from "react";
33
33
  import { useRef, useState, createElement, Fragment as Fragment$1, forwardRef } from "react";
34
34
  import styled, { keyframes, css } from "styled-components";
35
35
  import { G as GutterContainer } from "./index.es4.js";
36
- import ImageComponent from "./Image.es2.js";
36
+ import ImageComponent from "./Image.es.js";
37
37
  import Button from "./Button.es.js";
38
38
  import { jsx, Fragment, jsxs } from "react/jsx-runtime";
39
39
  import { i as cssTextStyle, c as cssMediaRules, a as cssWidth, b as cssMargin } from "./cssMediaRules.es.js";
@@ -47,16 +47,15 @@ import "./react-page.es.js";
47
47
  import "redux";
48
48
  import "redux-thunk";
49
49
  import "./actions.es.js";
50
- import "./image.es.js";
51
- import "./color.es.js";
52
50
  import "./slot.es.js";
51
+ import "./control.es.js";
53
52
  import "next/dynamic";
54
53
  import "@apollo/client";
55
54
  import "@apollo/client/link/batch-http";
56
55
  import "slate";
57
56
  import "./graphql.es.js";
58
- import "./shape.es.js";
59
57
  import "./text-input.es.js";
58
+ import "./combobox.es.js";
60
59
  import "@emotion/css";
61
60
  import "color";
62
61
  import "scroll-into-view-if-needed";
@@ -1 +1 @@
1
- {"version":3,"file":"Navigation.es.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","PlaceholderLink","styled","div","withConfig","shouldForwardProp","prop","includes","toString","props","width","button","links","gutter","_Fragment","map","link","i","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","display","alignItems","marginRight","_jsxs","fill","CaretDown8","Plus8","ArrowDown8","ChevronDown8","id","payload","DropDownItem","open","ButtonLink","Button","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.es.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","PlaceholderLink","styled","div","withConfig","shouldForwardProp","prop","includes","toString","props","width","button","links","gutter","_Fragment","map","link","i","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","display","alignItems","marginRight","_jsxs","fill","CaretDown8","Plus8","ArrowDown8","ChevronDown8","id","payload","DropDownItem","open","ButtonLink","Button","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
@@ -31,16 +31,15 @@ require("./react-page.cjs.js");
31
31
  require("redux");
32
32
  require("redux-thunk");
33
33
  require("./actions.cjs.js");
34
- require("./image.cjs.js");
35
- require("./color.cjs.js");
36
34
  require("./slot.cjs.js");
35
+ require("./control.cjs.js");
37
36
  require("next/dynamic");
38
37
  require("@apollo/client");
39
38
  require("@apollo/client/link/batch-http");
40
39
  require("slate");
41
40
  require("./graphql.cjs.js");
42
- require("./shape.cjs.js");
43
41
  require("./text-input.cjs.js");
42
+ require("./combobox.cjs.js");
44
43
  require("@emotion/css");
45
44
  require("color");
46
45
  require("scroll-into-view-if-needed");
@@ -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,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;;"}
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/Root.es.js CHANGED
@@ -29,16 +29,15 @@ import "./react-page.es.js";
29
29
  import "redux";
30
30
  import "redux-thunk";
31
31
  import "./actions.es.js";
32
- import "./image.es.js";
33
- import "./color.es.js";
34
32
  import "./slot.es.js";
33
+ import "./control.es.js";
35
34
  import "next/dynamic";
36
35
  import "@apollo/client";
37
36
  import "@apollo/client/link/batch-http";
38
37
  import "slate";
39
38
  import "./graphql.es.js";
40
- import "./shape.es.js";
41
39
  import "./text-input.es.js";
40
+ import "./combobox.es.js";
42
41
  import "@emotion/css";
43
42
  import "color";
44
43
  import "scroll-into-view-if-needed";