guides_style_18f 0.4.9 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (131) hide show
  1. checksums.yaml +4 -4
  2. data/assets/css/main.css +2 -0
  3. data/assets/css/page.css +36 -0
  4. data/assets/css/search.css +24 -0
  5. data/assets/img/18f-logo.png +0 -0
  6. data/assets/uswds/CONTRIBUTING.md +108 -0
  7. data/assets/uswds/LICENSE.md +63 -0
  8. data/assets/uswds/README.md +225 -0
  9. data/assets/uswds/css/uswds.css +4398 -0
  10. data/assets/uswds/css/uswds.min.css +4 -0
  11. data/assets/uswds/css/uswds.min.css.map +1 -0
  12. data/assets/uswds/fonts/merriweather-bold-webfont.eot +0 -0
  13. data/assets/uswds/fonts/merriweather-bold-webfont.ttf +0 -0
  14. data/assets/uswds/fonts/merriweather-bold-webfont.woff +0 -0
  15. data/assets/uswds/fonts/merriweather-bold-webfont.woff2 +0 -0
  16. data/assets/uswds/fonts/merriweather-italic-webfont.eot +0 -0
  17. data/assets/uswds/fonts/merriweather-italic-webfont.ttf +0 -0
  18. data/assets/uswds/fonts/merriweather-italic-webfont.woff +0 -0
  19. data/assets/uswds/fonts/merriweather-italic-webfont.woff2 +0 -0
  20. data/assets/uswds/fonts/merriweather-light-webfont.eot +0 -0
  21. data/assets/uswds/fonts/merriweather-light-webfont.ttf +0 -0
  22. data/assets/uswds/fonts/merriweather-light-webfont.woff +0 -0
  23. data/assets/uswds/fonts/merriweather-light-webfont.woff2 +0 -0
  24. data/assets/uswds/fonts/merriweather-regular-webfont.eot +0 -0
  25. data/assets/uswds/fonts/merriweather-regular-webfont.ttf +0 -0
  26. data/assets/uswds/fonts/merriweather-regular-webfont.woff +0 -0
  27. data/assets/uswds/fonts/merriweather-regular-webfont.woff2 +0 -0
  28. data/assets/uswds/fonts/sourcesanspro-bold-webfont.eot +0 -0
  29. data/assets/uswds/fonts/sourcesanspro-bold-webfont.ttf +0 -0
  30. data/assets/uswds/fonts/sourcesanspro-bold-webfont.woff +0 -0
  31. data/assets/uswds/fonts/sourcesanspro-bold-webfont.woff2 +0 -0
  32. data/assets/uswds/fonts/sourcesanspro-italic-webfont.eot +0 -0
  33. data/assets/uswds/fonts/sourcesanspro-italic-webfont.ttf +0 -0
  34. data/assets/uswds/fonts/sourcesanspro-italic-webfont.woff +0 -0
  35. data/assets/uswds/fonts/sourcesanspro-italic-webfont.woff2 +0 -0
  36. data/assets/uswds/fonts/sourcesanspro-light-webfont.eot +0 -0
  37. data/assets/uswds/fonts/sourcesanspro-light-webfont.ttf +0 -0
  38. data/assets/uswds/fonts/sourcesanspro-light-webfont.woff +0 -0
  39. data/assets/uswds/fonts/sourcesanspro-light-webfont.woff2 +0 -0
  40. data/assets/uswds/fonts/sourcesanspro-regular-webfont.eot +0 -0
  41. data/assets/uswds/fonts/sourcesanspro-regular-webfont.ttf +0 -0
  42. data/assets/uswds/fonts/sourcesanspro-regular-webfont.woff +0 -0
  43. data/assets/uswds/fonts/sourcesanspro-regular-webfont.woff2 +0 -0
  44. data/assets/uswds/img/alerts/error.png +0 -0
  45. data/assets/uswds/img/alerts/error.svg +17 -0
  46. data/assets/uswds/img/alerts/info.png +0 -0
  47. data/assets/uswds/img/alerts/info.svg +18 -0
  48. data/assets/uswds/img/alerts/success.png +0 -0
  49. data/assets/uswds/img/alerts/success.svg +12 -0
  50. data/assets/uswds/img/alerts/warning.png +0 -0
  51. data/assets/uswds/img/alerts/warning.svg +16 -0
  52. data/assets/uswds/img/angle-arrow-down-hover.png +0 -0
  53. data/assets/uswds/img/angle-arrow-down-hover.svg +1 -0
  54. data/assets/uswds/img/angle-arrow-down-primary-hover.png +0 -0
  55. data/assets/uswds/img/angle-arrow-down-primary-hover.svg +1 -0
  56. data/assets/uswds/img/angle-arrow-down-primary.png +0 -0
  57. data/assets/uswds/img/angle-arrow-down-primary.svg +1 -0
  58. data/assets/uswds/img/angle-arrow-down.png +0 -0
  59. data/assets/uswds/img/angle-arrow-down.svg +1 -0
  60. data/assets/uswds/img/angle-arrow-up-primary-hover.png +0 -0
  61. data/assets/uswds/img/angle-arrow-up-primary-hover.svg +1 -0
  62. data/assets/uswds/img/angle-arrow-up-primary.png +0 -0
  63. data/assets/uswds/img/angle-arrow-up-primary.svg +1 -0
  64. data/assets/uswds/img/arrow-down.png +0 -0
  65. data/assets/uswds/img/arrow-down.svg +1 -0
  66. data/assets/uswds/img/arrow-right.png +0 -0
  67. data/assets/uswds/img/arrow-right.svg +1 -0
  68. data/assets/uswds/img/circle-124.png +0 -0
  69. data/assets/uswds/img/close.png +0 -0
  70. data/assets/uswds/img/close.svg +1 -0
  71. data/assets/uswds/img/correct8.png +0 -0
  72. data/assets/uswds/img/correct8.svg +1 -0
  73. data/assets/uswds/img/correct9.png +0 -0
  74. data/assets/uswds/img/correct9.svg +1 -0
  75. data/assets/uswds/img/external-link-alt-hover.png +0 -0
  76. data/assets/uswds/img/external-link-alt-hover.svg +1 -0
  77. data/assets/uswds/img/external-link-alt.png +0 -0
  78. data/assets/uswds/img/external-link-alt.svg +1 -0
  79. data/assets/uswds/img/external-link-hover.png +0 -0
  80. data/assets/uswds/img/external-link-hover.svg +1 -0
  81. data/assets/uswds/img/external-link.png +0 -0
  82. data/assets/uswds/img/external-link.svg +1 -0
  83. data/assets/uswds/img/favicons/favicon-114.png +0 -0
  84. data/assets/uswds/img/favicons/favicon-144.png +0 -0
  85. data/assets/uswds/img/favicons/favicon-16.png +0 -0
  86. data/assets/uswds/img/favicons/favicon-192.png +0 -0
  87. data/assets/uswds/img/favicons/favicon-40.png +0 -0
  88. data/assets/uswds/img/favicons/favicon-57.png +0 -0
  89. data/assets/uswds/img/favicons/favicon-72.png +0 -0
  90. data/assets/uswds/img/favicons/favicon.ico +0 -0
  91. data/assets/uswds/img/favicons/favicon.png +0 -0
  92. data/assets/uswds/img/hero.png +0 -0
  93. data/assets/uswds/img/icon-dot-gov.svg +1 -0
  94. data/assets/uswds/img/icon-https.svg +1 -0
  95. data/assets/uswds/img/logo-img.png +0 -0
  96. data/assets/uswds/img/minus-alt.png +0 -0
  97. data/assets/uswds/img/minus-alt.svg +1 -0
  98. data/assets/uswds/img/minus.png +0 -0
  99. data/assets/uswds/img/minus.svg +1 -0
  100. data/assets/uswds/img/plus-alt.png +0 -0
  101. data/assets/uswds/img/plus-alt.svg +1 -0
  102. data/assets/uswds/img/plus.png +0 -0
  103. data/assets/uswds/img/plus.svg +1 -0
  104. data/assets/uswds/img/search-alt.png +0 -0
  105. data/assets/uswds/img/search-alt.svg +1 -0
  106. data/assets/uswds/img/search.png +0 -0
  107. data/assets/uswds/img/search.svg +1 -0
  108. data/assets/uswds/img/social-icons/png/facebook25.png +0 -0
  109. data/assets/uswds/img/social-icons/png/rss25.png +0 -0
  110. data/assets/uswds/img/social-icons/png/twitter16.png +0 -0
  111. data/assets/uswds/img/social-icons/png/youtube15.png +0 -0
  112. data/assets/uswds/img/social-icons/svg/facebook25.svg +1 -0
  113. data/assets/uswds/img/social-icons/svg/rss25.svg +1 -0
  114. data/assets/uswds/img/social-icons/svg/twitter16.svg +1 -0
  115. data/assets/uswds/img/social-icons/svg/youtube15.svg +1 -0
  116. data/assets/uswds/img/us_flag_small.png +0 -0
  117. data/assets/uswds/js/uswds.js +1416 -0
  118. data/assets/uswds/js/uswds.min.js +2 -0
  119. data/assets/uswds/js/uswds.min.js.map +1 -0
  120. data/lib/guides_style_18f/includes/banner.html +32 -0
  121. data/lib/guides_style_18f/includes/footer.html +44 -7
  122. data/lib/guides_style_18f/includes/head.html +70 -0
  123. data/lib/guides_style_18f/includes/header.html +56 -67
  124. data/lib/guides_style_18f/includes/sidebar-children.html +2 -6
  125. data/lib/guides_style_18f/includes/sidebar.html +7 -8
  126. data/lib/guides_style_18f/layouts/default.html +8 -25
  127. data/lib/guides_style_18f/sass/_guides_style_18f_main.scss +1 -0
  128. data/lib/guides_style_18f/sass/_variables.scss +0 -0
  129. data/lib/guides_style_18f/version.rb +1 -1
  130. metadata +123 -4
  131. data/assets/css/google-fonts.css +0 -58
@@ -0,0 +1,2 @@
1
+ !function t(e,n,i){function o(s,a){if(!n[s]){if(!e[s]){var c="function"==typeof require&&require;if(!a&&c)return c(s,!0);if(r)return r(s,!0);var u=new Error("Cannot find module '"+s+"'");throw u.code="MODULE_NOT_FOUND",u}var l=n[s]={exports:{}};e[s][0].call(l.exports,function(t){var n=e[s][1][t];return o(n?n:t)},l,l.exports,t,e,n,i)}return n[s].exports}for(var r="function"==typeof require&&require,s=0;s<i.length;s++)o(i[s]);return o}({1:[function(t,e,n){"document"in window.self&&("classList"in document.createElement("_")&&(!document.createElementNS||"classList"in document.createElementNS("http://www.w3.org/2000/svg","g"))?!function(){"use strict";var t=document.createElement("_");if(t.classList.add("c1","c2"),!t.classList.contains("c2")){var e=function(t){var e=DOMTokenList.prototype[t];DOMTokenList.prototype[t]=function(t){var n,i=arguments.length;for(n=0;n<i;n++)t=arguments[n],e.call(this,t)}};e("add"),e("remove")}if(t.classList.toggle("c3",!1),t.classList.contains("c3")){var n=DOMTokenList.prototype.toggle;DOMTokenList.prototype.toggle=function(t,e){return 1 in arguments&&!this.contains(t)==!e?e:n.call(this,t)}}t=null}():!function(t){"use strict";if("Element"in t){var e="classList",n="prototype",i=t.Element[n],o=Object,r=String[n].trim||function(){return this.replace(/^\s+|\s+$/g,"")},s=Array[n].indexOf||function(t){for(var e=0,n=this.length;e<n;e++)if(e in this&&this[e]===t)return e;return-1},a=function(t,e){this.name=t,this.code=DOMException[t],this.message=e},c=function(t,e){if(""===e)throw new a("SYNTAX_ERR","An invalid or illegal string was specified");if(/\s/.test(e))throw new a("INVALID_CHARACTER_ERR","String contains an invalid character");return s.call(t,e)},u=function(t){for(var e=r.call(t.getAttribute("class")||""),n=e?e.split(/\s+/):[],i=0,o=n.length;i<o;i++)this.push(n[i]);this._updateClassName=function(){t.setAttribute("class",this.toString())}},l=u[n]=[],f=function(){return new u(this)};if(a[n]=Error[n],l.item=function(t){return this[t]||null},l.contains=function(t){return t+="",c(this,t)!==-1},l.add=function(){var t,e=arguments,n=0,i=e.length,o=!1;do t=e[n]+"",c(this,t)===-1&&(this.push(t),o=!0);while(++n<i);o&&this._updateClassName()},l.remove=function(){var t,e,n=arguments,i=0,o=n.length,r=!1;do for(t=n[i]+"",e=c(this,t);e!==-1;)this.splice(e,1),r=!0,e=c(this,t);while(++i<o);r&&this._updateClassName()},l.toggle=function(t,e){t+="";var n=this.contains(t),i=n?e!==!0&&"remove":e!==!1&&"add";return i&&this[i](t),e===!0||e===!1?e:!n},l.toString=function(){return this.join(" ")},o.defineProperty){var d={get:f,enumerable:!0,configurable:!0};try{o.defineProperty(i,e,d)}catch(h){h.number===-2146823252&&(d.enumerable=!1,o.defineProperty(i,e,d))}}else o[n].__defineGetter__&&i.__defineGetter__(e,f)}}(window.self))},{}],2:[function(t,e,n){(function(t){function n(t,e,n){function o(e){var n=v,i=m;return v=m=void 0,A=e,g=t.apply(i,n)}function r(t){return A=t,b=setTimeout(l,e),k?o(t):g}function c(t){var n=t-L,i=t-A,o=e-n;return T?E(o,y-i):o}function u(t){var n=t-L,i=t-A;return void 0===L||n>=e||n<0||T&&i>=y}function l(){var t=x();return u(t)?f(t):void(b=setTimeout(l,c(t)))}function f(t){return b=void 0,O&&v?o(t):(v=m=void 0,g)}function d(){void 0!==b&&clearTimeout(b),A=0,v=L=m=b=void 0}function h(){return void 0===b?g:f(x())}function p(){var t=x(),n=u(t);if(v=arguments,m=this,L=t,n){if(void 0===b)return r(L);if(T)return b=setTimeout(l,e),o(L)}return void 0===b&&(b=setTimeout(l,e)),g}var v,m,y,g,b,L,A=0,k=!1,T=!1,O=!0;if("function"!=typeof t)throw new TypeError(a);return e=s(e)||0,i(n)&&(k=!!n.leading,T="maxWait"in n,y=T?w(s(n.maxWait)||0,e):y,O="trailing"in n?!!n.trailing:O),p.cancel=d,p.flush=h,p}function i(t){var e=typeof t;return!!t&&("object"==e||"function"==e)}function o(t){return!!t&&"object"==typeof t}function r(t){return"symbol"==typeof t||o(t)&&b.call(t)==u}function s(t){if("number"==typeof t)return t;if(r(t))return c;if(i(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=i(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(l,"");var n=d.test(t);return n||h.test(t)?p(t.slice(2),n?2:8):f.test(t)?c:+t}var a="Expected a function",c=NaN,u="[object Symbol]",l=/^\s+|\s+$/g,f=/^[-+]0x[0-9a-f]+$/i,d=/^0b[01]+$/i,h=/^0o[0-7]+$/i,p=parseInt,v="object"==typeof t&&t&&t.Object===Object&&t,m="object"==typeof self&&self&&self.Object===Object&&self,y=v||m||Function("return this")(),g=Object.prototype,b=g.toString,w=Math.max,E=Math.min,x=function(){return y.Date.now()};e.exports=n}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],3:[function(t,e,n){function i(t,e){var n="true"===t.getAttribute("aria-expanded");return this.hideAll(),n||this.show(t),!1}function o(t){var e=this;this.root=t;var n=r("button",this.root);n.forEach(function(t){t.attachEvent?t.attachEvent("onclick",i.bind(e,t)):t.addEventListener("click",i.bind(e,t))});var o=this.$("button[aria-expanded=true]")[0];this.hideAll(),void 0!==o&&this.show(o)}var r=t("../utils/select");o.prototype.$=function(t){return r(t,this.root)},o.prototype.hide=function(t){var e=t.getAttribute("aria-controls"),n=this.$("#"+e)[0];return t.setAttribute("aria-expanded",!1),n.setAttribute("aria-hidden",!0),this},o.prototype.show=function(t){var e=t.getAttribute("aria-controls"),n=this.$("#"+e)[0];return t.setAttribute("aria-expanded",!0),n.setAttribute("aria-hidden",!1),this},o.prototype.hideAll=function(){var t=this,e=this.$("ul > li > button, .usa-accordion-button");return e.forEach(function(e){t.hide(e)}),this},e.exports=o},{"../utils/select":22}],4:[function(t,e,n){function i(t){t.preventDefault?t.preventDefault():t.returnValue=!1,this.classList.toggle("usa-banner-header-expanded")}function o(){var t=r(".usa-banner-header");t.forEach(function(t){var e=i.bind(t);r("[aria-controls]",t).forEach(function(t){s(t,"click",e)})})}var r=t("../utils/select"),s=t("../utils/dispatch");e.exports=o},{"../utils/dispatch":21,"../utils/select":22}],5:[function(t,e,n){function i(t){for(var e=t.parentNode.firstChild,n=[];e;)1==e.nodeType&&e!=t&&n.push(e),e=e.nextSibling;return n}var o=t("../utils/select"),r=t("../utils/dispatch"),s=function(){var t=this.parentNode,e=i(t);t.classList.remove("hidden"),e.forEach(function(t){t.classList.add("hidden")})},a=[];e.exports=function(){var t=o(".usa-footer-big nav ul"),e=o(".usa-footer-big nav .usa-footer-primary-link");a.length&&(a.forEach(function(t){t.off()}),a=[]),window.innerWidth<600?(t.forEach(function(t){t.classList.add("hidden")}),e.forEach(function(t){a.push(r(t,"click",s))})):t.forEach(function(t){t.classList.remove("hidden")})}},{"../utils/dispatch":21,"../utils/select":22}],6:[function(t,e,n){function i(t){var e=s(".usa-overlay, .usa-nav"),n=s(".usa-nav-close")[0];return e.forEach(function(t){t.classList.toggle("is-visible")}),document.body.classList.toggle("usa-mobile_nav-active"),n.focus(),!1}function o(){var t=s(".usa-menu-btn, .usa-overlay, .usa-nav-close");u=t.map(function(t){return a(t,c,i)})}function r(){for(;u.length;)u.pop().off()}var s=t("../utils/select"),a=t("../utils/dispatch"),c="ontouchstart"in document.documentElement?"touchstart":"click",u=[];e.exports=o,e.exports.off=r},{"../utils/dispatch":21,"../utils/select":22}],7:[function(t,e,n){function i(t){return l.hidden?s():(r(),p=m(document.body,g,o)),!1}function o(t){a(t.target)||(s(),p.off(),p=void 0)}function r(){l.classList.remove(y);var t=l.querySelector("[type=search]");t&&t.focus(),f.hidden=!0}function s(){l.classList.add(y),f.hidden=!1}function a(t){return l&&l.contains(t)||d&&d.contains(t)}function c(){l=v(".js-search-form")[0],f=v(".js-search-button")[0],d=v(".js-search-button-container")[0],f&&l&&(s(),h=m(f,g,i))}function u(){h&&h.off(),p&&p.off()}var l,f,d,h,p,v=t("../utils/select"),m=t("../utils/dispatch"),y="usa-sr-only",g="ontouchstart"in document.documentElement?"touchstart":"click";e.exports=c,e.exports.off=u},{"../utils/dispatch":21,"../utils/select":22}],8:[function(t,e,n){e.exports=function(t,e){t.forEach(function(t){t.setAttribute("autocapitalize","off"),t.setAttribute("autocorrect","off"),t.setAttribute("type",e?"password":"text")})}},{}],9:[function(t,e,n){function i(t){var e=t.split(" ");return e.map(function(t){return"#"+t}).join(", ")}function o(t){for(;t&&"FORM"!==t.tagName;)t=t.parentNode;return t}var r=t("./toggle-field-mask"),s=t("../utils/select"),a=function(t,e,n){var a=t.getAttribute("aria-controls");if(!a||0===a.trim().length)throw new Error("Did you forget to define selectors in the aria-controls attribute? Check element "+t.outerHTML);var c=i(a),u=o(t);if(!u)throw new Error("toggleFormInput() needs the supplied element to be inside a <form>. Check element "+t.outerHTML);var l=s(c,u),f=!1,d=function(i){i.preventDefault(),r(l,f),t.textContent=f?e:n,f=!f};t.attachEvent?t.attachEvent("onclick",d):t.addEventListener("click",d)};e.exports=a},{"../utils/select":22,"./toggle-field-mask":8}],10:[function(t,e,n){function i(t){if(t.hasAttributes()){for(var e={},n=t.attributes,i=n.length-1;i>=0;i--){var o=n[i].name.match(/data-(.*)/i);if(o&&o[1]){var r=o[1].replace(/-/,"");e[r]=n[i].value}}return e}}var o=t("../utils/select"),r=t("../utils/dispatch");e.exports=function(t){function e(){for(n in u)if(n.startsWith("validate")){s=n.split("validate")[1],a=new RegExp(u[n]),validatorSelector="[data-validator="+s+"]",c=o(validatorSelector,l)[0];var e=a.test(t.value);c.classList.toggle("usa-checklist-checked",e)}}var n,s,a,c,u=i(t),l=o(u.validationelement)[0];r(t,"keyup",e)}},{"../utils/dispatch":21,"../utils/select":22}],11:[function(t,e,n){var i=t("../utils/select"),o=t("../utils/when-dom-ready"),r=t("../components/accordion");o(function(){var t=i(".usa-accordion, .usa-accordion-bordered");t.forEach(function(t){new r(t)})})},{"../components/accordion":3,"../utils/select":22,"../utils/when-dom-ready":23}],12:[function(t,e,n){var i=t("../utils/when-dom-ready"),o=t("../components/banner");i(function(){o()})},{"../components/banner":4,"../utils/when-dom-ready":23}],13:[function(t,e,n){var i=t("lodash.debounce"),o=t("../utils/when-dom-ready"),r=t("../utils/dispatch"),s=t("../components/footer");o(function(){s(),r(window,"resize",i(s,180))})},{"../components/footer":5,"../utils/dispatch":21,"../utils/when-dom-ready":23,"lodash.debounce":2}],14:[function(t,e,n){var i=t("../utils/when-dom-ready"),o=t("../utils/select"),r=t("../components/validator"),s=t("../components/toggle-form-input");i(function(){var t=o(".usa-show_password")[0],e=o(".usa-show_multipassword")[0],n=o(".js-validate_password")[0];t&&s(t,"Show Password","Hide Password"),e&&s(e,"Show my typing","Hide my typing"),n&&r(n)})},{"../components/toggle-form-input":9,"../components/validator":10,"../utils/select":22,"../utils/when-dom-ready":23}],15:[function(t,e,n){var i=t("../utils/when-dom-ready"),o=t("../components/navigation");i(o)},{"../components/navigation":6,"../utils/when-dom-ready":23}],16:[function(t,e,n){t("../polyfills/element-hidden"),t("classlist-polyfill"),Array.prototype.forEach||(Array.prototype.forEach=function(t,e){var n,i;if(null===this)throw new TypeError(" this is null or not defined");var o=Object(this),r=o.length>>>0;if("function"!=typeof t)throw new TypeError(t+" is not a function");for(arguments.length>1&&(n=e),i=0;i<r;){var s;i in o&&(s=o[i],t.call(n,s,i,o)),i++}}),Function.prototype.bind||(Function.prototype.bind=function(t){if("function"!=typeof this)throw new TypeError("Function.prototype.bind - what is trying to be bound is not callable");var e=Array.prototype.slice.call(arguments,1),n=this,i=function(){},o=function(){return n.apply(this instanceof i?this:t,e.concat(Array.prototype.slice.call(arguments)))};return this.prototype&&(i.prototype=this.prototype),o.prototype=new i,o})},{"../polyfills/element-hidden":19,"classlist-polyfill":1}],17:[function(t,e,n){var i=t("../utils/when-dom-ready"),o=t("../components/search");i(o)},{"../components/search":7,"../utils/when-dom-ready":23}],18:[function(t,e,n){var i=t("../utils/dispatch"),o=t("../utils/select"),r=t("../utils/when-dom-ready");r(function(){var t=o(".skipnav")[0],e=o("#main-content")[0];t&&i(t,"click",function(){e.setAttribute("tabindex","0")}),e&&i(e,"blur",function(){e.setAttribute("tabindex","-1")})})},{"../utils/dispatch":21,"../utils/select":22,"../utils/when-dom-ready":23}],19:[function(t,e,n){var i=window.HTMLElement.prototype,o="hidden";o in i||Object.defineProperty(i,o,{get:function(){return this.hasAttribute(o)},set:function(t){t?this.setAttribute(o,""):this.removeAttribute(o)}})},{}],20:[function(t,e,n){"use strict";t("./initializers/polyfills"),t("./initializers/accordions"),t("./initializers/banner"),t("./initializers/footer"),t("./initializers/forms"),t("./initializers/navigation"),t("./initializers/search"),t("./initializers/skip-nav")},{"./initializers/accordions":11,"./initializers/banner":12,"./initializers/footer":13,"./initializers/forms":14,"./initializers/navigation":15,"./initializers/polyfills":16,"./initializers/search":17,"./initializers/skip-nav":18}],21:[function(t,e,n){e.exports=function(t,e,n,i){var o=e.split(/\s+/),r=function(t,e,n){t.attachEvent&&t.attachEvent("on"+e,n,i),t.addEventListener&&t.addEventListener(e,n,i)},s=function(t,e){var n;"createEvent"in document?(n=document.createEvent("HTMLEvents"),n.initEvent(e,!1,!0),t.dispatchEvent(n)):(n=document.createEventObject(),n.eventType=e,t.fireEvent("on"+t.eventType,n))},a=function(t,e,n){t.detachEvent&&t.detachEvent("on"+e,n,i),t.removeEventListener&&t.removeEventListener(e,n,i)};return o.forEach(function(e){r.call(null,t,e,n)}),{trigger:function(){s.call(null,t,o[0])},off:function(){o.forEach(function(e){a.call(null,t,e,n)})}}}},{}],22:[function(t,e,n){function i(t){return!!t&&"object"==typeof t&&1===t.nodeType}e.exports=function(t,e){if("string"!=typeof t)return[];void 0!==e&&i(e)||(e=window.document);var n=e.querySelectorAll(t);return Array.prototype.slice.call(n)}},{}],23:[function(t,e,n){function i(t){return"function"==typeof t}e.exports=function(t){"loading"!==document.readyState?i(t)&&t():document.addEventListener?document.addEventListener("DOMContentLoaded",t):document.attachEvent("onreadystatechange",function(){"complete"===document.readyState&&i(t)&&t()})}},{}]},{},[20]);
2
+ //# sourceMappingURL=uswds.min.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["node_modules/browserify/node_modules/browser-pack/_prelude.js","node_modules/classlist-polyfill/src/index.js","uswds.js","node_modules/lodash.debounce/index.js","src/js/components/accordion.js","src/js/components/banner.js","src/js/components/footer.js","src/js/components/navigation.js","src/js/components/search.js","src/js/components/toggle-field-mask.js","src/js/components/toggle-form-input.js","src/js/components/validator.js","src/js/initializers/accordions.js","src/js/initializers/banner.js","src/js/initializers/footer.js","src/js/initializers/forms.js","src/js/initializers/navigation.js","src/js/initializers/polyfills.js","src/js/initializers/search.js","src/js/initializers/skip-nav.js","src/js/polyfills/element-hidden.js","src/js/start.js","src/js/utils/dispatch.js","src/js/utils/select.js","src/js/utils/when-dom-ready.js"],"names":["e","t","n","r","s","o","u","a","require","i","f","Error","code","l","exports","call","length","1","module","window","self","document","createElement","createElementNS","testElement","classList","add","contains","createMethod","method","original","DOMTokenList","prototype","token","len","arguments","this","toggle","_toggle","force","view","classListProp","protoProp","elemCtrProto","Element","objCtr","Object","strTrim","String","trim","replace","arrIndexOf","Array","indexOf","item","DOMEx","type","message","name","DOMException","checkTokenAndGetIndex","test","ClassList","elem","trimmedClasses","getAttribute","classes","split","push","_updateClassName","setAttribute","toString","classListProto","classListGetter","tokens","updated","remove","index","splice","result","join","defineProperty","classListPropDesc","get","enumerable","configurable","ex","number","__defineGetter__","2","global","debounce","func","wait","options","invokeFunc","time","args","lastArgs","thisArg","lastThis","undefined","lastInvokeTime","apply","leadingEdge","timerId","setTimeout","timerExpired","leading","remainingWait","timeSinceLastCall","lastCallTime","timeSinceLastInvoke","maxing","nativeMin","maxWait","shouldInvoke","now","trailingEdge","trailing","cancel","clearTimeout","flush","debounced","isInvoking","TypeError","FUNC_ERROR_TEXT","toNumber","isObject","nativeMax","value","isObjectLike","isSymbol","objectToString","symbolTag","NAN","other","valueOf","reTrim","isBinary","reIsBinary","reIsOctal","freeParseInt","slice","reIsBadHex","parseInt","freeGlobal","freeSelf","root","Function","objectProto","Math","max","min","Date","3","showPanelListener","el","ev","expanded","hideAll","show","Accordion","buttons","select","forEach","attachEvent","bind","addEventListener","$","selector","hide","button","content","../utils/select","4","bannerClickHandler","event","preventDefault","returnValue","bannerInit","banners","banner","bannerClick","dispatch","../utils/dispatch","5","getSiblings","parentNode","firstChild","matches","nodeType","nextSibling","panelToShow","otherPanels","events","navList","primaryLink","off","innerWidth","6","handleNavElements","toggleElements","navCloseElement","element","body","focus","navInit","navElements","dispatchers","map","clickEvent","navOff","pop","documentElement","7","searchButtonClickHandler","searchForm","hidden","closeSearch","openSearch","deactivateDispatcher","searchOpenClickHandler","searchFormContains","target","VISUALLY_HIDDEN","input","querySelector","searchButton","searchButtonContainer","searchInit","activateDispatcher","searchOff","8","fields","mask","field","9","getSelectors","selectors","selectorsList","getFormParent","tagName","toggleFieldMask","toggleFormInput","showText","hideText","defaultSelectors","outerHTML","fieldSelector","formElement","masked","toggleClickListener","textContent","./toggle-field-mask","10","getData","hasAttributes","data","attrs","attributes","match","validate","key","startsWith","validatorName","validatorPattern","RegExp","validatorSelector","validatorCheckbox","checkList","checked","validationelement","11","whenDOMReady","accordions","../components/accordion","../utils/when-dom-ready","12","../components/banner","13","footerAccordion","../components/footer","lodash.debounce","14","validator","elShowPassword","elFormInput","elValidator","../components/toggle-form-input","../components/validator","15","../components/navigation","16","callback","T","k","O","kValue","oThis","aArgs","fToBind","fNOP","fBound","concat","../polyfills/element-hidden","classlist-polyfill","17","../components/search","18","elSkipnav","elMainContent","19","elproto","HTMLElement","HIDDEN","hasAttribute","set","removeAttribute","20","./initializers/accordions","./initializers/banner","./initializers/footer","./initializers/forms","./initializers/navigation","./initializers/polyfills","./initializers/search","./initializers/skip-nav","21","eventTypes","listener","eventTypeArray","attach","d","trigger","fakeEvent","createEvent","initEvent","dispatchEvent","createEventObject","eventType","fireEvent","detach","detachEvent","removeEventListener","22","isElement","context","selection","querySelectorAll","23","isFunction","arg","cb","readyState"],"mappings":"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","file":"uswds.min.js","sourcesContent":["(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require==\"function\"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error(\"Cannot find module '\"+o+\"'\");throw f.code=\"MODULE_NOT_FOUND\",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require==\"function\"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})","/*\n * classList.js: Cross-browser full element.classList implementation.\n * 2014-07-23\n *\n * By Eli Grey, http://eligrey.com\n * Public Domain.\n * NO WARRANTY EXPRESSED OR IMPLIED. USE AT YOUR OWN RISK.\n */\n\n/*global self, document, DOMException */\n\n/*! @source http://purl.eligrey.com/github/classList.js/blob/master/classList.js*/\n\n/* Copied from MDN:\n * https://developer.mozilla.org/en-US/docs/Web/API/Element/classList\n */\n\nif (\"document\" in window.self) {\n\n // Full polyfill for browsers with no classList support\n // Including IE < Edge missing SVGElement.classList\n if (!(\"classList\" in document.createElement(\"_\"))\n || document.createElementNS && !(\"classList\" in document.createElementNS(\"http://www.w3.org/2000/svg\",\"g\"))) {\n\n (function (view) {\n\n \"use strict\";\n\n if (!('Element' in view)) return;\n\n var\n classListProp = \"classList\"\n , protoProp = \"prototype\"\n , elemCtrProto = view.Element[protoProp]\n , objCtr = Object\n , strTrim = String[protoProp].trim || function () {\n return this.replace(/^\\s+|\\s+$/g, \"\");\n }\n , arrIndexOf = Array[protoProp].indexOf || function (item) {\n var\n i = 0\n , len = this.length\n ;\n for (; i < len; i++) {\n if (i in this && this[i] === item) {\n return i;\n }\n }\n return -1;\n }\n // Vendors: please allow content code to instantiate DOMExceptions\n , DOMEx = function (type, message) {\n this.name = type;\n this.code = DOMException[type];\n this.message = message;\n }\n , checkTokenAndGetIndex = function (classList, token) {\n if (token === \"\") {\n throw new DOMEx(\n \"SYNTAX_ERR\"\n , \"An invalid or illegal string was specified\"\n );\n }\n if (/\\s/.test(token)) {\n throw new DOMEx(\n \"INVALID_CHARACTER_ERR\"\n , \"String contains an invalid character\"\n );\n }\n return arrIndexOf.call(classList, token);\n }\n , ClassList = function (elem) {\n var\n trimmedClasses = strTrim.call(elem.getAttribute(\"class\") || \"\")\n , classes = trimmedClasses ? trimmedClasses.split(/\\s+/) : []\n , i = 0\n , len = classes.length\n ;\n for (; i < len; i++) {\n this.push(classes[i]);\n }\n this._updateClassName = function () {\n elem.setAttribute(\"class\", this.toString());\n };\n }\n , classListProto = ClassList[protoProp] = []\n , classListGetter = function () {\n return new ClassList(this);\n }\n ;\n // Most DOMException implementations don't allow calling DOMException's toString()\n // on non-DOMExceptions. Error's toString() is sufficient here.\n DOMEx[protoProp] = Error[protoProp];\n classListProto.item = function (i) {\n return this[i] || null;\n };\n classListProto.contains = function (token) {\n token += \"\";\n return checkTokenAndGetIndex(this, token) !== -1;\n };\n classListProto.add = function () {\n var\n tokens = arguments\n , i = 0\n , l = tokens.length\n , token\n , updated = false\n ;\n do {\n token = tokens[i] + \"\";\n if (checkTokenAndGetIndex(this, token) === -1) {\n this.push(token);\n updated = true;\n }\n }\n while (++i < l);\n\n if (updated) {\n this._updateClassName();\n }\n };\n classListProto.remove = function () {\n var\n tokens = arguments\n , i = 0\n , l = tokens.length\n , token\n , updated = false\n , index\n ;\n do {\n token = tokens[i] + \"\";\n index = checkTokenAndGetIndex(this, token);\n while (index !== -1) {\n this.splice(index, 1);\n updated = true;\n index = checkTokenAndGetIndex(this, token);\n }\n }\n while (++i < l);\n\n if (updated) {\n this._updateClassName();\n }\n };\n classListProto.toggle = function (token, force) {\n token += \"\";\n\n var\n result = this.contains(token)\n , method = result ?\n force !== true && \"remove\"\n :\n force !== false && \"add\"\n ;\n\n if (method) {\n this[method](token);\n }\n\n if (force === true || force === false) {\n return force;\n } else {\n return !result;\n }\n };\n classListProto.toString = function () {\n return this.join(\" \");\n };\n\n if (objCtr.defineProperty) {\n var classListPropDesc = {\n get: classListGetter\n , enumerable: true\n , configurable: true\n };\n try {\n objCtr.defineProperty(elemCtrProto, classListProp, classListPropDesc);\n } catch (ex) { // IE 8 doesn't support enumerable:true\n if (ex.number === -0x7FF5EC54) {\n classListPropDesc.enumerable = false;\n objCtr.defineProperty(elemCtrProto, classListProp, classListPropDesc);\n }\n }\n } else if (objCtr[protoProp].__defineGetter__) {\n elemCtrProto.__defineGetter__(classListProp, classListGetter);\n }\n\n }(window.self));\n\n } else {\n // There is full or partial native classList support, so just check if we need\n // to normalize the add/remove and toggle APIs.\n\n (function () {\n \"use strict\";\n\n var testElement = document.createElement(\"_\");\n\n testElement.classList.add(\"c1\", \"c2\");\n\n // Polyfill for IE 10/11 and Firefox <26, where classList.add and\n // classList.remove exist but support only one argument at a time.\n if (!testElement.classList.contains(\"c2\")) {\n var createMethod = function(method) {\n var original = DOMTokenList.prototype[method];\n\n DOMTokenList.prototype[method] = function(token) {\n var i, len = arguments.length;\n\n for (i = 0; i < len; i++) {\n token = arguments[i];\n original.call(this, token);\n }\n };\n };\n createMethod('add');\n createMethod('remove');\n }\n\n testElement.classList.toggle(\"c3\", false);\n\n // Polyfill for IE 10 and Firefox <24, where classList.toggle does not\n // support the second argument.\n if (testElement.classList.contains(\"c3\")) {\n var _toggle = DOMTokenList.prototype.toggle;\n\n DOMTokenList.prototype.toggle = function(token, force) {\n if (1 in arguments && !this.contains(token) === !force) {\n return force;\n } else {\n return _toggle.call(this, token);\n }\n };\n\n }\n\n testElement = null;\n }());\n }\n}\n","(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require==\"function\"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error(\"Cannot find module '\"+o+\"'\");throw f.code=\"MODULE_NOT_FOUND\",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require==\"function\"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){\n/*\n * classList.js: Cross-browser full element.classList implementation.\n * 2014-07-23\n *\n * By Eli Grey, http://eligrey.com\n * Public Domain.\n * NO WARRANTY EXPRESSED OR IMPLIED. USE AT YOUR OWN RISK.\n */\n\n/*global self, document, DOMException */\n\n/*! @source http://purl.eligrey.com/github/classList.js/blob/master/classList.js*/\n\n/* Copied from MDN:\n * https://developer.mozilla.org/en-US/docs/Web/API/Element/classList\n */\n\nif (\"document\" in window.self) {\n\n // Full polyfill for browsers with no classList support\n // Including IE < Edge missing SVGElement.classList\n if (!(\"classList\" in document.createElement(\"_\"))\n || document.createElementNS && !(\"classList\" in document.createElementNS(\"http://www.w3.org/2000/svg\",\"g\"))) {\n\n (function (view) {\n\n \"use strict\";\n\n if (!('Element' in view)) return;\n\n var\n classListProp = \"classList\"\n , protoProp = \"prototype\"\n , elemCtrProto = view.Element[protoProp]\n , objCtr = Object\n , strTrim = String[protoProp].trim || function () {\n return this.replace(/^\\s+|\\s+$/g, \"\");\n }\n , arrIndexOf = Array[protoProp].indexOf || function (item) {\n var\n i = 0\n , len = this.length\n ;\n for (; i < len; i++) {\n if (i in this && this[i] === item) {\n return i;\n }\n }\n return -1;\n }\n // Vendors: please allow content code to instantiate DOMExceptions\n , DOMEx = function (type, message) {\n this.name = type;\n this.code = DOMException[type];\n this.message = message;\n }\n , checkTokenAndGetIndex = function (classList, token) {\n if (token === \"\") {\n throw new DOMEx(\n \"SYNTAX_ERR\"\n , \"An invalid or illegal string was specified\"\n );\n }\n if (/\\s/.test(token)) {\n throw new DOMEx(\n \"INVALID_CHARACTER_ERR\"\n , \"String contains an invalid character\"\n );\n }\n return arrIndexOf.call(classList, token);\n }\n , ClassList = function (elem) {\n var\n trimmedClasses = strTrim.call(elem.getAttribute(\"class\") || \"\")\n , classes = trimmedClasses ? trimmedClasses.split(/\\s+/) : []\n , i = 0\n , len = classes.length\n ;\n for (; i < len; i++) {\n this.push(classes[i]);\n }\n this._updateClassName = function () {\n elem.setAttribute(\"class\", this.toString());\n };\n }\n , classListProto = ClassList[protoProp] = []\n , classListGetter = function () {\n return new ClassList(this);\n }\n ;\n // Most DOMException implementations don't allow calling DOMException's toString()\n // on non-DOMExceptions. Error's toString() is sufficient here.\n DOMEx[protoProp] = Error[protoProp];\n classListProto.item = function (i) {\n return this[i] || null;\n };\n classListProto.contains = function (token) {\n token += \"\";\n return checkTokenAndGetIndex(this, token) !== -1;\n };\n classListProto.add = function () {\n var\n tokens = arguments\n , i = 0\n , l = tokens.length\n , token\n , updated = false\n ;\n do {\n token = tokens[i] + \"\";\n if (checkTokenAndGetIndex(this, token) === -1) {\n this.push(token);\n updated = true;\n }\n }\n while (++i < l);\n\n if (updated) {\n this._updateClassName();\n }\n };\n classListProto.remove = function () {\n var\n tokens = arguments\n , i = 0\n , l = tokens.length\n , token\n , updated = false\n , index\n ;\n do {\n token = tokens[i] + \"\";\n index = checkTokenAndGetIndex(this, token);\n while (index !== -1) {\n this.splice(index, 1);\n updated = true;\n index = checkTokenAndGetIndex(this, token);\n }\n }\n while (++i < l);\n\n if (updated) {\n this._updateClassName();\n }\n };\n classListProto.toggle = function (token, force) {\n token += \"\";\n\n var\n result = this.contains(token)\n , method = result ?\n force !== true && \"remove\"\n :\n force !== false && \"add\"\n ;\n\n if (method) {\n this[method](token);\n }\n\n if (force === true || force === false) {\n return force;\n } else {\n return !result;\n }\n };\n classListProto.toString = function () {\n return this.join(\" \");\n };\n\n if (objCtr.defineProperty) {\n var classListPropDesc = {\n get: classListGetter\n , enumerable: true\n , configurable: true\n };\n try {\n objCtr.defineProperty(elemCtrProto, classListProp, classListPropDesc);\n } catch (ex) { // IE 8 doesn't support enumerable:true\n if (ex.number === -0x7FF5EC54) {\n classListPropDesc.enumerable = false;\n objCtr.defineProperty(elemCtrProto, classListProp, classListPropDesc);\n }\n }\n } else if (objCtr[protoProp].__defineGetter__) {\n elemCtrProto.__defineGetter__(classListProp, classListGetter);\n }\n\n }(window.self));\n\n } else {\n // There is full or partial native classList support, so just check if we need\n // to normalize the add/remove and toggle APIs.\n\n (function () {\n \"use strict\";\n\n var testElement = document.createElement(\"_\");\n\n testElement.classList.add(\"c1\", \"c2\");\n\n // Polyfill for IE 10/11 and Firefox <26, where classList.add and\n // classList.remove exist but support only one argument at a time.\n if (!testElement.classList.contains(\"c2\")) {\n var createMethod = function(method) {\n var original = DOMTokenList.prototype[method];\n\n DOMTokenList.prototype[method] = function(token) {\n var i, len = arguments.length;\n\n for (i = 0; i < len; i++) {\n token = arguments[i];\n original.call(this, token);\n }\n };\n };\n createMethod('add');\n createMethod('remove');\n }\n\n testElement.classList.toggle(\"c3\", false);\n\n // Polyfill for IE 10 and Firefox <24, where classList.toggle does not\n // support the second argument.\n if (testElement.classList.contains(\"c3\")) {\n var _toggle = DOMTokenList.prototype.toggle;\n\n DOMTokenList.prototype.toggle = function(token, force) {\n if (1 in arguments && !this.contains(token) === !force) {\n return force;\n } else {\n return _toggle.call(this, token);\n }\n };\n\n }\n\n testElement = null;\n }());\n }\n}\n\n},{}],2:[function(require,module,exports){\n(function (global){\n/**\n * lodash (Custom Build) <https://lodash.com/>\n * Build: `lodash modularize exports=\"npm\" -o ./`\n * Copyright jQuery Foundation and other contributors <https://jquery.org/>\n * Released under MIT license <https://lodash.com/license>\n * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>\n * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n */\n\n/** Used as the `TypeError` message for \"Functions\" methods. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/** Used as references for various `Number` constants. */\nvar NAN = 0 / 0;\n\n/** `Object#toString` result references. */\nvar symbolTag = '[object Symbol]';\n\n/** Used to match leading and trailing whitespace. */\nvar reTrim = /^\\s+|\\s+$/g;\n\n/** Used to detect bad signed hexadecimal string values. */\nvar reIsBadHex = /^[-+]0x[0-9a-f]+$/i;\n\n/** Used to detect binary string values. */\nvar reIsBinary = /^0b[01]+$/i;\n\n/** Used to detect octal string values. */\nvar reIsOctal = /^0o[0-7]+$/i;\n\n/** Built-in method references without a dependency on `root`. */\nvar freeParseInt = parseInt;\n\n/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar objectToString = objectProto.toString;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max,\n nativeMin = Math.min;\n\n/**\n * Gets the timestamp of the number of milliseconds that have elapsed since\n * the Unix epoch (1 January 1970 00:00:00 UTC).\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Date\n * @returns {number} Returns the timestamp.\n * @example\n *\n * _.defer(function(stamp) {\n * console.log(_.now() - stamp);\n * }, _.now());\n * // => Logs the number of milliseconds it took for the deferred invocation.\n */\nvar now = function() {\n return root.Date.now();\n};\n\n/**\n * Creates a debounced function that delays invoking `func` until after `wait`\n * milliseconds have elapsed since the last time the debounced function was\n * invoked. The debounced function comes with a `cancel` method to cancel\n * delayed `func` invocations and a `flush` method to immediately invoke them.\n * Provide `options` to indicate whether `func` should be invoked on the\n * leading and/or trailing edge of the `wait` timeout. The `func` is invoked\n * with the last arguments provided to the debounced function. Subsequent\n * calls to the debounced function return the result of the last `func`\n * invocation.\n *\n * **Note:** If `leading` and `trailing` options are `true`, `func` is\n * invoked on the trailing edge of the timeout only if the debounced function\n * is invoked more than once during the `wait` timeout.\n *\n * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred\n * until to the next tick, similar to `setTimeout` with a timeout of `0`.\n *\n * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)\n * for details over the differences between `_.debounce` and `_.throttle`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to debounce.\n * @param {number} [wait=0] The number of milliseconds to delay.\n * @param {Object} [options={}] The options object.\n * @param {boolean} [options.leading=false]\n * Specify invoking on the leading edge of the timeout.\n * @param {number} [options.maxWait]\n * The maximum time `func` is allowed to be delayed before it's invoked.\n * @param {boolean} [options.trailing=true]\n * Specify invoking on the trailing edge of the timeout.\n * @returns {Function} Returns the new debounced function.\n * @example\n *\n * // Avoid costly calculations while the window size is in flux.\n * jQuery(window).on('resize', _.debounce(calculateLayout, 150));\n *\n * // Invoke `sendMail` when clicked, debouncing subsequent calls.\n * jQuery(element).on('click', _.debounce(sendMail, 300, {\n * 'leading': true,\n * 'trailing': false\n * }));\n *\n * // Ensure `batchLog` is invoked once after 1 second of debounced calls.\n * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });\n * var source = new EventSource('/stream');\n * jQuery(source).on('message', debounced);\n *\n * // Cancel the trailing debounced invocation.\n * jQuery(window).on('popstate', debounced.cancel);\n */\nfunction debounce(func, wait, options) {\n var lastArgs,\n lastThis,\n maxWait,\n result,\n timerId,\n lastCallTime,\n lastInvokeTime = 0,\n leading = false,\n maxing = false,\n trailing = true;\n\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n wait = toNumber(wait) || 0;\n if (isObject(options)) {\n leading = !!options.leading;\n maxing = 'maxWait' in options;\n maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;\n trailing = 'trailing' in options ? !!options.trailing : trailing;\n }\n\n function invokeFunc(time) {\n var args = lastArgs,\n thisArg = lastThis;\n\n lastArgs = lastThis = undefined;\n lastInvokeTime = time;\n result = func.apply(thisArg, args);\n return result;\n }\n\n function leadingEdge(time) {\n // Reset any `maxWait` timer.\n lastInvokeTime = time;\n // Start the timer for the trailing edge.\n timerId = setTimeout(timerExpired, wait);\n // Invoke the leading edge.\n return leading ? invokeFunc(time) : result;\n }\n\n function remainingWait(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime,\n result = wait - timeSinceLastCall;\n\n return maxing ? nativeMin(result, maxWait - timeSinceLastInvoke) : result;\n }\n\n function shouldInvoke(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime;\n\n // Either this is the first call, activity has stopped and we're at the\n // trailing edge, the system time has gone backwards and we're treating\n // it as the trailing edge, or we've hit the `maxWait` limit.\n return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||\n (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));\n }\n\n function timerExpired() {\n var time = now();\n if (shouldInvoke(time)) {\n return trailingEdge(time);\n }\n // Restart the timer.\n timerId = setTimeout(timerExpired, remainingWait(time));\n }\n\n function trailingEdge(time) {\n timerId = undefined;\n\n // Only invoke if we have `lastArgs` which means `func` has been\n // debounced at least once.\n if (trailing && lastArgs) {\n return invokeFunc(time);\n }\n lastArgs = lastThis = undefined;\n return result;\n }\n\n function cancel() {\n if (timerId !== undefined) {\n clearTimeout(timerId);\n }\n lastInvokeTime = 0;\n lastArgs = lastCallTime = lastThis = timerId = undefined;\n }\n\n function flush() {\n return timerId === undefined ? result : trailingEdge(now());\n }\n\n function debounced() {\n var time = now(),\n isInvoking = shouldInvoke(time);\n\n lastArgs = arguments;\n lastThis = this;\n lastCallTime = time;\n\n if (isInvoking) {\n if (timerId === undefined) {\n return leadingEdge(lastCallTime);\n }\n if (maxing) {\n // Handle invocations in a tight loop.\n timerId = setTimeout(timerExpired, wait);\n return invokeFunc(lastCallTime);\n }\n }\n if (timerId === undefined) {\n timerId = setTimeout(timerExpired, wait);\n }\n return result;\n }\n debounced.cancel = cancel;\n debounced.flush = flush;\n return debounced;\n}\n\n/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return !!value && (type == 'object' || type == 'function');\n}\n\n/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return !!value && typeof value == 'object';\n}\n\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\nfunction isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && objectToString.call(value) == symbolTag);\n}\n\n/**\n * Converts `value` to a number.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to process.\n * @returns {number} Returns the number.\n * @example\n *\n * _.toNumber(3.2);\n * // => 3.2\n *\n * _.toNumber(Number.MIN_VALUE);\n * // => 5e-324\n *\n * _.toNumber(Infinity);\n * // => Infinity\n *\n * _.toNumber('3.2');\n * // => 3.2\n */\nfunction toNumber(value) {\n if (typeof value == 'number') {\n return value;\n }\n if (isSymbol(value)) {\n return NAN;\n }\n if (isObject(value)) {\n var other = typeof value.valueOf == 'function' ? value.valueOf() : value;\n value = isObject(other) ? (other + '') : other;\n }\n if (typeof value != 'string') {\n return value === 0 ? value : +value;\n }\n value = value.replace(reTrim, '');\n var isBinary = reIsBinary.test(value);\n return (isBinary || reIsOctal.test(value))\n ? freeParseInt(value.slice(2), isBinary ? 2 : 8)\n : (reIsBadHex.test(value) ? NAN : +value);\n}\n\nmodule.exports = debounce;\n\n}).call(this,typeof global !== \"undefined\" ? global : typeof self !== \"undefined\" ? self : typeof window !== \"undefined\" ? window : {})\n\n},{}],3:[function(require,module,exports){\nvar select = require('../utils/select');\n\n/**\n * @name showPanelListener\n * @desc The event handler for clicking on a button in an accordion.\n * @param {HTMLElement} el - An HTML element most likely a <button>.\n * @param {Object} ev - A DOM event object.\n */\nfunction showPanelListener (el, ev) {\n var expanded = el.getAttribute('aria-expanded') === 'true';\n this.hideAll();\n if (!expanded) {\n this.show(el);\n }\n return false;\n}\n\n/**\n * @class Accordion\n *\n * An accordion component.\n *\n * @param {HTMLElement} el An HTMLElement to turn into an accordion.\n */\nfunction Accordion (el) {\n var self = this;\n this.root = el;\n\n // delegate click events on each <button>\n var buttons = select('button', this.root);\n buttons.forEach(function (el) {\n if (el.attachEvent) {\n el.attachEvent('onclick', showPanelListener.bind(self, el));\n } else {\n el.addEventListener('click', showPanelListener.bind(self, el));\n }\n });\n\n // find the first expanded button\n var expanded = this.$('button[aria-expanded=true]')[ 0 ];\n this.hideAll();\n if (expanded !== undefined) {\n this.show(expanded);\n }\n}\n\n/**\n * @param {String} selector\n * @return {Array}\n */\nAccordion.prototype.$ = function (selector) {\n return select(selector, this.root);\n};\n\n/**\n * @param {HTMLElement} button\n * @return {Accordion}\n */\nAccordion.prototype.hide = function (button) {\n var selector = button.getAttribute('aria-controls'),\n content = this.$('#' + selector)[ 0 ];\n\n button.setAttribute('aria-expanded', false);\n content.setAttribute('aria-hidden', true);\n return this;\n};\n\n/**\n * @param {HTMLElement} button\n * @return {Accordion}\n */\nAccordion.prototype.show = function (button) {\n var selector = button.getAttribute('aria-controls'),\n content = this.$('#' + selector)[ 0 ];\n\n button.setAttribute('aria-expanded', true);\n content.setAttribute('aria-hidden', false);\n return this;\n};\n\n/**\n * @return {Accordion}\n */\nAccordion.prototype.hideAll = function () {\n var self = this;\n var buttons = this.$('ul > li > button, .usa-accordion-button');\n buttons.forEach(function (button) {\n self.hide(button);\n });\n return this;\n};\n\nmodule.exports = Accordion;\n\n},{\"../utils/select\":22}],4:[function(require,module,exports){\nvar select = require('../utils/select');\nvar dispatch = require('../utils/dispatch');\n\nfunction bannerClickHandler (event) {\n (event.preventDefault) ? event.preventDefault() : event.returnValue = false;\n\n this.classList.toggle('usa-banner-header-expanded');\n}\n\nfunction bannerInit () {\n var banners = select('.usa-banner-header');\n\n banners.forEach(function (banner) {\n var bannerClick = bannerClickHandler.bind(banner);\n select('[aria-controls]', banner).forEach(function (button) {\n dispatch(button, 'click', bannerClick);\n });\n });\n}\n\nmodule.exports = bannerInit;\n\n},{\"../utils/dispatch\":21,\"../utils/select\":22}],5:[function(require,module,exports){\nvar select = require('../utils/select');\nvar dispatch = require('../utils/dispatch');\n\nfunction getSiblings (el) {\n var n = el.parentNode.firstChild;\n var matches = [];\n\n while (n) {\n if (n.nodeType == 1 && n != el) {\n matches.push(n);\n }\n n = n.nextSibling;\n }\n\n return matches;\n}\n\nvar showPanelListener = function () {\n var panelToShow = this.parentNode;\n var otherPanels = getSiblings(panelToShow);\n panelToShow.classList.remove('hidden');\n otherPanels.forEach(function (el) {\n el.classList.add('hidden');\n });\n};\n\nvar events = [];\n\nmodule.exports = function footerAccordion () {\n\n var navList = select('.usa-footer-big nav ul');\n var primaryLink = select('.usa-footer-big nav .usa-footer-primary-link');\n\n if (events.length) {\n events.forEach(function (e) {\n e.off();\n });\n events = [];\n }\n\n if (window.innerWidth < 600) {\n\n navList.forEach(function (el) {\n el.classList.add('hidden');\n });\n\n primaryLink.forEach(function (el) {\n events.push(\n dispatch(el, 'click', showPanelListener)\n );\n });\n\n } else {\n navList.forEach(function (el) {\n el.classList.remove('hidden');\n });\n }\n};\n\n},{\"../utils/dispatch\":21,\"../utils/select\":22}],6:[function(require,module,exports){\nvar select = require('../utils/select');\nvar dispatch = require('../utils/dispatch');\n\nvar clickEvent = ('ontouchstart' in document.documentElement ? 'touchstart' : 'click');\nvar dispatchers = [];\n\nfunction handleNavElements (e) {\n\n var toggleElements = select('.usa-overlay, .usa-nav');\n var navCloseElement = select('.usa-nav-close')[ 0 ];\n\n toggleElements.forEach(function (element) {\n element.classList.toggle('is-visible');\n });\n\n document.body.classList.toggle('usa-mobile_nav-active');\n navCloseElement.focus();\n\n return false;\n}\n\nfunction navInit () {\n var navElements = select('.usa-menu-btn, .usa-overlay, .usa-nav-close');\n\n dispatchers = navElements.map(function (element) {\n return dispatch(element, clickEvent, handleNavElements);\n });\n}\n\nfunction navOff () {\n while (dispatchers.length) {\n dispatchers.pop().off();\n }\n}\n\nmodule.exports = navInit;\nmodule.exports.off = navOff;\n\n},{\"../utils/dispatch\":21,\"../utils/select\":22}],7:[function(require,module,exports){\nvar select = require('../utils/select');\nvar dispatch = require('../utils/dispatch');\n\nvar VISUALLY_HIDDEN = 'usa-sr-only';\n\nvar clickEvent = ('ontouchstart' in document.documentElement)\n ? 'touchstart'\n : 'click';\n\nvar searchForm;\nvar searchButton;\nvar searchButtonContainer;\n\nvar activateDispatcher;\nvar deactivateDispatcher;\n\nfunction searchButtonClickHandler (event) {\n if (searchForm.hidden) {\n closeSearch();\n } else {\n openSearch();\n deactivateDispatcher = dispatch(document.body, clickEvent, searchOpenClickHandler);\n }\n\n return false;\n}\n\nfunction searchOpenClickHandler (event) {\n if (! searchFormContains(event.target)) {\n closeSearch();\n deactivateDispatcher.off();\n deactivateDispatcher = undefined;\n }\n}\n\nfunction openSearch () {\n searchForm.classList.remove(VISUALLY_HIDDEN);\n var input = searchForm.querySelector('[type=search]');\n if (input) {\n input.focus();\n }\n searchButton.hidden = true;\n}\n\nfunction closeSearch () {\n searchForm.classList.add(VISUALLY_HIDDEN);\n searchButton.hidden = false;\n}\n\nfunction searchFormContains (element) {\n return (searchForm && searchForm.contains(element)) ||\n (searchButtonContainer && searchButtonContainer.contains(element));\n}\n\nfunction searchInit () {\n searchForm = select('.js-search-form')[ 0 ];\n searchButton = select('.js-search-button')[ 0 ];\n searchButtonContainer = select('.js-search-button-container')[ 0 ];\n\n if (searchButton && searchForm) {\n closeSearch();\n activateDispatcher = dispatch(searchButton, clickEvent, searchButtonClickHandler);\n }\n}\n\nfunction searchOff () {\n if (activateDispatcher) {\n activateDispatcher.off();\n }\n if (deactivateDispatcher) {\n deactivateDispatcher.off();\n }\n}\n\nmodule.exports = searchInit;\nmodule.exports.off = searchOff;\n\n},{\"../utils/dispatch\":21,\"../utils/select\":22}],8:[function(require,module,exports){\n/**\n * Flips given INPUT elements between masked (hiding the field value) and unmasked\n * @param {Array.HTMLElement} fields - An array of INPUT elements\n * @param {Boolean} mask - Whether the mask should be applied, hiding the field value\n */\nmodule.exports = function (fields, mask) {\n fields.forEach(function (field) {\n field.setAttribute('autocapitalize', 'off');\n field.setAttribute('autocorrect', 'off');\n field.setAttribute('type', mask ? 'password' : 'text');\n });\n};\n\n},{}],9:[function(require,module,exports){\nvar toggleFieldMask = require('./toggle-field-mask');\nvar select = require('../utils/select');\n\n/**\n * Component that decorates an HTML element with the ability to toggle the\n * masked state of an input field (like a password) when clicked.\n * The ids of the fields to be masked will be pulled directly from the button's\n * `aria-controls` attribute.\n *\n * @param {HTMLElement} el Parent element containing the fields to be masked\n * @param {String} showText Button text shown when field is masked\n * @param {String} hideText Button text show when field is unmasked\n * @return {}\n */\nvar toggleFormInput = function (el, showText, hideText) {\n var defaultSelectors = el.getAttribute('aria-controls');\n\n if (!defaultSelectors || defaultSelectors.trim().length === 0) {\n throw new Error('Did you forget to define selectors in the aria-controls attribute? Check element ' + el.outerHTML);\n }\n\n var fieldSelector = getSelectors(defaultSelectors);\n var formElement = getFormParent(el);\n if (!formElement) {\n throw new Error('toggleFormInput() needs the supplied element to be inside a <form>. Check element ' + el.outerHTML);\n }\n var fields = select(fieldSelector, formElement);\n var masked = false;\n\n var toggleClickListener = function (ev) {\n ev.preventDefault();\n toggleFieldMask(fields, masked);\n el.textContent = masked ? showText : hideText;\n masked = !masked;\n };\n\n if (el.attachEvent) {\n el.attachEvent('onclick', toggleClickListener);\n } else {\n el.addEventListener('click', toggleClickListener);\n }\n};\n\n/**\n * Helper function to turn a string of ids into valid selectors\n * @param {String} selectors Space separated list of ids of fields to be masked\n * @return {String} Comma separated list of selectors\n */\nfunction getSelectors (selectors) {\n var selectorsList = selectors.split(' ');\n\n return selectorsList.map(function (selector) {\n return '#' + selector;\n }).join(', ');\n}\n\n/**\n * Searches up the tree from the element to find a Form element, and returns it,\n * or null if no Form is found\n * @param {HTMLElement} el - Child element to start search\n */\nfunction getFormParent (el) {\n while (el && el.tagName !== 'FORM') {\n el = el.parentNode;\n }\n return el;\n}\n\nmodule.exports = toggleFormInput;\n\n},{\"../utils/select\":22,\"./toggle-field-mask\":8}],10:[function(require,module,exports){\nvar select = require('../utils/select');\nvar dispatch = require('../utils/dispatch');\n\nmodule.exports = function validator (el) {\n var data = getData(el);\n var key;\n var validatorName;\n var validatorPattern;\n var validatorCheckbox;\n var checkList = select(data.validationelement)[ 0 ];\n\n function validate () {\n for (key in data) {\n if (key.startsWith('validate')) {\n validatorName = key.split('validate')[ 1 ];\n validatorPattern = new RegExp(data[ key ]);\n validatorSelector = '[data-validator=' + validatorName + ']';\n validatorCheckbox = select(validatorSelector, checkList)[ 0 ];\n\n var checked = validatorPattern.test(el.value);\n validatorCheckbox.classList.toggle('usa-checklist-checked', checked);\n }\n }\n }\n\n dispatch(el, 'keyup', validate);\n};\n\n/**\n * Extracts attributes named with the pattern \"data-[NAME]\" from a given\n * HTMLElement, then returns an object populated with the NAME/value pairs.\n * Any hyphens in NAME are removed.\n * @param {HTMLElement} el\n * @return {Object}\n */\n\nfunction getData (el) {\n if (!el.hasAttributes()) return;\n var data = {};\n var attrs = el.attributes;\n for (var i = attrs.length - 1; i >= 0; i--) {\n var matches = attrs[ i ].name.match(/data-(.*)/i);\n if (matches && matches[ 1 ]) {\n var name = matches[ 1 ].replace(/-/, '');\n data[ name ] = attrs[ i ].value;\n }\n }\n return data;\n}\n\n},{\"../utils/dispatch\":21,\"../utils/select\":22}],11:[function(require,module,exports){\nvar select = require('../utils/select');\nvar whenDOMReady = require('../utils/when-dom-ready');\nvar Accordion = require('../components/accordion');\n\nwhenDOMReady(function initAccordions () {\n\n var accordions = select('.usa-accordion, .usa-accordion-bordered');\n accordions.forEach(function (el) {\n new Accordion(el);\n });\n});\n\n},{\"../components/accordion\":3,\"../utils/select\":22,\"../utils/when-dom-ready\":23}],12:[function(require,module,exports){\nvar whenDOMReady = require('../utils/when-dom-ready');\nvar bannerInit = require('../components/banner');\n\nwhenDOMReady(function () {\n\n bannerInit();\n\n});\n\n\n},{\"../components/banner\":4,\"../utils/when-dom-ready\":23}],13:[function(require,module,exports){\nvar debounce = require('lodash.debounce');\nvar whenDOMReady = require('../utils/when-dom-ready');\nvar dispatch = require('../utils/dispatch');\nvar footerAccordion = require('../components/footer');\n\nwhenDOMReady(function () {\n\n footerAccordion();\n\n dispatch(window, 'resize', debounce(footerAccordion, 180));\n\n});\n\n},{\"../components/footer\":5,\"../utils/dispatch\":21,\"../utils/when-dom-ready\":23,\"lodash.debounce\":2}],14:[function(require,module,exports){\nvar whenDOMReady = require('../utils/when-dom-ready');\nvar select = require('../utils/select');\nvar validator = require('../components/validator');\nvar toggleFormInput = require('../components/toggle-form-input');\n\nwhenDOMReady(function () {\n var elShowPassword = select('.usa-show_password')[ 0 ];\n var elFormInput = select('.usa-show_multipassword')[ 0 ];\n var elValidator = select('.js-validate_password')[ 0 ];\n\n elShowPassword && toggleFormInput(elShowPassword, 'Show Password', 'Hide Password');\n elFormInput && toggleFormInput(elFormInput, 'Show my typing', 'Hide my typing');\n elValidator && validator(elValidator);\n});\n\n\n},{\"../components/toggle-form-input\":9,\"../components/validator\":10,\"../utils/select\":22,\"../utils/when-dom-ready\":23}],15:[function(require,module,exports){\nvar whenDOMReady = require('../utils/when-dom-ready');\nvar navInit = require('../components/navigation');\n\nwhenDOMReady(navInit);\n\n},{\"../components/navigation\":6,\"../utils/when-dom-ready\":23}],16:[function(require,module,exports){\n// support for HTMLElement#hidden\nrequire('../polyfills/element-hidden');\n// support for Element#classList\nrequire('classlist-polyfill');\n\n/**\n * This file defines key ECMAScript 5 methods that are used by the Standards\n * but may be missing in older browsers.\n */\n\n/**\n * Array.prototype.forEach()\n * Taken from https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/forEach\n */\n\n// Production steps of ECMA-262, Edition 5, 15.4.4.18\n// Reference: http://es5.github.io/#x15.4.4.18\nif (!Array.prototype.forEach) {\n\n Array.prototype.forEach = function (callback, thisArg) {\n\n var T, k;\n\n if (this === null) {\n throw new TypeError(' this is null or not defined');\n }\n\n // 1. Let O be the result of calling toObject() passing the\n // |this| value as the argument.\n var O = Object(this);\n\n // 2. Let lenValue be the result of calling the Get() internal\n // method of O with the argument \"length\".\n // 3. Let len be toUint32(lenValue).\n var len = O.length >>> 0;\n\n // 4. If isCallable(callback) is false, throw a TypeError exception. \n // See: http://es5.github.com/#x9.11\n if (typeof callback !== 'function') {\n throw new TypeError(callback + ' is not a function');\n }\n\n // 5. If thisArg was supplied, let T be thisArg; else let\n // T be undefined.\n if (arguments.length > 1) {\n T = thisArg;\n }\n\n // 6. Let k be 0\n k = 0;\n\n // 7. Repeat, while k < len\n while (k < len) {\n\n var kValue;\n\n // a. Let Pk be ToString(k).\n // This is implicit for LHS operands of the in operator\n // b. Let kPresent be the result of calling the HasProperty\n // internal method of O with argument Pk.\n // This step can be combined with c\n // c. If kPresent is true, then\n if (k in O) {\n\n // i. Let kValue be the result of calling the Get internal\n // method of O with argument Pk.\n kValue = O[ k ];\n\n // ii. Call the Call internal method of callback with T as\n // the this value and argument list containing kValue, k, and O.\n callback.call(T, kValue, k, O);\n }\n // d. Increase k by 1.\n k++;\n }\n // 8. return undefined\n };\n}\n\n\n/**\n * Function.prototype.bind()\n * Taken from https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function/bind\n */\n\n// Reference: http://es5.github.io/#x15.3.4.5\nif (!Function.prototype.bind) {\n\n Function.prototype.bind = function (oThis) {\n if (typeof this !== 'function') {\n // closest thing possible to the ECMAScript 5\n // internal IsCallable function\n throw new TypeError('Function.prototype.bind - what is trying to be bound is not callable');\n }\n\n var aArgs = Array.prototype.slice.call(arguments, 1),\n fToBind = this,\n fNOP = function () {},\n fBound = function () {\n return fToBind.apply(this instanceof fNOP ? this : oThis,\n aArgs.concat(Array.prototype.slice.call(arguments)));\n };\n\n if (this.prototype) {\n // Function.prototype doesn't have a prototype property\n fNOP.prototype = this.prototype; \n }\n fBound.prototype = new fNOP();\n\n return fBound;\n };\n\n}\n\n},{\"../polyfills/element-hidden\":19,\"classlist-polyfill\":1}],17:[function(require,module,exports){\nvar whenDOMReady = require('../utils/when-dom-ready');\nvar searchInit = require('../components/search');\n\nwhenDOMReady(searchInit);\n\n},{\"../components/search\":7,\"../utils/when-dom-ready\":23}],18:[function(require,module,exports){\nvar dispatch = require('../utils/dispatch');\nvar select = require('../utils/select');\nvar whenDOMReady = require('../utils/when-dom-ready');\n\nwhenDOMReady(function () {\n\n // Fixing skip nav focus behavior in chrome\n var elSkipnav = select('.skipnav')[ 0 ];\n var elMainContent = select('#main-content')[ 0 ];\n\n if (elSkipnav) {\n dispatch(elSkipnav, 'click', function () {\n elMainContent.setAttribute('tabindex', '0');\n });\n }\n\n if (elMainContent) {\n dispatch(elMainContent, 'blur', function () {\n elMainContent.setAttribute('tabindex', '-1');\n });\n }\n});\n\n},{\"../utils/dispatch\":21,\"../utils/select\":22,\"../utils/when-dom-ready\":23}],19:[function(require,module,exports){\nvar elproto = window.HTMLElement.prototype;\nvar HIDDEN = 'hidden';\n\nif (!(HIDDEN in elproto)) {\n\n Object.defineProperty(elproto, HIDDEN, {\n get: function () {\n return this.hasAttribute(HIDDEN);\n },\n set: function (value) {\n if (value) {\n this.setAttribute(HIDDEN, '');\n } else {\n this.removeAttribute(HIDDEN);\n }\n },\n });\n}\n\n},{}],20:[function(require,module,exports){\n'use strict';\n\n/**\n * The 'polyfills' file defines key ECMAScript 5 methods that may be\n * missing from older browsers, so must be loaded first.\n */\nrequire('./initializers/polyfills');\n\nrequire('./initializers/accordions');\nrequire('./initializers/banner');\nrequire('./initializers/footer');\nrequire('./initializers/forms');\nrequire('./initializers/navigation');\nrequire('./initializers/search');\nrequire('./initializers/skip-nav');\n\n},{\"./initializers/accordions\":11,\"./initializers/banner\":12,\"./initializers/footer\":13,\"./initializers/forms\":14,\"./initializers/navigation\":15,\"./initializers/polyfills\":16,\"./initializers/search\":17,\"./initializers/skip-nav\":18}],21:[function(require,module,exports){\n/**\n * Attaches a given listener function to a given element which is\n * triggered by a specified list of event types.\n * @param {HTMLElement} element - the element to which the listener will be attached\n * @param {String} eventTypes - space-separated list of event types which will trigger the listener\n * @param {Function} listener - the function to be executed\n * @returns {Object} - containing a <tt>trigger()</tt> method for executing the listener, and an <tt>off()</tt> method for detaching it\n */\nmodule.exports = function dispatch (element, eventTypes, listener, options) {\n var eventTypeArray = eventTypes.split(/\\s+/);\n\n var attach = function (e, t, d) {\n if (e.attachEvent) {\n e.attachEvent('on' + t, d, options);\n }\n if (e.addEventListener) {\n e.addEventListener(t, d, options);\n }\n };\n\n var trigger = function (e, t) {\n var fakeEvent;\n if ('createEvent' in document) {\n // modern browsers, IE9+\n fakeEvent = document.createEvent('HTMLEvents');\n fakeEvent.initEvent(t, false, true);\n e.dispatchEvent(fakeEvent);\n } else {\n // IE 8\n fakeEvent = document.createEventObject();\n fakeEvent.eventType = t;\n e.fireEvent('on'+e.eventType, fakeEvent);\n }\n };\n\n var detach = function (e, t, d) {\n if (e.detachEvent) {\n e.detachEvent('on' + t, d, options);\n }\n if (e.removeEventListener) {\n e.removeEventListener(t, d, options);\n }\n };\n\n eventTypeArray.forEach(function (eventType) {\n attach.call(null, element, eventType, listener);\n });\n\n return {\n trigger: function () {\n trigger.call(null, element, eventTypeArray[ 0 ]);\n },\n off: function () {\n eventTypeArray.forEach(function (eventType) {\n detach.call(null, element, eventType, listener);\n });\n },\n };\n};\n\n},{}],22:[function(require,module,exports){\n/**\n * @name select\n * @desc selects elements from the DOM by class selector or ID selector.\n * @param {string} selector - The selector to traverse the DOM with.\n * @param {HTMLElement} context - The context to traverse the DOM in.\n * @return {Array.HTMLElement} - An array of DOM nodes or an empty array.\n */\nmodule.exports = function select (selector, context) {\n\n if (typeof selector !== 'string') {\n return [];\n }\n\n if ((context === undefined) || !isElement(context)) {\n context = window.document;\n }\n\n var selection = context.querySelectorAll(selector);\n\n return Array.prototype.slice.call(selection);\n\n};\n\nfunction isElement (value) {\n return !!value && typeof value === 'object' && value.nodeType === 1;\n}\n},{}],23:[function(require,module,exports){\n/*\n * @name DOMLoaded\n * @param {function} cb - The callback function to run when the DOM has loaded.\n */\nmodule.exports = function DOMLoaded (cb) {\n // in case the document is already rendered\n if ('loading' !== document.readyState) {\n if (isFunction(cb)) {\n cb();\n }\n } else if (document.addEventListener) { // modern browsers\n document.addEventListener('DOMContentLoaded', cb);\n } else { // IE <= 8\n document.attachEvent('onreadystatechange', function (){\n if ('complete' === document.readyState) {\n if (isFunction(cb)) {\n cb();\n }\n }\n });\n }\n};\n\nfunction isFunction (arg) {\n return (typeof arg === 'function');\n}\n},{}]},{},[20])\n\n","/**\n * lodash (Custom Build) <https://lodash.com/>\n * Build: `lodash modularize exports=\"npm\" -o ./`\n * Copyright jQuery Foundation and other contributors <https://jquery.org/>\n * Released under MIT license <https://lodash.com/license>\n * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>\n * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n */\n\n/** Used as the `TypeError` message for \"Functions\" methods. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/** Used as references for various `Number` constants. */\nvar NAN = 0 / 0;\n\n/** `Object#toString` result references. */\nvar symbolTag = '[object Symbol]';\n\n/** Used to match leading and trailing whitespace. */\nvar reTrim = /^\\s+|\\s+$/g;\n\n/** Used to detect bad signed hexadecimal string values. */\nvar reIsBadHex = /^[-+]0x[0-9a-f]+$/i;\n\n/** Used to detect binary string values. */\nvar reIsBinary = /^0b[01]+$/i;\n\n/** Used to detect octal string values. */\nvar reIsOctal = /^0o[0-7]+$/i;\n\n/** Built-in method references without a dependency on `root`. */\nvar freeParseInt = parseInt;\n\n/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar objectToString = objectProto.toString;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max,\n nativeMin = Math.min;\n\n/**\n * Gets the timestamp of the number of milliseconds that have elapsed since\n * the Unix epoch (1 January 1970 00:00:00 UTC).\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Date\n * @returns {number} Returns the timestamp.\n * @example\n *\n * _.defer(function(stamp) {\n * console.log(_.now() - stamp);\n * }, _.now());\n * // => Logs the number of milliseconds it took for the deferred invocation.\n */\nvar now = function() {\n return root.Date.now();\n};\n\n/**\n * Creates a debounced function that delays invoking `func` until after `wait`\n * milliseconds have elapsed since the last time the debounced function was\n * invoked. The debounced function comes with a `cancel` method to cancel\n * delayed `func` invocations and a `flush` method to immediately invoke them.\n * Provide `options` to indicate whether `func` should be invoked on the\n * leading and/or trailing edge of the `wait` timeout. The `func` is invoked\n * with the last arguments provided to the debounced function. Subsequent\n * calls to the debounced function return the result of the last `func`\n * invocation.\n *\n * **Note:** If `leading` and `trailing` options are `true`, `func` is\n * invoked on the trailing edge of the timeout only if the debounced function\n * is invoked more than once during the `wait` timeout.\n *\n * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred\n * until to the next tick, similar to `setTimeout` with a timeout of `0`.\n *\n * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)\n * for details over the differences between `_.debounce` and `_.throttle`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to debounce.\n * @param {number} [wait=0] The number of milliseconds to delay.\n * @param {Object} [options={}] The options object.\n * @param {boolean} [options.leading=false]\n * Specify invoking on the leading edge of the timeout.\n * @param {number} [options.maxWait]\n * The maximum time `func` is allowed to be delayed before it's invoked.\n * @param {boolean} [options.trailing=true]\n * Specify invoking on the trailing edge of the timeout.\n * @returns {Function} Returns the new debounced function.\n * @example\n *\n * // Avoid costly calculations while the window size is in flux.\n * jQuery(window).on('resize', _.debounce(calculateLayout, 150));\n *\n * // Invoke `sendMail` when clicked, debouncing subsequent calls.\n * jQuery(element).on('click', _.debounce(sendMail, 300, {\n * 'leading': true,\n * 'trailing': false\n * }));\n *\n * // Ensure `batchLog` is invoked once after 1 second of debounced calls.\n * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });\n * var source = new EventSource('/stream');\n * jQuery(source).on('message', debounced);\n *\n * // Cancel the trailing debounced invocation.\n * jQuery(window).on('popstate', debounced.cancel);\n */\nfunction debounce(func, wait, options) {\n var lastArgs,\n lastThis,\n maxWait,\n result,\n timerId,\n lastCallTime,\n lastInvokeTime = 0,\n leading = false,\n maxing = false,\n trailing = true;\n\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n wait = toNumber(wait) || 0;\n if (isObject(options)) {\n leading = !!options.leading;\n maxing = 'maxWait' in options;\n maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;\n trailing = 'trailing' in options ? !!options.trailing : trailing;\n }\n\n function invokeFunc(time) {\n var args = lastArgs,\n thisArg = lastThis;\n\n lastArgs = lastThis = undefined;\n lastInvokeTime = time;\n result = func.apply(thisArg, args);\n return result;\n }\n\n function leadingEdge(time) {\n // Reset any `maxWait` timer.\n lastInvokeTime = time;\n // Start the timer for the trailing edge.\n timerId = setTimeout(timerExpired, wait);\n // Invoke the leading edge.\n return leading ? invokeFunc(time) : result;\n }\n\n function remainingWait(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime,\n result = wait - timeSinceLastCall;\n\n return maxing ? nativeMin(result, maxWait - timeSinceLastInvoke) : result;\n }\n\n function shouldInvoke(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime;\n\n // Either this is the first call, activity has stopped and we're at the\n // trailing edge, the system time has gone backwards and we're treating\n // it as the trailing edge, or we've hit the `maxWait` limit.\n return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||\n (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));\n }\n\n function timerExpired() {\n var time = now();\n if (shouldInvoke(time)) {\n return trailingEdge(time);\n }\n // Restart the timer.\n timerId = setTimeout(timerExpired, remainingWait(time));\n }\n\n function trailingEdge(time) {\n timerId = undefined;\n\n // Only invoke if we have `lastArgs` which means `func` has been\n // debounced at least once.\n if (trailing && lastArgs) {\n return invokeFunc(time);\n }\n lastArgs = lastThis = undefined;\n return result;\n }\n\n function cancel() {\n if (timerId !== undefined) {\n clearTimeout(timerId);\n }\n lastInvokeTime = 0;\n lastArgs = lastCallTime = lastThis = timerId = undefined;\n }\n\n function flush() {\n return timerId === undefined ? result : trailingEdge(now());\n }\n\n function debounced() {\n var time = now(),\n isInvoking = shouldInvoke(time);\n\n lastArgs = arguments;\n lastThis = this;\n lastCallTime = time;\n\n if (isInvoking) {\n if (timerId === undefined) {\n return leadingEdge(lastCallTime);\n }\n if (maxing) {\n // Handle invocations in a tight loop.\n timerId = setTimeout(timerExpired, wait);\n return invokeFunc(lastCallTime);\n }\n }\n if (timerId === undefined) {\n timerId = setTimeout(timerExpired, wait);\n }\n return result;\n }\n debounced.cancel = cancel;\n debounced.flush = flush;\n return debounced;\n}\n\n/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return !!value && (type == 'object' || type == 'function');\n}\n\n/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return !!value && typeof value == 'object';\n}\n\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\nfunction isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && objectToString.call(value) == symbolTag);\n}\n\n/**\n * Converts `value` to a number.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to process.\n * @returns {number} Returns the number.\n * @example\n *\n * _.toNumber(3.2);\n * // => 3.2\n *\n * _.toNumber(Number.MIN_VALUE);\n * // => 5e-324\n *\n * _.toNumber(Infinity);\n * // => Infinity\n *\n * _.toNumber('3.2');\n * // => 3.2\n */\nfunction toNumber(value) {\n if (typeof value == 'number') {\n return value;\n }\n if (isSymbol(value)) {\n return NAN;\n }\n if (isObject(value)) {\n var other = typeof value.valueOf == 'function' ? value.valueOf() : value;\n value = isObject(other) ? (other + '') : other;\n }\n if (typeof value != 'string') {\n return value === 0 ? value : +value;\n }\n value = value.replace(reTrim, '');\n var isBinary = reIsBinary.test(value);\n return (isBinary || reIsOctal.test(value))\n ? freeParseInt(value.slice(2), isBinary ? 2 : 8)\n : (reIsBadHex.test(value) ? NAN : +value);\n}\n\nmodule.exports = debounce;\n","var select = require('../utils/select');\n\n/**\n * @name showPanelListener\n * @desc The event handler for clicking on a button in an accordion.\n * @param {HTMLElement} el - An HTML element most likely a <button>.\n * @param {Object} ev - A DOM event object.\n */\nfunction showPanelListener (el, ev) {\n var expanded = el.getAttribute('aria-expanded') === 'true';\n this.hideAll();\n if (!expanded) {\n this.show(el);\n }\n return false;\n}\n\n/**\n * @class Accordion\n *\n * An accordion component.\n *\n * @param {HTMLElement} el An HTMLElement to turn into an accordion.\n */\nfunction Accordion (el) {\n var self = this;\n this.root = el;\n\n // delegate click events on each <button>\n var buttons = select('button', this.root);\n buttons.forEach(function (el) {\n if (el.attachEvent) {\n el.attachEvent('onclick', showPanelListener.bind(self, el));\n } else {\n el.addEventListener('click', showPanelListener.bind(self, el));\n }\n });\n\n // find the first expanded button\n var expanded = this.$('button[aria-expanded=true]')[ 0 ];\n this.hideAll();\n if (expanded !== undefined) {\n this.show(expanded);\n }\n}\n\n/**\n * @param {String} selector\n * @return {Array}\n */\nAccordion.prototype.$ = function (selector) {\n return select(selector, this.root);\n};\n\n/**\n * @param {HTMLElement} button\n * @return {Accordion}\n */\nAccordion.prototype.hide = function (button) {\n var selector = button.getAttribute('aria-controls'),\n content = this.$('#' + selector)[ 0 ];\n\n button.setAttribute('aria-expanded', false);\n content.setAttribute('aria-hidden', true);\n return this;\n};\n\n/**\n * @param {HTMLElement} button\n * @return {Accordion}\n */\nAccordion.prototype.show = function (button) {\n var selector = button.getAttribute('aria-controls'),\n content = this.$('#' + selector)[ 0 ];\n\n button.setAttribute('aria-expanded', true);\n content.setAttribute('aria-hidden', false);\n return this;\n};\n\n/**\n * @return {Accordion}\n */\nAccordion.prototype.hideAll = function () {\n var self = this;\n var buttons = this.$('ul > li > button, .usa-accordion-button');\n buttons.forEach(function (button) {\n self.hide(button);\n });\n return this;\n};\n\nmodule.exports = Accordion;\n","var select = require('../utils/select');\nvar dispatch = require('../utils/dispatch');\n\nfunction bannerClickHandler (event) {\n (event.preventDefault) ? event.preventDefault() : event.returnValue = false;\n\n this.classList.toggle('usa-banner-header-expanded');\n}\n\nfunction bannerInit () {\n var banners = select('.usa-banner-header');\n\n banners.forEach(function (banner) {\n var bannerClick = bannerClickHandler.bind(banner);\n select('[aria-controls]', banner).forEach(function (button) {\n dispatch(button, 'click', bannerClick);\n });\n });\n}\n\nmodule.exports = bannerInit;\n","var select = require('../utils/select');\nvar dispatch = require('../utils/dispatch');\n\nfunction getSiblings (el) {\n var n = el.parentNode.firstChild;\n var matches = [];\n\n while (n) {\n if (n.nodeType == 1 && n != el) {\n matches.push(n);\n }\n n = n.nextSibling;\n }\n\n return matches;\n}\n\nvar showPanelListener = function () {\n var panelToShow = this.parentNode;\n var otherPanels = getSiblings(panelToShow);\n panelToShow.classList.remove('hidden');\n otherPanels.forEach(function (el) {\n el.classList.add('hidden');\n });\n};\n\nvar events = [];\n\nmodule.exports = function footerAccordion () {\n\n var navList = select('.usa-footer-big nav ul');\n var primaryLink = select('.usa-footer-big nav .usa-footer-primary-link');\n\n if (events.length) {\n events.forEach(function (e) {\n e.off();\n });\n events = [];\n }\n\n if (window.innerWidth < 600) {\n\n navList.forEach(function (el) {\n el.classList.add('hidden');\n });\n\n primaryLink.forEach(function (el) {\n events.push(\n dispatch(el, 'click', showPanelListener)\n );\n });\n\n } else {\n navList.forEach(function (el) {\n el.classList.remove('hidden');\n });\n }\n};\n","var select = require('../utils/select');\nvar dispatch = require('../utils/dispatch');\n\nvar clickEvent = ('ontouchstart' in document.documentElement ? 'touchstart' : 'click');\nvar dispatchers = [];\n\nfunction handleNavElements (e) {\n\n var toggleElements = select('.usa-overlay, .usa-nav');\n var navCloseElement = select('.usa-nav-close')[ 0 ];\n\n toggleElements.forEach(function (element) {\n element.classList.toggle('is-visible');\n });\n\n document.body.classList.toggle('usa-mobile_nav-active');\n navCloseElement.focus();\n\n return false;\n}\n\nfunction navInit () {\n var navElements = select('.usa-menu-btn, .usa-overlay, .usa-nav-close');\n\n dispatchers = navElements.map(function (element) {\n return dispatch(element, clickEvent, handleNavElements);\n });\n}\n\nfunction navOff () {\n while (dispatchers.length) {\n dispatchers.pop().off();\n }\n}\n\nmodule.exports = navInit;\nmodule.exports.off = navOff;\n","var select = require('../utils/select');\nvar dispatch = require('../utils/dispatch');\n\nvar VISUALLY_HIDDEN = 'usa-sr-only';\n\nvar clickEvent = ('ontouchstart' in document.documentElement)\n ? 'touchstart'\n : 'click';\n\nvar searchForm;\nvar searchButton;\nvar searchButtonContainer;\n\nvar activateDispatcher;\nvar deactivateDispatcher;\n\nfunction searchButtonClickHandler (event) {\n if (searchForm.hidden) {\n closeSearch();\n } else {\n openSearch();\n deactivateDispatcher = dispatch(document.body, clickEvent, searchOpenClickHandler);\n }\n\n return false;\n}\n\nfunction searchOpenClickHandler (event) {\n if (! searchFormContains(event.target)) {\n closeSearch();\n deactivateDispatcher.off();\n deactivateDispatcher = undefined;\n }\n}\n\nfunction openSearch () {\n searchForm.classList.remove(VISUALLY_HIDDEN);\n var input = searchForm.querySelector('[type=search]');\n if (input) {\n input.focus();\n }\n searchButton.hidden = true;\n}\n\nfunction closeSearch () {\n searchForm.classList.add(VISUALLY_HIDDEN);\n searchButton.hidden = false;\n}\n\nfunction searchFormContains (element) {\n return (searchForm && searchForm.contains(element)) ||\n (searchButtonContainer && searchButtonContainer.contains(element));\n}\n\nfunction searchInit () {\n searchForm = select('.js-search-form')[ 0 ];\n searchButton = select('.js-search-button')[ 0 ];\n searchButtonContainer = select('.js-search-button-container')[ 0 ];\n\n if (searchButton && searchForm) {\n closeSearch();\n activateDispatcher = dispatch(searchButton, clickEvent, searchButtonClickHandler);\n }\n}\n\nfunction searchOff () {\n if (activateDispatcher) {\n activateDispatcher.off();\n }\n if (deactivateDispatcher) {\n deactivateDispatcher.off();\n }\n}\n\nmodule.exports = searchInit;\nmodule.exports.off = searchOff;\n","/**\n * Flips given INPUT elements between masked (hiding the field value) and unmasked\n * @param {Array.HTMLElement} fields - An array of INPUT elements\n * @param {Boolean} mask - Whether the mask should be applied, hiding the field value\n */\nmodule.exports = function (fields, mask) {\n fields.forEach(function (field) {\n field.setAttribute('autocapitalize', 'off');\n field.setAttribute('autocorrect', 'off');\n field.setAttribute('type', mask ? 'password' : 'text');\n });\n};\n","var toggleFieldMask = require('./toggle-field-mask');\nvar select = require('../utils/select');\n\n/**\n * Component that decorates an HTML element with the ability to toggle the\n * masked state of an input field (like a password) when clicked.\n * The ids of the fields to be masked will be pulled directly from the button's\n * `aria-controls` attribute.\n *\n * @param {HTMLElement} el Parent element containing the fields to be masked\n * @param {String} showText Button text shown when field is masked\n * @param {String} hideText Button text show when field is unmasked\n * @return {}\n */\nvar toggleFormInput = function (el, showText, hideText) {\n var defaultSelectors = el.getAttribute('aria-controls');\n\n if (!defaultSelectors || defaultSelectors.trim().length === 0) {\n throw new Error('Did you forget to define selectors in the aria-controls attribute? Check element ' + el.outerHTML);\n }\n\n var fieldSelector = getSelectors(defaultSelectors);\n var formElement = getFormParent(el);\n if (!formElement) {\n throw new Error('toggleFormInput() needs the supplied element to be inside a <form>. Check element ' + el.outerHTML);\n }\n var fields = select(fieldSelector, formElement);\n var masked = false;\n\n var toggleClickListener = function (ev) {\n ev.preventDefault();\n toggleFieldMask(fields, masked);\n el.textContent = masked ? showText : hideText;\n masked = !masked;\n };\n\n if (el.attachEvent) {\n el.attachEvent('onclick', toggleClickListener);\n } else {\n el.addEventListener('click', toggleClickListener);\n }\n};\n\n/**\n * Helper function to turn a string of ids into valid selectors\n * @param {String} selectors Space separated list of ids of fields to be masked\n * @return {String} Comma separated list of selectors\n */\nfunction getSelectors (selectors) {\n var selectorsList = selectors.split(' ');\n\n return selectorsList.map(function (selector) {\n return '#' + selector;\n }).join(', ');\n}\n\n/**\n * Searches up the tree from the element to find a Form element, and returns it,\n * or null if no Form is found\n * @param {HTMLElement} el - Child element to start search\n */\nfunction getFormParent (el) {\n while (el && el.tagName !== 'FORM') {\n el = el.parentNode;\n }\n return el;\n}\n\nmodule.exports = toggleFormInput;\n","var select = require('../utils/select');\nvar dispatch = require('../utils/dispatch');\n\nmodule.exports = function validator (el) {\n var data = getData(el);\n var key;\n var validatorName;\n var validatorPattern;\n var validatorCheckbox;\n var checkList = select(data.validationelement)[ 0 ];\n\n function validate () {\n for (key in data) {\n if (key.startsWith('validate')) {\n validatorName = key.split('validate')[ 1 ];\n validatorPattern = new RegExp(data[ key ]);\n validatorSelector = '[data-validator=' + validatorName + ']';\n validatorCheckbox = select(validatorSelector, checkList)[ 0 ];\n\n var checked = validatorPattern.test(el.value);\n validatorCheckbox.classList.toggle('usa-checklist-checked', checked);\n }\n }\n }\n\n dispatch(el, 'keyup', validate);\n};\n\n/**\n * Extracts attributes named with the pattern \"data-[NAME]\" from a given\n * HTMLElement, then returns an object populated with the NAME/value pairs.\n * Any hyphens in NAME are removed.\n * @param {HTMLElement} el\n * @return {Object}\n */\n\nfunction getData (el) {\n if (!el.hasAttributes()) return;\n var data = {};\n var attrs = el.attributes;\n for (var i = attrs.length - 1; i >= 0; i--) {\n var matches = attrs[ i ].name.match(/data-(.*)/i);\n if (matches && matches[ 1 ]) {\n var name = matches[ 1 ].replace(/-/, '');\n data[ name ] = attrs[ i ].value;\n }\n }\n return data;\n}\n","var select = require('../utils/select');\nvar whenDOMReady = require('../utils/when-dom-ready');\nvar Accordion = require('../components/accordion');\n\nwhenDOMReady(function initAccordions () {\n\n var accordions = select('.usa-accordion, .usa-accordion-bordered');\n accordions.forEach(function (el) {\n new Accordion(el);\n });\n});\n","var whenDOMReady = require('../utils/when-dom-ready');\nvar bannerInit = require('../components/banner');\n\nwhenDOMReady(function () {\n\n bannerInit();\n\n});\n\n","var debounce = require('lodash.debounce');\nvar whenDOMReady = require('../utils/when-dom-ready');\nvar dispatch = require('../utils/dispatch');\nvar footerAccordion = require('../components/footer');\n\nwhenDOMReady(function () {\n\n footerAccordion();\n\n dispatch(window, 'resize', debounce(footerAccordion, 180));\n\n});\n","var whenDOMReady = require('../utils/when-dom-ready');\nvar select = require('../utils/select');\nvar validator = require('../components/validator');\nvar toggleFormInput = require('../components/toggle-form-input');\n\nwhenDOMReady(function () {\n var elShowPassword = select('.usa-show_password')[ 0 ];\n var elFormInput = select('.usa-show_multipassword')[ 0 ];\n var elValidator = select('.js-validate_password')[ 0 ];\n\n elShowPassword && toggleFormInput(elShowPassword, 'Show Password', 'Hide Password');\n elFormInput && toggleFormInput(elFormInput, 'Show my typing', 'Hide my typing');\n elValidator && validator(elValidator);\n});\n\n","var whenDOMReady = require('../utils/when-dom-ready');\nvar navInit = require('../components/navigation');\n\nwhenDOMReady(navInit);\n","// support for HTMLElement#hidden\nrequire('../polyfills/element-hidden');\n// support for Element#classList\nrequire('classlist-polyfill');\n\n/**\n * This file defines key ECMAScript 5 methods that are used by the Standards\n * but may be missing in older browsers.\n */\n\n/**\n * Array.prototype.forEach()\n * Taken from https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/forEach\n */\n\n// Production steps of ECMA-262, Edition 5, 15.4.4.18\n// Reference: http://es5.github.io/#x15.4.4.18\nif (!Array.prototype.forEach) {\n\n Array.prototype.forEach = function (callback, thisArg) {\n\n var T, k;\n\n if (this === null) {\n throw new TypeError(' this is null or not defined');\n }\n\n // 1. Let O be the result of calling toObject() passing the\n // |this| value as the argument.\n var O = Object(this);\n\n // 2. Let lenValue be the result of calling the Get() internal\n // method of O with the argument \"length\".\n // 3. Let len be toUint32(lenValue).\n var len = O.length >>> 0;\n\n // 4. If isCallable(callback) is false, throw a TypeError exception. \n // See: http://es5.github.com/#x9.11\n if (typeof callback !== 'function') {\n throw new TypeError(callback + ' is not a function');\n }\n\n // 5. If thisArg was supplied, let T be thisArg; else let\n // T be undefined.\n if (arguments.length > 1) {\n T = thisArg;\n }\n\n // 6. Let k be 0\n k = 0;\n\n // 7. Repeat, while k < len\n while (k < len) {\n\n var kValue;\n\n // a. Let Pk be ToString(k).\n // This is implicit for LHS operands of the in operator\n // b. Let kPresent be the result of calling the HasProperty\n // internal method of O with argument Pk.\n // This step can be combined with c\n // c. If kPresent is true, then\n if (k in O) {\n\n // i. Let kValue be the result of calling the Get internal\n // method of O with argument Pk.\n kValue = O[ k ];\n\n // ii. Call the Call internal method of callback with T as\n // the this value and argument list containing kValue, k, and O.\n callback.call(T, kValue, k, O);\n }\n // d. Increase k by 1.\n k++;\n }\n // 8. return undefined\n };\n}\n\n\n/**\n * Function.prototype.bind()\n * Taken from https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function/bind\n */\n\n// Reference: http://es5.github.io/#x15.3.4.5\nif (!Function.prototype.bind) {\n\n Function.prototype.bind = function (oThis) {\n if (typeof this !== 'function') {\n // closest thing possible to the ECMAScript 5\n // internal IsCallable function\n throw new TypeError('Function.prototype.bind - what is trying to be bound is not callable');\n }\n\n var aArgs = Array.prototype.slice.call(arguments, 1),\n fToBind = this,\n fNOP = function () {},\n fBound = function () {\n return fToBind.apply(this instanceof fNOP ? this : oThis,\n aArgs.concat(Array.prototype.slice.call(arguments)));\n };\n\n if (this.prototype) {\n // Function.prototype doesn't have a prototype property\n fNOP.prototype = this.prototype; \n }\n fBound.prototype = new fNOP();\n\n return fBound;\n };\n\n}\n","var whenDOMReady = require('../utils/when-dom-ready');\nvar searchInit = require('../components/search');\n\nwhenDOMReady(searchInit);\n","var dispatch = require('../utils/dispatch');\nvar select = require('../utils/select');\nvar whenDOMReady = require('../utils/when-dom-ready');\n\nwhenDOMReady(function () {\n\n // Fixing skip nav focus behavior in chrome\n var elSkipnav = select('.skipnav')[ 0 ];\n var elMainContent = select('#main-content')[ 0 ];\n\n if (elSkipnav) {\n dispatch(elSkipnav, 'click', function () {\n elMainContent.setAttribute('tabindex', '0');\n });\n }\n\n if (elMainContent) {\n dispatch(elMainContent, 'blur', function () {\n elMainContent.setAttribute('tabindex', '-1');\n });\n }\n});\n","var elproto = window.HTMLElement.prototype;\nvar HIDDEN = 'hidden';\n\nif (!(HIDDEN in elproto)) {\n\n Object.defineProperty(elproto, HIDDEN, {\n get: function () {\n return this.hasAttribute(HIDDEN);\n },\n set: function (value) {\n if (value) {\n this.setAttribute(HIDDEN, '');\n } else {\n this.removeAttribute(HIDDEN);\n }\n },\n });\n}\n","'use strict';\n\n/**\n * The 'polyfills' file defines key ECMAScript 5 methods that may be\n * missing from older browsers, so must be loaded first.\n */\nrequire('./initializers/polyfills');\n\nrequire('./initializers/accordions');\nrequire('./initializers/banner');\nrequire('./initializers/footer');\nrequire('./initializers/forms');\nrequire('./initializers/navigation');\nrequire('./initializers/search');\nrequire('./initializers/skip-nav');\n","/**\n * Attaches a given listener function to a given element which is\n * triggered by a specified list of event types.\n * @param {HTMLElement} element - the element to which the listener will be attached\n * @param {String} eventTypes - space-separated list of event types which will trigger the listener\n * @param {Function} listener - the function to be executed\n * @returns {Object} - containing a <tt>trigger()</tt> method for executing the listener, and an <tt>off()</tt> method for detaching it\n */\nmodule.exports = function dispatch (element, eventTypes, listener, options) {\n var eventTypeArray = eventTypes.split(/\\s+/);\n\n var attach = function (e, t, d) {\n if (e.attachEvent) {\n e.attachEvent('on' + t, d, options);\n }\n if (e.addEventListener) {\n e.addEventListener(t, d, options);\n }\n };\n\n var trigger = function (e, t) {\n var fakeEvent;\n if ('createEvent' in document) {\n // modern browsers, IE9+\n fakeEvent = document.createEvent('HTMLEvents');\n fakeEvent.initEvent(t, false, true);\n e.dispatchEvent(fakeEvent);\n } else {\n // IE 8\n fakeEvent = document.createEventObject();\n fakeEvent.eventType = t;\n e.fireEvent('on'+e.eventType, fakeEvent);\n }\n };\n\n var detach = function (e, t, d) {\n if (e.detachEvent) {\n e.detachEvent('on' + t, d, options);\n }\n if (e.removeEventListener) {\n e.removeEventListener(t, d, options);\n }\n };\n\n eventTypeArray.forEach(function (eventType) {\n attach.call(null, element, eventType, listener);\n });\n\n return {\n trigger: function () {\n trigger.call(null, element, eventTypeArray[ 0 ]);\n },\n off: function () {\n eventTypeArray.forEach(function (eventType) {\n detach.call(null, element, eventType, listener);\n });\n },\n };\n};\n","/**\n * @name select\n * @desc selects elements from the DOM by class selector or ID selector.\n * @param {string} selector - The selector to traverse the DOM with.\n * @param {HTMLElement} context - The context to traverse the DOM in.\n * @return {Array.HTMLElement} - An array of DOM nodes or an empty array.\n */\nmodule.exports = function select (selector, context) {\n\n if (typeof selector !== 'string') {\n return [];\n }\n\n if ((context === undefined) || !isElement(context)) {\n context = window.document;\n }\n\n var selection = context.querySelectorAll(selector);\n\n return Array.prototype.slice.call(selection);\n\n};\n\nfunction isElement (value) {\n return !!value && typeof value === 'object' && value.nodeType === 1;\n}","/*\n * @name DOMLoaded\n * @param {function} cb - The callback function to run when the DOM has loaded.\n */\nmodule.exports = function DOMLoaded (cb) {\n // in case the document is already rendered\n if ('loading' !== document.readyState) {\n if (isFunction(cb)) {\n cb();\n }\n } else if (document.addEventListener) { // modern browsers\n document.addEventListener('DOMContentLoaded', cb);\n } else { // IE <= 8\n document.attachEvent('onreadystatechange', function (){\n if ('complete' === document.readyState) {\n if (isFunction(cb)) {\n cb();\n }\n }\n });\n }\n};\n\nfunction isFunction (arg) {\n return (typeof arg === 'function');\n}"]}
@@ -0,0 +1,32 @@
1
+ <div class="usa-banner">
2
+ <div class="usa-accordion">
3
+ <header class="usa-banner-header">
4
+ <div class="usa-grid usa-banner-inner">
5
+ <img src="{{ site.baseurl }}/assets/uswds/img/favicons/favicon-57.png" alt="U.S. flag">
6
+ <p>An official website of the United States government</p>
7
+ <button class="usa-accordion-button usa-banner-button"
8
+ aria-expanded="false" aria-controls="gov-banner">
9
+ <span class="usa-banner-button-text">Here's how you know</span>
10
+ </button>
11
+ </div>
12
+ </header>
13
+ <div class="usa-banner-content usa-grid usa-accordion-content" id="gov-banner">
14
+ <div class="usa-banner-guidance-gov usa-width-one-half">
15
+ <img class="usa-banner-icon usa-media_block-img" src="{{ site.baseurl }}/assets/uswds/img/icon-dot-gov.svg" alt="Dot gov">
16
+ <div class="usa-media_block-body">
17
+ <p>
18
+ <strong>The .gov means it’s official.</strong>
19
+ <br>
20
+ Federal government websites always use a .gov or .mil domain. Before sharing sensitive information online, make sure you’re on a .gov or .mil site by inspecting your browser’s address (or “location”) bar.
21
+ </p>
22
+ </div>
23
+ </div>
24
+ <div class="usa-banner-guidance-ssl usa-width-one-half">
25
+ <img class="usa-banner-icon usa-media_block-img" src="{{ site.baseurl }}/assets/uswds/img/icon-https.svg" alt="SSL">
26
+ <div class="usa-media_block-body">
27
+ <p>This site is also protected by an SSL (Secure Sockets Layer) certificate that’s been signed by the U.S. government. The <strong>https://</strong> means all transmitted data is encrypted  — in other words, any information or browsing history that you provide is transmitted securely.</p>
28
+ </div>
29
+ </div>
30
+ </div>
31
+ </div>
32
+ </div>
@@ -1,9 +1,46 @@
1
- <footer role="contentinfo">
2
- <div class="wrap">{% assign repo_url = site.repos[0].url %}
3
- <p>This project is maintained by <a href="{{ site.author.url }}">{{ site.author.name }}</a>. The source is available at <a href="{{ repo_url }}">{{ repo_url }}</a>.</p>
1
+ <footer class="usa-footer usa-footer-slim" role="contentinfo">
2
+ {% assign repo = site.repos[0] %}
3
+ <div class="usa-grid usa-footer-return-to-top">
4
+ <a href="#">Return to top</a>
5
+ </div>
6
+ <div class="usa-footer-primary-section">
7
+ <div class="usa-grid">
8
+ <div class="usa-footer-logo usa-width-one-third">
9
+ {% assign logo = site.logourl | default: '/assets/img/18f-logo.png' %}
10
+ {% assign logoalt = site.logoalt | default: '18F logo' %}
11
+ <img src="{{ site.baseurl }}{{ logo }}" alt="{{ logoalt }}">
12
+ </div>
4
13
 
5
- <p>Hosted on <a href="https://github.com/18F/pages/">18F Pages</a>.
6
- The <a href="https://github.com/18F/guides-template/">18F Guides theme</a> is based on <a href="https://github.com/cfpb/docter/">DOCter</a> from <a href="http://cfpb.github.io/">CFPB</a>.</p>
7
- <p><a href="{{ repo_url }}/edit/18f-pages/{{ page.path }}">Edit this page</a> or <a href="{{ repo_url }}/issues">file an issue</a> on GitHub.</p>
8
- </div><!--/.wrap -->
14
+ <nav class="usa-footer-nav usa-width-one-third">
15
+ <ul class="usa-unstyled-list">
16
+ <li class="usa-footer-primary-content">
17
+ <a class="usa-footer-primary-link" href="https://github.com/18F/guides-template/">
18
+ 18F Guides theme
19
+ </a>
20
+ </li>
21
+ {% if repo %}
22
+ <li class="usa-footer-primary-content">
23
+ <a class="usa-footer-primary-link" href="{{ repo.url }}/edit/{{ repo.default_branch | default: 'master' }}/{{ page.path }}">
24
+ Edit this page
25
+ </a>
26
+ </li>
27
+ <li class="usa-footer-primary-content">
28
+ <a class="usa-footer-primary-link" href="{{ repo.url }}/issues">
29
+ File an issue on GitHub
30
+ </a>
31
+ </li>
32
+ {% endif %}
33
+ </ul>
34
+ </nav>
35
+ <div class="usa-width-one-third">
36
+ <ul class="usa-unstyled-list">
37
+ <li class="usa-footer-primary-content">
38
+ Maintained by <a href="{{ site.author.url }}">{{ site.author.name }}</a>
39
+ </li>
40
+ <li class="usa-footer-primary-content">
41
+ Hosted by <a href="https://federalist.fr.cloud.gov/">Federalist</a>
42
+ </li>
43
+ </ul>
44
+ </div>
45
+ </div>
9
46
  </footer>
@@ -0,0 +1,70 @@
1
+ <head>
2
+ <meta http-equiv="X-UA-Compatible" content="IE=edge">
3
+ <meta charset="utf-8">
4
+ <meta name="viewport" content="width=device-width">
5
+
6
+
7
+
8
+
9
+ <!-- Title, Twitter, and OpenGraph data
10
+ ================================================== -->
11
+
12
+ <meta name="twitter:site" content="@18F">
13
+ <meta name="twitter:creator" content="@18F">
14
+ <meta property="og:type" content="website" />
15
+
16
+ {% if site.title %}
17
+ <meta property="og:site_name" content="{{ site.title | xml_escape }}" />
18
+ {% endif %}
19
+
20
+ {% if site.url %}
21
+ <meta property="og:url" content="{{ site.url }}{{ page.url }}" />
22
+ <link rel="canonical" href="{{ site.url }}{{ page.url }}" />
23
+ {% endif %}
24
+
25
+ <!-- title, description, and image may change per-page, per-post -->
26
+ {% if page.title %}
27
+ <title>{{ page.title }} - {{ site.name }}</title>
28
+ <meta property="og:title" content="{{ page.title | xml_escape }} - {{ site.name }}" />
29
+ {% elsif site.title %}
30
+ <title>{{ site.title }} - {{ site.name }}</title>
31
+ <meta property="og:title" content="{{ site.title | xml_escape }} - {{ site.name }}" />
32
+ {% endif %}
33
+
34
+ {% if page.description %}
35
+ <meta name="description" content="{{ page.description | xml_escape }}">
36
+ <meta property="og:description" content="{{ page.description | xml_escape }}" />
37
+ {% elsif site.description %}
38
+ <meta name="description" content="{{ site.description | xml_escape }}">
39
+ <meta property="og:description" content="{{ site.description | xml_escape }}" />
40
+ {% endif %}
41
+
42
+ <!-- use large summary card for posts with images, normal summary otherwise -->
43
+ {% if page.image %}
44
+ <meta name="twitter:card" content="summary_large_image">
45
+ <meta property="og:image" content="{{ site.url }}{{ page.image }}" />
46
+ {% else %}
47
+ <meta name="twitter:card" content="summary">
48
+ <meta property="og:image" content="https://18f.gsa.gov/assets/images/18F-Logo-L.png" />
49
+ {% endif %}
50
+
51
+ <!-- If any of the file paths after guides_style_18f_asset_root change, the old ones need to stay in place. See https://github.com/18F/pages-server/issues/55 for more information. -->
52
+ <!--<link rel="shortcut icon" type="image/ico" href="{% guides_style_18f_asset_root %}/assets/favicons/favicon.ico" />
53
+ <link rel="icon" type="image/png" href="{% guides_style_18f_asset_root %}/assets/favicons/favicon.png" />
54
+ <link rel="apple-touch-icon-precomposed" href="{% guides_style_18f_asset_root %}/assets/favicons/18f-center-57.png" />
55
+ <link rel="apple-touch-icon-precomposed" sizes="72x72" href="{% guides_style_18f_asset_root %}/assets/favicons/18f-center-72.png" />
56
+ <link rel="apple-touch-icon-precomposed" sizes="114x114" href="{% guides_style_18f_asset_root %}/assets/favicons/18f-center-114.png" />
57
+ <link rel="apple-touch-icon-precomposed" sizes="144x144" href="{% guides_style_18f_asset_root %}/assets/favicons/18f-center-144.png"/>
58
+ <link rel="icon" type="image/png" sizes="192x192" href="{% guides_style_18f_asset_root %}/assets/favicons/18f-center-192.png" />-->
59
+ <link rel="stylesheet" href="{% guides_style_18f_asset_root %}/assets/uswds/css/uswds.min.css">
60
+ <link rel="stylesheet" href="{% guides_style_18f_asset_root %}/assets/css/main.css">
61
+ {% for style in site.styles %}
62
+ <link rel="stylesheet" href="{{ site.baseurl }}/{{ style }}">
63
+ {% endfor %}
64
+ {% for style in page.styles %}
65
+ <link rel="stylesheet" href="{{ site.baseurl }}/{{ style }}">
66
+ {% endfor %}
67
+
68
+ <script src="{% guides_style_18f_asset_root %}/assets/uswds/js/uswds.min.js"></script>
69
+
70
+ </head>
@@ -1,67 +1,56 @@
1
- <head>
2
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
3
- <meta charset="utf-8">
4
- <meta name="viewport" content="width=device-width">
5
-
6
-
7
-
8
-
9
- <!-- Title, Twitter, and OpenGraph data
10
- ================================================== -->
11
-
12
- <meta name="twitter:site" content="@18F">
13
- <meta name="twitter:creator" content="@18F">
14
- <meta property="og:type" content="website" />
15
-
16
- {% if site.title %}
17
- <meta property="og:site_name" content="{{ site.title | xml_escape }}" />
18
- {% endif %}
19
-
20
- {% if site.url %}
21
- <meta property="og:url" content="{{ site.url }}{{ page.url }}" />
22
- <link rel="canonical" href="{{ site.url }}{{ page.url }}" />
23
- {% endif %}
24
-
25
- <!-- title, description, and image may change per-page, per-post -->
26
- {% if page.title %}
27
- <title>{{ page.title }} - {{ site.name }}</title>
28
- <meta property="og:title" content="{{ page.title | xml_escape }} - {{ site.name }}" />
29
- {% elsif site.title %}
30
- <title>{{ site.title }} - {{ site.name }}</title>
31
- <meta property="og:title" content="{{ site.title | xml_escape }} - {{ site.name }}" />
32
- {% endif %}
33
-
34
- {% if page.description %}
35
- <meta name="description" content="{{ page.description | xml_escape }}">
36
- <meta property="og:description" content="{{ page.description | xml_escape }}" />
37
- {% elsif site.description %}
38
- <meta name="description" content="{{ site.description | xml_escape }}">
39
- <meta property="og:description" content="{{ site.description | xml_escape }}" />
40
- {% endif %}
41
-
42
- <!-- use large summary card for posts with images, normal summary otherwise -->
43
- {% if page.image %}
44
- <meta name="twitter:card" content="summary_large_image">
45
- <meta property="og:image" content="{{ site.url }}{{ page.image }}" />
46
- {% else %}
47
- <meta name="twitter:card" content="summary">
48
- <meta property="og:image" content="https://18f.gsa.gov/assets/images/18F-Logo-L.png" />
49
- {% endif %}
50
-
51
- <!-- If any of the file paths after guides_style_18f_asset_root change, the old ones need to stay in place. See https://github.com/18F/pages-server/issues/55 for more information. -->
52
- <link rel="shortcut icon" type="image/ico" href="{% guides_style_18f_asset_root %}/assets/favicons/favicon.ico" />
53
- <link rel="icon" type="image/png" href="{% guides_style_18f_asset_root %}/assets/favicons/favicon.png" />
54
- <link rel="apple-touch-icon-precomposed" href="{% guides_style_18f_asset_root %}/assets/favicons/18f-center-57.png" />
55
- <link rel="apple-touch-icon-precomposed" sizes="72x72" href="{% guides_style_18f_asset_root %}/assets/favicons/18f-center-72.png" />
56
- <link rel="apple-touch-icon-precomposed" sizes="114x114" href="{% guides_style_18f_asset_root %}/assets/favicons/18f-center-114.png" />
57
- <link rel="apple-touch-icon-precomposed" sizes="144x144" href="{% guides_style_18f_asset_root %}/assets/favicons/18f-center-144.png"/>
58
- <link rel="icon" type="image/png" sizes="192x192" href="{% guides_style_18f_asset_root %}/assets/favicons/18f-center-192.png" />
59
- <link href='{% guides_style_18f_asset_root %}/assets/css/google-fonts.css' rel='stylesheet' type='text/css' />
60
- <link rel="stylesheet" href="{% guides_style_18f_asset_root %}/assets/css/styles.css" type='text/css' />{% for style in site.styles %}
61
- <link rel="stylesheet" href="{{ site.baseurl }}/{{ style }}" type='text/css' />{% endfor %}{% for style in page.styles %}
62
- <link rel="stylesheet" href="{{ site.baseurl }}/{{ style }}" type='text/css' />{% endfor %}
63
- <!--[if lt IE 9]>
64
- <script src="{% guides_style_18f_asset_root %}/assets/js/html5shiv.js"></script>
65
- <script src="{% guides_style_18f_asset_root %}/assets/js/respond.js"></script>
66
- <![endif]-->
67
- </head>
1
+ <header class="usa-header usa-header-{{ header.type | default: 'extended' }}" role="banner">
2
+ {% guides_style_18f_include banner.html %}
3
+ <a class="usa-skipnav" href="#main">Skip to main content</a>
4
+ <div class="usa-navbar">
5
+ <button class="usa-menu-btn">Menu</button>
6
+ <div class="usa-logo" id="logo">
7
+ <em class="usa-logo-text">
8
+ <a href="#" accesskey="1" title="Home" aria-label="Home" href="{{ site.baseurl }}/">{{ site.name }}</a>
9
+ </em>
10
+ </div>
11
+ </div>
12
+
13
+
14
+
15
+ <nav role="navigation" class="usa-nav">
16
+ <div class="usa-nav-inner">
17
+ <button class="usa-nav-close">
18
+ <img src="{{ site.baseurl }}/assets/uswds/img/close.svg" alt="close">
19
+ </button>
20
+
21
+ {% assign primary_links = site.header_nav.links %}
22
+ {% if primary_links %}
23
+ <ul class="usa-nav-primary usa-accordion">
24
+ {% for _section in primary_links %}
25
+ <li>
26
+ {# logic for accordions should go here in an if/else #}
27
+ <a class="usa-nav-link" href="{{ _section.href | relative_url }}">
28
+ <span>{{ _section.text }}</span>
29
+ </a>
30
+ </li>
31
+ {% endfor %}
32
+ </ul>
33
+ {% endif %}
34
+
35
+ <div class="usa-nav-secondary">
36
+ <ul class="usa-unstyled-list usa-nav-secondary-links">
37
+ {% if site.jekyll_pages_api_search %}
38
+ <li>
39
+ <div role="search" class="usa-search usa-search-small">
40
+ {% jekyll_pages_api_search_interface %}
41
+ </div>
42
+ </li>
43
+ {% endif %}
44
+ {% if site.back_link %}
45
+ <li>
46
+ <a href="{{ site.back_link.url }}">{{ site.back_link.text }}</a>
47
+ </li>
48
+ {% endif %}
49
+ </ul>
50
+ </div>
51
+
52
+ </div>
53
+ </nav>
54
+
55
+ </header>
56
+ <div class="usa-overlay"></div>
@@ -1,13 +1,9 @@
1
1
  {% if parent.children %}
2
2
  {% capture expand_nav %}{% guides_style_18f_should_expand_nav parent, parent_url %}{% endcapture %}
3
- <button class="expand-subnav"
4
- aria-expanded="{{ expand_nav }}"
5
- aria-controls="nav-collapsible-{{ forloop.index }}">+</button>
6
- <ul class="nav-children" id="nav-collapsible-{{ forloop.index }}"
7
- aria-hidden="{% if expand_nav == 'true' %}false{% else %}true{% endif %}">
3
+ <ul class="usa-sidenav-sub_list">
8
4
  {% for child in parent.children %}
9
5
  {% capture child_url %}{{ parent_url }}{{ child.url }}{% endcapture %}
10
- <li class="{% if page.url == child_url %}sidebar-nav-active{% endif %}">
6
+ <li class="{% if page.url == child_url %}usa-current{% endif %}">
11
7
  <a href="{% if child.internal == true %}{{ site.baseurl }}{{ child_url }}{% else %}{{ child.url }}{% endif %}"
12
8
  title="{% if page.url == child_url %}Current Page{% else %}{{ child.text }}{% endif %}">{{ child.text }}</a>
13
9
  {% assign parent = child %}{% assign parent_url = child_url %}
@@ -1,14 +1,13 @@
1
- <aside>
2
- <p class="intro">{{ site.subtitle }}</p>
3
- <nav class="sidebar-nav" role="navigation">
4
- <ul>{% for link in site.navigation %}{% capture parent_url %}/{{ link.url }}{% endcapture %}
5
- <li class="group {% if page.url == parent_url %}sidebar-nav-active{% endif %}">
6
- <a href="{% if link.internal == true %}{{ site.baseurl }}/{% endif %}{{ link.url }}"
7
- title="{% if page.url == parent_url %}Current Page
1
+ <aside class="usa-width-one-third usa-layout-docs-sidenav">
2
+ <ul class="usa-sidenav-list">
3
+ {% for link in site.navigation %}{% capture parent_url %}/{{ link.url }}{% endcapture %}
4
+ <li>
5
+ <a href="{% if link.internal == true %}{{ site.baseurl }}/{% endif %}{{ link.url }}"
6
+ class="{% if page.url == parent_url %}usa-current{% endif %}"
7
+ title="{% if page.url == parent_url %}Current Page
8
8
  {% else %}{{ link.text }}{% endif %}">{{ link.text }}</a>
9
9
  {% assign parent = link %}
10
10
  {% guides_style_18f_include sidebar-children.html %}
11
11
  </li>{% endfor %}
12
12
  </ul>
13
- </nav>
14
13
  </aside>
@@ -1,37 +1,20 @@
1
1
  <!DOCTYPE html>
2
- <html lang='en'>
2
+ <html lang="{{ page.lang | default: site.lang | default: 'en-US' }}">
3
3
 
4
- {% guides_style_18f_include header.html %}
4
+ {% guides_style_18f_include head.html %}
5
5
 
6
6
  <body>
7
7
 
8
8
  <div class="container">
9
- <a class="skip-link visuallyhidden focusable" href="#main">Skip to Main Content</a>
9
+ {% guides_style_18f_include header.html %}
10
+ <div class="usa-grid">
10
11
 
11
- <header role="banner">
12
-
13
- <div class="wrap">
14
-
15
-
16
- <h1 class="site-title"><a class="title-link" href="{{ site.baseurl }}/">{{ site.name }}</a></h1>{% if site.back_link %}
17
-
18
- {% jekyll_pages_api_search_interface %}
19
-
20
- <div class="back-link"><a href="{{ site.back_link.url }}">&laquo; {{ site.back_link.text }}</a></div>{% endif %}
21
-
22
-
23
- </div>
24
-
25
- </header>
26
-
27
- <div class="wrap content">
28
-
29
- <section id="main" class="main-content" role="main">
30
- <h2>{{ page.title }}</h2>
12
+ {% guides_style_18f_include sidebar.html %}
13
+ <main id="main" class="usa-width-two-thirds usa-layout-docs-main_content" role="main">
14
+ <h1>{{ page.title }}</h1>
31
15
  {{ content }}
32
- </section>
16
+ </main>
33
17
 
34
- {% guides_style_18f_include sidebar.html %}
35
18
 
36
19
  </div><!-- /.wrap content -->
37
20
 
@@ -1,4 +1,5 @@
1
1
  @import "jekyll_pages_api_search";
2
+ @import "variables";
2
3
 
3
4
  /*
4
5
  Main.css
File without changes
@@ -1,5 +1,5 @@
1
1
  # @author Mike Bland (michael.bland@gsa.gov)
2
2
 
3
3
  module GuidesStyle18F
4
- VERSION = '0.4.9'
4
+ VERSION = '1.0.0'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: guides_style_18f
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.9
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mike Bland
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-07-18 00:00:00.000000000 Z
11
+ date: 2017-04-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jekyll
@@ -190,7 +190,9 @@ files:
190
190
  - CONTRIBUTING.md
191
191
  - LICENSE.md
192
192
  - README.md
193
- - assets/css/google-fonts.css
193
+ - assets/css/main.css
194
+ - assets/css/page.css
195
+ - assets/css/search.css
194
196
  - assets/favicons/18f-center-114.png
195
197
  - assets/favicons/18f-center-144.png
196
198
  - assets/favicons/18f-center-16.png
@@ -220,6 +222,120 @@ files:
220
222
  - assets/js/vendor/jquery-1.11.2.min.js
221
223
  - assets/js/vendor/private-eye-1.0.0.js
222
224
  - assets/js/vendor/private-eye-1.1.0.js
225
+ - assets/uswds/CONTRIBUTING.md
226
+ - assets/uswds/LICENSE.md
227
+ - assets/uswds/README.md
228
+ - assets/uswds/css/uswds.css
229
+ - assets/uswds/css/uswds.min.css
230
+ - assets/uswds/css/uswds.min.css.map
231
+ - assets/uswds/fonts/merriweather-bold-webfont.eot
232
+ - assets/uswds/fonts/merriweather-bold-webfont.ttf
233
+ - assets/uswds/fonts/merriweather-bold-webfont.woff
234
+ - assets/uswds/fonts/merriweather-bold-webfont.woff2
235
+ - assets/uswds/fonts/merriweather-italic-webfont.eot
236
+ - assets/uswds/fonts/merriweather-italic-webfont.ttf
237
+ - assets/uswds/fonts/merriweather-italic-webfont.woff
238
+ - assets/uswds/fonts/merriweather-italic-webfont.woff2
239
+ - assets/uswds/fonts/merriweather-light-webfont.eot
240
+ - assets/uswds/fonts/merriweather-light-webfont.ttf
241
+ - assets/uswds/fonts/merriweather-light-webfont.woff
242
+ - assets/uswds/fonts/merriweather-light-webfont.woff2
243
+ - assets/uswds/fonts/merriweather-regular-webfont.eot
244
+ - assets/uswds/fonts/merriweather-regular-webfont.ttf
245
+ - assets/uswds/fonts/merriweather-regular-webfont.woff
246
+ - assets/uswds/fonts/merriweather-regular-webfont.woff2
247
+ - assets/uswds/fonts/sourcesanspro-bold-webfont.eot
248
+ - assets/uswds/fonts/sourcesanspro-bold-webfont.ttf
249
+ - assets/uswds/fonts/sourcesanspro-bold-webfont.woff
250
+ - assets/uswds/fonts/sourcesanspro-bold-webfont.woff2
251
+ - assets/uswds/fonts/sourcesanspro-italic-webfont.eot
252
+ - assets/uswds/fonts/sourcesanspro-italic-webfont.ttf
253
+ - assets/uswds/fonts/sourcesanspro-italic-webfont.woff
254
+ - assets/uswds/fonts/sourcesanspro-italic-webfont.woff2
255
+ - assets/uswds/fonts/sourcesanspro-light-webfont.eot
256
+ - assets/uswds/fonts/sourcesanspro-light-webfont.ttf
257
+ - assets/uswds/fonts/sourcesanspro-light-webfont.woff
258
+ - assets/uswds/fonts/sourcesanspro-light-webfont.woff2
259
+ - assets/uswds/fonts/sourcesanspro-regular-webfont.eot
260
+ - assets/uswds/fonts/sourcesanspro-regular-webfont.ttf
261
+ - assets/uswds/fonts/sourcesanspro-regular-webfont.woff
262
+ - assets/uswds/fonts/sourcesanspro-regular-webfont.woff2
263
+ - assets/uswds/img/alerts/error.png
264
+ - assets/uswds/img/alerts/error.svg
265
+ - assets/uswds/img/alerts/info.png
266
+ - assets/uswds/img/alerts/info.svg
267
+ - assets/uswds/img/alerts/success.png
268
+ - assets/uswds/img/alerts/success.svg
269
+ - assets/uswds/img/alerts/warning.png
270
+ - assets/uswds/img/alerts/warning.svg
271
+ - assets/uswds/img/angle-arrow-down-hover.png
272
+ - assets/uswds/img/angle-arrow-down-hover.svg
273
+ - assets/uswds/img/angle-arrow-down-primary-hover.png
274
+ - assets/uswds/img/angle-arrow-down-primary-hover.svg
275
+ - assets/uswds/img/angle-arrow-down-primary.png
276
+ - assets/uswds/img/angle-arrow-down-primary.svg
277
+ - assets/uswds/img/angle-arrow-down.png
278
+ - assets/uswds/img/angle-arrow-down.svg
279
+ - assets/uswds/img/angle-arrow-up-primary-hover.png
280
+ - assets/uswds/img/angle-arrow-up-primary-hover.svg
281
+ - assets/uswds/img/angle-arrow-up-primary.png
282
+ - assets/uswds/img/angle-arrow-up-primary.svg
283
+ - assets/uswds/img/arrow-down.png
284
+ - assets/uswds/img/arrow-down.svg
285
+ - assets/uswds/img/arrow-right.png
286
+ - assets/uswds/img/arrow-right.svg
287
+ - assets/uswds/img/circle-124.png
288
+ - assets/uswds/img/close.png
289
+ - assets/uswds/img/close.svg
290
+ - assets/uswds/img/correct8.png
291
+ - assets/uswds/img/correct8.svg
292
+ - assets/uswds/img/correct9.png
293
+ - assets/uswds/img/correct9.svg
294
+ - assets/uswds/img/external-link-alt-hover.png
295
+ - assets/uswds/img/external-link-alt-hover.svg
296
+ - assets/uswds/img/external-link-alt.png
297
+ - assets/uswds/img/external-link-alt.svg
298
+ - assets/uswds/img/external-link-hover.png
299
+ - assets/uswds/img/external-link-hover.svg
300
+ - assets/uswds/img/external-link.png
301
+ - assets/uswds/img/external-link.svg
302
+ - assets/uswds/img/favicons/favicon-114.png
303
+ - assets/uswds/img/favicons/favicon-144.png
304
+ - assets/uswds/img/favicons/favicon-16.png
305
+ - assets/uswds/img/favicons/favicon-192.png
306
+ - assets/uswds/img/favicons/favicon-40.png
307
+ - assets/uswds/img/favicons/favicon-57.png
308
+ - assets/uswds/img/favicons/favicon-72.png
309
+ - assets/uswds/img/favicons/favicon.ico
310
+ - assets/uswds/img/favicons/favicon.png
311
+ - assets/uswds/img/hero.png
312
+ - assets/uswds/img/icon-dot-gov.svg
313
+ - assets/uswds/img/icon-https.svg
314
+ - assets/uswds/img/logo-img.png
315
+ - assets/uswds/img/minus-alt.png
316
+ - assets/uswds/img/minus-alt.svg
317
+ - assets/uswds/img/minus.png
318
+ - assets/uswds/img/minus.svg
319
+ - assets/uswds/img/plus-alt.png
320
+ - assets/uswds/img/plus-alt.svg
321
+ - assets/uswds/img/plus.png
322
+ - assets/uswds/img/plus.svg
323
+ - assets/uswds/img/search-alt.png
324
+ - assets/uswds/img/search-alt.svg
325
+ - assets/uswds/img/search.png
326
+ - assets/uswds/img/search.svg
327
+ - assets/uswds/img/social-icons/png/facebook25.png
328
+ - assets/uswds/img/social-icons/png/rss25.png
329
+ - assets/uswds/img/social-icons/png/twitter16.png
330
+ - assets/uswds/img/social-icons/png/youtube15.png
331
+ - assets/uswds/img/social-icons/svg/facebook25.svg
332
+ - assets/uswds/img/social-icons/svg/rss25.svg
333
+ - assets/uswds/img/social-icons/svg/twitter16.svg
334
+ - assets/uswds/img/social-icons/svg/youtube15.svg
335
+ - assets/uswds/img/us_flag_small.png
336
+ - assets/uswds/js/uswds.js
337
+ - assets/uswds/js/uswds.min.js
338
+ - assets/uswds/js/uswds.min.js.map
223
339
  - lib/guides_style_18f.rb
224
340
  - lib/guides_style_18f/assets.rb
225
341
  - lib/guides_style_18f/breadcrumbs.rb
@@ -228,8 +344,10 @@ files:
228
344
  - lib/guides_style_18f/generator.rb
229
345
  - lib/guides_style_18f/includes.rb
230
346
  - lib/guides_style_18f/includes/analytics.html
347
+ - lib/guides_style_18f/includes/banner.html
231
348
  - lib/guides_style_18f/includes/breadcrumbs.html
232
349
  - lib/guides_style_18f/includes/footer.html
350
+ - lib/guides_style_18f/includes/head.html
233
351
  - lib/guides_style_18f/includes/header.html
234
352
  - lib/guides_style_18f/includes/scripts.html
235
353
  - lib/guides_style_18f/includes/sidebar-children.html
@@ -245,6 +363,7 @@ files:
245
363
  - lib/guides_style_18f/sass/_guides_style_18f_custom.scss
246
364
  - lib/guides_style_18f/sass/_guides_style_18f_main.scss
247
365
  - lib/guides_style_18f/sass/_guides_style_18f_syntax.scss
366
+ - lib/guides_style_18f/sass/_variables.scss
248
367
  - lib/guides_style_18f/sass/guides_style_18f.scss
249
368
  - lib/guides_style_18f/tags.rb
250
369
  - lib/guides_style_18f/update.rb
@@ -269,7 +388,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
269
388
  version: '0'
270
389
  requirements: []
271
390
  rubyforge_project:
272
- rubygems_version: 2.6.4
391
+ rubygems_version: 2.5.1
273
392
  signing_key:
274
393
  specification_version: 4
275
394
  summary: 18F Guides Template style elements