{"version":3,"sources":["webpack:///./index.js","webpack:///./js/extensions/jquery.extensions.js","webpack:///./js/extensions/jquery-validation.extensions.js","webpack:///./js/pcg.frontend.js","webpack:///./js/components/windscreen/windscreen.component.js","webpack:///./js/utils/d3.utilities.js","webpack:///./js/components/windscreen/center.component.js","webpack:///./js/components/windscreen/chart.component.js","webpack:///./js/components/notification-pane/notification-panes.service.js","webpack:///./js/components/notification-pane/notification-modal.component.js","webpack:///./js/components/notification-pane/notification-pane.component.js","webpack:///./js/services/cookies.service.js"],"names":["require","global","$jquery","$","jQuery","init","fn","enterKey","fnc","each","keypress","ev","keycode","keyCode","which","trigger","cookie","key","value","options","arguments","length","extend","expires","days","t","Date","setDate","getDate","document","encodeURIComponent","raw","String","toUTCString","path","domain","secure","join","result","decode","s","decodeURIComponent","RegExp","exec","validator","addMethod","element","accept","typeParam","optionalValue","i","file","regex","optional","attr","replace","files","name","match","format","WindscreenComponent","NotificationService","CookiesService","PcgFrontend","pcg","frontend","windscreen","notificationService","cookieService","module","exports","d3","CenterComponent","ChartComponent","moduleOptions","sliceRadius","separatorRadius","centreRadius","padding","angle","Math","PI","currentContext","plot","defs","data","setUpPlot","wrapper","append","minX","minY","width","height","context","windscreenData","items","select","chart","render","center","createId","random","toFixed","centerTextInCircle","textLines","circleRadius","line","textHeight","node","getBBox","circleHeight","heightOffset","calcPathLength","paper","temp","getTotalLength","remove","calcTextLength","text","textAttrs","Object","keys","forEach","getComputedTextLength","getTextPart","maxLength","words","split","lineLength","n","transformArcText","d","radius","textFn","lineHeight","transformedData","arc","outerRadius","innerRadius","toSingleDirectionArc","arcLength","textPart","trim","push","id","attrs","source","transformLineText","startX","startY","endX","endY","drawTextByPath","parent","cssClass","prefix","groups","selectAll","enter","paths","arcPath","parts","renderCircle","circleGradient","circle","renderText","textGroup","baseCenterTextPoint","sqrt","centerTextAttrs","mainAction","centerTextData","map","title","lines","renderArrows","startAngle","endAngle","padAngle","arrowsGroup","leftArrow","rightArrow","bindEvents","hasValidLink","link","circleNode","circleNodeClone","parentNode","insertBefore","cloneNode","on","window","open","linkTarget","sectors","slicesDataTransform","renderSlices","pie","sort","slicesData","slices","color","setGradient","applyGradient","gradientColors","currSlice","currIndex","index","currColor","prevColor","sliceGradient","titlesData","titleAttrs","titlesArcData","descData","descAttrs","descArcData","description","hintData","hintAttrs","hintArcData","hint","renderSeparators","separatorsData","separators","sector","slice","sliceClone","previousSibling","style","separator","appendChild","transition","duration","interrupt","NotificationModalComponent","NotificationPaneComponent","NotificationPanesService","STORAGE_KEY_NOTIFICATIONS","$currentContext","panesList","markAsClosed","pane","storage","permanentClose","localStorage","sessionStorage","closedPanesList","getClosedPanesList","setItem","JSON","stringify","isClosedPane","paneId","concat","closedPaneIndex","indexOf","closedPanesValue","getItem","parse","showPanes","show","parseContext","$panes","SELECTOR","entry","$paneContext","console","log","self","subscriptions","keepClosedFor","modal","close","handlers","handler","event","hasOwnProperty","defineProperty","enumerable","configurable","writable","classMap","closeButton","$closeButton","removeClass","addClass","CookieService","cookiesCategories","marketing","preferences","statistics","pageRefreshOnChange","isCookiebotAvailable","Cookiebot","dialog","location","reload","addEventListener","defineProperties","allowPreferences","get","consent","allowStatistics","allowMarketing","getCookie","cookieAlias","isCookieApproved","setCookie","cookieValue","cookieSettings","category","isCookieInCategory","isUserAllowThisCategory"],"mappings":"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","file":"./content/js/app.js","sourcesContent":["// JS\r\nrequire(\"jquery\");\r\n\r\n// NOTE: it MUST BE used instead of $ and jQuery on views, $ and jQuery can be safely used inside our modules as these aliases will point to jQuery instance in webpack closure, not to global jquery object\r\nglobal.$jquery = require(\"jquery\");\r\n\r\n// NOTE: if somebody has already provided instance of $ before us, we shouldn't override it, if not - then expose our instance\r\nif (!global.$ || !global.jQuery) {\r\n global.$ = global.jQuery = global.$jquery;\r\n}\r\n\r\nrequire(\"jquery-validation\");\r\nrequire(\"jquery-validation/dist/additional-methods\");\r\nrequire(\"jquery-validation-unobtrusive\");\r\n\r\nrequire(\"bootstrap\");\r\n\r\nrequire(\"./js/extensions/jquery.extensions\");\r\nrequire(\"./js/extensions/jquery-validation.extensions\");\r\n\r\nrequire(\"./js/pcg.frontend\").init();\r\n","/*\r\n * Assist extensions JS module\r\n */\r\n(function ($) {\r\n /* Small extension to allow to deal with return key events in any browser */\r\n $.fn.enterKey = function (fnc) {\r\n return this.each(function () {\r\n $(this).keypress(function (ev) {\r\n var keycode = (ev.keyCode ? ev.keyCode : ev.which);\r\n if (keycode === '13') {\r\n ev.trigger(\"pcg-keypress-enter\");\r\n //fnc.call(this, ev);\r\n }\r\n });\r\n });\r\n };\r\n})(jQuery);\r\n\r\n/**\r\n * Create a cookie with the given key and value and other optional parameters.\r\n *\r\n * @example $.cookie('the_cookie', 'the_value');\r\n * @desc Set the value of a cookie.\r\n * @example $.cookie('the_cookie', 'the_value', { expires: 7, path: '/', domain: 'jquery.com', secure: true });\r\n * @desc Create a cookie with all available options.\r\n * @example $.cookie('the_cookie', 'the_value');\r\n * @desc Create a session cookie.\r\n * @example $.cookie('the_cookie', null);\r\n * @desc Delete a cookie by passing null as value. Keep in mind that you have to use the same path and domain\r\n * used when the cookie was set.\r\n *\r\n * @param String key The key of the cookie.\r\n * @param String value The value of the cookie.\r\n * @param Object options An object literal containing key/value pairs to provide optional cookie attributes.\r\n * @option Number|Date expires Either an integer specifying the expiration date from now on in days or a Date object.\r\n * If a negative value is specified (e.g. a date in the past), the cookie will be deleted.\r\n * If set to null or omitted, the cookie will be a session cookie and will not be retained\r\n * when the the browser exits.\r\n * @option String path The value of the path atribute of the cookie (default: path of page that created the cookie).\r\n * @option String domain The value of the domain attribute of the cookie (default: domain of page that created the cookie).\r\n * @option Boolean secure If true, the secure attribute of the cookie will be set and the cookie transmission will\r\n * require a secure protocol (like HTTPS).\r\n * @type undefined\r\n *\r\n * @name $.cookie\r\n * @cat Plugins/Cookie\r\n * @author Klaus Hartl/klaus.hartl@stilbuero.de\r\n */\r\n\r\n/**\r\n * Get the value of a cookie with the given key.\r\n *\r\n * @example $.cookie('the_cookie');\r\n * @desc Get the value of a cookie.\r\n *\r\n * @param String key The key of the cookie.\r\n * @return The value of the cookie.\r\n * @type String\r\n *\r\n * @name $.cookie\r\n * @cat Plugins/Cookie\r\n * @author Klaus Hartl/klaus.hartl@stilbuero.de\r\n */\r\njQuery.cookie = function (key, value, options) {\r\n\r\n // key and value given, set cookie...\r\n if (arguments.length > 1 && (value === null || typeof value !== \"object\")) {\r\n options = jQuery.extend({}, options);\r\n\r\n if (value === null) {\r\n options.expires = -1;\r\n }\r\n\r\n if (typeof options.expires === 'number') {\r\n var days = options.expires, t = options.expires = new Date();\r\n t.setDate(t.getDate() + days);\r\n }\r\n\r\n return (document.cookie = [\r\n encodeURIComponent(key), '=',\r\n options.raw ? String(value) : encodeURIComponent(String(value)),\r\n options.expires ? '; expires=' + options.expires.toUTCString() : '', // use expires attribute, max-age is not supported by IE\r\n options.path ? '; path=' + options.path : '',\r\n options.domain ? '; domain=' + options.domain : '',\r\n options.secure ? '; secure' : ''\r\n ].join(''));\r\n }\r\n\r\n // key and possibly options given, get cookie...\r\n options = value || {};\r\n var result, decode = options.raw ? function (s) { return s; } : decodeURIComponent;\r\n return (result = new RegExp('(?:^|; )' + encodeURIComponent(key) + '=([^;]*)').exec(document.cookie)) ? decode(result[1]) : null;\r\n};\r\n","(function() {\r\n //FIX for IE: it doesn't support some mime-types(e.g. application/msword) passed through accept attribute\r\n $.validator.addMethod(\"accept\", function(value, element, accept) {\r\n var typeParam, optionalValue, i, file, regex;\r\n\r\n optionalValue = this.optional(element);\r\n\r\n // Element is optional\r\n if (optionalValue) {\r\n return optionalValue;\r\n }\r\n\r\n if ($(element).attr(\"type\") === \"file\") {\r\n\r\n // Escape string to be used in the regex\r\n\t\t// see: https://stackoverflow.com/questions/3446170/escape-string-for-use-in-javascript-regex\r\n\t\t// Escape also \"/*\" as \"/.*\" as a wildcard\r\n typeParam = accept\r\n .replace( /[\\-\\[\\]\\/\\{\\}\\(\\)\\+\\?\\.\\\\\\^\\$\\|]/g, \"\\\\$&\" )\r\n .replace( /,/g, \"|\" )\r\n .replace( /\\/\\*/g, \"/.*\" );\r\n\r\n // Check if the element has a FileList before checking each file\r\n if (element.files && element.files.length) {\r\n regex = new RegExp(\"(\" + typeParam + \")$\", \"i\");\r\n for (i = 0; i < element.files.length; i++) {\r\n file = element.files[i];\r\n // Grab the file extension from the loaded file, verify it matches\r\n if (!file.name.match(regex)) {\r\n return false;\r\n }\r\n }\r\n }\r\n }\r\n\r\n // Either return true because we've validated each file, or because the\r\n // browser does not support element.files and the FileList feature\r\n return true;\r\n }, $.validator.format(\"Please enter a value with a valid mimetype.\"));\r\n})();","var WindscreenComponent = require(\"./components/windscreen/windscreen.component\");\r\n// var AccessibilityWidgetComponent = require(\"./components/accessibility-widget.component\");\r\nvar NotificationService = require(\"./components/notification-pane/notification-panes.service\");\r\nvar CookiesService = require(\"./services/cookies.service\");\r\n\r\nfunction PcgFrontend() {\r\n this.init = function () {\r\n $.pcg = $.pcg || {};\r\n $.pcg.frontend = $.pcg.frontend || {};\r\n\r\n $.extend($.pcg.frontend, {\r\n windscreen: new WindscreenComponent(),\r\n // accessibilityWidget: new AccessibilityWidgetComponent(),\r\n notificationService: new NotificationService(),\r\n cookieService: CookiesService\r\n });\r\n };\r\n}\r\n\r\nmodule.exports = new PcgFrontend();\r\n","var d3 = $.extend(require(\"d3-selection\"),\r\n require(\"d3-shape\"),\r\n require(\"d3-transition\"),\r\n require(\"../../utils/d3.utilities\")\r\n);\r\n\r\nvar CenterComponent = require(\"./center.component\");\r\nvar ChartComponent = require(\"./chart.component\");\r\n\r\nfunction WindscreenComponent() {\r\n var moduleOptions = {\r\n sliceRadius: 300,\r\n separatorRadius: 250,\r\n centreRadius: 35,\r\n padding: 10,\r\n angle: 0.5 * Math.PI\r\n };\r\n\r\n var currentContext, plot, windscreen, defs, data;\r\n\r\n function setUpPlot() {\r\n var wrapper = currentContext\r\n .append(\"div\")\r\n .attr(\"class\", \"pcg-plot-wrap\");\r\n\r\n plot = wrapper\r\n .append(\"svg\")\r\n .attr(\"class\", \"pcg-plot\")\r\n .attr(\"width\", \"600\")\r\n .attr(\"height\", \"300\");\r\n\r\n var minX = -1 * (moduleOptions.sliceRadius + moduleOptions.padding);\r\n var minY = -1 * (moduleOptions.sliceRadius + moduleOptions.padding);\r\n var width = 2 * (moduleOptions.sliceRadius + moduleOptions.padding);\r\n var height = moduleOptions.sliceRadius + moduleOptions.centreRadius + moduleOptions.padding;\r\n\r\n plot\r\n .attr(\"viewBox\", `${minX} ${minY} ${width} ${height}`);\r\n\r\n defs = plot.append(\"defs\");\r\n }\r\n\r\n this.init = function (context, options, windscreenData) {\r\n if(!windscreenData || !windscreenData.items.length) {\r\n return;\r\n }\r\n\r\n $.extend(moduleOptions, options);\r\n currentContext = d3.select(context);\r\n data = windscreenData;\r\n\r\n setUpPlot();\r\n\r\n var chart = new ChartComponent(plot, defs, moduleOptions, data);\r\n chart.render();\r\n\r\n var center = new CenterComponent(plot, defs, moduleOptions, data);\r\n center.render();\r\n }\r\n\r\n return this;\r\n}\r\n\r\nmodule.exports = WindscreenComponent;\r\n","var d3 = $.extend(require(\"d3-selection\"), {});\r\n\r\nvar createId = () => (Math.random() * 1e16).toFixed(0);\r\n\r\nvar centerTextInCircle = function (textLines, circleRadius) {\r\n var line = d3.select(this);\r\n\r\n var textHeight = 0;\r\n textLines.each(function () {\r\n var line = d3.select(this);\r\n textHeight += line.node().getBBox().height;\r\n });\r\n\r\n var circleHeight = 2 * circleRadius;\r\n var heightOffset = (circleHeight - textHeight) / 2\r\n\r\n textLines.each(function () {\r\n var line = d3.select(this);\r\n line.attr(\"transform\", \"translate(0,\" + heightOffset + \")\")\r\n });\r\n}\r\n\r\nvar calcPathLength = function (paper, path) {\r\n var temp = paper\r\n .append(\"path\")\r\n .attr(\"class\", \"temp\")\r\n .attr(\"d\", path);\r\n\r\n var length = paper.select(\".temp\").node().getTotalLength();\r\n temp.remove();\r\n\r\n return length;\r\n};\r\n\r\nvar calcTextLength = function (paper, text, textAttrs) {\r\n var temp = paper\r\n .append(\"text\")\r\n .text(text);\r\n\r\n Object.keys(textAttrs)\r\n .forEach(key => temp.attr(key, textAttrs[key]));\r\n\r\n var width = temp.node().getComputedTextLength();\r\n temp.remove();\r\n\r\n return width;\r\n};\r\n\r\nvar getTextPart = function (paper, text, maxLength, textAttrs) {\r\n var words = text.split(\" \");\r\n\r\n if (words.length === 1) {\r\n return text;\r\n }\r\n\r\n var lineLength = 0;\r\n var line = \"\";\r\n var result = \"\";\r\n var n = 0;\r\n\r\n while (n < words.length) {\r\n result = line;\r\n line = line + words[n] + \" \";\r\n lineLength = calcTextLength(paper, line, textAttrs);\r\n if (lineLength > maxLength) {\r\n return result ? result : words[0];\r\n }\r\n n++;\r\n }\r\n\r\n return text;\r\n};\r\n\r\nvar transformArcText = function (d, paper, radius, textFn, textAttrs, lineHeight) {\r\n var text = textFn(d);\r\n\r\n var transformedData = [];\r\n\r\n while (text) {\r\n var arc = d3.arc()\r\n .outerRadius(radius)\r\n .innerRadius(radius)(d);\r\n var path = d3.toSingleDirectionArc(arc)\r\n\r\n var arcLength = calcPathLength(paper, path);\r\n var textPart = getTextPart(paper, text, arcLength, textAttrs).trim();\r\n\r\n transformedData.push({\r\n id: createId(),\r\n path: path,\r\n text: textPart,\r\n attrs: textAttrs,\r\n source: d\r\n });\r\n\r\n text = text.replace(textPart, \"\").trim();\r\n radius = radius - (lineHeight || textAttrs[\"font-size\"]);\r\n }\r\n\r\n return transformedData;\r\n}\r\n\r\nvar transformLineText = function (d, paper, startX, startY, endX, endY, textFn, textAttrs, lineHeight) {\r\n var text = textFn(d);\r\n\r\n var transformedData = [];\r\n\r\n while (text) {\r\n var path = d3.line()([[startX, startY], [endX, endY]]);\r\n\r\n var lineLength = calcPathLength(paper, path);\r\n var textPart = getTextPart(paper, text, lineLength, textAttrs).trim();\r\n\r\n transformedData.push({\r\n id: createId(),\r\n path: path,\r\n text: textPart,\r\n attrs: textAttrs,\r\n source: d\r\n });\r\n\r\n text = text.replace(textPart, \"\").trim();\r\n startY += lineHeight || textAttrs[\"font-size\"];\r\n endY = startY;\r\n }\r\n\r\n return transformedData;\r\n}\r\n\r\nvar drawTextByPath = function(parent, data, cssClass, textAttrs) {\r\n var prefix = createId();\r\n\r\n var groups = parent\r\n .selectAll(cssClass)\r\n .data((d, i) => data[i])\r\n .enter().append(\"g\")\r\n .attr(\"class\", cssClass);\r\n\r\n var paths = groups.append(\"path\")\r\n .attr(\"id\", (d, i) => `${prefix}_${d.id}_${i}`)\r\n .attr(\"class\", `${cssClass}__path`)\r\n .attr(\"d\", d => d.path)\r\n .attr(\"fill\", \"none\");\r\n\r\n var textLines = groups.append(\"text\")\r\n .attr(\"class\",`${cssClass}__line`)\r\n .attr(\"text-anchor\", \"middle\");\r\n\r\n textLines\r\n .append(\"textPath\")\r\n .attr(\"xlink:href\", (d, i) => `#${prefix}_${d.id}_${i}`)\r\n .attr(\"startOffset\", \"50%\")\r\n .text(d => d.text);\r\n Object.keys(textAttrs)\r\n .forEach(key => textLines.attr(key, textAttrs[key]));\r\n\r\n return textLines;\r\n}\r\n\r\nvar toSingleDirectionArc = function(arcPath) {\r\n //NOTE: D3 renders arc as circle even innerRadius == 0;\r\n var parts = arcPath.split(/[A-Z]/)\r\n return \"M\" + parts[1] + \"A\" + parts[2];\r\n}\r\n\r\nmodule.exports = {\r\n centerTextInCircle,\r\n calcPathLength,\r\n transformArcText,\r\n transformLineText,\r\n drawTextByPath,\r\n toSingleDirectionArc\r\n}\r\n","var d3 = require(\"d3-selection\");\r\n\r\nvar CenterComponent = function (plot, defs, moduleOptions, data) {\r\n var center;\r\n\r\n function renderCircle() {\r\n center = plot\r\n .append(\"g\")\r\n .attr(\"class\", \"pcg-center\");\r\n\r\n var circleGradient = defs.append(\"radialGradient\")\r\n .attr(\"id\", \"radialGradient__circle\");\r\n\r\n circleGradient.append(\"stop\").attr(\"stop-color\", \"#62b5e7\").attr(\"offset\", 0);\r\n circleGradient.append(\"stop\").attr(\"stop-color\", \"#cfe9fa\").attr(\"offset\", 0.5);\r\n circleGradient.append(\"stop\").attr(\"stop-color\", \"#eef6fd\").attr(\"offset\", 1);\r\n\r\n var circle = center\r\n .selectAll(\".pcg-center__circle\")\r\n .data([null])\r\n .enter().append(\"circle\")\r\n .attr(\"class\", \"pcg-center__circle\")\r\n .attr(\"r\", moduleOptions.centreRadius)\r\n .attr(\"stroke\", \"transparent\")\r\n .attr(\"stroke-width\", 2)\r\n .attr(\"fill\", `url(#${circleGradient.attr(\"id\")})`);\r\n }\r\n\r\n function renderText() {\r\n var textGroup = center.append(\"g\")\r\n .attr(\"class\", \"pcg-center__title\");\r\n\r\n var baseCenterTextPoint = moduleOptions.centreRadius / Math.sqrt(2);\r\n\r\n var centerTextAttrs = {\r\n \"font-size\": 12,\r\n \"font-weight\": \"bold\",\r\n \"text-anchor\": \"middle\"\r\n };\r\n\r\n if (data.mainAction) {\r\n var centerTextData = [data]\r\n .map(d => d3.transformLineText(d,\r\n plot,\r\n -1 * baseCenterTextPoint,\r\n -1 * baseCenterTextPoint,\r\n 1 * baseCenterTextPoint,\r\n -1 * baseCenterTextPoint,\r\n d => d.mainAction.title,\r\n centerTextAttrs)\r\n );\r\n\r\n var lines = d3.drawTextByPath(textGroup, centerTextData, \"pcg-title-line\", centerTextAttrs);\r\n d3.centerTextInCircle(lines, moduleOptions.centreRadius);\r\n }\r\n }\r\n\r\n function renderArrows() {\r\n var arc = d3.arc()\r\n .innerRadius(moduleOptions.centreRadius + 15)\r\n .outerRadius(moduleOptions.centreRadius + 15)\r\n .startAngle(-1 * moduleOptions.angle)\r\n .endAngle(moduleOptions.angle)\r\n .padAngle(0.25)();\r\n\r\n var arrowsGroup = center.append(\"g\")\r\n .attr(\"class\", \"pcg-center__arrows\")\r\n\r\n var arc = arrowsGroup.append(\"path\")\r\n .attr(\"class\", \"arc\")\r\n .attr(\"d\", d3.toSingleDirectionArc(arc))\r\n .attr(\"stroke-width\", 3)\r\n .attr(\"stroke\", \"#9d9d9d\")\r\n .attr(\"fill\", \"none\");\r\n\r\n var leftArrow = arrowsGroup.append(\"path\")\r\n .attr(\"d\", \"M-49 -2 L-57 -23 L-42,-23 Z\")\r\n .attr(\"stroke-width\", 3)\r\n .attr(\"stroke\", \"none\")\r\n .attr(\"fill\", \"#9d9d9d\")\r\n .attr(\"transform\", \"matrix(1,0.34,-0.34,1,-3,15)\");\r\n\r\n var rightArrow = arrowsGroup.append(\"path\")\r\n .attr(\"d\", \"M49 -2 L57 -23 L42,-23 Z\")\r\n .attr(\"stroke-width\", 3)\r\n .attr(\"stroke\", \"none\")\r\n .attr(\"fill\", \"#9d9d9d\")\r\n .attr(\"transform\", \"matrix(1,-0.34,0.34,1,3,15)\");\r\n }\r\n\r\n function bindEvents() {\r\n var hasValidLink = data.mainAction && \"#\" !== data.mainAction.link;\r\n if (!hasValidLink) {\r\n return;\r\n }\r\n\r\n var circleNode = center.select(\".pcg-center__circle\").node();\r\n var circleNodeClone = d3.select(circleNode.parentNode.insertBefore(circleNode.cloneNode(true), null));\r\n\r\n circleNodeClone\r\n .attr(\"class\", `${circleNodeClone.attr(\"class\")}~shadow`)\r\n .attr(\"fill\", \"transparent\")\r\n .attr(\"cursor\", \"pointer\")\r\n .on(\"click\", function (d) {\r\n window.open(data.mainAction.link, data.mainAction.linkTarget || \"_self\");\r\n });\r\n }\r\n\r\n this.render = function () {\r\n renderCircle();\r\n renderText();\r\n renderArrows();\r\n bindEvents();\r\n }\r\n}\r\n\r\nmodule.exports = CenterComponent;\r\n","var d3 = require(\"d3-selection\");\r\n\r\nvar ChartComponent = function (plot, defs, moduleOptions, data) {\r\n var windscreen, sectors, slicesDataTransform;\r\n\r\n function renderSlices() {\r\n windscreen = plot\r\n .append(\"g\")\r\n .attr(\"class\", \"pcg-windscreen\");\r\n\r\n sectors = windscreen\r\n .selectAll(\".pcg-windscreen__sector.pcg-sector\")\r\n .data(data.items)\r\n .enter().append(\"g\")\r\n .attr(\"class\", \"pcg-windscreen__sector pcg-sector\");\r\n\r\n slicesDataTransform = d3.pie()\r\n .sort(null)\r\n .value(data => data.value)\r\n .startAngle(-1 * moduleOptions.angle)\r\n .endAngle(moduleOptions.angle);\r\n\r\n var slicesData = slicesDataTransform(data.items);\r\n\r\n var slices = sectors\r\n .selectAll(\".pcg-sector__slice\")\r\n .data((d, i) => [slicesData[i]])\r\n .enter().append(\"path\")\r\n .attr(\"class\", \"pcg-sector__slice\")\r\n .attr(\"d\", d3.arc()\r\n .outerRadius(moduleOptions.sliceRadius)\r\n .innerRadius(0)\r\n )\r\n .attr(\"stroke-width\", 4)\r\n .attr(\"stroke\", \"white\")\r\n .attr(\"fill\", arc => arc.data.color);\r\n\r\n setGradient(slices);\r\n }\r\n\r\n function setGradient(slices) {\r\n var applyGradient = data.gradientColors\r\n && data.items.length > 2;\r\n\r\n if (applyGradient) {\r\n slices.each(function (d) {\r\n var currSlice = d3.select(this);\r\n var currIndex = d.index;\r\n\r\n if (currIndex >= data.items.length - 2) {\r\n var currColor = data.items[currIndex].color;\r\n var prevColor = data.items[currIndex - 1].color;\r\n\r\n var sliceGradient = defs.append(\"linearGradient\")\r\n .attr(\"id\", `linearGradient_slice_${currIndex}`)\r\n .attr(\"x1\", 0)\r\n .attr(\"y1\", 0)\r\n .attr(\"x2\", 1)\r\n .attr(\"y2\", 0.1)\r\n\r\n sliceGradient.append(\"stop\").attr(\"stop-color\", prevColor).attr(\"offset\", 0);\r\n sliceGradient.append(\"stop\").attr(\"stop-color\", prevColor).attr(\"offset\", 0.2);\r\n sliceGradient.append(\"stop\").attr(\"stop-color\", currColor).attr(\"offset\", 1);\r\n\r\n currSlice.attr(\"fill\", `url(#${sliceGradient.attr(\"id\")})`);\r\n }\r\n });\r\n }\r\n }\r\n\r\n function renderText() {\r\n var titlesData = slicesDataTransform.padAngle(0.025)(data.items);\r\n var titleAttrs = {\r\n \"font-size\": 25,\r\n \"font-weight\": \"bold\",\r\n \"text-anchor\": \"middle\"\r\n };\r\n\r\n var titlesArcData = titlesData\r\n .map(d => d3.transformArcText(d,\r\n plot,\r\n moduleOptions.sliceRadius - 35,\r\n d => d.data.title,\r\n titleAttrs)\r\n );\r\n\r\n d3.drawTextByPath(sectors, titlesArcData, \"pcg-title-arc\", titleAttrs);\r\n\r\n var descData = slicesDataTransform.padAngle(0.075)(data.items);\r\n var descAttrs = {\r\n \"font-size\": 10,\r\n \"font-weight\": \"bold\",\r\n \"text-anchor\": \"middle\"\r\n };\r\n\r\n var descArcData = descData\r\n .map(d => d3.transformArcText(d,\r\n plot,\r\n moduleOptions.sliceRadius - 80,\r\n d => d.data.description,\r\n descAttrs\r\n , 20)\r\n );\r\n\r\n d3.drawTextByPath(sectors, descArcData, \"pcg-desc-arc\", descAttrs);\r\n\r\n var hintData = slicesDataTransform.padAngle(0.075)(data.items);\r\n var hintAttrs = {\r\n \"font-size\": 10,\r\n \"font-weight\": \"bold\",\r\n \"text-anchor\": \"middle\"\r\n };\r\n\r\n var hintArcData = hintData\r\n .map(d => d3.transformArcText(d,\r\n plot,\r\n moduleOptions.sliceRadius - 220,\r\n d => d.data.hint,\r\n descAttrs)\r\n );\r\n\r\n d3.drawTextByPath(sectors, hintArcData, \"pcg-hint-arc\", hintAttrs);\r\n }\r\n\r\n function renderSeparators() {\r\n var separatorsData = slicesDataTransform.padAngle(0.025)(data.items);\r\n\r\n var separators = sectors\r\n .selectAll(\".pcg-sector__separator\")\r\n .data((d, i) => [separatorsData[i]])\r\n .enter().append(\"path\")\r\n .attr(\"class\", \"pcg-sector__separator\")\r\n .attr(\"d\", d3.arc()\r\n .outerRadius(moduleOptions.separatorRadius)\r\n .innerRadius(moduleOptions.separatorRadius)\r\n )\r\n .attr(\"stroke-width\", 2)\r\n .attr(\"stroke\", \"white\")\r\n .attr(\"fill\", \"none\");\r\n }\r\n\r\n function bindEvents() {\r\n sectors.each(function (data) {\r\n var sector = d3.select(this);\r\n var slice = sector.select('.pcg-sector__slice').node();\r\n var sliceClone = d3.select(slice.parentNode.insertBefore(slice.cloneNode(true), slice.previousSibling));\r\n sliceClone\r\n .attr(\"class\", `${sliceClone.attr(\"class\")}~shadow`)\r\n .attr(\"fill\", \"transparent\")\r\n .attr(\"cursor\", \"pointer\")\r\n .attr(\"stroke-width\", 2)\r\n .attr(\"stroke\", \"#d1cece\")\r\n .style(\"opacity\", 0);\r\n\r\n sliceClone\r\n .on(\"mouseover\", function (d) {\r\n var separator = d3.select(sliceClone.node().parentNode).select(\".pcg-sector__separator\");\r\n windscreen.node().appendChild(sliceClone.node());\r\n\r\n // move to css?\r\n sliceClone\r\n .transition()\r\n .duration(200)\r\n .style(\"opacity\", 1);\r\n\r\n separator\r\n .transition()\r\n .duration(200)\r\n .attr(\"stroke\", \"#d1cece\");\r\n })\r\n .on(\"mouseout\", function (d) {\r\n sector.node().appendChild(sliceClone.node());\r\n var separator = d3.select(sliceClone.node().parentNode)\r\n .select(\".pcg-sector__separator\");\r\n\r\n sliceClone.interrupt()\r\n .style(\"opacity\", 0);\r\n separator.interrupt()\r\n .attr(\"stroke\", \"white\");\r\n })\r\n .on(\"click\", function (d) {\r\n if (data.link) {\r\n window.open(data.link, data.linkTarget || \"_self\");\r\n }\r\n });\r\n });\r\n }\r\n\r\n this.render = function () {\r\n renderSlices();\r\n renderText();\r\n renderSeparators();\r\n bindEvents();\r\n }\r\n}\r\n\r\nmodule.exports = ChartComponent;\r\n","var NotificationModalComponent = require(\"./notification-modal.component\");\r\nvar NotificationPaneComponent = require(\"./notification-pane.component\");\r\n\r\nvar NotificationPanesService = function () {\r\n var STORAGE_KEY_NOTIFICATIONS = \"User.Notifications\";\r\n\r\n var $currentContext = $();\r\n var moduleOptions = {};\r\n\r\n var panesList = [];\r\n\r\n function markAsClosed(pane) {\r\n var storage = pane.permanentClose() ? localStorage : sessionStorage;\r\n var closedPanesList = getClosedPanesList(storage);\r\n closedPanesList.push(pane.id());\r\n storage.setItem(STORAGE_KEY_NOTIFICATIONS, JSON.stringify(closedPanesList));\r\n }\r\n\r\n function isClosedPane(paneId) {\r\n var closedPanesList = getClosedPanesList(localStorage).concat(getClosedPanesList(sessionStorage));\r\n var closedPaneIndex = closedPanesList.indexOf(paneId);\r\n\r\n return closedPaneIndex > -1;\r\n }\r\n\r\n function getClosedPanesList(storage) {\r\n var closedPanesValue = storage.getItem(STORAGE_KEY_NOTIFICATIONS);\r\n return !!closedPanesValue ? JSON.parse(closedPanesValue) : [];\r\n }\r\n\r\n function showPanes() {\r\n panesList.forEach(pane => {\r\n if (!isClosedPane(pane.id())) {\r\n pane.show();\r\n }\r\n });\r\n }\r\n\r\n function bindEvents() {\r\n panesList.forEach(pane => {\r\n pane.on(\"close\", function () {\r\n markAsClosed(pane);\r\n });\r\n });\r\n }\r\n\r\n function parseContext() {\r\n var $panes = $(NotificationPaneComponent.SELECTOR, $currentContext);\r\n $panes.each((index, entry) => {\r\n var $paneContext = $(entry);\r\n var pane = new NotificationPaneComponent();\r\n pane.init($paneContext);\r\n panesList.push(pane);\r\n });\r\n\r\n // var $modal = $(NotificationModalComponent.SELECTOR, $currentContext);\r\n // if ($modal.length){\r\n // var pane = new NotificationModalComponent();\r\n // pane.init($modal);\r\n // panesList.push(pane);\r\n // }\r\n }\r\n\r\n this.init = function (context, options) {\r\n $currentContext = context || $currentContext;\r\n $.extend(moduleOptions, options);\r\n console.log(\"test 1\");\r\n parseContext();\r\n bindEvents();\r\n showPanes();\r\n };\r\n\r\n return this;\r\n};\r\n\r\nmodule.exports = NotificationPanesService;\r\n","var NotificationModalComponent = function () {\r\n var self = this;\r\n\r\n var $currentContext = $();\r\n var moduleOptions = {};\r\n\r\n var subscriptions = {};\r\n\r\n this.id = () => $currentContext.data().id;\r\n this.permanentClose = () => $currentContext.data().keepClosedFor === \"ever\";\r\n\r\n this.show = function() {\r\n $currentContext.modal(\"show\");\r\n };\r\n\r\n this.close = function() {\r\n var handlers = subscriptions[\"close\"];\r\n if (handlers) {\r\n handlers.forEach(handler => handler());\r\n }\r\n };\r\n\r\n this.on = function (event, handler) {\r\n if (subscriptions.hasOwnProperty(event)) {\r\n subscriptions[event].push(handler);\r\n } else {\r\n subscriptions[event] = [handler];\r\n }\r\n };\r\n\r\n function bindEvents() {\r\n $currentContext.on(\"hide.bs.modal\", function () {\r\n self.close();\r\n })\r\n }\r\n\r\n this.init = function (context, options) {\r\n $currentContext = context || $currentContext;\r\n $.extend(moduleOptions, options);\r\n\r\n bindEvents();\r\n };\r\n\r\n return this;\r\n};\r\n\r\nObject.defineProperty(NotificationModalComponent, \"SELECTOR\", {\r\n enumerable: false,\r\n configurable: false,\r\n writable: false,\r\n value: \".js-notification-modal\"\r\n});\r\n\r\nmodule.exports = NotificationModalComponent;\r\n","var NotificationPaneComponent = function () {\r\n var self = this;\r\n\r\n var $currentContext = $();\r\n var moduleOptions = {};\r\n\r\n var classMap = {\r\n closeButton: \".js-pcg-notification-pane__close-btn\"\r\n };\r\n\r\n var $closeButton;\r\n var subscriptions = {};\r\n\r\n this.id = () => $currentContext.data().id;\r\n this.permanentClose = () => $currentContext.data().keepClosedFor === \"ever\";\r\n\r\n this.show = function() {\r\n $currentContext.removeClass(\"d-none\");\r\n };\r\n\r\n this.close = function() {\r\n $currentContext.addClass(\"d-none\");\r\n var handlers = subscriptions[\"close\"];\r\n if (handlers) {\r\n handlers.forEach(handler => handler());\r\n }\r\n };\r\n\r\n this.on = function (event, handler) {\r\n if (subscriptions.hasOwnProperty(event)) {\r\n subscriptions[event].push(handler);\r\n } else {\r\n subscriptions[event] = [handler];\r\n }\r\n };\r\n\r\n function bindEvents() {\r\n $closeButton.on(\"click\", function() {\r\n self.close();\r\n });\r\n }\r\n\r\n function parseContext() {\r\n $closeButton = $(classMap.closeButton, $currentContext);\r\n }\r\n\r\n this.init = function (context, options) {\r\n $currentContext = context || $currentContext;\r\n $.extend(moduleOptions, options);\r\n\r\n parseContext();\r\n bindEvents();\r\n };\r\n\r\n return this;\r\n};\r\n\r\nObject.defineProperty(NotificationPaneComponent, \"SELECTOR\", {\r\n enumerable: false,\r\n configurable: false,\r\n writable: false,\r\n value: \".js-notification-pane\"\r\n});\r\n\r\nmodule.exports = NotificationPaneComponent;\r\n","function CookieService() {\r\n\r\n var self = this;\r\n\r\n var cookiesCategories = {\r\n marketing: [],\r\n preferences: [],\r\n statistics: []\r\n };\r\n\r\n function pageRefreshOnChange() {\r\n if (isCookiebotAvailable() && Cookiebot.dialog) {\r\n window.location.reload();\r\n }\r\n }\r\n\r\n function bindEvents() {\r\n window.addEventListener('CookiebotOnAccept', pageRefreshOnChange, false);\r\n window.addEventListener('CookiebotOnDecline', pageRefreshOnChange, false);\r\n }\r\n\r\n function isCookiebotAvailable() {\r\n return !!window.Cookiebot;\r\n }\r\n\r\n Object.defineProperties(self, {\r\n allowPreferences: {\r\n get() {\r\n return isCookiebotAvailable() ? Cookiebot.consent.preferences : true;\r\n }\r\n },\r\n allowStatistics: {\r\n get() {\r\n return isCookiebotAvailable() ? Cookiebot.consent.statistics : true;\r\n }\r\n },\r\n allowMarketing: {\r\n get() {\r\n return isCookiebotAvailable() ? Cookiebot.consent.marketing : true;\r\n }\r\n },\r\n });\r\n\r\n this.getCookie = function (cookieAlias) {\r\n var result = null;\r\n\r\n if (self.isCookieApproved(cookieAlias)) {\r\n result = $.cookie(cookieAlias);\r\n }\r\n\r\n return result;\r\n };\r\n\r\n this.setCookie = function(cookieAlias, cookieValue, cookieSettings) {\r\n if (self.isCookieApproved(cookieAlias)) {\r\n $.cookie(cookieAlias, cookieValue, cookieSettings);\r\n }\r\n };\r\n\r\n this.isCookieApproved = function(cookieAlias) {\r\n if (!isCookiebotAvailable()){\r\n return true;\r\n }\r\n\r\n var isCookieApproved = false;\r\n\r\n for (var category in cookiesCategories) {\r\n\r\n var isCookieInCategory = cookiesCategories[category].indexOf(cookieAlias) !== -1;\r\n var isUserAllowThisCategory = Cookiebot.consent && Cookiebot.consent[category];\r\n\r\n if (isCookieInCategory && isUserAllowThisCategory) {\r\n isCookieApproved = true;\r\n break;\r\n }\r\n }\r\n\r\n return isCookieApproved;\r\n };\r\n\r\n bindEvents();\r\n\r\n return this;\r\n}\r\n\r\nmodule.exports = new CookieService();\r\n"],"sourceRoot":""}