digitalmarketplace-frontend
Version:
Digital Marketplace Frontend contains assets and components used in Digital Marketplace projects
1 lines • 4.66 kB
Source Map (JSON)
{"version":3,"file":"cookie-banner.mjs","sources":["../../../../src/digitalmarketplace/components/cookie-banner/cookie-banner.ts"],"sourcesContent":["import { DigitalMarketplaceFrontendComponent } from '../../digitalmarketplace-frontend-component'\nimport { getCookiePreferences, setCookiePreferences } from '../../scripts/cookies/manage'\n\nclass CookieBanner implements DigitalMarketplaceFrontendComponent {\n static moduleName = 'dm-cookie-banner'\n\n $module: JQuery<HTMLElement>\n $cookieBannerMainContent: JQuery<HTMLElement>\n $cookieBannerConfirmationContent: JQuery<HTMLElement>\n $cookieBannerConfirmationMessage: JQuery<HTMLElement>\n $hideLink: JQuery<HTMLElement>\n $acceptCookiesLink: JQuery<HTMLElement>\n $rejectCookiesLink: JQuery<HTMLElement>\n\n constructor ($module: JQuery<HTMLElement>) {\n this.$module = $module\n this.$cookieBannerMainContent = this.$module.find('.dm-cookie-banner__button--main')\n this.$cookieBannerConfirmationContent = this.$module.find('.dm-cookie-banner--selection-made')\n this.$cookieBannerConfirmationMessage = this.$module.find('.dm-cookie-banner__confirmation-message')\n this.$hideLink = this.$module.find('button[data-hide-cookie-banner]')\n this.$acceptCookiesLink = this.$module.find('button[data-accept-cookies=true]')\n this.$rejectCookiesLink = this.$module.find('button[data-accept-cookies=false]')\n }\n\n init () {\n this.$hideLink.on('click', (event) => {\n this.hideCookieMessage(event)\n })\n\n this.$acceptCookiesLink.on('click', () => {\n this.setCookieConsent(true)\n })\n\n this.$rejectCookiesLink.on('click', () => {\n this.setCookieConsent(false)\n })\n\n this.showCookieMessage()\n }\n\n setCookieConsent (analyticsConsent: boolean) {\n setCookiePreferences(analyticsConsent)\n\n this.showConfirmationMessage(analyticsConsent)\n this.$cookieBannerConfirmationContent.trigger('focus')\n }\n\n showCookieMessage () {\n // Show the cookie banner if policy cookie not set\n const cookiePreferences = getCookiePreferences()\n \n if (this.$module && !cookiePreferences.settings_viewed) {\n this.$module.css('display', 'block')\n }\n }\n \n hideCookieMessage (event: JQuery.ClickEvent) {\n this.$module.css('display', 'none')\n \n if (event.target) {\n event.preventDefault()\n }\n }\n\n showConfirmationMessage (analyticsConsent: boolean) {\n const messagePrefix = analyticsConsent ? 'You’ve accepted analytics cookies.' : 'You told us not to use analytics cookies.'\n\n this.$cookieBannerMainContent.attr('hidden', 'hidden')\n\n this.$cookieBannerConfirmationMessage.prepend(messagePrefix)\n this.$cookieBannerConfirmationContent.removeAttr('hidden')\n }\n}\n\nexport { CookieBanner }\n"],"names":[],"mappings":";;AAGA,MAAM,YAAY,CAAA;AAChB,IAAA,OAAO,UAAU,GAAG,kBAAkB;AAEtC,IAAA,OAAO;AACP,IAAA,wBAAwB;AACxB,IAAA,gCAAgC;AAChC,IAAA,gCAAgC;AAChC,IAAA,SAAS;AACT,IAAA,kBAAkB;AAClB,IAAA,kBAAkB;AAElB,IAAA,WAAA,CAAa,OAA4B,EAAA;AACvC,QAAA,IAAI,CAAC,OAAO,GAAG,OAAO;QACtB,IAAI,CAAC,wBAAwB,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,iCAAiC,CAAC;QACpF,IAAI,CAAC,gCAAgC,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,mCAAmC,CAAC;QAC9F,IAAI,CAAC,gCAAgC,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,yCAAyC,CAAC;QACpG,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,iCAAiC,CAAC;QACrE,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,kCAAkC,CAAC;QAC/E,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,mCAAmC,CAAC;IAClF;IAEA,IAAI,GAAA;QACF,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,KAAI;AACnC,YAAA,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC;AAC/B,QAAA,CAAC,CAAC;QAEF,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAK;AACvC,YAAA,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC;AAC7B,QAAA,CAAC,CAAC;QAEF,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAK;AACvC,YAAA,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC;AAC9B,QAAA,CAAC,CAAC;QAEF,IAAI,CAAC,iBAAiB,EAAE;IAC1B;AAEA,IAAA,gBAAgB,CAAE,gBAAyB,EAAA;QACzC,oBAAoB,CAAC,gBAAgB,CAAC;AAEtC,QAAA,IAAI,CAAC,uBAAuB,CAAC,gBAAgB,CAAC;AAC9C,QAAA,IAAI,CAAC,gCAAgC,CAAC,OAAO,CAAC,OAAO,CAAC;IACxD;IAEA,iBAAiB,GAAA;;AAEf,QAAA,MAAM,iBAAiB,GAAG,oBAAoB,EAAE;QAEhD,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,iBAAiB,CAAC,eAAe,EAAE;YACtD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC;QACtC;IACF;AAEA,IAAA,iBAAiB,CAAE,KAAwB,EAAA;QACzC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC;AAEnC,QAAA,IAAI,KAAK,CAAC,MAAM,EAAE;YAChB,KAAK,CAAC,cAAc,EAAE;QACxB;IACF;AAEA,IAAA,uBAAuB,CAAE,gBAAyB,EAAA;QAChD,MAAM,aAAa,GAAG,gBAAgB,GAAG,oCAAoC,GAAG,2CAA2C;QAE3H,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC;AAEtD,QAAA,IAAI,CAAC,gCAAgC,CAAC,OAAO,CAAC,aAAa,CAAC;AAC5D,QAAA,IAAI,CAAC,gCAAgC,CAAC,UAAU,CAAC,QAAQ,CAAC;IAC5D;;;;;"}