@fremtind/jokul 0.40.3 → 0.41.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (84) hide show
  1. package/build/build-stats.html +1 -1
  2. package/build/cjs/components/cookie-consent/CookieConsent.cjs +1 -1
  3. package/build/cjs/components/cookie-consent/CookieConsent.cjs.map +1 -1
  4. package/build/cjs/components/cookie-consent/CookieConsentContext.cjs +1 -1
  5. package/build/cjs/components/cookie-consent/CookieConsentContext.cjs.map +1 -1
  6. package/build/cjs/components/cookie-consent/CookieConsentContext.d.cts +6 -43
  7. package/build/cjs/components/cookie-consent/RequirementCheckbox.cjs +2 -0
  8. package/build/cjs/components/cookie-consent/RequirementCheckbox.cjs.map +1 -0
  9. package/build/cjs/components/cookie-consent/{consents/RequirementCheckbox.d.cts → RequirementCheckbox.d.cts} +1 -1
  10. package/build/cjs/components/cookie-consent/cookieConsentUtils.cjs +1 -1
  11. package/build/cjs/components/cookie-consent/cookieConsentUtils.cjs.map +1 -1
  12. package/build/cjs/components/cookie-consent/cookieConsentUtils.d.cts +1 -5
  13. package/build/cjs/components/cookie-consent/index.d.cts +2 -2
  14. package/build/cjs/components/cookie-consent/types.d.cts +19 -4
  15. package/build/es/components/cookie-consent/CookieConsent.js +1 -1
  16. package/build/es/components/cookie-consent/CookieConsent.js.map +1 -1
  17. package/build/es/components/cookie-consent/CookieConsentContext.d.ts +6 -43
  18. package/build/es/components/cookie-consent/CookieConsentContext.js +1 -1
  19. package/build/es/components/cookie-consent/CookieConsentContext.js.map +1 -1
  20. package/build/es/components/cookie-consent/{consents/RequirementCheckbox.d.ts → RequirementCheckbox.d.ts} +1 -1
  21. package/build/es/components/cookie-consent/RequirementCheckbox.js +2 -0
  22. package/build/es/components/cookie-consent/RequirementCheckbox.js.map +1 -0
  23. package/build/es/components/cookie-consent/cookieConsentUtils.d.ts +1 -5
  24. package/build/es/components/cookie-consent/cookieConsentUtils.js +1 -1
  25. package/build/es/components/cookie-consent/cookieConsentUtils.js.map +1 -1
  26. package/build/es/components/cookie-consent/index.d.ts +2 -2
  27. package/build/es/components/cookie-consent/types.d.ts +19 -4
  28. package/package.json +2 -2
  29. package/styles/components/button/button.css +2 -2
  30. package/styles/components/button/button.min.css +1 -1
  31. package/styles/components/checkbox/checkbox.css +4 -4
  32. package/styles/components/checkbox/checkbox.min.css +1 -1
  33. package/styles/components/cookie-consent/cookie-consent.css +0 -69
  34. package/styles/components/cookie-consent/cookie-consent.min.css +1 -1
  35. package/styles/components/cookie-consent/cookie-consent.scss +0 -48
  36. package/styles/components/expander/expandable.css +1 -1
  37. package/styles/components/expander/expandable.min.css +1 -1
  38. package/styles/components/expander/expandable.scss +1 -1
  39. package/styles/components/feedback/feedback.css +2 -2
  40. package/styles/components/feedback/feedback.min.css +1 -1
  41. package/styles/components/input-group/input-group.css +2 -2
  42. package/styles/components/input-group/input-group.min.css +1 -1
  43. package/styles/components/input-panel/checkbox-panel.css +2 -2
  44. package/styles/components/input-panel/checkbox-panel.min.css +1 -1
  45. package/styles/components/input-panel/radio-panel.css +2 -2
  46. package/styles/components/input-panel/radio-panel.min.css +1 -1
  47. package/styles/components/loader/loader.css +6 -6
  48. package/styles/components/loader/loader.min.css +1 -1
  49. package/styles/components/loader/skeleton-loader.css +5 -5
  50. package/styles/components/loader/skeleton-loader.min.css +1 -1
  51. package/styles/components/message/message.css +2 -2
  52. package/styles/components/message/message.min.css +1 -1
  53. package/styles/components/progress-bar/progress-bar.css +2 -2
  54. package/styles/components/progress-bar/progress-bar.min.css +1 -1
  55. package/styles/components/radio-button/radio-button.css +2 -2
  56. package/styles/components/radio-button/radio-button.min.css +1 -1
  57. package/styles/components/system-message/system-message.css +2 -2
  58. package/styles/components/system-message/system-message.min.css +1 -1
  59. package/styles/components/toast/toast.css +4 -4
  60. package/styles/components/toast/toast.min.css +1 -1
  61. package/styles/styles.css +38 -107
  62. package/styles/styles.min.css +1 -1
  63. package/build/cjs/components/cookie-consent/CookieConsentModal.cjs +0 -2
  64. package/build/cjs/components/cookie-consent/CookieConsentModal.cjs.map +0 -1
  65. package/build/cjs/components/cookie-consent/CookieConsentModal.d.cts +0 -3
  66. package/build/cjs/components/cookie-consent/consents/CustomConsents.cjs +0 -2
  67. package/build/cjs/components/cookie-consent/consents/CustomConsents.cjs.map +0 -1
  68. package/build/cjs/components/cookie-consent/consents/CustomConsents.d.cts +0 -9
  69. package/build/cjs/components/cookie-consent/consents/DefaultConsents.cjs +0 -2
  70. package/build/cjs/components/cookie-consent/consents/DefaultConsents.cjs.map +0 -1
  71. package/build/cjs/components/cookie-consent/consents/DefaultConsents.d.cts +0 -9
  72. package/build/cjs/components/cookie-consent/consents/RequirementCheckbox.cjs +0 -2
  73. package/build/cjs/components/cookie-consent/consents/RequirementCheckbox.cjs.map +0 -1
  74. package/build/es/components/cookie-consent/CookieConsentModal.d.ts +0 -3
  75. package/build/es/components/cookie-consent/CookieConsentModal.js +0 -2
  76. package/build/es/components/cookie-consent/CookieConsentModal.js.map +0 -1
  77. package/build/es/components/cookie-consent/consents/CustomConsents.d.ts +0 -9
  78. package/build/es/components/cookie-consent/consents/CustomConsents.js +0 -2
  79. package/build/es/components/cookie-consent/consents/CustomConsents.js.map +0 -1
  80. package/build/es/components/cookie-consent/consents/DefaultConsents.d.ts +0 -9
  81. package/build/es/components/cookie-consent/consents/DefaultConsents.js +0 -2
  82. package/build/es/components/cookie-consent/consents/DefaultConsents.js.map +0 -1
  83. package/build/es/components/cookie-consent/consents/RequirementCheckbox.js +0 -2
  84. package/build/es/components/cookie-consent/consents/RequirementCheckbox.js.map +0 -1
@@ -1,2 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),o=require("react"),t=require("react-dom"),s=require("../../hooks/useId/useId.cjs"),n=require("../modal/Modal.cjs"),r=require("../modal/useModal.cjs"),a=require("./consents/CustomConsents.cjs"),c=require("./consents/DefaultConsents.cjs"),i=require("./CookieConsentContext.cjs"),l=require("./cookieConsentUtils.cjs");exports.CookieConsentModal=({onAccept:u,...d})=>{const{isOpen:C,requirement:j,showSettings:m}=i.useCookieConsentState(),k=o.useCallback((e=>{u("implicit"===e?l.convertBooleanConsentObjectToConsentObject(j):e)}),[u,j]),[q,p]=r.useModal({id:s.useId("jkl-cookie-modal"),role:"alertdialog",title:"Informasjonskapsler"});return o.useEffect((()=>{q&&(C?q.show():q.hide())}),[q,C]),typeof document>"u"?null:t.createPortal(e.jsxs(n.ModalContainer,{...d,...p.container,"data-testautoid":"jkl-cookie-consent-modal",children:[e.jsx(n.ModalOverlay,{...p.overlay}),m?e.jsx(a.CustomConsents,{modalConfig:p,handleAccept:k}):e.jsx(c.DefaultConsents,{modalConfig:p,handleAccept:k})]}),document.body)};
2
- //# sourceMappingURL=CookieConsentModal.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CookieConsentModal.cjs","sources":["../../../../src/components/cookie-consent/CookieConsentModal.tsx"],"sourcesContent":["import React, { FC, useCallback, useEffect } from \"react\";\nimport ReactDOM from \"react-dom\";\nimport { useId } from \"../../hooks/useId/useId.js\";\nimport { ModalContainer, ModalOverlay } from \"../modal/Modal.js\";\nimport { useModal } from \"../modal/useModal.js\";\nimport { CustomConsents } from \"./consents/CustomConsents.js\";\nimport { DefaultConsents } from \"./consents/DefaultConsents.js\";\nimport { useCookieConsentState } from \"./CookieConsentContext.js\";\nimport { convertBooleanConsentObjectToConsentObject } from \"./cookieConsentUtils.js\";\nimport { Consent, ConsentComponentBaseProps } from \"./types.js\";\n\nexport const CookieConsentModal: FC<ConsentComponentBaseProps> = ({\n onAccept,\n ...rest\n}) => {\n const { isOpen, requirement, showSettings } = useCookieConsentState();\n\n const handleAccept = useCallback(\n (v: Consent | \"implicit\") => {\n if (v === \"implicit\") {\n onAccept(\n convertBooleanConsentObjectToConsentObject(requirement),\n );\n } else {\n onAccept(v);\n }\n },\n [onAccept, requirement],\n );\n\n const [instance, modalConfig] = useModal({\n id: useId(\"jkl-cookie-modal\"),\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: \"alertdialog\",\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 (!instance) {\n return;\n }\n if (isOpen) {\n instance.show();\n } else {\n instance.hide();\n }\n }, [instance, isOpen]);\n\n if (typeof document === \"undefined\") {\n return null;\n }\n\n return ReactDOM.createPortal(\n <ModalContainer\n {...rest}\n {...modalConfig.container}\n data-testautoid=\"jkl-cookie-consent-modal\"\n >\n <ModalOverlay {...modalConfig.overlay} />\n {showSettings ? (\n <CustomConsents\n modalConfig={modalConfig}\n handleAccept={handleAccept}\n />\n ) : (\n <DefaultConsents\n modalConfig={modalConfig}\n handleAccept={handleAccept}\n />\n )}\n </ModalContainer>,\n document.body,\n );\n};\n"],"names":["onAccept","rest","isOpen","requirement","showSettings","useCookieConsentState","handleAccept","useCallback","v","convertBooleanConsentObjectToConsentObject","instance","modalConfig","useModal","id","useId","role","title","useEffect","show","hide","document","ReactDOM","createPortal","jsxs","ModalContainer","container","children","jsx","ModalOverlay","overlay","CustomConsents","DefaultConsents","body"],"mappings":"2cAWiE,EAC7DA,SAAAA,KACGC,MAEH,MAAQC,OAAAA,EAAQC,YAAAA,EAAaC,aAAAA,GAAiBC,EAAAA,wBAExCC,EAAeC,EAAAA,aAChBC,IAEOR,EADM,aAANQ,EAEIC,EAAAA,2CAA2CN,GAGtCK,EAFT,GAKR,CAACR,EAAUG,KAGRO,EAAUC,GAAeC,WAAS,CACrCC,GAAIC,QAAM,oBAIVC,KAAM,cAGNC,MAAO,wBAcP,OAXJC,EAAAA,WAAU,KACDP,IAGDR,EACAQ,EAASQ,OAETR,EAASS,UAEd,CAACT,EAAUR,WAEHkB,SAAa,IACb,KAGJC,EAASC,aACZC,EAAAA,KAACC,EAAAA,eAAA,IACOvB,KACAU,EAAYc,UAChB,kBAAgB,2BAEhBC,SAAA,CAACC,EAAAA,IAAAC,EAAAA,aAAA,IAAiBjB,EAAYkB,UAC7BzB,EACGuB,EAAAA,IAACG,EAAAA,eAAA,CACGnB,YAAAA,EACAL,aAAAA,IAGJqB,EAAAA,IAACI,EAAAA,gBAAA,CACGpB,YAAAA,EACAL,aAAAA,OAIZc,SAASY,KACb"}
@@ -1,3 +0,0 @@
1
- import { FC } from 'react';
2
- import { ConsentComponentBaseProps } from './types.cjs';
3
- export declare const CookieConsentModal: FC<ConsentComponentBaseProps>;
@@ -1,2 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),t=require("react"),n=require("../../button/Button.cjs"),s=require("../../list/List.cjs"),r=require("../../list/ListItem.cjs"),i=require("../../modal/Modal.cjs"),o=require("../CookieConsentContext.cjs"),a=require("../cookieConsentUtils.cjs"),l=require("./RequirementCheckbox.cjs");exports.CustomConsents=({modalConfig:c,handleAccept:d})=>{const{consent:k,requirement:m}=o.useCookieConsentState(),u=t.useCallback((e=>{e.preventDefault();const t={},n=Object.entries(m).map((([e,t])=>t?e:void 0)).filter(Boolean),s=new FormData(e.target);n.forEach((e=>{t[e]="True"===s.get(e)})),d(a.convertBooleanConsentObjectToConsentObject(t))}),[d,m]);return e.jsxs(i.Modal,{component:"form",...c.modal,onSubmit:u,children:[e.jsx(i.ModalHeader,{children:e.jsx(i.ModalTitle,{...c.title,children:"Informasjonskapsler"})}),e.jsxs(i.ModalBody,{children:[e.jsx(s.UnorderedList,{className:"jkl-cookie-consent-modal__checklist",children:e.jsx(r.CheckListItem,{children:"Nettsidene skal fungere teknisk"})}),e.jsx("p",{className:"jkl-cookie-consent-modal__info-text",children:"For at nettsidene skal fungere, må vi bruke tekniske informasjonskapsler. Denne kan derfor ikke slås av."}),m.functional&&e.jsx(l.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."}),m.statistics&&e.jsx(l.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."}),m.marketing&&e.jsx(l.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."})]}),e.jsx(i.ModalActions,{children:e.jsx(n.PrimaryButton,{"data-testid":"jkl-cookie-consent-godta",children:"Godta"})})]})};
2
- //# sourceMappingURL=CustomConsents.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CustomConsents.cjs","sources":["../../../../../src/components/cookie-consent/consents/CustomConsents.tsx"],"sourcesContent":["import React, { FC, FormEvent, useCallback } from \"react\";\nimport { PrimaryButton } from \"../../button/Button.js\";\nimport { UnorderedList } from \"../../list/List.js\";\nimport { CheckListItem } from \"../../list/ListItem.js\";\nimport {\n Modal,\n ModalActions,\n ModalBody,\n ModalHeader,\n ModalTitle,\n} from \"../../modal/Modal.js\";\nimport { ModalConfig } from \"../../modal/useModal.js\";\nimport { useCookieConsentState } from \"../CookieConsentContext.js\";\nimport { convertBooleanConsentObjectToConsentObject } from \"../cookieConsentUtils.js\";\nimport { Consent } from \"../types.js\";\nimport { RequirementCheckbox } from \"./RequirementCheckbox.js\";\n\ntype Props = {\n modalConfig: ModalConfig;\n handleAccept: (v: Consent | \"implicit\") => void;\n};\n\nexport const CustomConsents: FC<Props> = ({ modalConfig, handleAccept }) => {\n const { consent, requirement } = useCookieConsentState();\n\n const onSubmit = useCallback(\n (event: FormEvent<HTMLFormElement>) => {\n event.preventDefault();\n\n const formValues: Partial<Record<keyof Consent, boolean>> = {};\n const requiredFormNames = Object.entries(requirement)\n .map(([name, required]) => (required ? name : undefined))\n .filter(Boolean) as Array<keyof Consent>;\n\n const formData = new FormData(event.target as HTMLFormElement);\n requiredFormNames.forEach((name) => {\n formValues[name] = formData.get(name) === \"True\";\n });\n\n handleAccept(\n convertBooleanConsentObjectToConsentObject(formValues),\n );\n },\n [handleAccept, requirement],\n );\n\n return (\n <Modal component=\"form\" {...modalConfig.modal} {...{ onSubmit }}>\n <ModalHeader>\n <ModalTitle {...modalConfig.title}>\n Informasjonskapsler\n </ModalTitle>\n </ModalHeader>\n <ModalBody>\n <UnorderedList className=\"jkl-cookie-consent-modal__checklist\">\n <CheckListItem>\n Nettsidene skal fungere teknisk\n </CheckListItem>\n </UnorderedList>\n <p className=\"jkl-cookie-consent-modal__info-text\">\n For at nettsidene skal fungere, må vi bruke tekniske\n informasjonskapsler. Denne kan derfor ikke slås av.\n </p>\n {requirement.functional && (\n <RequirementCheckbox\n name=\"functional\"\n label=\"Tillat funksjonelle\"\n defaultChecked={consent.functional === \"accepted\"}\n >\n Funksjonelle informasjonskapsler lagrer opplysninger om\n din bruk av nettsidene og hvilke innstillinger du har\n gjort, slik at du kan få funksjonalitet tilpasset deg.\n </RequirementCheckbox>\n )}\n\n {requirement.statistics && (\n <RequirementCheckbox\n name=\"statistics\"\n label=\"Tillat statistikk\"\n defaultChecked={consent.statistics === \"accepted\"}\n >\n Informasjonskapslene lagrer statistikk som hjelper oss\n med å forstå hvordan nettsidene blir brukt, slik at vi\n kan gjøre dem bedre og enklere å bruke.\n </RequirementCheckbox>\n )}\n\n {requirement.marketing && (\n <RequirementCheckbox\n name=\"marketing\"\n label=\"Tillat personlig markedsføring\"\n defaultChecked={consent.marketing === \"accepted\"}\n >\n Dette gjør at vi kan gi deg mer relevant og tilpasset\n markedsføring, også gjennom våre samarbeidspartnere, på\n for eksempel nettsider, annonser og i sosiale medier.\n </RequirementCheckbox>\n )}\n </ModalBody>\n <ModalActions>\n <PrimaryButton data-testid=\"jkl-cookie-consent-godta\">\n Godta\n </PrimaryButton>\n </ModalActions>\n </Modal>\n );\n};\n"],"names":["modalConfig","handleAccept","consent","requirement","useCookieConsentState","onSubmit","useCallback","event","preventDefault","formValues","requiredFormNames","Object","entries","map","name","required","filter","Boolean","formData","FormData","target","forEach","get","convertBooleanConsentObjectToConsentObject","jsxs","Modal","component","modal","children","jsx","ModalHeader","ModalTitle","title","ModalBody","UnorderedList","className","CheckListItem","functional","RequirementCheckbox","label","defaultChecked","statistics","marketing","ModalActions","PrimaryButton"],"mappings":"oaAsByC,EAAGA,YAAAA,EAAaC,aAAAA,MACrD,MAAQC,QAAAA,EAASC,YAAAA,GAAgBC,0BAE3BC,EAAWC,EAAAA,aACZC,IACGA,EAAMC,iBAEN,MAAMC,EAAsD,CAAC,EACvDC,EAAoBC,OAAOC,QAAQT,GACpCU,KAAI,EAAEC,EAAMC,KAAeA,EAAWD,OAAO,IAC7CE,OAAOC,SAENC,EAAW,IAAIC,SAASZ,EAAMa,QAClBV,EAAAW,SAASP,IACvBL,EAAWK,GAA+B,SAAvBI,EAASI,IAAIR,EAAU,IAG9Cb,EACIsB,EAAAA,2CAA2Cd,GAC/C,GAEJ,CAACR,EAAcE,IAIf,OAAAqB,OAACC,EAAAA,MAAM,CAAAC,UAAU,UAAW1B,EAAY2B,MAAatB,SAAAA,EACjDuB,SAAA,CAAAC,EAAAA,IAACC,eACGF,SAACC,EAAAA,IAAAE,EAAAA,WAAA,IAAe/B,EAAYgC,MAAOJ,0CAItCK,EAAAA,UACG,CAAAL,SAAA,CAAAC,EAAAA,IAACK,iBAAcC,UAAU,sCACrBP,SAACC,MAAAO,EAAAA,cAAA,CAAcR,+CAIlBC,EAAAA,IAAA,IAAA,CAAEM,UAAU,sCAAsCP,SAGnD,6GACCzB,EAAYkC,YACTR,EAAAA,IAACS,EAAAA,oBAAA,CACGxB,KAAK,aACLyB,MAAM,sBACNC,eAAuC,aAAvBtC,EAAQmC,WAC3BT,SAAA,yKAOJzB,EAAYsC,YACTZ,EAAAA,IAACS,EAAAA,oBAAA,CACGxB,KAAK,aACLyB,MAAM,oBACNC,eAAuC,aAAvBtC,EAAQuC,WAC3Bb,SAAA,0JAOJzB,EAAYuC,WACTb,EAAAA,IAACS,EAAAA,oBAAA,CACGxB,KAAK,YACLyB,MAAM,iCACNC,eAAsC,aAAtBtC,EAAQwC,UAC3Bd,SAAA,iLAORe,EACGA,aAAA,CAAAf,SAAAC,MAACe,EAAAA,eAAc,cAAY,2BAA2BhB,uBAI9D"}
@@ -1,9 +0,0 @@
1
- import { FC } from 'react';
2
- import { ModalConfig } from '../../modal/useModal.cjs';
3
- import { Consent } from '../types.cjs';
4
- type Props = {
5
- modalConfig: ModalConfig;
6
- handleAccept: (v: Consent | "implicit") => void;
7
- };
8
- export declare const CustomConsents: FC<Props>;
9
- export {};
@@ -1,2 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),t=require("react"),s=require("../../button/Button.cjs"),i=require("../../list/List.cjs"),n=require("../../list/ListItem.cjs"),r=require("../../modal/Modal.cjs"),o=require("../CookieConsentContext.cjs");exports.DefaultConsents=({modalConfig:l,handleAccept:a})=>{const{dispatch:d,requirement:c}=o.useCookieConsentState(),u=t.useCallback((e=>{e.preventDefault(),a("implicit")}),[a]);return e.jsxs(r.Modal,{component:"form",...l.modal,onSubmit:u,children:[e.jsx(r.ModalHeader,{children:e.jsx(r.ModalTitle,{...l.title,children:"Vi bruker informasjonskapsler slik at:"})}),e.jsx(r.ModalBody,{children:e.jsxs(i.UnorderedList,{className:"jkl-cookie-consent-modal__checklist",children:[e.jsx(n.CheckListItem,{children:"Nettsidene skal fungere teknisk"}),c.functional&&e.jsx(n.CheckListItem,{children:"Nettsidene skal tilpasses din bruk, dine valg og dine innstillinger."}),c.statistics&&e.jsx(n.CheckListItem,{children:"Vi kan samle statistikk på hvordan nettsidene brukes og dermed kunne forbedre tjenestene våre."}),c.marketing&&e.jsx(n.CheckListItem,{children:"Vi kan gi deg personlig tilpasset innhold og relevante annonser, også gjennom våre samarbeidspartnere, på for eksempel nettsider og i sosiale medier."})]})}),e.jsxs(r.ModalActions,{children:[e.jsx(s.PrimaryButton,{"data-testid":"jkl-cookie-consent-godta",...l.closeButton,type:"submit",children:"Godta"}),e.jsx(s.TertiaryButton,{type:"button",onClick:()=>{d({type:"SET_SHOW_SETTINGS",payload:!0})},children:"Innstillinger"})]})]})};
2
- //# sourceMappingURL=DefaultConsents.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DefaultConsents.cjs","sources":["../../../../../src/components/cookie-consent/consents/DefaultConsents.tsx"],"sourcesContent":["import React, { FC, FormEvent, useCallback } from \"react\";\nimport { PrimaryButton, TertiaryButton } from \"../../button/Button.js\";\nimport { UnorderedList } from \"../../list/List.js\";\nimport { CheckListItem } from \"../../list/ListItem.js\";\nimport {\n Modal,\n ModalActions,\n ModalBody,\n ModalHeader,\n ModalTitle,\n} from \"../../modal/Modal.js\";\nimport { ModalConfig } from \"../../modal/useModal.js\";\nimport { useCookieConsentState } from \"../CookieConsentContext.js\";\nimport { Consent } from \"../types.js\";\n\ntype Props = {\n modalConfig: ModalConfig;\n handleAccept: (v: Consent | \"implicit\") => void;\n};\n\nexport const DefaultConsents: FC<Props> = ({ modalConfig, handleAccept }) => {\n const { dispatch, requirement } = useCookieConsentState();\n\n const onSubmit = useCallback(\n (event: FormEvent<HTMLFormElement>) => {\n event.preventDefault();\n handleAccept(\"implicit\");\n },\n [handleAccept],\n );\n\n return (\n <Modal component=\"form\" {...modalConfig.modal} {...{ onSubmit }}>\n <ModalHeader>\n <ModalTitle {...modalConfig.title}>\n Vi bruker informasjonskapsler slik at:\n </ModalTitle>\n </ModalHeader>\n <ModalBody>\n <UnorderedList className=\"jkl-cookie-consent-modal__checklist\">\n <CheckListItem>\n Nettsidene skal fungere teknisk\n </CheckListItem>\n {requirement.functional && (\n <CheckListItem>\n Nettsidene skal tilpasses din bruk, dine valg og\n dine innstillinger.\n </CheckListItem>\n )}\n {requirement.statistics && (\n <CheckListItem>\n Vi kan samle statistikk på hvordan nettsidene brukes\n og dermed kunne forbedre tjenestene våre.\n </CheckListItem>\n )}\n {requirement.marketing && (\n <CheckListItem>\n Vi kan gi deg personlig tilpasset innhold og\n relevante annonser, også gjennom våre\n samarbeidspartnere, på for eksempel nettsider og i\n sosiale medier.\n </CheckListItem>\n )}\n </UnorderedList>\n </ModalBody>\n <ModalActions>\n <PrimaryButton\n data-testid=\"jkl-cookie-consent-godta\"\n {...modalConfig.closeButton}\n type={\"submit\"}\n >\n Godta\n </PrimaryButton>\n\n <TertiaryButton\n type=\"button\"\n onClick={() => {\n dispatch({ type: \"SET_SHOW_SETTINGS\", payload: true });\n }}\n >\n Innstillinger\n </TertiaryButton>\n </ModalActions>\n </Modal>\n );\n};\n"],"names":["modalConfig","handleAccept","dispatch","requirement","useCookieConsentState","onSubmit","useCallback","event","preventDefault","jsxs","Modal","component","modal","children","jsx","ModalHeader","ModalTitle","title","ModalBody","UnorderedList","className","CheckListItem","functional","statistics","marketing","ModalActions","PrimaryButton","closeButton","type","TertiaryButton","onClick","payload"],"mappings":"uVAoB0C,EAAGA,YAAAA,EAAaC,aAAAA,MACtD,MAAQC,SAAAA,EAAUC,YAAAA,GAAgBC,0BAE5BC,EAAWC,EAAAA,aACZC,IACGA,EAAMC,iBACNP,EAAa,WAAU,GAE3B,CAACA,IAID,OAAAQ,OAACC,EAAAA,MAAM,CAAAC,UAAU,UAAWX,EAAYY,MAAaP,SAAAA,EACjDQ,SAAA,CAAAC,EAAAA,IAACC,eACGF,SAACC,EAAAA,IAAAE,EAAAA,WAAA,IAAehB,EAAYiB,MAAOJ,sDAItCC,MAAAI,EAAAA,UAAA,CACGL,SAACJ,EAAAA,KAAAU,EAAAA,cAAA,CAAcC,UAAU,sCACrBP,SAAA,CAAAC,EAAAA,IAACO,iBAAcR,SAEf,oCACCV,EAAYmB,YACRR,EAAAA,IAAAO,EAAAA,cAAA,CAAcR,SAGf,yEAEHV,EAAYoB,YACRT,EAAAA,IAAAO,EAAAA,cAAA,CAAcR,SAGf,mGAEHV,EAAYqB,WACRV,EAAAA,IAAAO,EAAAA,cAAA,CAAcR,SAKf,sKAIXY,EAAAA,aACG,CAAAZ,SAAA,CAAAC,EAAAA,IAACY,EAAAA,cAAA,CACG,cAAY,8BACR1B,EAAY2B,YAChBC,KAAM,SACTf,SAAA,UAIDC,EAAAA,IAACe,EAAAA,eAAA,CACGD,KAAK,SACLE,QAAS,KACL5B,EAAS,CAAE0B,KAAM,oBAAqBG,SAAS,GAAM,EAE5DlB,SAAA,uBAIT"}
@@ -1,9 +0,0 @@
1
- import { FC } from 'react';
2
- import { ModalConfig } from '../../modal/useModal.cjs';
3
- import { Consent } from '../types.cjs';
4
- type Props = {
5
- modalConfig: ModalConfig;
6
- handleAccept: (v: Consent | "implicit") => void;
7
- };
8
- export declare const DefaultConsents: FC<Props>;
9
- export {};
@@ -1,2 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),c=require("../../checkbox/Checkbox.cjs");exports.RequirementCheckbox=({defaultChecked:o,name:r,label:t,children:l})=>e.jsxs(e.Fragment,{children:[e.jsx(c.Checkbox,{className:"jkl-cookie-consent-modal__checkbox",value:"True",name:r,defaultChecked:o,children:t}),e.jsx("p",{className:"jkl-cookie-consent-modal__info-text",children:l})]});
2
- //# sourceMappingURL=RequirementCheckbox.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"RequirementCheckbox.cjs","sources":["../../../../../src/components/cookie-consent/consents/RequirementCheckbox.tsx"],"sourcesContent":["import React from \"react\";\nimport { WithChildren } from \"../../../core/types.js\";\nimport { Checkbox } from \"../../checkbox/Checkbox.js\";\n\ninterface RequirementCheckboxProps extends WithChildren {\n defaultChecked: boolean;\n name: \"functional\" | \"marketing\" | \"statistics\";\n label: string;\n}\n\nexport const RequirementCheckbox = ({\n defaultChecked,\n name,\n label,\n children,\n}: RequirementCheckboxProps) => {\n return (\n <>\n <Checkbox\n className=\"jkl-cookie-consent-modal__checkbox\"\n value=\"True\"\n name={name}\n defaultChecked={defaultChecked}\n >\n {label}\n </Checkbox>\n <p className=\"jkl-cookie-consent-modal__info-text\">{children}</p>\n </>\n );\n};\n"],"names":["defaultChecked","name","label","children","jsxs","Fragment","jsx","Checkbox","className","value"],"mappings":"0LAUmC,EAC/BA,eAAAA,EACAC,KAAAA,EACAC,MAAAA,EACAC,SAAAA,KAIQC,EAAAA,KAAAC,WAAA,CAAAF,SAAA,CAAAG,EAAAA,IAACC,EAAAA,SAAA,CACGC,UAAU,qCACVC,MAAM,OACNR,KAAAA,EACAD,eAAAA,EAECG,SAAAD,IAEJI,EAAAA,IAAA,IAAA,CAAEE,UAAU,sCAAuCL,SAAAA"}
@@ -1,3 +0,0 @@
1
- import { FC } from 'react';
2
- import { ConsentComponentBaseProps } from './types.js';
3
- export declare const CookieConsentModal: FC<ConsentComponentBaseProps>;
@@ -1,2 +0,0 @@
1
- import{jsxs as o,jsx as e}from"react/jsx-runtime";import{useCallback as s,useEffect as t}from"react";import n from"react-dom";import{useId as a}from"../../hooks/useId/useId.js";import{ModalContainer as r,ModalOverlay as m}from"../modal/Modal.js";import{useModal as i}from"../modal/useModal.js";import{CustomConsents as l}from"./consents/CustomConsents.js";import{DefaultConsents as c}from"./consents/DefaultConsents.js";import{useCookieConsentState as d}from"./CookieConsentContext.js";import{convertBooleanConsentObjectToConsentObject as u}from"./cookieConsentUtils.js";const C=({onAccept:C,...f})=>{const{isOpen:p,requirement:j,showSettings:k}=d(),h=s((o=>{C("implicit"===o?u(j):o)}),[C,j]),[M,x]=i({id:a("jkl-cookie-modal"),role:"alertdialog",title:"Informasjonskapsler"});return t((()=>{M&&(p?M.show():M.hide())}),[M,p]),typeof document>"u"?null:n.createPortal(o(r,{...f,...x.container,"data-testautoid":"jkl-cookie-consent-modal",children:[e(m,{...x.overlay}),e(k?l:c,{modalConfig:x,handleAccept:h})]}),document.body)};export{C as CookieConsentModal};
2
- //# sourceMappingURL=CookieConsentModal.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CookieConsentModal.js","sources":["../../../../src/components/cookie-consent/CookieConsentModal.tsx"],"sourcesContent":["import React, { FC, useCallback, useEffect } from \"react\";\nimport ReactDOM from \"react-dom\";\nimport { useId } from \"../../hooks/useId/useId.js\";\nimport { ModalContainer, ModalOverlay } from \"../modal/Modal.js\";\nimport { useModal } from \"../modal/useModal.js\";\nimport { CustomConsents } from \"./consents/CustomConsents.js\";\nimport { DefaultConsents } from \"./consents/DefaultConsents.js\";\nimport { useCookieConsentState } from \"./CookieConsentContext.js\";\nimport { convertBooleanConsentObjectToConsentObject } from \"./cookieConsentUtils.js\";\nimport { Consent, ConsentComponentBaseProps } from \"./types.js\";\n\nexport const CookieConsentModal: FC<ConsentComponentBaseProps> = ({\n onAccept,\n ...rest\n}) => {\n const { isOpen, requirement, showSettings } = useCookieConsentState();\n\n const handleAccept = useCallback(\n (v: Consent | \"implicit\") => {\n if (v === \"implicit\") {\n onAccept(\n convertBooleanConsentObjectToConsentObject(requirement),\n );\n } else {\n onAccept(v);\n }\n },\n [onAccept, requirement],\n );\n\n const [instance, modalConfig] = useModal({\n id: useId(\"jkl-cookie-modal\"),\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: \"alertdialog\",\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 (!instance) {\n return;\n }\n if (isOpen) {\n instance.show();\n } else {\n instance.hide();\n }\n }, [instance, isOpen]);\n\n if (typeof document === \"undefined\") {\n return null;\n }\n\n return ReactDOM.createPortal(\n <ModalContainer\n {...rest}\n {...modalConfig.container}\n data-testautoid=\"jkl-cookie-consent-modal\"\n >\n <ModalOverlay {...modalConfig.overlay} />\n {showSettings ? (\n <CustomConsents\n modalConfig={modalConfig}\n handleAccept={handleAccept}\n />\n ) : (\n <DefaultConsents\n modalConfig={modalConfig}\n handleAccept={handleAccept}\n />\n )}\n </ModalContainer>,\n document.body,\n );\n};\n"],"names":["CookieConsentModal","onAccept","rest","isOpen","requirement","showSettings","useCookieConsentState","handleAccept","useCallback","v","convertBooleanConsentObjectToConsentObject","instance","modalConfig","useModal","id","useId","role","title","useEffect","show","hide","document","ReactDOM","createPortal","jsxs","ModalContainer","container","children","jsx","ModalOverlay","overlay","CustomConsents","DefaultConsents","body"],"mappings":"2jBAWO,MAAMA,EAAoD,EAC7DC,SAAAA,KACGC,MAEG,MAAEC,OAAAA,EAAQC,YAAAA,EAAaC,aAAAA,GAAiBC,IAExCC,EAAeC,GAChBC,IAEOR,EADM,aAANQ,EAEIC,EAA2CN,GAGtCK,EAFT,GAKR,CAACR,EAAUG,KAGRO,EAAUC,GAAeC,EAAS,CACrCC,GAAIC,EAAM,oBAIVC,KAAM,cAGNC,MAAO,wBAcP,OAXJC,GAAU,KACDP,IAGDR,EACAQ,EAASQ,OAETR,EAASS,OAAK,GAEnB,CAACT,EAAUR,WAEHkB,SAAa,IACb,KAGJC,EAASC,aACZC,EAACC,EAAA,IACOvB,KACAU,EAAYc,UAChB,kBAAgB,2BAEhBC,SAAA,CAACC,EAAAC,EAAA,IAAiBjB,EAAYkB,UAE1BF,EADHvB,EACI0B,EAKAC,EALA,CACGpB,YAAAA,EACAL,aAAAA,OASZc,SAASY,KACb"}
@@ -1,9 +0,0 @@
1
- import { FC } from 'react';
2
- import { ModalConfig } from '../../modal/useModal.js';
3
- import { Consent } from '../types.js';
4
- type Props = {
5
- modalConfig: ModalConfig;
6
- handleAccept: (v: Consent | "implicit") => void;
7
- };
8
- export declare const CustomConsents: FC<Props>;
9
- export {};
@@ -1,2 +0,0 @@
1
- import{jsxs as e,jsx as t}from"react/jsx-runtime";import{useCallback as n}from"react";import{PrimaryButton as s}from"../../button/Button.js";import{UnorderedList as o}from"../../list/List.js";import{CheckListItem as a}from"../../list/ListItem.js";import{Modal as r,ModalHeader as i,ModalTitle as l,ModalBody as d,ModalActions as m}from"../../modal/Modal.js";import{useCookieConsentState as c}from"../CookieConsentContext.js";import{convertBooleanConsentObjectToConsentObject as k}from"../cookieConsentUtils.js";import{RequirementCheckbox as f}from"./RequirementCheckbox.js";const p=({modalConfig:p,handleAccept:u})=>{const{consent:g,requirement:j}=c(),h=n((e=>{e.preventDefault();const t={},n=Object.entries(j).map((([e,t])=>t?e:void 0)).filter(Boolean),s=new FormData(e.target);n.forEach((e=>{t[e]="True"===s.get(e)})),u(k(t))}),[u,j]);return e(r,{component:"form",...p.modal,onSubmit:h,children:[t(i,{children:t(l,{...p.title,children:"Informasjonskapsler"})}),e(d,{children:[t(o,{className:"jkl-cookie-consent-modal__checklist",children:t(a,{children:"Nettsidene skal fungere teknisk"})}),t("p",{className:"jkl-cookie-consent-modal__info-text",children:"For at nettsidene skal fungere, må vi bruke tekniske informasjonskapsler. Denne kan derfor ikke slås av."}),j.functional&&t(f,{name:"functional",label:"Tillat funksjonelle",defaultChecked:"accepted"===g.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."}),j.statistics&&t(f,{name:"statistics",label:"Tillat statistikk",defaultChecked:"accepted"===g.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."}),j.marketing&&t(f,{name:"marketing",label:"Tillat personlig markedsføring",defaultChecked:"accepted"===g.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."})]}),t(m,{children:t(s,{"data-testid":"jkl-cookie-consent-godta",children:"Godta"})})]})};export{p as CustomConsents};
2
- //# sourceMappingURL=CustomConsents.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CustomConsents.js","sources":["../../../../../src/components/cookie-consent/consents/CustomConsents.tsx"],"sourcesContent":["import React, { FC, FormEvent, useCallback } from \"react\";\nimport { PrimaryButton } from \"../../button/Button.js\";\nimport { UnorderedList } from \"../../list/List.js\";\nimport { CheckListItem } from \"../../list/ListItem.js\";\nimport {\n Modal,\n ModalActions,\n ModalBody,\n ModalHeader,\n ModalTitle,\n} from \"../../modal/Modal.js\";\nimport { ModalConfig } from \"../../modal/useModal.js\";\nimport { useCookieConsentState } from \"../CookieConsentContext.js\";\nimport { convertBooleanConsentObjectToConsentObject } from \"../cookieConsentUtils.js\";\nimport { Consent } from \"../types.js\";\nimport { RequirementCheckbox } from \"./RequirementCheckbox.js\";\n\ntype Props = {\n modalConfig: ModalConfig;\n handleAccept: (v: Consent | \"implicit\") => void;\n};\n\nexport const CustomConsents: FC<Props> = ({ modalConfig, handleAccept }) => {\n const { consent, requirement } = useCookieConsentState();\n\n const onSubmit = useCallback(\n (event: FormEvent<HTMLFormElement>) => {\n event.preventDefault();\n\n const formValues: Partial<Record<keyof Consent, boolean>> = {};\n const requiredFormNames = Object.entries(requirement)\n .map(([name, required]) => (required ? name : undefined))\n .filter(Boolean) as Array<keyof Consent>;\n\n const formData = new FormData(event.target as HTMLFormElement);\n requiredFormNames.forEach((name) => {\n formValues[name] = formData.get(name) === \"True\";\n });\n\n handleAccept(\n convertBooleanConsentObjectToConsentObject(formValues),\n );\n },\n [handleAccept, requirement],\n );\n\n return (\n <Modal component=\"form\" {...modalConfig.modal} {...{ onSubmit }}>\n <ModalHeader>\n <ModalTitle {...modalConfig.title}>\n Informasjonskapsler\n </ModalTitle>\n </ModalHeader>\n <ModalBody>\n <UnorderedList className=\"jkl-cookie-consent-modal__checklist\">\n <CheckListItem>\n Nettsidene skal fungere teknisk\n </CheckListItem>\n </UnorderedList>\n <p className=\"jkl-cookie-consent-modal__info-text\">\n For at nettsidene skal fungere, må vi bruke tekniske\n informasjonskapsler. Denne kan derfor ikke slås av.\n </p>\n {requirement.functional && (\n <RequirementCheckbox\n name=\"functional\"\n label=\"Tillat funksjonelle\"\n defaultChecked={consent.functional === \"accepted\"}\n >\n Funksjonelle informasjonskapsler lagrer opplysninger om\n din bruk av nettsidene og hvilke innstillinger du har\n gjort, slik at du kan få funksjonalitet tilpasset deg.\n </RequirementCheckbox>\n )}\n\n {requirement.statistics && (\n <RequirementCheckbox\n name=\"statistics\"\n label=\"Tillat statistikk\"\n defaultChecked={consent.statistics === \"accepted\"}\n >\n Informasjonskapslene lagrer statistikk som hjelper oss\n med å forstå hvordan nettsidene blir brukt, slik at vi\n kan gjøre dem bedre og enklere å bruke.\n </RequirementCheckbox>\n )}\n\n {requirement.marketing && (\n <RequirementCheckbox\n name=\"marketing\"\n label=\"Tillat personlig markedsføring\"\n defaultChecked={consent.marketing === \"accepted\"}\n >\n Dette gjør at vi kan gi deg mer relevant og tilpasset\n markedsføring, også gjennom våre samarbeidspartnere, på\n for eksempel nettsider, annonser og i sosiale medier.\n </RequirementCheckbox>\n )}\n </ModalBody>\n <ModalActions>\n <PrimaryButton data-testid=\"jkl-cookie-consent-godta\">\n Godta\n </PrimaryButton>\n </ModalActions>\n </Modal>\n );\n};\n"],"names":["CustomConsents","modalConfig","handleAccept","consent","requirement","useCookieConsentState","onSubmit","useCallback","event","preventDefault","formValues","requiredFormNames","Object","entries","map","name","required","filter","Boolean","formData","FormData","target","forEach","get","convertBooleanConsentObjectToConsentObject","jsxs","Modal","component","modal","children","jsx","ModalHeader","ModalTitle","title","ModalBody","UnorderedList","className","CheckListItem","functional","RequirementCheckbox","label","defaultChecked","statistics","marketing","ModalActions","PrimaryButton"],"mappings":"8jBAsBO,MAAMA,EAA4B,EAAGC,YAAAA,EAAaC,aAAAA,MAC/C,MAAEC,QAAAA,EAASC,YAAAA,GAAgBC,IAE3BC,EAAWC,GACZC,IACGA,EAAMC,iBAEAC,MAAAA,EAAsD,CAAC,EACvDC,EAAoBC,OAAOC,QAAQT,GACpCU,KAAI,EAAEC,EAAMC,KAAeA,EAAWD,OAAO,IAC7CE,OAAOC,SAENC,EAAW,IAAIC,SAASZ,EAAMa,QAClBV,EAAAW,SAASP,IACvBL,EAAWK,GAA+B,SAAvBI,EAASI,IAAIR,EAAU,IAG9Cb,EACIsB,EAA2Cd,GAC/C,GAEJ,CAACR,EAAcE,IAIf,OAAAqB,EAACC,EAAM,CAAAC,UAAU,UAAW1B,EAAY2B,MAAatB,SAAAA,EACjDuB,SAAA,CAAAC,EAACC,GACGF,SAACC,EAAAE,EAAA,IAAe/B,EAAYgC,MAAOJ,qCAItCK,EACG,CAAAL,SAAA,CAAAC,EAACK,GAAcC,UAAU,sCACrBP,SAACC,EAAAO,EAAA,CAAcR,+CAIlBC,EAAA,IAAA,CAAEM,UAAU,sCAAsCP,SAGnD,6GACCzB,EAAYkC,YACTR,EAACS,EAAA,CACGxB,KAAK,aACLyB,MAAM,sBACNC,eAAuC,aAAvBtC,EAAQmC,WAC3BT,SAAA,yKAOJzB,EAAYsC,YACTZ,EAACS,EAAA,CACGxB,KAAK,aACLyB,MAAM,oBACNC,eAAuC,aAAvBtC,EAAQuC,WAC3Bb,SAAA,0JAOJzB,EAAYuC,WACTb,EAACS,EAAA,CACGxB,KAAK,YACLyB,MAAM,iCACNC,eAAsC,aAAtBtC,EAAQwC,UAC3Bd,SAAA,6KAORe,EACG,CAAAf,SAAAC,EAACe,GAAc,cAAY,2BAA2BhB,uBAI9D"}
@@ -1,9 +0,0 @@
1
- import { FC } from 'react';
2
- import { ModalConfig } from '../../modal/useModal.js';
3
- import { Consent } from '../types.js';
4
- type Props = {
5
- modalConfig: ModalConfig;
6
- handleAccept: (v: Consent | "implicit") => void;
7
- };
8
- export declare const DefaultConsents: FC<Props>;
9
- export {};
@@ -1,2 +0,0 @@
1
- import{jsxs as e,jsx as t}from"react/jsx-runtime";import{useCallback as n}from"react";import{PrimaryButton as s,TertiaryButton as i}from"../../button/Button.js";import{UnorderedList as o}from"../../list/List.js";import{CheckListItem as r}from"../../list/ListItem.js";import{Modal as a,ModalHeader as l,ModalTitle as d,ModalBody as m,ModalActions as c}from"../../modal/Modal.js";import{useCookieConsentState as k}from"../CookieConsentContext.js";const p=({modalConfig:p,handleAccept:u})=>{const{dispatch:h,requirement:f}=k(),g=n((e=>{e.preventDefault(),u("implicit")}),[u]);return e(a,{component:"form",...p.modal,onSubmit:g,children:[t(l,{children:t(d,{...p.title,children:"Vi bruker informasjonskapsler slik at:"})}),t(m,{children:e(o,{className:"jkl-cookie-consent-modal__checklist",children:[t(r,{children:"Nettsidene skal fungere teknisk"}),f.functional&&t(r,{children:"Nettsidene skal tilpasses din bruk, dine valg og dine innstillinger."}),f.statistics&&t(r,{children:"Vi kan samle statistikk på hvordan nettsidene brukes og dermed kunne forbedre tjenestene våre."}),f.marketing&&t(r,{children:"Vi kan gi deg personlig tilpasset innhold og relevante annonser, også gjennom våre samarbeidspartnere, på for eksempel nettsider og i sosiale medier."})]})}),e(c,{children:[t(s,{"data-testid":"jkl-cookie-consent-godta",...p.closeButton,type:"submit",children:"Godta"}),t(i,{type:"button",onClick:()=>{h({type:"SET_SHOW_SETTINGS",payload:!0})},children:"Innstillinger"})]})]})};export{p as DefaultConsents};
2
- //# sourceMappingURL=DefaultConsents.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DefaultConsents.js","sources":["../../../../../src/components/cookie-consent/consents/DefaultConsents.tsx"],"sourcesContent":["import React, { FC, FormEvent, useCallback } from \"react\";\nimport { PrimaryButton, TertiaryButton } from \"../../button/Button.js\";\nimport { UnorderedList } from \"../../list/List.js\";\nimport { CheckListItem } from \"../../list/ListItem.js\";\nimport {\n Modal,\n ModalActions,\n ModalBody,\n ModalHeader,\n ModalTitle,\n} from \"../../modal/Modal.js\";\nimport { ModalConfig } from \"../../modal/useModal.js\";\nimport { useCookieConsentState } from \"../CookieConsentContext.js\";\nimport { Consent } from \"../types.js\";\n\ntype Props = {\n modalConfig: ModalConfig;\n handleAccept: (v: Consent | \"implicit\") => void;\n};\n\nexport const DefaultConsents: FC<Props> = ({ modalConfig, handleAccept }) => {\n const { dispatch, requirement } = useCookieConsentState();\n\n const onSubmit = useCallback(\n (event: FormEvent<HTMLFormElement>) => {\n event.preventDefault();\n handleAccept(\"implicit\");\n },\n [handleAccept],\n );\n\n return (\n <Modal component=\"form\" {...modalConfig.modal} {...{ onSubmit }}>\n <ModalHeader>\n <ModalTitle {...modalConfig.title}>\n Vi bruker informasjonskapsler slik at:\n </ModalTitle>\n </ModalHeader>\n <ModalBody>\n <UnorderedList className=\"jkl-cookie-consent-modal__checklist\">\n <CheckListItem>\n Nettsidene skal fungere teknisk\n </CheckListItem>\n {requirement.functional && (\n <CheckListItem>\n Nettsidene skal tilpasses din bruk, dine valg og\n dine innstillinger.\n </CheckListItem>\n )}\n {requirement.statistics && (\n <CheckListItem>\n Vi kan samle statistikk på hvordan nettsidene brukes\n og dermed kunne forbedre tjenestene våre.\n </CheckListItem>\n )}\n {requirement.marketing && (\n <CheckListItem>\n Vi kan gi deg personlig tilpasset innhold og\n relevante annonser, også gjennom våre\n samarbeidspartnere, på for eksempel nettsider og i\n sosiale medier.\n </CheckListItem>\n )}\n </UnorderedList>\n </ModalBody>\n <ModalActions>\n <PrimaryButton\n data-testid=\"jkl-cookie-consent-godta\"\n {...modalConfig.closeButton}\n type={\"submit\"}\n >\n Godta\n </PrimaryButton>\n\n <TertiaryButton\n type=\"button\"\n onClick={() => {\n dispatch({ type: \"SET_SHOW_SETTINGS\", payload: true });\n }}\n >\n Innstillinger\n </TertiaryButton>\n </ModalActions>\n </Modal>\n );\n};\n"],"names":["DefaultConsents","modalConfig","handleAccept","dispatch","requirement","useCookieConsentState","onSubmit","useCallback","event","preventDefault","jsxs","Modal","component","modal","children","jsx","ModalHeader","ModalTitle","title","ModalBody","UnorderedList","className","CheckListItem","functional","statistics","marketing","ModalActions","PrimaryButton","closeButton","type","TertiaryButton","onClick","payload"],"mappings":"6bAoBO,MAAMA,EAA6B,EAAGC,YAAAA,EAAaC,aAAAA,MAChD,MAAEC,SAAAA,EAAUC,YAAAA,GAAgBC,IAE5BC,EAAWC,GACZC,IACGA,EAAMC,iBACNP,EAAa,WAAU,GAE3B,CAACA,IAID,OAAAQ,EAACC,EAAM,CAAAC,UAAU,UAAWX,EAAYY,MAAaP,SAAAA,EACjDQ,SAAA,CAAAC,EAACC,GACGF,SAACC,EAAAE,EAAA,IAAehB,EAAYiB,MAAOJ,sDAItCC,EAAAI,EAAA,CACGL,SAACJ,EAAAU,EAAA,CAAcC,UAAU,sCACrBP,SAAA,CAAAC,EAACO,GAAcR,SAEf,oCACCV,EAAYmB,YACRR,EAAAO,EAAA,CAAcR,SAGf,yEAEHV,EAAYoB,YACRT,EAAAO,EAAA,CAAcR,SAGf,mGAEHV,EAAYqB,WACRV,EAAAO,EAAA,CAAcR,SAKf,iKAIXY,EACG,CAAAZ,SAAA,CAAAC,EAACY,EAAA,CACG,cAAY,8BACR1B,EAAY2B,YAChBC,KAAM,SACTf,SAAA,UAIDC,EAACe,EAAA,CACGD,KAAK,SACLE,QAAS,KACL5B,EAAS,CAAE0B,KAAM,oBAAqBG,SAAS,GAAM,EAE5DlB,SAAA,uBAIT"}
@@ -1,2 +0,0 @@
1
- import{jsxs as e,Fragment as c,jsx as o}from"react/jsx-runtime";import{Checkbox as a}from"../../checkbox/Checkbox.js";const s=({defaultChecked:s,name:l,label:n,children:r})=>e(c,{children:[o(a,{className:"jkl-cookie-consent-modal__checkbox",value:"True",name:l,defaultChecked:s,children:n}),o("p",{className:"jkl-cookie-consent-modal__info-text",children:r})]});export{s as RequirementCheckbox};
2
- //# sourceMappingURL=RequirementCheckbox.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"RequirementCheckbox.js","sources":["../../../../../src/components/cookie-consent/consents/RequirementCheckbox.tsx"],"sourcesContent":["import React from \"react\";\nimport { WithChildren } from \"../../../core/types.js\";\nimport { Checkbox } from \"../../checkbox/Checkbox.js\";\n\ninterface RequirementCheckboxProps extends WithChildren {\n defaultChecked: boolean;\n name: \"functional\" | \"marketing\" | \"statistics\";\n label: string;\n}\n\nexport const RequirementCheckbox = ({\n defaultChecked,\n name,\n label,\n children,\n}: RequirementCheckboxProps) => {\n return (\n <>\n <Checkbox\n className=\"jkl-cookie-consent-modal__checkbox\"\n value=\"True\"\n name={name}\n defaultChecked={defaultChecked}\n >\n {label}\n </Checkbox>\n <p className=\"jkl-cookie-consent-modal__info-text\">{children}</p>\n </>\n );\n};\n"],"names":["RequirementCheckbox","defaultChecked","name","label","children","jsxs","Fragment","jsx","Checkbox","className","value"],"mappings":"sHAUO,MAAMA,EAAsB,EAC/BC,eAAAA,EACAC,KAAAA,EACAC,MAAAA,EACAC,SAAAA,KAIQC,EAAAC,EAAA,CAAAF,SAAA,CAAAG,EAACC,EAAA,CACGC,UAAU,qCACVC,MAAM,OACNR,KAAAA,EACAD,eAAAA,EAECG,SAAAD,IAEJI,EAAA,IAAA,CAAEE,UAAU,sCAAuCL,SAAAA"}