@fremtind/jokul 1.4.0 → 1.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/build-stats.html +1 -1
- package/build/cjs/components/button/Button.cjs.map +1 -1
- package/build/cjs/components/button/Button.d.cts +12 -0
- package/build/cjs/components/button/types.cjs.map +1 -1
- package/build/cjs/components/button/types.d.cts +1 -1
- package/build/cjs/components/card/CardImage.cjs.map +1 -1
- package/build/cjs/components/card/CardImage.d.cts +2 -1
- package/build/cjs/components/cookie-consent/CookieConsent.cjs +1 -1
- package/build/cjs/components/cookie-consent/CookieConsent.cjs.map +1 -1
- package/build/cjs/components/feedback/questions/SmileyQuestion.cjs +1 -1
- package/build/cjs/components/feedback/questions/SmileyQuestion.cjs.map +1 -1
- package/build/cjs/components/icon-button/IconButton.cjs.map +1 -1
- package/build/cjs/components/icon-button/IconButton.d.cts +3 -0
- package/build/cjs/core/tokens/style-dictionary/build.cjs +2 -0
- package/build/cjs/core/tokens/style-dictionary/build.cjs.map +1 -0
- package/build/cjs/core/tokens/style-dictionary/build.d.cts +0 -0
- package/build/cjs/core/tokens/style-dictionary/config.cjs +2 -0
- package/build/cjs/core/tokens/style-dictionary/config.cjs.map +1 -0
- package/build/cjs/core/tokens/style-dictionary/config.d.cts +4 -0
- package/build/cjs/core/tokens/style-dictionary/filters/index.cjs +2 -0
- package/build/cjs/core/tokens/style-dictionary/filters/index.cjs.map +1 -0
- package/build/cjs/core/tokens/style-dictionary/filters/index.d.cts +3 -0
- package/build/cjs/core/tokens/style-dictionary/formats/css-dynamic-color-variables.cjs +2 -0
- package/build/cjs/core/tokens/style-dictionary/formats/css-dynamic-color-variables.cjs.map +1 -0
- package/build/cjs/core/tokens/style-dictionary/formats/css-dynamic-color-variables.d.cts +3 -0
- package/build/cjs/core/tokens/style-dictionary/formats/css-theme-variables.cjs +2 -0
- package/build/cjs/core/tokens/style-dictionary/formats/css-theme-variables.cjs.map +1 -0
- package/build/cjs/core/tokens/style-dictionary/formats/css-theme-variables.d.cts +3 -0
- package/build/cjs/core/tokens/style-dictionary/formats/index.cjs +2 -0
- package/build/cjs/core/tokens/style-dictionary/formats/index.cjs.map +1 -0
- package/build/cjs/core/tokens/style-dictionary/formats/index.d.cts +6 -0
- package/build/cjs/core/tokens/style-dictionary/formats/javascript-esm.cjs +2 -0
- package/build/cjs/core/tokens/style-dictionary/formats/javascript-esm.cjs.map +1 -0
- package/build/cjs/core/tokens/style-dictionary/formats/javascript-esm.d.cts +3 -0
- package/build/cjs/core/tokens/style-dictionary/formats/scss-theme-variables.cjs +2 -0
- package/build/cjs/core/tokens/style-dictionary/formats/scss-theme-variables.cjs.map +1 -0
- package/build/cjs/core/tokens/style-dictionary/formats/scss-theme-variables.d.cts +3 -0
- package/build/cjs/core/tokens/style-dictionary/formats/tailwindcss-colors.cjs +2 -0
- package/build/cjs/core/tokens/style-dictionary/formats/tailwindcss-colors.cjs.map +1 -0
- package/build/cjs/core/tokens/style-dictionary/formats/tailwindcss-colors.d.cts +3 -0
- package/build/cjs/core/tokens/style-dictionary/register.cjs +2 -0
- package/build/cjs/core/tokens/style-dictionary/register.cjs.map +1 -0
- package/build/cjs/core/tokens/style-dictionary/register.d.cts +1 -0
- package/build/cjs/core/tokens/style-dictionary/transforms/index.cjs +2 -0
- package/build/cjs/core/tokens/style-dictionary/transforms/index.cjs.map +1 -0
- package/build/cjs/core/tokens/style-dictionary/transforms/index.d.cts +2 -0
- package/build/cjs/core/tokens/style-dictionary/transforms/strip-light-dark.cjs +2 -0
- package/build/cjs/core/tokens/style-dictionary/transforms/strip-light-dark.cjs.map +1 -0
- package/build/cjs/core/tokens/style-dictionary/transforms/strip-light-dark.d.cts +3 -0
- package/build/cjs/core/tokens.cjs +1 -1
- package/build/cjs/core/tokens.cjs.map +1 -1
- package/build/cjs/core/tokens.d.cts +15 -52
- package/build/cjs/tailwind/colors.cjs.map +1 -1
- package/build/cjs/tailwind/colors.d.cts +1 -2
- package/build/es/components/button/Button.d.ts +12 -0
- package/build/es/components/button/Button.js.map +1 -1
- package/build/es/components/button/types.d.ts +1 -1
- package/build/es/components/button/types.js.map +1 -1
- package/build/es/components/card/CardImage.d.ts +2 -1
- package/build/es/components/card/CardImage.js.map +1 -1
- package/build/es/components/cookie-consent/CookieConsent.js +1 -1
- package/build/es/components/cookie-consent/CookieConsent.js.map +1 -1
- package/build/es/components/feedback/questions/SmileyQuestion.js +1 -1
- package/build/es/components/feedback/questions/SmileyQuestion.js.map +1 -1
- package/build/es/components/icon-button/IconButton.d.ts +3 -0
- package/build/es/components/icon-button/IconButton.js.map +1 -1
- package/build/es/core/tokens/style-dictionary/build.d.ts +0 -0
- package/build/es/core/tokens/style-dictionary/build.js +2 -0
- package/build/es/core/tokens/style-dictionary/build.js.map +1 -0
- package/build/es/core/tokens/style-dictionary/config.d.ts +4 -0
- package/build/es/core/tokens/style-dictionary/config.js +2 -0
- package/build/es/core/tokens/style-dictionary/config.js.map +1 -0
- package/build/es/core/tokens/style-dictionary/filters/index.d.ts +3 -0
- package/build/es/core/tokens/style-dictionary/filters/index.js +2 -0
- package/build/es/core/tokens/style-dictionary/filters/index.js.map +1 -0
- package/build/es/core/tokens/style-dictionary/formats/css-dynamic-color-variables.d.ts +3 -0
- package/build/es/core/tokens/style-dictionary/formats/css-dynamic-color-variables.js +2 -0
- package/build/es/core/tokens/style-dictionary/formats/css-dynamic-color-variables.js.map +1 -0
- package/build/es/core/tokens/style-dictionary/formats/css-theme-variables.d.ts +3 -0
- package/build/es/core/tokens/style-dictionary/formats/css-theme-variables.js +2 -0
- package/build/es/core/tokens/style-dictionary/formats/css-theme-variables.js.map +1 -0
- package/build/es/core/tokens/style-dictionary/formats/index.d.ts +6 -0
- package/build/es/core/tokens/style-dictionary/formats/index.js +2 -0
- package/build/es/core/tokens/style-dictionary/formats/index.js.map +1 -0
- package/build/es/core/tokens/style-dictionary/formats/javascript-esm.d.ts +3 -0
- package/build/es/core/tokens/style-dictionary/formats/javascript-esm.js +2 -0
- package/build/es/core/tokens/style-dictionary/formats/javascript-esm.js.map +1 -0
- package/build/es/core/tokens/style-dictionary/formats/scss-theme-variables.d.ts +3 -0
- package/build/es/core/tokens/style-dictionary/formats/scss-theme-variables.js +2 -0
- package/build/es/core/tokens/style-dictionary/formats/scss-theme-variables.js.map +1 -0
- package/build/es/core/tokens/style-dictionary/formats/tailwindcss-colors.d.ts +3 -0
- package/build/es/core/tokens/style-dictionary/formats/tailwindcss-colors.js +2 -0
- package/build/es/core/tokens/style-dictionary/formats/tailwindcss-colors.js.map +1 -0
- package/build/es/core/tokens/style-dictionary/register.d.ts +1 -0
- package/build/es/core/tokens/style-dictionary/register.js +2 -0
- package/build/es/core/tokens/style-dictionary/register.js.map +1 -0
- package/build/es/core/tokens/style-dictionary/transforms/index.d.ts +2 -0
- package/build/es/core/tokens/style-dictionary/transforms/index.js +2 -0
- package/build/es/core/tokens/style-dictionary/transforms/index.js.map +1 -0
- package/build/es/core/tokens/style-dictionary/transforms/strip-light-dark.d.ts +3 -0
- package/build/es/core/tokens/style-dictionary/transforms/strip-light-dark.js +2 -0
- package/build/es/core/tokens/style-dictionary/transforms/strip-light-dark.js.map +1 -0
- package/build/es/core/tokens.d.ts +15 -52
- package/build/es/core/tokens.js +1 -1
- package/build/es/core/tokens.js.map +1 -1
- package/build/es/tailwind/colors.d.ts +1 -2
- package/build/es/tailwind/colors.js.map +1 -1
- package/package.json +3 -2
- package/styles/components/autosuggest/autosuggest.css +8 -6
- package/styles/components/breadcrumb/breadcrumb.css +4 -2
- package/styles/components/button/button.css +7 -2
- package/styles/components/button/button.min.css +1 -1
- package/styles/components/button/button.scss +4 -0
- package/styles/components/card/card.css +8 -5
- package/styles/components/card/card.min.css +1 -1
- package/styles/components/card/card.scss +6 -4
- package/styles/components/checkbox/checkbox.css +181 -179
- package/styles/components/checkbox/checkbox.min.css +1 -1
- package/styles/components/checkbox/checkbox.scss +189 -180
- package/styles/components/checkbox-panel/checkbox-panel.css +60 -54
- package/styles/components/checkbox-panel/checkbox-panel.min.css +3 -1
- package/styles/components/checkbox-panel/checkbox-panel.scss +58 -54
- package/styles/components/checkbox-panel/development/styles.css +4 -2
- package/styles/components/chip/chip.css +4 -2
- package/styles/components/combobox/combobox.css +6 -4
- package/styles/components/cookie-consent/cookie-consent.css +4 -2
- package/styles/components/countdown/countdown.css +34 -31
- package/styles/components/countdown/countdown.min.css +1 -1
- package/styles/components/countdown/countdown.scss +14 -12
- package/styles/components/datepicker/datepicker.css +8 -6
- package/styles/components/description-list/description-list.css +38 -34
- package/styles/components/description-list/description-list.min.css +1 -1
- package/styles/components/description-list/description-list.scss +18 -16
- package/styles/components/expander/expandable.css +4 -2
- package/styles/components/feedback/feedback.css +6 -4
- package/styles/components/feedback/feedback.min.css +1 -1
- package/styles/components/file/file.css +4 -2
- package/styles/components/file-input/file-input.css +217 -215
- package/styles/components/file-input/file-input.min.css +1 -1
- package/styles/components/help/help.css +4 -14
- package/styles/components/help/help.min.css +1 -1
- package/styles/components/help/help.scss +1 -16
- package/styles/components/icon/icon.css +128 -130
- package/styles/components/icon/icon.min.css +1 -1
- package/styles/components/icon/icon.scss +96 -92
- package/styles/components/icon-button/icon-button.css +51 -47
- package/styles/components/icon-button/icon-button.min.css +1 -1
- package/styles/components/icon-button/icon-button.scss +26 -24
- package/styles/components/image/image.css +31 -27
- package/styles/components/image/image.min.css +1 -1
- package/styles/components/image/image.scss +27 -25
- package/styles/components/input-group/input-group.css +6 -4
- package/styles/components/input-group/input-group.min.css +1 -1
- package/styles/components/link/link.css +4 -2
- package/styles/components/link-list/link-list.css +4 -2
- package/styles/components/list/list.css +66 -62
- package/styles/components/list/list.min.css +1 -1
- package/styles/components/list/list.scss +69 -67
- package/styles/components/loader/loader.css +98 -95
- package/styles/components/loader/loader.min.css +1 -1
- package/styles/components/loader/loader.scss +91 -88
- package/styles/components/loader/skeleton-loader.css +119 -121
- package/styles/components/loader/skeleton-loader.min.css +1 -1
- package/styles/components/loader/skeleton-loader.scss +128 -126
- package/styles/components/logo/logo.css +83 -83
- package/styles/components/logo/logo.min.css +1 -1
- package/styles/components/logo/logo.scss +71 -67
- package/styles/components/menu/_menu-divider.scss +7 -5
- package/styles/components/menu/_menu-item.scss +55 -53
- package/styles/components/menu/menu.css +121 -119
- package/styles/components/menu/menu.min.css +1 -1
- package/styles/components/menu/menu.scss +28 -24
- package/styles/components/message/message.css +6 -4
- package/styles/components/message/message.min.css +1 -1
- package/styles/components/modal/modal.css +104 -108
- package/styles/components/modal/modal.min.css +1 -1
- package/styles/components/modal/modal.scss +82 -79
- package/styles/components/nav-link/nav-link.css +66 -62
- package/styles/components/nav-link/nav-link.min.css +1 -1
- package/styles/components/nav-link/nav-link.scss +48 -46
- package/styles/components/pagination/development/styles.css +4 -2
- package/styles/components/pagination/pagination.css +4 -2
- package/styles/components/popover/popover.css +23 -21
- package/styles/components/popover/popover.min.css +1 -1
- package/styles/components/popover/popover.scss +14 -12
- package/styles/components/progress-bar/progress-bar.css +35 -32
- package/styles/components/progress-bar/progress-bar.min.css +1 -1
- package/styles/components/progress-bar/progress-bar.scss +16 -14
- package/styles/components/radio-button/radio-button.css +6 -4
- package/styles/components/radio-button/radio-button.min.css +1 -1
- package/styles/components/radio-panel/development/styles.css +4 -2
- package/styles/components/radio-panel/radio-panel.css +60 -56
- package/styles/components/radio-panel/radio-panel.min.css +1 -1
- package/styles/components/radio-panel/radio-panel.scss +55 -54
- package/styles/components/segmented-control/segmented-control.css +133 -136
- package/styles/components/segmented-control/segmented-control.min.css +1 -1
- package/styles/components/segmented-control/segmented-control.scss +1 -1
- package/styles/components/select/select.css +4 -2
- package/styles/components/summary-table/development/summary-table-example.css +4 -2
- package/styles/components/summary-table/summary-table.css +56 -54
- package/styles/components/summary-table/summary-table.min.css +1 -1
- package/styles/components/summary-table/summary-table.scss +44 -42
- package/styles/components/system-message/system-message.css +6 -4
- package/styles/components/system-message/system-message.min.css +1 -1
- package/styles/components/table/table.css +4 -2
- package/styles/components/tabs/tabs.css +125 -128
- package/styles/components/tabs/tabs.min.css +1 -1
- package/styles/components/tabs/tabs.scss +90 -93
- package/styles/components/tag/tag.css +4 -2
- package/styles/components/text-area/text-area.css +4 -2
- package/styles/components/text-input/text-input.css +4 -2
- package/styles/components/toast/toast.css +8 -6
- package/styles/components/toast/toast.min.css +1 -1
- package/styles/components/toggle-switch/toggle-switch.css +14 -12
- package/styles/components/tooltip/tooltip.css +4 -2
- package/styles/core/_layers.scss +3 -0
- package/styles/core/core.css +1568 -1434
- package/styles/core/core.min.css +2 -1
- package/styles/core/core.scss +5 -76
- package/styles/core/global/_base-class.scss +27 -0
- package/styles/core/global/_index.scss +2 -0
- package/styles/core/global/_top-layer.scss +20 -0
- package/styles/core/jkl/_index.scss +1 -1
- package/styles/core/jkl/_legacy-tokens.scss +152 -5
- package/styles/core/jkl/_tokens.scss +36 -152
- package/styles/core/jkl/_typography.scss +1 -0
- package/styles/core/resets/_index.scss +2 -0
- package/styles/core/resets/_normalize.scss +251 -0
- package/styles/core/resets/_reset.scss +68 -0
- package/styles/core/theme/_color-tokens.scss +73 -0
- package/styles/core/theme/_dynamic-spacing.scss +55 -0
- package/styles/core/theme/_index.scss +8 -0
- package/styles/core/theme/_legacy-color-tokens.scss +81 -0
- package/styles/core/theme/_legacy-tokens.scss +150 -0
- package/styles/core/theme/_old-vars.scss +30 -0
- package/styles/core/theme/_spacing-tokens.scss +30 -0
- package/styles/core/theme/_tokens.scss +30 -0
- package/styles/core/theme/_typography.scss +27 -0
- package/styles/core/utility/_headings.scss +31 -0
- package/styles/core/utility/_index.scss +4 -0
- package/styles/core/utility/_paragraphs.scss +18 -0
- package/styles/core/utility/_screen-reader.scss +11 -0
- package/styles/core/utility/_spacing.scss +49 -0
- package/styles/shared/input/shared-input-styles.css +4 -2
- package/styles/shared/input-panel/shared.css +4 -2
- package/styles/shared/track/track.css +4 -2
- package/styles/styles.css +1448 -1471
- package/styles/styles.min.css +3 -1
- package/styles/core/_color-tokens.scss +0 -78
- package/styles/core/_headings.scss +0 -29
- package/styles/core/_index.scss +0 -9
- package/styles/core/_legacy-tokens.scss +0 -38
- package/styles/core/_normalize.scss +0 -250
- package/styles/core/_paragraphs.scss +0 -16
- package/styles/core/_reset.scss +0 -66
- package/styles/core/_screen-reader.scss +0 -9
- package/styles/core/_spacing.scss +0 -86
- package/styles/core/_tokens.scss +0 -129
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Button.cjs","sources":["../../../../src/components/button/Button.tsx"],"sourcesContent":["import cn from \"clsx\";\nimport React, { type ButtonHTMLAttributes } from \"react\";\nimport { useAriaLiveRegion } from \"../../hooks/useAriaLiveRegion/useAriaLiveRegion.js\";\nimport type { PolymorphicRef } from \"../../utilities/polymorphism/polymorphism.js\";\nimport { Loader } from \"../loader/Loader.js\";\nimport type { ButtonComponent, ButtonProps } from \"./types.js\";\n\nexport const Button = React.forwardRef(function Button<\n ElementType extends React.ElementType = \"button\",\n>(props: ButtonProps<ElementType>, ref?: PolymorphicRef<ElementType>) {\n const {\n as = \"button\",\n children,\n className,\n density,\n onTouchStart,\n onAnimationEnd,\n loader,\n icon,\n iconPosition = \"left\",\n iconLeft,\n iconRight,\n variant = \"secondary\",\n ...rest\n } = props;\n\n const Component = as;\n\n if (\n process.env.NODE_ENV !== \"production\" &&\n React.Children.count(children) === 0 &&\n !props[\"aria-label\"] &&\n !props[\"aria-labelledby\"] &&\n !props.title\n ) {\n console.warn(\n \"Når du lager en Button uten synlig tekst må du huske å gi den et navn med enten aria-label, aria-labelledby eller title\",\n );\n }\n\n const ariaLive = useAriaLiveRegion(loader?.showLoader);\n const showLoader = Boolean(children) && Boolean(loader?.showLoader);\n\n return (\n <Component\n {...ariaLive}\n data-loading={showLoader}\n data-density={density}\n className={cn(\"jkl-button\", `jkl-button--${variant}`, className)}\n disabled={as === \"button\" ? loader?.showLoader : undefined}\n {...rest}\n ref={ref}\n >\n <div className=\"jkl-button__label\">\n {iconLeft && iconLeft}\n {icon && iconPosition === \"left\" && icon}\n {children && (\n <span className=\"jkl-button__text\">{children}</span>\n )}\n {iconRight && iconRight}\n {icon && iconPosition === \"right\" && icon}\n </div>\n\n {children && (\n <Loader\n className=\"jkl-button__loader\"\n variant=\"medium\"\n textDescription={\n loader?.textDescription || \"Vennligst vent\"\n }\n aria-hidden={!loader?.showLoader}\n />\n )}\n </Component>\n );\n}) as ButtonComponent;\n\nexport function PrimaryButton<ElementType extends React.ElementType = \"button\">(\n props: Omit<ButtonProps<ElementType>, \"variant\" | \"onClick\" | \"as\"> &\n Pick<ButtonHTMLAttributes<HTMLButtonElement>, \"onClick\">,\n) {\n const buttonProps = {\n ...props,\n variant: \"primary\",\n } as ButtonProps<ElementType>;\n return <Button {...buttonProps} />;\n}\n\nexport function SecondaryButton<\n ElementType extends React.ElementType = \"button\",\n>(\n props: Omit<ButtonProps<ElementType>, \"variant\" | \"onClick\" | \"as\"> &\n Pick<ButtonHTMLAttributes<HTMLButtonElement>, \"onClick\">,\n) {\n const buttonProps = {\n ...props,\n variant: \"secondary\",\n } as ButtonProps<ElementType>;\n return <Button {...buttonProps} />;\n}\n\nexport function TertiaryButton<\n ElementType extends React.ElementType = \"button\",\n>(\n props: Omit<ButtonProps<ElementType>, \"variant\" | \"onClick\" | \"as\"> &\n Pick<ButtonHTMLAttributes<HTMLButtonElement>, \"onClick\">,\n) {\n const buttonProps = {\n ...props,\n variant: \"tertiary\",\n } as ButtonProps<ElementType>;\n return <Button {...buttonProps} />;\n}\n\nexport function GhostButton<ElementType extends React.ElementType = \"button\">(\n props: Omit<ButtonProps<ElementType>, \"variant\" | \"loader\">,\n) {\n const buttonProps = {\n ...props,\n variant: \"ghost\",\n } as ButtonProps<ElementType>;\n return <Button {...buttonProps} />;\n}\n"],"names":["Button","React","forwardRef","props","ref","as","children","className","density","onTouchStart","onAnimationEnd","loader","icon","iconPosition","iconLeft","iconRight","variant","rest","Component","process","env","NODE_ENV","Children","count","title","console","warn","ariaLive","useAriaLiveRegion","showLoader","jsxs","cn","clsx","disabled","jsx","Loader","textDescription","buttonProps"],"mappings":"mRAOaA,EAASC,EAAMC,YAAW,SAErCC,EAAiCC,GACzB,MACFC,GAAAA,EAAK,SACLC,SAAAA,EACAC,UAAAA,EACAC,QAAAA,EACAC,aAAAA,EACAC,eAAAA,EACAC,OAAAA,EACAC,KAAAA,EACAC,aAAAA,EAAe,OACfC,SAAAA,EACAC,UAAAA,EACAC,QAAAA,EAAU,eACPC,GACHd,EAEEe,EAAYb,EAGW,eAAzBc,QAAQC,IAAIC,UACuB,IAAnCpB,EAAMqB,SAASC,MAAMjB,KACpBH,EAAM,gBACNA,EAAM,qBACNA,EAAMqB,OAECC,QAAAC,KACJ,2HAIF,MAAAC,EAAWC,EAAAA,kBAAkBjB,GAAQkB,YACrCA,IAAqBvB,KAAqBK,GAAQkB,WAGpD,OAAAC,EAAAA,KAACZ,EAAA,IACOS,EACJ,eAAcE,EACd,eAAcrB,EACdD,UAAWwB,EAAGC,KAAA,aAAc,eAAehB,IAAWT,GACtD0B,SAAiB,WAAP5B,EAAkBM,GAAQkB,gBAAa,KAC7CZ,EACJb,IAAAA,EAEAE,SAAA,CAACwB,EAAAA,KAAA,MAAA,CAAIvB,UAAU,oBACVD,SAAA,CAAYQ,GAAAA,EACZF,GAAyB,SAAjBC,GAA2BD,EACnCN,GACG4B,EAAAA,IAAC,OAAK,CAAA3B,UAAU,mBAAoBD,SAAAA,IAEvCS,GAAaA,EACbH,GAAyB,UAAjBC,GAA4BD,KAGxCN,GACG4B,EAAAA,IAACC,EAAAA,OAAA,CACG5B,UAAU,qBACVS,QAAQ,SACRoB,gBACIzB,GAAQyB,iBAAmB,iBAE/B,eAAczB,GAAQkB,eAK1C,
|
|
1
|
+
{"version":3,"file":"Button.cjs","sources":["../../../../src/components/button/Button.tsx"],"sourcesContent":["import cn from \"clsx\";\nimport React, { type ButtonHTMLAttributes } from \"react\";\nimport { useAriaLiveRegion } from \"../../hooks/useAriaLiveRegion/useAriaLiveRegion.js\";\nimport type { PolymorphicRef } from \"../../utilities/polymorphism/polymorphism.js\";\nimport { Loader } from \"../loader/Loader.js\";\nimport type { ButtonComponent, ButtonProps } from \"./types.js\";\n\nexport const Button = React.forwardRef(function Button<\n ElementType extends React.ElementType = \"button\",\n>(props: ButtonProps<ElementType>, ref?: PolymorphicRef<ElementType>) {\n const {\n as = \"button\",\n children,\n className,\n density,\n onTouchStart,\n onAnimationEnd,\n loader,\n icon,\n iconPosition = \"left\",\n iconLeft,\n iconRight,\n variant = \"secondary\",\n ...rest\n } = props;\n\n const Component = as;\n\n if (\n process.env.NODE_ENV !== \"production\" &&\n React.Children.count(children) === 0 &&\n !props[\"aria-label\"] &&\n !props[\"aria-labelledby\"] &&\n !props.title\n ) {\n console.warn(\n \"Når du lager en Button uten synlig tekst må du huske å gi den et navn med enten aria-label, aria-labelledby eller title\",\n );\n }\n\n const ariaLive = useAriaLiveRegion(loader?.showLoader);\n const showLoader = Boolean(children) && Boolean(loader?.showLoader);\n\n return (\n <Component\n {...ariaLive}\n data-loading={showLoader}\n data-density={density}\n className={cn(\"jkl-button\", `jkl-button--${variant}`, className)}\n disabled={as === \"button\" ? loader?.showLoader : undefined}\n {...rest}\n ref={ref}\n >\n <div className=\"jkl-button__label\">\n {iconLeft && iconLeft}\n {icon && iconPosition === \"left\" && icon}\n {children && (\n <span className=\"jkl-button__text\">{children}</span>\n )}\n {iconRight && iconRight}\n {icon && iconPosition === \"right\" && icon}\n </div>\n\n {children && (\n <Loader\n className=\"jkl-button__loader\"\n variant=\"medium\"\n textDescription={\n loader?.textDescription || \"Vennligst vent\"\n }\n aria-hidden={!loader?.showLoader}\n />\n )}\n </Component>\n );\n}) as ButtonComponent;\n\n/**\n * @deprecated bruk heller {@link Button} med ghost-varianten\n */\nexport function PrimaryButton<ElementType extends React.ElementType = \"button\">(\n props: Omit<ButtonProps<ElementType>, \"variant\" | \"onClick\" | \"as\"> &\n Pick<ButtonHTMLAttributes<HTMLButtonElement>, \"onClick\">,\n) {\n const buttonProps = {\n ...props,\n variant: \"primary\",\n } as ButtonProps<ElementType>;\n return <Button {...buttonProps} />;\n}\n\n/**\n * @deprecated bruk heller {@link Button} med ghost-varianten\n */\nexport function SecondaryButton<\n ElementType extends React.ElementType = \"button\",\n>(\n props: Omit<ButtonProps<ElementType>, \"variant\" | \"onClick\" | \"as\"> &\n Pick<ButtonHTMLAttributes<HTMLButtonElement>, \"onClick\">,\n) {\n const buttonProps = {\n ...props,\n variant: \"secondary\",\n } as ButtonProps<ElementType>;\n return <Button {...buttonProps} />;\n}\n\n/**\n * @deprecated bruk heller {@link Button} med ghost-varianten\n */\nexport function TertiaryButton<\n ElementType extends React.ElementType = \"button\",\n>(\n props: Omit<ButtonProps<ElementType>, \"variant\" | \"onClick\" | \"as\"> &\n Pick<ButtonHTMLAttributes<HTMLButtonElement>, \"onClick\">,\n) {\n const buttonProps = {\n ...props,\n variant: \"tertiary\",\n } as ButtonProps<ElementType>;\n return <Button {...buttonProps} />;\n}\n\n/**\n * @deprecated bruk heller {@link Button} med ghost-varianten\n */\nexport function GhostButton<ElementType extends React.ElementType = \"button\">(\n props: Omit<ButtonProps<ElementType>, \"variant\" | \"loader\">,\n) {\n const buttonProps = {\n ...props,\n variant: \"ghost\",\n } as ButtonProps<ElementType>;\n return <Button {...buttonProps} />;\n}\n"],"names":["Button","React","forwardRef","props","ref","as","children","className","density","onTouchStart","onAnimationEnd","loader","icon","iconPosition","iconLeft","iconRight","variant","rest","Component","process","env","NODE_ENV","Children","count","title","console","warn","ariaLive","useAriaLiveRegion","showLoader","jsxs","cn","clsx","disabled","jsx","Loader","textDescription","buttonProps"],"mappings":"mRAOaA,EAASC,EAAMC,YAAW,SAErCC,EAAiCC,GACzB,MACFC,GAAAA,EAAK,SACLC,SAAAA,EACAC,UAAAA,EACAC,QAAAA,EACAC,aAAAA,EACAC,eAAAA,EACAC,OAAAA,EACAC,KAAAA,EACAC,aAAAA,EAAe,OACfC,SAAAA,EACAC,UAAAA,EACAC,QAAAA,EAAU,eACPC,GACHd,EAEEe,EAAYb,EAGW,eAAzBc,QAAQC,IAAIC,UACuB,IAAnCpB,EAAMqB,SAASC,MAAMjB,KACpBH,EAAM,gBACNA,EAAM,qBACNA,EAAMqB,OAECC,QAAAC,KACJ,2HAIF,MAAAC,EAAWC,EAAAA,kBAAkBjB,GAAQkB,YACrCA,IAAqBvB,KAAqBK,GAAQkB,WAGpD,OAAAC,EAAAA,KAACZ,EAAA,IACOS,EACJ,eAAcE,EACd,eAAcrB,EACdD,UAAWwB,EAAGC,KAAA,aAAc,eAAehB,IAAWT,GACtD0B,SAAiB,WAAP5B,EAAkBM,GAAQkB,gBAAa,KAC7CZ,EACJb,IAAAA,EAEAE,SAAA,CAACwB,EAAAA,KAAA,MAAA,CAAIvB,UAAU,oBACVD,SAAA,CAAYQ,GAAAA,EACZF,GAAyB,SAAjBC,GAA2BD,EACnCN,GACG4B,EAAAA,IAAC,OAAK,CAAA3B,UAAU,mBAAoBD,SAAAA,IAEvCS,GAAaA,EACbH,GAAyB,UAAjBC,GAA4BD,KAGxCN,GACG4B,EAAAA,IAACC,EAAAA,OAAA,CACG5B,UAAU,qBACVS,QAAQ,SACRoB,gBACIzB,GAAQyB,iBAAmB,iBAE/B,eAAczB,GAAQkB,eAK1C,yCAmDO,SACH1B,GAEA,MAAMkC,EAAc,IACblC,EACHa,QAAS,SAEN,OAAAkB,MAAClC,EAAQ,IAAGqC,GACvB,wBAtDO,SACHlC,GAGA,MAAMkC,EAAc,IACblC,EACHa,QAAS,WAEN,OAAAkB,MAAClC,EAAQ,IAAGqC,GACvB,0BAKO,SAGHlC,GAGA,MAAMkC,EAAc,IACblC,EACHa,QAAS,aAEN,OAAAkB,MAAClC,EAAQ,IAAGqC,GACvB,yBAKO,SAGHlC,GAGA,MAAMkC,EAAc,IACblC,EACHa,QAAS,YAEN,OAAAkB,MAAClC,EAAQ,IAAGqC,GACvB"}
|
|
@@ -1,7 +1,19 @@
|
|
|
1
1
|
import { default as React, ButtonHTMLAttributes } from 'react';
|
|
2
2
|
import { ButtonComponent, ButtonProps } from './types.cjs';
|
|
3
3
|
export declare const Button: ButtonComponent;
|
|
4
|
+
/**
|
|
5
|
+
* @deprecated bruk heller {@link Button} med ghost-varianten
|
|
6
|
+
*/
|
|
4
7
|
export declare function PrimaryButton<ElementType extends React.ElementType = "button">(props: Omit<ButtonProps<ElementType>, "variant" | "onClick" | "as"> & Pick<ButtonHTMLAttributes<HTMLButtonElement>, "onClick">): React.JSX.Element;
|
|
8
|
+
/**
|
|
9
|
+
* @deprecated bruk heller {@link Button} med ghost-varianten
|
|
10
|
+
*/
|
|
5
11
|
export declare function SecondaryButton<ElementType extends React.ElementType = "button">(props: Omit<ButtonProps<ElementType>, "variant" | "onClick" | "as"> & Pick<ButtonHTMLAttributes<HTMLButtonElement>, "onClick">): React.JSX.Element;
|
|
12
|
+
/**
|
|
13
|
+
* @deprecated bruk heller {@link Button} med ghost-varianten
|
|
14
|
+
*/
|
|
6
15
|
export declare function TertiaryButton<ElementType extends React.ElementType = "button">(props: Omit<ButtonProps<ElementType>, "variant" | "onClick" | "as"> & Pick<ButtonHTMLAttributes<HTMLButtonElement>, "onClick">): React.JSX.Element;
|
|
16
|
+
/**
|
|
17
|
+
* @deprecated bruk heller {@link Button} med ghost-varianten
|
|
18
|
+
*/
|
|
7
19
|
export declare function GhostButton<ElementType extends React.ElementType = "button">(props: Omit<ButtonProps<ElementType>, "variant" | "loader">): React.JSX.Element;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.cjs","sources":["../../../../src/components/button/types.ts"],"sourcesContent":["import type { Density } from \"../../core/types.js\";\nimport type { PolymorphicPropsWithRef } from \"../../utilities/polymorphism/polymorphism.js\";\n\nexport const buttonVariants = [\n \"primary\",\n \"secondary\",\n \"tertiary\",\n \"ghost\",\n] as const;\nexport type ButtonVariant = (typeof buttonVariants)[number];\nexport type IconPosition = \"left\" | \"right\";\n\nexport type IconOptions =\n // Hvis ikke knappen har ikon, MÅ den ha children:\n | {\n iconPosition?: never;\n icon?: never;\n children: React.ReactNode;\n }\n | {\n /**\n * Plasseringen av ikonet\n * @default \"left\"\n */\n iconPosition?: IconPosition;\n /**\n * Hvilket ikon som skal vises i knappen\n */\n icon: React.ReactElement;\n };\n\ntype Props = {\n density?: Density;\n /**\n * Hvilken variant av knappen skal vises
|
|
1
|
+
{"version":3,"file":"types.cjs","sources":["../../../../src/components/button/types.ts"],"sourcesContent":["import type { Density } from \"../../core/types.js\";\nimport type { PolymorphicPropsWithRef } from \"../../utilities/polymorphism/polymorphism.js\";\n\nexport const buttonVariants = [\n \"primary\",\n \"secondary\",\n \"tertiary\",\n \"ghost\",\n] as const;\nexport type ButtonVariant = (typeof buttonVariants)[number];\nexport type IconPosition = \"left\" | \"right\";\n\nexport type IconOptions =\n // Hvis ikke knappen har ikon, MÅ den ha children:\n | {\n iconPosition?: never;\n icon?: never;\n children: React.ReactNode;\n }\n | {\n /**\n * Plasseringen av ikonet\n * @default \"left\"\n */\n iconPosition?: IconPosition;\n /**\n * Hvilket ikon som skal vises i knappen\n */\n icon: React.ReactElement;\n };\n\ntype Props = {\n density?: Density;\n /**\n * Hvilken variant av knappen skal vises. Tertiary er planlagt fjernet fordi den ligner for mye på en lenke.\n * @default \"secondary\"\n */\n variant?: ButtonVariant;\n className?: string;\n loader?: {\n showLoader: boolean;\n textDescription: string;\n };\n /**\n * @deprecated Bruk `icon` i kombinasjon med `iconPosition=\"left\"`\n */\n iconLeft?: React.ReactNode;\n /**\n * @deprecated Bruk `icon` i kombinasjon med `iconPosition=\"right\"`\n */\n iconRight?: React.ReactNode;\n} & IconOptions;\n\nexport type ButtonProps<ElementType extends React.ElementType> =\n PolymorphicPropsWithRef<ElementType, Props> & Props;\n\nexport type ButtonComponent = <\n ElementType extends React.ElementType = \"button\",\n>(\n props: ButtonProps<ElementType>,\n) => React.ReactElement | null;\n"],"names":[],"mappings":"uGAG8B,CAC1B,UACA,YACA,WACA"}
|
|
@@ -21,7 +21,7 @@ export type IconOptions = {
|
|
|
21
21
|
type Props = {
|
|
22
22
|
density?: Density;
|
|
23
23
|
/**
|
|
24
|
-
* Hvilken variant av knappen skal vises
|
|
24
|
+
* Hvilken variant av knappen skal vises. Tertiary er planlagt fjernet fordi den ligner for mye på en lenke.
|
|
25
25
|
* @default "secondary"
|
|
26
26
|
*/
|
|
27
27
|
variant?: ButtonVariant;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CardImage.cjs","sources":["../../../../src/components/card/CardImage.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React from \"react\";\nimport { SlotComponent } from \"../../utilities/polymorphism/SlotComponent.js\";\nimport type { AsChildProps } from \"../../utilities/polymorphism/as-child.js\";\nimport type {\n PolymorphicPropsWithRef,\n PolymorphicRef,\n} from \"../../utilities/polymorphism/polymorphism.js\";\n\nexport type CardImageProps<ElementType extends React.ElementType> =\n PolymorphicPropsWithRef<\n ElementType,\n {\n /**\n * Legger til riktig negativ margin avhengig av hvor i kortet bildet\n * skal plasseres. Margin justeres automatisk etter padding i kortet.\n * @default \"top\"\n */\n placement?: \"top\" | \"middle\" | \"bottom\";\n }\n >;\n\ntype CardImageComponent = <ElementType extends React.ElementType = \"img\">(\n props: CardImageProps<ElementType>,\n) => React.ReactElement | null;\n\n/**\n * Bildekomponent som kan brukes i `Card` for å sørge for at bildet\n * blør helt ut i kantene av kortet. Rendres normalt som et `<img>`-\n * element, men du kan overstyre dette med `as` dersom du f.eks. har\n * en egen komponent for å håndtere responsive bilder.\n */\nexport const CardImage = React.forwardRef(function CardImage<\n ElementType extends React.ElementType = \"img\",\n>(\n {\n as,\n asChild,\n className,\n placement = \"top\",\n ...imageProps\n }: CardImageProps<ElementType> & AsChildProps,\n ref?: PolymorphicRef<ElementType>,\n) {\n const Component = asChild ? SlotComponent : as || \"img\";\n\n return (\n <Component\n ref={ref}\n className={clsx(\n \"jkl-card-image\",\n `jkl-card-image--${placement}`,\n className,\n )}\n {...imageProps}\n />\n );\n}) as CardImageComponent;\n"],"names":["CardImage","React","forwardRef","as","asChild","className","placement","imageProps","ref","Component","SlotComponent","jsx","clsx"],"mappings":"
|
|
1
|
+
{"version":3,"file":"CardImage.cjs","sources":["../../../../src/components/card/CardImage.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React from \"react\";\nimport { SlotComponent } from \"../../utilities/polymorphism/SlotComponent.js\";\nimport type { AsChildProps } from \"../../utilities/polymorphism/as-child.js\";\nimport type {\n PolymorphicPropsWithRef,\n PolymorphicRef,\n} from \"../../utilities/polymorphism/polymorphism.js\";\n\nexport type CardImageProps<ElementType extends React.ElementType> =\n PolymorphicPropsWithRef<\n ElementType,\n {\n /**\n * Legger til riktig negativ margin avhengig av hvor i kortet bildet\n * skal plasseres. Margin justeres automatisk etter padding i kortet.\n * Velg \"full\" hvis bildet skal være eneste innhold i kortet.\n * @default \"top\"\n */\n placement?: \"top\" | \"middle\" | \"bottom\" | \"full\";\n }\n >;\n\ntype CardImageComponent = <ElementType extends React.ElementType = \"img\">(\n props: CardImageProps<ElementType>,\n) => React.ReactElement | null;\n\n/**\n * Bildekomponent som kan brukes i `Card` for å sørge for at bildet\n * blør helt ut i kantene av kortet. Rendres normalt som et `<img>`-\n * element, men du kan overstyre dette med `as` dersom du f.eks. har\n * en egen komponent for å håndtere responsive bilder.\n */\nexport const CardImage = React.forwardRef(function CardImage<\n ElementType extends React.ElementType = \"img\",\n>(\n {\n as,\n asChild,\n className,\n placement = \"top\",\n ...imageProps\n }: CardImageProps<ElementType> & AsChildProps,\n ref?: PolymorphicRef<ElementType>,\n) {\n const Component = asChild ? SlotComponent : as || \"img\";\n\n return (\n <Component\n ref={ref}\n className={clsx(\n \"jkl-card-image\",\n `jkl-card-image--${placement}`,\n className,\n )}\n {...imageProps}\n />\n );\n}) as CardImageComponent;\n"],"names":["CardImage","React","forwardRef","as","asChild","className","placement","imageProps","ref","Component","SlotComponent","jsx","clsx"],"mappings":"4OAiCaA,EAAYC,EAAMC,YAAW,UAIlCC,GAAAA,EACAC,QAAAA,EACAC,UAAAA,EACAC,UAAAA,EAAY,SACTC,GAEPC,GAEM,MAAAC,EAAYL,EAAUM,EAAAA,cAAgBP,GAAM,MAG9C,OAAAQ,EAAAA,IAACF,EAAA,CACGD,IAAAA,EACAH,UAAWO,EAAAA,KACP,iBACA,mBAAmBN,IACnBD,MAEAE,GAGhB"}
|
|
@@ -4,9 +4,10 @@ export type CardImageProps<ElementType extends React.ElementType> = PolymorphicP
|
|
|
4
4
|
/**
|
|
5
5
|
* Legger til riktig negativ margin avhengig av hvor i kortet bildet
|
|
6
6
|
* skal plasseres. Margin justeres automatisk etter padding i kortet.
|
|
7
|
+
* Velg "full" hvis bildet skal være eneste innhold i kortet.
|
|
7
8
|
* @default "top"
|
|
8
9
|
*/
|
|
9
|
-
placement?: "top" | "middle" | "bottom";
|
|
10
|
+
placement?: "top" | "middle" | "bottom" | "full";
|
|
10
11
|
}>;
|
|
11
12
|
type CardImageComponent = <ElementType extends React.ElementType = "img">(props: CardImageProps<ElementType>) => React.ReactElement | null;
|
|
12
13
|
/**
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),t=require("react"),n=require("react-dom"),o=require("../button/Button.cjs"),i=require("../modal/Modal.cjs"),s=require("../modal/useModal.cjs"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),t=require("react"),n=require("react-dom"),o=require("../button/Button.cjs"),i=require("../modal/Modal.cjs"),s=require("../modal/useModal.cjs"),a=require("./CookieConsentContext.cjs"),r=require("./RequirementCheckbox.cjs"),l=require("./cookieConsentUtils.cjs");exports.CookieConsent=({blocking:c,onAccept:d,...u})=>{const{currentConsent:k,cookieName:m,cookieDomain:g,cookiePath:j,requirement:f,isOpen:p,setIsOpen:h,updateCurrentConsents:b}=a.useInternalState(),[C,x]=s.useModal({id:`jkl-cookie-modal-${t.useId()}`,role:c?"alertdialog":"dialog",title:"Informasjonskapsler"});if(t.useEffect((()=>{p?C?.show():C?.hide()}),[C,p]),t.useEffect((()=>{const e=()=>h(!1);return C?.on("hide",e),()=>{C?.off("hide",e)}}),[C,h]),typeof document>"u")return null;if(typeof navigator<"u"&&!navigator.cookieEnabled)return d&&d({functional:"denied",marketing:"denied",statistics:"denied"}),null;const v=(e=l.convertBooleanConsentObjectToConsentObject({functional:!0,statistics:!0,marketing:!0},f))=>{const t=Object.fromEntries(Object.entries(e).filter((([,e])=>typeof e<"u"))),n={...k,...t};l.setConsentCookie({consent:n,name:m,domain:g,path:j}),b(),d?.(n),C?.hide()};return n.createPortal(e.jsxs(i.ModalContainer,{...x.container,...u,"data-cookie-consent-open":p,children:[e.jsx(i.ModalOverlay,{...x.overlay}),e.jsxs(i.Modal,{component:"form",...x.modal,onSubmit:e=>{e.preventDefault();const t=new FormData(e.currentTarget),n=l.convertBooleanConsentObjectToConsentObject({functional:"true"===t.get("functional"),statistics:"true"===t.get("statistics"),marketing:"true"===t.get("marketing")},f);v(n)},children:[e.jsx(i.ModalHeader,{children:e.jsx(i.ModalTitle,{...x.title,children:"Velg informasjonskapsler"})}),e.jsxs(i.ModalBody,{children:[e.jsx("p",{children:"For at nettsidene skal fungere må vi bruke tekniske informasjonskaplser. Disse lagres derfor uten samtykke."}),f.functional&&e.jsx(r.RequirementCheckbox,{name:"functional",label:"Tillat funksjonelle",defaultChecked:"accepted"===k.functional,children:"Funksjonelle informasjonskapsler lagrer opplysninger om din bruk av nettsidene og hvilke innstillinger du har gjort, slik at du kan få funksjonalitet tilpasset deg."},`functional-${k.functional}`),f.statistics&&e.jsx(r.RequirementCheckbox,{name:"statistics",label:"Tillat statistikk",defaultChecked:"accepted"===k.statistics,children:"Informasjonskapslene lagrer statistikk som hjelper oss med å forstå hvordan nettsidene blir brukt, slik at vi kan gjøre dem bedre og enklere å bruke."},`statistics-${k.statistics}`),f.marketing&&e.jsx(r.RequirementCheckbox,{name:"marketing",label:"Tillat personlig markedsføring",defaultChecked:"accepted"===k.marketing,children:"Dette gjør at vi kan gi deg mer relevant og tilpasset markedsføring, også gjennom våre samarbeidspartnere, på for eksempel nettsider, annonser og i sosiale medier."},`marketing-${k.marketing}`)]}),e.jsxs(i.ModalActions,{children:[e.jsx(o.Button,{variant:"secondary","data-testid":"jkl-cookie-consent-godta",type:"submit",children:"Godta mine valg"}),e.jsx(o.Button,{variant:"secondary","data-testid":"jkl-cookie-consent-godta-alle",type:"button",onClick:()=>v(),children:"Godta alle"})]})]})]}),document.body)};
|
|
2
2
|
//# sourceMappingURL=CookieConsent.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CookieConsent.cjs","sources":["../../../../src/components/cookie-consent/CookieConsent.tsx"],"sourcesContent":["import React, { type FormEventHandler, useEffect, useId } from \"react\";\nimport ReactDOM from \"react-dom\";\nimport { SecondaryButton } from \"../button/Button.js\";\nimport {\n Modal,\n ModalActions,\n ModalBody,\n ModalContainer,\n ModalHeader,\n ModalOverlay,\n ModalTitle,\n} from \"../modal/Modal.js\";\nimport { useModal } from \"../modal/useModal.js\";\nimport { useInternalState } from \"./CookieConsentContext.js\";\nimport { RequirementCheckbox } from \"./RequirementCheckbox.js\";\nimport {\n convertBooleanConsentObjectToConsentObject,\n setConsentCookie,\n} from \"./cookieConsentUtils.js\";\nimport type { AcceptConsentCallback, Consent } from \"./types.js\";\n\nexport interface CookieConsentProps {\n blocking?: boolean;\n onAccept?: AcceptConsentCallback;\n}\n\nexport const CookieConsent = ({\n blocking,\n onAccept,\n ...rest\n}: CookieConsentProps): JSX.Element | null => {\n const {\n currentConsent,\n cookieName,\n cookieDomain,\n cookiePath,\n requirement,\n isOpen,\n setIsOpen,\n updateCurrentConsents,\n } = useInternalState();\n\n const [instance, modalConfig] = useModal({\n id: `jkl-cookie-modal-${useId()}`,\n // The optional `role` attribute of the dialog element, either `dialog`\n // (default) or `alertdialog` to make it a modal (preventing closing on\n // click outside of ESC key).\n role: blocking ? \"alertdialog\" : \"dialog\",\n // The required dialog title, mandatory in the document\n // to provide context to assistive technology.\n title: \"Informasjonskapsler\",\n });\n\n useEffect(() => {\n if (isOpen) {\n instance?.show();\n } else {\n instance?.hide();\n }\n }, [instance, isOpen]);\n\n useEffect(() => {\n const onHide = () => setIsOpen(false);\n instance?.on(\"hide\", onHide);\n return () => {\n instance?.off(\"hide\", onHide);\n };\n }, [instance, setIsOpen]);\n\n if (typeof document === \"undefined\") {\n return null;\n }\n\n // Cookies are disabled in the browser\n if (typeof navigator !== \"undefined\" && !navigator.cookieEnabled) {\n if (onAccept) {\n onAccept({\n functional: \"denied\",\n marketing: \"denied\",\n statistics: \"denied\",\n });\n }\n\n return null;\n }\n\n const accept = (\n selection = convertBooleanConsentObjectToConsentObject(\n {\n functional: true,\n statistics: true,\n marketing: true,\n },\n requirement,\n ),\n ) => {\n const selectionWithoutEmptyValues = Object.fromEntries(\n Object.entries(selection).filter(\n ([, value]) => typeof value !== \"undefined\",\n ),\n );\n\n const updatedConsent: Consent = {\n ...currentConsent,\n ...selectionWithoutEmptyValues,\n };\n\n setConsentCookie({\n consent: updatedConsent,\n name: cookieName,\n domain: cookieDomain,\n path: cookiePath,\n });\n\n updateCurrentConsents();\n\n onAccept?.(updatedConsent);\n\n instance?.hide();\n };\n\n const onSubmit: FormEventHandler<HTMLFormElement> = (e) => {\n e.preventDefault();\n\n const formData = new FormData(e.currentTarget);\n\n const newConsents = convertBooleanConsentObjectToConsentObject(\n {\n functional: formData.get(\"functional\") === \"true\",\n statistics: formData.get(\"statistics\") === \"true\",\n marketing: formData.get(\"marketing\") === \"true\",\n },\n requirement,\n );\n\n accept(newConsents);\n };\n\n return ReactDOM.createPortal(\n <ModalContainer\n {...modalConfig.container}\n {...rest}\n data-cookie-consent-open={isOpen}\n >\n <ModalOverlay {...modalConfig.overlay} />\n <Modal component=\"form\" {...modalConfig.modal} {...{ onSubmit }}>\n <ModalHeader>\n <ModalTitle {...modalConfig.title}>\n Velg informasjonskapsler\n </ModalTitle>\n </ModalHeader>\n <ModalBody>\n <p>\n For at nettsidene skal fungere må vi bruke tekniske\n informasjonskaplser. Disse lagres derfor uten samtykke.\n </p>\n {requirement.functional && (\n <RequirementCheckbox\n name=\"functional\"\n label=\"Tillat funksjonelle\"\n defaultChecked={\n currentConsent.functional === \"accepted\"\n }\n key={`functional-${currentConsent.functional}`}\n >\n Funksjonelle informasjonskapsler lagrer opplysninger\n om din bruk av nettsidene og hvilke innstillinger du\n har gjort, slik at du kan få funksjonalitet\n tilpasset deg.\n </RequirementCheckbox>\n )}\n {requirement.statistics && (\n <RequirementCheckbox\n name=\"statistics\"\n label=\"Tillat statistikk\"\n defaultChecked={\n currentConsent.statistics === \"accepted\"\n }\n key={`statistics-${currentConsent.statistics}`}\n >\n Informasjonskapslene lagrer statistikk som hjelper\n oss med å forstå hvordan nettsidene blir brukt, slik\n at vi kan gjøre dem bedre og enklere å bruke.\n </RequirementCheckbox>\n )}\n {requirement.marketing && (\n <RequirementCheckbox\n name=\"marketing\"\n label=\"Tillat personlig markedsføring\"\n defaultChecked={\n currentConsent.marketing === \"accepted\"\n }\n key={`marketing-${currentConsent.marketing}`}\n >\n Dette gjør at vi kan gi deg mer relevant og\n tilpasset markedsføring, også gjennom våre\n samarbeidspartnere, på for eksempel nettsider,\n annonser og i sosiale medier.\n </RequirementCheckbox>\n )}\n </ModalBody>\n <ModalActions>\n <SecondaryButton\n data-testid=\"jkl-cookie-consent-godta-alle\"\n type=\"button\"\n onClick={() => accept()}\n >\n Godta alle\n </SecondaryButton>\n <SecondaryButton\n data-testid=\"jkl-cookie-consent-godta\"\n type=\"submit\"\n >\n Godta mine valg\n </SecondaryButton>\n </ModalActions>\n </Modal>\n </ModalContainer>,\n document.body,\n );\n};\n"],"names":["blocking","onAccept","rest","currentConsent","cookieName","cookieDomain","cookiePath","requirement","isOpen","setIsOpen","updateCurrentConsents","useInternalState","instance","modalConfig","useModal","id","useId","role","title","useEffect","show","hide","onHide","on","off","document","navigator","cookieEnabled","functional","marketing","statistics","accept","selection","convertBooleanConsentObjectToConsentObject","selectionWithoutEmptyValues","Object","fromEntries","entries","filter","value","updatedConsent","setConsentCookie","consent","name","domain","path","ReactDOM","createPortal","jsxs","ModalContainer","container","children","jsx","ModalOverlay","overlay","Modal","component","modal","onSubmit","e","preventDefault","formData","FormData","currentTarget","newConsents","get","ModalHeader","ModalTitle","ModalBody","RequirementCheckbox","label","defaultChecked","ModalActions","SecondaryButton","type","onClick","body"],"mappings":"+YA0B6B,EACzBA,SAAAA,EACAC,SAAAA,KACGC,MAEG,MACFC,eAAAA,EACAC,WAAAA,EACAC,aAAAA,EACAC,WAAAA,EACAC,YAAAA,EACAC,OAAAA,EACAC,UAAAA,EACAC,sBAAAA,GACAC,sBAEGC,EAAUC,GAAeC,WAAS,CACrCC,GAAI,oBAAoBC,EAAAA,UAIxBC,KAAMjB,EAAW,cAAgB,SAGjCkB,MAAO,wBAmBP,GAhBJC,EAAAA,WAAU,KACFX,EACAI,GAAUQ,OAEVR,GAAUS,MAAK,GAEpB,CAACT,EAAUJ,IAEdW,EAAAA,WAAU,KACA,MAAAG,EAAS,IAAMb,GAAU,GACrB,OAAAG,GAAAW,GAAG,OAAQD,GACd,KACOV,GAAAY,IAAI,OAAQF,EAAM,CAChC,GACD,CAACV,EAAUH,WAEHgB,SAAa,IACb,OAAA,KAIX,UAAWC,UAAc,MAAgBA,UAAUC,cAC/C,OAAI1B,GACSA,EAAA,CACL2B,WAAY,SACZC,UAAW,SACXC,WAAY,WAIb,KAGL,MAAAC,EAAS,CACXC,EAAYC,EAAAA,2CACR,CACIL,YAAY,EACZE,YAAY,EACZD,WAAW,GAEftB,MAGJ,MAAM2B,EAA8BC,OAAOC,YACvCD,OAAOE,QAAQL,GAAWM,QACtB,EAAI,CAAAC,YAAkBA,EAAU,OAIlCC,EAA0B,IACzBrC,KACA+B,GAGUO,mBAAA,CACbC,QAASF,EACTG,KAAMvC,EACNwC,OAAQvC,EACRwC,KAAMvC,IAGYI,IAEtBT,IAAWuC,GAEX5B,GAAUS,MAAK,EAoBnB,OAAOyB,EAASC,aACZC,EAAAA,KAACC,EAAAA,eAAA,IACOpC,EAAYqC,aACZhD,EACJ,2BAA0BM,EAE1B2C,SAAA,CAACC,EAAAA,IAAAC,EAAAA,aAAA,IAAiBxC,EAAYyC,UAC9BN,EAAAA,KAACO,EAAMA,MAAA,CAAAC,UAAU,UAAW3C,EAAY4C,MAAaC,SAxBRC,IACjDA,EAAEC,iBAEF,MAAMC,EAAW,IAAIC,SAASH,EAAEI,eAE1BC,EAAc/B,EAAAA,2CAChB,CACIL,WAA2C,SAA/BiC,EAASI,IAAI,cACzBnC,WAA2C,SAA/B+B,EAASI,IAAI,cACzBpC,UAAyC,SAA9BgC,EAASI,IAAI,cAE5B1D,GAGJwB,EAAOiC,EAAW,EAWVb,SAAA,CAAAC,EAAAA,IAACc,eACGf,SAACC,EAAAA,IAAAe,EAAAA,WAAA,IAAetD,EAAYK,MAAOiC,+CAItCiB,EAAAA,UACG,CAAAjB,SAAA,CAAAC,EAAAA,IAAC,KAAED,SAGH,gHACC5C,EAAYqB,YACTwB,EAAAA,IAACiB,EAAAA,oBAAA,CACG1B,KAAK,aACL2B,MAAM,sBACNC,eACkC,aAA9BpE,EAAeyB,WAGtBuB,SAAA,wKADQ,cAAchD,EAAeyB,cAQzCrB,EAAYuB,YACTsB,EAAAA,IAACiB,EAAAA,oBAAA,CACG1B,KAAK,aACL2B,MAAM,oBACNC,eACkC,aAA9BpE,EAAe2B,WAGtBqB,SAAA,yJADQ,cAAchD,EAAe2B,cAOzCvB,EAAYsB,WACTuB,EAAAA,IAACiB,EAAAA,oBAAA,CACG1B,KAAK,YACL2B,MAAM,iCACNC,eACiC,aAA7BpE,EAAe0B,UAGtBsB,SAAA,uKADQ,aAAahD,EAAe0B,uBAS5C2C,EAAAA,aACG,CAAArB,SAAA,CAAAC,EAAAA,IAACqB,EAAAA,gBAAA,CACG,cAAY,gCACZC,KAAK,SACLC,QAAS,IAAM5C,IAClBoB,SAAA,eAGDC,EAAAA,IAACqB,EAAAA,gBAAA,CACG,cAAY,2BACZC,KAAK,SACRvB,SAAA,6BAMb1B,SAASmD,KACb"}
|
|
1
|
+
{"version":3,"file":"CookieConsent.cjs","sources":["../../../../src/components/cookie-consent/CookieConsent.tsx"],"sourcesContent":["import React, { type FormEventHandler, useEffect, useId } from \"react\";\nimport ReactDOM from \"react-dom\";\nimport { Button } from \"../button/Button.js\";\nimport {\n Modal,\n ModalActions,\n ModalBody,\n ModalContainer,\n ModalHeader,\n ModalOverlay,\n ModalTitle,\n} from \"../modal/Modal.js\";\nimport { useModal } from \"../modal/useModal.js\";\nimport { useInternalState } from \"./CookieConsentContext.js\";\nimport { RequirementCheckbox } from \"./RequirementCheckbox.js\";\nimport {\n convertBooleanConsentObjectToConsentObject,\n setConsentCookie,\n} from \"./cookieConsentUtils.js\";\nimport type { AcceptConsentCallback, Consent } from \"./types.js\";\n\nexport interface CookieConsentProps {\n blocking?: boolean;\n onAccept?: AcceptConsentCallback;\n}\n\nexport const CookieConsent = ({\n blocking,\n onAccept,\n ...rest\n}: CookieConsentProps): JSX.Element | null => {\n const {\n currentConsent,\n cookieName,\n cookieDomain,\n cookiePath,\n requirement,\n isOpen,\n setIsOpen,\n updateCurrentConsents,\n } = useInternalState();\n\n const [instance, modalConfig] = useModal({\n id: `jkl-cookie-modal-${useId()}`,\n // The optional `role` attribute of the dialog element, either `dialog`\n // (default) or `alertdialog` to make it a modal (preventing closing on\n // click outside of ESC key).\n role: blocking ? \"alertdialog\" : \"dialog\",\n // The required dialog title, mandatory in the document\n // to provide context to assistive technology.\n title: \"Informasjonskapsler\",\n });\n\n useEffect(() => {\n if (isOpen) {\n instance?.show();\n } else {\n instance?.hide();\n }\n }, [instance, isOpen]);\n\n useEffect(() => {\n const onHide = () => setIsOpen(false);\n instance?.on(\"hide\", onHide);\n return () => {\n instance?.off(\"hide\", onHide);\n };\n }, [instance, setIsOpen]);\n\n if (typeof document === \"undefined\") {\n return null;\n }\n\n // Cookies are disabled in the browser\n if (typeof navigator !== \"undefined\" && !navigator.cookieEnabled) {\n if (onAccept) {\n onAccept({\n functional: \"denied\",\n marketing: \"denied\",\n statistics: \"denied\",\n });\n }\n\n return null;\n }\n\n const accept = (\n selection = convertBooleanConsentObjectToConsentObject(\n {\n functional: true,\n statistics: true,\n marketing: true,\n },\n requirement,\n ),\n ) => {\n const selectionWithoutEmptyValues = Object.fromEntries(\n Object.entries(selection).filter(\n ([, value]) => typeof value !== \"undefined\",\n ),\n );\n\n const updatedConsent: Consent = {\n ...currentConsent,\n ...selectionWithoutEmptyValues,\n };\n\n setConsentCookie({\n consent: updatedConsent,\n name: cookieName,\n domain: cookieDomain,\n path: cookiePath,\n });\n\n updateCurrentConsents();\n\n onAccept?.(updatedConsent);\n\n instance?.hide();\n };\n\n const onSubmit: FormEventHandler<HTMLFormElement> = (e) => {\n e.preventDefault();\n\n const formData = new FormData(e.currentTarget);\n\n const newConsents = convertBooleanConsentObjectToConsentObject(\n {\n functional: formData.get(\"functional\") === \"true\",\n statistics: formData.get(\"statistics\") === \"true\",\n marketing: formData.get(\"marketing\") === \"true\",\n },\n requirement,\n );\n\n accept(newConsents);\n };\n\n return ReactDOM.createPortal(\n <ModalContainer\n {...modalConfig.container}\n {...rest}\n data-cookie-consent-open={isOpen}\n >\n <ModalOverlay {...modalConfig.overlay} />\n <Modal component=\"form\" {...modalConfig.modal} {...{ onSubmit }}>\n <ModalHeader>\n <ModalTitle {...modalConfig.title}>\n Velg informasjonskapsler\n </ModalTitle>\n </ModalHeader>\n <ModalBody>\n <p>\n For at nettsidene skal fungere må vi bruke tekniske\n informasjonskaplser. Disse lagres derfor uten samtykke.\n </p>\n {requirement.functional && (\n <RequirementCheckbox\n name=\"functional\"\n label=\"Tillat funksjonelle\"\n defaultChecked={\n currentConsent.functional === \"accepted\"\n }\n key={`functional-${currentConsent.functional}`}\n >\n Funksjonelle informasjonskapsler lagrer opplysninger\n om din bruk av nettsidene og hvilke innstillinger du\n har gjort, slik at du kan få funksjonalitet\n tilpasset deg.\n </RequirementCheckbox>\n )}\n {requirement.statistics && (\n <RequirementCheckbox\n name=\"statistics\"\n label=\"Tillat statistikk\"\n defaultChecked={\n currentConsent.statistics === \"accepted\"\n }\n key={`statistics-${currentConsent.statistics}`}\n >\n Informasjonskapslene lagrer statistikk som hjelper\n oss med å forstå hvordan nettsidene blir brukt, slik\n at vi kan gjøre dem bedre og enklere å bruke.\n </RequirementCheckbox>\n )}\n {requirement.marketing && (\n <RequirementCheckbox\n name=\"marketing\"\n label=\"Tillat personlig markedsføring\"\n defaultChecked={\n currentConsent.marketing === \"accepted\"\n }\n key={`marketing-${currentConsent.marketing}`}\n >\n Dette gjør at vi kan gi deg mer relevant og\n tilpasset markedsføring, også gjennom våre\n samarbeidspartnere, på for eksempel nettsider,\n annonser og i sosiale medier.\n </RequirementCheckbox>\n )}\n </ModalBody>\n <ModalActions>\n <Button\n variant=\"secondary\"\n data-testid=\"jkl-cookie-consent-godta\"\n type=\"submit\"\n >\n Godta mine valg\n </Button>\n <Button\n variant=\"secondary\"\n data-testid=\"jkl-cookie-consent-godta-alle\"\n type=\"button\"\n onClick={() => accept()}\n >\n Godta alle\n </Button>\n </ModalActions>\n </Modal>\n </ModalContainer>,\n document.body,\n );\n};\n"],"names":["blocking","onAccept","rest","currentConsent","cookieName","cookieDomain","cookiePath","requirement","isOpen","setIsOpen","updateCurrentConsents","useInternalState","instance","modalConfig","useModal","id","useId","role","title","useEffect","show","hide","onHide","on","off","document","navigator","cookieEnabled","functional","marketing","statistics","accept","selection","convertBooleanConsentObjectToConsentObject","selectionWithoutEmptyValues","Object","fromEntries","entries","filter","value","updatedConsent","setConsentCookie","consent","name","domain","path","ReactDOM","createPortal","jsxs","ModalContainer","container","children","jsx","ModalOverlay","overlay","Modal","component","modal","onSubmit","e","preventDefault","formData","FormData","currentTarget","newConsents","get","ModalHeader","ModalTitle","ModalBody","RequirementCheckbox","label","defaultChecked","ModalActions","Button","variant","type","onClick","body"],"mappings":"+YA0B6B,EACzBA,SAAAA,EACAC,SAAAA,KACGC,MAEG,MACFC,eAAAA,EACAC,WAAAA,EACAC,aAAAA,EACAC,WAAAA,EACAC,YAAAA,EACAC,OAAAA,EACAC,UAAAA,EACAC,sBAAAA,GACAC,sBAEGC,EAAUC,GAAeC,WAAS,CACrCC,GAAI,oBAAoBC,EAAAA,UAIxBC,KAAMjB,EAAW,cAAgB,SAGjCkB,MAAO,wBAmBP,GAhBJC,EAAAA,WAAU,KACFX,EACAI,GAAUQ,OAEVR,GAAUS,MAAK,GAEpB,CAACT,EAAUJ,IAEdW,EAAAA,WAAU,KACA,MAAAG,EAAS,IAAMb,GAAU,GACrB,OAAAG,GAAAW,GAAG,OAAQD,GACd,KACOV,GAAAY,IAAI,OAAQF,EAAM,CAChC,GACD,CAACV,EAAUH,WAEHgB,SAAa,IACb,OAAA,KAIX,UAAWC,UAAc,MAAgBA,UAAUC,cAC/C,OAAI1B,GACSA,EAAA,CACL2B,WAAY,SACZC,UAAW,SACXC,WAAY,WAIb,KAGL,MAAAC,EAAS,CACXC,EAAYC,EAAAA,2CACR,CACIL,YAAY,EACZE,YAAY,EACZD,WAAW,GAEftB,MAGJ,MAAM2B,EAA8BC,OAAOC,YACvCD,OAAOE,QAAQL,GAAWM,QACtB,EAAI,CAAAC,YAAkBA,EAAU,OAIlCC,EAA0B,IACzBrC,KACA+B,GAGUO,mBAAA,CACbC,QAASF,EACTG,KAAMvC,EACNwC,OAAQvC,EACRwC,KAAMvC,IAGYI,IAEtBT,IAAWuC,GAEX5B,GAAUS,MAAK,EAoBnB,OAAOyB,EAASC,aACZC,EAAAA,KAACC,EAAAA,eAAA,IACOpC,EAAYqC,aACZhD,EACJ,2BAA0BM,EAE1B2C,SAAA,CAACC,EAAAA,IAAAC,EAAAA,aAAA,IAAiBxC,EAAYyC,UAC9BN,EAAAA,KAACO,EAAMA,MAAA,CAAAC,UAAU,UAAW3C,EAAY4C,MAAaC,SAxBRC,IACjDA,EAAEC,iBAEF,MAAMC,EAAW,IAAIC,SAASH,EAAEI,eAE1BC,EAAc/B,EAAAA,2CAChB,CACIL,WAA2C,SAA/BiC,EAASI,IAAI,cACzBnC,WAA2C,SAA/B+B,EAASI,IAAI,cACzBpC,UAAyC,SAA9BgC,EAASI,IAAI,cAE5B1D,GAGJwB,EAAOiC,EAAW,EAWVb,SAAA,CAAAC,EAAAA,IAACc,eACGf,SAACC,EAAAA,IAAAe,EAAAA,WAAA,IAAetD,EAAYK,MAAOiC,+CAItCiB,EAAAA,UACG,CAAAjB,SAAA,CAAAC,EAAAA,IAAC,KAAED,SAGH,gHACC5C,EAAYqB,YACTwB,EAAAA,IAACiB,EAAAA,oBAAA,CACG1B,KAAK,aACL2B,MAAM,sBACNC,eACkC,aAA9BpE,EAAeyB,WAGtBuB,SAAA,wKADQ,cAAchD,EAAeyB,cAQzCrB,EAAYuB,YACTsB,EAAAA,IAACiB,EAAAA,oBAAA,CACG1B,KAAK,aACL2B,MAAM,oBACNC,eACkC,aAA9BpE,EAAe2B,WAGtBqB,SAAA,yJADQ,cAAchD,EAAe2B,cAOzCvB,EAAYsB,WACTuB,EAAAA,IAACiB,EAAAA,oBAAA,CACG1B,KAAK,YACL2B,MAAM,iCACNC,eACiC,aAA7BpE,EAAe0B,UAGtBsB,SAAA,uKADQ,aAAahD,EAAe0B,uBAS5C2C,EAAAA,aACG,CAAArB,SAAA,CAAAC,EAAAA,IAACqB,EAAAA,OAAA,CACGC,QAAQ,YACR,cAAY,2BACZC,KAAK,SACRxB,SAAA,oBAGDC,EAAAA,IAACqB,EAAAA,OAAA,CACGC,QAAQ,YACR,cAAY,gCACZC,KAAK,SACLC,QAAS,IAAM7C,IAClBoB,SAAA,wBAMb1B,SAASoD,KACb"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),l=require("react"),r=require("../../input-group/FieldGroup.cjs"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),l=require("react"),r=require("../../input-group/FieldGroup.cjs"),s=require("../followup/followupContext.cjs"),a=require("../main-question/mainQuestionContext.cjs"),u=require("./smileyUtils.cjs"),n=e=>"number"!=typeof e.value||![1,2,3,4,5].includes(e.value);exports.SmileyQuestion=({label:t,name:o="smiley",helpLabel:i,options:c=u.defaultOptions})=>{const m=s.useFollowUpContext(),d=a.useMainQuestionContext(),p=m||d,v=l.useId(),j=e=>{const l=c?.find((l=>l.value.toString()===e.target.value));p?.setCurrentValue(l)},y=l.useMemo((()=>Array.isArray(p?.currentValue)?p?.currentValue[0].value:p?.currentValue?.value),[p?.currentValue]);return c.some(n)?(console.error("SmileyQuestion må ha tallene 1 til 5 som verdier for alternativene sine"),null):p&&c?e.jsx(r.FieldGroup,{labelProps:{variant:"large"},legend:t,helpLabel:i,children:e.jsx("div",{className:"jkl-feedback-smileys",children:c.map((r=>e.jsxs(l.Fragment,{children:[e.jsx("input",{className:"jkl-sr-only",id:`${v}-${o}-${r.value}`,name:`${v}-${o}`,type:"radio",value:r.value,onChange:j,checked:y===r.value}),e.jsxs("label",{className:"jkl-feedback-smiley-option",htmlFor:`${v}-${o}-${r.value}`,children:[e.jsx("span",{className:"jkl-sr-only",children:r.label}),u.getSmiley(Number(r.value))]})]},r.value)))})}):(console.error("Questions must be used inside a Followup or Feedback context provider"),null)};
|
|
2
2
|
//# sourceMappingURL=SmileyQuestion.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SmileyQuestion.cjs","sources":["../../../../../src/components/feedback/questions/SmileyQuestion.tsx"],"sourcesContent":["import React, {\n type ChangeEventHandler,\n Fragment,\n useId,\n useMemo,\n} from \"react\";\nimport { FieldGroup } from \"../../input-group/FieldGroup.js\";\nimport { useFollowUpContext } from \"../followup/followupContext.js\";\nimport { useMainQuestionContext } from \"../main-question/mainQuestionContext.js\";\nimport type { FeedbackOption, QuestionProps } from \"../types.js\";\nimport { defaultOptions, getSmiley } from \"./smileyUtils.js\";\n\nconst isNotInScale = (option: FeedbackOption) =>\n typeof option.value !== \"number\" || ![1, 2, 3, 4, 5].includes(option.value);\n\nexport const SmileyQuestion: React.FC<QuestionProps> = ({\n label,\n name = \"smiley\",\n helpLabel,\n options = defaultOptions,\n}) => {\n const followupContext = useFollowUpContext();\n const feedbackContext = useMainQuestionContext();\n const context = followupContext || feedbackContext;\n const id = useId();\n\n const handleChange: ChangeEventHandler<HTMLInputElement> = (e) => {\n
|
|
1
|
+
{"version":3,"file":"SmileyQuestion.cjs","sources":["../../../../../src/components/feedback/questions/SmileyQuestion.tsx"],"sourcesContent":["import React, {\n type ChangeEventHandler,\n Fragment,\n useId,\n useMemo,\n} from \"react\";\nimport { FieldGroup } from \"../../input-group/FieldGroup.js\";\nimport { useFollowUpContext } from \"../followup/followupContext.js\";\nimport { useMainQuestionContext } from \"../main-question/mainQuestionContext.js\";\nimport type { FeedbackOption, QuestionProps } from \"../types.js\";\nimport { defaultOptions, getSmiley } from \"./smileyUtils.js\";\n\nconst isNotInScale = (option: FeedbackOption) =>\n typeof option.value !== \"number\" || ![1, 2, 3, 4, 5].includes(option.value);\n\nexport const SmileyQuestion: React.FC<QuestionProps> = ({\n label,\n name = \"smiley\",\n helpLabel,\n options = defaultOptions,\n}) => {\n const followupContext = useFollowUpContext();\n const feedbackContext = useMainQuestionContext();\n const context = followupContext || feedbackContext;\n const id = useId();\n\n const handleChange: ChangeEventHandler<HTMLInputElement> = (e) => {\n const option = options?.find(\n (option) => option.value.toString() === e.target.value,\n );\n context?.setCurrentValue(option);\n };\n\n const selectedValue = useMemo(\n () =>\n Array.isArray(context?.currentValue)\n ? context?.currentValue[0].value\n : context?.currentValue?.value,\n [context?.currentValue],\n );\n\n if (options.some(isNotInScale)) {\n console.error(\n \"SmileyQuestion må ha tallene 1 til 5 som verdier for alternativene sine\",\n );\n return null;\n }\n\n if (!context || !options) {\n console.error(\n \"Questions must be used inside a Followup or Feedback context provider\",\n );\n return null;\n }\n\n return (\n <FieldGroup\n labelProps={{ variant: \"large\" }}\n legend={label}\n helpLabel={helpLabel}\n >\n <div className=\"jkl-feedback-smileys\">\n {options.map((option) => (\n <Fragment key={option.value}>\n <input\n className=\"jkl-sr-only\"\n id={`${id}-${name}-${option.value}`}\n name={`${id}-${name}`}\n type=\"radio\"\n value={option.value}\n onChange={handleChange}\n checked={selectedValue === option.value}\n />\n <label\n className=\"jkl-feedback-smiley-option\"\n htmlFor={`${id}-${name}-${option.value}`}\n >\n <span className=\"jkl-sr-only\">{option.label}</span>\n {getSmiley(Number(option.value))}\n </label>\n </Fragment>\n ))}\n </div>\n </FieldGroup>\n );\n};\n"],"names":["isNotInScale","option","value","includes","label","name","helpLabel","options","defaultOptions","followupContext","useFollowUpContext","feedbackContext","useMainQuestionContext","context","id","useId","handleChange","e","find","toString","target","setCurrentValue","selectedValue","useMemo","Array","isArray","currentValue","some","console","error","jsx","FieldGroup","labelProps","variant","legend","children","className","map","jsxs","Fragment","type","onChange","checked","htmlFor","getSmiley","Number"],"mappings":"wTAYMA,EAAgBC,GACM,iBAAjBA,EAAOC,QAAuB,CAAC,EAAG,EAAG,EAAG,EAAG,GAAGC,SAASF,EAAOC,8BAElB,EACnDE,MAAAA,EACAC,KAAAA,EAAO,SACPC,UAAAA,EACAC,QAAAA,EAAUC,EAAAA,mBAEV,MAAMC,EAAkBC,EAAAA,qBAClBC,EAAkBC,EAAAA,yBAClBC,EAAUJ,GAAmBE,EAC7BG,EAAKC,EAAAA,QAELC,EAAsDC,IACxD,MAAMhB,EAASM,GAASW,MACnBjB,GAAWA,EAAOC,MAAMiB,aAAeF,EAAEG,OAAOlB,QAErDW,GAASQ,gBAAgBpB,EAAM,EAG7BqB,EAAgBC,EAAAA,SAClB,IACIC,MAAMC,QAAQZ,GAASa,cACjBb,GAASa,aAAa,GAAGxB,MACzBW,GAASa,cAAcxB,OACjC,CAACW,GAASa,eAGV,OAAAnB,EAAQoB,KAAK3B,IACL4B,QAAAC,MACJ,2EAEG,MAGNhB,GAAYN,EAQbuB,EAAAA,IAACC,EAAAA,WAAA,CACGC,WAAY,CAAEC,QAAS,SACvBC,OAAQ9B,EACRE,UAAAA,EAEA6B,SAAAL,EAAAA,IAAC,OAAIM,UAAU,uBACVD,WAAQE,KAAKpC,GACVqC,EAAAA,KAACC,EACGA,SAAA,CAAAJ,SAAA,CAAAL,EAAAA,IAAC,QAAA,CACGM,UAAU,cACVtB,GAAI,GAAGA,KAAMT,KAAQJ,EAAOC,QAC5BG,KAAM,GAAGS,KAAMT,IACfmC,KAAK,QACLtC,MAAOD,EAAOC,MACduC,SAAUzB,EACV0B,QAASpB,IAAkBrB,EAAOC,QAEtCoC,EAAAA,KAAC,QAAA,CACGF,UAAU,6BACVO,QAAS,GAAG7B,KAAMT,KAAQJ,EAAOC,QAEjCiC,SAAA,CAAAL,EAAAA,IAAC,OAAK,CAAAM,UAAU,cAAeD,SAAAlC,EAAOG,QACrCwC,YAAUC,OAAO5C,EAAOC,aAflBD,EAAOC,cAd1B0B,QAAAC,MACJ,yEAEG,KA+BP"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IconButton.cjs","sources":["../../../../src/components/icon-button/IconButton.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React, { forwardRef } from \"react\";\nimport type { IconButtonProps } from \"./types.js\";\n\nexport const IconButton = forwardRef<HTMLButtonElement, IconButtonProps>(\n (props, ref) => {\n const { className, children, density, ...rest } = props;\n return (\n <button\n ref={ref}\n type=\"button\"\n className={clsx(\"jkl-icon-button\", className)}\n data-testid=\"jkl-icon-button\"\n data-density={density}\n {...rest}\n >\n {children}\n </button>\n );\n },\n);\n\nIconButton.displayName = \"IconButton\";\n"],"names":["IconButton","forwardRef","props","ref","className","children","density","rest","jsx","type","clsx","displayName"],"mappings":"
|
|
1
|
+
{"version":3,"file":"IconButton.cjs","sources":["../../../../src/components/icon-button/IconButton.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React, { forwardRef } from \"react\";\nimport type { IconButtonProps } from \"./types.js\";\n\n/**\n * @deprecated bruk heller {@link Button} med ghost-varianten\n */\nexport const IconButton = forwardRef<HTMLButtonElement, IconButtonProps>(\n (props, ref) => {\n const { className, children, density, ...rest } = props;\n return (\n <button\n ref={ref}\n type=\"button\"\n className={clsx(\"jkl-icon-button\", className)}\n data-testid=\"jkl-icon-button\"\n data-density={density}\n {...rest}\n >\n {children}\n </button>\n );\n },\n);\n\nIconButton.displayName = \"IconButton\";\n"],"names":["IconButton","forwardRef","props","ref","className","children","density","rest","jsx","type","clsx","displayName"],"mappings":"6JAOaA,mBAAaC,YACtB,CAACC,EAAOC,KACJ,MAAQC,UAAAA,EAAWC,SAAAA,EAAUC,QAAAA,KAAYC,GAASL,EAE9C,OAAAM,EAAAA,IAAC,SAAA,CACGL,IAAAA,EACAM,KAAK,SACLL,UAAWM,EAAAA,KAAK,kBAAmBN,GACnC,cAAY,kBACZ,eAAcE,KACVC,EAEHF,SAAAA,GACL,IAKZL,EAAWW,YAAc"}
|
|
@@ -1,3 +1,6 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
2
|
import { IconButtonProps } from './types.cjs';
|
|
3
|
+
/**
|
|
4
|
+
* @deprecated bruk heller {@link Button} med ghost-varianten
|
|
5
|
+
*/
|
|
3
6
|
export declare const IconButton: React.ForwardRefExoticComponent<IconButtonProps & React.RefAttributes<HTMLButtonElement>>;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";const e=require("style-dictionary"),n=require("./config.cjs");require("./register.cjs"),async function(){console.log("Starting design token build...\n"),console.log("⚙️ Building legacy tokens"),await(await new e(n.legacyDesignTokensConfig)).buildAllPlatforms(),console.log("⚙️ Building modern tokens"),await(await new e(n.designTokensConfig)).buildAllPlatforms(),console.log("\nBuild complete.")}();
|
|
2
|
+
//# sourceMappingURL=build.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"build.cjs","sources":["../../../../../src/core/tokens/style-dictionary/build.ts"],"sourcesContent":["import StyleDictionary from \"style-dictionary\";\nimport { legacyDesignTokensConfig, designTokensConfig } from \"./config.js\";\nimport \"./register.js\";\n\nasync function build() {\n console.log(\"Starting design token build...\\n\");\n\n console.log(\"⚙️ Building legacy tokens\");\n const legacySd = await new StyleDictionary(legacyDesignTokensConfig);\n await legacySd.buildAllPlatforms();\n\n console.log(\"⚙️ Building modern tokens\");\n const modernSd = await new StyleDictionary(designTokensConfig);\n await modernSd.buildAllPlatforms();\n\n console.log(\"\\nBuild complete.\");\n}\n\nbuild();\n"],"names":["async","console","log","StyleDictionary","legacyDesignTokensConfig","buildAllPlatforms","designTokensConfig","build"],"mappings":"qGAIAA,iBACIC,QAAQC,IAAI,oCAEZD,QAAQC,IAAI,yCACW,IAAIC,EAAgBC,6BAC5BC,oBAEfJ,QAAQC,IAAI,yCACW,IAAIC,EAAgBG,uBAC5BD,oBAEfJ,QAAQC,IAAI,oBAChB,CAEAK"}
|
|
File without changes
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});exports.PREFIX="jkl",exports.designTokensConfig={source:["src/core/tokens/!(legacy)/*.json"],platforms:{scss:{transformGroup:"scss",buildPath:"./src/core/jkl/",files:[{destination:"_tokens.scss",format:"scss/theme-variables",filter:s=>"spacing"===s.type||["border","text","background"].includes("string"==typeof s.attributes?.type?s.attributes.type:"")}]},css:{transformGroup:"css",buildPath:"./src/core/styles/theme/",files:[{destination:"_tokens.scss",format:"css/theme-variables",filter:s=>"spacing"===s.type},{destination:"_color-tokens.scss",format:"css/dynamic-color-variables",filter:"isColor"},{destination:"_spacing-tokens.scss",format:"css/theme-variables",filter:"isSpacing"}]}}},exports.legacyDesignTokensConfig={source:["src/core/tokens/legacy/*.json"],platforms:{ts:{transformGroup:"typescript",buildPath:"./src/core/",files:[{destination:"tokens.ts",format:"javascript/esm",filter:s=>!s.filePath.includes("color.legacy")}]},scss:{transformGroup:"scss",buildPath:"./src/core/jkl/",files:[{destination:"_legacy-tokens.scss",format:"scss/theme-variables"}]},css:{transformGroup:"css",buildPath:"./src/core/styles/theme/",files:[{destination:"_legacy-tokens.scss",format:"css/theme-variables",filter:s=>!s.filePath.includes("semantic")},{destination:"_legacy-color-tokens.scss",format:"css/dynamic-color-variables",filter:s=>s.filePath.includes("semantic")}]},tailwind:{transformGroup:"css",buildPath:"src/tailwind/",files:[{destination:"colors.ts",format:"tailwindcss/colors",filter:s=>s.path.includes("light")}]}}};
|
|
2
|
+
//# sourceMappingURL=config.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.cjs","sources":["../../../../../src/core/tokens/style-dictionary/config.ts"],"sourcesContent":["import type { Config, DesignToken } from \"style-dictionary/types\";\n\nexport const PREFIX = \"jkl\";\n\nexport const legacyDesignTokensConfig: Config = {\n source: [\"src/core/tokens/legacy/*.json\"],\n platforms: {\n ts: {\n transformGroup: \"typescript\",\n buildPath: \"./src/core/\",\n files: [\n {\n destination: \"tokens.ts\",\n format: \"javascript/esm\",\n filter: (token: DesignToken) =>\n !token.filePath.includes(\"color.legacy\"),\n },\n ],\n },\n scss: {\n transformGroup: \"scss\",\n buildPath: \"./src/core/jkl/\",\n files: [\n {\n destination: \"_legacy-tokens.scss\",\n format: \"scss/theme-variables\",\n },\n ],\n },\n css: {\n transformGroup: \"css\",\n buildPath: \"./src/core/styles/theme/\",\n files: [\n {\n destination: \"_legacy-tokens.scss\",\n format: \"css/theme-variables\",\n filter: (token: DesignToken) =>\n !token.filePath.includes(\"semantic\"),\n },\n {\n destination: \"_legacy-color-tokens.scss\",\n format: \"css/dynamic-color-variables\",\n filter: (token: DesignToken) =>\n token.filePath.includes(\"semantic\"),\n },\n ],\n },\n tailwind: {\n transformGroup: \"css\",\n buildPath: \"src/tailwind/\",\n files: [\n {\n destination: \"colors.ts\",\n format: \"tailwindcss/colors\",\n filter: (token: DesignToken) =>\n token.path.includes(\"light\"),\n },\n ],\n },\n },\n};\n\nexport const designTokensConfig: Config = {\n source: [\"src/core/tokens/!(legacy)/*.json\"],\n platforms: {\n scss: {\n transformGroup: \"scss\",\n buildPath: \"./src/core/jkl/\",\n files: [\n {\n destination: \"_tokens.scss\",\n format: \"scss/theme-variables\",\n filter: (token: DesignToken) =>\n token.type === \"spacing\" ||\n [\"border\", \"text\", \"background\"].includes(\n typeof token.attributes?.type === \"string\"\n ? token.attributes.type\n : \"\",\n ),\n },\n ],\n },\n css: {\n transformGroup: \"css\",\n buildPath: \"./src/core/styles/theme/\",\n files: [\n {\n destination: \"_tokens.scss\",\n format: \"css/theme-variables\",\n filter: (token: DesignToken) => token.type === \"spacing\",\n },\n {\n destination: \"_color-tokens.scss\",\n format: \"css/dynamic-color-variables\",\n filter: \"isColor\",\n },\n {\n destination: \"_spacing-tokens.scss\",\n format: \"css/theme-variables\",\n filter: \"isSpacing\",\n },\n ],\n },\n },\n};\n"],"names":["source","platforms","scss","transformGroup","buildPath","files","destination","format","filter","token","type","includes","attributes","css","ts","filePath","tailwind","path"],"mappings":"+FAEsB,iCA4DoB,CACtCA,OAAQ,CAAC,oCACTC,UAAW,CACPC,KAAM,CACFC,eAAgB,OAChBC,UAAW,kBACXC,MAAO,CACH,CACIC,YAAa,eACbC,OAAQ,uBACRC,OAASC,GACU,YAAfA,EAAMC,MACN,CAAC,SAAU,OAAQ,cAAcC,SACK,iBAA3BF,EAAMG,YAAYF,KACnBD,EAAMG,WAAWF,KACjB,OAK1BG,IAAK,CACDV,eAAgB,MAChBC,UAAW,2BACXC,MAAO,CACH,CACIC,YAAa,eACbC,OAAQ,sBACRC,OAASC,GAAsC,YAAfA,EAAMC,MAE1C,CACIJ,YAAa,qBACbC,OAAQ,8BACRC,OAAQ,WAEZ,CACIF,YAAa,uBACbC,OAAQ,sBACRC,OAAQ,kDA/FoB,CAC5CR,OAAQ,CAAC,iCACTC,UAAW,CACPa,GAAI,CACAX,eAAgB,aAChBC,UAAW,cACXC,MAAO,CACH,CACIC,YAAa,YACbC,OAAQ,iBACRC,OAASC,IACJA,EAAMM,SAASJ,SAAS,mBAIzCT,KAAM,CACFC,eAAgB,OAChBC,UAAW,kBACXC,MAAO,CACH,CACIC,YAAa,sBACbC,OAAQ,0BAIpBM,IAAK,CACDV,eAAgB,MAChBC,UAAW,2BACXC,MAAO,CACH,CACIC,YAAa,sBACbC,OAAQ,sBACRC,OAASC,IACJA,EAAMM,SAASJ,SAAS,aAEjC,CACIL,YAAa,4BACbC,OAAQ,8BACRC,OAASC,GACLA,EAAMM,SAASJ,SAAS,eAIxCK,SAAU,CACNb,eAAgB,MAChBC,UAAW,gBACXC,MAAO,CACH,CACIC,YAAa,YACbC,OAAQ,qBACRC,OAASC,GACLA,EAAMQ,KAAKN,SAAS"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.cjs","sources":["../../../../../../src/core/tokens/style-dictionary/filters/index.ts"],"sourcesContent":["import type { DesignToken, Filter } from \"style-dictionary/types\";\n\nexport const isColor: Filter = {\n name: \"isColor\",\n filter: (token: DesignToken) => token.type === \"color\",\n};\n\nexport const isSpacing: Filter = {\n name: \"isSpacing\",\n filter: (token: DesignToken) => token.type === \"spacing\",\n};\n"],"names":["name","filter","token","type"],"mappings":"gGAE+B,CAC3BA,KAAM,UACNC,OAASC,GAAsC,UAAfA,EAAMC,wBAGT,CAC7BH,KAAM,YACNC,OAASC,GAAsC,YAAfA,EAAMC"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";const e=require("style-dictionary/utils"),n=require("../config.cjs"),i={name:"css/dynamic-color-variables",format:async({dictionary:i,file:a})=>{const t=e=>i.allTokens.filter((n=>n.path.includes(e)));return`${await e.fileHeader({file:a})}\n/* stylelint-disable */\n@use "../../jkl";\n\n@layer jokul.theme {\n ${["light","dark"].map((a=>`@include jkl.${a}-mode-variables {\n${e.formattedVariables({dictionary:{...i,allTokens:t(a)},format:"css",formatting:{indentation:" ",prefix:`--${n.PREFIX}-`}})}\n }`)).join("\n\n ")}\n}\n`}};module.exports=i;
|
|
2
|
+
//# sourceMappingURL=css-dynamic-color-variables.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"css-dynamic-color-variables.cjs","sources":["../../../../../../src/core/tokens/style-dictionary/formats/css-dynamic-color-variables.ts"],"sourcesContent":["import type { Dictionary, File, Format } from \"style-dictionary/types\";\nimport { fileHeader, formattedVariables } from \"style-dictionary/utils\";\nimport { PREFIX } from \"../config.js\";\n\nconst cssDynamicColorVariablesFormat: Format = {\n name: \"css/dynamic-color-variables\",\n format: async ({\n dictionary,\n file,\n }: { dictionary: Dictionary; file: File }) => {\n const dynamicColorTokens = (scheme: string) =>\n dictionary.allTokens.filter((token) => token.path.includes(scheme));\n\n return `${await fileHeader({ file })}\n/* stylelint-disable */\n@use \"../../jkl\";\n\n@layer jokul.theme {\n ${[\"light\", \"dark\"]\n .map(\n (scheme) => `@include jkl.${scheme}-mode-variables {\n${formattedVariables({\n dictionary: {\n ...dictionary,\n allTokens: dynamicColorTokens(scheme),\n },\n format: \"css\",\n formatting: {\n indentation: \" \",\n prefix: `--${PREFIX}-`,\n },\n})}\n }`,\n )\n .join(\"\\n\\n \")}\n}\n`;\n },\n};\n\nexport default cssDynamicColorVariablesFormat;\n"],"names":["cssDynamicColorVariablesFormat","name","format","async","dictionary","file","dynamicColorTokens","scheme","allTokens","filter","token","path","includes","fileHeader","map","formattedVariables","formatting","indentation","prefix","PREFIX","join"],"mappings":"kFAIMA,EAAyC,CAC3CC,KAAM,8BACNC,OAAQC,OACJC,WAAAA,EACAC,KAAAA,MAEA,MAAMC,EAAsBC,GACxBH,EAAWI,UAAUC,QAAQC,GAAUA,EAAMC,KAAKC,SAASL,KAE/D,MAAO,SAASM,aAAW,CAAER,KAAAA,gFAK/B,CAAC,QAAS,QACPS,KACIP,GAAW,gBAAgBA,uBACtCQ,qBAAmB,CACjBX,WAAY,IACLA,EACHI,UAAWF,EAAmBC,IAElCL,OAAQ,MACRc,WAAY,CACRC,YAAa,WACbC,OAAQ,KAAKC,EAAAA,wBAKZC,KAAK,kBAAW"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";const e=require("style-dictionary/utils"),i=require("../config.cjs"),t={name:"css/theme-variables",format:async({dictionary:t,file:r})=>`${await e.fileHeader({file:r})}\n@layer jokul.theme {\n :root {\n${e.formattedVariables({dictionary:t,format:"css",formatting:{indentation:" ",prefix:`--${i.PREFIX}-`}})}\n }\n}`};module.exports=t;
|
|
2
|
+
//# sourceMappingURL=css-theme-variables.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"css-theme-variables.cjs","sources":["../../../../../../src/core/tokens/style-dictionary/formats/css-theme-variables.ts"],"sourcesContent":["import { fileHeader, formattedVariables } from \"style-dictionary/utils\";\nimport { PREFIX } from \"../config.js\";\nimport type { Dictionary, File, Format } from \"style-dictionary/types\";\n\nconst cssThemeVariablesFormat: Format = {\n name: \"css/theme-variables\",\n format: async ({\n dictionary,\n file,\n }: { dictionary: Dictionary; file: File }) => {\n return `${await fileHeader({ file })}\n@layer jokul.theme {\n :root {\n${formattedVariables({\n dictionary,\n format: \"css\",\n formatting: {\n indentation: \" \",\n prefix: `--${PREFIX}-`,\n },\n})}\n }\n}`;\n },\n};\n\nexport default cssThemeVariablesFormat;\n"],"names":["cssThemeVariablesFormat","name","format","async","dictionary","file","fileHeader","formattedVariables","formatting","indentation","prefix","PREFIX"],"mappings":"kFAIMA,EAAkC,CACpCC,KAAM,sBACNC,OAAQC,OACJC,WAAAA,EACAC,KAAAA,KAEO,SAASC,aAAW,CAAED,KAAAA,2CAGnCE,qBAAmB,CACjBH,WAAAA,EACAF,OAAQ,MACRM,WAAY,CACRC,YAAa,WACbC,OAAQ,KAAKC,EAAAA"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("./css-dynamic-color-variables.cjs"),e=require("./css-theme-variables.cjs"),r=require("./javascript-esm.cjs"),a=require("./scss-theme-variables.cjs"),o=require("./tailwindcss-colors.cjs");exports.cssDynamicColorVariablesFormat=s,exports.cssThemeVariablesFormat=e,exports.javascriptEsmFormat=r,exports.scssThemeVariablesFormat=a,exports.tailwindCssColorsFormat=o;
|
|
2
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { default as cssDynamicColorVariablesFormat } from './css-dynamic-color-variables.cjs';
|
|
2
|
+
import { default as cssThemeVariablesFormat } from './css-theme-variables.cjs';
|
|
3
|
+
import { default as javascriptEsmFormat } from './javascript-esm.cjs';
|
|
4
|
+
import { default as scssThemeVariablesFormat } from './scss-theme-variables.cjs';
|
|
5
|
+
import { default as tailwindCssColorsFormat } from './tailwindcss-colors.cjs';
|
|
6
|
+
export { javascriptEsmFormat, cssThemeVariablesFormat, scssThemeVariablesFormat, tailwindCssColorsFormat, cssDynamicColorVariablesFormat, };
|