{"version":3,"sources":["webpack:///webpack/bootstrap fbfdc7d37d20c4b619d2","webpack:///./src/assets/patterns/scripts/app.js","webpack:///./govuk_elements/assets/javascripts/application.js","webpack:///./govuk_frontend_toolkit/javascripts/govuk/details.polyfill.js","webpack:///./govuk_frontend_toolkit/javascripts/govuk/shim-links-with-button-role.js","webpack:///./govuk_frontend_toolkit/javascripts/govuk/show-hide-content.js"],"names":["$","document","ready","jQuery","fx","off","showHideContent","GOVUK","ShowHideContent","init","shimLinksWithButtonRole","details","window","load","length","focus","click","e","preventDefault","href","attr","global","NATIVE_DETAILS","createElement","open","KEY_ENTER","KEY_SPACE","started","addEvent","node","type","callback","addEventListener","target","attachEvent","srcElement","removeEvent","removeEventListener","detachEvent","charCode","which","keyCode","returnValue","addClickEvent","nodeName","toLowerCase","getAncestor","match","parentNode","addDetailsPolyfill","list","container","body","getElementsByTagName","n","i","__summary","item","__content","id","setAttribute","tabIndex","openAttr","getAttribute","style","display","__details","twisty","className","appendChild","createTextNode","__twisty","insertBefore","firstChild","summary","statechange","expanded","hidden","hasOpenAttr","removeAttribute","nodeValue","destroy","$container","on","event","self","selectors","namespace","radio","checkbox","escapeElementName","str","result","replace","initToggledContent","$control","$content","getToggledContent","closest","data","showToggledContent","hasClass","removeClass","hideToggledContent","addClass","handleRadioContent","selector","$form","$radios","find","each","is","handleCheckboxContent","elementSelector","eventSelectors","handler","deferred","$controls","idx","eventSelector","filter","getEventSelectorsForRadioGroups","radioGroups","map","groupName","inArray","push","showHideRadioToggledContent","showHideCheckboxToggledContent","prototype"],"mappings":"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","file":"patterns/scripts/app.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId])\n \t\t\treturn installedModules[moduleId].exports;\n\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\texports: {},\n \t\t\tid: moduleId,\n \t\t\tloaded: false\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.loaded = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(0);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap fbfdc7d37d20c4b619d2","/**\n * Toolkit JavaScript\n */\n\n// Check jquery is available\n// if (typeof jQuery === 'undefined') {\n// console.log('jQuery is NOT available');\n// } else {\n// console.log('jQuery is available yay!!!');\n// }\n\n/** Using GovUK Frontend Toolkit\n * We've imported what is required by the GovUK elements JS\n * There's functionality and information here: https://github.com/alphagov/govuk_frontend_toolkit/blob/master/docs/javascript.md\n*/\nimport '../../../../govuk_frontend_toolkit/javascripts/govuk/show-hide-content.js';\nimport '../../../../govuk_frontend_toolkit/javascripts/govuk/shim-links-with-button-role.js';\nimport '../../../../govuk_frontend_toolkit/javascripts/govuk/details.polyfill.js';\n\n/** Include GovUK elements\n * Dependant on the imported JS from the GovUK Frontend Toolkit above\n*/\nimport '../../../../govuk_elements/assets/javascripts/application.js';\n\n\n\n// WEBPACK FOOTER //\n// ./src/assets/patterns/scripts/app.js","/* global $ */\n/* global jQuery */\n/* global GOVUK */\n\n$(document).ready(function () {\n // Turn off jQuery animation\n jQuery.fx.off = true\n\n // Where .multiple-choice uses the data-target attribute\n // to toggle hidden content\n var showHideContent = new GOVUK.ShowHideContent()\n showHideContent.init()\n\n // Use GOV.UK shim-links-with-button-role.js to trigger a link styled to look like a button,\n // with role=\"button\" when the space key is pressed.\n GOVUK.shimLinksWithButtonRole.init()\n\n // Details/summary polyfill from frontend toolkit\n GOVUK.details.init()\n})\n\n$(window).load(function () {\n // Only set focus for the error example pages\n if ($('.js-error-example').length) {\n // If there is an error summary, set focus to the summary\n if ($('.error-summary').length) {\n $('.error-summary').focus()\n $('.error-summary a').click(function (e) {\n e.preventDefault()\n var href = $(this).attr('href')\n $(href).focus()\n })\n } else {\n // Otherwise, set focus to the field with the error\n $('.error input:first').focus()\n }\n }\n})\n\n\n\n// WEBPACK FOOTER //\n// ./govuk_elements/assets/javascripts/application.js","//
polyfill\n// http://caniuse.com/#feat=details\n\n// FF Support for HTML5's
and \n// https://bugzilla.mozilla.org/show_bug.cgi?id=591737\n\n// http://www.sitepoint.com/fixing-the-details-element/\n\n;(function (global) {\n 'use strict'\n\n var GOVUK = global.GOVUK || {}\n\n GOVUK.details = {\n NATIVE_DETAILS: typeof document.createElement('details').open === 'boolean',\n KEY_ENTER: 13,\n KEY_SPACE: 32,\n\n // Create a started flag so we can prevent the initialisation\n // function firing from both DOMContentLoaded and window.onload\n started: false,\n\n // Add event construct for modern browsers or IE\n // which fires the callback with a pre-converted target reference\n addEvent: function (node, type, callback) {\n if (node.addEventListener) {\n node.addEventListener(type, function (e) {\n callback(e, e.target)\n }, false)\n } else if (node.attachEvent) {\n node.attachEvent('on' + type, function (e) {\n callback(e, e.srcElement)\n })\n }\n },\n\n removeEvent: function (node, type) {\n if (node.removeEventListener) {\n node.removeEventListener(type, function (e) {\n }, false)\n } else if (node.detachEvent) {\n node.detachEvent('on' + type, function (e) {\n })\n }\n },\n\n // Cross-browser character code / key pressed\n charCode: function (e) {\n return (typeof e.which === 'number') ? e.which : e.keyCode\n },\n\n // Cross-browser preventing default action\n preventDefault: function (e) {\n if (e.preventDefault) {\n e.preventDefault()\n } else {\n e.returnValue = false\n }\n },\n\n // Handle cross-modal click events\n addClickEvent: function (node, callback) {\n GOVUK.details.addEvent(node, 'keypress', function (e, target) {\n // When the key gets pressed - check if it is enter or space\n if (GOVUK.details.charCode(e) === GOVUK.details.KEY_ENTER || GOVUK.details.charCode(e) === GOVUK.details.KEY_SPACE) {\n if (target.nodeName.toLowerCase() === 'summary') {\n // Prevent space from scrolling the page\n // and enter from submitting a form\n GOVUK.details.preventDefault(e)\n // Click to let the click event do all the necessary action\n if (target.click) {\n target.click()\n } else {\n // except Safari 5.1 and under don't support .click() here\n callback(e, target)\n }\n }\n }\n })\n\n // Prevent keyup to prevent clicking twice in Firefox when using space key\n GOVUK.details.addEvent(node, 'keyup', function (e, target) {\n if (GOVUK.details.charCode(e) === GOVUK.details.KEY_SPACE) {\n if (target.nodeName === 'SUMMARY') {\n GOVUK.details.preventDefault(e)\n }\n }\n })\n\n GOVUK.details.addEvent(node, 'click', function (e, target) {\n callback(e, target)\n })\n },\n\n // Get the nearest ancestor element of a node that matches a given tag name\n getAncestor: function (node, match) {\n do {\n if (!node || node.nodeName.toLowerCase() === match) {\n break\n }\n node = node.parentNode\n } while (node)\n\n return node\n },\n\n // Initialisation function\n addDetailsPolyfill: function (list, container) {\n container = container || document.body\n // If this has already happened, just return\n // else set the flag so it doesn't happen again\n if (GOVUK.details.started) {\n return\n }\n GOVUK.details.started = true\n // Get the collection of details elements, but if that's empty\n // then we don't need to bother with the rest of the scripting\n if ((list = container.getElementsByTagName('details')).length === 0) {\n return\n }\n // else iterate through them to apply their initial state\n var n = list.length\n var i = 0\n for (i; i < n; i++) {\n var details = list[i]\n\n // Save shortcuts to the inner summary and content elements\n details.__summary = details.getElementsByTagName('summary').item(0)\n details.__content = details.getElementsByTagName('div').item(0)\n\n if (!details.__summary || !details.__content) {\n return\n }\n // If the content doesn't have an ID, assign it one now\n // which we'll need for the summary's aria-controls assignment\n if (!details.__content.id) {\n details.__content.id = 'details-content-' + i\n }\n\n // Add ARIA role=\"group\" to details\n details.setAttribute('role', 'group')\n\n // Add role=button to summary\n details.__summary.setAttribute('role', 'button')\n\n // Add aria-controls\n details.__summary.setAttribute('aria-controls', details.__content.id)\n\n // Set tabIndex so the summary is keyboard accessible for non-native elements\n // http://www.saliences.com/browserBugs/tabIndex.html\n if (!GOVUK.details.NATIVE_DETAILS) {\n details.__summary.tabIndex = 0\n }\n\n // Detect initial open state\n var openAttr = details.getAttribute('open') !== null\n if (openAttr === true) {\n details.__summary.setAttribute('aria-expanded', 'true')\n details.__content.setAttribute('aria-hidden', 'false')\n } else {\n details.__summary.setAttribute('aria-expanded', 'false')\n details.__content.setAttribute('aria-hidden', 'true')\n if (!GOVUK.details.NATIVE_DETAILS) {\n details.__content.style.display = 'none'\n }\n }\n\n // Create a circular reference from the summary back to its\n // parent details element, for convenience in the click handler\n details.__summary.__details = details\n\n // If this is not a native implementation, create an arrow\n // inside the summary\n if (!GOVUK.details.NATIVE_DETAILS) {\n var twisty = document.createElement('i')\n\n if (openAttr === true) {\n twisty.className = 'arrow arrow-open'\n twisty.appendChild(document.createTextNode('\\u25bc'))\n } else {\n twisty.className = 'arrow arrow-closed'\n twisty.appendChild(document.createTextNode('\\u25ba'))\n }\n\n details.__summary.__twisty = details.__summary.insertBefore(twisty, details.__summary.firstChild)\n details.__summary.__twisty.setAttribute('aria-hidden', 'true')\n }\n }\n\n // Bind a click event to handle summary elements\n GOVUK.details.addClickEvent(container, function (e, summary) {\n if (!(summary = GOVUK.details.getAncestor(summary, 'summary'))) {\n return true\n }\n return GOVUK.details.statechange(summary)\n })\n },\n\n // Define a statechange function that updates aria-expanded and style.display\n // Also update the arrow position\n statechange: function (summary) {\n var expanded = summary.__details.__summary.getAttribute('aria-expanded') === 'true'\n var hidden = summary.__details.__content.getAttribute('aria-hidden') === 'true'\n\n summary.__details.__summary.setAttribute('aria-expanded', (expanded ? 'false' : 'true'))\n summary.__details.__content.setAttribute('aria-hidden', (hidden ? 'false' : 'true'))\n\n if (!GOVUK.details.NATIVE_DETAILS) {\n summary.__details.__content.style.display = (expanded ? 'none' : '')\n\n var hasOpenAttr = summary.__details.getAttribute('open') !== null\n if (!hasOpenAttr) {\n summary.__details.setAttribute('open', 'open')\n } else {\n summary.__details.removeAttribute('open')\n }\n }\n\n if (summary.__twisty) {\n summary.__twisty.firstChild.nodeValue = (expanded ? '\\u25ba' : '\\u25bc')\n summary.__twisty.setAttribute('class', (expanded ? 'arrow arrow-closed' : 'arrow arrow-open'))\n }\n\n return true\n },\n\n destroy: function (node) {\n GOVUK.details.removeEvent(node, 'click')\n },\n\n // Bind two load events for modern and older browsers\n // If the first one fires it will set a flag to block the second one\n // but if it's not supported then the second one will fire\n init: function ($container) {\n GOVUK.details.addEvent(document, 'DOMContentLoaded', GOVUK.details.addDetailsPolyfill)\n GOVUK.details.addEvent(window, 'load', GOVUK.details.addDetailsPolyfill)\n }\n }\n global.GOVUK = GOVUK\n})(window)\n\n\n\n// WEBPACK FOOTER //\n// ./govuk_frontend_toolkit/javascripts/govuk/details.polyfill.js","// javascript 'shim' to trigger the click event of element(s)\n// when the space key is pressed.\n//\n// Created since some Assistive Technologies (for example some Screenreaders)\n// Will tell a user to press space on a 'button', so this functionality needs to be shimmed\n// See https://github.com/alphagov/govuk_elements/pull/272#issuecomment-233028270\n//\n// Usage instructions:\n// GOVUK.shimLinksWithButtonRole.init();\n;(function (global) {\n 'use strict'\n\n var $ = global.jQuery\n var GOVUK = global.GOVUK || {}\n\n GOVUK.shimLinksWithButtonRole = {\n\n init: function init () {\n // listen to 'document' for keydown event on the any elements that should be buttons.\n $(document).on('keydown', '[role=\"button\"]', function (event) {\n // if the keyCode (which) is 32 it's a space, let's simulate a click.\n if (event.which === 32) {\n event.preventDefault()\n // trigger the target's click event\n event.target.click()\n }\n })\n }\n\n }\n\n // hand back to global\n global.GOVUK = GOVUK\n})(window)\n\n\n\n// WEBPACK FOOTER //\n// ./govuk_frontend_toolkit/javascripts/govuk/shim-links-with-button-role.js",";(function (global) {\n 'use strict'\n\n var $ = global.jQuery\n var GOVUK = global.GOVUK || {}\n\n function ShowHideContent () {\n var self = this\n\n // Radio and Checkbox selectors\n var selectors = {\n namespace: 'ShowHideContent',\n radio: '[data-target] > input[type=\"radio\"]',\n checkbox: '[data-target] > input[type=\"checkbox\"]'\n }\n\n // Escape name attribute for use in DOM selector\n function escapeElementName (str) {\n var result = str.replace('[', '\\\\[').replace(']', '\\\\]')\n return result\n }\n\n // Adds ARIA attributes to control + associated content\n function initToggledContent () {\n var $control = $(this)\n var $content = getToggledContent($control)\n\n // Set aria-controls and defaults\n if ($content.length) {\n $control.attr('aria-controls', $content.attr('id'))\n $control.attr('aria-expanded', 'false')\n $content.attr('aria-hidden', 'true')\n }\n }\n\n // Return toggled content for control\n function getToggledContent ($control) {\n var id = $control.attr('aria-controls')\n\n // ARIA attributes aren't set before init\n if (!id) {\n id = $control.closest('[data-target]').data('target')\n }\n\n // Find show/hide content by id\n return $('#' + id)\n }\n\n // Show toggled content for control\n function showToggledContent ($control, $content) {\n // Show content\n if ($content.hasClass('js-hidden')) {\n $content.removeClass('js-hidden')\n $content.attr('aria-hidden', 'false')\n\n // If the controlling input, update aria-expanded\n if ($control.attr('aria-controls')) {\n $control.attr('aria-expanded', 'true')\n }\n }\n }\n\n // Hide toggled content for control\n function hideToggledContent ($control, $content) {\n $content = $content || getToggledContent($control)\n\n // Hide content\n if (!$content.hasClass('js-hidden')) {\n $content.addClass('js-hidden')\n $content.attr('aria-hidden', 'true')\n\n // If the controlling input, update aria-expanded\n if ($control.attr('aria-controls')) {\n $control.attr('aria-expanded', 'false')\n }\n }\n }\n\n // Handle radio show/hide\n function handleRadioContent ($control, $content) {\n // All radios in this group which control content\n var selector = selectors.radio + '[name=' + escapeElementName($control.attr('name')) + '][aria-controls]'\n var $form = $control.closest('form')\n var $radios = $form.length ? $form.find(selector) : $(selector)\n\n // Hide content for radios in group\n $radios.each(function () {\n hideToggledContent($(this))\n })\n\n // Select content for this control\n if ($control.is('[aria-controls]')) {\n showToggledContent($control, $content)\n }\n }\n\n // Handle checkbox show/hide\n function handleCheckboxContent ($control, $content) {\n // Show checkbox content\n if ($control.is(':checked')) {\n showToggledContent($control, $content)\n } else { // Hide checkbox content\n hideToggledContent($control, $content)\n }\n }\n\n // Set up event handlers etc\n function init ($container, elementSelector, eventSelectors, handler) {\n $container = $container || $(document.body)\n\n // Handle control clicks\n function deferred () {\n var $control = $(this)\n handler($control, getToggledContent($control))\n }\n\n // Prepare ARIA attributes\n var $controls = $(elementSelector)\n $controls.each(initToggledContent)\n\n // Handle events\n $.each(eventSelectors, function (idx, eventSelector) {\n $container.on('click.' + selectors.namespace, eventSelector, deferred)\n })\n\n // Any already :checked on init?\n if ($controls.is(':checked')) {\n $controls.filter(':checked').each(deferred)\n }\n }\n\n // Get event selectors for all radio groups\n function getEventSelectorsForRadioGroups () {\n var radioGroups = []\n\n // Build an array of radio group selectors\n return $(selectors.radio).map(function () {\n var groupName = $(this).attr('name')\n\n if ($.inArray(groupName, radioGroups) === -1) {\n radioGroups.push(groupName)\n return 'input[type=\"radio\"][name=\"' + $(this).attr('name') + '\"]'\n }\n return null\n })\n }\n\n // Set up radio show/hide content for container\n self.showHideRadioToggledContent = function ($container) {\n init($container, selectors.radio, getEventSelectorsForRadioGroups(), handleRadioContent)\n }\n\n // Set up checkbox show/hide content for container\n self.showHideCheckboxToggledContent = function ($container) {\n init($container, selectors.checkbox, [selectors.checkbox], handleCheckboxContent)\n }\n\n // Remove event handlers\n self.destroy = function ($container) {\n $container = $container || $(document.body)\n $container.off('.' + selectors.namespace)\n }\n }\n\n ShowHideContent.prototype.init = function ($container) {\n this.showHideRadioToggledContent($container)\n this.showHideCheckboxToggledContent($container)\n }\n\n GOVUK.ShowHideContent = ShowHideContent\n global.GOVUK = GOVUK\n})(window)\n\n\n\n// WEBPACK FOOTER //\n// ./govuk_frontend_toolkit/javascripts/govuk/show-hide-content.js"],"sourceRoot":""}