{"version":3,"sources":["common.js","../govuk/common.js","../govuk/vendor/polyfills/Window.js","../govuk/vendor/polyfills/Document.js","../govuk/vendor/polyfills/Element.js","../govuk/vendor/polyfills/Object/defineProperty.js","../govuk/vendor/polyfills/Event.js","../govuk/vendor/polyfills/Function/prototype/bind.js","../govuk/components/button/button.js","../govuk/components/details/details.js","../govuk/components/character-count/character-count.js","../govuk/components/checkboxes/checkboxes.js","../govuk/components/error-summary/error-summary.js","../govuk/components/radios/radios.js","../govuk/core.js","../govuk/vendor/polyfills/DOMTokenList.js","../govuk/vendor/polyfills/Element/prototype/classList.js","../govuk/vendor/polyfills/Element/prototype/matches.js","../govuk/vendor/polyfills/Element/prototype/closest.js","components/button/button.js","components/footer-extended/footer-extended.js","components/character-count/character-count.js","components/customer-surveys/customer-surveys.js","components/header-web/header-web.js","components/search-results/search-results.js","../govuk/components/accordion/accordion.js","../govuk/components/tabs/tabs.js","../govuk/extended.js","components/feedback/feedback.js","components/crossroad/crossroad.js","components/in-page-navigation/in-page-navigation.js","components/search-component/search-component.js","components/table-filter/table-filter.js","components/stepper/stepper.js","../govuk/vendor/polyfills/Element/prototype/nextElementSibling.js","../govuk/vendor/polyfills/Element/prototype/previousElementSibling.js","components/subscription-form/subscription-form.js","components/registration-for-event/registration-for-event.js","components/interactive-map/interactive-map.js","components/accordion/accordion.js","components/tabs/tabs.js","components/table/table.js","extended.js","core.js","../govuk/components/header/header.js","components/header-extended/header-extended.js","components/search-results-filter/search-results-filter.js","all.js","../govuk/all.js"],"names":["nodeListForEach","nodes","callback","window","NodeList","prototype","forEach","i","length","call","toggleClass","node","className","indexOf","replace","undefined","this","WorkerGlobalScope","importScripts","global","constructor","Window","Function","self","HTMLDocument","Document","document","Element","HTMLElement","interval","vbody","appendChild","createElement","frameDocument","contentWindow","cache","shiv","element","deep","key","value","childNode","childNodes","index","nodeType","elements","getElementsByTagName","nativeCreateElement","loopLimit","attachEvent","event","propertyName","nonValue","hasOwnProperty","newValue","oldValue","hasAttribute","name","getAttribute","bodyCheck","onreadystatechange","setInterval","nodeName","String","toLowerCase","removeChild","clearTimeout","body","test","readyState","nativeDefineProperty","supportsAccessors","ERR_ACCESSORS_NOT_SUPPORTED","ERR_VALUE_ACCESSORS","Object","defineProperty","e","object","property","descriptor","TypeError","propertyString","hasValueOrWritable","getterType","get","setterType","set","__defineGetter__","__defineSetter__","Event","unlistenableWindowEvents","click","dblclick","keyup","keypress","keydown","mousedown","mouseup","mousemove","mouseover","mouseenter","mouseleave","mouseout","storage","storagecommit","textinput","existingProto","type","eventInitDict","Error","createEvent","bubbles","cancelable","initEvent","createEventObject","configurable","enumerable","writable","addEventListener","arguments","listener","_events","eventElement","list","events","slice","preventDefault","returnValue","stopPropagation","cancelBubble","stopImmediatePropagation","cancelImmediate","currentTarget","relatedTarget","fromElement","target","srcElement","timeStamp","Date","getTime","clientX","pageX","documentElement","scrollLeft","pageY","clientY","scrollTop","push","removeEventListener","splice","detachEvent","dispatchEvent","cancelBubbleEvent","fireEvent","error","parentWindow","parentNode","array","that","isCallable","$Array","Array","$Object","ObjectPrototype","ArrayPrototype","Empty","to_string","toString","hasToStringTag","Symbol","toStringTag","fnToStr","tryFunctionObject","strClass","array_slice","array_concat","concat","array_push","max","Math","bound","args","boundLength","boundArgs","join","result","apply","Button","$module","debounceFormSubmitTimer","handleKeyDown","keyCode","debounce","setTimeout","bind","DEBOUNCE_TIMEOUT_IN_SECONDS","init","NATIVE_DETAILS","open","Details","CharacterCount","$textarea","querySelector","Checkboxes","$inputs","querySelectorAll","ErrorSummary","Radios","initCore","options","scope","$button","$detail","$characterCount","$checkbox","$radio","handleInputs","$summary","item","$content","id","generateUniqueID","d","performance","now","c","r","random","floor","setAttribute","tabIndex","style","display","setAttributes","expanded","hidden","removeAttribute","destroy","x","classList","toggle","DOMTokenList","createElementNS","dpSupport","defineGetter","fn","el","prop","tokens","tokenMap","maxLength","addIndexGetter","preop","reindex","rSpace","SyntaxError","code","baseVal","split","toLocaleString","idx","contains","token","add","l","remove","ignore","t","force","native","addProp","o","attr","tokenList","THIS","gibberishProperty","visage","mirror","reflections","_R","HTMLLinkElement","HTMLAnchorElement","HTMLAreaElement","defaults","characterCountAttribute","wordCountAttribute","getDataset","countAttribute","maxwords","boundCreateCountMessage","createCountMessage","countMessage","bindChangeEvents","boundChangeEvents","updateCountMessage","boundUpdateCountMessage","dataset","attributes","attribute","match","count","text","countElement","elementId","getElementById","insertAdjacentHTML","describedBy","describedByInfo","insertAdjacentElement","checkIfValueChanged","handleFocus","handleBlur","currentLength","remainingNumber","threshold","charVerb","displayNumber","charNoun","abs","innerHTML","valueChecker","clearInterval","$input","controls","handleClick","inputIsChecked","checked","$target","isCheckbox","hasAriaControls","matches","webkitMatchesSelector","oMatchesSelector","msMatchesSelector","mozMatchesSelector","selector","ownerDocument","closest","SVGElement","parentElement","focus","focusTarget","tagName","href","inputId","getFragmentFromUrl","$legendOrLabel","getAssociatedLegendOrLabel","scrollIntoView","preventScroll","url","pop","$fieldset","legends","$clickedInput","hasSameFormOwner","form","FooterExtended","CustomerSurveys","HeaderWeb","SearchResults","Accordion","moduleId","$sections","$openAllButton","browserSupportsSessionStorage","helper","checkForSessionStorage","controlsClass","openAllClass","iconClass","sectionHeaderClass","sectionHeaderFocusedClass","sectionHeadingClass","sectionSummaryClass","sectionButtonClass","sectionExpandedClass","$yesButton","$noButton","$errorButton","$closeErrorFormButton","$closeHelpFormButton","$textAreaCharacterCount","$submitErrorButton","$writeUsButton","$upButton","handleYesButtonClick","handleNoButtonClick","handleErrorButtonClick","handleCloseHelpFormButtonClick","handleCloseErrorFormButtonClick","handleSubmitButtonClick","handleStatusOfCharacterCountButton","scrollFunction","$noOption","$errorOption","$infoQuestion","$heartSymbol","$feedbackQuestion","$selection","$issueTextArea","$feedbackInfo","selectedOption","issueText","email","subject","emailBody","textContent","location","$remainingCharacterCountMessage","$submitButton","disabled","$helpOption","innerWidth","screen","height","$nextButton","$previousButton","$textAreaFirst","$textAreaSecond","$textAreaThird","$textAreaFourth","$radioButtonWork","$radioButtonPrivate","sendButtonDisabled","textAreaMap","Map","handleCounterOfSubtitles","enableNextButtonForAllSteps","handleRadioButtonWorkClick","handleRadioButtonPrivateClick","handleNextButtonClick","handlePreviousButtonClick","$name","$counter","$subtitles","substring","$textArea","clearTextArea","$text","$hint","lines","$subtitle","$steps","$startIcon","$nextButtonText","blur","line2","line1","onclick","includes","line3","$buttonsDiv","$radios","$textAreas","$banner","$lastScrollTopPosition","handleToggleBanner","$bannerCloseBtn","handleCloseBanner","$languageBtn","languegeEscPressed","handleLanguageSwitcherClick","$lastLanguageItem","checkBlurLanguageSwitcherClick","handleBackTabbing","boundCheckBlurLanguageSwitcherClick","$eGovermentButtons","$eGovermentSpacer","$eGovermentButton","handleEgovermentClick","$menuList","$menuItems","$menuItem","handleSubmenuClick","lastElementChild","menuTabbing","navEscPressed","$menuButton","showMobileMenu","menuBtnText","innerText","trim","initMobileMenuTabbing","boundCheckBlurMenuItemClick","checkBlurMenuItemClick","$scrollTop","pageYOffset","$toggleButton","$activeSearch","firstElementChild","shiftKey","activeElement","$currActiveItem","isEqualNode","width","behavior","$submenuList","$activeItem","closeText","buttonIsActive","nodeValue","$focusableElements","from","filter","s","getComputedStyle","getPropertyValue","$lastMenuItem","offsetParent","resultCards","countOfCardsPerPage","Number","currentPageNumber","subTopicButton","$resultsPerPageDropdown","$backButton","$forwardButton","$backButtonMobile","$forwardButtonMobile","$linkPanelButtons","$filtersButtonMobile","$turnFiltersOffButtonMobile","$showResultsButtonMobile","$backToResultsButtonMobile","$radioButtonsInput","$contentTypeCheckBoxes","$dateFrom","$dateTo","$topicSearchInput","handleSearchItemsFromInput","$subtopicSearchInput","$contentTypeSearchInput","handleFillDate","handleClickPreviousPage","handleClickNextPage","handleClickFiltersButton","handleClickTurnFiltersOffButton","handleClickShowResultsButton","boundHandleClickLinkPanel","handleClickLinkPanel","showResultCardsPerPage","handleClickResultsPerPageDropdown","title","handleClickRadioButton","$checkBox","handleClickContentTypeCheckBox","$filterBar","$searchBar","$searchBarTitle","$orderByDropdown","$resultsPerPage","$orderByDropdownMobile","$pagingMobile","$pagingDesktop","$searchResultsAll","$filterHeaderPanel","$pickedFiltersPanel","$showResultsButton","$contentContainer","$title","$header","$footer","$breadcrumbs","getElementsByClassName","handleSomeFilterPicked","$pickedTopics","$pickedContentTypes","$pickedDates","$isFilterPicked","handleCountForFiltersButton","$countOfPickedFilters","$topic","handleRemovePickedTopic","$contentType","handleRemovePickedContentType","$date","handleRemovePickedDate","$el","$type","$items","$item","$period","$choosenDatesInFiltersContainer","$dateElementInContainer","$contentTypePicked","createTopicInContainer","checkValuesInDateContainer","changeBackgroundForPickedFilters","createSpanElement","$class","$spanElement","$beforeDateClass","$afterDateClass","$beforeDateSpan","$afterDateSpan","middle","insertBefore","after","before","$startIndex","$endIndex","$i","$pageNumberMobile","$card","$numberOfPages","$pageNumberSpan","$pageNumberText","$linkPanelButton","$buttonCaption","$choosenFiltersContainer","$filterContainer","$topicPicked","source","$checkBoxes","handleCountOfPickedContentTypes","$checkBoxToRemove","$insertBeforeFirst","$showResultsMobileButton","$turnFiltersOffMobileButton","$pickedFiltersContainer","prepend","$notEmptySections","$section","disableSubtopic","$contentPanel","$subTopic","removeTopic","$disableFilter","initControls","initSectionHeaders","areAllSectionsOpen","checkIfAllSectionsOpen","updateOpenAllButton","accordionControls","firstChild","onOpenOrCloseAllToggle","header","initHeaderAttributes","setExpanded","isExpanded","onSectionToggle","setInitialState","$headerWrapper","$span","$heading","icon","storeState","nowExpanded","newButtonText","testString","sessionStorage","setItem","getItem","removeItem","exception","console","log","Tabs","$tabs","keys","left","right","up","down","jsHiddenClass","initExtended","$accordion","Feedback","Crossroad","InPageNavigation","SearchComponent","TableFilter","selectedFitlersCount","$activeFilters","removeAllFiltersText","removeAllFilters","removeFilterText","removeFilter","Stepper","$moduleId","$links","$browserSupportsSessionStorage","$helper","$controlsClass","$openAllClass","$iconClass","$sectionHeaderClass","$sectionHeaderFocusedClass","$sectionHeadingClass","$sectionSummaryClass","$sectionButtonClass","$sectionExpandedClass","contentId","contentState","nextSibling","previousSibling","matchMedia","setupResponsiveChecks","setup","mql","addListener","checkMode","teardown","$tabList","$tabListItems","$tab","boundTabClick","onTabClick","boundTabKeydown","onTabKeydown","hideTab","$activeTab","getTab","hash","showTab","boundOnHashChange","onHashChange","unsetAttributes","$tabWithHash","changingHash","$previousTab","getCurrentTab","unhighlightTab","hidePanel","highlightTab","showPanel","panelId","getHref","$panel","getPanel","$newTab","$currentTab","createHistoryEntry","activatePreviousTab","activateNextTab","currentTab","nextTabListItem","nextElementSibling","nextTab","previousTabListItem","previousElementSibling","previousTab","tab","$sendButton","$radioButtons","$self","$radioButton","handleRadioButtonClick","handleSendButtonClick","$thanksForFeedbackBar","$improoveQuestionBar","$uncollapseButton","handleShowItems","handleItemClick","setAriaLabel","arr","$crossroadItems","$uncollapseDiv","$crossroadTitles","$crossroadSubtitles","crossroadItem","$arrTitlesAndElems","$link","handleClickLink","boundCheckCloseClick","checkCloseClick","labelChanged","$id","$panelHeight","offsetHeight","changeCurrentLink","scrollTo","offsetTop","$navigationList","$navTopPosition","some","$index","scrollY","innerHeight","$currItem","$articleTitle","$linkPanelText","block","inline","$searchInputs","$searchInput","handleSearchInput","$searchLabel","$toggleButtons","$form","$filterInputs","handleClickTogglePanel","handleSubmitFilter","handleFilterValueChange","sendSubmitEvent","handleWindowResize","$expandablePanel","openText","isCategory","$categoryParent","marginBottomTitle","newParentHeight","parseInt","scrollHeight","newToggleText","categoryName","$filter","removeActiveFilter","$filterToRemove","$filterToRemoveValue","option","selectedIndex","renderActiveFilters","removeAllActiveFilters","$activeFiltersPanel","$activeFilter","$removeFilterBtn","$removeAllFilters","$activeFiltersContainer","renderSelectedFiltersCount","submitButton","$selects","$select","$category","$allCategoryFilters","selectedCategoryFiltersCount","handleItemLink","handleItemLinkBlur","$areAllSectionsOpen","$accordionControls","$attr","$icon","$expanded","$nowExpanded","$newButtonText","$result","$testString","SubscriptionForm","RegistrationForEvent","InteractiveMap","$currentData","$currentMode","$sectionSpan","openTitle","closeTitle","sectionTitle","$contentId","$contentState","handleSubmitForm","handleInput","$formGroup","checkValidity","$errorLabel","validationMessage","$submitButtons","handleSubmitClick","$thankYouMsg","$requiredFormItems","$valid","emailRegex","$radioMap","handleRadioButtonModeClick","$radioTable","$selectTimePeriod","renderData","$selectIndicator","$radiosName","$selectedControlOption","src","$tableEl","$tableSrc","$mapEl","$mapSrc","$timePeriodSelect","$timePeriodValue","$timePeriod","$indicatorSelect","$indicatorValue","$indicatorText","$mobileTabs","mobileTabHiddenClass","Table","$feedback","$crossroad","$searchComponent","$stepper","$registrationForEvent","$interactiveMap","$table","$tableFilter","$subscriptionForm","$footerExtended","$customerSurveys","$headerWeb","initCoreGovuk","initExtendedGovuk","Header","HeaderExtended","$lastMenuElement","$firstMenuElement","SearchResultsFilter","toggleMobileTab","$mobilePanel","$mobileTab","$pritnTableBtn","printTable","outerHTML","onafterprint","reload","print","$searchComponents","handleSearchChange","$toggleLanguageSwitchers","$toggleLanguageSwitcher","$hamburgerMenuButton","$closeMenuButton","hideMobileMenu","localStorage","$cookieBanner","headerPosition","getBoundingClientRect","top","cookieBannerHeight","ResizeObserver","observe","$currActiveList","overflow","$mobileMenuElements","initAll","$headerExtended","$searchResultsFilter","initAllGOVUKjs"],"mappings":"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","file":"idsk-frontend.min.js","sourcesContent":["/**\n * TODO: Ideally this would be a NodeList.prototype.forEach polyfill\n * This seems to fail in IE8, requires more investigation.\n * See: https://github.com/imagitama/nodelist-foreach-polyfill\n */\nexport function nodeListForEach(nodes, callback) {\n if (window.NodeList.prototype.forEach) {\n return nodes.forEach(callback);\n }\n for (var i = 0; i < nodes.length; i++) {\n callback.call(window, nodes[i], i, nodes);\n }\n}\n\n/**\n * Toggle class\n * @param {object} node element\n * @param {string} className to toggle\n */\nexport function toggleClass(node, className) {\n if (node === null) {\n return;\n }\n\n if (node.className.indexOf(className) > 0) {\n node.className = node.className.replace(' ' + className, '');\n } else {\n node.className += ' ' + className;\n }\n}","/**\n * TODO: Ideally this would be a NodeList.prototype.forEach polyfill\n * This seems to fail in IE8, requires more investigation.\n * See: https://github.com/imagitama/nodelist-foreach-polyfill\n */\nexport function nodeListForEach(nodes, callback) {\n if (window.NodeList.prototype.forEach) {\n return nodes.forEach(callback)\n }\n for (var i = 0; i < nodes.length; i++) {\n callback.call(window, nodes[i], i, nodes)\n }\n}\n\n// Used to generate a unique string, allows multiple instances of the component without\n// Them conflicting with each other.\n// https://stackoverflow.com/a/8809472\nexport function generateUniqueID() {\n var d = new Date().getTime()\n if (typeof window.performance !== 'undefined' && typeof window.performance.now === 'function') {\n d += window.performance.now() // use high-precision timer if available\n }\n return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {\n var r = (d + Math.random() * 16) % 16 | 0\n d = Math.floor(d / 16)\n return (c === 'x' ? r : (r & 0x3 | 0x8)).toString(16)\n })\n}","(function(undefined) {\n\n// Detection from https://github.com/Financial-Times/polyfill-service/blob/master/packages/polyfill-library/polyfills/Window/detect.js\nvar detect = ('Window' in this)\n\nif (detect) return\n\n// Polyfill from https://cdn.polyfill.io/v2/polyfill.js?features=Window&flags=always\nif ((typeof WorkerGlobalScope === \"undefined\") && (typeof importScripts !== \"function\")) {\n\t(function (global) {\n\t\tif (global.constructor) {\n\t\t\tglobal.Window = global.constructor;\n\t\t} else {\n\t\t\t(global.Window = global.constructor = new Function('return function Window() {}')()).prototype = this;\n\t\t}\n\t}(this));\n}\n\n})\n.call('object' === typeof window && window || 'object' === typeof self && self || 'object' === typeof global && global || {});\n","(function(undefined) {\n\n// Detection from https://github.com/Financial-Times/polyfill-service/blob/master/packages/polyfill-library/polyfills/Document/detect.js\nvar detect = (\"Document\" in this)\n\nif (detect) return\n\n// Polyfill from https://cdn.polyfill.io/v2/polyfill.js?features=Document&flags=always\nif ((typeof WorkerGlobalScope === \"undefined\") && (typeof importScripts !== \"function\")) {\n\n\tif (this.HTMLDocument) { // IE8\n\n\t\t// HTMLDocument is an extension of Document. If the browser has HTMLDocument but not Document, the former will suffice as an alias for the latter.\n\t\tthis.Document = this.HTMLDocument;\n\n\t} else {\n\n\t\t// Create an empty function to act as the missing constructor for the document object, attach the document object as its prototype. The function needs to be anonymous else it is hoisted and causes the feature detect to prematurely pass, preventing the assignments below being made.\n\t\tthis.Document = this.HTMLDocument = document.constructor = (new Function('return function Document() {}')());\n\t\tthis.Document.prototype = document;\n\t}\n}\n\n\n})\n.call('object' === typeof window && window || 'object' === typeof self && self || 'object' === typeof global && global || {});\n","import './Document'\n\n(function(undefined) {\n\n// Detection from https://github.com/Financial-Times/polyfill-service/blob/master/packages/polyfill-library/polyfills/Element/detect.js\nvar detect = ('Element' in this && 'HTMLElement' in this)\n\nif (detect) return\n\n// Polyfill from https://cdn.polyfill.io/v2/polyfill.js?features=Element&flags=always\n(function () {\n\n\t// IE8\n\tif (window.Element && !window.HTMLElement) {\n\t\twindow.HTMLElement = window.Element;\n\t\treturn;\n\t}\n\n\t// create Element constructor\n\twindow.Element = window.HTMLElement = new Function('return function Element() {}')();\n\n\t// generate sandboxed iframe\n\tvar vbody = document.appendChild(document.createElement('body'));\n\tvar frame = vbody.appendChild(document.createElement('iframe'));\n\n\t// use sandboxed iframe to replicate Element functionality\n\tvar frameDocument = frame.contentWindow.document;\n\tvar prototype = Element.prototype = frameDocument.appendChild(frameDocument.createElement('*'));\n\tvar cache = {};\n\n\t// polyfill Element.prototype on an element\n\tvar shiv = function (element, deep) {\n\t\tvar\n\t\tchildNodes = element.childNodes || [],\n\t\tindex = -1,\n\t\tkey, value, childNode;\n\n\t\tif (element.nodeType === 1 && element.constructor !== Element) {\n\t\t\telement.constructor = Element;\n\n\t\t\tfor (key in cache) {\n\t\t\t\tvalue = cache[key];\n\t\t\t\telement[key] = value;\n\t\t\t}\n\t\t}\n\n\t\twhile (childNode = deep && childNodes[++index]) {\n\t\t\tshiv(childNode, deep);\n\t\t}\n\n\t\treturn element;\n\t};\n\n\tvar elements = document.getElementsByTagName('*');\n\tvar nativeCreateElement = document.createElement;\n\tvar interval;\n\tvar loopLimit = 100;\n\n\tprototype.attachEvent('onpropertychange', function (event) {\n\t\tvar\n\t\tpropertyName = event.propertyName,\n\t\tnonValue = !cache.hasOwnProperty(propertyName),\n\t\tnewValue = prototype[propertyName],\n\t\toldValue = cache[propertyName],\n\t\tindex = -1,\n\t\telement;\n\n\t\twhile (element = elements[++index]) {\n\t\t\tif (element.nodeType === 1) {\n\t\t\t\tif (nonValue || element[propertyName] === oldValue) {\n\t\t\t\t\telement[propertyName] = newValue;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tcache[propertyName] = newValue;\n\t});\n\n\tprototype.constructor = Element;\n\n\tif (!prototype.hasAttribute) {\n\t\t// .hasAttribute\n\t\tprototype.hasAttribute = function hasAttribute(name) {\n\t\t\treturn this.getAttribute(name) !== null;\n\t\t};\n\t}\n\n\t// Apply Element prototype to the pre-existing DOM as soon as the body element appears.\n\tfunction bodyCheck() {\n\t\tif (!(loopLimit--)) clearTimeout(interval);\n\t\tif (document.body && !document.body.prototype && /(complete|interactive)/.test(document.readyState)) {\n\t\t\tshiv(document, true);\n\t\t\tif (interval && document.body.prototype) clearTimeout(interval);\n\t\t\treturn (!!document.body.prototype);\n\t\t}\n\t\treturn false;\n\t}\n\tif (!bodyCheck()) {\n\t\tdocument.onreadystatechange = bodyCheck;\n\t\tinterval = setInterval(bodyCheck, 25);\n\t}\n\n\t// Apply to any new elements created after load\n\tdocument.createElement = function createElement(nodeName) {\n\t\tvar element = nativeCreateElement(String(nodeName).toLowerCase());\n\t\treturn shiv(element);\n\t};\n\n\t// remove sandboxed iframe\n\tdocument.removeChild(vbody);\n}());\n\n})\n.call('object' === typeof window && window || 'object' === typeof self && self || 'object' === typeof global && global || {});\n","(function(undefined) {\n\n// Detection from https://github.com/Financial-Times/polyfill-service/blob/master/packages/polyfill-library/polyfills/Object/defineProperty/detect.js\nvar detect = (\n // In IE8, defineProperty could only act on DOM elements, so full support\n // for the feature requires the ability to set a property on an arbitrary object\n 'defineProperty' in Object && (function() {\n \ttry {\n \t\tvar a = {};\n \t\tObject.defineProperty(a, 'test', {value:42});\n \t\treturn true;\n \t} catch(e) {\n \t\treturn false\n \t}\n }())\n)\n\nif (detect) return\n\n// Polyfill from https://cdn.polyfill.io/v2/polyfill.js?features=Object.defineProperty&flags=always\n(function (nativeDefineProperty) {\n\n\tvar supportsAccessors = Object.prototype.hasOwnProperty('__defineGetter__');\n\tvar ERR_ACCESSORS_NOT_SUPPORTED = 'Getters & setters cannot be defined on this javascript engine';\n\tvar ERR_VALUE_ACCESSORS = 'A property cannot both have accessors and be writable or have a value';\n\n\tObject.defineProperty = function defineProperty(object, property, descriptor) {\n\n\t\t// Where native support exists, assume it\n\t\tif (nativeDefineProperty && (object === window || object === document || object === Element.prototype || object instanceof Element)) {\n\t\t\treturn nativeDefineProperty(object, property, descriptor);\n\t\t}\n\n\t\tif (object === null || !(object instanceof Object || typeof object === 'object')) {\n\t\t\tthrow new TypeError('Object.defineProperty called on non-object');\n\t\t}\n\n\t\tif (!(descriptor instanceof Object)) {\n\t\t\tthrow new TypeError('Property description must be an object');\n\t\t}\n\n\t\tvar propertyString = String(property);\n\t\tvar hasValueOrWritable = 'value' in descriptor || 'writable' in descriptor;\n\t\tvar getterType = 'get' in descriptor && typeof descriptor.get;\n\t\tvar setterType = 'set' in descriptor && typeof descriptor.set;\n\n\t\t// handle descriptor.get\n\t\tif (getterType) {\n\t\t\tif (getterType !== 'function') {\n\t\t\t\tthrow new TypeError('Getter must be a function');\n\t\t\t}\n\t\t\tif (!supportsAccessors) {\n\t\t\t\tthrow new TypeError(ERR_ACCESSORS_NOT_SUPPORTED);\n\t\t\t}\n\t\t\tif (hasValueOrWritable) {\n\t\t\t\tthrow new TypeError(ERR_VALUE_ACCESSORS);\n\t\t\t}\n\t\t\tObject.__defineGetter__.call(object, propertyString, descriptor.get);\n\t\t} else {\n\t\t\tobject[propertyString] = descriptor.value;\n\t\t}\n\n\t\t// handle descriptor.set\n\t\tif (setterType) {\n\t\t\tif (setterType !== 'function') {\n\t\t\t\tthrow new TypeError('Setter must be a function');\n\t\t\t}\n\t\t\tif (!supportsAccessors) {\n\t\t\t\tthrow new TypeError(ERR_ACCESSORS_NOT_SUPPORTED);\n\t\t\t}\n\t\t\tif (hasValueOrWritable) {\n\t\t\t\tthrow new TypeError(ERR_VALUE_ACCESSORS);\n\t\t\t}\n\t\t\tObject.__defineSetter__.call(object, propertyString, descriptor.set);\n\t\t}\n\n\t\t// OK to define value unconditionally - if a getter has been specified as well, an error would be thrown above\n\t\tif ('value' in descriptor) {\n\t\t\tobject[propertyString] = descriptor.value;\n\t\t}\n\n\t\treturn object;\n\t};\n}(Object.defineProperty));\n})\n.call('object' === typeof window && window || 'object' === typeof self && self || 'object' === typeof global && global || {});\n","import './Window'\nimport './Element'\nimport './Object/defineProperty'\n\n(function(undefined) {\n\n// Detection from https://github.com/Financial-Times/polyfill-service/blob/master/packages/polyfill-library/polyfills/Event/detect.js\nvar detect = (\n (function(global) {\n\n \tif (!('Event' in global)) return false;\n \tif (typeof global.Event === 'function') return true;\n\n \ttry {\n\n \t\t// In IE 9-11, the Event object exists but cannot be instantiated\n \t\tnew Event('click');\n \t\treturn true;\n \t} catch(e) {\n \t\treturn false;\n \t}\n }(this))\n)\n\nif (detect) return\n\n// Polyfill from https://cdn.polyfill.io/v2/polyfill.js?features=Event&flags=always\n(function () {\n\tvar unlistenableWindowEvents = {\n\t\tclick: 1,\n\t\tdblclick: 1,\n\t\tkeyup: 1,\n\t\tkeypress: 1,\n\t\tkeydown: 1,\n\t\tmousedown: 1,\n\t\tmouseup: 1,\n\t\tmousemove: 1,\n\t\tmouseover: 1,\n\t\tmouseenter: 1,\n\t\tmouseleave: 1,\n\t\tmouseout: 1,\n\t\tstorage: 1,\n\t\tstoragecommit: 1,\n\t\ttextinput: 1\n\t};\n\n\t// This polyfill depends on availability of `document` so will not run in a worker\n\t// However, we asssume there are no browsers with worker support that lack proper\n\t// support for `Event` within the worker\n\tif (typeof document === 'undefined' || typeof window === 'undefined') return;\n\n\tfunction indexOf(array, element) {\n\t\tvar\n\t\tindex = -1,\n\t\tlength = array.length;\n\n\t\twhile (++index < length) {\n\t\t\tif (index in array && array[index] === element) {\n\t\t\t\treturn index;\n\t\t\t}\n\t\t}\n\n\t\treturn -1;\n\t}\n\n\tvar existingProto = (window.Event && window.Event.prototype) || null;\n\twindow.Event = Window.prototype.Event = function Event(type, eventInitDict) {\n\t\tif (!type) {\n\t\t\tthrow new Error('Not enough arguments');\n\t\t}\n\n\t\tvar event;\n\t\t// Shortcut if browser supports createEvent\n\t\tif ('createEvent' in document) {\n\t\t\tevent = document.createEvent('Event');\n\t\t\tvar bubbles = eventInitDict && eventInitDict.bubbles !== undefined ? eventInitDict.bubbles : false;\n\t\t\tvar cancelable = eventInitDict && eventInitDict.cancelable !== undefined ? eventInitDict.cancelable : false;\n\n\t\t\tevent.initEvent(type, bubbles, cancelable);\n\n\t\t\treturn event;\n\t\t}\n\n\t\tevent = document.createEventObject();\n\n\t\tevent.type = type;\n\t\tevent.bubbles = eventInitDict && eventInitDict.bubbles !== undefined ? eventInitDict.bubbles : false;\n\t\tevent.cancelable = eventInitDict && eventInitDict.cancelable !== undefined ? eventInitDict.cancelable : false;\n\n\t\treturn event;\n\t};\n\tif (existingProto) {\n\t\tObject.defineProperty(window.Event, 'prototype', {\n\t\t\tconfigurable: false,\n\t\t\tenumerable: false,\n\t\t\twritable: true,\n\t\t\tvalue: existingProto\n\t\t});\n\t}\n\n\tif (!('createEvent' in document)) {\n\t\twindow.addEventListener = Window.prototype.addEventListener = Document.prototype.addEventListener = Element.prototype.addEventListener = function addEventListener() {\n\t\t\tvar\n\t\t\telement = this,\n\t\t\ttype = arguments[0],\n\t\t\tlistener = arguments[1];\n\n\t\t\tif (element === window && type in unlistenableWindowEvents) {\n\t\t\t\tthrow new Error('In IE8 the event: ' + type + ' is not available on the window object. Please see https://github.com/Financial-Times/polyfill-service/issues/317 for more information.');\n\t\t\t}\n\n\t\t\tif (!element._events) {\n\t\t\t\telement._events = {};\n\t\t\t}\n\n\t\t\tif (!element._events[type]) {\n\t\t\t\telement._events[type] = function (event) {\n\t\t\t\t\tvar\n\t\t\t\t\tlist = element._events[event.type].list,\n\t\t\t\t\tevents = list.slice(),\n\t\t\t\t\tindex = -1,\n\t\t\t\t\tlength = events.length,\n\t\t\t\t\teventElement;\n\n\t\t\t\t\tevent.preventDefault = function preventDefault() {\n\t\t\t\t\t\tif (event.cancelable !== false) {\n\t\t\t\t\t\t\tevent.returnValue = false;\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\n\t\t\t\t\tevent.stopPropagation = function stopPropagation() {\n\t\t\t\t\t\tevent.cancelBubble = true;\n\t\t\t\t\t};\n\n\t\t\t\t\tevent.stopImmediatePropagation = function stopImmediatePropagation() {\n\t\t\t\t\t\tevent.cancelBubble = true;\n\t\t\t\t\t\tevent.cancelImmediate = true;\n\t\t\t\t\t};\n\n\t\t\t\t\tevent.currentTarget = element;\n\t\t\t\t\tevent.relatedTarget = event.fromElement || null;\n\t\t\t\t\tevent.target = event.target || event.srcElement || element;\n\t\t\t\t\tevent.timeStamp = new Date().getTime();\n\n\t\t\t\t\tif (event.clientX) {\n\t\t\t\t\t\tevent.pageX = event.clientX + document.documentElement.scrollLeft;\n\t\t\t\t\t\tevent.pageY = event.clientY + document.documentElement.scrollTop;\n\t\t\t\t\t}\n\n\t\t\t\t\twhile (++index < length && !event.cancelImmediate) {\n\t\t\t\t\t\tif (index in events) {\n\t\t\t\t\t\t\teventElement = events[index];\n\n\t\t\t\t\t\t\tif (indexOf(list, eventElement) !== -1 && typeof eventElement === 'function') {\n\t\t\t\t\t\t\t\teventElement.call(element, event);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t};\n\n\t\t\t\telement._events[type].list = [];\n\n\t\t\t\tif (element.attachEvent) {\n\t\t\t\t\telement.attachEvent('on' + type, element._events[type]);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\telement._events[type].list.push(listener);\n\t\t};\n\n\t\twindow.removeEventListener = Window.prototype.removeEventListener = Document.prototype.removeEventListener = Element.prototype.removeEventListener = function removeEventListener() {\n\t\t\tvar\n\t\t\telement = this,\n\t\t\ttype = arguments[0],\n\t\t\tlistener = arguments[1],\n\t\t\tindex;\n\n\t\t\tif (element._events && element._events[type] && element._events[type].list) {\n\t\t\t\tindex = indexOf(element._events[type].list, listener);\n\n\t\t\t\tif (index !== -1) {\n\t\t\t\t\telement._events[type].list.splice(index, 1);\n\n\t\t\t\t\tif (!element._events[type].list.length) {\n\t\t\t\t\t\tif (element.detachEvent) {\n\t\t\t\t\t\t\telement.detachEvent('on' + type, element._events[type]);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tdelete element._events[type];\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\n\t\twindow.dispatchEvent = Window.prototype.dispatchEvent = Document.prototype.dispatchEvent = Element.prototype.dispatchEvent = function dispatchEvent(event) {\n\t\t\tif (!arguments.length) {\n\t\t\t\tthrow new Error('Not enough arguments');\n\t\t\t}\n\n\t\t\tif (!event || typeof event.type !== 'string') {\n\t\t\t\tthrow new Error('DOM Events Exception 0');\n\t\t\t}\n\n\t\t\tvar element = this, type = event.type;\n\n\t\t\ttry {\n\t\t\t\tif (!event.bubbles) {\n\t\t\t\t\tevent.cancelBubble = true;\n\n\t\t\t\t\tvar cancelBubbleEvent = function (event) {\n\t\t\t\t\t\tevent.cancelBubble = true;\n\n\t\t\t\t\t\t(element || window).detachEvent('on' + type, cancelBubbleEvent);\n\t\t\t\t\t};\n\n\t\t\t\t\tthis.attachEvent('on' + type, cancelBubbleEvent);\n\t\t\t\t}\n\n\t\t\t\tthis.fireEvent('on' + type, event);\n\t\t\t} catch (error) {\n\t\t\t\tevent.target = element;\n\n\t\t\t\tdo {\n\t\t\t\t\tevent.currentTarget = element;\n\n\t\t\t\t\tif ('_events' in element && typeof element._events[type] === 'function') {\n\t\t\t\t\t\telement._events[type].call(element, event);\n\t\t\t\t\t}\n\n\t\t\t\t\tif (typeof element['on' + type] === 'function') {\n\t\t\t\t\t\telement['on' + type].call(element, event);\n\t\t\t\t\t}\n\n\t\t\t\t\telement = element.nodeType === 9 ? element.parentWindow : element.parentNode;\n\t\t\t\t} while (element && !event.cancelBubble);\n\t\t\t}\n\n\t\t\treturn true;\n\t\t};\n\n\t\t// Add the DOMContentLoaded Event\n\t\tdocument.attachEvent('onreadystatechange', function() {\n\t\t\tif (document.readyState === 'complete') {\n\t\t\t\tdocument.dispatchEvent(new Event('DOMContentLoaded', {\n\t\t\t\t\tbubbles: true\n\t\t\t\t}));\n\t\t\t}\n\t\t});\n\t}\n}());\n\n})\n.call('object' === typeof window && window || 'object' === typeof self && self || 'object' === typeof global && global || {});\n","import '../../Object/defineProperty'\n\n(function(undefined) {\n // Detection from https://github.com/Financial-Times/polyfill-service/blob/master/packages/polyfill-library/polyfills/Function/prototype/bind/detect.js\n var detect = 'bind' in Function.prototype\n\n if (detect) return\n\n // Polyfill from https://cdn.polyfill.io/v2/polyfill.js?features=Function.prototype.bind&flags=always\n Object.defineProperty(Function.prototype, 'bind', {\n value: function bind(that) { // .length is 1\n // add necessary es5-shim utilities\n var $Array = Array;\n var $Object = Object;\n var ObjectPrototype = $Object.prototype;\n var ArrayPrototype = $Array.prototype;\n var Empty = function Empty() {};\n var to_string = ObjectPrototype.toString;\n var hasToStringTag = typeof Symbol === 'function' && typeof Symbol.toStringTag === 'symbol';\n var isCallable; /* inlined from https://npmjs.com/is-callable */ var fnToStr = Function.prototype.toString, tryFunctionObject = function tryFunctionObject(value) { try { fnToStr.call(value); return true; } catch (e) { return false; } }, fnClass = '[object Function]', genClass = '[object GeneratorFunction]'; isCallable = function isCallable(value) { if (typeof value !== 'function') { return false; } if (hasToStringTag) { return tryFunctionObject(value); } var strClass = to_string.call(value); return strClass === fnClass || strClass === genClass; };\n var array_slice = ArrayPrototype.slice;\n var array_concat = ArrayPrototype.concat;\n var array_push = ArrayPrototype.push;\n var max = Math.max;\n // /add necessary es5-shim utilities\n\n // 1. Let Target be the this value.\n var target = this;\n // 2. If IsCallable(Target) is false, throw a TypeError exception.\n if (!isCallable(target)) {\n throw new TypeError('Function.prototype.bind called on incompatible ' + target);\n }\n // 3. Let A be a new (possibly empty) internal list of all of the\n // argument values provided after thisArg (arg1, arg2 etc), in order.\n // XXX slicedArgs will stand in for \"A\" if used\n var args = array_slice.call(arguments, 1); // for normal call\n // 4. Let F be a new native ECMAScript object.\n // 11. Set the [[Prototype]] internal property of F to the standard\n // built-in Function prototype object as specified in 15.3.3.1.\n // 12. Set the [[Call]] internal property of F as described in\n // 15.3.4.5.1.\n // 13. Set the [[Construct]] internal property of F as described in\n // 15.3.4.5.2.\n // 14. Set the [[HasInstance]] internal property of F as described in\n // 15.3.4.5.3.\n var bound;\n var binder = function () {\n\n if (this instanceof bound) {\n // 15.3.4.5.2 [[Construct]]\n // When the [[Construct]] internal method of a function object,\n // F that was created using the bind function is called with a\n // list of arguments ExtraArgs, the following steps are taken:\n // 1. Let target be the value of F's [[TargetFunction]]\n // internal property.\n // 2. If target has no [[Construct]] internal method, a\n // TypeError exception is thrown.\n // 3. Let boundArgs be the value of F's [[BoundArgs]] internal\n // property.\n // 4. Let args be a new list containing the same values as the\n // list boundArgs in the same order followed by the same\n // values as the list ExtraArgs in the same order.\n // 5. Return the result of calling the [[Construct]] internal\n // method of target providing args as the arguments.\n\n var result = target.apply(\n this,\n array_concat.call(args, array_slice.call(arguments))\n );\n if ($Object(result) === result) {\n return result;\n }\n return this;\n\n } else {\n // 15.3.4.5.1 [[Call]]\n // When the [[Call]] internal method of a function object, F,\n // which was created using the bind function is called with a\n // this value and a list of arguments ExtraArgs, the following\n // steps are taken:\n // 1. Let boundArgs be the value of F's [[BoundArgs]] internal\n // property.\n // 2. Let boundThis be the value of F's [[BoundThis]] internal\n // property.\n // 3. Let target be the value of F's [[TargetFunction]] internal\n // property.\n // 4. Let args be a new list containing the same values as the\n // list boundArgs in the same order followed by the same\n // values as the list ExtraArgs in the same order.\n // 5. Return the result of calling the [[Call]] internal method\n // of target providing boundThis as the this value and\n // providing args as the arguments.\n\n // equiv: target.call(this, ...boundArgs, ...args)\n return target.apply(\n that,\n array_concat.call(args, array_slice.call(arguments))\n );\n\n }\n\n };\n\n // 15. If the [[Class]] internal property of Target is \"Function\", then\n // a. Let L be the length property of Target minus the length of A.\n // b. Set the length own property of F to either 0 or L, whichever is\n // larger.\n // 16. Else set the length own property of F to 0.\n\n var boundLength = max(0, target.length - args.length);\n\n // 17. Set the attributes of the length own property of F to the values\n // specified in 15.3.5.1.\n var boundArgs = [];\n for (var i = 0; i < boundLength; i++) {\n array_push.call(boundArgs, '$' + i);\n }\n\n // XXX Build a dynamic function with desired amount of arguments is the only\n // way to set the length property of a function.\n // In environments where Content Security Policies enabled (Chrome extensions,\n // for ex.) all use of eval or Function costructor throws an exception.\n // However in all of these environments Function.prototype.bind exists\n // and so this code will never be executed.\n bound = Function('binder', 'return function (' + boundArgs.join(',') + '){ return binder.apply(this, arguments); }')(binder);\n\n if (target.prototype) {\n Empty.prototype = target.prototype;\n bound.prototype = new Empty();\n // Clean up dangling references.\n Empty.prototype = null;\n }\n\n // TODO\n // 18. Set the [[Extensible]] internal property of F to true.\n\n // TODO\n // 19. Let thrower be the [[ThrowTypeError]] function Object (13.2.3).\n // 20. Call the [[DefineOwnProperty]] internal method of F with\n // arguments \"caller\", PropertyDescriptor {[[Get]]: thrower, [[Set]]:\n // thrower, [[Enumerable]]: false, [[Configurable]]: false}, and\n // false.\n // 21. Call the [[DefineOwnProperty]] internal method of F with\n // arguments \"arguments\", PropertyDescriptor {[[Get]]: thrower,\n // [[Set]]: thrower, [[Enumerable]]: false, [[Configurable]]: false},\n // and false.\n\n // TODO\n // NOTE Function objects created using Function.prototype.bind do not\n // have a prototype property or the [[Code]], [[FormalParameters]], and\n // [[Scope]] internal properties.\n // XXX can't delete prototype in pure-js.\n\n // 22. Return F.\n return bound;\n }\n });\n})\n.call('object' === typeof window && window || 'object' === typeof self && self || 'object' === typeof global && global || {});\n","import '../../vendor/polyfills/Event' // addEventListener and event.target normaliziation\nimport '../../vendor/polyfills/Function/prototype/bind'\n\nvar KEY_SPACE = 32\nvar DEBOUNCE_TIMEOUT_IN_SECONDS = 1\n\nfunction Button ($module) {\n this.$module = $module\n this.debounceFormSubmitTimer = null\n}\n\n/**\n* JavaScript 'shim' to trigger the click event of element(s) 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* @param {object} event event\n*/\nButton.prototype.handleKeyDown = function (event) {\n // get the target element\n var target = event.target\n // if the element has a role='button' and the pressed key is a space, we'll simulate a click\n if (target.getAttribute('role') === 'button' && event.keyCode === KEY_SPACE) {\n event.preventDefault()\n // trigger the target's click event\n target.click()\n }\n}\n\n/**\n* If the click quickly succeeds a previous click then nothing will happen.\n* This stops people accidentally causing multiple form submissions by\n* double clicking buttons.\n*/\nButton.prototype.debounce = function (event) {\n var target = event.target\n // Check the button that is clicked on has the preventDoubleClick feature enabled\n if (target.getAttribute('data-prevent-double-click') !== 'true') {\n return\n }\n\n // If the timer is still running then we want to prevent the click from submitting the form\n if (this.debounceFormSubmitTimer) {\n event.preventDefault()\n return false\n }\n\n this.debounceFormSubmitTimer = setTimeout(function () {\n this.debounceFormSubmitTimer = null\n }.bind(this), DEBOUNCE_TIMEOUT_IN_SECONDS * 1000)\n}\n\n/**\n* Initialise an event listener for keydown at document level\n* this will help listening for later inserted elements with a role=\"button\"\n*/\nButton.prototype.init = function () {\n this.$module.addEventListener('keydown', this.handleKeyDown)\n this.$module.addEventListener('click', this.debounce)\n}\n\nexport default Button\n","/**\n * JavaScript 'polyfill' for HTML5's
and elements\n * and 'shim' to add accessiblity enhancements for all browsers\n *\n * http://caniuse.com/#feat=details\n */\nimport '../../vendor/polyfills/Function/prototype/bind'\nimport '../../vendor/polyfills/Event' // addEventListener and event.target normaliziation\nimport { generateUniqueID } from '../../common.js'\n\nvar KEY_ENTER = 13\nvar KEY_SPACE = 32\n\n// Create a flag to know if the browser supports navtive details\nvar NATIVE_DETAILS = typeof document.createElement('details').open === 'boolean'\n\nfunction Details ($module) {\n this.$module = $module\n}\n\n/**\n* Handle cross-modal click events\n* @param {object} node element\n* @param {function} callback function\n*/\nDetails.prototype.handleInputs = function (node, callback) {\n node.addEventListener('keypress', function (event) {\n var target = event.target\n // When the key gets pressed - check if it is enter or space\n if (event.keyCode === KEY_ENTER || event.keyCode === KEY_SPACE) {\n if (target.nodeName.toLowerCase() === 'summary') {\n // Prevent space from scrolling the page\n // and enter from submitting a form\n event.preventDefault()\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(event)\n }\n }\n }\n })\n\n // Prevent keyup to prevent clicking twice in Firefox when using space key\n node.addEventListener('keyup', function (event) {\n var target = event.target\n if (event.keyCode === KEY_SPACE) {\n if (target.nodeName.toLowerCase() === 'summary') {\n event.preventDefault()\n }\n }\n })\n\n node.addEventListener('click', callback)\n}\n\nDetails.prototype.init = function () {\n var $module = this.$module\n\n if (!$module) {\n return\n }\n\n // Save shortcuts to the inner summary and content elements\n var $summary = this.$summary = $module.getElementsByTagName('summary').item(0)\n var $content = this.$content = $module.getElementsByTagName('div').item(0)\n\n // If
doesn't have a and a
representing the content\n // it means the required HTML structure is not met so the script will stop\n if (!$summary || !$content) {\n return\n }\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 (!$content.id) {\n $content.id = 'details-content-' + generateUniqueID()\n }\n\n // Add ARIA role=\"group\" to details\n $module.setAttribute('role', 'group')\n\n // Add role=button to summary\n $summary.setAttribute('role', 'button')\n\n // Add aria-controls\n $summary.setAttribute('aria-controls', $content.id)\n\n // Set tabIndex so the summary is keyboard accessible for non-native elements\n //\n // We have to use the camelcase `tabIndex` property as there is a bug in IE6/IE7 when we set the correct attribute lowercase:\n // See http://web.archive.org/web/20170120194036/http://www.saliences.com/browserBugs/tabIndex.html for more information.\n if (!NATIVE_DETAILS) {\n $summary.tabIndex = 0\n }\n\n // Detect initial open state\n var openAttr = $module.getAttribute('open') !== null\n if (openAttr === true) {\n $summary.setAttribute('aria-expanded', 'true')\n $content.setAttribute('aria-hidden', 'false')\n } else {\n $summary.setAttribute('aria-expanded', 'false')\n $content.setAttribute('aria-hidden', 'true')\n if (!NATIVE_DETAILS) {\n $content.style.display = 'none'\n }\n }\n\n // Bind an event to handle summary elements\n this.handleInputs($summary, this.setAttributes.bind(this))\n}\n\n/**\n* Define a statechange function that updates aria-expanded and style.display\n* @param {object} summary element\n*/\nDetails.prototype.setAttributes = function () {\n var $module = this.$module\n var $summary = this.$summary\n var $content = this.$content\n\n var expanded = $summary.getAttribute('aria-expanded') === 'true'\n var hidden = $content.getAttribute('aria-hidden') === 'true'\n\n $summary.setAttribute('aria-expanded', (expanded ? 'false' : 'true'))\n $content.setAttribute('aria-hidden', (hidden ? 'false' : 'true'))\n\n if (!NATIVE_DETAILS) {\n $content.style.display = (expanded ? 'none' : '')\n\n var hasOpenAttr = $module.getAttribute('open') !== null\n if (!hasOpenAttr) {\n $module.setAttribute('open', 'open')\n } else {\n $module.removeAttribute('open')\n }\n }\n return true\n}\n\n/**\n* Remove the click event from the node element\n* @param {object} node element\n*/\nDetails.prototype.destroy = function (node) {\n node.removeEventListener('keypress')\n node.removeEventListener('keyup')\n node.removeEventListener('click')\n}\n\nexport default Details\n","import '../../vendor/polyfills/Function/prototype/bind'\nimport '../../vendor/polyfills/Event' // addEventListener and event.target normaliziation\nimport '../../vendor/polyfills/Element/prototype/classList'\n\nfunction CharacterCount ($module) {\n this.$module = $module\n this.$textarea = $module.querySelector('.govuk-js-character-count')\n}\n\nCharacterCount.prototype.defaults = {\n characterCountAttribute: 'data-maxlength',\n wordCountAttribute: 'data-maxwords'\n}\n\n// Initialize component\nCharacterCount.prototype.init = function () {\n // Check for module\n var $module = this.$module\n var $textarea = this.$textarea\n if (!$textarea) {\n return\n }\n\n // Read options set using dataset ('data-' values)\n this.options = this.getDataset($module)\n\n // Determine the limit attribute (characters or words)\n var countAttribute = this.defaults.characterCountAttribute\n if (this.options.maxwords) {\n countAttribute = this.defaults.wordCountAttribute\n }\n\n // Save the element limit\n this.maxLength = $module.getAttribute(countAttribute)\n\n // Check for limit\n if (!this.maxLength) {\n return\n }\n\n // Generate and reference message\n var boundCreateCountMessage = this.createCountMessage.bind(this)\n this.countMessage = boundCreateCountMessage()\n\n // If there's a maximum length defined and the count message exists\n if (this.countMessage) {\n // Remove hard limit if set\n $module.removeAttribute('maxlength')\n\n // Bind event changes to the textarea\n var boundChangeEvents = this.bindChangeEvents.bind(this)\n boundChangeEvents()\n\n // Update count message\n var boundUpdateCountMessage = this.updateCountMessage.bind(this)\n boundUpdateCountMessage()\n }\n}\n\n// Read data attributes\nCharacterCount.prototype.getDataset = function (element) {\n var dataset = {}\n var attributes = element.attributes\n if (attributes) {\n for (var i = 0; i < attributes.length; i++) {\n var attribute = attributes[i]\n var match = attribute.name.match(/^data-(.+)/)\n if (match) {\n dataset[match[1]] = attribute.value\n }\n }\n }\n return dataset\n}\n\n// Counts characters or words in text\nCharacterCount.prototype.count = function (text) {\n var length\n if (this.options.maxwords) {\n var tokens = text.match(/\\S+/g) || [] // Matches consecutive non-whitespace chars\n length = tokens.length\n } else {\n length = text.length\n }\n return length\n}\n\n// Generate count message and bind it to the input\n// returns reference to the generated element\nCharacterCount.prototype.createCountMessage = function () {\n var countElement = this.$textarea\n var elementId = countElement.id\n // Check for existing info count message\n var countMessage = document.getElementById(elementId + '-info')\n // If there is no existing info count message we add one right after the field\n if (elementId && !countMessage) {\n countElement.insertAdjacentHTML('afterend', '')\n this.describedBy = countElement.getAttribute('aria-describedby')\n this.describedByInfo = this.describedBy + ' ' + elementId + '-info'\n countElement.setAttribute('aria-describedby', this.describedByInfo)\n countMessage = document.getElementById(elementId + '-info')\n } else {\n // If there is an existing info count message we move it right after the field\n countElement.insertAdjacentElement('afterend', countMessage)\n }\n return countMessage\n}\n\n// Bind input propertychange to the elements and update based on the change\nCharacterCount.prototype.bindChangeEvents = function () {\n var $textarea = this.$textarea\n $textarea.addEventListener('keyup', this.checkIfValueChanged.bind(this))\n\n // Bind focus/blur events to start/stop polling\n $textarea.addEventListener('focus', this.handleFocus.bind(this))\n $textarea.addEventListener('blur', this.handleBlur.bind(this))\n}\n\n// Speech recognition software such as Dragon NaturallySpeaking will modify the\n// fields by directly changing its `value`. These changes don't trigger events\n// in JavaScript, so we need to poll to handle when and if they occur.\nCharacterCount.prototype.checkIfValueChanged = function () {\n if (!this.$textarea.oldValue) this.$textarea.oldValue = ''\n if (this.$textarea.value !== this.$textarea.oldValue) {\n this.$textarea.oldValue = this.$textarea.value\n var boundUpdateCountMessage = this.updateCountMessage.bind(this)\n boundUpdateCountMessage()\n }\n}\n\n// Update message box\nCharacterCount.prototype.updateCountMessage = function () {\n var countElement = this.$textarea\n var options = this.options\n var countMessage = this.countMessage\n\n // Determine the remaining number of characters/words\n var currentLength = this.count(countElement.value)\n var maxLength = this.maxLength\n var remainingNumber = maxLength - currentLength\n\n // Set threshold if presented in options\n var thresholdPercent = options.threshold ? options.threshold : 0\n var thresholdValue = maxLength * thresholdPercent / 100\n if (thresholdValue > currentLength) {\n countMessage.classList.add('govuk-character-count__message--disabled')\n // Ensure threshold is hidden for users of assistive technologies\n countMessage.setAttribute('aria-hidden', true)\n } else {\n countMessage.classList.remove('govuk-character-count__message--disabled')\n // Ensure threshold is visible for users of assistive technologies\n countMessage.removeAttribute('aria-hidden')\n }\n\n // Update styles\n if (remainingNumber < 0) {\n countElement.classList.add('govuk-textarea--error')\n countMessage.classList.remove('govuk-hint')\n countMessage.classList.add('govuk-error-message')\n } else {\n countElement.classList.remove('govuk-textarea--error')\n countMessage.classList.remove('govuk-error-message')\n countMessage.classList.add('govuk-hint')\n }\n\n // Update message\n var charVerb = 'remaining'\n var charNoun = 'character'\n var displayNumber = remainingNumber\n if (options.maxwords) {\n charNoun = 'word'\n }\n charNoun = charNoun + ((remainingNumber === -1 || remainingNumber === 1) ? '' : 's')\n\n charVerb = (remainingNumber < 0) ? 'too many' : 'remaining'\n displayNumber = Math.abs(remainingNumber)\n\n countMessage.innerHTML = 'You have ' + displayNumber + ' ' + charNoun + ' ' + charVerb\n}\n\nCharacterCount.prototype.handleFocus = function () {\n // Check if value changed on focus\n this.valueChecker = setInterval(this.checkIfValueChanged.bind(this), 1000)\n}\n\nCharacterCount.prototype.handleBlur = function () {\n // Cancel value checking on blur\n clearInterval(this.valueChecker)\n}\n\nexport default CharacterCount\n","import '../../vendor/polyfills/Function/prototype/bind'\nimport '../../vendor/polyfills/Event' // addEventListener and event.target normaliziation\nimport '../../vendor/polyfills/Element/prototype/classList'\nimport { nodeListForEach } from '../../common'\n\nfunction Checkboxes ($module) {\n this.$module = $module\n this.$inputs = $module.querySelectorAll('input[type=\"checkbox\"]')\n}\n\nCheckboxes.prototype.init = function () {\n var $module = this.$module\n var $inputs = this.$inputs\n\n /**\n * Loop over all items with [data-controls]\n * Check if they have a matching conditional reveal\n * If they do, assign attributes.\n **/\n nodeListForEach($inputs, function ($input) {\n var controls = $input.getAttribute('data-aria-controls')\n\n // Check if input controls anything\n // Check if content exists, before setting attributes.\n if (!controls || !$module.querySelector('#' + controls)) {\n return\n }\n\n // If we have content that is controlled, set attributes.\n $input.setAttribute('aria-controls', controls)\n $input.removeAttribute('data-aria-controls')\n this.setAttributes($input)\n }.bind(this))\n\n // Handle events\n $module.addEventListener('click', this.handleClick.bind(this))\n}\n\nCheckboxes.prototype.setAttributes = function ($input) {\n var inputIsChecked = $input.checked\n $input.setAttribute('aria-expanded', inputIsChecked)\n\n var $content = this.$module.querySelector('#' + $input.getAttribute('aria-controls'))\n if ($content) {\n $content.classList.toggle('govuk-checkboxes__conditional--hidden', !inputIsChecked)\n }\n}\n\nCheckboxes.prototype.handleClick = function (event) {\n var $target = event.target\n // If a checkbox with aria-controls, handle click\n var isCheckbox = $target.getAttribute('type') === 'checkbox'\n var hasAriaControls = $target.getAttribute('aria-controls')\n if (isCheckbox && hasAriaControls) {\n this.setAttributes($target)\n }\n}\n\nexport default Checkboxes\n","import '../../vendor/polyfills/Function/prototype/bind'\nimport '../../vendor/polyfills/Event' // addEventListener\nimport '../../vendor/polyfills/Element/prototype/closest'\n\nfunction ErrorSummary ($module) {\n this.$module = $module\n}\n\nErrorSummary.prototype.init = function () {\n var $module = this.$module\n if (!$module) {\n return\n }\n $module.focus()\n\n $module.addEventListener('click', this.handleClick.bind(this))\n}\n\n/**\n* Click event handler\n*\n* @param {MouseEvent} event - Click event\n*/\nErrorSummary.prototype.handleClick = function (event) {\n var target = event.target\n if (this.focusTarget(target)) {\n event.preventDefault()\n }\n}\n\n/**\n * Focus the target element\n *\n * By default, the browser will scroll the target into view. Because our labels\n * or legends appear above the input, this means the user will be presented with\n * an input without any context, as the label or legend will be off the top of\n * the screen.\n *\n * Manually handling the click event, scrolling the question into view and then\n * focussing the element solves this.\n *\n * This also results in the label and/or legend being announced correctly in\n * NVDA (as tested in 2018.3.2) - without this only the field type is announced\n * (e.g. \"Edit, has autocomplete\").\n *\n * @param {HTMLElement} $target - Event target\n * @returns {boolean} True if the target was able to be focussed\n */\nErrorSummary.prototype.focusTarget = function ($target) {\n // If the element that was clicked was not a link, return early\n if ($target.tagName !== 'A' || $target.href === false) {\n return false\n }\n\n var inputId = this.getFragmentFromUrl($target.href)\n var $input = document.getElementById(inputId)\n if (!$input) {\n return false\n }\n\n var $legendOrLabel = this.getAssociatedLegendOrLabel($input)\n if (!$legendOrLabel) {\n return false\n }\n\n // Scroll the legend or label into view *before* calling focus on the input to\n // avoid extra scrolling in browsers that don't support `preventScroll` (which\n // at time of writing is most of them...)\n $legendOrLabel.scrollIntoView()\n $input.focus({ preventScroll: true })\n\n return true\n}\n\n/**\n * Get fragment from URL\n *\n * Extract the fragment (everything after the hash) from a URL, but not including\n * the hash.\n *\n * @param {string} url - URL\n * @returns {string} Fragment from URL, without the hash\n */\nErrorSummary.prototype.getFragmentFromUrl = function (url) {\n if (url.indexOf('#') === -1) {\n return false\n }\n\n return url.split('#').pop()\n}\n\n/**\n * Get associated legend or label\n *\n * Returns the first element that exists from this list:\n *\n * - The `` associated with the closest `
` ancestor\n * - The first `