{"version":3,"sources":["webpack:///./src/components/Arrow/Arrow.tsx","webpack:///./src/components/Logo/Logo.tsx","webpack:///./src/components/Button/Button.tsx","webpack:///./src/components/HowToSection/HowToSection.tsx","webpack:///./src/components/Accordion/Accordion.tsx","webpack:///./src/components/Indicator/Indicator.tsx"],"names":["transition","duration","Arrow","props","svg","width","height","aria-hidden","focusable","initial","x","variants","hover","stroke","strokeWidth","fill","path","d","strokeDasharray","pathLength","pathOffset","LogoAnimationState","pathVariants","Hide","opacity","Show","ease","times","Skip","Logo","className","label","animateIn","shouldReduceMotion","useReducedMotion","useInView","threshold","triggerOnce","skip","ref","inView","aria-label","sx","viewBox","animate","undefined","delayChildren","strokeLinecap","strokeMiterlimit","defaultProps","ButtonIcon","icon","disabled","submitting","position","right","top","transform","visibility","Button","variant","href","children","prefetch","type","replaceHistory","title","rest","stringLabel","whileHover","as","MotionAnchor","overflow","textOverflow","px","motion","button","aria-busy","cursor","instant","size","HowToSection","items","loginUrl","useAuth","TextVariant","H3","mb","interpolationParams","AccordionOrderTypes","AccordionArrow","isOpen","yOffset","useSpring","damping","stiffness","useTransform","value","useEffect","set","css","rem","lineHeight","AccordionItem","accUuid","item","orderType","index","indicator","boldHeader","useInteraction","focusVisible","accordionId","useId","includes","active","boxShadow","display","flexDirection","flexWrap","uuid","py","pl","none","pr","userSelect","flexGrow","Paragraph","mr","number","bullet","String","fromCharCode","maxWidth","fontWeight","FontWeight","Medium","div","y","transitionEnd","pt","pb","ml","headingsOffset","params","text","Accordion","background","Colors","PureWhite","useState","setAccUuid","length","backgroundColor","allowZeroExpanded","allowMultipleExpanded","onChange","varr","map","key","Indicator","Primary","scaleY","transformOrigin","Black"],"mappings":"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","file":"static/scripts/shared-3f86b863192ea422298b.js","sourcesContent":["import React from 'react';\n\nimport { Transition, motion } from '../../utils/motion';\n\nexport type ArrowProps = {\n className?: string;\n};\n\nconst transition: Transition = {\n duration: 0.3,\n};\n\nfunction Arrow(props: ArrowProps) {\n return (\n <motion.svg\n width=\"17\"\n height=\"12\"\n aria-hidden\n focusable={false}\n initial={{ x: 0 }}\n variants={{\n hover: {\n x: 4,\n },\n }}\n transition={transition}\n {...props}\n >\n <g stroke=\"currentColor\" strokeWidth=\"2\" fill=\"none\">\n <motion.path d=\"M10 1l5 5-5 5\" />\n <motion.path\n d=\"M0 6h14\"\n strokeDasharray=\"0 1\"\n initial={{\n pathLength: 1,\n // @ts-ignore\n pathOffset: 1,\n }}\n variants={{\n hover: {\n // @ts-ignore\n pathOffset: 0,\n },\n }}\n transition={transition}\n />\n </g>\n </motion.svg>\n );\n}\n\nexport default Arrow;\n","import React from 'react';\nimport { useInView } from 'react-intersection-observer';\n\nimport { motion, useReducedMotion } from '../../utils/motion';\n\nenum LogoAnimationState {\n Hide = 'hide',\n Show = 'show',\n Skip = 'skip',\n}\n\nexport type AnimatedLogoProps = {\n className?: string;\n animateIn?: boolean;\n label?: string;\n};\n\nconst pathVariants = {\n [LogoAnimationState.Hide]: {\n pathLength: 0,\n pathOffset: 0.5,\n opacity: 0,\n },\n [LogoAnimationState.Show]: {\n pathLength: 1,\n pathOffset: 0,\n // Null is a valid valid default value, that says use the current value - But the paths interpret it wrong, so force it as a number\n opacity: [(null as unknown) as number, 1],\n transition: {\n duration: 0.75,\n ease: 'easeOut',\n times: [0, 1],\n },\n },\n [LogoAnimationState.Skip]: {\n pathLength: 1,\n pathOffset: 0,\n opacity: 1,\n transition: {\n duration: 0,\n },\n },\n};\n\n/**\n * Renders an animated version of the Logo as an svg element.\n * It will be default fill the container it's rendered into, so be sure to set the height/width of the container element - or by adding a class to the logo itself.\n */\nfunction Logo({ className, label, animateIn }: AnimatedLogoProps) {\n const shouldReduceMotion = useReducedMotion();\n const [ref, inView] = useInView({\n threshold: 1,\n triggerOnce: true,\n skip: !animateIn,\n });\n\n return (\n <motion.svg\n aria-label={label}\n ref={ref}\n sx={{ height: 'auto' }}\n className={className}\n focusable={false}\n width=\"71.2\"\n height=\"70.4\"\n viewBox=\"0 0 71.2 70.4\"\n initial={\n !animateIn || shouldReduceMotion\n ? LogoAnimationState.Show\n : LogoAnimationState.Hide\n }\n animate={\n inView\n ? shouldReduceMotion\n ? LogoAnimationState.Skip\n : LogoAnimationState.Show\n : undefined\n }\n variants={{\n [LogoAnimationState.Show]: {\n transition: {\n delayChildren: 0.2,\n },\n },\n }}\n >\n <g\n fill=\"none\"\n stroke=\"currentColor\"\n strokeLinecap=\"round\"\n strokeWidth=\"1.5\"\n strokeMiterlimit=\"10\"\n >\n <motion.path\n variants={pathVariants}\n d=\"M3.1 43.3a32.87 32.87 0 012.6-23.1\"\n />\n <motion.path\n variants={pathVariants}\n d=\"M8.4 15.7C14.4 7.4 24.2 2 35.3 2c5.1 0 10 1.2 14.4 3.3\"\n />\n <motion.path\n variants={pathVariants}\n d=\"M54.6 8.1c8.4 6 14.1 15.1 14.5 28.2\"\n />\n <motion.path\n variants={pathVariants}\n d=\"M38.9 6.5c-1.2-.1-2.4-.2-3.6-.2-16 0-28.9 12.9-28.9 28.9 0 1.2-.1 1.3.2 5.2.2 2.1.6 2.8.4 4.5-.2 1.7-2.2 3.3-2.2 3.3\"\n />\n <motion.path\n variants={pathVariants}\n d=\"M64.3 52.2c3.2-21-1-37.8-20.1-44.5\"\n />\n <motion.path\n variants={pathVariants}\n d=\"M11 31.2c1.9-11.7 12.1-20.5 24.4-20.7 13.4-.1 23.8 9.8 25 22.7\"\n />\n <motion.path\n variants={pathVariants}\n d=\"M10.7 36.3s.5 7.5.1 9.5c-.5 3-4.1 6.5-4.1 6.5\"\n />\n <motion.path\n variants={pathVariants}\n d=\"M60.8 38.2s.5 4.2-.3 11.3c-.7 5.9-1.4 8.7-1.4 8.7\"\n />\n <motion.path\n variants={pathVariants}\n d=\"M19.5 45.2l-.4-10.1C18.9 26.2 26.4 19 35.3 19c9.4 0 15.7 7.3 16.8 16.2 1 7.7-.1 16.3-.1 16.3\"\n />\n <motion.path\n variants={pathVariants}\n d=\"M26.7 16.6c2.6-1.2 5.5-1.9 8.6-1.9 4.9 0 9.5 1.7 13 4.7\"\n />\n <motion.path\n variants={pathVariants}\n d=\"M22.6 19.2c-4.7 3.7-7.9 9.5-7.7 16 .1 5.4.9 10.6-.8 14-1.6 3.3-5 6.5-5 6.5\"\n />\n <motion.path\n variants={pathVariants}\n d=\"M51.8 23.2s4.9 4.3 4.9 17.9-3.5 22.2-3.5 22.2\"\n />\n <motion.path\n variants={pathVariants}\n d=\"M41.2 24.6c3.7 2.1 6.2 5.7 6.9 10.4 1 6.6.6 12.2-1.3 20.4-1.4 5.8-5 12.5-5 12.5\"\n />\n <motion.path\n variants={pathVariants}\n d=\"M27.4 33.4c.8-3.6 4-6.3 7.9-6.3 4.5 0 8.1 3.7 8.5 8.1.4 3.8.4 7.8.4 7.8\"\n />\n <motion.path\n variants={pathVariants}\n d=\"M31.7 68.3c5-7.5 6.5-12.1 7.8-18.3.9-4.2.5-8.6-.2-14.8-.3-2.1-1.9-3.8-4-3.8s-3.9 1.7-3.8 3.8c.8 9.3-.3 14.1-.3 14.1\"\n />\n <motion.path variants={pathVariants} d=\"M18.3 50.2s-1.8 4.9-6.3 8.6\" />\n <motion.path\n variants={pathVariants}\n d=\"M36.5 23.1c-.4 0-.8-.1-1.2-.1-6.7 0-12.4 5.4-12.1 12.1.2 5.5.8 10.8-.5 14.6-1.3 3.8-4.5 9-7.5 11.9\"\n />\n <motion.path\n variants={pathVariants}\n d=\"M27.5 38.4s1 7.5-1.1 12.9c-1.8 4.8-3.7 8.4-7.8 12.7\"\n />\n <motion.path\n variants={pathVariants}\n d=\"M35.3 35.2s1.2 10-.1 15.7c-1.7 7.5-4.1 11.6-8.4 16.6\"\n />\n <motion.path\n variants={pathVariants}\n d=\"M44 47.7c-1 7.2-3.7 14.6-7.5 20.7\"\n />\n <motion.path\n variants={pathVariants}\n d=\"M29.9 53.8c-1.9 5.1-4 8.3-7.3 12.2\"\n />\n <motion.path\n variants={pathVariants}\n d=\"M50.8 56.5c-.5 2.1-1.9 6.6-3.6 9.8\"\n />\n </g>\n </motion.svg>\n );\n}\n\nLogo.defaultProps = {\n label: 'Vælgererklæringers Logo',\n};\n\nexport default Logo;\n","import React from 'react';\nimport { Button as BaseButton } from '@charlietango/ui';\n\nimport { ButtonVariant } from '../../styles/buttons';\nimport { motion } from '../../utils/motion';\nimport LinkViewModel from '../../view-models/LinkViewModel';\nimport { MotionAnchor } from '../Anchor/Anchor';\nimport Spinner from '../Spinner/Spinner';\n\nexport type ButtonProps = {\n onClick?: (event) => void;\n variant?: ButtonVariant;\n label?: string;\n children?: React.ReactNode;\n icon?: React.ReactNode;\n /** Set submitting to true to show a spinner, and disable the button */\n submitting?: boolean;\n disabled?: boolean;\n className?: string;\n type?: 'submit' | 'button';\n prefetch?: boolean;\n replaceHistory?: boolean;\n /** This Anchor is always going to be an External page */\n external?: boolean;\n} & LinkViewModel;\n\nfunction ButtonIcon({ icon, disabled, submitting }) {\n if (!icon) return null;\n return (\n <span\n aria-hidden=\"true\"\n sx={{\n position: 'absolute',\n right: '18px',\n top: '50%',\n transform: 'translate(0, -50%)',\n visibility: disabled || submitting ? 'hidden' : undefined,\n }}\n >\n {icon}\n </span>\n );\n}\n\nfunction Button({\n variant,\n href,\n label,\n disabled,\n children,\n icon,\n submitting,\n type,\n prefetch,\n replaceHistory,\n title,\n ...rest\n}: ButtonProps) {\n if (disabled && href) href = undefined;\n if (!label && !children) return null;\n\n const stringLabel = typeof children === 'string' ? children : label;\n\n if (href) {\n return (\n <BaseButton\n whileHover=\"hover\"\n as={MotionAnchor}\n href={href}\n prefetch={prefetch}\n replaceHistory={replaceHistory}\n variant={variant}\n sx={{\n position: 'relative',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n width: '100%',\n px: icon ? 7 : 5,\n }}\n title={title !== stringLabel ? title : undefined}\n {...rest}\n >\n {label || children}\n <ButtonIcon icon={icon} disabled={disabled} submitting={submitting} />\n </BaseButton>\n );\n }\n\n return (\n <BaseButton\n as={motion.button}\n whileHover=\"hover\"\n aria-busy={submitting}\n aria-label={submitting ? stringLabel : undefined}\n disabled={disabled || submitting}\n sx={{\n position: 'relative',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n width: '100%',\n px: icon ? 7 : 5,\n '&:disabled': {\n cursor: 'default',\n },\n }}\n variant={variant}\n {...rest}\n >\n <span\n sx={{\n opacity: submitting ? 0 : undefined,\n }}\n >\n {label || children}\n </span>\n <ButtonIcon icon={icon} disabled={disabled} submitting={submitting} />\n {submitting ? <Spinner instant size=\"2em\" /> : null}\n </BaseButton>\n );\n}\n\nexport default Button;\n","import React from 'react';\nimport { Heading } from '@charlietango/ui';\n\nimport { useAuth } from '../../api/AuthProvider';\nimport { TextVariant } from '../../styles/typography';\nimport AccordionViewModel from '../../view-models/AccordionViewModel';\nimport Accordion from '../Accordion/Accordion';\n\ntype Props = AccordionViewModel & {\n className?: string;\n};\n\nfunction HowToSection({ title, items, className }: Props) {\n const { loginUrl } = useAuth();\n\n return (\n <section className={className}>\n <Heading variant={TextVariant.H3} sx={{ mb: [6, 7, 6] }}>\n {title}\n </Heading>\n {items && (\n <Accordion\n items={items}\n interpolationParams={{\n loginUrl,\n }}\n />\n )}\n </section>\n );\n}\n\nexport default HowToSection;\n","import React, { useEffect, useState } from 'react';\nimport { Text } from '@charlietango/ui';\nimport useId from '@charlietango/use-id';\nimport useInteraction from '@charlietango/use-interaction';\nimport { rem } from 'polished';\nimport {\n Accordion as ReactAccordion,\n AccordionItem as ReactAccordionItem,\n AccordionItemButton as ReactAccordionItemButton,\n AccordionItemHeading as ReactAccordionItemHeading,\n AccordionItemPanel as ReactAccordionItemPanel,\n} from 'react-accessible-accordion';\n\nimport { Colors } from '../../styles/colors';\nimport { FontWeight, TextVariant } from '../../styles/typography';\nimport {\n motion,\n useReducedMotion,\n useSpring,\n useTransform,\n} from '../../utils/motion';\nimport TextBlockViewModel from '../../view-models/TextBlockViewModel';\nimport Indicator from '../Indicator/Indicator';\nimport RichText from '../RichText/RichText';\n\nexport enum AccordionOrderTypes {\n number = 'number',\n bullet = 'bullet',\n none = 'none',\n}\n\nexport type AccordionProps = {\n items?: TextBlockViewModel[];\n orderType?: AccordionOrderTypes;\n indicator?: boolean;\n boldHeader?: boolean;\n background?: string | null;\n interpolationParams?: Record<string, React.ReactNode>;\n};\n\ntype AccordionItemProps = {\n accUuid: string[];\n item: TextBlockViewModel;\n orderType: AccordionOrderTypes;\n index: number;\n indicator: boolean;\n boldHeader?: boolean;\n interpolationParams?: Record<string, React.ReactNode>;\n};\n\nfunction AccordionArrow({ isOpen }: { isOpen: boolean }) {\n const yOffset = useSpring(0, { damping: 25, stiffness: 200 });\n\n // Generate the SVG path we need to draw the arrow. It's transformed whenever the scale value updates,\n // causing it to move the 3 points in the arrow on the Y axis.\n const d = useTransform(\n yOffset,\n (value) => `M0 ${value} L6 ${5 - value} L12 ${value}`,\n );\n\n useEffect(() => {\n if (isOpen) yOffset.set(5);\n else yOffset.set(0);\n }, [isOpen, yOffset]);\n\n return (\n <div\n aria-hidden=\"true\"\n css={{\n width: rem(12),\n lineHeight: 1.6,\n }}\n >\n <motion.svg focusable={false} width=\"14\" height=\"7\" viewBox=\"-1 -1 14 7\">\n <motion.path d={d} stroke=\"currentColor\" strokeWidth=\"2\" fill=\"none\" />\n </motion.svg>\n </div>\n );\n}\n\nfunction AccordionItem({\n accUuid,\n item,\n orderType,\n index,\n indicator,\n boldHeader,\n interpolationParams,\n}: AccordionItemProps) {\n const shouldReduceMotion = useReducedMotion();\n const [ref, { hover, focusVisible }] = useInteraction();\n const accordionId = useId('accordion');\n const isOpen = !!(accordionId && accUuid.includes(accordionId));\n\n return (\n <div ref={ref} sx={{ position: 'relative' }}>\n {indicator && <Indicator active={isOpen || focusVisible || hover} />}\n <ReactAccordionItem\n sx={{\n boxShadow: '0 1px 0 0 #eee, inset 0 1px 0 0 #eee',\n display: 'flex',\n flexDirection: 'row',\n flexWrap: 'wrap',\n }}\n uuid={accordionId}\n >\n <div sx={{ width: '100%' }}>\n <ReactAccordionItemHeading>\n <ReactAccordionItemButton\n sx={{\n py: boldHeader ? 7 : 4,\n pl:\n orderType === AccordionOrderTypes.none && !indicator ? 0 : 6,\n pr: 5,\n userSelect: 'none',\n flexGrow: 1,\n display: 'flex',\n }}\n >\n {orderType && orderType !== AccordionOrderTypes.none && (\n <Text\n variant={TextVariant.Paragraph}\n as=\"span\"\n sx={{\n width: rem(20),\n mr: 4,\n position: 'absolute',\n }}\n >\n {orderType === AccordionOrderTypes.number && `${index + 1}.`}\n {orderType === AccordionOrderTypes.bullet &&\n String.fromCharCode(8226)}\n </Text>\n )}\n <Text\n variant={TextVariant.Paragraph}\n as=\"span\"\n sx={{\n pl: orderType === AccordionOrderTypes.none ? 0 : 5,\n flexGrow: 2,\n maxWidth: '100%',\n fontWeight: boldHeader ? FontWeight.Medium : undefined,\n }}\n >\n {item.title}\n </Text>\n <AccordionArrow isOpen={isOpen} />\n </ReactAccordionItemButton>\n </ReactAccordionItemHeading>\n <ReactAccordionItemPanel\n sx={{\n pl: orderType === AccordionOrderTypes.none ? 0 : 5,\n pr: 5,\n display: 'block',\n }}\n >\n <motion.div\n initial={{ height: 0, opacity: 0, y: -20, display: 'none' }}\n css={{ overflow: 'hidden' }}\n animate={{\n height: isOpen ? 'auto' : '0px',\n opacity: isOpen ? 1 : 0,\n y: isOpen ? 0 : -20,\n display: 'block',\n transitionEnd: {\n display: isOpen ? 'block' : 'none',\n },\n }}\n transition={\n shouldReduceMotion\n ? { duration: 0 }\n : { damping: 25, stiffness: 250 }\n }\n >\n <RichText\n sx={{\n pt: boldHeader ? 0 : 2,\n pb: 4,\n ml: orderType === AccordionOrderTypes.none ? 0 : 6,\n mr: 3,\n maxWidth:\n orderType === AccordionOrderTypes.none\n ? rem(490)\n : rem(470),\n }}\n headingsOffset={2}\n variant={TextVariant.Paragraph}\n params={interpolationParams}\n >\n {item.text}\n </RichText>\n </motion.div>\n </ReactAccordionItemPanel>\n </div>\n </ReactAccordionItem>\n </div>\n );\n}\n\nfunction Accordion({\n items,\n orderType = AccordionOrderTypes.number,\n indicator = true,\n boldHeader = false,\n background = Colors.PureWhite,\n interpolationParams,\n}: AccordionProps) {\n const [accUuid, setAccUuid] = useState<Array<string>>([]);\n const callbackAcc = (varr: string[]) => {\n setAccUuid(varr);\n };\n return items && items.length > 0 ? (\n <ReactAccordion\n sx={{ backgroundColor: background ? Colors.PureWhite : 'none' }}\n allowZeroExpanded\n allowMultipleExpanded\n onChange={callbackAcc}\n >\n {items.map((item, index) => (\n <AccordionItem\n accUuid={accUuid}\n item={item}\n orderType={orderType}\n index={index}\n key={index}\n indicator={indicator}\n boldHeader={boldHeader}\n interpolationParams={interpolationParams}\n />\n ))}\n </ReactAccordion>\n ) : null;\n}\n\nexport default Accordion;\n","import React from 'react';\n\nimport { Colors } from '../../styles/colors';\nimport { motion, useReducedMotion } from '../../utils/motion';\n\nexport type IndicatorProps = { active: boolean };\n\nfunction Indicator({ active }: IndicatorProps) {\n const shouldReduceMotion = useReducedMotion();\n return (\n <div\n sx={{\n position: 'absolute',\n width: '2px',\n height: '100%',\n userSelect: 'none',\n backgroundColor: Colors.Primary,\n }}\n >\n <motion.div\n initial={{\n scaleY: 0,\n }}\n animate={{\n scaleY: active ? 1 : 0,\n }}\n transition={{ duration: shouldReduceMotion ? 0 : 0.2 }}\n sx={{\n width: '100%',\n height: '100%',\n transformOrigin: '100% 0%',\n backgroundColor: Colors.Black,\n }}\n />\n </div>\n );\n}\n\nexport default Indicator;\n"],"sourceRoot":""}