uswds-jekyll 2.2.1 → 5.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (899) hide show
  1. checksums.yaml +5 -5
  2. data/README.md +352 -255
  3. data/_includes/analytics.html +6 -9
  4. data/_includes/components/banner.html +36 -13
  5. data/_includes/components/footer--big.html +142 -0
  6. data/_includes/components/footer--default.html +104 -0
  7. data/_includes/components/footer--slim.html +93 -0
  8. data/_includes/components/github-edit.html +3 -0
  9. data/_includes/components/graphic-list.html +13 -11
  10. data/_includes/components/header.html +161 -0
  11. data/_includes/components/hero.html +6 -13
  12. data/_includes/components/search.html +31 -0
  13. data/_includes/footer.html +8 -1
  14. data/_includes/header.html +4 -4
  15. data/_includes/meta.html +7 -1
  16. data/_includes/project-list.html +14 -0
  17. data/_includes/scripts.html +17 -6
  18. data/_includes/sidenav.html +23 -20
  19. data/_includes/styles.html +5 -9
  20. data/_includes/subnav.html +1 -1
  21. data/_includes/team-list.html +13 -0
  22. data/_layouts/default.html +40 -4
  23. data/_layouts/home.html +5 -26
  24. data/_layouts/page.html +19 -13
  25. data/_layouts/post.html +2 -14
  26. data/_layouts/project.html +23 -0
  27. data/_layouts/team-member.html +34 -0
  28. data/_sass/_uswds-theme-custom-styles.scss +0 -0
  29. data/_sass/_uswds-theme-override-settings.scss +2 -0
  30. data/_sass/_uswds-theme-packages.scss +1 -0
  31. data/_sass/_uswds-theme-settings.scss +0 -0
  32. data/_sass/uswds/components/_all.scss +8 -0
  33. data/_sass/uswds/components/_alt-color-section.scss +34 -0
  34. data/_sass/uswds/components/_card.scss +63 -0
  35. data/_sass/uswds/components/_footer.scss +16 -502
  36. data/_sass/uswds/components/_header.scss +30 -198
  37. data/_sass/uswds/components/_hero.scss +37 -29
  38. data/_sass/uswds/components/_nav-buttons.scss +24 -0
  39. data/_sass/uswds/components/_side-nav.scss +48 -0
  40. data/_sass/uswds/components/_site-width.scss +6 -0
  41. data/_sass/uswds/components/_top-nav.scss +84 -0
  42. data/_sass/uswds/components/_usa-banner.scss +30 -0
  43. data/_sass/uswds/custom/_uswds-theme-custom-styles.scss +47 -0
  44. data/_sass/uswds/settings/_uswds-conversion-variables.scss +0 -0
  45. data/_sass/uswds/src/base/_accessibility.scss +3 -0
  46. data/_sass/uswds/src/base/_body.scss +5 -0
  47. data/_sass/uswds/src/components/_accordions.scss +116 -0
  48. data/_sass/uswds/src/components/_alerts.scss +144 -0
  49. data/_sass/uswds/src/components/_banner.scss +226 -0
  50. data/_sass/uswds/src/components/_button-groups.scss +134 -0
  51. data/_sass/uswds/src/components/_card.scss +346 -0
  52. data/_sass/uswds/src/components/_checklist.scss +17 -0
  53. data/_sass/uswds/src/components/_footer.scss +349 -0
  54. data/_sass/uswds/src/components/_forms.scss +54 -0
  55. data/_sass/uswds/src/components/_graphic-list.scss +42 -0
  56. data/_sass/uswds/src/components/_header.scss +287 -0
  57. data/_sass/uswds/src/components/_hero.scss +32 -0
  58. data/_sass/uswds/src/components/_layout.scss +15 -0
  59. data/_sass/uswds/src/components/_media-block.scss +7 -0
  60. data/_sass/uswds/src/components/_megamenu.scss +42 -0
  61. data/_sass/uswds/src/components/_nav-container.scss +7 -0
  62. data/_sass/uswds/src/components/_navbar.scss +16 -0
  63. data/_sass/uswds/src/components/_navigation.scss +348 -0
  64. data/_sass/uswds/src/components/_search.scss +98 -0
  65. data/_sass/uswds/src/components/_section.scss +38 -0
  66. data/_sass/uswds/src/components/_sidenav.scss +19 -0
  67. data/_sass/uswds/src/components/_skipnav.scss +20 -0
  68. data/_sass/uswds/src/core/_defaults.scss +8 -0
  69. data/_sass/uswds/src/core/_deprecated.scss +33 -0
  70. data/_sass/uswds/src/core/_functions.scss +1323 -0
  71. data/_sass/uswds/src/core/_notifications.scss +86 -0
  72. data/_sass/uswds/src/core/_properties.scss +687 -0
  73. data/_sass/uswds/src/core/_system-tokens.scss +1673 -0
  74. data/_sass/uswds/src/core/_variables.scss +534 -0
  75. data/_sass/uswds/src/core/mixins/_add-aspect.scss +17 -0
  76. data/_sass/uswds/src/core/mixins/_add-background-svg.scss +9 -0
  77. data/_sass/uswds/src/core/mixins/_add-bar.scss +43 -0
  78. data/_sass/uswds/src/core/mixins/_add-checkbox-placeholder.scss +15 -0
  79. data/_sass/uswds/src/core/mixins/_add-kerning.scss +4 -0
  80. data/_sass/uswds/src/core/mixins/_add-knockout-font-smoothing.scss +9 -0
  81. data/_sass/uswds/src/core/mixins/_add-list-reset.scss +15 -0
  82. data/_sass/uswds/src/core/mixins/_add-responsive-site-margins.scss +6 -0
  83. data/_sass/uswds/src/core/mixins/_add-success-mark.scss +7 -0
  84. data/_sass/uswds/src/core/mixins/_all.scss +86 -0
  85. data/_sass/uswds/src/core/mixins/_at-media.scss +36 -0
  86. data/_sass/uswds/src/core/mixins/_border-box-sizing.scss +19 -0
  87. data/_sass/uswds/src/core/mixins/_button-disabled.scss +17 -0
  88. data/_sass/uswds/src/core/mixins/_button-unstyled.scss +20 -0
  89. data/_sass/uswds/src/core/mixins/_clearfix.scss +7 -0
  90. data/_sass/uswds/src/core/mixins/_embed-container.scss +3 -0
  91. data/_sass/uswds/src/core/mixins/_external-link.scss +21 -0
  92. data/_sass/uswds/src/core/mixins/_focus.scss +14 -0
  93. data/_sass/uswds/src/core/mixins/_font-face.scss +103 -0
  94. data/_sass/uswds/src/core/mixins/_icon.scss +64 -0
  95. data/_sass/uswds/src/core/mixins/_layout-grid.scss +128 -0
  96. data/_sass/uswds/src/core/mixins/_media-block-img.scss +4 -0
  97. data/_sass/uswds/src/core/mixins/_media-link.scss +5 -0
  98. data/_sass/uswds/src/core/mixins/_nav-list.scss +95 -0
  99. data/_sass/uswds/src/core/mixins/_override-prose.scss +6 -0
  100. data/_sass/uswds/src/core/mixins/_screen-reader.scss +23 -0
  101. data/_sass/uswds/src/core/mixins/_typography.scss +161 -0
  102. data/_sass/uswds/src/core/mixins/_unstyled-list.scss +11 -0
  103. data/_sass/uswds/src/core/mixins/_usa-list-styles.scss +10 -0
  104. data/_sass/uswds/src/core/mixins/_usa-table-styles.scss +8 -0
  105. data/_sass/uswds/src/core/mixins/_usa-typography.scss +54 -0
  106. data/_sass/uswds/src/core/mixins/_utility-builder.scss +369 -0
  107. data/_sass/uswds/src/core/mixins/layout-grid/_grid-container.scss +14 -0
  108. data/_sass/uswds/src/core/mixins/layout-grid/_grid-row.scss +7 -0
  109. data/_sass/uswds/src/core/mixins/utilities/_align-items.scss +11 -0
  110. data/_sass/uswds/src/core/mixins/utilities/_background-color.scss +9 -0
  111. data/_sass/uswds/src/core/mixins/utilities/_border-color.scss +11 -0
  112. data/_sass/uswds/src/core/mixins/utilities/_border-radius.scss +55 -0
  113. data/_sass/uswds/src/core/mixins/utilities/_border-width.scss +32 -0
  114. data/_sass/uswds/src/core/mixins/utilities/_border.scss +142 -0
  115. data/_sass/uswds/src/core/mixins/utilities/_bottom.scss +10 -0
  116. data/_sass/uswds/src/core/mixins/utilities/_circle.scss +9 -0
  117. data/_sass/uswds/src/core/mixins/utilities/_color.scss +10 -0
  118. data/_sass/uswds/src/core/mixins/utilities/_cursor.scss +10 -0
  119. data/_sass/uswds/src/core/mixins/utilities/_display.scss +11 -0
  120. data/_sass/uswds/src/core/mixins/utilities/_flex-direction.scss +10 -0
  121. data/_sass/uswds/src/core/mixins/utilities/_flex.scss +50 -0
  122. data/_sass/uswds/src/core/mixins/utilities/_float.scss +10 -0
  123. data/_sass/uswds/src/core/mixins/utilities/_font-weight.scss +10 -0
  124. data/_sass/uswds/src/core/mixins/utilities/_font.scss +42 -0
  125. data/_sass/uswds/src/core/mixins/utilities/_height.scss +11 -0
  126. data/_sass/uswds/src/core/mixins/utilities/_justify-content.scss +10 -0
  127. data/_sass/uswds/src/core/mixins/utilities/_left.scss +10 -0
  128. data/_sass/uswds/src/core/mixins/utilities/_line-height.scss +13 -0
  129. data/_sass/uswds/src/core/mixins/utilities/_margin.scss +85 -0
  130. data/_sass/uswds/src/core/mixins/utilities/_max-height.scss +10 -0
  131. data/_sass/uswds/src/core/mixins/utilities/_max-width.scss +10 -0
  132. data/_sass/uswds/src/core/mixins/utilities/_measure.scss +10 -0
  133. data/_sass/uswds/src/core/mixins/utilities/_min-height.scss +10 -0
  134. data/_sass/uswds/src/core/mixins/utilities/_min-width.scss +10 -0
  135. data/_sass/uswds/src/core/mixins/utilities/_order.scss +10 -0
  136. data/_sass/uswds/src/core/mixins/utilities/_outline-color.scss +10 -0
  137. data/_sass/uswds/src/core/mixins/utilities/_outline.scss +35 -0
  138. data/_sass/uswds/src/core/mixins/utilities/_overflow.scss +28 -0
  139. data/_sass/uswds/src/core/mixins/utilities/_padding.scss +49 -0
  140. data/_sass/uswds/src/core/mixins/utilities/_pin.scss +82 -0
  141. data/_sass/uswds/src/core/mixins/utilities/_position.scss +10 -0
  142. data/_sass/uswds/src/core/mixins/utilities/_right.scss +10 -0
  143. data/_sass/uswds/src/core/mixins/utilities/_shadow.scss +10 -0
  144. data/_sass/uswds/src/core/mixins/utilities/_square.scss +7 -0
  145. data/_sass/uswds/src/core/mixins/utilities/_text-align.scss +10 -0
  146. data/_sass/uswds/src/core/mixins/utilities/_text-decoration-color.scss +10 -0
  147. data/_sass/uswds/src/core/mixins/utilities/_text-decoration.scss +17 -0
  148. data/_sass/uswds/src/core/mixins/utilities/_text-indent.scss +10 -0
  149. data/_sass/uswds/src/core/mixins/utilities/_text.scss +72 -0
  150. data/_sass/uswds/src/core/mixins/utilities/_top.scss +10 -0
  151. data/_sass/uswds/src/core/mixins/utilities/_vertical-align.scss +10 -0
  152. data/_sass/uswds/src/core/mixins/utilities/_white-space.scss +10 -0
  153. data/_sass/uswds/src/core/mixins/utilities/_width.scss +11 -0
  154. data/_sass/uswds/src/core/mixins/utilities/_z-index.scss +10 -0
  155. data/_sass/uswds/src/core/placeholders/_all.scss +2 -0
  156. data/_sass/uswds/src/core/placeholders/_list.scss +18 -0
  157. data/_sass/uswds/src/core/placeholders/_table.scss +58 -0
  158. data/_sass/uswds/src/core/system-tokens/_blue-cool.scss +26 -0
  159. data/_sass/uswds/src/core/system-tokens/_blue-warm.scss +26 -0
  160. data/_sass/uswds/src/core/system-tokens/_blue.scss +26 -0
  161. data/_sass/uswds/src/core/system-tokens/_cyan.scss +26 -0
  162. data/_sass/uswds/src/core/system-tokens/_gold.scss +26 -0
  163. data/_sass/uswds/src/core/system-tokens/_gray-cool.scss +18 -0
  164. data/_sass/uswds/src/core/system-tokens/_gray-warm.scss +18 -0
  165. data/_sass/uswds/src/core/system-tokens/_gray.scss +19 -0
  166. data/_sass/uswds/src/core/system-tokens/_green-cool.scss +26 -0
  167. data/_sass/uswds/src/core/system-tokens/_green-warm.scss +26 -0
  168. data/_sass/uswds/src/core/system-tokens/_green.scss +26 -0
  169. data/_sass/uswds/src/core/system-tokens/_indigo-cool.scss +26 -0
  170. data/_sass/uswds/src/core/system-tokens/_indigo-warm.scss +26 -0
  171. data/_sass/uswds/src/core/system-tokens/_indigo.scss +26 -0
  172. data/_sass/uswds/src/core/system-tokens/_magenta.scss +26 -0
  173. data/_sass/uswds/src/core/system-tokens/_mint-cool.scss +26 -0
  174. data/_sass/uswds/src/core/system-tokens/_mint.scss +26 -0
  175. data/_sass/uswds/src/core/system-tokens/_orange-warm.scss +26 -0
  176. data/_sass/uswds/src/core/system-tokens/_orange.scss +26 -0
  177. data/_sass/uswds/src/core/system-tokens/_red-cool.scss +26 -0
  178. data/_sass/uswds/src/core/system-tokens/_red-warm.scss +26 -0
  179. data/_sass/uswds/src/core/system-tokens/_red.scss +26 -0
  180. data/_sass/uswds/src/core/system-tokens/_violet-warm.scss +26 -0
  181. data/_sass/uswds/src/core/system-tokens/_violet.scss +26 -0
  182. data/_sass/uswds/src/core/system-tokens/_yellow.scss +26 -0
  183. data/_sass/uswds/src/elements/_buttons.scss +217 -0
  184. data/_sass/uswds/src/elements/_embed.scss +22 -0
  185. data/_sass/uswds/src/elements/_figure.scss +7 -0
  186. data/_sass/uswds/src/elements/_layout-grid.scss +159 -0
  187. data/_sass/uswds/src/elements/_table.scss +7 -0
  188. data/_sass/uswds/src/elements/_tags.scss +18 -0
  189. data/_sass/uswds/src/elements/form-controls/_all.scss +9 -0
  190. data/_sass/uswds/src/elements/form-controls/_character-count.scss +9 -0
  191. data/_sass/uswds/src/elements/form-controls/_checkbox-and-radio.scss +115 -0
  192. data/_sass/uswds/src/elements/form-controls/_combo-box.scss +55 -0
  193. data/_sass/uswds/src/elements/form-controls/_date-input.scss +31 -0
  194. data/_sass/uswds/src/elements/form-controls/_dropdown.scss +25 -0
  195. data/_sass/uswds/src/elements/form-controls/_file-input.scss +4 -0
  196. data/_sass/uswds/src/elements/form-controls/_global.scss +84 -0
  197. data/_sass/uswds/src/elements/form-controls/_range-input.scss +89 -0
  198. data/_sass/uswds/src/elements/form-controls/_text-input.scss +13 -0
  199. data/_sass/uswds/src/elements/typography/_content.scss +62 -0
  200. data/_sass/uswds/src/elements/typography/_links.scss +15 -0
  201. data/_sass/uswds/src/elements/typography/_list.scss +14 -0
  202. data/_sass/uswds/src/elements/typography/_prose.scss +6 -0
  203. data/_sass/uswds/src/global/_focus.scss +24 -0
  204. data/_sass/uswds/src/global/_font-face.scss +11 -0
  205. data/_sass/uswds/src/global/_sizing.scss +14 -0
  206. data/_sass/uswds/src/global/_typography.scss +32 -0
  207. data/_sass/uswds/src/lib/_normalize.scss +349 -0
  208. data/_sass/uswds/src/packages/_form-controls.scss +4 -0
  209. data/_sass/uswds/src/packages/_form-templates.scss +8 -0
  210. data/_sass/uswds/src/packages/_global.scss +7 -0
  211. data/_sass/uswds/src/packages/_layout-grid.scss +4 -0
  212. data/_sass/uswds/src/packages/_required.scss +21 -0
  213. data/_sass/uswds/src/packages/_typography.scss +7 -0
  214. data/_sass/uswds/src/packages/_usa-accordion.scss +4 -0
  215. data/_sass/uswds/src/packages/_usa-alert.scss +4 -0
  216. data/_sass/uswds/src/packages/_usa-banner.scss +7 -0
  217. data/_sass/uswds/src/packages/_usa-button-group.scss +2 -0
  218. data/_sass/uswds/src/packages/_usa-button.scss +4 -0
  219. data/_sass/uswds/src/packages/_usa-card.scss +4 -0
  220. data/_sass/uswds/src/packages/_usa-checklist.scss +4 -0
  221. data/_sass/uswds/src/packages/_usa-footer.scss +10 -0
  222. data/_sass/uswds/src/packages/_usa-header.scss +13 -0
  223. data/_sass/uswds/src/packages/_usa-hero.scss +6 -0
  224. data/_sass/uswds/src/packages/_usa-media-block.scss +5 -0
  225. data/_sass/uswds/src/packages/_usa-megamenu.scss +4 -0
  226. data/_sass/uswds/src/packages/_usa-nav-container.scss +4 -0
  227. data/_sass/uswds/src/packages/_usa-nav.scss +5 -0
  228. data/_sass/uswds/src/packages/_usa-navbar.scss +4 -0
  229. data/_sass/uswds/src/packages/_usa-search.scss +8 -0
  230. data/_sass/uswds/src/packages/_usa-sidenav.scss +4 -0
  231. data/_sass/uswds/src/packages/_usa-skipnav.scss +4 -0
  232. data/_sass/uswds/src/packages/_usa-table.scss +4 -0
  233. data/_sass/uswds/src/packages/_usa-tag.scss +4 -0
  234. data/_sass/uswds/src/packages/_uswds-components.scss +44 -0
  235. data/_sass/uswds/src/packages/_uswds-fonts.scss +2 -0
  236. data/_sass/uswds/src/packages/_uswds-utilities.scss +6 -0
  237. data/_sass/uswds/src/packages/_validation.scss +8 -0
  238. data/_sass/uswds/src/settings/_settings-color.scss +133 -0
  239. data/_sass/uswds/src/settings/_settings-components.scss +85 -0
  240. data/_sass/uswds/src/settings/_settings-general.scss +101 -0
  241. data/_sass/uswds/src/settings/_settings-spacing.scss +93 -0
  242. data/_sass/uswds/src/settings/_settings-typography.scss +422 -0
  243. data/_sass/uswds/src/settings/_settings-utilities.scss +853 -0
  244. data/_sass/uswds/src/theme/_uswds-theme-color.scss +133 -0
  245. data/_sass/uswds/src/theme/_uswds-theme-components.scss +85 -0
  246. data/_sass/uswds/src/theme/_uswds-theme-custom-styles.scss +21 -0
  247. data/_sass/uswds/src/theme/_uswds-theme-general.scss +101 -0
  248. data/_sass/uswds/src/theme/_uswds-theme-spacing.scss +93 -0
  249. data/_sass/uswds/src/theme/_uswds-theme-typography.scss +422 -0
  250. data/_sass/uswds/src/theme/_uswds-theme-utilities.scss +854 -0
  251. data/_sass/uswds/src/theme/styles.scss +72 -0
  252. data/_sass/uswds/src/uswds.scss +17 -0
  253. data/_sass/uswds/src/utilities/palettes/_all.scss +41 -0
  254. data/_sass/uswds/src/utilities/palettes/_default-palettes.scss +72 -0
  255. data/_sass/uswds/src/utilities/palettes/_font-palettes.scss +2762 -0
  256. data/_sass/uswds/src/utilities/palettes/_palette-registry.scss +46 -0
  257. data/_sass/uswds/src/utilities/palettes/_spacing-palettes.scss +135 -0
  258. data/_sass/uswds/src/utilities/palettes/colors/_all-colors-palettes.scss +56 -0
  259. data/_sass/uswds/src/utilities/palettes/colors/_black-transparent-palettes.scss +16 -0
  260. data/_sass/uswds/src/utilities/palettes/colors/_blue-cool-palettes.scss +69 -0
  261. data/_sass/uswds/src/utilities/palettes/colors/_blue-palettes.scss +66 -0
  262. data/_sass/uswds/src/utilities/palettes/colors/_blue-warm-palettes.scss +69 -0
  263. data/_sass/uswds/src/utilities/palettes/colors/_cyan-palettes.scss +66 -0
  264. data/_sass/uswds/src/utilities/palettes/colors/_gold-palettes.scss +66 -0
  265. data/_sass/uswds/src/utilities/palettes/colors/_gray-cool-palettes.scss +40 -0
  266. data/_sass/uswds/src/utilities/palettes/colors/_gray-palettes.scss +40 -0
  267. data/_sass/uswds/src/utilities/palettes/colors/_gray-warm-palettes.scss +40 -0
  268. data/_sass/uswds/src/utilities/palettes/colors/_green-cool-palettes.scss +69 -0
  269. data/_sass/uswds/src/utilities/palettes/colors/_green-palettes.scss +66 -0
  270. data/_sass/uswds/src/utilities/palettes/colors/_green-warm-palettes.scss +69 -0
  271. data/_sass/uswds/src/utilities/palettes/colors/_indigo-cool-palettes.scss +70 -0
  272. data/_sass/uswds/src/utilities/palettes/colors/_indigo-palettes.scss +66 -0
  273. data/_sass/uswds/src/utilities/palettes/colors/_indigo-warm-palettes.scss +70 -0
  274. data/_sass/uswds/src/utilities/palettes/colors/_magenta-palettes.scss +67 -0
  275. data/_sass/uswds/src/utilities/palettes/colors/_mint-cool-palettes.scss +69 -0
  276. data/_sass/uswds/src/utilities/palettes/colors/_mint-palettes.scss +66 -0
  277. data/_sass/uswds/src/utilities/palettes/colors/_orange-palettes.scss +66 -0
  278. data/_sass/uswds/src/utilities/palettes/colors/_orange-warm-palettes.scss +70 -0
  279. data/_sass/uswds/src/utilities/palettes/colors/_red-cool-palettes.scss +68 -0
  280. data/_sass/uswds/src/utilities/palettes/colors/_red-palettes.scss +66 -0
  281. data/_sass/uswds/src/utilities/palettes/colors/_red-warm-palettes.scss +68 -0
  282. data/_sass/uswds/src/utilities/palettes/colors/_violet-palettes.scss +66 -0
  283. data/_sass/uswds/src/utilities/palettes/colors/_violet-warm-palettes.scss +70 -0
  284. data/_sass/uswds/src/utilities/palettes/colors/_white-transparent-palettes.scss +16 -0
  285. data/_sass/uswds/src/utilities/palettes/colors/_yellow-palettes.scss +66 -0
  286. data/_sass/uswds/src/utilities/rules/_all.scss +56 -0
  287. data/_sass/uswds/src/utilities/rules/_package.scss +61 -0
  288. data/_sass/uswds/src/utilities/rules/add-aspect.scss +84 -0
  289. data/_sass/uswds/src/utilities/rules/add-list-reset.scss +39 -0
  290. data/_sass/uswds/src/utilities/rules/align-items.scss +30 -0
  291. data/_sass/uswds/src/utilities/rules/background-color.scss +32 -0
  292. data/_sass/uswds/src/utilities/rules/border-color.scss +32 -0
  293. data/_sass/uswds/src/utilities/rules/border-radius.scss +51 -0
  294. data/_sass/uswds/src/utilities/rules/border-style.scss +30 -0
  295. data/_sass/uswds/src/utilities/rules/border-width.scss +44 -0
  296. data/_sass/uswds/src/utilities/rules/border.scss +47 -0
  297. data/_sass/uswds/src/utilities/rules/bottom.scss +28 -0
  298. data/_sass/uswds/src/utilities/rules/box-shadow.scss +27 -0
  299. data/_sass/uswds/src/utilities/rules/circle.scss +35 -0
  300. data/_sass/uswds/src/utilities/rules/clearfix.scss +35 -0
  301. data/_sass/uswds/src/utilities/rules/color.scss +32 -0
  302. data/_sass/uswds/src/utilities/rules/cursor.scss +26 -0
  303. data/_sass/uswds/src/utilities/rules/display.scss +26 -0
  304. data/_sass/uswds/src/utilities/rules/flex-direction.scss +30 -0
  305. data/_sass/uswds/src/utilities/rules/flex-wrap.scss +27 -0
  306. data/_sass/uswds/src/utilities/rules/flex.scss +32 -0
  307. data/_sass/uswds/src/utilities/rules/float.scss +26 -0
  308. data/_sass/uswds/src/utilities/rules/font-family.scss +38 -0
  309. data/_sass/uswds/src/utilities/rules/font-feature.scss +31 -0
  310. data/_sass/uswds/src/utilities/rules/font-style.scss +29 -0
  311. data/_sass/uswds/src/utilities/rules/font-weight.scss +30 -0
  312. data/_sass/uswds/src/utilities/rules/font.scss +38 -0
  313. data/_sass/uswds/src/utilities/rules/height.scss +26 -0
  314. data/_sass/uswds/src/utilities/rules/justify-content.scss +32 -0
  315. data/_sass/uswds/src/utilities/rules/left.scss +28 -0
  316. data/_sass/uswds/src/utilities/rules/letter-spacing.scss +30 -0
  317. data/_sass/uswds/src/utilities/rules/line-height.scss +30 -0
  318. data/_sass/uswds/src/utilities/rules/margin.scss +70 -0
  319. data/_sass/uswds/src/utilities/rules/max-height.scss +27 -0
  320. data/_sass/uswds/src/utilities/rules/max-width.scss +27 -0
  321. data/_sass/uswds/src/utilities/rules/measure.scss +28 -0
  322. data/_sass/uswds/src/utilities/rules/min-height.scss +27 -0
  323. data/_sass/uswds/src/utilities/rules/min-width.scss +27 -0
  324. data/_sass/uswds/src/utilities/rules/opacity.scss +28 -0
  325. data/_sass/uswds/src/utilities/rules/order.scss +29 -0
  326. data/_sass/uswds/src/utilities/rules/outline-color.scss +33 -0
  327. data/_sass/uswds/src/utilities/rules/outline.scss +30 -0
  328. data/_sass/uswds/src/utilities/rules/overflow.scss +31 -0
  329. data/_sass/uswds/src/utilities/rules/padding.scss +43 -0
  330. data/_sass/uswds/src/utilities/rules/pin.scss +101 -0
  331. data/_sass/uswds/src/utilities/rules/position.scss +27 -0
  332. data/_sass/uswds/src/utilities/rules/right.scss +28 -0
  333. data/_sass/uswds/src/utilities/rules/square.scss +33 -0
  334. data/_sass/uswds/src/utilities/rules/text-align.scss +27 -0
  335. data/_sass/uswds/src/utilities/rules/text-decoration-color.scss +31 -0
  336. data/_sass/uswds/src/utilities/rules/text-decoration.scss +30 -0
  337. data/_sass/uswds/src/utilities/rules/text-indent.scss +30 -0
  338. data/_sass/uswds/src/utilities/rules/text-transform.scss +30 -0
  339. data/_sass/uswds/src/utilities/rules/top.scss +28 -0
  340. data/_sass/uswds/src/utilities/rules/vertical-align.scss +30 -0
  341. data/_sass/uswds/src/utilities/rules/whitespace.scss +27 -0
  342. data/_sass/uswds/src/utilities/rules/width.scss +26 -0
  343. data/_sass/uswds/src/utilities/rules/z-index.scss +28 -0
  344. data/_sass/uswds/src/utilities/utility-fonts.scss +20 -0
  345. data/assets/css/uswds-theme.scss +187 -0
  346. data/assets/img/circle.png +0 -0
  347. data/assets/img/hero.png +0 -0
  348. data/assets/img/project-images/project-placeholder.png +0 -0
  349. data/assets/img/team-images/team-placeholder.png +0 -0
  350. data/assets/uswds/fonts/merriweather/Latin-Merriweather-Black.ttf +0 -0
  351. data/assets/uswds/fonts/merriweather/Latin-Merriweather-Black.woff +0 -0
  352. data/assets/uswds/fonts/merriweather/Latin-Merriweather-Black.woff2 +0 -0
  353. data/assets/uswds/fonts/merriweather/Latin-Merriweather-BlackItalic.ttf +0 -0
  354. data/assets/uswds/fonts/merriweather/Latin-Merriweather-BlackItalic.woff +0 -0
  355. data/assets/uswds/fonts/merriweather/Latin-Merriweather-BlackItalic.woff2 +0 -0
  356. data/assets/uswds/fonts/merriweather/Latin-Merriweather-Bold.ttf +0 -0
  357. data/assets/uswds/fonts/merriweather/Latin-Merriweather-Bold.woff +0 -0
  358. data/assets/uswds/fonts/merriweather/Latin-Merriweather-Bold.woff2 +0 -0
  359. data/assets/uswds/fonts/merriweather/Latin-Merriweather-BoldItalic.ttf +0 -0
  360. data/assets/uswds/fonts/merriweather/Latin-Merriweather-BoldItalic.woff +0 -0
  361. data/assets/uswds/fonts/merriweather/Latin-Merriweather-BoldItalic.woff2 +0 -0
  362. data/assets/uswds/fonts/merriweather/Latin-Merriweather-Italic.ttf +0 -0
  363. data/assets/uswds/fonts/merriweather/Latin-Merriweather-Italic.woff +0 -0
  364. data/assets/uswds/fonts/merriweather/Latin-Merriweather-Italic.woff2 +0 -0
  365. data/assets/uswds/fonts/merriweather/Latin-Merriweather-Light.ttf +0 -0
  366. data/assets/uswds/fonts/merriweather/Latin-Merriweather-Light.woff +0 -0
  367. data/assets/uswds/fonts/merriweather/Latin-Merriweather-Light.woff2 +0 -0
  368. data/assets/uswds/fonts/merriweather/Latin-Merriweather-LightItalic.ttf +0 -0
  369. data/assets/uswds/fonts/merriweather/Latin-Merriweather-LightItalic.woff +0 -0
  370. data/assets/uswds/fonts/merriweather/Latin-Merriweather-LightItalic.woff2 +0 -0
  371. data/assets/uswds/fonts/merriweather/Latin-Merriweather-Regular.ttf +0 -0
  372. data/assets/uswds/fonts/merriweather/Latin-Merriweather-Regular.woff +0 -0
  373. data/assets/uswds/fonts/merriweather/Latin-Merriweather-Regular.woff2 +0 -0
  374. data/assets/uswds/fonts/public-sans/PublicSans-Black.ttf +0 -0
  375. data/assets/uswds/fonts/public-sans/PublicSans-Black.woff +0 -0
  376. data/assets/uswds/fonts/public-sans/PublicSans-Black.woff2 +0 -0
  377. data/assets/uswds/fonts/public-sans/PublicSans-BlackItalic.ttf +0 -0
  378. data/assets/uswds/fonts/public-sans/PublicSans-BlackItalic.woff +0 -0
  379. data/assets/uswds/fonts/public-sans/PublicSans-BlackItalic.woff2 +0 -0
  380. data/assets/uswds/fonts/public-sans/PublicSans-Bold.ttf +0 -0
  381. data/assets/uswds/fonts/public-sans/PublicSans-Bold.woff +0 -0
  382. data/assets/uswds/fonts/public-sans/PublicSans-Bold.woff2 +0 -0
  383. data/assets/uswds/fonts/public-sans/PublicSans-BoldItalic.ttf +0 -0
  384. data/assets/uswds/fonts/public-sans/PublicSans-BoldItalic.woff +0 -0
  385. data/assets/uswds/fonts/public-sans/PublicSans-BoldItalic.woff2 +0 -0
  386. data/assets/uswds/fonts/public-sans/PublicSans-ExtraBold.ttf +0 -0
  387. data/assets/uswds/fonts/public-sans/PublicSans-ExtraBold.woff +0 -0
  388. data/assets/uswds/fonts/public-sans/PublicSans-ExtraBold.woff2 +0 -0
  389. data/assets/uswds/fonts/public-sans/PublicSans-ExtraBoldItalic.ttf +0 -0
  390. data/assets/uswds/fonts/public-sans/PublicSans-ExtraBoldItalic.woff +0 -0
  391. data/assets/uswds/fonts/public-sans/PublicSans-ExtraBoldItalic.woff2 +0 -0
  392. data/assets/uswds/fonts/public-sans/PublicSans-ExtraLight.ttf +0 -0
  393. data/assets/uswds/fonts/public-sans/PublicSans-ExtraLight.woff +0 -0
  394. data/assets/uswds/fonts/public-sans/PublicSans-ExtraLight.woff2 +0 -0
  395. data/assets/uswds/fonts/public-sans/PublicSans-ExtraLightItalic.ttf +0 -0
  396. data/assets/uswds/fonts/public-sans/PublicSans-ExtraLightItalic.woff +0 -0
  397. data/assets/uswds/fonts/public-sans/PublicSans-ExtraLightItalic.woff2 +0 -0
  398. data/assets/uswds/fonts/public-sans/PublicSans-Italic.ttf +0 -0
  399. data/assets/uswds/fonts/public-sans/PublicSans-Italic.woff +0 -0
  400. data/assets/uswds/fonts/public-sans/PublicSans-Italic.woff2 +0 -0
  401. data/assets/uswds/fonts/public-sans/PublicSans-Light.ttf +0 -0
  402. data/assets/uswds/fonts/public-sans/PublicSans-Light.woff +0 -0
  403. data/assets/uswds/fonts/public-sans/PublicSans-Light.woff2 +0 -0
  404. data/assets/uswds/fonts/public-sans/PublicSans-LightItalic.ttf +0 -0
  405. data/assets/uswds/fonts/public-sans/PublicSans-LightItalic.woff +0 -0
  406. data/assets/uswds/fonts/public-sans/PublicSans-LightItalic.woff2 +0 -0
  407. data/assets/uswds/fonts/public-sans/PublicSans-Medium.ttf +0 -0
  408. data/assets/uswds/fonts/public-sans/PublicSans-Medium.woff +0 -0
  409. data/assets/uswds/fonts/public-sans/PublicSans-Medium.woff2 +0 -0
  410. data/assets/uswds/fonts/public-sans/PublicSans-MediumItalic.ttf +0 -0
  411. data/assets/uswds/fonts/public-sans/PublicSans-MediumItalic.woff +0 -0
  412. data/assets/uswds/fonts/public-sans/PublicSans-MediumItalic.woff2 +0 -0
  413. data/assets/uswds/fonts/public-sans/PublicSans-Regular.ttf +0 -0
  414. data/assets/uswds/fonts/public-sans/PublicSans-Regular.woff +0 -0
  415. data/assets/uswds/fonts/public-sans/PublicSans-Regular.woff2 +0 -0
  416. data/assets/uswds/fonts/public-sans/PublicSans-SemiBold.ttf +0 -0
  417. data/assets/uswds/fonts/public-sans/PublicSans-SemiBold.woff +0 -0
  418. data/assets/uswds/fonts/public-sans/PublicSans-SemiBold.woff2 +0 -0
  419. data/assets/uswds/fonts/public-sans/PublicSans-SemiBoldItalic.ttf +0 -0
  420. data/assets/uswds/fonts/public-sans/PublicSans-SemiBoldItalic.woff +0 -0
  421. data/assets/uswds/fonts/public-sans/PublicSans-SemiBoldItalic.woff2 +0 -0
  422. data/assets/uswds/fonts/public-sans/PublicSans-Thin.ttf +0 -0
  423. data/assets/uswds/fonts/public-sans/PublicSans-Thin.woff +0 -0
  424. data/assets/uswds/fonts/public-sans/PublicSans-Thin.woff2 +0 -0
  425. data/assets/uswds/fonts/public-sans/PublicSans-ThinItalic.ttf +0 -0
  426. data/assets/uswds/fonts/public-sans/PublicSans-ThinItalic.woff +0 -0
  427. data/assets/uswds/fonts/public-sans/PublicSans-ThinItalic.woff2 +0 -0
  428. data/assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-100.ttf +0 -0
  429. data/assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-100.woff +0 -0
  430. data/assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-100.woff2 +0 -0
  431. data/assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-100italic.ttf +0 -0
  432. data/assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-100italic.woff +0 -0
  433. data/assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-100italic.woff2 +0 -0
  434. data/assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-300.ttf +0 -0
  435. data/assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-300.woff +0 -0
  436. data/assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-300.woff2 +0 -0
  437. data/assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-300italic.ttf +0 -0
  438. data/assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-300italic.woff +0 -0
  439. data/assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-300italic.woff2 +0 -0
  440. data/assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-500.ttf +0 -0
  441. data/assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-500.woff +0 -0
  442. data/assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-500.woff2 +0 -0
  443. data/assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-500italic.ttf +0 -0
  444. data/assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-500italic.woff +0 -0
  445. data/assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-500italic.woff2 +0 -0
  446. data/assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-700.ttf +0 -0
  447. data/assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-700.woff +0 -0
  448. data/assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-700.woff2 +0 -0
  449. data/assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-700italic.ttf +0 -0
  450. data/assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-700italic.woff +0 -0
  451. data/assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-700italic.woff2 +0 -0
  452. data/assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-italic.ttf +0 -0
  453. data/assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-italic.woff +0 -0
  454. data/assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-italic.woff2 +0 -0
  455. data/assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-regular.ttf +0 -0
  456. data/assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-regular.woff +0 -0
  457. data/assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-regular.woff2 +0 -0
  458. data/assets/uswds/fonts/source-sans-pro/sourcesanspro-black-webfont.ttf +0 -0
  459. data/assets/uswds/fonts/source-sans-pro/sourcesanspro-black-webfont.woff +0 -0
  460. data/assets/uswds/fonts/source-sans-pro/sourcesanspro-black-webfont.woff2 +0 -0
  461. data/assets/uswds/fonts/source-sans-pro/sourcesanspro-blackitalic-webfont.ttf +0 -0
  462. data/assets/uswds/fonts/source-sans-pro/sourcesanspro-blackitalic-webfont.woff +0 -0
  463. data/assets/uswds/fonts/source-sans-pro/sourcesanspro-blackitalic-webfont.woff2 +0 -0
  464. data/assets/uswds/fonts/source-sans-pro/sourcesanspro-bold-webfont.ttf +0 -0
  465. data/assets/uswds/fonts/source-sans-pro/sourcesanspro-bold-webfont.woff +0 -0
  466. data/assets/uswds/fonts/source-sans-pro/sourcesanspro-bold-webfont.woff2 +0 -0
  467. data/assets/uswds/fonts/source-sans-pro/sourcesanspro-bolditalic-webfont.ttf +0 -0
  468. data/assets/uswds/fonts/source-sans-pro/sourcesanspro-bolditalic-webfont.woff +0 -0
  469. data/assets/uswds/fonts/source-sans-pro/sourcesanspro-bolditalic-webfont.woff2 +0 -0
  470. data/assets/uswds/fonts/source-sans-pro/sourcesanspro-extralight-webfont.ttf +0 -0
  471. data/assets/uswds/fonts/source-sans-pro/sourcesanspro-extralight-webfont.woff +0 -0
  472. data/assets/uswds/fonts/source-sans-pro/sourcesanspro-extralight-webfont.woff2 +0 -0
  473. data/assets/uswds/fonts/source-sans-pro/sourcesanspro-extralightitalic-webfont.ttf +0 -0
  474. data/assets/uswds/fonts/source-sans-pro/sourcesanspro-extralightitalic-webfont.woff +0 -0
  475. data/assets/uswds/fonts/source-sans-pro/sourcesanspro-extralightitalic-webfont.woff2 +0 -0
  476. data/assets/uswds/fonts/source-sans-pro/sourcesanspro-italic-webfont.ttf +0 -0
  477. data/assets/uswds/fonts/source-sans-pro/sourcesanspro-italic-webfont.woff +0 -0
  478. data/assets/uswds/fonts/source-sans-pro/sourcesanspro-italic-webfont.woff2 +0 -0
  479. data/assets/uswds/fonts/source-sans-pro/sourcesanspro-light-webfont.ttf +0 -0
  480. data/assets/uswds/fonts/source-sans-pro/sourcesanspro-light-webfont.woff +0 -0
  481. data/assets/uswds/fonts/source-sans-pro/sourcesanspro-light-webfont.woff2 +0 -0
  482. data/assets/uswds/fonts/source-sans-pro/sourcesanspro-lightitalic-webfont.ttf +0 -0
  483. data/assets/uswds/fonts/source-sans-pro/sourcesanspro-lightitalic-webfont.woff +0 -0
  484. data/assets/uswds/fonts/source-sans-pro/sourcesanspro-lightitalic-webfont.woff2 +0 -0
  485. data/assets/uswds/fonts/source-sans-pro/sourcesanspro-regular-webfont.ttf +0 -0
  486. data/assets/uswds/fonts/source-sans-pro/sourcesanspro-regular-webfont.woff +0 -0
  487. data/assets/uswds/fonts/source-sans-pro/sourcesanspro-regular-webfont.woff2 +0 -0
  488. data/assets/uswds/fonts/source-sans-pro/sourcesanspro-semibold-webfont.ttf +0 -0
  489. data/assets/uswds/fonts/source-sans-pro/sourcesanspro-semibold-webfont.woff +0 -0
  490. data/assets/uswds/fonts/source-sans-pro/sourcesanspro-semibold-webfont.woff2 +0 -0
  491. data/assets/uswds/fonts/source-sans-pro/sourcesanspro-semibolditalic-webfont.ttf +0 -0
  492. data/assets/uswds/fonts/source-sans-pro/sourcesanspro-semibolditalic-webfont.woff +0 -0
  493. data/assets/uswds/fonts/source-sans-pro/sourcesanspro-semibolditalic-webfont.woff2 +0 -0
  494. data/assets/uswds/img/alerts/error.svg +4 -17
  495. data/assets/uswds/img/alerts/info.svg +4 -18
  496. data/assets/uswds/img/alerts/success.svg +1 -12
  497. data/assets/uswds/img/alerts/warning.svg +4 -16
  498. data/assets/uswds/img/angle-arrow-down-hover.svg +1 -1
  499. data/assets/uswds/img/angle-arrow-down-primary-hover.svg +1 -1
  500. data/assets/uswds/img/angle-arrow-down-primary.svg +1 -1
  501. data/assets/uswds/img/angle-arrow-down-white.svg +1 -0
  502. data/assets/uswds/img/angle-arrow-down.svg +1 -1
  503. data/assets/uswds/img/angle-arrow-up-primary-hover.svg +1 -1
  504. data/assets/uswds/img/angle-arrow-up-primary.svg +1 -1
  505. data/assets/uswds/img/angle-arrow-up-white.svg +1 -0
  506. data/assets/uswds/img/arrow-both.svg +1 -1
  507. data/assets/uswds/img/arrow-down.svg +1 -1
  508. data/assets/uswds/img/arrow-right.svg +1 -1
  509. data/assets/uswds/img/checkbox-check-print.svg +1 -0
  510. data/assets/uswds/img/circle-124.png +0 -0
  511. data/assets/uswds/img/close-blue-30-alt.svg +3 -0
  512. data/assets/uswds/img/close-blue-40v-alt.svg +3 -0
  513. data/assets/uswds/img/close-blue-50-alt.svg +3 -0
  514. data/assets/uswds/img/close-blue-50v-alt.svg +3 -0
  515. data/assets/uswds/img/close-blue-60-alt.svg +3 -0
  516. data/assets/uswds/img/close-blue-60v-alt.svg +3 -0
  517. data/assets/uswds/img/close-gray-90-alt.svg +3 -0
  518. data/assets/uswds/img/close-primary.svg +1 -16
  519. data/assets/uswds/img/close-white-alt.svg +3 -0
  520. data/assets/uswds/img/close-white.svg +3 -0
  521. data/assets/uswds/img/close.svg +1 -12
  522. data/assets/uswds/img/correct8-alt.png +0 -0
  523. data/assets/uswds/img/correct8-alt.svg +1 -0
  524. data/assets/uswds/img/correct8.svg +1 -1
  525. data/assets/uswds/img/correct9.svg +1 -1
  526. data/assets/uswds/img/external-link-alt-hover.svg +1 -1
  527. data/assets/uswds/img/external-link-alt.svg +1 -1
  528. data/assets/uswds/img/external-link-hover.svg +1 -1
  529. data/assets/uswds/img/external-link.svg +1 -1
  530. data/assets/uswds/img/favicons/favicon-114.png +0 -0
  531. data/assets/uswds/img/favicons/favicon-144.png +0 -0
  532. data/assets/uswds/img/favicons/favicon-16.png +0 -0
  533. data/assets/uswds/img/favicons/favicon-192.png +0 -0
  534. data/assets/uswds/img/favicons/favicon-40.png +0 -0
  535. data/assets/uswds/img/favicons/favicon-57.png +0 -0
  536. data/assets/uswds/img/favicons/favicon-72.png +0 -0
  537. data/assets/uswds/img/favicons/favicon.ico +0 -0
  538. data/assets/uswds/img/favicons/favicon.png +0 -0
  539. data/assets/uswds/img/hero.png +0 -0
  540. data/assets/uswds/img/icon-dot-gov.svg +1 -1
  541. data/assets/uswds/img/icon-https.svg +1 -1
  542. data/assets/uswds/img/minus-alt.svg +1 -1
  543. data/assets/uswds/img/minus.svg +1 -1
  544. data/assets/uswds/img/plus-alt.svg +1 -1
  545. data/assets/uswds/img/plus.svg +1 -1
  546. data/assets/uswds/img/search-alt.svg +1 -1
  547. data/assets/uswds/img/search-primary.svg +1 -12
  548. data/assets/uswds/img/search.svg +1 -1
  549. data/assets/uswds/img/social-icons/facebook25.png +0 -0
  550. data/assets/uswds/img/social-icons/facebook25.svg +1 -0
  551. data/assets/uswds/img/social-icons/rss25.png +0 -0
  552. data/assets/uswds/img/social-icons/rss25.svg +1 -0
  553. data/assets/uswds/img/social-icons/twitter16.png +0 -0
  554. data/assets/uswds/img/social-icons/twitter16.svg +1 -0
  555. data/assets/uswds/img/social-icons/youtube15.png +0 -0
  556. data/assets/uswds/img/social-icons/youtube15.svg +1 -0
  557. data/assets/uswds/js/uswds.js +1716 -844
  558. data/assets/uswds/js/uswds.min.js +1 -1
  559. data/assets/uswds/js/uswds.min.js.map +1 -1
  560. metadata +513 -351
  561. data/_includes/components/footer.html +0 -82
  562. data/_includes/components/header--basic.html +0 -72
  563. data/_includes/components/header--extended.html +0 -85
  564. data/_includes/last-modified.html +0 -3
  565. data/_layouts/search-results.html +0 -25
  566. data/_sass/uswds/_all.scss +0 -1
  567. data/_sass/uswds/components/_accordions.scss +0 -150
  568. data/_sass/uswds/components/_alerts.scss +0 -125
  569. data/_sass/uswds/components/_banner.scss +0 -204
  570. data/_sass/uswds/components/_forms.scss +0 -164
  571. data/_sass/uswds/components/_graphic-list.scss +0 -35
  572. data/_sass/uswds/components/_layout.scss +0 -36
  573. data/_sass/uswds/components/_media-block.scss +0 -12
  574. data/_sass/uswds/components/_navigation.scss +0 -549
  575. data/_sass/uswds/components/_search.scss +0 -111
  576. data/_sass/uswds/components/_section.scss +0 -37
  577. data/_sass/uswds/components/_sidenav.scss +0 -31
  578. data/_sass/uswds/components/_skipnav.scss +0 -19
  579. data/_sass/uswds/core/_base.scss +0 -35
  580. data/_sass/uswds/core/_defaults.scss +0 -8
  581. data/_sass/uswds/core/_fonts.scss +0 -65
  582. data/_sass/uswds/core/_grid-settings.scss +0 -3
  583. data/_sass/uswds/core/_grid.scss +0 -199
  584. data/_sass/uswds/core/_utilities.scss +0 -252
  585. data/_sass/uswds/core/_variables.scss +0 -156
  586. data/_sass/uswds/elements/_buttons.scss +0 -217
  587. data/_sass/uswds/elements/_embed.scss +0 -26
  588. data/_sass/uswds/elements/_figure.scss +0 -13
  589. data/_sass/uswds/elements/_inputs.scss +0 -353
  590. data/_sass/uswds/elements/_labels.scss +0 -20
  591. data/_sass/uswds/elements/_list.scss +0 -32
  592. data/_sass/uswds/elements/_table.scss +0 -55
  593. data/_sass/uswds/elements/_typography.scss +0 -260
  594. data/_sass/uswds/lib/_bourbon-deprecated-upcoming.scss +0 -411
  595. data/_sass/uswds/lib/_bourbon.scss +0 -87
  596. data/_sass/uswds/lib/_neat-helpers.scss +0 -11
  597. data/_sass/uswds/lib/_neat.scss +0 -23
  598. data/_sass/uswds/lib/_normalize.scss +0 -424
  599. data/_sass/uswds/lib/addons/_border-color.scss +0 -26
  600. data/_sass/uswds/lib/addons/_border-radius.scss +0 -48
  601. data/_sass/uswds/lib/addons/_border-style.scss +0 -25
  602. data/_sass/uswds/lib/addons/_border-width.scss +0 -25
  603. data/_sass/uswds/lib/addons/_buttons.scss +0 -64
  604. data/_sass/uswds/lib/addons/_clearfix.scss +0 -25
  605. data/_sass/uswds/lib/addons/_ellipsis.scss +0 -30
  606. data/_sass/uswds/lib/addons/_font-stacks.scss +0 -31
  607. data/_sass/uswds/lib/addons/_hide-text.scss +0 -27
  608. data/_sass/uswds/lib/addons/_margin.scss +0 -26
  609. data/_sass/uswds/lib/addons/_padding.scss +0 -26
  610. data/_sass/uswds/lib/addons/_position.scss +0 -48
  611. data/_sass/uswds/lib/addons/_prefixer.scss +0 -66
  612. data/_sass/uswds/lib/addons/_retina-image.scss +0 -25
  613. data/_sass/uswds/lib/addons/_size.scss +0 -51
  614. data/_sass/uswds/lib/addons/_text-inputs.scss +0 -113
  615. data/_sass/uswds/lib/addons/_timing-functions.scss +0 -34
  616. data/_sass/uswds/lib/addons/_triangle.scss +0 -63
  617. data/_sass/uswds/lib/addons/_word-wrap.scss +0 -29
  618. data/_sass/uswds/lib/css3/_animation.scss +0 -43
  619. data/_sass/uswds/lib/css3/_appearance.scss +0 -3
  620. data/_sass/uswds/lib/css3/_backface-visibility.scss +0 -3
  621. data/_sass/uswds/lib/css3/_background-image.scss +0 -42
  622. data/_sass/uswds/lib/css3/_background.scss +0 -55
  623. data/_sass/uswds/lib/css3/_border-image.scss +0 -59
  624. data/_sass/uswds/lib/css3/_calc.scss +0 -4
  625. data/_sass/uswds/lib/css3/_columns.scss +0 -47
  626. data/_sass/uswds/lib/css3/_filter.scss +0 -4
  627. data/_sass/uswds/lib/css3/_flex-box.scss +0 -287
  628. data/_sass/uswds/lib/css3/_font-face.scss +0 -24
  629. data/_sass/uswds/lib/css3/_font-feature-settings.scss +0 -4
  630. data/_sass/uswds/lib/css3/_hidpi-media-query.scss +0 -10
  631. data/_sass/uswds/lib/css3/_hyphens.scss +0 -4
  632. data/_sass/uswds/lib/css3/_image-rendering.scss +0 -14
  633. data/_sass/uswds/lib/css3/_keyframes.scss +0 -36
  634. data/_sass/uswds/lib/css3/_linear-gradient.scss +0 -38
  635. data/_sass/uswds/lib/css3/_perspective.scss +0 -8
  636. data/_sass/uswds/lib/css3/_placeholder.scss +0 -8
  637. data/_sass/uswds/lib/css3/_radial-gradient.scss +0 -39
  638. data/_sass/uswds/lib/css3/_selection.scss +0 -42
  639. data/_sass/uswds/lib/css3/_text-decoration.scss +0 -19
  640. data/_sass/uswds/lib/css3/_transform.scss +0 -15
  641. data/_sass/uswds/lib/css3/_transition.scss +0 -71
  642. data/_sass/uswds/lib/css3/_user-select.scss +0 -3
  643. data/_sass/uswds/lib/functions/_assign-inputs.scss +0 -11
  644. data/_sass/uswds/lib/functions/_contains-falsy.scss +0 -20
  645. data/_sass/uswds/lib/functions/_contains.scss +0 -26
  646. data/_sass/uswds/lib/functions/_is-length.scss +0 -11
  647. data/_sass/uswds/lib/functions/_is-light.scss +0 -21
  648. data/_sass/uswds/lib/functions/_is-number.scss +0 -11
  649. data/_sass/uswds/lib/functions/_is-size.scss +0 -13
  650. data/_sass/uswds/lib/functions/_modular-scale.scss +0 -69
  651. data/_sass/uswds/lib/functions/_new-breakpoint.scss +0 -49
  652. data/_sass/uswds/lib/functions/_private.scss +0 -114
  653. data/_sass/uswds/lib/functions/_px-to-em.scss +0 -13
  654. data/_sass/uswds/lib/functions/_px-to-rem.scss +0 -15
  655. data/_sass/uswds/lib/functions/_shade.scss +0 -24
  656. data/_sass/uswds/lib/functions/_strip-units.scss +0 -17
  657. data/_sass/uswds/lib/functions/_tint.scss +0 -24
  658. data/_sass/uswds/lib/functions/_transition-property-name.scss +0 -22
  659. data/_sass/uswds/lib/functions/_unpack.scss +0 -27
  660. data/_sass/uswds/lib/grid/_box-sizing.scss +0 -15
  661. data/_sass/uswds/lib/grid/_direction-context.scss +0 -33
  662. data/_sass/uswds/lib/grid/_display-context.scss +0 -28
  663. data/_sass/uswds/lib/grid/_fill-parent.scss +0 -22
  664. data/_sass/uswds/lib/grid/_media.scss +0 -92
  665. data/_sass/uswds/lib/grid/_omega.scss +0 -87
  666. data/_sass/uswds/lib/grid/_outer-container.scss +0 -34
  667. data/_sass/uswds/lib/grid/_pad.scss +0 -25
  668. data/_sass/uswds/lib/grid/_private.scss +0 -35
  669. data/_sass/uswds/lib/grid/_row.scss +0 -52
  670. data/_sass/uswds/lib/grid/_shift.scss +0 -50
  671. data/_sass/uswds/lib/grid/_span-columns.scss +0 -94
  672. data/_sass/uswds/lib/grid/_to-deprecate.scss +0 -97
  673. data/_sass/uswds/lib/grid/_visual-grid.scss +0 -42
  674. data/_sass/uswds/lib/helpers/_convert-units.scss +0 -21
  675. data/_sass/uswds/lib/helpers/_directional-values.scss +0 -96
  676. data/_sass/uswds/lib/helpers/_font-source-declaration.scss +0 -43
  677. data/_sass/uswds/lib/helpers/_gradient-positions-parser.scss +0 -13
  678. data/_sass/uswds/lib/helpers/_linear-angle-parser.scss +0 -25
  679. data/_sass/uswds/lib/helpers/_linear-gradient-parser.scss +0 -41
  680. data/_sass/uswds/lib/helpers/_linear-positions-parser.scss +0 -61
  681. data/_sass/uswds/lib/helpers/_linear-side-corner-parser.scss +0 -31
  682. data/_sass/uswds/lib/helpers/_radial-arg-parser.scss +0 -69
  683. data/_sass/uswds/lib/helpers/_radial-gradient-parser.scss +0 -50
  684. data/_sass/uswds/lib/helpers/_radial-positions-parser.scss +0 -18
  685. data/_sass/uswds/lib/helpers/_render-gradients.scss +0 -26
  686. data/_sass/uswds/lib/helpers/_shape-size-stripper.scss +0 -10
  687. data/_sass/uswds/lib/helpers/_str-to-num.scss +0 -50
  688. data/_sass/uswds/lib/mixins/_clearfix.scss +0 -25
  689. data/_sass/uswds/lib/settings/_asset-pipeline.scss +0 -7
  690. data/_sass/uswds/lib/settings/_disable-warnings.scss +0 -13
  691. data/_sass/uswds/lib/settings/_grid.scss +0 -51
  692. data/_sass/uswds/lib/settings/_prefixer.scss +0 -9
  693. data/_sass/uswds/lib/settings/_px-to-em.scss +0 -1
  694. data/_sass/uswds/lib/settings/_visual-grid.scss +0 -27
  695. data/_sass/uswds/uswds.scss +0 -41
  696. data/assets/uswds/css/uswds.css +0 -4880
  697. data/assets/uswds/css/uswds.min.css +0 -4
  698. data/assets/uswds/css/uswds.min.css.map +0 -1
  699. data/assets/uswds/fonts/merriweather-bold-webfont.eot +0 -0
  700. data/assets/uswds/fonts/merriweather-bold-webfont.ttf +0 -0
  701. data/assets/uswds/fonts/merriweather-bold-webfont.woff +0 -0
  702. data/assets/uswds/fonts/merriweather-bold-webfont.woff2 +0 -0
  703. data/assets/uswds/fonts/merriweather-italic-webfont.eot +0 -0
  704. data/assets/uswds/fonts/merriweather-italic-webfont.ttf +0 -0
  705. data/assets/uswds/fonts/merriweather-italic-webfont.woff +0 -0
  706. data/assets/uswds/fonts/merriweather-italic-webfont.woff2 +0 -0
  707. data/assets/uswds/fonts/merriweather-light-webfont.eot +0 -0
  708. data/assets/uswds/fonts/merriweather-light-webfont.ttf +0 -0
  709. data/assets/uswds/fonts/merriweather-light-webfont.woff +0 -0
  710. data/assets/uswds/fonts/merriweather-light-webfont.woff2 +0 -0
  711. data/assets/uswds/fonts/merriweather-regular-webfont.eot +0 -0
  712. data/assets/uswds/fonts/merriweather-regular-webfont.ttf +0 -0
  713. data/assets/uswds/fonts/merriweather-regular-webfont.woff +0 -0
  714. data/assets/uswds/fonts/merriweather-regular-webfont.woff2 +0 -0
  715. data/assets/uswds/fonts/sourcesanspro-bold-webfont.eot +0 -0
  716. data/assets/uswds/fonts/sourcesanspro-bold-webfont.ttf +0 -0
  717. data/assets/uswds/fonts/sourcesanspro-bold-webfont.woff +0 -0
  718. data/assets/uswds/fonts/sourcesanspro-bold-webfont.woff2 +0 -0
  719. data/assets/uswds/fonts/sourcesanspro-italic-webfont.eot +0 -0
  720. data/assets/uswds/fonts/sourcesanspro-italic-webfont.ttf +0 -0
  721. data/assets/uswds/fonts/sourcesanspro-italic-webfont.woff +0 -0
  722. data/assets/uswds/fonts/sourcesanspro-italic-webfont.woff2 +0 -0
  723. data/assets/uswds/fonts/sourcesanspro-light-webfont.eot +0 -0
  724. data/assets/uswds/fonts/sourcesanspro-light-webfont.ttf +0 -0
  725. data/assets/uswds/fonts/sourcesanspro-light-webfont.woff +0 -0
  726. data/assets/uswds/fonts/sourcesanspro-light-webfont.woff2 +0 -0
  727. data/assets/uswds/fonts/sourcesanspro-regular-webfont.eot +0 -0
  728. data/assets/uswds/fonts/sourcesanspro-regular-webfont.ttf +0 -0
  729. data/assets/uswds/fonts/sourcesanspro-regular-webfont.woff +0 -0
  730. data/assets/uswds/fonts/sourcesanspro-regular-webfont.woff2 +0 -0
  731. data/assets/uswds/img/alerts/error.png +0 -0
  732. data/assets/uswds/img/alerts/info.png +0 -0
  733. data/assets/uswds/img/alerts/success.png +0 -0
  734. data/assets/uswds/img/alerts/warning.png +0 -0
  735. data/assets/uswds/img/angle-arrow-down-hover.png +0 -0
  736. data/assets/uswds/img/angle-arrow-down-primary-hover.png +0 -0
  737. data/assets/uswds/img/angle-arrow-down-primary.png +0 -0
  738. data/assets/uswds/img/angle-arrow-down.png +0 -0
  739. data/assets/uswds/img/angle-arrow-up-primary-hover.png +0 -0
  740. data/assets/uswds/img/angle-arrow-up-primary.png +0 -0
  741. data/assets/uswds/img/arrow-both.png +0 -0
  742. data/assets/uswds/img/arrow-down.png +0 -0
  743. data/assets/uswds/img/arrow-right.png +0 -0
  744. data/assets/uswds/img/close-primary.png +0 -0
  745. data/assets/uswds/img/close.png +0 -0
  746. data/assets/uswds/img/correct8.png +0 -0
  747. data/assets/uswds/img/correct9.png +0 -0
  748. data/assets/uswds/img/external-link-alt-hover.png +0 -0
  749. data/assets/uswds/img/external-link-alt.png +0 -0
  750. data/assets/uswds/img/external-link-hover.png +0 -0
  751. data/assets/uswds/img/external-link.png +0 -0
  752. data/assets/uswds/img/minus-alt.png +0 -0
  753. data/assets/uswds/img/minus.png +0 -0
  754. data/assets/uswds/img/plus-alt.png +0 -0
  755. data/assets/uswds/img/plus.png +0 -0
  756. data/assets/uswds/img/search-alt.png +0 -0
  757. data/assets/uswds/img/search-primary.png +0 -0
  758. data/assets/uswds/img/search.png +0 -0
  759. data/assets/uswds/img/social-icons/png/facebook25.png +0 -0
  760. data/assets/uswds/img/social-icons/png/rss25.png +0 -0
  761. data/assets/uswds/img/social-icons/png/twitter16.png +0 -0
  762. data/assets/uswds/img/social-icons/png/youtube15.png +0 -0
  763. data/assets/uswds/img/social-icons/svg/facebook25.svg +0 -1
  764. data/assets/uswds/img/social-icons/svg/rss25.svg +0 -1
  765. data/assets/uswds/img/social-icons/svg/twitter16.svg +0 -1
  766. data/assets/uswds/img/social-icons/svg/youtube15.svg +0 -1
  767. data/assets/uswds/scss/_all.scss +0 -1
  768. data/assets/uswds/scss/components/_accordions.scss +0 -150
  769. data/assets/uswds/scss/components/_alerts.scss +0 -125
  770. data/assets/uswds/scss/components/_banner.scss +0 -204
  771. data/assets/uswds/scss/components/_footer.scss +0 -518
  772. data/assets/uswds/scss/components/_forms.scss +0 -164
  773. data/assets/uswds/scss/components/_graphic-list.scss +0 -35
  774. data/assets/uswds/scss/components/_header.scss +0 -218
  775. data/assets/uswds/scss/components/_hero.scss +0 -37
  776. data/assets/uswds/scss/components/_layout.scss +0 -36
  777. data/assets/uswds/scss/components/_media-block.scss +0 -12
  778. data/assets/uswds/scss/components/_navigation.scss +0 -549
  779. data/assets/uswds/scss/components/_search.scss +0 -111
  780. data/assets/uswds/scss/components/_section.scss +0 -37
  781. data/assets/uswds/scss/components/_sidenav.scss +0 -31
  782. data/assets/uswds/scss/components/_skipnav.scss +0 -19
  783. data/assets/uswds/scss/core/_base.scss +0 -35
  784. data/assets/uswds/scss/core/_defaults.scss +0 -8
  785. data/assets/uswds/scss/core/_fonts.scss +0 -65
  786. data/assets/uswds/scss/core/_grid-settings.scss +0 -3
  787. data/assets/uswds/scss/core/_grid.scss +0 -199
  788. data/assets/uswds/scss/core/_utilities.scss +0 -252
  789. data/assets/uswds/scss/core/_variables.scss +0 -156
  790. data/assets/uswds/scss/elements/_buttons.scss +0 -217
  791. data/assets/uswds/scss/elements/_embed.scss +0 -26
  792. data/assets/uswds/scss/elements/_figure.scss +0 -13
  793. data/assets/uswds/scss/elements/_inputs.scss +0 -353
  794. data/assets/uswds/scss/elements/_labels.scss +0 -20
  795. data/assets/uswds/scss/elements/_list.scss +0 -32
  796. data/assets/uswds/scss/elements/_table.scss +0 -55
  797. data/assets/uswds/scss/elements/_typography.scss +0 -260
  798. data/assets/uswds/scss/lib/_bourbon-deprecated-upcoming.scss +0 -411
  799. data/assets/uswds/scss/lib/_bourbon.scss +0 -87
  800. data/assets/uswds/scss/lib/_neat-helpers.scss +0 -11
  801. data/assets/uswds/scss/lib/_neat.scss +0 -23
  802. data/assets/uswds/scss/lib/_normalize.scss +0 -424
  803. data/assets/uswds/scss/lib/addons/_border-color.scss +0 -26
  804. data/assets/uswds/scss/lib/addons/_border-radius.scss +0 -48
  805. data/assets/uswds/scss/lib/addons/_border-style.scss +0 -25
  806. data/assets/uswds/scss/lib/addons/_border-width.scss +0 -25
  807. data/assets/uswds/scss/lib/addons/_buttons.scss +0 -64
  808. data/assets/uswds/scss/lib/addons/_clearfix.scss +0 -25
  809. data/assets/uswds/scss/lib/addons/_ellipsis.scss +0 -30
  810. data/assets/uswds/scss/lib/addons/_font-stacks.scss +0 -31
  811. data/assets/uswds/scss/lib/addons/_hide-text.scss +0 -27
  812. data/assets/uswds/scss/lib/addons/_margin.scss +0 -26
  813. data/assets/uswds/scss/lib/addons/_padding.scss +0 -26
  814. data/assets/uswds/scss/lib/addons/_position.scss +0 -48
  815. data/assets/uswds/scss/lib/addons/_prefixer.scss +0 -66
  816. data/assets/uswds/scss/lib/addons/_retina-image.scss +0 -25
  817. data/assets/uswds/scss/lib/addons/_size.scss +0 -51
  818. data/assets/uswds/scss/lib/addons/_text-inputs.scss +0 -113
  819. data/assets/uswds/scss/lib/addons/_timing-functions.scss +0 -34
  820. data/assets/uswds/scss/lib/addons/_triangle.scss +0 -63
  821. data/assets/uswds/scss/lib/addons/_word-wrap.scss +0 -29
  822. data/assets/uswds/scss/lib/css3/_animation.scss +0 -43
  823. data/assets/uswds/scss/lib/css3/_appearance.scss +0 -3
  824. data/assets/uswds/scss/lib/css3/_backface-visibility.scss +0 -3
  825. data/assets/uswds/scss/lib/css3/_background-image.scss +0 -42
  826. data/assets/uswds/scss/lib/css3/_background.scss +0 -55
  827. data/assets/uswds/scss/lib/css3/_border-image.scss +0 -59
  828. data/assets/uswds/scss/lib/css3/_calc.scss +0 -4
  829. data/assets/uswds/scss/lib/css3/_columns.scss +0 -47
  830. data/assets/uswds/scss/lib/css3/_filter.scss +0 -4
  831. data/assets/uswds/scss/lib/css3/_flex-box.scss +0 -287
  832. data/assets/uswds/scss/lib/css3/_font-face.scss +0 -24
  833. data/assets/uswds/scss/lib/css3/_font-feature-settings.scss +0 -4
  834. data/assets/uswds/scss/lib/css3/_hidpi-media-query.scss +0 -10
  835. data/assets/uswds/scss/lib/css3/_hyphens.scss +0 -4
  836. data/assets/uswds/scss/lib/css3/_image-rendering.scss +0 -14
  837. data/assets/uswds/scss/lib/css3/_keyframes.scss +0 -36
  838. data/assets/uswds/scss/lib/css3/_linear-gradient.scss +0 -38
  839. data/assets/uswds/scss/lib/css3/_perspective.scss +0 -8
  840. data/assets/uswds/scss/lib/css3/_placeholder.scss +0 -8
  841. data/assets/uswds/scss/lib/css3/_radial-gradient.scss +0 -39
  842. data/assets/uswds/scss/lib/css3/_selection.scss +0 -42
  843. data/assets/uswds/scss/lib/css3/_text-decoration.scss +0 -19
  844. data/assets/uswds/scss/lib/css3/_transform.scss +0 -15
  845. data/assets/uswds/scss/lib/css3/_transition.scss +0 -71
  846. data/assets/uswds/scss/lib/css3/_user-select.scss +0 -3
  847. data/assets/uswds/scss/lib/functions/_assign-inputs.scss +0 -11
  848. data/assets/uswds/scss/lib/functions/_contains-falsy.scss +0 -20
  849. data/assets/uswds/scss/lib/functions/_contains.scss +0 -26
  850. data/assets/uswds/scss/lib/functions/_is-length.scss +0 -11
  851. data/assets/uswds/scss/lib/functions/_is-light.scss +0 -21
  852. data/assets/uswds/scss/lib/functions/_is-number.scss +0 -11
  853. data/assets/uswds/scss/lib/functions/_is-size.scss +0 -13
  854. data/assets/uswds/scss/lib/functions/_modular-scale.scss +0 -69
  855. data/assets/uswds/scss/lib/functions/_new-breakpoint.scss +0 -49
  856. data/assets/uswds/scss/lib/functions/_private.scss +0 -114
  857. data/assets/uswds/scss/lib/functions/_px-to-em.scss +0 -13
  858. data/assets/uswds/scss/lib/functions/_px-to-rem.scss +0 -15
  859. data/assets/uswds/scss/lib/functions/_shade.scss +0 -24
  860. data/assets/uswds/scss/lib/functions/_strip-units.scss +0 -17
  861. data/assets/uswds/scss/lib/functions/_tint.scss +0 -24
  862. data/assets/uswds/scss/lib/functions/_transition-property-name.scss +0 -22
  863. data/assets/uswds/scss/lib/functions/_unpack.scss +0 -27
  864. data/assets/uswds/scss/lib/grid/_box-sizing.scss +0 -15
  865. data/assets/uswds/scss/lib/grid/_direction-context.scss +0 -33
  866. data/assets/uswds/scss/lib/grid/_display-context.scss +0 -28
  867. data/assets/uswds/scss/lib/grid/_fill-parent.scss +0 -22
  868. data/assets/uswds/scss/lib/grid/_media.scss +0 -92
  869. data/assets/uswds/scss/lib/grid/_omega.scss +0 -87
  870. data/assets/uswds/scss/lib/grid/_outer-container.scss +0 -34
  871. data/assets/uswds/scss/lib/grid/_pad.scss +0 -25
  872. data/assets/uswds/scss/lib/grid/_private.scss +0 -35
  873. data/assets/uswds/scss/lib/grid/_row.scss +0 -52
  874. data/assets/uswds/scss/lib/grid/_shift.scss +0 -50
  875. data/assets/uswds/scss/lib/grid/_span-columns.scss +0 -94
  876. data/assets/uswds/scss/lib/grid/_to-deprecate.scss +0 -97
  877. data/assets/uswds/scss/lib/grid/_visual-grid.scss +0 -42
  878. data/assets/uswds/scss/lib/helpers/_convert-units.scss +0 -21
  879. data/assets/uswds/scss/lib/helpers/_directional-values.scss +0 -96
  880. data/assets/uswds/scss/lib/helpers/_font-source-declaration.scss +0 -43
  881. data/assets/uswds/scss/lib/helpers/_gradient-positions-parser.scss +0 -13
  882. data/assets/uswds/scss/lib/helpers/_linear-angle-parser.scss +0 -25
  883. data/assets/uswds/scss/lib/helpers/_linear-gradient-parser.scss +0 -41
  884. data/assets/uswds/scss/lib/helpers/_linear-positions-parser.scss +0 -61
  885. data/assets/uswds/scss/lib/helpers/_linear-side-corner-parser.scss +0 -31
  886. data/assets/uswds/scss/lib/helpers/_radial-arg-parser.scss +0 -69
  887. data/assets/uswds/scss/lib/helpers/_radial-gradient-parser.scss +0 -50
  888. data/assets/uswds/scss/lib/helpers/_radial-positions-parser.scss +0 -18
  889. data/assets/uswds/scss/lib/helpers/_render-gradients.scss +0 -26
  890. data/assets/uswds/scss/lib/helpers/_shape-size-stripper.scss +0 -10
  891. data/assets/uswds/scss/lib/helpers/_str-to-num.scss +0 -50
  892. data/assets/uswds/scss/lib/mixins/_clearfix.scss +0 -25
  893. data/assets/uswds/scss/lib/settings/_asset-pipeline.scss +0 -7
  894. data/assets/uswds/scss/lib/settings/_disable-warnings.scss +0 -13
  895. data/assets/uswds/scss/lib/settings/_grid.scss +0 -51
  896. data/assets/uswds/scss/lib/settings/_prefixer.scss +0 -9
  897. data/assets/uswds/scss/lib/settings/_px-to-em.scss +0 -1
  898. data/assets/uswds/scss/lib/settings/_visual-grid.scss +0 -27
  899. data/assets/uswds/scss/uswds.scss +0 -41
@@ -1,2 +1,2 @@
1
- !function t(e,n,r){function o(u,c){if(!n[u]){if(!e[u]){var s="function"==typeof require&&require;if(!c&&s)return s(u,!0);if(i)return i(u,!0);var a=new Error("Cannot find module '"+u+"'");throw a.code="MODULE_NOT_FOUND",a}var f=n[u]={exports:{}};e[u][0].call(f.exports,function(t){var n=e[u][1][t];return o(n?n:t)},f,f.exports,t,e,n,r)}return n[u].exports}for(var i="function"==typeof require&&require,u=0;u<r.length;u++)o(r[u]);return o}({1:[function(t,e,n){"use strict";e.exports=function(t,e,n){if(t.filter)return t.filter(e,n);if(void 0===t||null===t)throw new TypeError;if("function"!=typeof e)throw new TypeError;for(var o=[],i=0;i<t.length;i++)if(r.call(t,i)){var u=t[i];e.call(n,u,i,t)&&o.push(u)}return o};var r=Object.prototype.hasOwnProperty},{}],2:[function(t,e,n){"use strict";e.exports=function(t,e,n){if(t.forEach)return void t.forEach(e,n);for(var r=0;r<t.length;r+=1)e.call(n,t[r],r,t)}},{}],3:[function(t,e,n){"use strict";"document"in window.self&&("classList"in document.createElement("_")&&(!document.createElementNS||"classList"in document.createElementNS("http://www.w3.org/2000/svg","g"))||!function(t){if("Element"in t){var e="classList",n="prototype",r=t.Element[n],o=Object,i=String[n].trim||function(){return this.replace(/^\s+|\s+$/g,"")},u=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},c=function(t,e){this.name=t,this.code=DOMException[t],this.message=e},s=function(t,e){if(""===e)throw new c("SYNTAX_ERR","An invalid or illegal string was specified");if(/\s/.test(e))throw new c("INVALID_CHARACTER_ERR","String contains an invalid character");return u.call(t,e)},a=function(t){for(var e=i.call(t.getAttribute("class")||""),n=e?e.split(/\s+/):[],r=0,o=n.length;r<o;r++)this.push(n[r]);this._updateClassName=function(){t.setAttribute("class",this.toString())}},f=a[n]=[],l=function(){return new a(this)};if(c[n]=Error[n],f.item=function(t){return this[t]||null},f.contains=function(t){return t+="",s(this,t)!==-1},f.add=function(){var t,e=arguments,n=0,r=e.length,o=!1;do t=e[n]+"",s(this,t)===-1&&(this.push(t),o=!0);while(++n<r);o&&this._updateClassName()},f.remove=function(){var t,e,n=arguments,r=0,o=n.length,i=!1;do for(t=n[r]+"",e=s(this,t);e!==-1;)this.splice(e,1),i=!0,e=s(this,t);while(++r<o);i&&this._updateClassName()},f.toggle=function(t,e){t+="";var n=this.contains(t),r=n?e!==!0&&"remove":e!==!1&&"add";return r&&this[r](t),e===!0||e===!1?e:!n},f.toString=function(){return this.join(" ")},o.defineProperty){var d={get:l,enumerable:!0,configurable:!0};try{o.defineProperty(r,e,d)}catch(p){void 0!==p.number&&p.number!==-2146823252||(d.enumerable=!1,o.defineProperty(r,e,d))}}else o[n].__defineGetter__&&r.__defineGetter__(e,l)}}(window.self),function(){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,r=arguments.length;for(n=0;n<r;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}())},{}],4:[function(t,e,n){"use strict";var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t};!function(t,n){"undefined"!=typeof e?e.exports=n():"function"==typeof define&&"object"==r(define.amd)?define(n):this[t]=n()}("domready",function(){var t,e=[],n=document,r=n.documentElement.doScroll,o="DOMContentLoaded",i=(r?/^loaded|^c/:/^loaded|^i|^c/).test(n.readyState);return i||n.addEventListener(o,t=function(){for(n.removeEventListener(o,t),i=1;t=e.shift();)t()}),function(t){i?setTimeout(t,0):e.push(t)}})},{}],5:[function(t,e,n){"use strict";function r(){var t=document.createElement("div");return t.setAttribute("data-a-b","c"),Boolean(t.dataset&&"c"===t.dataset.aB)}function o(t){return t.dataset}e.exports=r()?o:function(t){function e(){return this.value}function n(t,e){"undefined"==typeof e?this.removeAttribute(t):this.setAttribute(t,e)}for(var r={},o=t.attributes,i=0,u=o.length;i<u;i++){var c=o[i];if(c){var s=c.name;if(0===s.indexOf("data-")){var a=s.slice(5).replace(/-./g,function(t){return t.charAt(1).toUpperCase()}),f=c.value;Object.defineProperty(r,a,{enumerable:!0,get:e.bind({value:f||""}),set:n.bind(t,s)})}}}return r}},{}],6:[function(t,e,n){"use strict";!function(t){"function"!=typeof t.matches&&(t.matches=t.msMatchesSelector||t.mozMatchesSelector||t.webkitMatchesSelector||function(t){for(var e=this,n=(e.document||e.ownerDocument).querySelectorAll(t),r=0;n[r]&&n[r]!==e;)++r;return Boolean(n[r])}),"function"!=typeof t.closest&&(t.closest=function(t){for(var e=this;e&&1===e.nodeType;){if(e.matches(t))return e;e=e.parentNode}return null})}(window.Element.prototype)},{}],7:[function(t,e,n){(function(t){"use strict";function n(t,e,n){function o(e){var n=b,r=h;return b=h=void 0,S=e,g=t.apply(r,n)}function i(t){return S=t,m=setTimeout(f,e),O?o(t):g}function c(t){var n=t-w,r=t-S,o=e-n;return A?E(o,y-r):o}function a(t){var n=t-w,r=t-S;return void 0===w||n>=e||n<0||A&&r>=y}function f(){var t=j();return a(t)?l(t):void(m=setTimeout(f,c(t)))}function l(t){return m=void 0,L&&b?o(t):(b=h=void 0,g)}function d(){void 0!==m&&clearTimeout(m),S=0,b=w=h=m=void 0}function p(){return void 0===m?g:l(j())}function v(){var t=j(),n=a(t);if(b=arguments,h=this,w=t,n){if(void 0===m)return i(w);if(A)return m=setTimeout(f,e),o(w)}return void 0===m&&(m=setTimeout(f,e)),g}var b,h,y,g,m,w,S=0,O=!1,A=!1,L=!0;if("function"!=typeof t)throw new TypeError(s);return e=u(e)||0,r(n)&&(O=!!n.leading,A="maxWait"in n,y=A?x(u(n.maxWait)||0,e):y,L="trailing"in n?!!n.trailing:L),v.cancel=d,v.flush=p,v}function r(t){var e="undefined"==typeof t?"undefined":c(t);return!!t&&("object"==e||"function"==e)}function o(t){return!!t&&"object"==("undefined"==typeof t?"undefined":c(t))}function i(t){return"symbol"==("undefined"==typeof t?"undefined":c(t))||o(t)&&w.call(t)==f}function u(t){if("number"==typeof t)return t;if(i(t))return a;if(r(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=r(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(l,"");var n=p.test(t);return n||v.test(t)?b(t.slice(2),n?2:8):d.test(t)?a:+t}var c="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},s="Expected a function",a=NaN,f="[object Symbol]",l=/^\s+|\s+$/g,d=/^[-+]0x[0-9a-f]+$/i,p=/^0b[01]+$/i,v=/^0o[0-7]+$/i,b=parseInt,h="object"==("undefined"==typeof t?"undefined":c(t))&&t&&t.Object===Object&&t,y="object"==("undefined"==typeof self?"undefined":c(self))&&self&&self.Object===Object&&self,g=h||y||Function("return this")(),m=Object.prototype,w=m.toString,x=Math.max,E=Math.min,j=function(){return g.Date.now()};e.exports=n}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],8:[function(t,e,n){"use strict";function r(t){if(null===t||void 0===t)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(t)}function o(){try{if(!Object.assign)return!1;var t=new String("abc");if(t[5]="de","5"===Object.getOwnPropertyNames(t)[0])return!1;for(var e={},n=0;n<10;n++)e["_"+String.fromCharCode(n)]=n;var r=Object.getOwnPropertyNames(e).map(function(t){return e[t]});if("0123456789"!==r.join(""))return!1;var o={};return"abcdefghijklmnopqrst".split("").forEach(function(t){o[t]=t}),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},o)).join("")}catch(i){return!1}}var i=Object.getOwnPropertySymbols,u=Object.prototype.hasOwnProperty,c=Object.prototype.propertyIsEnumerable;e.exports=o()?Object.assign:function(t,e){for(var n,o,s=r(t),a=1;a<arguments.length;a++){n=Object(arguments[a]);for(var f in n)u.call(n,f)&&(s[f]=n[f]);if(i){o=i(n);for(var l=0;l<o.length;l++)c.call(n,o[l])&&(s[o[l]]=n[o[l]])}}return s}},{}],9:[function(t,e,n){"use strict";var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},o=t("object-assign"),i=t("../delegate"),u=t("../delegateAll"),c=/^(.+):delegate\((.+)\)$/,s=" ",a=function(t,e){var n,a=t.match(c);a&&(t=a[1],n=a[2]);var l;"object"===("undefined"==typeof e?"undefined":r(e))&&(l={capture:f(e,"capture"),passive:f(e,"passive")});var d={selector:n,delegate:"object"===("undefined"==typeof e?"undefined":r(e))?u(e):n?i(n,e):e,options:l};return t.indexOf(s)>-1?t.split(s).map(function(t){return o({type:t},d)}):(d.type=t,[d])},f=function(t,e){var n=t[e];return delete t[e],n};e.exports=function(t,e){var n=Object.keys(t).reduce(function(e,n){var r=a(n,t[n]);return e.concat(r)},[]);return o({add:function(t){n.forEach(function(e){t.addEventListener(e.type,e.delegate,e.options)})},remove:function(t){n.forEach(function(e){t.removeEventListener(e.type,e.delegate,e.options)})}},e)}},{"../delegate":11,"../delegateAll":12,"object-assign":8}],10:[function(t,e,n){"use strict";e.exports=function(t){return function(e){return t.some(function(t){return t.call(this,e)===!1},this)}}},{}],11:[function(t,e,n){"use strict";t("element-closest"),e.exports=function(t,e){return function(n){var r=n.target.closest(t);if(r)return e.call(r,n)}}},{"element-closest":6}],12:[function(t,e,n){"use strict";var r=t("../delegate"),o=t("../compose"),i="*";e.exports=function(t){var e=Object.keys(t);if(1===e.length&&e[0]===i)return t[i];var n=e.reduce(function(e,n){return e.push(r(n,t[n])),e},[]);return o(n)}},{"../compose":10,"../delegate":11}],13:[function(t,e,n){"use strict";e.exports=function(t,e){return function(n){if(t!==n.target&&!t.contains(n.target))return e.call(this,n)}}},{}],14:[function(t,e,n){"use strict";e.exports=function(t,e){var n=function(r){return r.currentTarget.removeEventListener(r.type,n,e),t.call(this,r)};return n}},{}],15:[function(t,e,n){"use strict";var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},o=/(^\s+)|(\s+$)/g,i=/\s+/,u=String.prototype.trim?function(t){return t.trim()}:function(t){return t.replace(o,"")},c=function(t){return this.querySelector('[id="'+t.replace(/"/g,'\\"')+'"]')};e.exports=function(t,e){if("string"!=typeof t)throw new Error("Expected a string but got "+("undefined"==typeof t?"undefined":r(t)));e||(e=window.document);var n=e.getElementById?e.getElementById.bind(e):c.bind(e);return t=u(t).split(i),1===t.length&&""===t[0]?[]:t.map(function(t){var e=n(t);if(!e)throw new Error('no element with id: "'+t+'"');return e})}},{}],16:[function(t,e,n){"use strict";function r(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var o=t("../utils/behavior"),i=t("array-filter"),u=t("array-foreach"),c=t("../utils/toggle"),s=t("../utils/is-in-viewport"),a=t("../events").CLICK,f=t("../config").prefix,l="."+f+"-accordion, ."+f+"-accordion-bordered",d="."+f+"-accordion-button[aria-controls]",p="aria-expanded",v="aria-multiselectable",b=function(t,e){var n=t.closest(l);if(!n)throw new Error(d+" is missing outer "+l);e=c(t,e);var r="true"===n.getAttribute(v);e&&!r&&u(g(n),function(e){e!==t&&c(e,!1)})},h=function(t){return b(t,!0)},y=function(t){return b(t,!1)},g=function(t){return i(t.querySelectorAll(d),function(e){return e.closest(l)===t})},m=o(r({},a,r({},d,function(t){t.preventDefault(),b(this),"true"===this.getAttribute(p)&&(s(this)||this.scrollIntoView())})),{init:function(t){u(t.querySelectorAll(d),function(t){var e="true"===t.getAttribute(p);b(t,e)})},ACCORDION:l,BUTTON:d,show:h,hide:y,toggle:b,getButtons:g}),w=function(t){this.root=t,m.on(this.root)},x=t("object-assign");x(w,m),w.prototype.show=h,w.prototype.hide=y,w.prototype.remove=function(){m.off(this.root)},e.exports=w},{"../config":25,"../events":26,"../utils/behavior":30,"../utils/is-in-viewport":31,"../utils/toggle":35,"array-filter":1,"array-foreach":2,"object-assign":8}],17:[function(t,e,n){"use strict";function r(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var o=t("../utils/behavior"),i=(t("../utils/toggle"),t("../events").CLICK),u=t("../config").prefix,c="."+u+"-banner-header",s=u+"-banner-header-expanded",a=function(t){return t.preventDefault(),this.closest(c).classList.toggle(s),!1};e.exports=o(r({},i,r({},c+" [aria-controls]",a)))},{"../config":25,"../events":26,"../utils/behavior":30,"../utils/toggle":35}],18:[function(t,e,n){"use strict";function r(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var o=(t("./accordion"),t("../utils/behavior")),i=t("lodash.debounce"),u=t("array-foreach"),c=t("../utils/select"),s=t("../events").CLICK,a=t("../config").prefix,f="hidden",l="."+a+"-footer-big",d=l+" nav",p=d+" ."+a+"-footer-primary-link",v=d+" ul",b=600,h=180,y=function(){var t=this.closest(v);t.classList.remove(f);var e=t.closest(d).querySelectorAll("ul");u(e,function(e){e!==t&&e.classList.add(f)})},g=i(function(){var t=window.innerWidth<b;u(c(v),function(e){e.classList.toggle(f,t)})},h);e.exports=o(r({},s,r({},p,y)),{HIDE_MAX_WIDTH:b,DEBOUNCE_RATE:h,init:function(t){g(),window.addEventListener("resize",g)},teardown:function(t){window.removeEventListener("resize",g)}})},{"../config":25,"../events":26,"../utils/behavior":30,"../utils/select":32,"./accordion":16,"array-foreach":2,"lodash.debounce":7}],19:[function(t,e,n){"use strict";e.exports={accordion:t("./accordion"),banner:t("./banner"),footer:t("./footer"),navigation:t("./navigation"),password:t("./password"),search:t("./search"),skipnav:t("./skipnav"),validator:t("./validator")}},{"./accordion":16,"./banner":17,"./footer":18,"./navigation":20,"./password":21,"./search":22,"./skipnav":23,"./validator":24}],20:[function(t,e,n){"use strict";function r(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var o,i=t("../utils/behavior"),u=t("array-foreach"),c=t("../utils/select"),s=t("./accordion"),a=t("../events").CLICK,f=t("../config").prefix,l="."+f+"-nav",d=l+" a",p="."+f+"-menu-btn",v="."+f+"-nav-close",b="."+f+"-overlay",h=v+", ."+f+"-overlay",y=[l,b].join(", "),g="usa-mobile_nav-active",m="is-visible",w=function(){return document.body.classList.contains(g)},x=function(t){var e=document.body;"boolean"!=typeof t&&(t=!w()),e.classList.toggle(g,t),u(c(y),function(e){e.classList.toggle(m,t)});var n=e.querySelector(v),r=e.querySelector(p);return t&&n?n.focus():!t&&document.activeElement===n&&r&&r.focus(),t},E=function(){var t=document.body.querySelector(v);w()&&t&&0===t.getBoundingClientRect().width&&x.call(t,!1)},j=i(r({},a,(o={},r(o,p,x),r(o,h,x),r(o,d,function(){var t=this.closest(s.ACCORDION);t&&s.getButtons(t).forEach(function(t){return s.hide(t)}),w()&&x.call(this,!1)}),o)),{init:function(){E(),window.addEventListener("resize",E,!1)},teardown:function(){window.removeEventListener("resize",E,!1)}}),S=t("object-assign");e.exports=S(function(t){return j.on(t)},j)},{"../config":25,"../events":26,"../utils/behavior":30,"../utils/select":32,"./accordion":16,"array-foreach":2,"object-assign":8}],21:[function(t,e,n){"use strict";function r(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var o=t("../utils/behavior"),i=t("../utils/toggle-form-input"),u=t("../events").CLICK,c=t("../config").prefix,s="."+c+"-show_password, ."+c+"-show_multipassword",a=function(t){t.preventDefault(),i(this)};e.exports=o(r({},u,r({},s,a)))},{"../config":25,"../events":26,"../utils/behavior":30,"../utils/toggle-form-input":34}],22:[function(t,e,n){"use strict";function r(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var o=t("../utils/behavior"),i=t("array-foreach"),u=t("receptor/ignore"),c=t("../utils/select"),s=t("../events").CLICK,a=t("../config").prefix,f=".js-search-button",l=".js-search-form",d="[type=search]",p="header",v=a+"-sr-only",b=void 0,h=function(t){m(this,!0),b=this},y=function(t){m(this,!1),b=void 0},g=function(t){var e=t.closest(p);return e?e.querySelector(l):document.querySelector(l)},m=function(t,e){var n=g(t);if(!n)throw new Error("No "+l+" found for search toggle in "+p+"!");if(t.hidden=e,n.classList.toggle(v,!e),e){var r=n.querySelector(d);r&&r.focus();var o=u(n,function(t){b&&y.call(b),document.body.removeEventListener(s,o)});setTimeout(function(){document.body.addEventListener(s,o)},0)}},w=o(r({},s,r({},f,h)),{init:function(t){i(c(f,t),function(t){m(t,!1)})},teardown:function(t){b=void 0}}),x=t("object-assign");e.exports=x(function(t){return w.on(t)},w)},{"../config":25,"../events":26,"../utils/behavior":30,"../utils/select":32,"array-foreach":2,"object-assign":8,"receptor/ignore":13}],23:[function(t,e,n){"use strict";function r(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var o=t("../utils/behavior"),i=t("receptor/once"),u=t("../events").CLICK,c=t("../config").prefix,s="."+c+'-skipnav[href^="#"]',a=function(t){var e=this.getAttribute("href").slice(1),n=document.getElementById(e);n&&(n.setAttribute("tabindex",0),n.addEventListener("blur",i(function(t){n.setAttribute("tabindex",-1)})))};e.exports=o(r({},u,r({},s,a)))},{"../config":25,"../events":26,"../utils/behavior":30,"receptor/once":14}],24:[function(t,e,n){"use strict";var r=t("../utils/behavior"),o=t("../utils/validate-input"),i=(t("lodash.debounce"),function(t){return o(this)}),u=r({"keyup change":{"input[data-validation-element]":i}}),c=t("object-assign");e.exports=c(function(t){return u.on(t)},u)},{"../utils/behavior":30,"../utils/validate-input":36,"lodash.debounce":7,"object-assign":8}],25:[function(t,e,n){"use strict";e.exports={prefix:"usa"}},{}],26:[function(t,e,n){"use strict";e.exports={CLICK:"click"}},{}],27:[function(t,e,n){"use strict";var r=window.HTMLElement.prototype,o="hidden";o in r||Object.defineProperty(r,o,{get:function(){return this.hasAttribute(o)},set:function(t){t?this.setAttribute(o,""):this.removeAttribute(o)}})},{}],28:[function(t,e,n){"use strict";t("classlist-polyfill"),t("./element-hidden")},{"./element-hidden":27,"classlist-polyfill":3}],29:[function(t,e,n){"use strict";var r=t("domready");t("./polyfills");var o=t("./config"),i=t("./components");o.components=i,r(function(){var t=document.body;for(var e in i){var n=i[e];n.on(t)}}),e.exports=o},{"./components":19,"./config":25,"./polyfills":28,domready:4}],30:[function(t,e,n){"use strict";var r=t("object-assign"),o=t("array-foreach"),i=t("receptor/behavior"),u=function(){var t=[].slice.call(arguments);return function(e){var n=this;e||(e=document.body),o(t,function(t){"function"==typeof n[t]&&n[t].call(n,e)})}};e.exports=function(t,e){return i(t,r({on:u("init","add"),off:u("teardown","remove")},e))}},{"array-foreach":2,"object-assign":8,"receptor/behavior":9}],31:[function(t,e,n){"use strict";function r(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:window,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:document.documentElement,r=t.getBoundingClientRect();return r.top>=0&&r.left>=0&&r.bottom<=(e.innerHeight||n.clientHeight)&&r.right<=(e.innerWidth||n.clientWidth)}e.exports=r},{}],32:[function(t,e,n){"use strict";var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},o=function(t){return t&&"object"===("undefined"==typeof t?"undefined":r(t))&&1===t.nodeType};e.exports=function(t,e){if("string"!=typeof t)return[];e&&o(e)||(e=window.document);var n=e.querySelectorAll(t);return Array.prototype.slice.call(n)}},{}],33:[function(t,e,n){"use strict";e.exports=function(t,e){t.setAttribute("autocapitalize","off"),t.setAttribute("autocorrect","off"),t.setAttribute("type",e?"password":"text")}},{}],34:[function(t,e,n){"use strict";var r=t("array-foreach"),o=t("resolve-id-refs"),i=(t("./select"),t("./toggle-field-mask")),u="aria-controls",c="aria-pressed",s="data-show-text",a="data-hide-text",f=function(t){return t.replace(/\bShow\b/i,function(t){return("S"===t[0]?"H":"h")+"ide"})};e.exports=function(t){var e=t.hasAttribute(c)&&"true"!==t.getAttribute(c),n=o(t.getAttribute(u));r(n,function(t){return i(t,e)}),t.hasAttribute(s)||t.setAttribute(s,t.textContent);var l=t.getAttribute(s),d=t.getAttribute(a)||f(l);return t.textContent=e?l:d,t.setAttribute(c,e),e}},{"./select":32,"./toggle-field-mask":33,"array-foreach":2,"resolve-id-refs":15}],35:[function(t,e,n){"use strict";var r="aria-expanded",o="aria-controls",i="aria-hidden";e.exports=function(t,e){"boolean"!=typeof e&&(e="false"===t.getAttribute(r)),t.setAttribute(r,e);var n=t.getAttribute(o),u=document.getElementById(n);if(!u)throw new Error('No toggle target found with id: "'+n+'"');return u.setAttribute(i,!e),e}},{}],36:[function(t,e,n){"use strict";var r=t("elem-dataset"),o=t("../config").prefix,i="aria-checked",u=o+"-checklist-checked";e.exports=function(t){var e=r(t),n=e.validationElement,o="#"===n.charAt(0)?document.querySelector(n):document.getElementById(n);if(!o)throw new Error('No validation element found with id: "'+n+'"');for(var c in e)if(c.startsWith("validate")){var s=c.substr("validate".length).toLowerCase(),a=new RegExp(e[c]),f='[data-validator="'+s+'"]',l=o.querySelector(f);if(!l)throw new Error('No validator checkbox found for: "'+s+'"');var d=a.test(t.value);l.classList.toggle(u,d),l.setAttribute(i,d)}}},{"../config":25,"elem-dataset":5}]},{},[29]);
1
+ !function i(c,a,u){function s(e,t){if(!a[e]){if(!c[e]){var n="function"==typeof require&&require;if(!t&&n)return n(e,!0);if(l)return l(e,!0);var o=new Error("Cannot find module '"+e+"'");throw o.code="MODULE_NOT_FOUND",o}var r=a[e]={exports:{}};c[e][0].call(r.exports,function(t){return s(c[e][1][t]||t)},r,r.exports,i,c,a,u)}return a[e].exports}for(var l="function"==typeof require&&require,t=0;t<u.length;t++)s(u[t]);return s}({1:[function(t,e,n){"use strict";"document"in window.self&&("classList"in document.createElement("_")&&(!document.createElementNS||"classList"in document.createElementNS("http://www.w3.org/2000/svg","g"))||function(t){if("Element"in t){var e="classList",n="prototype",o=t.Element[n],r=Object,i=String[n].trim||function(){return this.replace(/^\s+|\s+$/g,"")},c=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},u=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 c.call(t,e)},s=function(t){for(var e=i.call(t.getAttribute("class")||""),n=e?e.split(/\s+/):[],o=0,r=n.length;o<r;o++)this.push(n[o]);this._updateClassName=function(){t.setAttribute("class",this.toString())}},l=s[n]=[],f=function(){return new s(this)};if(a[n]=Error[n],l.item=function(t){return this[t]||null},l.contains=function(t){return-1!==u(this,t+="")},l.add=function(){for(var t,e=arguments,n=0,o=e.length,r=!1;-1===u(this,t=e[n]+"")&&(this.push(t),r=!0),++n<o;);r&&this._updateClassName()},l.remove=function(){var t,e,n=arguments,o=0,r=n.length,i=!1;do{for(e=u(this,t=n[o]+"");-1!==e;)this.splice(e,1),i=!0,e=u(this,t)}while(++o<r);i&&this._updateClassName()},l.toggle=function(t,e){t+="";var n=this.contains(t),o=n?!0!==e&&"remove":!1!==e&&"add";return o&&this[o](t),!0===e||!1===e?e:!n},l.toString=function(){return this.join(" ")},r.defineProperty){var d={get:f,enumerable:!0,configurable:!0};try{r.defineProperty(o,e,d)}catch(t){void 0!==t.number&&-2146823252!==t.number||(d.enumerable=!1,r.defineProperty(o,e,d))}}else r[n].__defineGetter__&&o.__defineGetter__(e,f)}}(window.self),function(){var t=document.createElement("_");if(t.classList.add("c1","c2"),!t.classList.contains("c2")){var e=function(t){var o=DOMTokenList.prototype[t];DOMTokenList.prototype[t]=function(t){var e,n=arguments.length;for(e=0;e<n;e++)t=arguments[e],o.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}())},{}],2:[function(t,n,e){"use strict";function o(t){return(o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}!function(t,e){void 0!==n?n.exports=e():"function"==typeof define&&"object"==o(define.amd)?define(e):this.domready=e()}(0,function(){var t,e=[],n=document,o=n.documentElement.doScroll,r="DOMContentLoaded",i=(o?/^loaded|^c/:/^loaded|^i|^c/).test(n.readyState);return i||n.addEventListener(r,t=function(){for(n.removeEventListener(r,t),i=1;t=e.shift();)t()}),function(t){i?setTimeout(t,0):e.push(t)}})},{}],3:[function(t,e,n){"use strict";var o;e.exports=((o=document.createElement("div")).setAttribute("data-a-b","c"),Boolean(o.dataset&&"c"===o.dataset.aB)?function(t){return t.dataset}:function(t){var e={},n=t.attributes;function o(){return this.value}function r(t,e){void 0===e?this.removeAttribute(t):this.setAttribute(t,e)}for(var i=0,c=n.length;i<c;i++){var a=n[i];if(a){var u=a.name;if(0===u.indexOf("data-")){var s=u.slice(5).replace(/-./g,function(t){return t.charAt(1).toUpperCase()}),l=a.value;Object.defineProperty(e,s,{enumerable:!0,get:o.bind({value:l||""}),set:r.bind(t,u)})}}}return e})},{}],4:[function(t,e,n){"use strict";var o;"function"!=typeof(o=window.Element.prototype).matches&&(o.matches=o.msMatchesSelector||o.mozMatchesSelector||o.webkitMatchesSelector||function(t){for(var e=(this.document||this.ownerDocument).querySelectorAll(t),n=0;e[n]&&e[n]!==this;)++n;return Boolean(e[n])}),"function"!=typeof o.closest&&(o.closest=function(t){for(var e=this;e&&1===e.nodeType;){if(e.matches(t))return e;e=e.parentNode}return null})},{}],5:[function(t,o,r){"use strict";!function(){var t,e={polyfill:function(){if(!("KeyboardEvent"in window)||"key"in KeyboardEvent.prototype)return!1;var t={get:function(){var t=e.keys[this.which||this.keyCode];return Array.isArray(t)&&(t=t[+this.shiftKey]),t}};return Object.defineProperty(KeyboardEvent.prototype,"key",t),t},keys:{3:"Cancel",6:"Help",8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",28:"Convert",29:"NonConvert",30:"Accept",31:"ModeChange",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",41:"Select",42:"Print",43:"Execute",44:"PrintScreen",45:"Insert",46:"Delete",48:["0",")"],49:["1","!"],50:["2","@"],51:["3","#"],52:["4","$"],53:["5","%"],54:["6","^"],55:["7","&"],56:["8","*"],57:["9","("],91:"OS",93:"ContextMenu",144:"NumLock",145:"ScrollLock",181:"VolumeMute",182:"VolumeDown",183:"VolumeUp",186:[";",":"],187:["=","+"],188:[",","<"],189:["-","_"],190:[".",">"],191:["/","?"],192:["`","~"],219:["[","{"],220:["\\","|"],221:["]","}"],222:["'",'"'],224:"Meta",225:"AltGraph",246:"Attn",247:"CrSel",248:"ExSel",249:"EraseEof",250:"Play",251:"ZoomOut"}};for(t=1;t<25;t++)e.keys[111+t]="F"+t;var n="";for(t=65;t<91;t++)n=String.fromCharCode(t),e.keys[t]=[n.toLowerCase(),n.toUpperCase()];"function"==typeof define&&define.amd?define("keyboardevent-key-polyfill",e):void 0!==r&&void 0!==o?o.exports=e:window&&(window.keyboardeventKeyPolyfill=e)}()},{}],6:[function(t,p,e){(function(t){"use strict";function n(t){return(n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function y(){return f.Date.now()}var o=NaN,e="[object Symbol]",r=/^\s+|\s+$/g,i=/^[-+]0x[0-9a-f]+$/i,c=/^0b[01]+$/i,a=/^0o[0-7]+$/i,u=parseInt,s="object"==(void 0===t?"undefined":n(t))&&t&&t.Object===Object&&t,l="object"==("undefined"==typeof self?"undefined":n(self))&&self&&self.Object===Object&&self,f=s||l||Function("return this")(),d=Object.prototype.toString,m=Math.max,w=Math.min;function E(t){var e=n(t);return!!t&&("object"==e||"function"==e)}function v(t){return"symbol"==n(t)||function(t){return!!t&&"object"==n(t)}(t)&&d.call(t)==e}function x(t){if("number"==typeof t)return t;if(v(t))return o;if(E(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=E(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(r,"");var n=c.test(t);return n||a.test(t)?u(t.slice(2),n?2:8):i.test(t)?o:+t}p.exports=function(o,n,t){var r,i,c,a,u,s,l=0,f=!1,d=!1,e=!0;if("function"!=typeof o)throw new TypeError("Expected a function");function v(t){var e=r,n=i;return r=i=void 0,l=t,a=o.apply(n,e)}function p(t){var e=t-s;return void 0===s||n<=e||e<0||d&&c<=t-l}function b(){var t=y();if(p(t))return h(t);u=setTimeout(b,function(t){var e=n-(t-s);return d?w(e,c-(t-l)):e}(t))}function h(t){return u=void 0,e&&r?v(t):(r=i=void 0,a)}function g(){var t=y(),e=p(t);if(r=arguments,i=this,s=t,e){if(void 0===u)return function(t){return l=t,u=setTimeout(b,n),f?v(t):a}(s);if(d)return u=setTimeout(b,n),v(s)}return void 0===u&&(u=setTimeout(b,n)),a}return n=x(n)||0,E(t)&&(f=!!t.leading,c=(d="maxWait"in t)?m(x(t.maxWait)||0,n):c,e="trailing"in t?!!t.trailing:e),g.cancel=function(){void 0!==u&&clearTimeout(u),r=s=i=u=void(l=0)},g.flush=function(){return void 0===u?a:h(y())},g}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],7:[function(t,e,n){"use strict";var u=Object.getOwnPropertySymbols,s=Object.prototype.hasOwnProperty,l=Object.prototype.propertyIsEnumerable;e.exports=function(){try{if(!Object.assign)return!1;var t=new String("abc");if(t[5]="de","5"===Object.getOwnPropertyNames(t)[0])return!1;for(var e={},n=0;n<10;n++)e["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(e).map(function(t){return e[t]}).join(""))return!1;var o={};return"abcdefghijklmnopqrst".split("").forEach(function(t){o[t]=t}),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},o)).join("")}catch(t){return!1}}()?Object.assign:function(t,e){for(var n,o,r=function(t){if(null==t)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(t)}(t),i=1;i<arguments.length;i++){for(var c in n=Object(arguments[i]))s.call(n,c)&&(r[c]=n[c]);if(u){o=u(n);for(var a=0;a<o.length;a++)l.call(n,o[a])&&(r[o[a]]=n[o[a]])}}return r}},{}],8:[function(t,e,n){"use strict";function c(t){return(c="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}var a=t("object-assign"),u=t("../delegate"),s=t("../delegateAll"),l=/^(.+):delegate\((.+)\)$/,f=function(t,e){var n=t[e];return delete t[e],n};e.exports=function(o,t){var n=Object.keys(o).reduce(function(t,e){var n=function(t,e){var n,o,r=t.match(l);r&&(t=r[1],n=r[2]),"object"===c(e)&&(o={capture:f(e,"capture"),passive:f(e,"passive")});var i={selector:n,delegate:"object"===c(e)?s(e):n?u(n,e):e,options:o};return-1<t.indexOf(" ")?t.split(" ").map(function(t){return a({type:t},i)}):(i.type=t,[i])}(e,o[e]);return t.concat(n)},[]);return a({add:function(e){n.forEach(function(t){e.addEventListener(t.type,t.delegate,t.options)})},remove:function(e){n.forEach(function(t){e.removeEventListener(t.type,t.delegate,t.options)})}},t)}},{"../delegate":10,"../delegateAll":11,"object-assign":7}],9:[function(t,e,n){"use strict";e.exports=function(t){return function(e){return t.some(function(t){return!1===t.call(this,e)},this)}}},{}],10:[function(t,e,n){"use strict";t("element-closest"),e.exports=function(n,o){return function(t){var e=t.target.closest(n);if(e)return o.call(e,t)}}},{"element-closest":4}],11:[function(t,e,n){"use strict";var o=t("../delegate"),r=t("../compose");e.exports=function(n){var t=Object.keys(n);if(1===t.length&&"*"===t[0])return n["*"];var e=t.reduce(function(t,e){return t.push(o(e,n[e])),t},[]);return r(e)}},{"../compose":9,"../delegate":10}],12:[function(t,e,n){"use strict";e.exports=function(e,n){return function(t){if(e!==t.target&&!e.contains(t.target))return n.call(this,t)}}},{}],13:[function(t,e,n){"use strict";e.exports={behavior:t("./behavior"),delegate:t("./delegate"),delegateAll:t("./delegateAll"),ignore:t("./ignore"),keymap:t("./keymap")}},{"./behavior":8,"./delegate":10,"./delegateAll":11,"./ignore":12,"./keymap":14}],14:[function(t,e,n){"use strict";t("keyboardevent-key-polyfill");var i={Alt:"altKey",Control:"ctrlKey",Ctrl:"ctrlKey",Shift:"shiftKey"};e.exports=function(r){var t=Object.keys(r).some(function(t){return-1<t.indexOf("+")});return function(n){var o=function(t,e){var n=t.key;if(e)for(var o in i)!0===t[i[o]]&&(n=[o,n].join("+"));return n}(n,t);return[o,o.toLowerCase()].reduce(function(t,e){return e in r&&(t=r[o].call(this,n)),t},void 0)}},e.exports.MODIFIERS=i},{"keyboardevent-key-polyfill":5}],15:[function(t,e,n){"use strict";e.exports=function(e,n){var o=function(t){return t.currentTarget.removeEventListener(t.type,o,n),e.call(this,t)};return o}},{}],16:[function(t,e,n){"use strict";function o(t){return(o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}var r=/(^\s+)|(\s+$)/g,i=/\s+/,c=String.prototype.trim?function(t){return t.trim()}:function(t){return t.replace(r,"")};e.exports=function(t,e){if("string"!=typeof t)throw new Error("Expected a string but got "+o(t));var n=(e=e||window.document).getElementById?e.getElementById.bind(e):function(t){return this.querySelector('[id="'+t.replace(/"/g,'\\"')+'"]')}.bind(e);return 1===(t=c(t).split(i)).length&&""===t[0]?[]:t.map(function(t){var e=n(t);if(!e)throw new Error('no element with id: "'+t+'"');return e})}},{}],17:[function(t,e,n){"use strict";function o(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function i(e){return c(v,e).filter(function(t){return t.closest(d)===e})}function r(e,t){var n,o=e.closest(d);if(!o)throw new Error("".concat(v," is missing outer ").concat(d));n=u(e,t);var r="true"===o.getAttribute("aria-multiselectable");n&&!r&&i(o).forEach(function(t){t!==e&&u(t,!1)})}var c=t("../utils/select"),a=t("../utils/behavior"),u=t("../utils/toggle"),s=t("../utils/is-in-viewport"),l=t("../events").CLICK,f=t("../config").prefix,d=".".concat(f,"-accordion, .").concat(f,"-accordion--bordered"),v=".".concat(f,"-accordion__button[aria-controls]"),p="aria-expanded",b=a(o({},l,o({},v,function(t){t.preventDefault(),r(this),"true"===this.getAttribute(p)&&(s(this)||this.scrollIntoView())})),{init:function(t){c(v,t).forEach(function(t){var e="true"===t.getAttribute(p);r(t,e)})},ACCORDION:d,BUTTON:v,show:function(t){return r(t,!0)},hide:function(t){return r(t,!1)},toggle:r,getButtons:i});e.exports=b},{"../config":28,"../events":29,"../utils/behavior":34,"../utils/is-in-viewport":36,"../utils/select":37,"../utils/toggle":40}],18:[function(t,e,n){"use strict";function o(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var r=t("../utils/behavior"),i=t("../events").CLICK,c=t("../config").prefix,a=".".concat(c,"-banner__header"),u="".concat(c,"-banner__header--expanded");e.exports=r(o({},i,o({},"".concat(a," [aria-controls]"),function(t){t.preventDefault(),this.closest(a).classList.toggle(u)})))},{"../config":28,"../events":29,"../utils/behavior":34}],19:[function(t,e,n){"use strict";function f(t){var e=t.closest(l);if(!e)throw new Error("".concat(d," is missing outer ").concat(l));var n=e.querySelector(v);if(!n)throw new Error("".concat(l," is missing inner ").concat(v));return{characterCountEl:e,messageEl:n}}function o(t){var e=f(t),n=e.characterCountEl,o=e.messageEl,r=parseInt(n.getAttribute("data-maxlength"),10);if(r){var i="",c=t.value.length,a=c&&r<c;if(0===c)i="".concat(r," characters allowed");else{var u=Math.abs(r-c),s="character".concat(1===u?"":"s"),l=a?"over limit":"left";i="".concat(u," ").concat(s," ").concat(l)}o.classList.toggle(b,a),o.innerHTML=i,a&&!t.validationMessage&&t.setCustomValidity(p),a||t.validationMessage!==p||t.setCustomValidity("")}}var r,i,c,a=t("../utils/select"),u=t("../utils/behavior"),s=t("../config").prefix,l=".".concat(s,"-character-count"),d=".".concat(s,"-character-count__field"),v=".".concat(s,"-character-count__message"),p="The content is too long.",b="".concat(s,"-character-count__message--invalid"),h=u({input:(r={},i=d,c=function(){o(this)},i in r?Object.defineProperty(r,i,{value:c,enumerable:!0,configurable:!0,writable:!0}):r[i]=c,r)},{init:function(t){a(d,t).forEach(function(t){!function(t){var e=f(t).characterCountEl,n=t.getAttribute("maxlength");n&&(t.removeAttribute("maxlength"),e.setAttribute("data-maxlength",n))}(t),o(t)})},MESSAGE_INVALID_CLASS:b,VALIDATION_MESSAGE:p});e.exports=h},{"../config":28,"../utils/behavior":34,"../utils/select":37}],20:[function(t,e,n){"use strict";var o,r;function i(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function b(t){var e=t.closest(y);if(!e)throw new Error("Element is missing outer ".concat(y));var n=e.querySelector(S);if(!n)throw new Error("".concat(y," is missing inner ").concat(S));var o=e.querySelector(O),r=e.querySelector(C),i=e.querySelector(_),c=e.querySelector(L);return{comboBoxEl:e,selectEl:n,inputEl:o,listEl:r,statusEl:i,focusedOptionEl:c}}function c(t){for(var e=b(t),n=e.selectEl,o=e.inputEl,r=e.listEl,i=e.statusEl,c="".concat(r.id,"--option-"),a=(o.value||"").toLowerCase(),u=[],s=0,l=n.options.length;s<l;s+=1){var f=n.options[s];!f.value||a&&-1===f.text.toLowerCase().indexOf(a)||u.push(f)}var d=u.length,v=u.map(function(t,e){return'<li\n aria-selected="false"\n aria-setsize="'.concat(u.length,'"\n aria-posinset="').concat(e+1,'"\n id="').concat(c).concat(e,'"\n class="').concat(E,'"\n tabindex="-1"\n role="option"\n data-option-value="').concat(t.value,'"\n >').concat(t.text,"</li>")}).join(""),p='<li class="'.concat(E,'--no-results">No results found</li>');r.hidden=!1,r.innerHTML=d?v:p,o.setAttribute("aria-expanded","true"),i.innerHTML=d?"".concat(d," result").concat(1<d?"s":""," available."):"No results."}function a(t){var e=b(t),n=e.inputEl,o=e.listEl;e.statusEl.innerHTML="",n.setAttribute("aria-expanded","false"),n.setAttribute("aria-activedescendant",""),o.innerHTML="",o.hidden=!0}function u(t){var e=b(t),n=e.selectEl,o=e.inputEl,r=e.statusEl,i=e.focusedOptionEl;if(r.textContent="",i)return n.value=i.getAttribute("data-option-value"),void(o.value=i.textContent);var c=(o.value||"").toLowerCase();if(c)for(var a=0,u=n.options.length;a<u;a+=1){var s=n.options[a];if(s.text.toLowerCase()===c)return n.value=s.value,void(o.value=s.text)}n.value="",o.value&&(o.value="")}function s(t,e,n){var o=b(t),r=o.inputEl,i=o.listEl;if(e&&(e.classList.remove(A),e.setAttribute("aria-selected","false")),n){r.setAttribute("aria-activedescendant",n.id),n.setAttribute("aria-selected","true"),n.classList.add(A);var c=n.offsetTop+n.offsetHeight;i.scrollTop+i.offsetHeight<c&&(i.scrollTop=c-i.offsetHeight),n.offsetTop<i.scrollTop&&(i.scrollTop=n.offsetTop),n.focus()}else r.setAttribute("aria-activedescendant",""),r.focus()}function l(t){var e=b(t.target),n=e.comboBoxEl,o=e.listEl,r=e.focusedOptionEl,i=r&&r.previousSibling,c=!o.hidden;s(n,r,i),c&&t.preventDefault(),i||a(n)}function f(t){var e=b(t.target),n=e.comboBoxEl,o=e.listEl,r=e.focusedOptionEl;o.hidden&&c(n);var i=r?r.nextSibling:o.querySelector(j);i&&s(n,r,i),t.preventDefault()}var d=t("receptor/keymap"),v=t("../utils/select"),p=t("../utils/behavior"),h=t("../config").prefix,g=t("../events").CLICK,y=".".concat(h,"-combo-box"),m="".concat(h,"-combo-box__input"),w="".concat(h,"-combo-box__list"),E="".concat(h,"-combo-box__list-option"),x="".concat(h,"-combo-box__status"),A="".concat(E,"--focused"),S=".".concat(h,"-combo-box__select"),O=".".concat(m),C=".".concat(w),j=".".concat(E),L=".".concat(A),_=".".concat(x),k=p((i(r={},g,(i(o={},O,function(){c(this)}),i(o,j,function(){!function(t){var e=b(t),n=e.comboBoxEl,o=e.selectEl,r=e.inputEl;o.value=t.getAttribute("data-option-value"),r.value=t.textContent,a(n),r.focus()}(this)}),o)),i(r,"focusout",i({},y,function(t){var e=b(t.target).comboBoxEl;e.contains(t.relatedTarget)||(u(e),a(e))})),i(r,"keydown",i({},y,d({ArrowUp:l,Up:l,ArrowDown:f,Down:f,Escape:function(t){var e=b(t.target),n=e.comboBoxEl,o=e.inputEl;a(n),o.focus()},Enter:function(t){var e=b(t.target),n=e.comboBoxEl,o=e.inputEl,r=!e.listEl.hidden;u(n),r&&(a(n),o.focus(),t.preventDefault())}}))),i(r,"keyup",i({},O,function(t){!function(t){return 47<t&&t<58||32===t||8===t||64<t&&t<91||95<t&&t<112||185<t&&t<193||218<t&&t<223}(t.keyCode)||c(this)})),r),{init:function(t){v(S,t).forEach(function(t){!function(t){for(var e,n=b(t),o=n.comboBoxEl,r=n.selectEl,i=r.id,c="".concat(i,"--list"),a="".concat(i,"--assistiveHint"),u="",s=[],l=0,f=r.options.length;l<f;l+=1){var d=r.options[l];if(u||d.value||(u='placeholder="'.concat(d.text,'"')),!e&&d.selected&&d.value&&(e=d),u&&e)break}if(r.setAttribute("aria-hidden","true"),r.setAttribute("tabindex","-1"),r.classList.add("usa-sr-only"),r.id="",["required","aria-label","aria-labelledby"].forEach(function(t){if(r.hasAttribute(t)){var e=r.getAttribute(t);s.push("".concat(t,'="').concat(e,'"')),r.removeAttribute(t)}}),o.insertAdjacentHTML("beforeend",['<input\n aria-owns="'.concat(c,'"\n aria-autocomplete="list"\n aria-describedby="').concat(a,'"\n aria-expanded="false"\n autocapitalize="off"\n ').concat(u||"",'\n autocomplete="off"\n id="').concat(i,'"\n class="').concat(m,'"\n type="text"\n role="combobox"\n ').concat(s.join(" "),"\n >"),'<ul\n id="'.concat(c,'"\n class="').concat(w,'"\n role="listbox"\n hidden>\n </ul>'),'<div class="'.concat(x,' usa-sr-only" role="status">\n </div>'),'<span id="'.concat(a,'" class="usa-sr-only">\n When autocomplete results are available use up and down arrows to review and enter to select.\n Touch device users, explore by touch or with swipe gestures.\n </span>')].join("")),e){var v=b(t).inputEl;r.value=e.value,v.value=e.text}}(t)})}});e.exports=k},{"../config":28,"../events":29,"../utils/behavior":34,"../utils/select":37,"receptor/keymap":14}],21:[function(t,e,n){"use strict";function o(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var r,i=t("lodash.debounce"),c=t("../utils/behavior"),a=t("../utils/select"),u=t("../events").CLICK,s=t("../config").prefix,l="hidden",f=".".concat(s,"-footer--big"),d="".concat(f," nav"),v="".concat(d," .").concat(s,"-footer__primary-link"),p=".".concat(s,"-footer__primary-content--collapsible");var b=i(function(){if(r!==window.innerWidth){r=window.innerWidth;var e=window.innerWidth<480;a(p).forEach(function(t){return t.classList.toggle(l,e)})}},180);e.exports=c(o({},u,o({},v,function(){if(window.innerWidth<480){var e=this.closest(p);e.classList.toggle(l),a(p,e.closest(d)).forEach(function(t){t!==e&&t.classList.add(l)})}})),{HIDE_MAX_WIDTH:480,DEBOUNCE_RATE:180,init:function(){b(),window.addEventListener("resize",b)},teardown:function(){window.removeEventListener("resize",b)}})},{"../config":28,"../events":29,"../utils/behavior":34,"../utils/select":37,"lodash.debounce":6}],22:[function(t,e,n){"use strict";var o=t("./accordion"),r=t("./banner"),i=t("./character-count"),c=t("./combo-box"),a=t("./footer"),u=t("./navigation"),s=t("./password"),l=t("./search"),f=t("./skipnav"),d=t("./validator");e.exports={accordion:o,banner:r,characterCount:i,comboBox:c,footer:a,navigation:u,password:s,search:l,skipnav:f,validator:d}},{"./accordion":17,"./banner":18,"./character-count":19,"./combo-box":20,"./footer":21,"./navigation":23,"./password":24,"./search":25,"./skipnav":26,"./validator":27}],23:[function(t,e,n){"use strict";var o;function r(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function i(){return document.body.classList.contains(j)}function c(t){var e=document.body,n="boolean"==typeof t?t:!i();e.classList.toggle(j,n),v(C).forEach(function(t){return t.classList.toggle("is-visible",n)}),l.focusTrap.update(n);var o=e.querySelector(A),r=e.querySelector(x);return n&&o?o.focus():!n&&document.activeElement===o&&r&&r.focus(),n}function a(){var t=document.body.querySelector(A);i()&&t&&0===t.getBoundingClientRect().width&&l.toggleNav.call(t,!1)}function u(){return l.toggleNav.call(l,!1)}function s(){p(f,!1),f=null}var l,f,d=t("../utils/behavior"),v=t("../utils/select"),p=t("../utils/toggle"),b=t("../utils/focus-trap"),h=t("./accordion"),g=t("../events").CLICK,y=t("../config").prefix,m=".".concat(y,"-nav"),w="".concat(m," a"),E="button.".concat(y,"-nav__link"),x=".".concat(y,"-menu-btn"),A=".".concat(y,"-nav__close"),S=".".concat(y,"-overlay"),O="".concat(A,", .").concat(y,"-overlay"),C=[m,S].join(", "),j="usa-js-mobile-nav--active";l=d(r({},g,(r(o={},E,function(){return f&&f!==this&&s(),f?s():p(f=this,!0),!1}),r(o,"body",function(){f&&s()}),r(o,x,c),r(o,O,c),r(o,w,function(){var t=this.closest(h.ACCORDION);t&&h.getButtons(t).forEach(function(t){return h.hide(t)}),i()&&l.toggleNav.call(l,!1)}),o)),{init:function(t){var e=t.querySelector(m);e&&(l.focusTrap=b(e,{Escape:u})),a(),window.addEventListener("resize",a,!1)},teardown:function(){window.removeEventListener("resize",a,!1),f=!1},focusTrap:null,toggleNav:c}),e.exports=l},{"../config":28,"../events":29,"../utils/behavior":34,"../utils/focus-trap":35,"../utils/select":37,"../utils/toggle":40,"./accordion":17}],24:[function(t,e,n){"use strict";function o(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var r=t("../utils/behavior"),i=t("../utils/toggle-form-input"),c=t("../events").CLICK,a=t("../config").prefix,u=".".concat(a,"-show-password, .").concat(a,"-show-multipassword");e.exports=r(o({},c,o({},u,function(t){t.preventDefault(),i(this)})))},{"../config":28,"../events":29,"../utils/behavior":34,"../utils/toggle-form-input":39}],25:[function(t,e,n){"use strict";function o(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var i,c=t("receptor/ignore"),r=t("../utils/behavior"),a=t("../utils/select"),u=t("../events").CLICK,s=".js-search-button",l=".js-search-form",f=function(t,e){var n=function(t){var e=t.closest("header");return e?e.querySelector(l):document.querySelector(l)}(t);if(!n)throw new Error("No ".concat(l," found for search toggle in ").concat("header","!"));if(t.hidden=e,n.hidden=!e,e){var o=n.querySelector("[type=search]");o&&o.focus();var r=c(n,function(){i&&function(){f(this,!1),i=void 0}.call(i),document.body.removeEventListener(u,r)});setTimeout(function(){document.body.addEventListener(u,r)},0)}};var d=r(o({},u,o({},s,function(){f(this,!0),i=this})),{init:function(t){a(s,t).forEach(function(t){f(t,!1)})},teardown:function(){i=void 0}});e.exports=d},{"../events":29,"../utils/behavior":34,"../utils/select":37,"receptor/ignore":12}],26:[function(t,e,n){"use strict";function o(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var r=t("receptor/once"),i=t("../utils/behavior"),c=t("../events").CLICK,a=t("../config").prefix,u=".".concat(a,'-skipnav[href^="#"], .').concat(a,'-footer__return-to-top [href^="#"]');e.exports=i(o({},c,o({},u,function(){var t=this.getAttribute("href"),e=document.getElementById("#"===t?"main-content":t.slice(1));e&&(e.style.outline="0",e.setAttribute("tabindex",0),e.focus(),e.addEventListener("blur",r(function(){e.setAttribute("tabindex",-1)})))})))},{"../config":28,"../events":29,"../utils/behavior":34,"receptor/once":15}],27:[function(t,e,n){"use strict";var o=t("../utils/behavior"),r=t("../utils/validate-input");var i=o({"keyup change":{"input[data-validation-element]":function(){r(this)}}});e.exports=i},{"../utils/behavior":34,"../utils/validate-input":41}],28:[function(t,e,n){"use strict";e.exports={prefix:"usa"}},{}],29:[function(t,e,n){"use strict";e.exports={CLICK:"click"}},{}],30:[function(t,e,n){"use strict";var o=window.HTMLElement.prototype,r="hidden";r in o||Object.defineProperty(o,r,{get:function(){return this.hasAttribute(r)},set:function(t){t?this.setAttribute(r,""):this.removeAttribute(r)}})},{}],31:[function(t,e,n){"use strict";t("classlist-polyfill"),t("./element-hidden")},{"./element-hidden":30,"classlist-polyfill":1}],32:[function(t,e,n){"use strict";var o=t("domready");t("./polyfills");var r=t("./config"),i=t("./components");r.components=i,o(function(){var e=document.body;Object.keys(i).forEach(function(t){i[t].on(e)})}),e.exports=r},{"./components":22,"./config":28,"./polyfills":31,domready:2}],33:[function(t,e,n){"use strict";e.exports=function(){return(0<arguments.length&&void 0!==arguments[0]?arguments[0]:document).activeElement}},{}],34:[function(t,e,n){"use strict";function o(){for(var t=arguments.length,o=new Array(t),e=0;e<t;e++)o[e]=arguments[e];return function(t){var e=this,n=0<arguments.length&&void 0!==t?t:document.body;o.forEach(function(t){"function"==typeof e[t]&&e[t].call(e,n)})}}var r=t("object-assign"),i=t("receptor/behavior");e.exports=function(t,e){return i(t,r({on:o("init","add"),off:o("teardown","remove")},e))}},{"object-assign":7,"receptor/behavior":8}],35:[function(t,e,n){"use strict";function r(t){var e=u('a[href], area[href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), button:not([disabled]), iframe, object, embed, [tabindex="0"], [contenteditable]',t),n=e[0],o=e[e.length-1];return{firstTabStop:n,lastTabStop:o,tabAhead:function(t){s()===o&&(t.preventDefault(),n.focus())},tabBack:function(t){s()===n&&(t.preventDefault(),o.focus())}}}var i=t("object-assign"),c=t("receptor").keymap,a=t("./behavior"),u=t("./select"),s=t("./active-element");e.exports=function(t){var e=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{},n=r(t),o=c(i({Tab:n.tabAhead,"Shift+Tab":n.tabBack},e));return a({keydown:o},{init:function(){n.firstTabStop.focus()},update:function(t){t?this.on():this.off()}})}},{"./active-element":33,"./behavior":34,"./select":37,"object-assign":7,receptor:13}],36:[function(t,e,n){"use strict";e.exports=function(t){var e=1<arguments.length&&void 0!==arguments[1]?arguments[1]:window,n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:document.documentElement,o=t.getBoundingClientRect();return 0<=o.top&&0<=o.left&&o.bottom<=(e.innerHeight||n.clientHeight)&&o.right<=(e.innerWidth||n.clientWidth)}},{}],37:[function(t,e,n){"use strict";function o(t){return(o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}e.exports=function(t,e){if("string"!=typeof t)return[];e&&function(t){return t&&"object"===o(t)&&1===t.nodeType}(e)||(e=window.document);var n=e.querySelectorAll(t);return Array.prototype.slice.call(n)}},{}],38:[function(t,e,n){"use strict";e.exports=function(t,e){t.setAttribute("autocapitalize","off"),t.setAttribute("autocorrect","off"),t.setAttribute("type",e?"password":"text")}},{}],39:[function(t,e,n){"use strict";var r=t("resolve-id-refs"),i=t("./toggle-field-mask"),c="aria-pressed",a="data-show-text";e.exports=function(t){var e=t.hasAttribute(c)&&"true"!==t.getAttribute(c);r(t.getAttribute("aria-controls")).forEach(function(t){return i(t,e)}),t.hasAttribute(a)||t.setAttribute(a,t.textContent);var n=t.getAttribute(a),o=t.getAttribute("data-hide-text")||function(t){return t.replace(/\bShow\b/i,function(t){return"".concat("S"===t[0]?"H":"h","ide")})}(n);return t.textContent=e?n:o,t.setAttribute(c,e),e}},{"./toggle-field-mask":38,"resolve-id-refs":16}],40:[function(t,e,n){"use strict";var i="aria-expanded";e.exports=function(t,e){var n=e;"boolean"!=typeof n&&(n="false"===t.getAttribute(i)),t.setAttribute(i,n);var o=t.getAttribute("aria-controls"),r=document.getElementById(o);if(!r)throw new Error('No toggle target found with id: "'.concat(o,'"'));return n?r.removeAttribute("hidden"):r.setAttribute("hidden",""),n}},{}],41:[function(t,e,n){"use strict";function f(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){if(!(Symbol.iterator in Object(t)||"[object Arguments]"===Object.prototype.toString.call(t)))return;var n=[],o=!0,r=!1,i=void 0;try{for(var c,a=t[Symbol.iterator]();!(o=(c=a.next()).done)&&(n.push(c.value),!e||n.length!==e);o=!0);}catch(t){r=!0,i=t}finally{try{o||null==a.return||a.return()}finally{if(r)throw i}}return n}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()}var o=t("elem-dataset"),r=t("../config").prefix,d="".concat(r,"-checklist__item--checked");e.exports=function(s){var t=o(s),e=t.validationElement,l="#"===e.charAt(0)?document.querySelector(e):document.getElementById(e);if(!l)throw new Error('No validation element found with id: "'.concat(e,'"'));Object.entries(t).forEach(function(t){var e=f(t,2),n=e[0],o=e[1];if(n.startsWith("validate")){var r=n.substr("validate".length).toLowerCase(),i=new RegExp(o),c='[data-validator="'.concat(r,'"]'),a=l.querySelector(c);if(!a)throw new Error('No validator checkbox found for: "'.concat(r,'"'));var u=i.test(s.value);a.classList.toggle(d,u),a.setAttribute("aria-checked",u)}})}},{"../config":28,"elem-dataset":3}]},{},[32]);
2
2
  //# sourceMappingURL=uswds.min.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["node_modules/browser-pack/_prelude.js","uswds.js","node_modules/array-filter/index.js","node_modules/array-foreach/index.js","node_modules/classlist-polyfill/src/index.js","node_modules/domready/ready.js","node_modules/elem-dataset/dist/index.js","node_modules/element-closest/element-closest.js","node_modules/lodash.debounce/index.js","node_modules/object-assign/index.js","node_modules/receptor/behavior/index.js","node_modules/receptor/compose/index.js","node_modules/receptor/delegate/index.js","node_modules/receptor/delegateAll/index.js","node_modules/receptor/ignore/index.js","node_modules/receptor/once/index.js","node_modules/resolve-id-refs/index.js","src/js/components/accordion.js","src/js/components/banner.js","src/js/components/footer.js","src/js/components/index.js","src/js/components/navigation.js","src/js/components/password.js","src/js/components/search.js","src/js/components/skipnav.js","src/js/components/validator.js","src/js/config.js","src/js/events.js","src/js/polyfills/element-hidden.js","src/js/polyfills/index.js","src/js/start.js","src/js/utils/behavior.js","src/js/utils/is-in-viewport.js","src/js/utils/select.js","src/js/utils/toggle-field-mask.js","src/js/utils/toggle-form-input.js","src/js/utils/toggle.js","src/js/utils/validate-input.js"],"names":["e","t","n","r","s","o","u","a","require","i","f","Error","code","l","exports","call","length","1","module","arr","fn","self","filter","TypeError","ret","hasOwn","val","push","Object","prototype","hasOwnProperty","2","ary","callback","thisArg","forEach","3","window","document","createElement","createElementNS","view","classListProp","protoProp","elemCtrProto","Element","objCtr","strTrim","String","trim","this","replace","arrIndexOf","Array","indexOf","item","len","DOMEx","type","message","name","DOMException","checkTokenAndGetIndex","classList","token","test","ClassList","elem","trimmedClasses","getAttribute","classes","split","_updateClassName","setAttribute","toString","classListProto","classListGetter","contains","add","tokens","arguments","updated","remove","index","splice","toggle","force","result","method","join","defineProperty","classListPropDesc","get","enumerable","configurable","ex","undefined","number","__defineGetter__","testElement","createMethod","original","DOMTokenList","_toggle","4","_typeof","Symbol","iterator","obj","constructor","definition","define","amd","_listener","fns","doc","hack","documentElement","doScroll","domContentLoaded","loaded","readyState","addEventListener","removeEventListener","shift","setTimeout","5","useNative","Boolean","dataset","aB","nativeDataset","element","getter","value","setter","removeAttribute","map","attributes","j","attribute","prop","slice","charAt","toUpperCase","bind","set","6","ElementProto","matches","msMatchesSelector","mozMatchesSelector","webkitMatchesSelector","selector","elements","ownerDocument","querySelectorAll","closest","nodeType","parentNode","7","global","debounce","func","wait","options","invokeFunc","time","args","lastArgs","lastThis","lastInvokeTime","apply","leadingEdge","timerId","timerExpired","leading","remainingWait","timeSinceLastCall","lastCallTime","timeSinceLastInvoke","maxing","nativeMin","maxWait","shouldInvoke","now","trailingEdge","trailing","cancel","clearTimeout","flush","debounced","isInvoking","FUNC_ERROR_TEXT","toNumber","isObject","nativeMax","isObjectLike","isSymbol","objectToString","symbolTag","NAN","other","valueOf","reTrim","isBinary","reIsBinary","reIsOctal","freeParseInt","reIsBadHex","parseInt","freeGlobal","freeSelf","root","Function","objectProto","Math","max","min","Date","8","toObject","shouldUseNative","assign","test1","getOwnPropertyNames","test2","fromCharCode","order2","test3","letter","keys","err","getOwnPropertySymbols","propIsEnumerable","propertyIsEnumerable","target","source","from","symbols","to","key","9","delegate","delegateAll","DELEGATE_PATTERN","SPACE","getListeners","handler","match","capture","popKey","passive","listener","_type","events","props","listeners","reduce","memo","concat","../delegate","../delegateAll","object-assign","10","functions","some","11","event","element-closest","12","compose","SPLAT","selectors","delegates","../compose","13","14","wrapped","currentTarget","15","RE_TRIM","RE_SPLIT","str","queryById","id","querySelector","ids","getElementById","el","16","_defineProperty","writable","behavior","isElementInViewport","CLICK","PREFIX","prefix","ACCORDION","BUTTON","EXPANDED","MULTISELECTABLE","toggleButton","button","expanded","accordion","multiselectable","getAccordionButtons","showButton","hideButton","preventDefault","scrollIntoView","init","show","hide","getButtons","Accordion","on","off","../config","../events","../utils/behavior","../utils/is-in-viewport","../utils/toggle","array-filter","array-foreach","17","HEADER","EXPANDED_CLASS","toggleBanner","18","select","HIDDEN","SCOPE","NAV","LIST","HIDE_MAX_WIDTH","DEBOUNCE_RATE","showPanel","list","lists","resize","hidden","innerWidth","teardown","../utils/select","./accordion","lodash.debounce","19","banner","footer","navigation","password","search","skipnav","validator","./banner","./footer","./navigation","./password","./search","./skipnav","./validator","20","_CLICK","NAV_LINKS","OPENERS","CLOSE_BUTTON","OVERLAY","CLOSERS","TOGGLES","ACTIVE_CLASS","VISIBLE_CLASS","isActive","body","toggleNav","active","closeButton","menuButton","focus","activeElement","closer","getBoundingClientRect","width","acc","btn","21","toggleFormInput","LINK","../utils/toggle-form-input","22","ignore","FORM","INPUT","CONTEXT","VISUALLY_HIDDEN","lastButton","showSearch","toggleSearch","hideSearch","getForm","context","form","input","receptor/ignore","23","once","setTabindex","receptor/once","24","validate","change","keyup change","input[data-validation-element]","../utils/validate-input","25","26","27","elproto","HTMLElement","hasAttribute","28","./element-hidden","classlist-polyfill","29","domready","uswds","components","./components","./config","./polyfills","30","Behavior","sequence","seq","_this","receptor/behavior","31","win","docEl","rect","top","left","bottom","innerHeight","clientHeight","right","clientWidth","32","isElement","selection","33","field","mask","34","resolveIdRefs","toggleFieldMask","CONTROLS","PRESSED","SHOW_ATTR","HIDE_ATTR","getHideText","showText","pressed","fields","textContent","hideText","./select","./toggle-field-mask","resolve-id-refs","35","controls","36","CHECKED","CHECKED_CLASS","data","validationElement","checkList","startsWith","validatorName","substr","toLowerCase","validatorPattern","RegExp","validatorSelector","validatorCheckbox","checked","elem-dataset"],"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})","(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'use strict';\n\n/**\n * Array#filter.\n *\n * @param {Array} arr\n * @param {Function} fn\n * @param {Object=} self\n * @return {Array}\n * @throw TypeError\n */\n\nmodule.exports = function (arr, fn, self) {\n if (arr.filter) return arr.filter(fn, self);\n if (void 0 === arr || null === arr) throw new TypeError();\n if ('function' != typeof fn) throw new TypeError();\n var ret = [];\n for (var i = 0; i < arr.length; i++) {\n if (!hasOwn.call(arr, i)) continue;\n var val = arr[i];\n if (fn.call(self, val, i, arr)) ret.push(val);\n }\n return ret;\n};\n\nvar hasOwn = Object.prototype.hasOwnProperty;\n\n},{}],2:[function(require,module,exports){\n/**\n * array-foreach\n * Array#forEach ponyfill for older browsers\n * (Ponyfill: A polyfill that doesn't overwrite the native method)\n * \n * https://github.com/twada/array-foreach\n *\n * Copyright (c) 2015-2016 Takuto Wada\n * Licensed under the MIT license.\n * https://github.com/twada/array-foreach/blob/master/MIT-LICENSE\n */\n'use strict';\n\nmodule.exports = function forEach(ary, callback, thisArg) {\n if (ary.forEach) {\n ary.forEach(callback, thisArg);\n return;\n }\n for (var i = 0; i < ary.length; i += 1) {\n callback.call(thisArg, ary[i], i, ary);\n }\n};\n\n},{}],3:[function(require,module,exports){\n\"use strict\";\n\n/*\n * classList.js: Cross-browser full element.classList implementation.\n * 1.1.20170427\n *\n * By Eli Grey, http://eligrey.com\n * License: Dedicated to the public domain.\n * See https://github.com/eligrey/classList.js/blob/master/LICENSE.md\n */\n\n/*global self, document, DOMException */\n\n/*! @source http://purl.eligrey.com/github/classList.js/blob/master/classList.js */\n\nif (\"document\" in window.self) {\n\n\t// Full polyfill for browsers with no classList support\n\t// Including IE < Edge missing SVGElement.classList\n\tif (!(\"classList\" in document.createElement(\"_\")) || document.createElementNS && !(\"classList\" in document.createElementNS(\"http://www.w3.org/2000/svg\", \"g\"))) {\n\n\t\t(function (view) {\n\n\t\t\t\"use strict\";\n\n\t\t\tif (!('Element' in view)) return;\n\n\t\t\tvar classListProp = \"classList\",\n\t\t\t protoProp = \"prototype\",\n\t\t\t elemCtrProto = view.Element[protoProp],\n\t\t\t objCtr = Object,\n\t\t\t strTrim = String[protoProp].trim || function () {\n\t\t\t\treturn this.replace(/^\\s+|\\s+$/g, \"\");\n\t\t\t},\n\t\t\t arrIndexOf = Array[protoProp].indexOf || function (item) {\n\t\t\t\tvar i = 0,\n\t\t\t\t len = this.length;\n\t\t\t\tfor (; i < len; i++) {\n\t\t\t\t\tif (i in this && this[i] === item) {\n\t\t\t\t\t\treturn i;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn -1;\n\t\t\t}\n\t\t\t// Vendors: please allow content code to instantiate DOMExceptions\n\t\t\t,\n\t\t\t DOMEx = function DOMEx(type, message) {\n\t\t\t\tthis.name = type;\n\t\t\t\tthis.code = DOMException[type];\n\t\t\t\tthis.message = message;\n\t\t\t},\n\t\t\t checkTokenAndGetIndex = function checkTokenAndGetIndex(classList, token) {\n\t\t\t\tif (token === \"\") {\n\t\t\t\t\tthrow new DOMEx(\"SYNTAX_ERR\", \"An invalid or illegal string was specified\");\n\t\t\t\t}\n\t\t\t\tif (/\\s/.test(token)) {\n\t\t\t\t\tthrow new DOMEx(\"INVALID_CHARACTER_ERR\", \"String contains an invalid character\");\n\t\t\t\t}\n\t\t\t\treturn arrIndexOf.call(classList, token);\n\t\t\t},\n\t\t\t ClassList = function ClassList(elem) {\n\t\t\t\tvar trimmedClasses = strTrim.call(elem.getAttribute(\"class\") || \"\"),\n\t\t\t\t classes = trimmedClasses ? trimmedClasses.split(/\\s+/) : [],\n\t\t\t\t i = 0,\n\t\t\t\t len = classes.length;\n\t\t\t\tfor (; i < len; i++) {\n\t\t\t\t\tthis.push(classes[i]);\n\t\t\t\t}\n\t\t\t\tthis._updateClassName = function () {\n\t\t\t\t\telem.setAttribute(\"class\", this.toString());\n\t\t\t\t};\n\t\t\t},\n\t\t\t classListProto = ClassList[protoProp] = [],\n\t\t\t classListGetter = function classListGetter() {\n\t\t\t\treturn new ClassList(this);\n\t\t\t};\n\t\t\t// Most DOMException implementations don't allow calling DOMException's toString()\n\t\t\t// on non-DOMExceptions. Error's toString() is sufficient here.\n\t\t\tDOMEx[protoProp] = Error[protoProp];\n\t\t\tclassListProto.item = function (i) {\n\t\t\t\treturn this[i] || null;\n\t\t\t};\n\t\t\tclassListProto.contains = function (token) {\n\t\t\t\ttoken += \"\";\n\t\t\t\treturn checkTokenAndGetIndex(this, token) !== -1;\n\t\t\t};\n\t\t\tclassListProto.add = function () {\n\t\t\t\tvar tokens = arguments,\n\t\t\t\t i = 0,\n\t\t\t\t l = tokens.length,\n\t\t\t\t token,\n\t\t\t\t updated = false;\n\t\t\t\tdo {\n\t\t\t\t\ttoken = tokens[i] + \"\";\n\t\t\t\t\tif (checkTokenAndGetIndex(this, token) === -1) {\n\t\t\t\t\t\tthis.push(token);\n\t\t\t\t\t\tupdated = true;\n\t\t\t\t\t}\n\t\t\t\t} while (++i < l);\n\n\t\t\t\tif (updated) {\n\t\t\t\t\tthis._updateClassName();\n\t\t\t\t}\n\t\t\t};\n\t\t\tclassListProto.remove = function () {\n\t\t\t\tvar tokens = arguments,\n\t\t\t\t i = 0,\n\t\t\t\t l = tokens.length,\n\t\t\t\t token,\n\t\t\t\t updated = false,\n\t\t\t\t index;\n\t\t\t\tdo {\n\t\t\t\t\ttoken = tokens[i] + \"\";\n\t\t\t\t\tindex = checkTokenAndGetIndex(this, token);\n\t\t\t\t\twhile (index !== -1) {\n\t\t\t\t\t\tthis.splice(index, 1);\n\t\t\t\t\t\tupdated = true;\n\t\t\t\t\t\tindex = checkTokenAndGetIndex(this, token);\n\t\t\t\t\t}\n\t\t\t\t} while (++i < l);\n\n\t\t\t\tif (updated) {\n\t\t\t\t\tthis._updateClassName();\n\t\t\t\t}\n\t\t\t};\n\t\t\tclassListProto.toggle = function (token, force) {\n\t\t\t\ttoken += \"\";\n\n\t\t\t\tvar result = this.contains(token),\n\t\t\t\t method = result ? force !== true && \"remove\" : force !== false && \"add\";\n\n\t\t\t\tif (method) {\n\t\t\t\t\tthis[method](token);\n\t\t\t\t}\n\n\t\t\t\tif (force === true || force === false) {\n\t\t\t\t\treturn force;\n\t\t\t\t} else {\n\t\t\t\t\treturn !result;\n\t\t\t\t}\n\t\t\t};\n\t\t\tclassListProto.toString = function () {\n\t\t\t\treturn this.join(\" \");\n\t\t\t};\n\n\t\t\tif (objCtr.defineProperty) {\n\t\t\t\tvar classListPropDesc = {\n\t\t\t\t\tget: classListGetter,\n\t\t\t\t\tenumerable: true,\n\t\t\t\t\tconfigurable: true\n\t\t\t\t};\n\t\t\t\ttry {\n\t\t\t\t\tobjCtr.defineProperty(elemCtrProto, classListProp, classListPropDesc);\n\t\t\t\t} catch (ex) {\n\t\t\t\t\t// IE 8 doesn't support enumerable:true\n\t\t\t\t\t// adding undefined to fight this issue https://github.com/eligrey/classList.js/issues/36\n\t\t\t\t\t// modernie IE8-MSW7 machine has IE8 8.0.6001.18702 and is affected\n\t\t\t\t\tif (ex.number === undefined || ex.number === -0x7FF5EC54) {\n\t\t\t\t\t\tclassListPropDesc.enumerable = false;\n\t\t\t\t\t\tobjCtr.defineProperty(elemCtrProto, classListProp, classListPropDesc);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if (objCtr[protoProp].__defineGetter__) {\n\t\t\t\telemCtrProto.__defineGetter__(classListProp, classListGetter);\n\t\t\t}\n\t\t})(window.self);\n\t}\n\n\t// There is full or partial native classList support, so just check if we need\n\t// to normalize the add/remove and toggle APIs.\n\n\t(function () {\n\t\t\"use strict\";\n\n\t\tvar testElement = document.createElement(\"_\");\n\n\t\ttestElement.classList.add(\"c1\", \"c2\");\n\n\t\t// Polyfill for IE 10/11 and Firefox <26, where classList.add and\n\t\t// classList.remove exist but support only one argument at a time.\n\t\tif (!testElement.classList.contains(\"c2\")) {\n\t\t\tvar createMethod = function createMethod(method) {\n\t\t\t\tvar original = DOMTokenList.prototype[method];\n\n\t\t\t\tDOMTokenList.prototype[method] = function (token) {\n\t\t\t\t\tvar i,\n\t\t\t\t\t len = arguments.length;\n\n\t\t\t\t\tfor (i = 0; i < len; i++) {\n\t\t\t\t\t\ttoken = arguments[i];\n\t\t\t\t\t\toriginal.call(this, token);\n\t\t\t\t\t}\n\t\t\t\t};\n\t\t\t};\n\t\t\tcreateMethod('add');\n\t\t\tcreateMethod('remove');\n\t\t}\n\n\t\ttestElement.classList.toggle(\"c3\", false);\n\n\t\t// Polyfill for IE 10 and Firefox <24, where classList.toggle does not\n\t\t// support the second argument.\n\t\tif (testElement.classList.contains(\"c3\")) {\n\t\t\tvar _toggle = DOMTokenList.prototype.toggle;\n\n\t\t\tDOMTokenList.prototype.toggle = function (token, force) {\n\t\t\t\tif (1 in arguments && !this.contains(token) === !force) {\n\t\t\t\t\treturn force;\n\t\t\t\t} else {\n\t\t\t\t\treturn _toggle.call(this, token);\n\t\t\t\t}\n\t\t\t};\n\t\t}\n\n\t\ttestElement = null;\n\t})();\n}\n\n},{}],4:[function(require,module,exports){\n'use strict';\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\n/*!\n * domready (c) Dustin Diaz 2014 - License MIT\n */\n!function (name, definition) {\n\n if (typeof module != 'undefined') module.exports = definition();else if (typeof define == 'function' && _typeof(define.amd) == 'object') define(definition);else this[name] = definition();\n}('domready', function () {\n\n var fns = [],\n _listener,\n doc = document,\n hack = doc.documentElement.doScroll,\n domContentLoaded = 'DOMContentLoaded',\n loaded = (hack ? /^loaded|^c/ : /^loaded|^i|^c/).test(doc.readyState);\n\n if (!loaded) doc.addEventListener(domContentLoaded, _listener = function listener() {\n doc.removeEventListener(domContentLoaded, _listener);\n loaded = 1;\n while (_listener = fns.shift()) {\n _listener();\n }\n });\n\n return function (fn) {\n loaded ? setTimeout(fn, 0) : fns.push(fn);\n };\n});\n\n},{}],5:[function(require,module,exports){\n'use strict';\n\n// <3 Modernizr\n// https://raw.githubusercontent.com/Modernizr/Modernizr/master/feature-detects/dom/dataset.js\n\nfunction useNative() {\n\tvar elem = document.createElement('div');\n\telem.setAttribute('data-a-b', 'c');\n\n\treturn Boolean(elem.dataset && elem.dataset.aB === 'c');\n}\n\nfunction nativeDataset(element) {\n\treturn element.dataset;\n}\n\nmodule.exports = useNative() ? nativeDataset : function (element) {\n\tvar map = {};\n\tvar attributes = element.attributes;\n\n\tfunction getter() {\n\t\treturn this.value;\n\t}\n\n\tfunction setter(name, value) {\n\t\tif (typeof value === 'undefined') {\n\t\t\tthis.removeAttribute(name);\n\t\t} else {\n\t\t\tthis.setAttribute(name, value);\n\t\t}\n\t}\n\n\tfor (var i = 0, j = attributes.length; i < j; i++) {\n\t\tvar attribute = attributes[i];\n\n\t\tif (attribute) {\n\t\t\tvar name = attribute.name;\n\n\t\t\tif (name.indexOf('data-') === 0) {\n\t\t\t\tvar prop = name.slice(5).replace(/-./g, function (u) {\n\t\t\t\t\treturn u.charAt(1).toUpperCase();\n\t\t\t\t});\n\n\t\t\t\tvar value = attribute.value;\n\n\t\t\t\tObject.defineProperty(map, prop, {\n\t\t\t\t\tenumerable: true,\n\t\t\t\t\tget: getter.bind({ value: value || '' }),\n\t\t\t\t\tset: setter.bind(element, name)\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t}\n\n\treturn map;\n};\n\n},{}],6:[function(require,module,exports){\n'use strict';\n\n// element-closest | CC0-1.0 | github.com/jonathantneal/closest\n\n(function (ElementProto) {\n\tif (typeof ElementProto.matches !== 'function') {\n\t\tElementProto.matches = ElementProto.msMatchesSelector || ElementProto.mozMatchesSelector || ElementProto.webkitMatchesSelector || function matches(selector) {\n\t\t\tvar element = this;\n\t\t\tvar elements = (element.document || element.ownerDocument).querySelectorAll(selector);\n\t\t\tvar index = 0;\n\n\t\t\twhile (elements[index] && elements[index] !== element) {\n\t\t\t\t++index;\n\t\t\t}\n\n\t\t\treturn Boolean(elements[index]);\n\t\t};\n\t}\n\n\tif (typeof ElementProto.closest !== 'function') {\n\t\tElementProto.closest = function closest(selector) {\n\t\t\tvar element = this;\n\n\t\t\twhile (element && element.nodeType === 1) {\n\t\t\t\tif (element.matches(selector)) {\n\t\t\t\t\treturn element;\n\t\t\t\t}\n\n\t\t\t\telement = element.parentNode;\n\t\t\t}\n\n\t\t\treturn null;\n\t\t};\n\t}\n})(window.Element.prototype);\n\n},{}],7:[function(require,module,exports){\n(function (global){\n'use strict';\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\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 === 'undefined' ? 'undefined' : _typeof(global)) == 'object' && global && global.Object === Object && global;\n\n/** Detect free variable `self`. */\nvar freeSelf = (typeof self === 'undefined' ? 'undefined' : _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 now() {\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 || 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 === 'undefined' ? 'undefined' : _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 === 'undefined' ? 'undefined' : _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 === 'undefined' ? 'undefined' : _typeof(value)) == 'symbol' || 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) ? freeParseInt(value.slice(2), isBinary ? 2 : 8) : 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},{}],8:[function(require,module,exports){\n/*\nobject-assign\n(c) Sindre Sorhus\n@license MIT\n*/\n\n'use strict';\n/* eslint-disable no-unused-vars */\n\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nvar propIsEnumerable = Object.prototype.propertyIsEnumerable;\n\nfunction toObject(val) {\n\tif (val === null || val === undefined) {\n\t\tthrow new TypeError('Object.assign cannot be called with null or undefined');\n\t}\n\n\treturn Object(val);\n}\n\nfunction shouldUseNative() {\n\ttry {\n\t\tif (!Object.assign) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Detect buggy property enumeration order in older V8 versions.\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=4118\n\t\tvar test1 = new String('abc'); // eslint-disable-line no-new-wrappers\n\t\ttest1[5] = 'de';\n\t\tif (Object.getOwnPropertyNames(test1)[0] === '5') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test2 = {};\n\t\tfor (var i = 0; i < 10; i++) {\n\t\t\ttest2['_' + String.fromCharCode(i)] = i;\n\t\t}\n\t\tvar order2 = Object.getOwnPropertyNames(test2).map(function (n) {\n\t\t\treturn test2[n];\n\t\t});\n\t\tif (order2.join('') !== '0123456789') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test3 = {};\n\t\t'abcdefghijklmnopqrst'.split('').forEach(function (letter) {\n\t\t\ttest3[letter] = letter;\n\t\t});\n\t\tif (Object.keys(Object.assign({}, test3)).join('') !== 'abcdefghijklmnopqrst') {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t} catch (err) {\n\t\t// We don't expect any of the above to throw, but better to be safe.\n\t\treturn false;\n\t}\n}\n\nmodule.exports = shouldUseNative() ? Object.assign : function (target, source) {\n\tvar from;\n\tvar to = toObject(target);\n\tvar symbols;\n\n\tfor (var s = 1; s < arguments.length; s++) {\n\t\tfrom = Object(arguments[s]);\n\n\t\tfor (var key in from) {\n\t\t\tif (hasOwnProperty.call(from, key)) {\n\t\t\t\tto[key] = from[key];\n\t\t\t}\n\t\t}\n\n\t\tif (getOwnPropertySymbols) {\n\t\t\tsymbols = getOwnPropertySymbols(from);\n\t\t\tfor (var i = 0; i < symbols.length; i++) {\n\t\t\t\tif (propIsEnumerable.call(from, symbols[i])) {\n\t\t\t\t\tto[symbols[i]] = from[symbols[i]];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn to;\n};\n\n},{}],9:[function(require,module,exports){\n'use strict';\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar assign = require('object-assign');\nvar delegate = require('../delegate');\nvar delegateAll = require('../delegateAll');\n\nvar DELEGATE_PATTERN = /^(.+):delegate\\((.+)\\)$/;\nvar SPACE = ' ';\n\nvar getListeners = function getListeners(type, handler) {\n var match = type.match(DELEGATE_PATTERN);\n var selector;\n if (match) {\n type = match[1];\n selector = match[2];\n }\n\n var options;\n if ((typeof handler === 'undefined' ? 'undefined' : _typeof(handler)) === 'object') {\n options = {\n capture: popKey(handler, 'capture'),\n passive: popKey(handler, 'passive')\n };\n }\n\n var listener = {\n selector: selector,\n delegate: (typeof handler === 'undefined' ? 'undefined' : _typeof(handler)) === 'object' ? delegateAll(handler) : selector ? delegate(selector, handler) : handler,\n options: options\n };\n\n if (type.indexOf(SPACE) > -1) {\n return type.split(SPACE).map(function (_type) {\n return assign({ type: _type }, listener);\n });\n } else {\n listener.type = type;\n return [listener];\n }\n};\n\nvar popKey = function popKey(obj, key) {\n var value = obj[key];\n delete obj[key];\n return value;\n};\n\nmodule.exports = function behavior(events, props) {\n var listeners = Object.keys(events).reduce(function (memo, type) {\n var listeners = getListeners(type, events[type]);\n return memo.concat(listeners);\n }, []);\n\n return assign({\n add: function addBehavior(element) {\n listeners.forEach(function (listener) {\n element.addEventListener(listener.type, listener.delegate, listener.options);\n });\n },\n remove: function removeBehavior(element) {\n listeners.forEach(function (listener) {\n element.removeEventListener(listener.type, listener.delegate, listener.options);\n });\n }\n }, props);\n};\n\n},{\"../delegate\":11,\"../delegateAll\":12,\"object-assign\":8}],10:[function(require,module,exports){\n\"use strict\";\n\nmodule.exports = function compose(functions) {\n return function (e) {\n return functions.some(function (fn) {\n return fn.call(this, e) === false;\n }, this);\n };\n};\n\n},{}],11:[function(require,module,exports){\n'use strict';\n\n// polyfill Element.prototype.closest\nrequire('element-closest');\n\nmodule.exports = function delegate(selector, fn) {\n return function delegation(event) {\n var target = event.target.closest(selector);\n if (target) {\n return fn.call(target, event);\n }\n };\n};\n\n},{\"element-closest\":6}],12:[function(require,module,exports){\n'use strict';\n\nvar delegate = require('../delegate');\nvar compose = require('../compose');\n\nvar SPLAT = '*';\n\nmodule.exports = function delegateAll(selectors) {\n var keys = Object.keys(selectors);\n\n // XXX optimization: if there is only one handler and it applies to\n // all elements (the \"*\" CSS selector), then just return that\n // handler\n if (keys.length === 1 && keys[0] === SPLAT) {\n return selectors[SPLAT];\n }\n\n var delegates = keys.reduce(function (memo, selector) {\n memo.push(delegate(selector, selectors[selector]));\n return memo;\n }, []);\n return compose(delegates);\n};\n\n},{\"../compose\":10,\"../delegate\":11}],13:[function(require,module,exports){\n\"use strict\";\n\nmodule.exports = function ignore(element, fn) {\n return function ignorance(e) {\n if (element !== e.target && !element.contains(e.target)) {\n return fn.call(this, e);\n }\n };\n};\n\n},{}],14:[function(require,module,exports){\n\"use strict\";\n\nmodule.exports = function once(listener, options) {\n var wrapped = function wrappedOnce(e) {\n e.currentTarget.removeEventListener(e.type, wrapped, options);\n return listener.call(this, e);\n };\n return wrapped;\n};\n\n},{}],15:[function(require,module,exports){\n'use strict';\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar RE_TRIM = /(^\\s+)|(\\s+$)/g;\nvar RE_SPLIT = /\\s+/;\n\nvar trim = String.prototype.trim ? function (str) {\n return str.trim();\n} : function (str) {\n return str.replace(RE_TRIM, '');\n};\n\nvar queryById = function queryById(id) {\n return this.querySelector('[id=\"' + id.replace(/\"/g, '\\\\\"') + '\"]');\n};\n\nmodule.exports = function resolveIds(ids, doc) {\n if (typeof ids !== 'string') {\n throw new Error('Expected a string but got ' + (typeof ids === 'undefined' ? 'undefined' : _typeof(ids)));\n }\n\n if (!doc) {\n doc = window.document;\n }\n\n var getElementById = doc.getElementById ? doc.getElementById.bind(doc) : queryById.bind(doc);\n\n ids = trim(ids).split(RE_SPLIT);\n\n // XXX we can short-circuit here because trimming and splitting a\n // string of just whitespace produces an array containing a single,\n // empty string\n if (ids.length === 1 && ids[0] === '') {\n return [];\n }\n\n return ids.map(function (id) {\n var el = getElementById(id);\n if (!el) {\n throw new Error('no element with id: \"' + id + '\"');\n }\n return el;\n });\n};\n\n},{}],16:[function(require,module,exports){\n'use strict';\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar behavior = require('../utils/behavior');\nvar filter = require('array-filter');\nvar forEach = require('array-foreach');\nvar toggle = require('../utils/toggle');\nvar isElementInViewport = require('../utils/is-in-viewport');\n\nvar CLICK = require('../events').CLICK;\nvar PREFIX = require('../config').prefix;\n\n// XXX match .usa-accordion and .usa-accordion-bordered\nvar ACCORDION = '.' + PREFIX + '-accordion, .' + PREFIX + '-accordion-bordered';\nvar BUTTON = '.' + PREFIX + '-accordion-button[aria-controls]';\nvar EXPANDED = 'aria-expanded';\nvar MULTISELECTABLE = 'aria-multiselectable';\n\n/**\n * Toggle a button's \"pressed\" state, optionally providing a target\n * state.\n *\n * @param {HTMLButtonElement} button\n * @param {boolean?} expanded If no state is provided, the current\n * state will be toggled (from false to true, and vice-versa).\n * @return {boolean} the resulting state\n */\nvar toggleButton = function toggleButton(button, expanded) {\n var accordion = button.closest(ACCORDION);\n if (!accordion) {\n throw new Error(BUTTON + ' is missing outer ' + ACCORDION);\n }\n\n expanded = toggle(button, expanded);\n // XXX multiselectable is opt-in, to preserve legacy behavior\n var multiselectable = accordion.getAttribute(MULTISELECTABLE) === 'true';\n\n if (expanded && !multiselectable) {\n forEach(getAccordionButtons(accordion), function (other) {\n if (other !== button) {\n toggle(other, false);\n }\n });\n }\n};\n\n/**\n * @param {HTMLButtonElement} button\n * @return {boolean} true\n */\nvar showButton = function showButton(button) {\n return toggleButton(button, true);\n};\n\n/**\n * @param {HTMLButtonElement} button\n * @return {boolean} false\n */\nvar hideButton = function hideButton(button) {\n return toggleButton(button, false);\n};\n\n/**\n * Get an Array of button elements belonging directly to the given\n * accordion element.\n * @param {HTMLElement} accordion\n * @return {array<HTMLButtonElement>}\n */\nvar getAccordionButtons = function getAccordionButtons(accordion) {\n return filter(accordion.querySelectorAll(BUTTON), function (button) {\n return button.closest(ACCORDION) === accordion;\n });\n};\n\nvar accordion = behavior(_defineProperty({}, CLICK, _defineProperty({}, BUTTON, function (event) {\n event.preventDefault();\n toggleButton(this);\n\n if (this.getAttribute(EXPANDED) === 'true') {\n // We were just expanded, but if another accordion was also just\n // collapsed, we may no longer be in the viewport. This ensures\n // that we are still visible, so the user isn't confused.\n if (!isElementInViewport(this)) this.scrollIntoView();\n }\n})), {\n init: function init(root) {\n forEach(root.querySelectorAll(BUTTON), function (button) {\n var expanded = button.getAttribute(EXPANDED) === 'true';\n toggleButton(button, expanded);\n });\n },\n ACCORDION: ACCORDION,\n BUTTON: BUTTON,\n show: showButton,\n hide: hideButton,\n toggle: toggleButton,\n getButtons: getAccordionButtons\n});\n\n/**\n * TODO: for 2.0, remove everything below this comment and export the\n * behavior directly:\n *\n * module.exports = behavior({...});\n */\nvar Accordion = function Accordion(root) {\n this.root = root;\n accordion.on(this.root);\n};\n\n// copy all of the behavior methods and props to Accordion\nvar assign = require('object-assign');\nassign(Accordion, accordion);\n\nAccordion.prototype.show = showButton;\nAccordion.prototype.hide = hideButton;\n\nAccordion.prototype.remove = function () {\n accordion.off(this.root);\n};\n\nmodule.exports = Accordion;\n\n},{\"../config\":25,\"../events\":26,\"../utils/behavior\":30,\"../utils/is-in-viewport\":31,\"../utils/toggle\":35,\"array-filter\":1,\"array-foreach\":2,\"object-assign\":8}],17:[function(require,module,exports){\n'use strict';\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar behavior = require('../utils/behavior');\nvar toggle = require('../utils/toggle');\n\nvar CLICK = require('../events').CLICK;\nvar PREFIX = require('../config').prefix;\n\nvar HEADER = '.' + PREFIX + '-banner-header';\nvar EXPANDED_CLASS = PREFIX + '-banner-header-expanded';\n\nvar toggleBanner = function toggleBanner(event) {\n event.preventDefault();\n this.closest(HEADER).classList.toggle(EXPANDED_CLASS);\n return false;\n};\n\nmodule.exports = behavior(_defineProperty({}, CLICK, _defineProperty({}, HEADER + ' [aria-controls]', toggleBanner)));\n\n},{\"../config\":25,\"../events\":26,\"../utils/behavior\":30,\"../utils/toggle\":35}],18:[function(require,module,exports){\n'use strict';\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar accordion = require('./accordion');\nvar behavior = require('../utils/behavior');\nvar debounce = require('lodash.debounce');\nvar forEach = require('array-foreach');\nvar select = require('../utils/select');\n\nvar CLICK = require('../events').CLICK;\nvar PREFIX = require('../config').prefix;\n\nvar HIDDEN = 'hidden';\nvar SCOPE = '.' + PREFIX + '-footer-big';\nvar NAV = SCOPE + ' nav';\nvar BUTTON = NAV + ' .' + PREFIX + '-footer-primary-link';\nvar LIST = NAV + ' ul';\n\nvar HIDE_MAX_WIDTH = 600;\nvar DEBOUNCE_RATE = 180;\n\nvar showPanel = function showPanel() {\n var list = this.closest(LIST);\n list.classList.remove(HIDDEN);\n\n // NB: this *should* always succeed because the button\n // selector is scoped to \".{prefix}-footer-big nav\"\n var lists = list.closest(NAV).querySelectorAll('ul');\n\n forEach(lists, function (el) {\n if (el !== list) {\n el.classList.add(HIDDEN);\n }\n });\n};\n\nvar resize = debounce(function () {\n var hidden = window.innerWidth < HIDE_MAX_WIDTH;\n forEach(select(LIST), function (list) {\n list.classList.toggle(HIDDEN, hidden);\n });\n}, DEBOUNCE_RATE);\n\nmodule.exports = behavior(_defineProperty({}, CLICK, _defineProperty({}, BUTTON, showPanel)), {\n // export for use elsewhere\n HIDE_MAX_WIDTH: HIDE_MAX_WIDTH,\n DEBOUNCE_RATE: DEBOUNCE_RATE,\n\n init: function init(target) {\n resize();\n window.addEventListener('resize', resize);\n },\n\n teardown: function teardown(target) {\n window.removeEventListener('resize', resize);\n }\n});\n\n},{\"../config\":25,\"../events\":26,\"../utils/behavior\":30,\"../utils/select\":32,\"./accordion\":16,\"array-foreach\":2,\"lodash.debounce\":7}],19:[function(require,module,exports){\n'use strict';\n\nmodule.exports = {\n accordion: require('./accordion'),\n banner: require('./banner'),\n footer: require('./footer'),\n navigation: require('./navigation'),\n password: require('./password'),\n search: require('./search'),\n skipnav: require('./skipnav'),\n validator: require('./validator')\n};\n\n},{\"./accordion\":16,\"./banner\":17,\"./footer\":18,\"./navigation\":20,\"./password\":21,\"./search\":22,\"./skipnav\":23,\"./validator\":24}],20:[function(require,module,exports){\n'use strict';\n\nvar _CLICK;\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar behavior = require('../utils/behavior');\nvar forEach = require('array-foreach');\nvar select = require('../utils/select');\nvar accordion = require('./accordion');\n\nvar CLICK = require('../events').CLICK;\nvar PREFIX = require('../config').prefix;\n\nvar NAV = '.' + PREFIX + '-nav';\nvar NAV_LINKS = NAV + ' a';\nvar OPENERS = '.' + PREFIX + '-menu-btn';\nvar CLOSE_BUTTON = '.' + PREFIX + '-nav-close';\nvar OVERLAY = '.' + PREFIX + '-overlay';\nvar CLOSERS = CLOSE_BUTTON + ', .' + PREFIX + '-overlay';\nvar TOGGLES = [NAV, OVERLAY].join(', ');\n\nvar ACTIVE_CLASS = 'usa-mobile_nav-active';\nvar VISIBLE_CLASS = 'is-visible';\n\nvar isActive = function isActive() {\n return document.body.classList.contains(ACTIVE_CLASS);\n};\n\nvar toggleNav = function toggleNav(active) {\n var body = document.body;\n if (typeof active !== 'boolean') {\n active = !isActive();\n }\n body.classList.toggle(ACTIVE_CLASS, active);\n\n forEach(select(TOGGLES), function (el) {\n el.classList.toggle(VISIBLE_CLASS, active);\n });\n\n var closeButton = body.querySelector(CLOSE_BUTTON);\n var menuButton = body.querySelector(OPENERS);\n\n if (active && closeButton) {\n // The mobile nav was just activated, so focus on the close button,\n // which is just before all the nav elements in the tab order.\n closeButton.focus();\n } else if (!active && document.activeElement === closeButton && menuButton) {\n // The mobile nav was just deactivated, and focus was on the close\n // button, which is no longer visible. We don't want the focus to\n // disappear into the void, so focus on the menu button if it's\n // visible (this may have been what the user was just focused on,\n // if they triggered the mobile nav by mistake).\n menuButton.focus();\n }\n\n return active;\n};\n\nvar resize = function resize() {\n var closer = document.body.querySelector(CLOSE_BUTTON);\n\n if (isActive() && closer && closer.getBoundingClientRect().width === 0) {\n // The mobile nav is active, but the close box isn't visible, which\n // means the user's viewport has been resized so that it is no longer\n // in mobile mode. Let's make the page state consistent by\n // deactivating the mobile nav.\n toggleNav.call(closer, false);\n }\n};\n\nvar navigation = behavior(_defineProperty({}, CLICK, (_CLICK = {}, _defineProperty(_CLICK, OPENERS, toggleNav), _defineProperty(_CLICK, CLOSERS, toggleNav), _defineProperty(_CLICK, NAV_LINKS, function () {\n // A navigation link has been clicked! We want to collapse any\n // hierarchical navigation UI it's a part of, so that the user\n // can focus on whatever they've just selected.\n\n // Some navigation links are inside accordions; when they're\n // clicked, we want to collapse those accordions.\n var acc = this.closest(accordion.ACCORDION);\n if (acc) {\n accordion.getButtons(acc).forEach(function (btn) {\n return accordion.hide(btn);\n });\n }\n\n // If the mobile navigation menu is active, we want to hide it.\n if (isActive()) {\n toggleNav.call(this, false);\n }\n}), _CLICK)), {\n init: function init() {\n resize();\n window.addEventListener('resize', resize, false);\n },\n teardown: function teardown() {\n window.removeEventListener('resize', resize, false);\n }\n});\n\n/**\n * TODO for 2.0, remove this statement and export `navigation` directly:\n *\n * module.exports = behavior({...});\n */\nvar assign = require('object-assign');\nmodule.exports = assign(function (el) {\n return navigation.on(el);\n}, navigation);\n\n},{\"../config\":25,\"../events\":26,\"../utils/behavior\":30,\"../utils/select\":32,\"./accordion\":16,\"array-foreach\":2,\"object-assign\":8}],21:[function(require,module,exports){\n'use strict';\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar behavior = require('../utils/behavior');\nvar toggleFormInput = require('../utils/toggle-form-input');\n\nvar CLICK = require('../events').CLICK;\nvar PREFIX = require('../config').prefix;\n\nvar LINK = '.' + PREFIX + '-show_password, .' + PREFIX + '-show_multipassword';\n\nvar toggle = function toggle(event) {\n event.preventDefault();\n toggleFormInput(this);\n};\n\nmodule.exports = behavior(_defineProperty({}, CLICK, _defineProperty({}, LINK, toggle)));\n\n},{\"../config\":25,\"../events\":26,\"../utils/behavior\":30,\"../utils/toggle-form-input\":34}],22:[function(require,module,exports){\n'use strict';\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar behavior = require('../utils/behavior');\nvar forEach = require('array-foreach');\nvar ignore = require('receptor/ignore');\nvar select = require('../utils/select');\n\nvar CLICK = require('../events').CLICK;\nvar PREFIX = require('../config').prefix;\n\nvar BUTTON = '.js-search-button';\nvar FORM = '.js-search-form';\nvar INPUT = '[type=search]';\nvar CONTEXT = 'header'; // XXX\nvar VISUALLY_HIDDEN = PREFIX + '-sr-only';\n\nvar lastButton = void 0;\n\nvar showSearch = function showSearch(event) {\n toggleSearch(this, true);\n lastButton = this;\n};\n\nvar hideSearch = function hideSearch(event) {\n toggleSearch(this, false);\n lastButton = undefined;\n};\n\nvar getForm = function getForm(button) {\n var context = button.closest(CONTEXT);\n return context ? context.querySelector(FORM) : document.querySelector(FORM);\n};\n\nvar toggleSearch = function toggleSearch(button, active) {\n var form = getForm(button);\n if (!form) {\n throw new Error('No ' + FORM + ' found for search toggle in ' + CONTEXT + '!');\n }\n\n button.hidden = active;\n form.classList.toggle(VISUALLY_HIDDEN, !active);\n\n if (active) {\n var input = form.querySelector(INPUT);\n if (input) {\n input.focus();\n }\n // when the user clicks _outside_ of the form w/ignore(): hide the\n // search, then remove the listener\n var listener = ignore(form, function (e) {\n if (lastButton) {\n hideSearch.call(lastButton);\n }\n document.body.removeEventListener(CLICK, listener);\n });\n\n // Normally we would just run this code without a timeout, but\n // IE11 and Edge will actually call the listener *immediately* because\n // they are currently handling this exact type of event, so we'll\n // make sure the browser is done handling the current click event,\n // if any, before we attach the listener.\n setTimeout(function () {\n document.body.addEventListener(CLICK, listener);\n }, 0);\n }\n};\n\nvar search = behavior(_defineProperty({}, CLICK, _defineProperty({}, BUTTON, showSearch)), {\n init: function init(target) {\n forEach(select(BUTTON, target), function (button) {\n toggleSearch(button, false);\n });\n },\n teardown: function teardown(target) {\n // forget the last button clicked\n lastButton = undefined;\n }\n});\n\n/**\n * TODO for 2.0, remove this statement and export `navigation` directly:\n *\n * module.exports = behavior({...});\n */\nvar assign = require('object-assign');\nmodule.exports = assign(function (el) {\n return search.on(el);\n}, search);\n\n},{\"../config\":25,\"../events\":26,\"../utils/behavior\":30,\"../utils/select\":32,\"array-foreach\":2,\"object-assign\":8,\"receptor/ignore\":13}],23:[function(require,module,exports){\n'use strict';\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar behavior = require('../utils/behavior');\nvar once = require('receptor/once');\n\nvar CLICK = require('../events').CLICK;\nvar PREFIX = require('../config').prefix;\nvar LINK = '.' + PREFIX + '-skipnav[href^=\"#\"]';\n\nvar setTabindex = function setTabindex(event) {\n // NB: we know because of the selector we're delegating to below that the\n // href already begins with '#'\n var id = this.getAttribute('href').slice(1);\n var target = document.getElementById(id);\n if (target) {\n target.setAttribute('tabindex', 0);\n target.addEventListener('blur', once(function (event) {\n target.setAttribute('tabindex', -1);\n }));\n } else {\n // throw an error?\n }\n};\n\nmodule.exports = behavior(_defineProperty({}, CLICK, _defineProperty({}, LINK, setTabindex)));\n\n},{\"../config\":25,\"../events\":26,\"../utils/behavior\":30,\"receptor/once\":14}],24:[function(require,module,exports){\n'use strict';\n\nvar behavior = require('../utils/behavior');\nvar validate = require('../utils/validate-input');\nvar debounce = require('lodash.debounce');\n\nvar change = function change(event) {\n return validate(this);\n};\n\nvar validator = behavior({\n 'keyup change': {\n 'input[data-validation-element]': change\n }\n});\n\n/**\n * TODO for 2.0, remove this statement and export `navigation` directly:\n *\n * module.exports = behavior({...});\n */\nvar assign = require('object-assign');\nmodule.exports = assign(function (el) {\n return validator.on(el);\n}, validator);\n\n},{\"../utils/behavior\":30,\"../utils/validate-input\":36,\"lodash.debounce\":7,\"object-assign\":8}],25:[function(require,module,exports){\n'use strict';\n\nmodule.exports = {\n prefix: 'usa'\n};\n\n},{}],26:[function(require,module,exports){\n'use strict';\n\nmodule.exports = {\n // This used to be conditionally dependent on whether the\n // browser supported touch events; if it did, `CLICK` was set to\n // `touchstart`. However, this had downsides:\n //\n // * It pre-empted mobile browsers' default behavior of detecting\n // whether a touch turned into a scroll, thereby preventing\n // users from using some of our components as scroll surfaces.\n //\n // * Some devices, such as the Microsoft Surface Pro, support *both*\n // touch and clicks. This meant the conditional effectively dropped\n // support for the user's mouse, frustrating users who preferred\n // it on those systems.\n CLICK: 'click'\n};\n\n},{}],27:[function(require,module,exports){\n'use strict';\n\nvar elproto = window.HTMLElement.prototype;\nvar HIDDEN = 'hidden';\n\nif (!(HIDDEN in elproto)) {\n Object.defineProperty(elproto, HIDDEN, {\n get: function get() {\n return this.hasAttribute(HIDDEN);\n },\n set: function set(value) {\n if (value) {\n this.setAttribute(HIDDEN, '');\n } else {\n this.removeAttribute(HIDDEN);\n }\n }\n });\n}\n\n},{}],28:[function(require,module,exports){\n'use strict';\n// polyfills HTMLElement.prototype.classList and DOMTokenList\n\nrequire('classlist-polyfill');\n// polyfills HTMLElement.prototype.hidden\nrequire('./element-hidden');\n\n},{\"./element-hidden\":27,\"classlist-polyfill\":3}],29:[function(require,module,exports){\n'use strict';\n\nvar domready = require('domready');\n\n/**\n * The 'polyfills' define key ECMAScript 5 methods that may be missing from\n * older browsers, so must be loaded first.\n */\nrequire('./polyfills');\n\nvar uswds = require('./config');\n\nvar components = require('./components');\nuswds.components = components;\n\ndomready(function () {\n var target = document.body;\n for (var name in components) {\n var behavior = components[name];\n behavior.on(target);\n }\n});\n\nmodule.exports = uswds;\n\n},{\"./components\":19,\"./config\":25,\"./polyfills\":28,\"domready\":4}],30:[function(require,module,exports){\n'use strict';\n\nvar assign = require('object-assign');\nvar forEach = require('array-foreach');\nvar Behavior = require('receptor/behavior');\n\nvar sequence = function sequence() {\n var seq = [].slice.call(arguments);\n return function (target) {\n var _this = this;\n\n if (!target) {\n target = document.body;\n }\n forEach(seq, function (method) {\n if (typeof _this[method] === 'function') {\n _this[method].call(_this, target);\n }\n });\n };\n};\n\n/**\n * @name behavior\n * @param {object} events\n * @param {object?} props\n * @return {receptor.behavior}\n */\nmodule.exports = function (events, props) {\n return Behavior(events, assign({\n on: sequence('init', 'add'),\n off: sequence('teardown', 'remove')\n }, props));\n};\n\n},{\"array-foreach\":2,\"object-assign\":8,\"receptor/behavior\":9}],31:[function(require,module,exports){\n\"use strict\";\n\n// https://stackoverflow.com/a/7557433\nfunction isElementInViewport(el) {\n var win = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : window;\n var docEl = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : document.documentElement;\n\n var rect = el.getBoundingClientRect();\n\n return rect.top >= 0 && rect.left >= 0 && rect.bottom <= (win.innerHeight || docEl.clientHeight) && rect.right <= (win.innerWidth || docEl.clientWidth);\n}\n\nmodule.exports = isElementInViewport;\n\n},{}],32:[function(require,module,exports){\n'use strict';\n\n/**\n * @name isElement\n * @desc returns whether or not the given argument is a DOM element.\n * @param {any} value\n * @return {boolean}\n */\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar isElement = function isElement(value) {\n return value && (typeof value === 'undefined' ? 'undefined' : _typeof(value)) === 'object' && value.nodeType === 1;\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 {Document|HTMLElement?} context - The context to traverse the DOM\n * in. If not provided, it defaults to the document.\n * @return {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 || !isElement(context)) {\n context = window.document;\n }\n\n var selection = context.querySelectorAll(selector);\n return Array.prototype.slice.call(selection);\n};\n\n},{}],33:[function(require,module,exports){\n'use strict';\n\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 (field, mask) {\n field.setAttribute('autocapitalize', 'off');\n field.setAttribute('autocorrect', 'off');\n field.setAttribute('type', mask ? 'password' : 'text');\n};\n\n},{}],34:[function(require,module,exports){\n'use strict';\n\nvar forEach = require('array-foreach');\nvar resolveIdRefs = require('resolve-id-refs');\nvar select = require('./select');\nvar toggleFieldMask = require('./toggle-field-mask');\n\nvar CONTROLS = 'aria-controls';\nvar PRESSED = 'aria-pressed';\nvar SHOW_ATTR = 'data-show-text';\nvar HIDE_ATTR = 'data-hide-text';\n\n/**\n * Replace the word \"Show\" (or \"show\") with \"Hide\" (or \"hide\") in a string.\n * @param {string} showText\n * @return {strong} hideText\n */\nvar getHideText = function getHideText(showText) {\n return showText.replace(/\\bShow\\b/i, function (show) {\n return ('S' === show[0] ? 'H' : 'h') + 'ide';\n });\n};\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 * @return {boolean}\n */\nmodule.exports = function (el) {\n // this is the *target* state:\n // * if the element has the attr and it's !== \"true\", pressed is true\n // * otherwise, pressed is false\n var pressed = el.hasAttribute(PRESSED) && el.getAttribute(PRESSED) !== 'true';\n\n var fields = resolveIdRefs(el.getAttribute(CONTROLS));\n forEach(fields, function (field) {\n return toggleFieldMask(field, pressed);\n });\n\n if (!el.hasAttribute(SHOW_ATTR)) {\n el.setAttribute(SHOW_ATTR, el.textContent);\n }\n\n var showText = el.getAttribute(SHOW_ATTR);\n var hideText = el.getAttribute(HIDE_ATTR) || getHideText(showText);\n\n el.textContent = pressed ? showText : hideText;\n el.setAttribute(PRESSED, pressed);\n return pressed;\n};\n\n},{\"./select\":32,\"./toggle-field-mask\":33,\"array-foreach\":2,\"resolve-id-refs\":15}],35:[function(require,module,exports){\n'use strict';\n\nvar EXPANDED = 'aria-expanded';\nvar CONTROLS = 'aria-controls';\nvar HIDDEN = 'aria-hidden';\n\nmodule.exports = function (button, expanded) {\n\n if (typeof expanded !== 'boolean') {\n expanded = button.getAttribute(EXPANDED) === 'false';\n }\n button.setAttribute(EXPANDED, expanded);\n\n var id = button.getAttribute(CONTROLS);\n var controls = document.getElementById(id);\n if (!controls) {\n throw new Error('No toggle target found with id: \"' + id + '\"');\n }\n\n controls.setAttribute(HIDDEN, !expanded);\n return expanded;\n};\n\n},{}],36:[function(require,module,exports){\n'use strict';\n\nvar dataset = require('elem-dataset');\n\nvar PREFIX = require('../config').prefix;\nvar CHECKED = 'aria-checked';\nvar CHECKED_CLASS = PREFIX + '-checklist-checked';\n\nmodule.exports = function validate(el) {\n var data = dataset(el);\n var id = data.validationElement;\n var checkList = id.charAt(0) === '#' ? document.querySelector(id) : document.getElementById(id);\n\n if (!checkList) {\n throw new Error('No validation element found with id: \"' + id + '\"');\n }\n\n for (var key in data) {\n if (key.startsWith('validate')) {\n var validatorName = key.substr('validate'.length).toLowerCase();\n var validatorPattern = new RegExp(data[key]);\n var validatorSelector = '[data-validator=\"' + validatorName + '\"]';\n var validatorCheckbox = checkList.querySelector(validatorSelector);\n if (!validatorCheckbox) {\n throw new Error('No validator checkbox found for: \"' + validatorName + '\"');\n }\n\n var checked = validatorPattern.test(el.value);\n validatorCheckbox.classList.toggle(CHECKED_CLASS, checked);\n validatorCheckbox.setAttribute(CHECKED, checked);\n }\n }\n};\n\n},{\"../config\":25,\"elem-dataset\":5}]},{},[29])\n\n","\n/**\n * Array#filter.\n *\n * @param {Array} arr\n * @param {Function} fn\n * @param {Object=} self\n * @return {Array}\n * @throw TypeError\n */\n\nmodule.exports = function (arr, fn, self) {\n if (arr.filter) return arr.filter(fn, self);\n if (void 0 === arr || null === arr) throw new TypeError;\n if ('function' != typeof fn) throw new TypeError;\n var ret = [];\n for (var i = 0; i < arr.length; i++) {\n if (!hasOwn.call(arr, i)) continue;\n var val = arr[i];\n if (fn.call(self, val, i, arr)) ret.push(val);\n }\n return ret;\n};\n\nvar hasOwn = Object.prototype.hasOwnProperty;\n","/**\n * array-foreach\n * Array#forEach ponyfill for older browsers\n * (Ponyfill: A polyfill that doesn't overwrite the native method)\n * \n * https://github.com/twada/array-foreach\n *\n * Copyright (c) 2015-2016 Takuto Wada\n * Licensed under the MIT license.\n * https://github.com/twada/array-foreach/blob/master/MIT-LICENSE\n */\n'use strict';\n\nmodule.exports = function forEach (ary, callback, thisArg) {\n if (ary.forEach) {\n ary.forEach(callback, thisArg);\n return;\n }\n for (var i = 0; i < ary.length; i+=1) {\n callback.call(thisArg, ary[i], i, ary);\n }\n};\n","/*\n * classList.js: Cross-browser full element.classList implementation.\n * 1.1.20170427\n *\n * By Eli Grey, http://eligrey.com\n * License: Dedicated to the public domain.\n * See https://github.com/eligrey/classList.js/blob/master/LICENSE.md\n */\n\n/*global self, document, DOMException */\n\n/*! @source http://purl.eligrey.com/github/classList.js/blob/master/classList.js */\n\nif (\"document\" in window.self) {\n\n// Full polyfill for browsers with no classList support\n// Including IE < Edge missing SVGElement.classList\nif (!(\"classList\" in document.createElement(\"_\")) \n\t|| document.createElementNS && !(\"classList\" in document.createElementNS(\"http://www.w3.org/2000/svg\",\"g\"))) {\n\n(function (view) {\n\n\"use strict\";\n\nif (!('Element' in view)) return;\n\nvar\n\t classListProp = \"classList\"\n\t, protoProp = \"prototype\"\n\t, elemCtrProto = view.Element[protoProp]\n\t, objCtr = Object\n\t, strTrim = String[protoProp].trim || function () {\n\t\treturn this.replace(/^\\s+|\\s+$/g, \"\");\n\t}\n\t, arrIndexOf = Array[protoProp].indexOf || function (item) {\n\t\tvar\n\t\t\t i = 0\n\t\t\t, len = this.length\n\t\t;\n\t\tfor (; i < len; i++) {\n\t\t\tif (i in this && this[i] === item) {\n\t\t\t\treturn i;\n\t\t\t}\n\t\t}\n\t\treturn -1;\n\t}\n\t// Vendors: please allow content code to instantiate DOMExceptions\n\t, DOMEx = function (type, message) {\n\t\tthis.name = type;\n\t\tthis.code = DOMException[type];\n\t\tthis.message = message;\n\t}\n\t, checkTokenAndGetIndex = function (classList, token) {\n\t\tif (token === \"\") {\n\t\t\tthrow new DOMEx(\n\t\t\t\t \"SYNTAX_ERR\"\n\t\t\t\t, \"An invalid or illegal string was specified\"\n\t\t\t);\n\t\t}\n\t\tif (/\\s/.test(token)) {\n\t\t\tthrow new DOMEx(\n\t\t\t\t \"INVALID_CHARACTER_ERR\"\n\t\t\t\t, \"String contains an invalid character\"\n\t\t\t);\n\t\t}\n\t\treturn arrIndexOf.call(classList, token);\n\t}\n\t, ClassList = function (elem) {\n\t\tvar\n\t\t\t trimmedClasses = strTrim.call(elem.getAttribute(\"class\") || \"\")\n\t\t\t, classes = trimmedClasses ? trimmedClasses.split(/\\s+/) : []\n\t\t\t, i = 0\n\t\t\t, len = classes.length\n\t\t;\n\t\tfor (; i < len; i++) {\n\t\t\tthis.push(classes[i]);\n\t\t}\n\t\tthis._updateClassName = function () {\n\t\t\telem.setAttribute(\"class\", this.toString());\n\t\t};\n\t}\n\t, classListProto = ClassList[protoProp] = []\n\t, classListGetter = function () {\n\t\treturn new ClassList(this);\n\t}\n;\n// Most DOMException implementations don't allow calling DOMException's toString()\n// on non-DOMExceptions. Error's toString() is sufficient here.\nDOMEx[protoProp] = Error[protoProp];\nclassListProto.item = function (i) {\n\treturn this[i] || null;\n};\nclassListProto.contains = function (token) {\n\ttoken += \"\";\n\treturn checkTokenAndGetIndex(this, token) !== -1;\n};\nclassListProto.add = function () {\n\tvar\n\t\t tokens = arguments\n\t\t, i = 0\n\t\t, l = tokens.length\n\t\t, token\n\t\t, updated = false\n\t;\n\tdo {\n\t\ttoken = tokens[i] + \"\";\n\t\tif (checkTokenAndGetIndex(this, token) === -1) {\n\t\t\tthis.push(token);\n\t\t\tupdated = true;\n\t\t}\n\t}\n\twhile (++i < l);\n\n\tif (updated) {\n\t\tthis._updateClassName();\n\t}\n};\nclassListProto.remove = function () {\n\tvar\n\t\t tokens = arguments\n\t\t, i = 0\n\t\t, l = tokens.length\n\t\t, token\n\t\t, updated = false\n\t\t, index\n\t;\n\tdo {\n\t\ttoken = tokens[i] + \"\";\n\t\tindex = checkTokenAndGetIndex(this, token);\n\t\twhile (index !== -1) {\n\t\t\tthis.splice(index, 1);\n\t\t\tupdated = true;\n\t\t\tindex = checkTokenAndGetIndex(this, token);\n\t\t}\n\t}\n\twhile (++i < l);\n\n\tif (updated) {\n\t\tthis._updateClassName();\n\t}\n};\nclassListProto.toggle = function (token, force) {\n\ttoken += \"\";\n\n\tvar\n\t\t result = this.contains(token)\n\t\t, method = result ?\n\t\t\tforce !== true && \"remove\"\n\t\t:\n\t\t\tforce !== false && \"add\"\n\t;\n\n\tif (method) {\n\t\tthis[method](token);\n\t}\n\n\tif (force === true || force === false) {\n\t\treturn force;\n\t} else {\n\t\treturn !result;\n\t}\n};\nclassListProto.toString = function () {\n\treturn this.join(\" \");\n};\n\nif (objCtr.defineProperty) {\n\tvar classListPropDesc = {\n\t\t get: classListGetter\n\t\t, enumerable: true\n\t\t, configurable: true\n\t};\n\ttry {\n\t\tobjCtr.defineProperty(elemCtrProto, classListProp, classListPropDesc);\n\t} catch (ex) { // IE 8 doesn't support enumerable:true\n\t\t// adding undefined to fight this issue https://github.com/eligrey/classList.js/issues/36\n\t\t// modernie IE8-MSW7 machine has IE8 8.0.6001.18702 and is affected\n\t\tif (ex.number === undefined || ex.number === -0x7FF5EC54) {\n\t\t\tclassListPropDesc.enumerable = false;\n\t\t\tobjCtr.defineProperty(elemCtrProto, classListProp, classListPropDesc);\n\t\t}\n\t}\n} else if (objCtr[protoProp].__defineGetter__) {\n\telemCtrProto.__defineGetter__(classListProp, classListGetter);\n}\n\n}(window.self));\n\n}\n\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\t\"use strict\";\n\n\tvar testElement = document.createElement(\"_\");\n\n\ttestElement.classList.add(\"c1\", \"c2\");\n\n\t// Polyfill for IE 10/11 and Firefox <26, where classList.add and\n\t// classList.remove exist but support only one argument at a time.\n\tif (!testElement.classList.contains(\"c2\")) {\n\t\tvar createMethod = function(method) {\n\t\t\tvar original = DOMTokenList.prototype[method];\n\n\t\t\tDOMTokenList.prototype[method] = function(token) {\n\t\t\t\tvar i, len = arguments.length;\n\n\t\t\t\tfor (i = 0; i < len; i++) {\n\t\t\t\t\ttoken = arguments[i];\n\t\t\t\t\toriginal.call(this, token);\n\t\t\t\t}\n\t\t\t};\n\t\t};\n\t\tcreateMethod('add');\n\t\tcreateMethod('remove');\n\t}\n\n\ttestElement.classList.toggle(\"c3\", false);\n\n\t// Polyfill for IE 10 and Firefox <24, where classList.toggle does not\n\t// support the second argument.\n\tif (testElement.classList.contains(\"c3\")) {\n\t\tvar _toggle = DOMTokenList.prototype.toggle;\n\n\t\tDOMTokenList.prototype.toggle = function(token, force) {\n\t\t\tif (1 in arguments && !this.contains(token) === !force) {\n\t\t\t\treturn force;\n\t\t\t} else {\n\t\t\t\treturn _toggle.call(this, token);\n\t\t\t}\n\t\t};\n\n\t}\n\n\ttestElement = null;\n}());\n\n}\n","/*!\n * domready (c) Dustin Diaz 2014 - License MIT\n */\n!function (name, definition) {\n\n if (typeof module != 'undefined') module.exports = definition()\n else if (typeof define == 'function' && typeof define.amd == 'object') define(definition)\n else this[name] = definition()\n\n}('domready', function () {\n\n var fns = [], listener\n , doc = document\n , hack = doc.documentElement.doScroll\n , domContentLoaded = 'DOMContentLoaded'\n , loaded = (hack ? /^loaded|^c/ : /^loaded|^i|^c/).test(doc.readyState)\n\n\n if (!loaded)\n doc.addEventListener(domContentLoaded, listener = function () {\n doc.removeEventListener(domContentLoaded, listener)\n loaded = 1\n while (listener = fns.shift()) listener()\n })\n\n return function (fn) {\n loaded ? setTimeout(fn, 0) : fns.push(fn)\n }\n\n});\n","'use strict';\n\n// <3 Modernizr\n// https://raw.githubusercontent.com/Modernizr/Modernizr/master/feature-detects/dom/dataset.js\n\nfunction useNative() {\n\tvar elem = document.createElement('div');\n\telem.setAttribute('data-a-b', 'c');\n\n\treturn Boolean(elem.dataset && elem.dataset.aB === 'c');\n}\n\nfunction nativeDataset(element) {\n\treturn element.dataset;\n}\n\nmodule.exports = useNative() ? nativeDataset : function (element) {\n\tvar map = {};\n\tvar attributes = element.attributes;\n\n\tfunction getter() {\n\t\treturn this.value;\n\t}\n\n\tfunction setter(name, value) {\n\t\tif (typeof value === 'undefined') {\n\t\t\tthis.removeAttribute(name);\n\t\t} else {\n\t\t\tthis.setAttribute(name, value);\n\t\t}\n\t}\n\n\tfor (var i = 0, j = attributes.length; i < j; i++) {\n\t\tvar attribute = attributes[i];\n\n\t\tif (attribute) {\n\t\t\tvar name = attribute.name;\n\n\t\t\tif (name.indexOf('data-') === 0) {\n\t\t\t\tvar prop = name.slice(5).replace(/-./g, function (u) {\n\t\t\t\t\treturn u.charAt(1).toUpperCase();\n\t\t\t\t});\n\n\t\t\t\tvar value = attribute.value;\n\n\t\t\t\tObject.defineProperty(map, prop, {\n\t\t\t\t\tenumerable: true,\n\t\t\t\t\tget: getter.bind({ value: value || '' }),\n\t\t\t\t\tset: setter.bind(element, name)\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t}\n\n\treturn map;\n};\n\n","// element-closest | CC0-1.0 | github.com/jonathantneal/closest\n\n(function (ElementProto) {\n\tif (typeof ElementProto.matches !== 'function') {\n\t\tElementProto.matches = ElementProto.msMatchesSelector || ElementProto.mozMatchesSelector || ElementProto.webkitMatchesSelector || function matches(selector) {\n\t\t\tvar element = this;\n\t\t\tvar elements = (element.document || element.ownerDocument).querySelectorAll(selector);\n\t\t\tvar index = 0;\n\n\t\t\twhile (elements[index] && elements[index] !== element) {\n\t\t\t\t++index;\n\t\t\t}\n\n\t\t\treturn Boolean(elements[index]);\n\t\t};\n\t}\n\n\tif (typeof ElementProto.closest !== 'function') {\n\t\tElementProto.closest = function closest(selector) {\n\t\t\tvar element = this;\n\n\t\t\twhile (element && element.nodeType === 1) {\n\t\t\t\tif (element.matches(selector)) {\n\t\t\t\t\treturn element;\n\t\t\t\t}\n\n\t\t\t\telement = element.parentNode;\n\t\t\t}\n\n\t\t\treturn null;\n\t\t};\n\t}\n})(window.Element.prototype);\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","/*\nobject-assign\n(c) Sindre Sorhus\n@license MIT\n*/\n\n'use strict';\n/* eslint-disable no-unused-vars */\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nvar propIsEnumerable = Object.prototype.propertyIsEnumerable;\n\nfunction toObject(val) {\n\tif (val === null || val === undefined) {\n\t\tthrow new TypeError('Object.assign cannot be called with null or undefined');\n\t}\n\n\treturn Object(val);\n}\n\nfunction shouldUseNative() {\n\ttry {\n\t\tif (!Object.assign) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Detect buggy property enumeration order in older V8 versions.\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=4118\n\t\tvar test1 = new String('abc'); // eslint-disable-line no-new-wrappers\n\t\ttest1[5] = 'de';\n\t\tif (Object.getOwnPropertyNames(test1)[0] === '5') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test2 = {};\n\t\tfor (var i = 0; i < 10; i++) {\n\t\t\ttest2['_' + String.fromCharCode(i)] = i;\n\t\t}\n\t\tvar order2 = Object.getOwnPropertyNames(test2).map(function (n) {\n\t\t\treturn test2[n];\n\t\t});\n\t\tif (order2.join('') !== '0123456789') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test3 = {};\n\t\t'abcdefghijklmnopqrst'.split('').forEach(function (letter) {\n\t\t\ttest3[letter] = letter;\n\t\t});\n\t\tif (Object.keys(Object.assign({}, test3)).join('') !==\n\t\t\t\t'abcdefghijklmnopqrst') {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t} catch (err) {\n\t\t// We don't expect any of the above to throw, but better to be safe.\n\t\treturn false;\n\t}\n}\n\nmodule.exports = shouldUseNative() ? Object.assign : function (target, source) {\n\tvar from;\n\tvar to = toObject(target);\n\tvar symbols;\n\n\tfor (var s = 1; s < arguments.length; s++) {\n\t\tfrom = Object(arguments[s]);\n\n\t\tfor (var key in from) {\n\t\t\tif (hasOwnProperty.call(from, key)) {\n\t\t\t\tto[key] = from[key];\n\t\t\t}\n\t\t}\n\n\t\tif (getOwnPropertySymbols) {\n\t\t\tsymbols = getOwnPropertySymbols(from);\n\t\t\tfor (var i = 0; i < symbols.length; i++) {\n\t\t\t\tif (propIsEnumerable.call(from, symbols[i])) {\n\t\t\t\t\tto[symbols[i]] = from[symbols[i]];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn to;\n};\n","const assign = require('object-assign');\nconst delegate = require('../delegate');\nconst delegateAll = require('../delegateAll');\n\nconst DELEGATE_PATTERN = /^(.+):delegate\\((.+)\\)$/;\nconst SPACE = ' ';\n\nconst getListeners = function(type, handler) {\n var match = type.match(DELEGATE_PATTERN);\n var selector;\n if (match) {\n type = match[1];\n selector = match[2];\n }\n\n var options;\n if (typeof handler === 'object') {\n options = {\n capture: popKey(handler, 'capture'),\n passive: popKey(handler, 'passive')\n };\n }\n\n var listener = {\n selector: selector,\n delegate: (typeof handler === 'object')\n ? delegateAll(handler)\n : selector\n ? delegate(selector, handler)\n : handler,\n options: options\n };\n\n if (type.indexOf(SPACE) > -1) {\n return type.split(SPACE).map(function(_type) {\n return assign({type: _type}, listener);\n });\n } else {\n listener.type = type;\n return [listener];\n }\n};\n\nvar popKey = function(obj, key) {\n var value = obj[key];\n delete obj[key];\n return value;\n};\n\nmodule.exports = function behavior(events, props) {\n const listeners = Object.keys(events)\n .reduce(function(memo, type) {\n var listeners = getListeners(type, events[type]);\n return memo.concat(listeners);\n }, []);\n\n return assign({\n add: function addBehavior(element) {\n listeners.forEach(function(listener) {\n element.addEventListener(\n listener.type,\n listener.delegate,\n listener.options\n );\n });\n },\n remove: function removeBehavior(element) {\n listeners.forEach(function(listener) {\n element.removeEventListener(\n listener.type,\n listener.delegate,\n listener.options\n );\n });\n }\n }, props);\n};\n","module.exports = function compose(functions) {\n return function(e) {\n return functions.some(function(fn) {\n return fn.call(this, e) === false;\n }, this);\n };\n};\n","// polyfill Element.prototype.closest\nrequire('element-closest');\n\nmodule.exports = function delegate(selector, fn) {\n return function delegation(event) {\n var target = event.target.closest(selector);\n if (target) {\n return fn.call(target, event);\n }\n }\n};\n","const delegate = require('../delegate');\nconst compose = require('../compose');\n\nconst SPLAT = '*';\n\nmodule.exports = function delegateAll(selectors) {\n const keys = Object.keys(selectors)\n\n // XXX optimization: if there is only one handler and it applies to\n // all elements (the \"*\" CSS selector), then just return that\n // handler\n if (keys.length === 1 && keys[0] === SPLAT) {\n return selectors[SPLAT];\n }\n\n const delegates = keys.reduce(function(memo, selector) {\n memo.push(delegate(selector, selectors[selector]));\n return memo;\n }, []);\n return compose(delegates);\n};\n","module.exports = function ignore(element, fn) {\n return function ignorance(e) {\n if (element !== e.target && !element.contains(e.target)) {\n return fn.call(this, e);\n }\n };\n};\n","module.exports = function once(listener, options) {\n var wrapped = function wrappedOnce(e) {\n e.currentTarget.removeEventListener(e.type, wrapped, options);\n return listener.call(this, e);\n };\n return wrapped;\n};\n\n","'use strict';\n\nvar RE_TRIM = /(^\\s+)|(\\s+$)/g;\nvar RE_SPLIT = /\\s+/;\n\nvar trim = String.prototype.trim\n ? function(str) { return str.trim(); }\n : function(str) { return str.replace(RE_TRIM, ''); };\n\nvar queryById = function(id) {\n return this.querySelector('[id=\"' + id.replace(/\"/g, '\\\\\"') + '\"]');\n};\n\nmodule.exports = function resolveIds(ids, doc) {\n if (typeof ids !== 'string') {\n throw new Error('Expected a string but got ' + (typeof ids));\n }\n\n if (!doc) {\n doc = window.document;\n }\n\n var getElementById = doc.getElementById\n ? doc.getElementById.bind(doc)\n : queryById.bind(doc);\n\n ids = trim(ids).split(RE_SPLIT);\n\n // XXX we can short-circuit here because trimming and splitting a\n // string of just whitespace produces an array containing a single,\n // empty string\n if (ids.length === 1 && ids[0] === '') {\n return [];\n }\n\n return ids\n .map(function(id) {\n var el = getElementById(id);\n if (!el) {\n throw new Error('no element with id: \"' + id + '\"');\n }\n return el;\n });\n};\n","'use strict';\nconst behavior = require('../utils/behavior');\nconst filter = require('array-filter');\nconst forEach = require('array-foreach');\nconst toggle = require('../utils/toggle');\nconst isElementInViewport = require('../utils/is-in-viewport');\n\nconst CLICK = require('../events').CLICK;\nconst PREFIX = require('../config').prefix;\n\n// XXX match .usa-accordion and .usa-accordion-bordered\nconst ACCORDION = `.${PREFIX}-accordion, .${PREFIX}-accordion-bordered`;\nconst BUTTON = `.${PREFIX}-accordion-button[aria-controls]`;\nconst EXPANDED = 'aria-expanded';\nconst MULTISELECTABLE = 'aria-multiselectable';\n\n/**\n * Toggle a button's \"pressed\" state, optionally providing a target\n * state.\n *\n * @param {HTMLButtonElement} button\n * @param {boolean?} expanded If no state is provided, the current\n * state will be toggled (from false to true, and vice-versa).\n * @return {boolean} the resulting state\n */\nconst toggleButton = (button, expanded) => {\n var accordion = button.closest(ACCORDION);\n if (!accordion) {\n throw new Error(`${BUTTON} is missing outer ${ACCORDION}`);\n }\n\n expanded = toggle(button, expanded);\n // XXX multiselectable is opt-in, to preserve legacy behavior\n const multiselectable = accordion.getAttribute(MULTISELECTABLE) === 'true';\n\n if (expanded && !multiselectable) {\n forEach(getAccordionButtons(accordion), other => {\n if (other !== button) {\n toggle(other, false);\n }\n });\n }\n};\n\n/**\n * @param {HTMLButtonElement} button\n * @return {boolean} true\n */\nconst showButton = button => toggleButton(button, true);\n\n/**\n * @param {HTMLButtonElement} button\n * @return {boolean} false\n */\nconst hideButton = button => toggleButton(button, false);\n\n/**\n * Get an Array of button elements belonging directly to the given\n * accordion element.\n * @param {HTMLElement} accordion\n * @return {array<HTMLButtonElement>}\n */\nconst getAccordionButtons = accordion => {\n return filter(accordion.querySelectorAll(BUTTON), button => {\n return button.closest(ACCORDION) === accordion;\n });\n};\n\nconst accordion = behavior({\n [ CLICK ]: {\n [ BUTTON ]: function (event) {\n event.preventDefault();\n toggleButton(this);\n\n if (this.getAttribute(EXPANDED) === 'true') {\n // We were just expanded, but if another accordion was also just\n // collapsed, we may no longer be in the viewport. This ensures\n // that we are still visible, so the user isn't confused.\n if (!isElementInViewport(this)) this.scrollIntoView();\n }\n },\n },\n}, {\n init: root => {\n forEach(root.querySelectorAll(BUTTON), button => {\n const expanded = button.getAttribute(EXPANDED) === 'true';\n toggleButton(button, expanded);\n });\n },\n ACCORDION,\n BUTTON,\n show: showButton,\n hide: hideButton,\n toggle: toggleButton,\n getButtons: getAccordionButtons,\n});\n\n/**\n * TODO: for 2.0, remove everything below this comment and export the\n * behavior directly:\n *\n * module.exports = behavior({...});\n */\nconst Accordion = function (root) {\n this.root = root;\n accordion.on(this.root);\n};\n\n// copy all of the behavior methods and props to Accordion\nconst assign = require('object-assign');\nassign(Accordion, accordion);\n\nAccordion.prototype.show = showButton;\nAccordion.prototype.hide = hideButton;\n\nAccordion.prototype.remove = function () {\n accordion.off(this.root);\n};\n\nmodule.exports = Accordion;\n","'use strict';\nconst behavior = require('../utils/behavior');\nconst toggle = require('../utils/toggle');\n\nconst CLICK = require('../events').CLICK;\nconst PREFIX = require('../config').prefix;\n\nconst HEADER = `.${PREFIX}-banner-header`;\nconst EXPANDED_CLASS = `${PREFIX}-banner-header-expanded`;\n\nconst toggleBanner = function (event) {\n event.preventDefault();\n this.closest(HEADER).classList.toggle(EXPANDED_CLASS);\n return false;\n};\n\nmodule.exports = behavior({\n [ CLICK ]: {\n [ `${HEADER} [aria-controls]` ]: toggleBanner,\n },\n});\n","'use strict';\nconst accordion = require('./accordion');\nconst behavior = require('../utils/behavior');\nconst debounce = require('lodash.debounce');\nconst forEach = require('array-foreach');\nconst select = require('../utils/select');\n\nconst CLICK = require('../events').CLICK;\nconst PREFIX = require('../config').prefix;\n\nconst HIDDEN = 'hidden';\nconst SCOPE = `.${PREFIX}-footer-big`;\nconst NAV = `${SCOPE} nav`;\nconst BUTTON = `${NAV} .${PREFIX}-footer-primary-link`;\nconst LIST = `${NAV} ul`;\n\nconst HIDE_MAX_WIDTH = 600;\nconst DEBOUNCE_RATE = 180;\n\nconst showPanel = function () {\n const list = this.closest(LIST);\n list.classList.remove(HIDDEN);\n\n // NB: this *should* always succeed because the button\n // selector is scoped to \".{prefix}-footer-big nav\"\n const lists = list.closest(NAV)\n .querySelectorAll('ul');\n\n forEach(lists, el => {\n if (el !== list) {\n el.classList.add(HIDDEN);\n }\n });\n};\n\nconst resize = debounce(() => {\n const hidden = window.innerWidth < HIDE_MAX_WIDTH;\n forEach(select(LIST), list => {\n list.classList.toggle(HIDDEN, hidden);\n });\n}, DEBOUNCE_RATE);\n\nmodule.exports = behavior({\n [ CLICK ]: {\n [ BUTTON ]: showPanel,\n },\n}, {\n // export for use elsewhere\n HIDE_MAX_WIDTH,\n DEBOUNCE_RATE,\n\n init: target => {\n resize();\n window.addEventListener('resize', resize);\n },\n\n teardown: target => {\n window.removeEventListener('resize', resize);\n },\n});\n","module.exports = {\n accordion: require('./accordion'),\n banner: require('./banner'),\n footer: require('./footer'),\n navigation: require('./navigation'),\n password: require('./password'),\n search: require('./search'),\n skipnav: require('./skipnav'),\n validator: require('./validator'),\n};\n\n","'use strict';\nconst behavior = require('../utils/behavior');\nconst forEach = require('array-foreach');\nconst select = require('../utils/select');\nconst accordion = require('./accordion');\n\nconst CLICK = require('../events').CLICK;\nconst PREFIX = require('../config').prefix;\n\nconst NAV = `.${PREFIX}-nav`;\nconst NAV_LINKS = `${NAV} a`;\nconst OPENERS = `.${PREFIX}-menu-btn`;\nconst CLOSE_BUTTON = `.${PREFIX}-nav-close`;\nconst OVERLAY = `.${PREFIX}-overlay`;\nconst CLOSERS = `${CLOSE_BUTTON}, .${PREFIX}-overlay`;\nconst TOGGLES = [ NAV, OVERLAY ].join(', ');\n\nconst ACTIVE_CLASS = 'usa-mobile_nav-active';\nconst VISIBLE_CLASS = 'is-visible';\n\nconst isActive = () => document.body.classList.contains(ACTIVE_CLASS);\n\nconst toggleNav = function (active) {\n const body = document.body;\n if (typeof active !== 'boolean') {\n active = !isActive();\n }\n body.classList.toggle(ACTIVE_CLASS, active);\n\n forEach(select(TOGGLES), el => {\n el.classList.toggle(VISIBLE_CLASS, active);\n });\n\n const closeButton = body.querySelector(CLOSE_BUTTON);\n const menuButton = body.querySelector(OPENERS);\n\n if (active && closeButton) {\n // The mobile nav was just activated, so focus on the close button,\n // which is just before all the nav elements in the tab order.\n closeButton.focus();\n } else if (!active && document.activeElement === closeButton &&\n menuButton) {\n // The mobile nav was just deactivated, and focus was on the close\n // button, which is no longer visible. We don't want the focus to\n // disappear into the void, so focus on the menu button if it's\n // visible (this may have been what the user was just focused on,\n // if they triggered the mobile nav by mistake).\n menuButton.focus();\n }\n\n return active;\n};\n\nconst resize = () => {\n const closer = document.body.querySelector(CLOSE_BUTTON);\n\n if (isActive() && closer && closer.getBoundingClientRect().width === 0) {\n // The mobile nav is active, but the close box isn't visible, which\n // means the user's viewport has been resized so that it is no longer\n // in mobile mode. Let's make the page state consistent by\n // deactivating the mobile nav.\n toggleNav.call(closer, false);\n }\n};\n\nconst navigation = behavior({\n [ CLICK ]: {\n [ OPENERS ]: toggleNav,\n [ CLOSERS ]: toggleNav,\n [ NAV_LINKS ]: function () {\n // A navigation link has been clicked! We want to collapse any\n // hierarchical navigation UI it's a part of, so that the user\n // can focus on whatever they've just selected.\n\n // Some navigation links are inside accordions; when they're\n // clicked, we want to collapse those accordions.\n const acc = this.closest(accordion.ACCORDION);\n if (acc) {\n accordion.getButtons(acc).forEach(btn => accordion.hide(btn));\n }\n\n // If the mobile navigation menu is active, we want to hide it.\n if (isActive()) {\n toggleNav.call(this, false);\n }\n },\n },\n}, {\n init () {\n resize();\n window.addEventListener('resize', resize, false);\n },\n teardown () {\n window.removeEventListener('resize', resize, false);\n },\n});\n\n/**\n * TODO for 2.0, remove this statement and export `navigation` directly:\n *\n * module.exports = behavior({...});\n */\nconst assign = require('object-assign');\nmodule.exports = assign(\n el => navigation.on(el),\n navigation\n);\n","'use strict';\nconst behavior = require('../utils/behavior');\nconst toggleFormInput = require('../utils/toggle-form-input');\n\nconst CLICK = require('../events').CLICK;\nconst PREFIX = require('../config').prefix;\n\nconst LINK = `.${PREFIX}-show_password, .${PREFIX}-show_multipassword`;\n\nconst toggle = function (event) {\n event.preventDefault();\n toggleFormInput(this);\n};\n\nmodule.exports = behavior({\n [ CLICK ]: {\n [ LINK ]: toggle,\n },\n});\n","'use strict';\nconst behavior = require('../utils/behavior');\nconst forEach = require('array-foreach');\nconst ignore = require('receptor/ignore');\nconst select = require('../utils/select');\n\nconst CLICK = require('../events').CLICK;\nconst PREFIX = require('../config').prefix;\n\nconst BUTTON = '.js-search-button';\nconst FORM = '.js-search-form';\nconst INPUT = '[type=search]';\nconst CONTEXT = 'header'; // XXX\nconst VISUALLY_HIDDEN = `${PREFIX}-sr-only`;\n\nlet lastButton;\n\nconst showSearch = function (event) {\n toggleSearch(this, true);\n lastButton = this;\n};\n\nconst hideSearch = function (event) {\n toggleSearch(this, false);\n lastButton = undefined;\n};\n\nconst getForm = button => {\n const context = button.closest(CONTEXT);\n return context\n ? context.querySelector(FORM)\n : document.querySelector(FORM);\n};\n\nconst toggleSearch = (button, active) => {\n const form = getForm(button);\n if (!form) {\n throw new Error(`No ${FORM} found for search toggle in ${CONTEXT}!`);\n }\n\n button.hidden = active;\n form.classList.toggle(VISUALLY_HIDDEN, !active);\n\n if (active) {\n const input = form.querySelector(INPUT);\n if (input) {\n input.focus();\n }\n // when the user clicks _outside_ of the form w/ignore(): hide the\n // search, then remove the listener\n const listener = ignore(form, e => {\n if (lastButton) {\n hideSearch.call(lastButton);\n }\n document.body.removeEventListener(CLICK, listener);\n });\n\n // Normally we would just run this code without a timeout, but\n // IE11 and Edge will actually call the listener *immediately* because\n // they are currently handling this exact type of event, so we'll\n // make sure the browser is done handling the current click event,\n // if any, before we attach the listener.\n setTimeout(() => {\n document.body.addEventListener(CLICK, listener);\n }, 0);\n }\n};\n\nconst search = behavior({\n [ CLICK ]: {\n [ BUTTON ]: showSearch,\n },\n}, {\n init: (target) => {\n forEach(select(BUTTON, target), button => {\n toggleSearch(button, false);\n });\n },\n teardown: (target) => {\n // forget the last button clicked\n lastButton = undefined;\n },\n});\n\n/**\n * TODO for 2.0, remove this statement and export `navigation` directly:\n *\n * module.exports = behavior({...});\n */\nconst assign = require('object-assign');\nmodule.exports = assign(\n el => search.on(el),\n search\n);\n","'use strict';\nconst behavior = require('../utils/behavior');\nconst once = require('receptor/once');\n\nconst CLICK = require('../events').CLICK;\nconst PREFIX = require('../config').prefix;\nconst LINK = `.${PREFIX}-skipnav[href^=\"#\"]`;\n\nconst setTabindex = function (event) {\n // NB: we know because of the selector we're delegating to below that the\n // href already begins with '#'\n const id = this.getAttribute('href').slice(1);\n const target = document.getElementById(id);\n if (target) {\n target.setAttribute('tabindex', 0);\n target.addEventListener('blur', once(event => {\n target.setAttribute('tabindex', -1);\n }));\n } else {\n // throw an error?\n }\n};\n\nmodule.exports = behavior({\n [ CLICK ]: {\n [ LINK ]: setTabindex,\n },\n});\n","'use strict';\nconst behavior = require('../utils/behavior');\nconst validate = require('../utils/validate-input');\nconst debounce = require('lodash.debounce');\n\nconst change = function (event) {\n return validate(this);\n};\n\nconst validator = behavior({\n 'keyup change': {\n 'input[data-validation-element]': change,\n },\n});\n\n/**\n * TODO for 2.0, remove this statement and export `navigation` directly:\n *\n * module.exports = behavior({...});\n */\nconst assign = require('object-assign');\nmodule.exports = assign(\n el => validator.on(el),\n validator\n);\n","module.exports = {\n prefix: 'usa',\n};\n","module.exports = {\n // This used to be conditionally dependent on whether the\n // browser supported touch events; if it did, `CLICK` was set to\n // `touchstart`. However, this had downsides:\n //\n // * It pre-empted mobile browsers' default behavior of detecting\n // whether a touch turned into a scroll, thereby preventing\n // users from using some of our components as scroll surfaces.\n //\n // * Some devices, such as the Microsoft Surface Pro, support *both*\n // touch and clicks. This meant the conditional effectively dropped\n // support for the user's mouse, frustrating users who preferred\n // it on those systems.\n CLICK: 'click',\n};\n","'use strict';\nconst elproto = window.HTMLElement.prototype;\nconst HIDDEN = 'hidden';\n\nif (!(HIDDEN in elproto)) {\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// polyfills HTMLElement.prototype.classList and DOMTokenList\nrequire('classlist-polyfill');\n// polyfills HTMLElement.prototype.hidden\nrequire('./element-hidden');\n","'use strict';\nconst domready = require('domready');\n\n/**\n * The 'polyfills' define key ECMAScript 5 methods that may be missing from\n * older browsers, so must be loaded first.\n */\nrequire('./polyfills');\n\nconst uswds = require('./config');\n\nconst components = require('./components');\nuswds.components = components;\n\ndomready(() => {\n const target = document.body;\n for (let name in components) {\n const behavior = components[ name ];\n behavior.on(target);\n }\n});\n\nmodule.exports = uswds;\n","'use strict';\nconst assign = require('object-assign');\nconst forEach = require('array-foreach');\nconst Behavior = require('receptor/behavior');\n\nconst sequence = function () {\n const seq = [].slice.call(arguments);\n return function (target) {\n if (!target) {\n target = document.body;\n }\n forEach(seq, method => {\n if (typeof this[ method ] === 'function') {\n this[ method ].call(this, target);\n }\n });\n };\n};\n\n/**\n * @name behavior\n * @param {object} events\n * @param {object?} props\n * @return {receptor.behavior}\n */\nmodule.exports = (events, props) => {\n return Behavior(events, assign({\n on: sequence('init', 'add'),\n off: sequence('teardown', 'remove'),\n }, props));\n};\n","// https://stackoverflow.com/a/7557433\nfunction isElementInViewport (el, win=window,\n docEl=document.documentElement) {\n var rect = el.getBoundingClientRect();\n\n return (\n rect.top >= 0 &&\n rect.left >= 0 &&\n rect.bottom <= (win.innerHeight || docEl.clientHeight) &&\n rect.right <= (win.innerWidth || docEl.clientWidth)\n );\n}\n\nmodule.exports = isElementInViewport;\n","'use strict';\n\n/**\n * @name isElement\n * @desc returns whether or not the given argument is a DOM element.\n * @param {any} value\n * @return {boolean}\n */\nconst isElement = value => {\n return value && typeof value === 'object' && value.nodeType === 1;\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 {Document|HTMLElement?} context - The context to traverse the DOM\n * in. If not provided, it defaults to the document.\n * @return {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 || !isElement(context)) {\n context = window.document;\n }\n\n const selection = context.querySelectorAll(selector);\n return Array.prototype.slice.call(selection);\n};\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 = (field, mask) => {\n field.setAttribute('autocapitalize', 'off');\n field.setAttribute('autocorrect', 'off');\n field.setAttribute('type', mask ? 'password' : 'text');\n};\n","'use strict';\nconst forEach = require('array-foreach');\nconst resolveIdRefs = require('resolve-id-refs');\nconst select = require('./select');\nconst toggleFieldMask = require('./toggle-field-mask');\n\nconst CONTROLS = 'aria-controls';\nconst PRESSED = 'aria-pressed';\nconst SHOW_ATTR = 'data-show-text';\nconst HIDE_ATTR = 'data-hide-text';\n\n/**\n * Replace the word \"Show\" (or \"show\") with \"Hide\" (or \"hide\") in a string.\n * @param {string} showText\n * @return {strong} hideText\n */\nconst getHideText = showText => {\n return showText.replace(/\\bShow\\b/i, show => {\n return ('S' === show[ 0 ] ? 'H' : 'h') + 'ide';\n });\n};\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 * @return {boolean}\n */\nmodule.exports = el => {\n // this is the *target* state:\n // * if the element has the attr and it's !== \"true\", pressed is true\n // * otherwise, pressed is false\n const pressed = el.hasAttribute(PRESSED)\n && el.getAttribute(PRESSED) !== 'true';\n\n const fields = resolveIdRefs(el.getAttribute(CONTROLS));\n forEach(fields, field => toggleFieldMask(field, pressed));\n\n if (!el.hasAttribute(SHOW_ATTR)) {\n el.setAttribute(SHOW_ATTR, el.textContent);\n }\n\n const showText = el.getAttribute(SHOW_ATTR);\n const hideText = el.getAttribute(HIDE_ATTR) || getHideText(showText);\n\n el.textContent = pressed ? showText : hideText;\n el.setAttribute(PRESSED, pressed);\n return pressed;\n};\n","'use strict';\nconst EXPANDED = 'aria-expanded';\nconst CONTROLS = 'aria-controls';\nconst HIDDEN = 'aria-hidden';\n\nmodule.exports = (button, expanded) => {\n\n if (typeof expanded !== 'boolean') {\n expanded = button.getAttribute(EXPANDED) === 'false';\n }\n button.setAttribute(EXPANDED, expanded);\n\n const id = button.getAttribute(CONTROLS);\n const controls = document.getElementById(id);\n if (!controls) {\n throw new Error(\n 'No toggle target found with id: \"' + id + '\"'\n );\n }\n\n controls.setAttribute(HIDDEN, !expanded);\n return expanded;\n};\n","'use strict';\nconst dataset = require('elem-dataset');\n\nconst PREFIX = require('../config').prefix;\nconst CHECKED = 'aria-checked';\nconst CHECKED_CLASS = `${PREFIX}-checklist-checked`;\n\nmodule.exports = function validate (el) {\n const data = dataset(el);\n const id = data.validationElement;\n const checkList = id.charAt(0) === '#'\n ? document.querySelector(id)\n : document.getElementById(id);\n\n if (!checkList) {\n throw new Error(\n `No validation element found with id: \"${id}\"`\n );\n }\n\n for (const key in data) {\n if (key.startsWith('validate')) {\n const validatorName = key.substr('validate'.length).toLowerCase();\n const validatorPattern = new RegExp(data[ key ]);\n const validatorSelector = `[data-validator=\"${validatorName}\"]`;\n const validatorCheckbox = checkList.querySelector(validatorSelector);\n if (!validatorCheckbox) {\n throw new Error(\n `No validator checkbox found for: \"${validatorName}\"`\n );\n }\n\n const checked = validatorPattern.test(el.value);\n validatorCheckbox.classList.toggle(CHECKED_CLASS, checked);\n validatorCheckbox.setAttribute(CHECKED, checked);\n }\n }\n};\n"]}
1
+ {"version":3,"sources":["node_modules/browser-pack/_prelude.js","node_modules/classlist-polyfill/src/index.js","node_modules/domready/ready.js","node_modules/elem-dataset/dist/index.js","node_modules/element-closest/element-closest.js","node_modules/keyboardevent-key-polyfill/index.js","node_modules/lodash.debounce/index.js","node_modules/object-assign/index.js","node_modules/receptor/behavior/index.js","node_modules/receptor/compose/index.js","node_modules/receptor/delegate/index.js","node_modules/receptor/delegateAll/index.js","node_modules/receptor/ignore/index.js","node_modules/receptor/index.js","node_modules/receptor/keymap/index.js","node_modules/receptor/once/index.js","node_modules/resolve-id-refs/index.js","src/js/components/accordion.js","src/js/components/banner.js","src/js/components/character-count.js","src/js/components/combo-box.js","src/js/components/footer.js","src/js/components/index.js","src/js/components/navigation.js","src/js/components/password.js","src/js/components/search.js","src/js/components/skipnav.js","src/js/components/validator.js","src/js/config.js","src/js/events.js","src/js/polyfills/element-hidden.js","src/js/polyfills/index.js","src/js/start.js","src/js/utils/active-element.js","src/js/utils/behavior.js","src/js/utils/focus-trap.js","src/js/utils/is-in-viewport.js","src/js/utils/select.js","src/js/utils/toggle-field-mask.js","src/js/utils/toggle-form-input.js","src/js/utils/toggle.js","src/js/utils/validate-input.js"],"names":["r","e","n","t","o","i","f","c","require","u","a","Error","code","p","exports","call","length","1","module","window","self","document","createElement","createElementNS","view","classListProp","protoProp","elemCtrProto","Element","objCtr","Object","strTrim","String","trim","this","replace","arrIndexOf","Array","indexOf","item","len","DOMEx","type","message","name","DOMException","checkTokenAndGetIndex","classList","token","test","ClassList","elem","trimmedClasses","getAttribute","classes","split","push","_updateClassName","setAttribute","toString","classListProto","classListGetter","contains","add","tokens","arguments","l","updated","remove","index","splice","toggle","force","result","method","join","defineProperty","classListPropDesc","get","enumerable","configurable","ex","undefined","number","__defineGetter__","testElement","createMethod","original","DOMTokenList","prototype","_toggle","definition","define","_typeof","amd","_listener","fns","doc","hack","documentElement","doScroll","domContentLoaded","loaded","readyState","addEventListener","removeEventListener","shift","fn","setTimeout","Boolean","dataset","aB","element","map","attributes","getter","value","setter","removeAttribute","j","attribute","prop","slice","charAt","toUpperCase","bind","set","ElementProto","matches","msMatchesSelector","mozMatchesSelector","webkitMatchesSelector","selector","elements","ownerDocument","querySelectorAll","closest","nodeType","parentNode","keyboardeventKeyPolyfill","polyfill","KeyboardEvent","proto","key","keys","which","keyCode","isArray","shiftKey","3","6","8","9","12","13","16","17","18","19","20","27","28","29","30","31","32","33","34","35","36","37","38","39","40","41","42","43","44","45","46","48","49","50","51","52","53","54","55","56","57","91","93","144","145","181","182","183","186","187","188","189","190","191","192","219","220","221","222","224","225","246","247","248","249","250","251","letter","fromCharCode","toLowerCase","now","root","Date","NAN","symbolTag","reTrim","reIsBadHex","reIsBinary","reIsOctal","freeParseInt","parseInt","freeGlobal","global","freeSelf","Function","objectToString","nativeMax","Math","max","nativeMin","min","isObject","isSymbol","isObjectLike","toNumber","other","valueOf","isBinary","func","wait","options","lastArgs","lastThis","maxWait","timerId","lastCallTime","lastInvokeTime","leading","maxing","trailing","TypeError","invokeFunc","time","args","thisArg","apply","shouldInvoke","timeSinceLastCall","timerExpired","trailingEdge","remainingWait","debounced","isInvoking","leadingEdge","cancel","clearTimeout","flush","getOwnPropertySymbols","hasOwnProperty","propIsEnumerable","propertyIsEnumerable","assign","test1","getOwnPropertyNames","test2","test3","forEach","err","shouldUseNative","target","source","from","symbols","to","val","toObject","s","delegate","delegateAll","DELEGATE_PATTERN","popKey","obj","events","props","listeners","reduce","memo","handler","match","capture","passive","listener","_type","getListeners","concat","functions","some","event","compose","selectors","delegates","behavior","ignore","keymap","MODIFIERS","Alt","Control","Ctrl","Shift","hasModifiers","modifier","getEventKey","_key","wrapped","currentTarget","RE_TRIM","RE_SPLIT","str","ids","getElementById","id","querySelector","el","getAccordionButtons","accordion","select","BUTTON","filter","button","ACCORDION","toggleButton","expanded","safeExpanded","multiselectable","isElementInViewport","CLICK","PREFIX","prefix","EXPANDED","_defineProperty","preventDefault","scrollIntoView","init","show","hide","getButtons","HEADER","EXPANDED_CLASS","getCharacterCountElements","inputEl","characterCountEl","CHARACTER_COUNT","INPUT","messageEl","MESSAGE","updateCountMessage","_getCharacterCountEle","maxlength","newMessage","currentLength","isOverLimit","difference","abs","characters","guidance","MESSAGE_INVALID_CLASS","innerHTML","validationMessage","setCustomValidity","VALIDATION_MESSAGE","characterCount","input","setupAttributes","getComboBoxElements","comboBoxEl","COMBO_BOX","selectEl","SELECT","listEl","LIST","statusEl","STATUS","focusedOptionEl","LIST_OPTION_FOCUSED","displayList","_getComboBoxElements3","listOptionBaseId","inputValue","optionEl","text","numOptions","optionHtml","option","LIST_OPTION_CLASS","noResults","hidden","hideList","_getComboBoxElements4","completeSelection","_getComboBoxElements6","textContent","highlightOption","currentEl","nextEl","_getComboBoxElements7","LIST_OPTION_FOCUSED_CLASS","optionBottom","offsetTop","offsetHeight","scrollTop","focus","handleUp","_getComboBoxElements10","nextOptionEl","previousSibling","listShown","handleDown","_getComboBoxElements11","nextSibling","LIST_OPTION","INPUT_CLASS","LIST_CLASS","STATUS_CLASS","comboBox","_behavior","_CLICK","listOptionEl","_getComboBoxElements5","selectItem","relatedTarget","ArrowUp","Up","ArrowDown","Down","Escape","_getComboBoxElements9","Enter","_getComboBoxElements8","isPrintableKeyCode","selectedOption","_getComboBoxElements","selectId","listId","assistiveHintID","placeholder","additionalAttributes","selected","hasAttribute","insertAdjacentHTML","enhanceComboBox","lastInnerWidth","debounce","HIDDEN","SCOPE","NAV","COLLAPSIBLE","resize","innerWidth","list","collapseEl","HIDE_MAX_WIDTH","DEBOUNCE_RATE","teardown","banner","footer","navigation","password","search","skipnav","validator","isActive","body","ACTIVE_CLASS","toggleNav","active","safeActive","TOGGLES","focusTrap","update","closeButton","CLOSE_BUTTON","menuButton","OPENERS","activeElement","closer","getBoundingClientRect","width","onMenuClose","hideActiveNavDropdown","navActive","FocusTrap","NAV_LINKS","NAV_CONTROL","OVERLAY","CLOSERS","acc","btn","trapContainer","toggleFormInput","LINK","lastButton","FORM","toggleSearch","form","context","getForm","once","style","outline","validate","keyup change","input[data-validation-element]","elproto","HTMLElement","domready","uswds","components","on","sequence","_len","seq","_this","Behavior","off","tabHandler","focusableElements","firstTabStop","lastTabStop","tabAhead","tabBack","additionalKeyBindings","tabEventHandler","keyMappings","Tab","Shift+Tab","keydown","win","docEl","rect","top","left","bottom","innerHeight","clientHeight","right","clientWidth","isElement","selection","field","mask","resolveIdRefs","toggleFieldMask","PRESSED","SHOW_ATTR","pressed","showText","hideText","getHideText","controls","CHECKED_CLASS","data","validationElement","checkList","entries","_ref","_ref2","_slicedToArray","startsWith","validatorName","substr","validatorPattern","RegExp","validatorSelector","validatorCheckbox","checked"],"mappings":"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","file":"uswds.min.js","sourcesContent":["(function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c=\"function\"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error(\"Cannot find module '\"+i+\"'\");throw a.code=\"MODULE_NOT_FOUND\",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u=\"function\"==typeof require&&require,i=0;i<t.length;i++)o(t[i]);return o}return r})()","/*\n * classList.js: Cross-browser full element.classList implementation.\n * 1.1.20170427\n *\n * By Eli Grey, http://eligrey.com\n * License: Dedicated to the public domain.\n * See https://github.com/eligrey/classList.js/blob/master/LICENSE.md\n */\n\n/*global self, document, DOMException */\n\n/*! @source http://purl.eligrey.com/github/classList.js/blob/master/classList.js */\n\nif (\"document\" in window.self) {\n\n// Full polyfill for browsers with no classList support\n// Including IE < Edge missing SVGElement.classList\nif (!(\"classList\" in document.createElement(\"_\")) \n\t|| document.createElementNS && !(\"classList\" in document.createElementNS(\"http://www.w3.org/2000/svg\",\"g\"))) {\n\n(function (view) {\n\n\"use strict\";\n\nif (!('Element' in view)) return;\n\nvar\n\t classListProp = \"classList\"\n\t, protoProp = \"prototype\"\n\t, elemCtrProto = view.Element[protoProp]\n\t, objCtr = Object\n\t, strTrim = String[protoProp].trim || function () {\n\t\treturn this.replace(/^\\s+|\\s+$/g, \"\");\n\t}\n\t, arrIndexOf = Array[protoProp].indexOf || function (item) {\n\t\tvar\n\t\t\t i = 0\n\t\t\t, len = this.length\n\t\t;\n\t\tfor (; i < len; i++) {\n\t\t\tif (i in this && this[i] === item) {\n\t\t\t\treturn i;\n\t\t\t}\n\t\t}\n\t\treturn -1;\n\t}\n\t// Vendors: please allow content code to instantiate DOMExceptions\n\t, DOMEx = function (type, message) {\n\t\tthis.name = type;\n\t\tthis.code = DOMException[type];\n\t\tthis.message = message;\n\t}\n\t, checkTokenAndGetIndex = function (classList, token) {\n\t\tif (token === \"\") {\n\t\t\tthrow new DOMEx(\n\t\t\t\t \"SYNTAX_ERR\"\n\t\t\t\t, \"An invalid or illegal string was specified\"\n\t\t\t);\n\t\t}\n\t\tif (/\\s/.test(token)) {\n\t\t\tthrow new DOMEx(\n\t\t\t\t \"INVALID_CHARACTER_ERR\"\n\t\t\t\t, \"String contains an invalid character\"\n\t\t\t);\n\t\t}\n\t\treturn arrIndexOf.call(classList, token);\n\t}\n\t, ClassList = function (elem) {\n\t\tvar\n\t\t\t trimmedClasses = strTrim.call(elem.getAttribute(\"class\") || \"\")\n\t\t\t, classes = trimmedClasses ? trimmedClasses.split(/\\s+/) : []\n\t\t\t, i = 0\n\t\t\t, len = classes.length\n\t\t;\n\t\tfor (; i < len; i++) {\n\t\t\tthis.push(classes[i]);\n\t\t}\n\t\tthis._updateClassName = function () {\n\t\t\telem.setAttribute(\"class\", this.toString());\n\t\t};\n\t}\n\t, classListProto = ClassList[protoProp] = []\n\t, classListGetter = function () {\n\t\treturn new ClassList(this);\n\t}\n;\n// Most DOMException implementations don't allow calling DOMException's toString()\n// on non-DOMExceptions. Error's toString() is sufficient here.\nDOMEx[protoProp] = Error[protoProp];\nclassListProto.item = function (i) {\n\treturn this[i] || null;\n};\nclassListProto.contains = function (token) {\n\ttoken += \"\";\n\treturn checkTokenAndGetIndex(this, token) !== -1;\n};\nclassListProto.add = function () {\n\tvar\n\t\t tokens = arguments\n\t\t, i = 0\n\t\t, l = tokens.length\n\t\t, token\n\t\t, updated = false\n\t;\n\tdo {\n\t\ttoken = tokens[i] + \"\";\n\t\tif (checkTokenAndGetIndex(this, token) === -1) {\n\t\t\tthis.push(token);\n\t\t\tupdated = true;\n\t\t}\n\t}\n\twhile (++i < l);\n\n\tif (updated) {\n\t\tthis._updateClassName();\n\t}\n};\nclassListProto.remove = function () {\n\tvar\n\t\t tokens = arguments\n\t\t, i = 0\n\t\t, l = tokens.length\n\t\t, token\n\t\t, updated = false\n\t\t, index\n\t;\n\tdo {\n\t\ttoken = tokens[i] + \"\";\n\t\tindex = checkTokenAndGetIndex(this, token);\n\t\twhile (index !== -1) {\n\t\t\tthis.splice(index, 1);\n\t\t\tupdated = true;\n\t\t\tindex = checkTokenAndGetIndex(this, token);\n\t\t}\n\t}\n\twhile (++i < l);\n\n\tif (updated) {\n\t\tthis._updateClassName();\n\t}\n};\nclassListProto.toggle = function (token, force) {\n\ttoken += \"\";\n\n\tvar\n\t\t result = this.contains(token)\n\t\t, method = result ?\n\t\t\tforce !== true && \"remove\"\n\t\t:\n\t\t\tforce !== false && \"add\"\n\t;\n\n\tif (method) {\n\t\tthis[method](token);\n\t}\n\n\tif (force === true || force === false) {\n\t\treturn force;\n\t} else {\n\t\treturn !result;\n\t}\n};\nclassListProto.toString = function () {\n\treturn this.join(\" \");\n};\n\nif (objCtr.defineProperty) {\n\tvar classListPropDesc = {\n\t\t get: classListGetter\n\t\t, enumerable: true\n\t\t, configurable: true\n\t};\n\ttry {\n\t\tobjCtr.defineProperty(elemCtrProto, classListProp, classListPropDesc);\n\t} catch (ex) { // IE 8 doesn't support enumerable:true\n\t\t// adding undefined to fight this issue https://github.com/eligrey/classList.js/issues/36\n\t\t// modernie IE8-MSW7 machine has IE8 8.0.6001.18702 and is affected\n\t\tif (ex.number === undefined || ex.number === -0x7FF5EC54) {\n\t\t\tclassListPropDesc.enumerable = false;\n\t\t\tobjCtr.defineProperty(elemCtrProto, classListProp, classListPropDesc);\n\t\t}\n\t}\n} else if (objCtr[protoProp].__defineGetter__) {\n\telemCtrProto.__defineGetter__(classListProp, classListGetter);\n}\n\n}(window.self));\n\n}\n\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\t\"use strict\";\n\n\tvar testElement = document.createElement(\"_\");\n\n\ttestElement.classList.add(\"c1\", \"c2\");\n\n\t// Polyfill for IE 10/11 and Firefox <26, where classList.add and\n\t// classList.remove exist but support only one argument at a time.\n\tif (!testElement.classList.contains(\"c2\")) {\n\t\tvar createMethod = function(method) {\n\t\t\tvar original = DOMTokenList.prototype[method];\n\n\t\t\tDOMTokenList.prototype[method] = function(token) {\n\t\t\t\tvar i, len = arguments.length;\n\n\t\t\t\tfor (i = 0; i < len; i++) {\n\t\t\t\t\ttoken = arguments[i];\n\t\t\t\t\toriginal.call(this, token);\n\t\t\t\t}\n\t\t\t};\n\t\t};\n\t\tcreateMethod('add');\n\t\tcreateMethod('remove');\n\t}\n\n\ttestElement.classList.toggle(\"c3\", false);\n\n\t// Polyfill for IE 10 and Firefox <24, where classList.toggle does not\n\t// support the second argument.\n\tif (testElement.classList.contains(\"c3\")) {\n\t\tvar _toggle = DOMTokenList.prototype.toggle;\n\n\t\tDOMTokenList.prototype.toggle = function(token, force) {\n\t\t\tif (1 in arguments && !this.contains(token) === !force) {\n\t\t\t\treturn force;\n\t\t\t} else {\n\t\t\t\treturn _toggle.call(this, token);\n\t\t\t}\n\t\t};\n\n\t}\n\n\ttestElement = null;\n}());\n\n}\n","/*!\n * domready (c) Dustin Diaz 2014 - License MIT\n */\n!function (name, definition) {\n\n if (typeof module != 'undefined') module.exports = definition()\n else if (typeof define == 'function' && typeof define.amd == 'object') define(definition)\n else this[name] = definition()\n\n}('domready', function () {\n\n var fns = [], listener\n , doc = document\n , hack = doc.documentElement.doScroll\n , domContentLoaded = 'DOMContentLoaded'\n , loaded = (hack ? /^loaded|^c/ : /^loaded|^i|^c/).test(doc.readyState)\n\n\n if (!loaded)\n doc.addEventListener(domContentLoaded, listener = function () {\n doc.removeEventListener(domContentLoaded, listener)\n loaded = 1\n while (listener = fns.shift()) listener()\n })\n\n return function (fn) {\n loaded ? setTimeout(fn, 0) : fns.push(fn)\n }\n\n});\n","'use strict';\n\n// <3 Modernizr\n// https://raw.githubusercontent.com/Modernizr/Modernizr/master/feature-detects/dom/dataset.js\n\nfunction useNative() {\n\tvar elem = document.createElement('div');\n\telem.setAttribute('data-a-b', 'c');\n\n\treturn Boolean(elem.dataset && elem.dataset.aB === 'c');\n}\n\nfunction nativeDataset(element) {\n\treturn element.dataset;\n}\n\nmodule.exports = useNative() ? nativeDataset : function (element) {\n\tvar map = {};\n\tvar attributes = element.attributes;\n\n\tfunction getter() {\n\t\treturn this.value;\n\t}\n\n\tfunction setter(name, value) {\n\t\tif (typeof value === 'undefined') {\n\t\t\tthis.removeAttribute(name);\n\t\t} else {\n\t\t\tthis.setAttribute(name, value);\n\t\t}\n\t}\n\n\tfor (var i = 0, j = attributes.length; i < j; i++) {\n\t\tvar attribute = attributes[i];\n\n\t\tif (attribute) {\n\t\t\tvar name = attribute.name;\n\n\t\t\tif (name.indexOf('data-') === 0) {\n\t\t\t\tvar prop = name.slice(5).replace(/-./g, function (u) {\n\t\t\t\t\treturn u.charAt(1).toUpperCase();\n\t\t\t\t});\n\n\t\t\t\tvar value = attribute.value;\n\n\t\t\t\tObject.defineProperty(map, prop, {\n\t\t\t\t\tenumerable: true,\n\t\t\t\t\tget: getter.bind({ value: value || '' }),\n\t\t\t\t\tset: setter.bind(element, name)\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t}\n\n\treturn map;\n};\n\n","// element-closest | CC0-1.0 | github.com/jonathantneal/closest\n\n(function (ElementProto) {\n\tif (typeof ElementProto.matches !== 'function') {\n\t\tElementProto.matches = ElementProto.msMatchesSelector || ElementProto.mozMatchesSelector || ElementProto.webkitMatchesSelector || function matches(selector) {\n\t\t\tvar element = this;\n\t\t\tvar elements = (element.document || element.ownerDocument).querySelectorAll(selector);\n\t\t\tvar index = 0;\n\n\t\t\twhile (elements[index] && elements[index] !== element) {\n\t\t\t\t++index;\n\t\t\t}\n\n\t\t\treturn Boolean(elements[index]);\n\t\t};\n\t}\n\n\tif (typeof ElementProto.closest !== 'function') {\n\t\tElementProto.closest = function closest(selector) {\n\t\t\tvar element = this;\n\n\t\t\twhile (element && element.nodeType === 1) {\n\t\t\t\tif (element.matches(selector)) {\n\t\t\t\t\treturn element;\n\t\t\t\t}\n\n\t\t\t\telement = element.parentNode;\n\t\t\t}\n\n\t\t\treturn null;\n\t\t};\n\t}\n})(window.Element.prototype);\n","/* global define, KeyboardEvent, module */\n\n(function () {\n\n var keyboardeventKeyPolyfill = {\n polyfill: polyfill,\n keys: {\n 3: 'Cancel',\n 6: 'Help',\n 8: 'Backspace',\n 9: 'Tab',\n 12: 'Clear',\n 13: 'Enter',\n 16: 'Shift',\n 17: 'Control',\n 18: 'Alt',\n 19: 'Pause',\n 20: 'CapsLock',\n 27: 'Escape',\n 28: 'Convert',\n 29: 'NonConvert',\n 30: 'Accept',\n 31: 'ModeChange',\n 32: ' ',\n 33: 'PageUp',\n 34: 'PageDown',\n 35: 'End',\n 36: 'Home',\n 37: 'ArrowLeft',\n 38: 'ArrowUp',\n 39: 'ArrowRight',\n 40: 'ArrowDown',\n 41: 'Select',\n 42: 'Print',\n 43: 'Execute',\n 44: 'PrintScreen',\n 45: 'Insert',\n 46: 'Delete',\n 48: ['0', ')'],\n 49: ['1', '!'],\n 50: ['2', '@'],\n 51: ['3', '#'],\n 52: ['4', '$'],\n 53: ['5', '%'],\n 54: ['6', '^'],\n 55: ['7', '&'],\n 56: ['8', '*'],\n 57: ['9', '('],\n 91: 'OS',\n 93: 'ContextMenu',\n 144: 'NumLock',\n 145: 'ScrollLock',\n 181: 'VolumeMute',\n 182: 'VolumeDown',\n 183: 'VolumeUp',\n 186: [';', ':'],\n 187: ['=', '+'],\n 188: [',', '<'],\n 189: ['-', '_'],\n 190: ['.', '>'],\n 191: ['/', '?'],\n 192: ['`', '~'],\n 219: ['[', '{'],\n 220: ['\\\\', '|'],\n 221: [']', '}'],\n 222: [\"'\", '\"'],\n 224: 'Meta',\n 225: 'AltGraph',\n 246: 'Attn',\n 247: 'CrSel',\n 248: 'ExSel',\n 249: 'EraseEof',\n 250: 'Play',\n 251: 'ZoomOut'\n }\n };\n\n // Function keys (F1-24).\n var i;\n for (i = 1; i < 25; i++) {\n keyboardeventKeyPolyfill.keys[111 + i] = 'F' + i;\n }\n\n // Printable ASCII characters.\n var letter = '';\n for (i = 65; i < 91; i++) {\n letter = String.fromCharCode(i);\n keyboardeventKeyPolyfill.keys[i] = [letter.toLowerCase(), letter.toUpperCase()];\n }\n\n function polyfill () {\n if (!('KeyboardEvent' in window) ||\n 'key' in KeyboardEvent.prototype) {\n return false;\n }\n\n // Polyfill `key` on `KeyboardEvent`.\n var proto = {\n get: function (x) {\n var key = keyboardeventKeyPolyfill.keys[this.which || this.keyCode];\n\n if (Array.isArray(key)) {\n key = key[+this.shiftKey];\n }\n\n return key;\n }\n };\n Object.defineProperty(KeyboardEvent.prototype, 'key', proto);\n return proto;\n }\n\n if (typeof define === 'function' && define.amd) {\n define('keyboardevent-key-polyfill', keyboardeventKeyPolyfill);\n } else if (typeof exports !== 'undefined' && typeof module !== 'undefined') {\n module.exports = keyboardeventKeyPolyfill;\n } else if (window) {\n window.keyboardeventKeyPolyfill = keyboardeventKeyPolyfill;\n }\n\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","/*\nobject-assign\n(c) Sindre Sorhus\n@license MIT\n*/\n\n'use strict';\n/* eslint-disable no-unused-vars */\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nvar propIsEnumerable = Object.prototype.propertyIsEnumerable;\n\nfunction toObject(val) {\n\tif (val === null || val === undefined) {\n\t\tthrow new TypeError('Object.assign cannot be called with null or undefined');\n\t}\n\n\treturn Object(val);\n}\n\nfunction shouldUseNative() {\n\ttry {\n\t\tif (!Object.assign) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Detect buggy property enumeration order in older V8 versions.\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=4118\n\t\tvar test1 = new String('abc'); // eslint-disable-line no-new-wrappers\n\t\ttest1[5] = 'de';\n\t\tif (Object.getOwnPropertyNames(test1)[0] === '5') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test2 = {};\n\t\tfor (var i = 0; i < 10; i++) {\n\t\t\ttest2['_' + String.fromCharCode(i)] = i;\n\t\t}\n\t\tvar order2 = Object.getOwnPropertyNames(test2).map(function (n) {\n\t\t\treturn test2[n];\n\t\t});\n\t\tif (order2.join('') !== '0123456789') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test3 = {};\n\t\t'abcdefghijklmnopqrst'.split('').forEach(function (letter) {\n\t\t\ttest3[letter] = letter;\n\t\t});\n\t\tif (Object.keys(Object.assign({}, test3)).join('') !==\n\t\t\t\t'abcdefghijklmnopqrst') {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t} catch (err) {\n\t\t// We don't expect any of the above to throw, but better to be safe.\n\t\treturn false;\n\t}\n}\n\nmodule.exports = shouldUseNative() ? Object.assign : function (target, source) {\n\tvar from;\n\tvar to = toObject(target);\n\tvar symbols;\n\n\tfor (var s = 1; s < arguments.length; s++) {\n\t\tfrom = Object(arguments[s]);\n\n\t\tfor (var key in from) {\n\t\t\tif (hasOwnProperty.call(from, key)) {\n\t\t\t\tto[key] = from[key];\n\t\t\t}\n\t\t}\n\n\t\tif (getOwnPropertySymbols) {\n\t\t\tsymbols = getOwnPropertySymbols(from);\n\t\t\tfor (var i = 0; i < symbols.length; i++) {\n\t\t\t\tif (propIsEnumerable.call(from, symbols[i])) {\n\t\t\t\t\tto[symbols[i]] = from[symbols[i]];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn to;\n};\n","const assign = require('object-assign');\nconst delegate = require('../delegate');\nconst delegateAll = require('../delegateAll');\n\nconst DELEGATE_PATTERN = /^(.+):delegate\\((.+)\\)$/;\nconst SPACE = ' ';\n\nconst getListeners = function(type, handler) {\n var match = type.match(DELEGATE_PATTERN);\n var selector;\n if (match) {\n type = match[1];\n selector = match[2];\n }\n\n var options;\n if (typeof handler === 'object') {\n options = {\n capture: popKey(handler, 'capture'),\n passive: popKey(handler, 'passive')\n };\n }\n\n var listener = {\n selector: selector,\n delegate: (typeof handler === 'object')\n ? delegateAll(handler)\n : selector\n ? delegate(selector, handler)\n : handler,\n options: options\n };\n\n if (type.indexOf(SPACE) > -1) {\n return type.split(SPACE).map(function(_type) {\n return assign({type: _type}, listener);\n });\n } else {\n listener.type = type;\n return [listener];\n }\n};\n\nvar popKey = function(obj, key) {\n var value = obj[key];\n delete obj[key];\n return value;\n};\n\nmodule.exports = function behavior(events, props) {\n const listeners = Object.keys(events)\n .reduce(function(memo, type) {\n var listeners = getListeners(type, events[type]);\n return memo.concat(listeners);\n }, []);\n\n return assign({\n add: function addBehavior(element) {\n listeners.forEach(function(listener) {\n element.addEventListener(\n listener.type,\n listener.delegate,\n listener.options\n );\n });\n },\n remove: function removeBehavior(element) {\n listeners.forEach(function(listener) {\n element.removeEventListener(\n listener.type,\n listener.delegate,\n listener.options\n );\n });\n }\n }, props);\n};\n","module.exports = function compose(functions) {\n return function(e) {\n return functions.some(function(fn) {\n return fn.call(this, e) === false;\n }, this);\n };\n};\n","// polyfill Element.prototype.closest\nrequire('element-closest');\n\nmodule.exports = function delegate(selector, fn) {\n return function delegation(event) {\n var target = event.target.closest(selector);\n if (target) {\n return fn.call(target, event);\n }\n }\n};\n","const delegate = require('../delegate');\nconst compose = require('../compose');\n\nconst SPLAT = '*';\n\nmodule.exports = function delegateAll(selectors) {\n const keys = Object.keys(selectors)\n\n // XXX optimization: if there is only one handler and it applies to\n // all elements (the \"*\" CSS selector), then just return that\n // handler\n if (keys.length === 1 && keys[0] === SPLAT) {\n return selectors[SPLAT];\n }\n\n const delegates = keys.reduce(function(memo, selector) {\n memo.push(delegate(selector, selectors[selector]));\n return memo;\n }, []);\n return compose(delegates);\n};\n","module.exports = function ignore(element, fn) {\n return function ignorance(e) {\n if (element !== e.target && !element.contains(e.target)) {\n return fn.call(this, e);\n }\n };\n};\n","module.exports = {\n behavior: require('./behavior'),\n delegate: require('./delegate'),\n delegateAll: require('./delegateAll'),\n ignore: require('./ignore'),\n keymap: require('./keymap'),\n};\n","require('keyboardevent-key-polyfill');\n\n// these are the only relevant modifiers supported on all platforms,\n// according to MDN:\n// <https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/getModifierState>\nconst MODIFIERS = {\n 'Alt': 'altKey',\n 'Control': 'ctrlKey',\n 'Ctrl': 'ctrlKey',\n 'Shift': 'shiftKey'\n};\n\nconst MODIFIER_SEPARATOR = '+';\n\nconst getEventKey = function(event, hasModifiers) {\n var key = event.key;\n if (hasModifiers) {\n for (var modifier in MODIFIERS) {\n if (event[MODIFIERS[modifier]] === true) {\n key = [modifier, key].join(MODIFIER_SEPARATOR);\n }\n }\n }\n return key;\n};\n\nmodule.exports = function keymap(keys) {\n const hasModifiers = Object.keys(keys).some(function(key) {\n return key.indexOf(MODIFIER_SEPARATOR) > -1;\n });\n return function(event) {\n var key = getEventKey(event, hasModifiers);\n return [key, key.toLowerCase()]\n .reduce(function(result, _key) {\n if (_key in keys) {\n result = keys[key].call(this, event);\n }\n return result;\n }, undefined);\n };\n};\n\nmodule.exports.MODIFIERS = MODIFIERS;\n","module.exports = function once(listener, options) {\n var wrapped = function wrappedOnce(e) {\n e.currentTarget.removeEventListener(e.type, wrapped, options);\n return listener.call(this, e);\n };\n return wrapped;\n};\n\n","'use strict';\n\nvar RE_TRIM = /(^\\s+)|(\\s+$)/g;\nvar RE_SPLIT = /\\s+/;\n\nvar trim = String.prototype.trim\n ? function(str) { return str.trim(); }\n : function(str) { return str.replace(RE_TRIM, ''); };\n\nvar queryById = function(id) {\n return this.querySelector('[id=\"' + id.replace(/\"/g, '\\\\\"') + '\"]');\n};\n\nmodule.exports = function resolveIds(ids, doc) {\n if (typeof ids !== 'string') {\n throw new Error('Expected a string but got ' + (typeof ids));\n }\n\n if (!doc) {\n doc = window.document;\n }\n\n var getElementById = doc.getElementById\n ? doc.getElementById.bind(doc)\n : queryById.bind(doc);\n\n ids = trim(ids).split(RE_SPLIT);\n\n // XXX we can short-circuit here because trimming and splitting a\n // string of just whitespace produces an array containing a single,\n // empty string\n if (ids.length === 1 && ids[0] === '') {\n return [];\n }\n\n return ids\n .map(function(id) {\n var el = getElementById(id);\n if (!el) {\n throw new Error('no element with id: \"' + id + '\"');\n }\n return el;\n });\n};\n","const select = require(\"../utils/select\");\nconst behavior = require(\"../utils/behavior\");\nconst toggle = require(\"../utils/toggle\");\nconst isElementInViewport = require(\"../utils/is-in-viewport\");\nconst { CLICK } = require(\"../events\");\nconst { prefix: PREFIX } = require(\"../config\");\n\nconst ACCORDION = `.${PREFIX}-accordion, .${PREFIX}-accordion--bordered`;\nconst BUTTON = `.${PREFIX}-accordion__button[aria-controls]`;\nconst EXPANDED = \"aria-expanded\";\nconst MULTISELECTABLE = \"aria-multiselectable\";\n\n/**\n * Get an Array of button elements belonging directly to the given\n * accordion element.\n * @param {HTMLElement} accordion\n * @return {array<HTMLButtonElement>}\n */\nconst getAccordionButtons = accordion => {\n const buttons = select(BUTTON, accordion);\n\n return buttons.filter(button => button.closest(ACCORDION) === accordion);\n};\n\n/**\n * Toggle a button's \"pressed\" state, optionally providing a target\n * state.\n *\n * @param {HTMLButtonElement} button\n * @param {boolean?} expanded If no state is provided, the current\n * state will be toggled (from false to true, and vice-versa).\n * @return {boolean} the resulting state\n */\nconst toggleButton = (button, expanded) => {\n const accordion = button.closest(ACCORDION);\n let safeExpanded = expanded;\n\n if (!accordion) {\n throw new Error(`${BUTTON} is missing outer ${ACCORDION}`);\n }\n\n safeExpanded = toggle(button, expanded);\n\n // XXX multiselectable is opt-in, to preserve legacy behavior\n const multiselectable = accordion.getAttribute(MULTISELECTABLE) === \"true\";\n\n if (safeExpanded && !multiselectable) {\n getAccordionButtons(accordion).forEach(other => {\n if (other !== button) {\n toggle(other, false);\n }\n });\n }\n};\n\n/**\n * @param {HTMLButtonElement} button\n * @return {boolean} true\n */\nconst showButton = button => toggleButton(button, true);\n\n/**\n * @param {HTMLButtonElement} button\n * @return {boolean} false\n */\nconst hideButton = button => toggleButton(button, false);\n\nconst accordion = behavior(\n {\n [CLICK]: {\n [BUTTON](event) {\n event.preventDefault();\n\n toggleButton(this);\n\n if (this.getAttribute(EXPANDED) === \"true\") {\n // We were just expanded, but if another accordion was also just\n // collapsed, we may no longer be in the viewport. This ensures\n // that we are still visible, so the user isn't confused.\n if (!isElementInViewport(this)) this.scrollIntoView();\n }\n }\n }\n },\n {\n init(root) {\n select(BUTTON, root).forEach(button => {\n const expanded = button.getAttribute(EXPANDED) === \"true\";\n toggleButton(button, expanded);\n });\n },\n ACCORDION,\n BUTTON,\n show: showButton,\n hide: hideButton,\n toggle: toggleButton,\n getButtons: getAccordionButtons\n }\n);\n\nmodule.exports = accordion;\n","const behavior = require(\"../utils/behavior\");\nconst { CLICK } = require(\"../events\");\nconst { prefix: PREFIX } = require(\"../config\");\n\nconst HEADER = `.${PREFIX}-banner__header`;\nconst EXPANDED_CLASS = `${PREFIX}-banner__header--expanded`;\n\nconst toggleBanner = function toggleEl(event) {\n event.preventDefault();\n this.closest(HEADER).classList.toggle(EXPANDED_CLASS);\n};\n\nmodule.exports = behavior({\n [CLICK]: {\n [`${HEADER} [aria-controls]`]: toggleBanner\n }\n});\n","const select = require(\"../utils/select\");\nconst behavior = require(\"../utils/behavior\");\nconst { prefix: PREFIX } = require(\"../config\");\n\nconst CHARACTER_COUNT = `.${PREFIX}-character-count`;\nconst INPUT = `.${PREFIX}-character-count__field`;\nconst MESSAGE = `.${PREFIX}-character-count__message`;\nconst VALIDATION_MESSAGE = \"The content is too long.\";\nconst MESSAGE_INVALID_CLASS = `${PREFIX}-character-count__message--invalid`;\n\n/**\n * The elements within the character count.\n * @typedef {Object} CharacterCountElements\n * @property {HTMLDivElement} characterCountEl\n * @property {HTMLSpanElement} messageEl\n */\n\n/**\n * Returns the root and message element\n * for an character count input\n *\n * @param {HTMLInputElement|HTMLTextAreaElement} inputEl The character count input element\n * @returns {CharacterCountElements} elements The root and message element.\n */\nconst getCharacterCountElements = inputEl => {\n const characterCountEl = inputEl.closest(CHARACTER_COUNT);\n\n if (!characterCountEl) {\n throw new Error(`${INPUT} is missing outer ${CHARACTER_COUNT}`);\n }\n\n const messageEl = characterCountEl.querySelector(MESSAGE);\n\n if (!messageEl) {\n throw new Error(`${CHARACTER_COUNT} is missing inner ${MESSAGE}`);\n }\n\n return { characterCountEl, messageEl };\n};\n\n/**\n * Update the character count component\n *\n * @param {HTMLInputElement|HTMLTextAreaElement} inputEl The character count input element\n */\nconst updateCountMessage = inputEl => {\n const { characterCountEl, messageEl } = getCharacterCountElements(inputEl);\n\n const maxlength = parseInt(\n characterCountEl.getAttribute(\"data-maxlength\"),\n 10\n );\n\n if (!maxlength) return;\n\n let newMessage = \"\";\n const currentLength = inputEl.value.length;\n const isOverLimit = currentLength && currentLength > maxlength;\n\n if (currentLength === 0) {\n newMessage = `${maxlength} characters allowed`;\n } else {\n const difference = Math.abs(maxlength - currentLength);\n const characters = `character${difference === 1 ? \"\" : \"s\"}`;\n const guidance = isOverLimit ? \"over limit\" : \"left\";\n\n newMessage = `${difference} ${characters} ${guidance}`;\n }\n\n messageEl.classList.toggle(MESSAGE_INVALID_CLASS, isOverLimit);\n messageEl.innerHTML = newMessage;\n\n if (isOverLimit && !inputEl.validationMessage) {\n inputEl.setCustomValidity(VALIDATION_MESSAGE);\n }\n\n if (!isOverLimit && inputEl.validationMessage === VALIDATION_MESSAGE) {\n inputEl.setCustomValidity(\"\");\n }\n};\n\n/**\n * Setup the character count component\n *\n * @param {HTMLInputElement|HTMLTextAreaElement} inputEl The character count input element\n */\nconst setupAttributes = inputEl => {\n const { characterCountEl } = getCharacterCountElements(inputEl);\n\n const maxlength = inputEl.getAttribute(\"maxlength\");\n\n if (!maxlength) return;\n\n inputEl.removeAttribute(\"maxlength\");\n characterCountEl.setAttribute(\"data-maxlength\", maxlength);\n};\n\nconst characterCount = behavior(\n {\n input: {\n [INPUT]() {\n updateCountMessage(this);\n }\n }\n },\n {\n init(root) {\n select(INPUT, root).forEach(input => {\n setupAttributes(input);\n updateCountMessage(input);\n });\n },\n MESSAGE_INVALID_CLASS,\n VALIDATION_MESSAGE\n }\n);\n\nmodule.exports = characterCount;\n","const keymap = require(\"receptor/keymap\");\nconst select = require(\"../utils/select\");\nconst behavior = require(\"../utils/behavior\");\nconst { prefix: PREFIX } = require(\"../config\");\nconst { CLICK } = require(\"../events\");\n\nconst COMBO_BOX = `.${PREFIX}-combo-box`;\n\nconst INPUT_CLASS = `${PREFIX}-combo-box__input`;\nconst LIST_CLASS = `${PREFIX}-combo-box__list`;\nconst LIST_OPTION_CLASS = `${PREFIX}-combo-box__list-option`;\nconst STATUS_CLASS = `${PREFIX}-combo-box__status`;\nconst LIST_OPTION_FOCUSED_CLASS = `${LIST_OPTION_CLASS}--focused`;\n\nconst SELECT = `.${PREFIX}-combo-box__select`;\nconst INPUT = `.${INPUT_CLASS}`;\nconst LIST = `.${LIST_CLASS}`;\nconst LIST_OPTION = `.${LIST_OPTION_CLASS}`;\nconst LIST_OPTION_FOCUSED = `.${LIST_OPTION_FOCUSED_CLASS}`;\nconst STATUS = `.${STATUS_CLASS}`;\n\n/**\n * Determine if the key code of an event is printable\n *\n * @param {number} keyCode The key code of the event\n * @returns {boolean} true is the key code is printable\n */\nconst isPrintableKeyCode = keyCode => {\n return (\n (keyCode > 47 && keyCode < 58) || // number keys\n keyCode === 32 || // space\n keyCode === 8 || // backspace\n (keyCode > 64 && keyCode < 91) || // letter keys\n (keyCode > 95 && keyCode < 112) || // numpad keys\n (keyCode > 185 && keyCode < 193) || // ;=,-./` (in order)\n (keyCode > 218 && keyCode < 223) // [\\]' (in order)\n );\n};\n\n/**\n * The elements within the combo box.\n * @typedef {Object} ComboBoxElements\n * @property {HTMLElement} comboBoxEl\n * @property {HTMLSelectElement} selectEl\n * @property {HTMLInputElement} inputEl\n * @property {HTMLUListElement} listEl\n * @property {HTMLDivElement} statusEl\n * @property {HTMLOptionElement} focusedOptionEl\n */\n\n/**\n * Get an object of elements belonging directly to the given\n * combo box component.\n *\n * @param {HTMLElement} el the element within the combo box\n * @returns {ComboBoxElements} elements\n */\nconst getComboBoxElements = el => {\n const comboBoxEl = el.closest(COMBO_BOX);\n\n if (!comboBoxEl) {\n throw new Error(`Element is missing outer ${COMBO_BOX}`);\n }\n\n const selectEl = comboBoxEl.querySelector(SELECT);\n\n if (!selectEl) {\n throw new Error(`${COMBO_BOX} is missing inner ${SELECT}`);\n }\n\n const inputEl = comboBoxEl.querySelector(INPUT);\n const listEl = comboBoxEl.querySelector(LIST);\n const statusEl = comboBoxEl.querySelector(STATUS);\n const focusedOptionEl = comboBoxEl.querySelector(LIST_OPTION_FOCUSED);\n\n return { comboBoxEl, selectEl, inputEl, listEl, statusEl, focusedOptionEl };\n};\n\n/**\n * Enhance a select element into a combo box component.\n *\n * @param {HTMLElement} el The initial element within the combo box component\n */\nconst enhanceComboBox = el => {\n const { comboBoxEl, selectEl } = getComboBoxElements(el);\n\n const selectId = selectEl.id;\n const listId = `${selectId}--list`;\n const assistiveHintID = `${selectId}--assistiveHint`;\n let placeholder = \"\";\n let selectedOption;\n const additionalAttributes = [];\n\n for (let i = 0, len = selectEl.options.length; i < len; i += 1) {\n const optionEl = selectEl.options[i];\n\n if (!placeholder && !optionEl.value) {\n placeholder = `placeholder=\"${optionEl.text}\"`;\n }\n\n if (!selectedOption && optionEl.selected && optionEl.value) {\n selectedOption = optionEl;\n }\n\n if (placeholder && selectedOption) {\n break;\n }\n }\n\n selectEl.setAttribute(\"aria-hidden\", \"true\");\n selectEl.setAttribute(\"tabindex\", \"-1\");\n selectEl.classList.add(\"usa-sr-only\");\n selectEl.id = \"\";\n\n [\"required\", \"aria-label\", \"aria-labelledby\"].forEach(name => {\n if (selectEl.hasAttribute(name)) {\n const value = selectEl.getAttribute(name);\n additionalAttributes.push(`${name}=\"${value}\"`);\n selectEl.removeAttribute(name);\n }\n });\n\n comboBoxEl.insertAdjacentHTML(\n \"beforeend\",\n [\n `<input\n aria-owns=\"${listId}\"\n aria-autocomplete=\"list\"\n aria-describedby=\"${assistiveHintID}\"\n aria-expanded=\"false\"\n autocapitalize=\"off\"\n ${placeholder || \"\"}\n autocomplete=\"off\"\n id=\"${selectId}\"\n class=\"${INPUT_CLASS}\"\n type=\"text\"\n role=\"combobox\"\n ${additionalAttributes.join(\" \")}\n >`,\n `<ul\n id=\"${listId}\"\n class=\"${LIST_CLASS}\"\n role=\"listbox\"\n hidden>\n </ul>`,\n `<div class=\"${STATUS_CLASS} usa-sr-only\" role=\"status\">\n </div>`,\n `<span id=\"${assistiveHintID}\" class=\"usa-sr-only\">\n When autocomplete results are available use up and down arrows to review and enter to select.\n Touch device users, explore by touch or with swipe gestures.\n </span>`\n ].join(\"\")\n );\n\n if (selectedOption) {\n const { inputEl } = getComboBoxElements(el);\n selectEl.value = selectedOption.value;\n inputEl.value = selectedOption.text;\n }\n};\n\n/**\n * Display the option list of a combo box component.\n *\n * @param {HTMLElement} el An element within the combo box component\n */\nconst displayList = el => {\n const { selectEl, inputEl, listEl, statusEl } = getComboBoxElements(el);\n\n const listOptionBaseId = `${listEl.id}--option-`;\n\n const inputValue = (inputEl.value || \"\").toLowerCase();\n\n const options = [];\n for (let i = 0, len = selectEl.options.length; i < len; i += 1) {\n const optionEl = selectEl.options[i];\n if (\n optionEl.value &&\n (!inputValue || optionEl.text.toLowerCase().indexOf(inputValue) !== -1)\n ) {\n options.push(optionEl);\n }\n }\n\n const numOptions = options.length;\n const optionHtml = options\n .map(\n (option, index) =>\n `<li\n aria-selected=\"false\"\n aria-setsize=\"${options.length}\"\n aria-posinset=\"${index + 1}\"\n id=\"${listOptionBaseId}${index}\"\n class=\"${LIST_OPTION_CLASS}\"\n tabindex=\"-1\"\n role=\"option\"\n data-option-value=\"${option.value}\"\n >${option.text}</li>`\n )\n .join(\"\");\n\n const noResults = `<li class=\"${LIST_OPTION_CLASS}--no-results\">No results found</li>`;\n\n listEl.hidden = false;\n listEl.innerHTML = numOptions ? optionHtml : noResults;\n\n inputEl.setAttribute(\"aria-expanded\", \"true\");\n\n statusEl.innerHTML = numOptions\n ? `${numOptions} result${numOptions > 1 ? \"s\" : \"\"} available.`\n : \"No results.\";\n};\n\n/**\n * Hide the option list of a combo box component.\n *\n * @param {HTMLElement} el An element within the combo box component\n */\nconst hideList = el => {\n const { inputEl, listEl, statusEl } = getComboBoxElements(el);\n\n statusEl.innerHTML = \"\";\n\n inputEl.setAttribute(\"aria-expanded\", \"false\");\n inputEl.setAttribute(\"aria-activedescendant\", \"\");\n\n listEl.innerHTML = \"\";\n listEl.hidden = true;\n};\n\n/**\n * Select an option list of the combo box component.\n *\n * @param {HTMLElement} listOptionEl The list option being selected\n */\nconst selectItem = listOptionEl => {\n const { comboBoxEl, selectEl, inputEl } = getComboBoxElements(listOptionEl);\n\n selectEl.value = listOptionEl.getAttribute(\"data-option-value\");\n inputEl.value = listOptionEl.textContent;\n hideList(comboBoxEl);\n inputEl.focus();\n};\n\n/**\n * Select an option list of the combo box component based off of\n * having a current focused list option or\n * having test that completely matches a list option.\n * Otherwise it clears the input and select.\n *\n * @param {HTMLElement} el An element within the combo box component\n */\nconst completeSelection = el => {\n const { selectEl, inputEl, statusEl, focusedOptionEl } = getComboBoxElements(\n el\n );\n\n statusEl.textContent = \"\";\n\n if (focusedOptionEl) {\n selectEl.value = focusedOptionEl.getAttribute(\"data-option-value\");\n inputEl.value = focusedOptionEl.textContent;\n return;\n }\n\n const inputValue = (inputEl.value || \"\").toLowerCase();\n\n if (inputValue) {\n for (let i = 0, len = selectEl.options.length; i < len; i += 1) {\n const optionEl = selectEl.options[i];\n if (optionEl.text.toLowerCase() === inputValue) {\n selectEl.value = optionEl.value;\n inputEl.value = optionEl.text;\n return;\n }\n }\n }\n\n selectEl.value = \"\";\n\n if (inputEl.value) {\n inputEl.value = \"\";\n }\n};\n\n/**\n * Manage the focused element within the list options when\n * navigating via keyboard.\n *\n * @param {HTMLElement} el An element within the combo box component\n * @param {HTMLElement} currentEl An element within the combo box component\n * @param {HTMLElement} nextEl An element within the combo box component\n */\nconst highlightOption = (el, currentEl, nextEl) => {\n const { inputEl, listEl } = getComboBoxElements(el);\n\n if (currentEl) {\n currentEl.classList.remove(LIST_OPTION_FOCUSED_CLASS);\n currentEl.setAttribute(\"aria-selected\", \"false\");\n }\n\n if (nextEl) {\n inputEl.setAttribute(\"aria-activedescendant\", nextEl.id);\n nextEl.setAttribute(\"aria-selected\", \"true\");\n nextEl.classList.add(LIST_OPTION_FOCUSED_CLASS);\n\n const optionBottom = nextEl.offsetTop + nextEl.offsetHeight;\n const currentBottom = listEl.scrollTop + listEl.offsetHeight;\n\n if (optionBottom > currentBottom) {\n listEl.scrollTop = optionBottom - listEl.offsetHeight;\n }\n\n if (nextEl.offsetTop < listEl.scrollTop) {\n listEl.scrollTop = nextEl.offsetTop;\n }\n nextEl.focus();\n } else {\n inputEl.setAttribute(\"aria-activedescendant\", \"\");\n inputEl.focus();\n }\n};\n\n/**\n * Handle the enter event within the combo box component.\n *\n * @param {KeyboardEvent} event An event within the combo box component\n */\nconst handleEnter = event => {\n const { comboBoxEl, inputEl, listEl } = getComboBoxElements(event.target);\n const listShown = !listEl.hidden;\n\n completeSelection(comboBoxEl);\n\n if (listShown) {\n hideList(comboBoxEl);\n inputEl.focus();\n event.preventDefault();\n }\n};\n\n/**\n * Handle the down event within the combo box component.\n *\n * @param {KeyboardEvent} event An event within the combo box component\n */\nconst handleEscape = event => {\n const { comboBoxEl, inputEl } = getComboBoxElements(event.target);\n\n hideList(comboBoxEl);\n inputEl.focus();\n};\n\n/**\n * Handle the up event within the combo box component.\n *\n * @param {KeyboardEvent} event An event within the combo box component\n */\nconst handleUp = event => {\n const { comboBoxEl, listEl, focusedOptionEl } = getComboBoxElements(\n event.target\n );\n const nextOptionEl = focusedOptionEl && focusedOptionEl.previousSibling;\n const listShown = !listEl.hidden;\n\n highlightOption(comboBoxEl, focusedOptionEl, nextOptionEl);\n\n if (listShown) {\n event.preventDefault();\n }\n\n if (!nextOptionEl) {\n hideList(comboBoxEl);\n }\n};\n\n/**\n * Handle the down event within the combo box component.\n *\n * @param {KeyboardEvent} event An event within the combo box component\n */\nconst handleDown = event => {\n const { comboBoxEl, listEl, focusedOptionEl } = getComboBoxElements(\n event.target\n );\n\n if (listEl.hidden) {\n displayList(comboBoxEl);\n }\n\n const nextOptionEl = focusedOptionEl\n ? focusedOptionEl.nextSibling\n : listEl.querySelector(LIST_OPTION);\n\n if (nextOptionEl) {\n highlightOption(comboBoxEl, focusedOptionEl, nextOptionEl);\n }\n\n event.preventDefault();\n};\n\nconst comboBox = behavior(\n {\n [CLICK]: {\n [INPUT]() {\n displayList(this);\n },\n [LIST_OPTION]() {\n selectItem(this);\n }\n },\n focusout: {\n [COMBO_BOX](event) {\n const { comboBoxEl } = getComboBoxElements(event.target);\n if (!comboBoxEl.contains(event.relatedTarget)) {\n completeSelection(comboBoxEl);\n hideList(comboBoxEl);\n }\n }\n },\n keydown: {\n [COMBO_BOX]: keymap({\n ArrowUp: handleUp,\n Up: handleUp,\n ArrowDown: handleDown,\n Down: handleDown,\n Escape: handleEscape,\n Enter: handleEnter\n })\n },\n keyup: {\n [INPUT](event) {\n if (isPrintableKeyCode(event.keyCode)) {\n displayList(this);\n }\n }\n }\n },\n {\n init(root) {\n select(SELECT, root).forEach(selectEl => {\n enhanceComboBox(selectEl);\n });\n }\n }\n);\n\nmodule.exports = comboBox;\n","const debounce = require(\"lodash.debounce\");\nconst behavior = require(\"../utils/behavior\");\nconst select = require(\"../utils/select\");\nconst { CLICK } = require(\"../events\");\nconst { prefix: PREFIX } = require(\"../config\");\n\nconst HIDDEN = \"hidden\";\nconst SCOPE = `.${PREFIX}-footer--big`;\nconst NAV = `${SCOPE} nav`;\nconst BUTTON = `${NAV} .${PREFIX}-footer__primary-link`;\nconst COLLAPSIBLE = `.${PREFIX}-footer__primary-content--collapsible`;\n\nconst HIDE_MAX_WIDTH = 480;\nconst DEBOUNCE_RATE = 180;\n\nfunction showPanel() {\n if (window.innerWidth < HIDE_MAX_WIDTH) {\n const collapseEl = this.closest(COLLAPSIBLE);\n collapseEl.classList.toggle(HIDDEN);\n\n // NB: this *should* always succeed because the button\n // selector is scoped to \".{prefix}-footer-big nav\"\n const collapsibleEls = select(COLLAPSIBLE, collapseEl.closest(NAV));\n\n collapsibleEls.forEach(el => {\n if (el !== collapseEl) {\n el.classList.add(HIDDEN);\n }\n });\n }\n}\n\nlet lastInnerWidth;\n\nconst resize = debounce(() => {\n if (lastInnerWidth === window.innerWidth) return;\n lastInnerWidth = window.innerWidth;\n const hidden = window.innerWidth < HIDE_MAX_WIDTH;\n select(COLLAPSIBLE).forEach(list => list.classList.toggle(HIDDEN, hidden));\n}, DEBOUNCE_RATE);\n\nmodule.exports = behavior(\n {\n [CLICK]: {\n [BUTTON]: showPanel\n }\n },\n {\n // export for use elsewhere\n HIDE_MAX_WIDTH,\n DEBOUNCE_RATE,\n\n init() {\n resize();\n window.addEventListener(\"resize\", resize);\n },\n\n teardown() {\n window.removeEventListener(\"resize\", resize);\n }\n }\n);\n","const accordion = require(\"./accordion\");\nconst banner = require(\"./banner\");\nconst characterCount = require(\"./character-count\");\nconst comboBox = require(\"./combo-box\");\nconst footer = require(\"./footer\");\nconst navigation = require(\"./navigation\");\nconst password = require(\"./password\");\nconst search = require(\"./search\");\nconst skipnav = require(\"./skipnav\");\nconst validator = require(\"./validator\");\n\nmodule.exports = {\n accordion,\n banner,\n characterCount,\n comboBox,\n footer,\n navigation,\n password,\n search,\n skipnav,\n validator\n};\n","const behavior = require(\"../utils/behavior\");\nconst select = require(\"../utils/select\");\nconst toggle = require(\"../utils/toggle\");\nconst FocusTrap = require(\"../utils/focus-trap\");\nconst accordion = require(\"./accordion\");\n\nconst { CLICK } = require(\"../events\");\nconst { prefix: PREFIX } = require(\"../config\");\n\nconst BODY = \"body\";\nconst NAV = `.${PREFIX}-nav`;\nconst NAV_LINKS = `${NAV} a`;\nconst NAV_CONTROL = `button.${PREFIX}-nav__link`;\nconst OPENERS = `.${PREFIX}-menu-btn`;\nconst CLOSE_BUTTON = `.${PREFIX}-nav__close`;\nconst OVERLAY = `.${PREFIX}-overlay`;\nconst CLOSERS = `${CLOSE_BUTTON}, .${PREFIX}-overlay`;\nconst TOGGLES = [NAV, OVERLAY].join(\", \");\n\nconst ACTIVE_CLASS = \"usa-js-mobile-nav--active\";\nconst VISIBLE_CLASS = \"is-visible\";\n\nlet navigation;\nlet navActive;\n\nconst isActive = () => document.body.classList.contains(ACTIVE_CLASS);\n\nconst toggleNav = active => {\n const { body } = document;\n const safeActive = typeof active === \"boolean\" ? active : !isActive();\n\n body.classList.toggle(ACTIVE_CLASS, safeActive);\n\n select(TOGGLES).forEach(el => el.classList.toggle(VISIBLE_CLASS, safeActive));\n\n navigation.focusTrap.update(safeActive);\n\n const closeButton = body.querySelector(CLOSE_BUTTON);\n const menuButton = body.querySelector(OPENERS);\n\n if (safeActive && closeButton) {\n // The mobile nav was just activated, so focus on the close button,\n // which is just before all the nav elements in the tab order.\n closeButton.focus();\n } else if (\n !safeActive &&\n document.activeElement === closeButton &&\n menuButton\n ) {\n // The mobile nav was just deactivated, and focus was on the close\n // button, which is no longer visible. We don't want the focus to\n // disappear into the void, so focus on the menu button if it's\n // visible (this may have been what the user was just focused on,\n // if they triggered the mobile nav by mistake).\n menuButton.focus();\n }\n\n return safeActive;\n};\n\nconst resize = () => {\n const closer = document.body.querySelector(CLOSE_BUTTON);\n\n if (isActive() && closer && closer.getBoundingClientRect().width === 0) {\n // When the mobile nav is active, and the close box isn't visible,\n // we know the user's viewport has been resized to be larger.\n // Let's make the page state consistent by deactivating the mobile nav.\n navigation.toggleNav.call(closer, false);\n }\n};\n\nconst onMenuClose = () => navigation.toggleNav.call(navigation, false);\nconst hideActiveNavDropdown = () => {\n toggle(navActive, false);\n navActive = null;\n};\n\nnavigation = behavior(\n {\n [CLICK]: {\n [NAV_CONTROL]() {\n // If another nav is open, close it\n if (navActive && navActive !== this) {\n hideActiveNavDropdown();\n }\n // store a reference to the last clicked nav link element, so we\n // can hide the dropdown if another element on the page is clicked\n if (navActive) {\n hideActiveNavDropdown();\n } else {\n navActive = this;\n toggle(navActive, true);\n }\n\n // Do this so the event handler on the body doesn't fire\n return false;\n },\n [BODY]() {\n if (navActive) {\n hideActiveNavDropdown();\n }\n },\n [OPENERS]: toggleNav,\n [CLOSERS]: toggleNav,\n [NAV_LINKS]() {\n // A navigation link has been clicked! We want to collapse any\n // hierarchical navigation UI it's a part of, so that the user\n // can focus on whatever they've just selected.\n\n // Some navigation links are inside accordions; when they're\n // clicked, we want to collapse those accordions.\n const acc = this.closest(accordion.ACCORDION);\n\n if (acc) {\n accordion.getButtons(acc).forEach(btn => accordion.hide(btn));\n }\n\n // If the mobile navigation menu is active, we want to hide it.\n if (isActive()) {\n navigation.toggleNav.call(navigation, false);\n }\n }\n }\n },\n {\n init(root) {\n const trapContainer = root.querySelector(NAV);\n\n if (trapContainer) {\n navigation.focusTrap = FocusTrap(trapContainer, {\n Escape: onMenuClose\n });\n }\n\n resize();\n window.addEventListener(\"resize\", resize, false);\n },\n teardown() {\n window.removeEventListener(\"resize\", resize, false);\n navActive = false;\n },\n focusTrap: null,\n toggleNav\n }\n);\n\nmodule.exports = navigation;\n","const behavior = require(\"../utils/behavior\");\nconst toggleFormInput = require(\"../utils/toggle-form-input\");\n\nconst { CLICK } = require(\"../events\");\nconst { prefix: PREFIX } = require(\"../config\");\n\nconst LINK = `.${PREFIX}-show-password, .${PREFIX}-show-multipassword`;\n\nfunction toggle(event) {\n event.preventDefault();\n toggleFormInput(this);\n}\n\nmodule.exports = behavior({\n [CLICK]: {\n [LINK]: toggle\n }\n});\n","const ignore = require(\"receptor/ignore\");\nconst behavior = require(\"../utils/behavior\");\nconst select = require(\"../utils/select\");\n\nconst { CLICK } = require(\"../events\");\n\nconst BUTTON = \".js-search-button\";\nconst FORM = \".js-search-form\";\nconst INPUT = \"[type=search]\";\nconst CONTEXT = \"header\"; // XXX\n\nlet lastButton;\n\nconst getForm = button => {\n const context = button.closest(CONTEXT);\n return context ? context.querySelector(FORM) : document.querySelector(FORM);\n};\n\nconst toggleSearch = (button, active) => {\n const form = getForm(button);\n\n if (!form) {\n throw new Error(`No ${FORM} found for search toggle in ${CONTEXT}!`);\n }\n\n /* eslint-disable no-param-reassign */\n button.hidden = active;\n form.hidden = !active;\n /* eslint-enable */\n\n if (!active) {\n return;\n }\n\n const input = form.querySelector(INPUT);\n\n if (input) {\n input.focus();\n }\n // when the user clicks _outside_ of the form w/ignore(): hide the\n // search, then remove the listener\n const listener = ignore(form, () => {\n if (lastButton) {\n hideSearch.call(lastButton); // eslint-disable-line no-use-before-define\n }\n\n document.body.removeEventListener(CLICK, listener);\n });\n\n // Normally we would just run this code without a timeout, but\n // IE11 and Edge will actually call the listener *immediately* because\n // they are currently handling this exact type of event, so we'll\n // make sure the browser is done handling the current click event,\n // if any, before we attach the listener.\n setTimeout(() => {\n document.body.addEventListener(CLICK, listener);\n }, 0);\n};\n\nfunction showSearch() {\n toggleSearch(this, true);\n lastButton = this;\n}\n\nfunction hideSearch() {\n toggleSearch(this, false);\n lastButton = undefined;\n}\n\nconst search = behavior(\n {\n [CLICK]: {\n [BUTTON]: showSearch\n }\n },\n {\n init(target) {\n select(BUTTON, target).forEach(button => {\n toggleSearch(button, false);\n });\n },\n teardown() {\n // forget the last button clicked\n lastButton = undefined;\n }\n }\n);\n\nmodule.exports = search;\n","const once = require(\"receptor/once\");\nconst behavior = require(\"../utils/behavior\");\nconst { CLICK } = require(\"../events\");\nconst { prefix: PREFIX } = require(\"../config\");\n\nconst LINK = `.${PREFIX}-skipnav[href^=\"#\"], .${PREFIX}-footer__return-to-top [href^=\"#\"]`;\nconst MAINCONTENT = \"main-content\";\n\nfunction setTabindex() {\n // NB: we know because of the selector we're delegating to below that the\n // href already begins with '#'\n const id = this.getAttribute(\"href\");\n const target = document.getElementById(\n id === \"#\" ? MAINCONTENT : id.slice(1)\n );\n\n if (target) {\n target.style.outline = \"0\";\n target.setAttribute(\"tabindex\", 0);\n target.focus();\n target.addEventListener(\n \"blur\",\n once(() => {\n target.setAttribute(\"tabindex\", -1);\n })\n );\n } else {\n // throw an error?\n }\n}\n\nmodule.exports = behavior({\n [CLICK]: {\n [LINK]: setTabindex\n }\n});\n","const behavior = require(\"../utils/behavior\");\nconst validate = require(\"../utils/validate-input\");\n\nfunction change() {\n validate(this);\n}\n\nconst validator = behavior({\n \"keyup change\": {\n \"input[data-validation-element]\": change\n }\n});\n\nmodule.exports = validator;\n","module.exports = {\n prefix: \"usa\"\n};\n","module.exports = {\n // This used to be conditionally dependent on whether the\n // browser supported touch events; if it did, `CLICK` was set to\n // `touchstart`. However, this had downsides:\n //\n // * It pre-empted mobile browsers' default behavior of detecting\n // whether a touch turned into a scroll, thereby preventing\n // users from using some of our components as scroll surfaces.\n //\n // * Some devices, such as the Microsoft Surface Pro, support *both*\n // touch and clicks. This meant the conditional effectively dropped\n // support for the user's mouse, frustrating users who preferred\n // it on those systems.\n CLICK: \"click\"\n};\n","const elproto = window.HTMLElement.prototype;\nconst HIDDEN = \"hidden\";\n\nif (!(HIDDEN in elproto)) {\n Object.defineProperty(elproto, HIDDEN, {\n get() {\n return this.hasAttribute(HIDDEN);\n },\n set(value) {\n if (value) {\n this.setAttribute(HIDDEN, \"\");\n } else {\n this.removeAttribute(HIDDEN);\n }\n }\n });\n}\n","// polyfills HTMLElement.prototype.classList and DOMTokenList\nrequire(\"classlist-polyfill\");\n// polyfills HTMLElement.prototype.hidden\nrequire(\"./element-hidden\");\n","const domready = require(\"domready\");\n\n/**\n * The 'polyfills' define key ECMAScript 5 methods that may be missing from\n * older browsers, so must be loaded first.\n */\nrequire(\"./polyfills\");\n\nconst uswds = require(\"./config\");\n\nconst components = require(\"./components\");\n\nuswds.components = components;\n\ndomready(() => {\n const target = document.body;\n Object.keys(components).forEach(key => {\n const behavior = components[key];\n behavior.on(target);\n });\n});\n\nmodule.exports = uswds;\n","module.exports = (htmlDocument = document) => htmlDocument.activeElement;\n","const assign = require(\"object-assign\");\nconst Behavior = require(\"receptor/behavior\");\n\n/**\n * @name sequence\n * @param {...Function} seq an array of functions\n * @return { closure } callHooks\n */\n// We use a named function here because we want it to inherit its lexical scope\n// from the behavior props object, not from the module\nconst sequence = (...seq) =>\n function callHooks(target = document.body) {\n seq.forEach(method => {\n if (typeof this[method] === \"function\") {\n this[method].call(this, target);\n }\n });\n };\n\n/**\n * @name behavior\n * @param {object} events\n * @param {object?} props\n * @return {receptor.behavior}\n */\nmodule.exports = (events, props) =>\n Behavior(\n events,\n assign(\n {\n on: sequence(\"init\", \"add\"),\n off: sequence(\"teardown\", \"remove\")\n },\n props\n )\n );\n","const assign = require(\"object-assign\");\nconst { keymap } = require(\"receptor\");\nconst behavior = require(\"./behavior\");\nconst select = require(\"./select\");\nconst activeElement = require(\"./active-element\");\n\nconst FOCUSABLE =\n 'a[href], area[href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), button:not([disabled]), iframe, object, embed, [tabindex=\"0\"], [contenteditable]';\n\nconst tabHandler = context => {\n const focusableElements = select(FOCUSABLE, context);\n const firstTabStop = focusableElements[0];\n const lastTabStop = focusableElements[focusableElements.length - 1];\n\n // Special rules for when the user is tabbing forward from the last focusable element,\n // or when tabbing backwards from the first focusable element\n function tabAhead(event) {\n if (activeElement() === lastTabStop) {\n event.preventDefault();\n firstTabStop.focus();\n }\n }\n\n function tabBack(event) {\n if (activeElement() === firstTabStop) {\n event.preventDefault();\n lastTabStop.focus();\n }\n }\n\n return {\n firstTabStop,\n lastTabStop,\n tabAhead,\n tabBack\n };\n};\n\nmodule.exports = (context, additionalKeyBindings = {}) => {\n const tabEventHandler = tabHandler(context);\n\n // TODO: In the future, loop over additional keybindings and pass an array\n // of functions, if necessary, to the map keys. Then people implementing\n // the focus trap could pass callbacks to fire when tabbing\n const keyMappings = keymap(\n assign(\n {\n Tab: tabEventHandler.tabAhead,\n \"Shift+Tab\": tabEventHandler.tabBack\n },\n additionalKeyBindings\n )\n );\n\n const focusTrap = behavior(\n {\n keydown: keyMappings\n },\n {\n init() {\n // TODO: is this desireable behavior? Should the trap always do this by default or should\n // the component getting decorated handle this?\n tabEventHandler.firstTabStop.focus();\n },\n update(isActive) {\n if (isActive) {\n this.on();\n } else {\n this.off();\n }\n }\n }\n );\n\n return focusTrap;\n};\n","// https://stackoverflow.com/a/7557433\nfunction isElementInViewport(\n el,\n win = window,\n docEl = document.documentElement\n) {\n const rect = el.getBoundingClientRect();\n\n return (\n rect.top >= 0 &&\n rect.left >= 0 &&\n rect.bottom <= (win.innerHeight || docEl.clientHeight) &&\n rect.right <= (win.innerWidth || docEl.clientWidth)\n );\n}\n\nmodule.exports = isElementInViewport;\n","/**\n * @name isElement\n * @desc returns whether or not the given argument is a DOM element.\n * @param {any} value\n * @return {boolean}\n */\nconst isElement = value =>\n value && typeof value === \"object\" && value.nodeType === 1;\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 {Document|HTMLElement?} context - The context to traverse the DOM\n * in. If not provided, it defaults to the document.\n * @return {HTMLElement[]} - An array of DOM nodes or an empty array.\n */\nmodule.exports = (selector, context) => {\n if (typeof selector !== \"string\") {\n return [];\n }\n\n if (!context || !isElement(context)) {\n context = window.document; // eslint-disable-line no-param-reassign\n }\n\n const selection = context.querySelectorAll(selector);\n return Array.prototype.slice.call(selection);\n};\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 = (field, mask) => {\n field.setAttribute(\"autocapitalize\", \"off\");\n field.setAttribute(\"autocorrect\", \"off\");\n field.setAttribute(\"type\", mask ? \"password\" : \"text\");\n};\n","const resolveIdRefs = require(\"resolve-id-refs\");\nconst toggleFieldMask = require(\"./toggle-field-mask\");\n\nconst CONTROLS = \"aria-controls\";\nconst PRESSED = \"aria-pressed\";\nconst SHOW_ATTR = \"data-show-text\";\nconst HIDE_ATTR = \"data-hide-text\";\n\n/**\n * Replace the word \"Show\" (or \"show\") with \"Hide\" (or \"hide\") in a string.\n * @param {string} showText\n * @return {strong} hideText\n */\nconst getHideText = showText =>\n showText.replace(/\\bShow\\b/i, show => `${show[0] === \"S\" ? \"H\" : \"h\"}ide`);\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 * @return {boolean}\n */\nmodule.exports = el => {\n // this is the *target* state:\n // * if the element has the attr and it's !== \"true\", pressed is true\n // * otherwise, pressed is false\n const pressed =\n el.hasAttribute(PRESSED) && el.getAttribute(PRESSED) !== \"true\";\n\n const fields = resolveIdRefs(el.getAttribute(CONTROLS));\n fields.forEach(field => toggleFieldMask(field, pressed));\n\n if (!el.hasAttribute(SHOW_ATTR)) {\n el.setAttribute(SHOW_ATTR, el.textContent);\n }\n\n const showText = el.getAttribute(SHOW_ATTR);\n const hideText = el.getAttribute(HIDE_ATTR) || getHideText(showText);\n\n el.textContent = pressed ? showText : hideText; // eslint-disable-line no-param-reassign\n el.setAttribute(PRESSED, pressed);\n return pressed;\n};\n","const EXPANDED = \"aria-expanded\";\nconst CONTROLS = \"aria-controls\";\nconst HIDDEN = \"hidden\";\n\nmodule.exports = (button, expanded) => {\n let safeExpanded = expanded;\n\n if (typeof safeExpanded !== \"boolean\") {\n safeExpanded = button.getAttribute(EXPANDED) === \"false\";\n }\n\n button.setAttribute(EXPANDED, safeExpanded);\n\n const id = button.getAttribute(CONTROLS);\n const controls = document.getElementById(id);\n if (!controls) {\n throw new Error(`No toggle target found with id: \"${id}\"`);\n }\n\n if (safeExpanded) {\n controls.removeAttribute(HIDDEN);\n } else {\n controls.setAttribute(HIDDEN, \"\");\n }\n\n return safeExpanded;\n};\n","const dataset = require(\"elem-dataset\");\n\nconst { prefix: PREFIX } = require(\"../config\");\n\nconst CHECKED = \"aria-checked\";\nconst CHECKED_CLASS = `${PREFIX}-checklist__item--checked`;\n\nmodule.exports = function validate(el) {\n const data = dataset(el);\n const id = data.validationElement;\n const checkList =\n id.charAt(0) === \"#\"\n ? document.querySelector(id)\n : document.getElementById(id);\n\n if (!checkList) {\n throw new Error(`No validation element found with id: \"${id}\"`);\n }\n\n Object.entries(data).forEach(([key, value]) => {\n if (key.startsWith(\"validate\")) {\n const validatorName = key.substr(\"validate\".length).toLowerCase();\n const validatorPattern = new RegExp(value);\n const validatorSelector = `[data-validator=\"${validatorName}\"]`;\n const validatorCheckbox = checkList.querySelector(validatorSelector);\n\n if (!validatorCheckbox) {\n throw new Error(`No validator checkbox found for: \"${validatorName}\"`);\n }\n\n const checked = validatorPattern.test(el.value);\n validatorCheckbox.classList.toggle(CHECKED_CLASS, checked);\n validatorCheckbox.setAttribute(CHECKED, checked);\n }\n });\n};\n"]}
metadata CHANGED
@@ -1,31 +1,39 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: uswds-jekyll
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.2.1
4
+ version: 5.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Shawn Allen
8
+ - Tom Black
8
9
  - Brian Hurst
9
10
  - Scott Weber
11
+ - Dan O. Williams
10
12
  autorequire:
11
13
  bindir: bin
12
14
  cert_chain: []
13
- date: 2018-01-12 00:00:00.000000000 Z
15
+ date: 2020-07-28 00:00:00.000000000 Z
14
16
  dependencies:
15
17
  - !ruby/object:Gem::Dependency
16
18
  name: jekyll
17
19
  requirement: !ruby/object:Gem::Requirement
18
20
  requirements:
19
- - - "~>"
21
+ - - ">="
22
+ - !ruby/object:Gem::Version
23
+ version: '4.0'
24
+ - - "<"
20
25
  - !ruby/object:Gem::Version
21
- version: '3.4'
26
+ version: '5'
22
27
  type: :runtime
23
28
  prerelease: false
24
29
  version_requirements: !ruby/object:Gem::Requirement
25
30
  requirements:
26
- - - "~>"
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '4.0'
34
+ - - "<"
27
35
  - !ruby/object:Gem::Version
28
- version: '3.4'
36
+ version: '5'
29
37
  - !ruby/object:Gem::Dependency
30
38
  name: bundler
31
39
  requirement: !ruby/object:Gem::Requirement
@@ -56,8 +64,7 @@ dependencies:
56
64
  version: '0'
57
65
  description:
58
66
  email:
59
- - brian.hurst@gsa.gov
60
- - scott.weber@gsa.gov
67
+ - daniel.williams@gsa.gov
61
68
  executables: []
62
69
  extensions: []
63
70
  extra_rdoc_files: []
@@ -67,239 +74,535 @@ files:
67
74
  - _includes/analytics.html
68
75
  - _includes/banner.html
69
76
  - _includes/components/banner.html
70
- - _includes/components/footer.html
77
+ - _includes/components/footer--big.html
78
+ - _includes/components/footer--default.html
79
+ - _includes/components/footer--slim.html
80
+ - _includes/components/github-edit.html
71
81
  - _includes/components/graphic-list.html
72
- - _includes/components/header--basic.html
73
- - _includes/components/header--extended.html
82
+ - _includes/components/header.html
74
83
  - _includes/components/hero.html
84
+ - _includes/components/search.html
75
85
  - _includes/favicon.html
76
86
  - _includes/footer.html
77
87
  - _includes/graphic-list.html
78
88
  - _includes/header.html
79
- - _includes/last-modified.html
80
89
  - _includes/meta.html
90
+ - _includes/project-list.html
81
91
  - _includes/scripts.html
82
92
  - _includes/sidenav.html
83
93
  - _includes/skipnav.html
84
94
  - _includes/styles.html
85
95
  - _includes/subnav.html
96
+ - _includes/team-list.html
86
97
  - _layouts/default.html
87
98
  - _layouts/home.html
88
99
  - _layouts/page.html
89
100
  - _layouts/post.html
90
- - _layouts/search-results.html
91
- - _sass/uswds/_all.scss
92
- - _sass/uswds/components/_accordions.scss
93
- - _sass/uswds/components/_alerts.scss
94
- - _sass/uswds/components/_banner.scss
101
+ - _layouts/project.html
102
+ - _layouts/team-member.html
103
+ - _sass/_uswds-theme-custom-styles.scss
104
+ - _sass/_uswds-theme-override-settings.scss
105
+ - _sass/_uswds-theme-packages.scss
106
+ - _sass/_uswds-theme-settings.scss
107
+ - _sass/uswds/components/_all.scss
108
+ - _sass/uswds/components/_alt-color-section.scss
109
+ - _sass/uswds/components/_card.scss
95
110
  - _sass/uswds/components/_footer.scss
96
- - _sass/uswds/components/_forms.scss
97
- - _sass/uswds/components/_graphic-list.scss
98
111
  - _sass/uswds/components/_header.scss
99
112
  - _sass/uswds/components/_hero.scss
100
- - _sass/uswds/components/_layout.scss
101
- - _sass/uswds/components/_media-block.scss
102
- - _sass/uswds/components/_navigation.scss
103
- - _sass/uswds/components/_search.scss
104
- - _sass/uswds/components/_section.scss
105
- - _sass/uswds/components/_sidenav.scss
106
- - _sass/uswds/components/_skipnav.scss
107
- - _sass/uswds/core/_base.scss
108
- - _sass/uswds/core/_defaults.scss
109
- - _sass/uswds/core/_fonts.scss
110
- - _sass/uswds/core/_grid-settings.scss
111
- - _sass/uswds/core/_grid.scss
112
- - _sass/uswds/core/_utilities.scss
113
- - _sass/uswds/core/_variables.scss
114
- - _sass/uswds/elements/_buttons.scss
115
- - _sass/uswds/elements/_embed.scss
116
- - _sass/uswds/elements/_figure.scss
117
- - _sass/uswds/elements/_inputs.scss
118
- - _sass/uswds/elements/_labels.scss
119
- - _sass/uswds/elements/_list.scss
120
- - _sass/uswds/elements/_table.scss
121
- - _sass/uswds/elements/_typography.scss
122
- - _sass/uswds/lib/_bourbon-deprecated-upcoming.scss
123
- - _sass/uswds/lib/_bourbon.scss
124
- - _sass/uswds/lib/_neat-helpers.scss
125
- - _sass/uswds/lib/_neat.scss
126
- - _sass/uswds/lib/_normalize.scss
127
- - _sass/uswds/lib/addons/_border-color.scss
128
- - _sass/uswds/lib/addons/_border-radius.scss
129
- - _sass/uswds/lib/addons/_border-style.scss
130
- - _sass/uswds/lib/addons/_border-width.scss
131
- - _sass/uswds/lib/addons/_buttons.scss
132
- - _sass/uswds/lib/addons/_clearfix.scss
133
- - _sass/uswds/lib/addons/_ellipsis.scss
134
- - _sass/uswds/lib/addons/_font-stacks.scss
135
- - _sass/uswds/lib/addons/_hide-text.scss
136
- - _sass/uswds/lib/addons/_margin.scss
137
- - _sass/uswds/lib/addons/_padding.scss
138
- - _sass/uswds/lib/addons/_position.scss
139
- - _sass/uswds/lib/addons/_prefixer.scss
140
- - _sass/uswds/lib/addons/_retina-image.scss
141
- - _sass/uswds/lib/addons/_size.scss
142
- - _sass/uswds/lib/addons/_text-inputs.scss
143
- - _sass/uswds/lib/addons/_timing-functions.scss
144
- - _sass/uswds/lib/addons/_triangle.scss
145
- - _sass/uswds/lib/addons/_word-wrap.scss
146
- - _sass/uswds/lib/css3/_animation.scss
147
- - _sass/uswds/lib/css3/_appearance.scss
148
- - _sass/uswds/lib/css3/_backface-visibility.scss
149
- - _sass/uswds/lib/css3/_background-image.scss
150
- - _sass/uswds/lib/css3/_background.scss
151
- - _sass/uswds/lib/css3/_border-image.scss
152
- - _sass/uswds/lib/css3/_calc.scss
153
- - _sass/uswds/lib/css3/_columns.scss
154
- - _sass/uswds/lib/css3/_filter.scss
155
- - _sass/uswds/lib/css3/_flex-box.scss
156
- - _sass/uswds/lib/css3/_font-face.scss
157
- - _sass/uswds/lib/css3/_font-feature-settings.scss
158
- - _sass/uswds/lib/css3/_hidpi-media-query.scss
159
- - _sass/uswds/lib/css3/_hyphens.scss
160
- - _sass/uswds/lib/css3/_image-rendering.scss
161
- - _sass/uswds/lib/css3/_keyframes.scss
162
- - _sass/uswds/lib/css3/_linear-gradient.scss
163
- - _sass/uswds/lib/css3/_perspective.scss
164
- - _sass/uswds/lib/css3/_placeholder.scss
165
- - _sass/uswds/lib/css3/_radial-gradient.scss
166
- - _sass/uswds/lib/css3/_selection.scss
167
- - _sass/uswds/lib/css3/_text-decoration.scss
168
- - _sass/uswds/lib/css3/_transform.scss
169
- - _sass/uswds/lib/css3/_transition.scss
170
- - _sass/uswds/lib/css3/_user-select.scss
171
- - _sass/uswds/lib/functions/_assign-inputs.scss
172
- - _sass/uswds/lib/functions/_contains-falsy.scss
173
- - _sass/uswds/lib/functions/_contains.scss
174
- - _sass/uswds/lib/functions/_is-length.scss
175
- - _sass/uswds/lib/functions/_is-light.scss
176
- - _sass/uswds/lib/functions/_is-number.scss
177
- - _sass/uswds/lib/functions/_is-size.scss
178
- - _sass/uswds/lib/functions/_modular-scale.scss
179
- - _sass/uswds/lib/functions/_new-breakpoint.scss
180
- - _sass/uswds/lib/functions/_private.scss
181
- - _sass/uswds/lib/functions/_px-to-em.scss
182
- - _sass/uswds/lib/functions/_px-to-rem.scss
183
- - _sass/uswds/lib/functions/_shade.scss
184
- - _sass/uswds/lib/functions/_strip-units.scss
185
- - _sass/uswds/lib/functions/_tint.scss
186
- - _sass/uswds/lib/functions/_transition-property-name.scss
187
- - _sass/uswds/lib/functions/_unpack.scss
188
- - _sass/uswds/lib/grid/_box-sizing.scss
189
- - _sass/uswds/lib/grid/_direction-context.scss
190
- - _sass/uswds/lib/grid/_display-context.scss
191
- - _sass/uswds/lib/grid/_fill-parent.scss
192
- - _sass/uswds/lib/grid/_media.scss
193
- - _sass/uswds/lib/grid/_omega.scss
194
- - _sass/uswds/lib/grid/_outer-container.scss
195
- - _sass/uswds/lib/grid/_pad.scss
196
- - _sass/uswds/lib/grid/_private.scss
197
- - _sass/uswds/lib/grid/_row.scss
198
- - _sass/uswds/lib/grid/_shift.scss
199
- - _sass/uswds/lib/grid/_span-columns.scss
200
- - _sass/uswds/lib/grid/_to-deprecate.scss
201
- - _sass/uswds/lib/grid/_visual-grid.scss
202
- - _sass/uswds/lib/helpers/_convert-units.scss
203
- - _sass/uswds/lib/helpers/_directional-values.scss
204
- - _sass/uswds/lib/helpers/_font-source-declaration.scss
205
- - _sass/uswds/lib/helpers/_gradient-positions-parser.scss
206
- - _sass/uswds/lib/helpers/_linear-angle-parser.scss
207
- - _sass/uswds/lib/helpers/_linear-gradient-parser.scss
208
- - _sass/uswds/lib/helpers/_linear-positions-parser.scss
209
- - _sass/uswds/lib/helpers/_linear-side-corner-parser.scss
210
- - _sass/uswds/lib/helpers/_radial-arg-parser.scss
211
- - _sass/uswds/lib/helpers/_radial-gradient-parser.scss
212
- - _sass/uswds/lib/helpers/_radial-positions-parser.scss
213
- - _sass/uswds/lib/helpers/_render-gradients.scss
214
- - _sass/uswds/lib/helpers/_shape-size-stripper.scss
215
- - _sass/uswds/lib/helpers/_str-to-num.scss
216
- - _sass/uswds/lib/mixins/_clearfix.scss
217
- - _sass/uswds/lib/settings/_asset-pipeline.scss
218
- - _sass/uswds/lib/settings/_disable-warnings.scss
219
- - _sass/uswds/lib/settings/_grid.scss
220
- - _sass/uswds/lib/settings/_prefixer.scss
221
- - _sass/uswds/lib/settings/_px-to-em.scss
222
- - _sass/uswds/lib/settings/_visual-grid.scss
223
- - _sass/uswds/uswds.scss
113
+ - _sass/uswds/components/_nav-buttons.scss
114
+ - _sass/uswds/components/_side-nav.scss
115
+ - _sass/uswds/components/_site-width.scss
116
+ - _sass/uswds/components/_top-nav.scss
117
+ - _sass/uswds/components/_usa-banner.scss
118
+ - _sass/uswds/custom/_uswds-theme-custom-styles.scss
119
+ - _sass/uswds/settings/_uswds-conversion-variables.scss
120
+ - _sass/uswds/src/base/_accessibility.scss
121
+ - _sass/uswds/src/base/_body.scss
122
+ - _sass/uswds/src/components/_accordions.scss
123
+ - _sass/uswds/src/components/_alerts.scss
124
+ - _sass/uswds/src/components/_banner.scss
125
+ - _sass/uswds/src/components/_button-groups.scss
126
+ - _sass/uswds/src/components/_card.scss
127
+ - _sass/uswds/src/components/_checklist.scss
128
+ - _sass/uswds/src/components/_footer.scss
129
+ - _sass/uswds/src/components/_forms.scss
130
+ - _sass/uswds/src/components/_graphic-list.scss
131
+ - _sass/uswds/src/components/_header.scss
132
+ - _sass/uswds/src/components/_hero.scss
133
+ - _sass/uswds/src/components/_layout.scss
134
+ - _sass/uswds/src/components/_media-block.scss
135
+ - _sass/uswds/src/components/_megamenu.scss
136
+ - _sass/uswds/src/components/_nav-container.scss
137
+ - _sass/uswds/src/components/_navbar.scss
138
+ - _sass/uswds/src/components/_navigation.scss
139
+ - _sass/uswds/src/components/_search.scss
140
+ - _sass/uswds/src/components/_section.scss
141
+ - _sass/uswds/src/components/_sidenav.scss
142
+ - _sass/uswds/src/components/_skipnav.scss
143
+ - _sass/uswds/src/core/_defaults.scss
144
+ - _sass/uswds/src/core/_deprecated.scss
145
+ - _sass/uswds/src/core/_functions.scss
146
+ - _sass/uswds/src/core/_notifications.scss
147
+ - _sass/uswds/src/core/_properties.scss
148
+ - _sass/uswds/src/core/_system-tokens.scss
149
+ - _sass/uswds/src/core/_variables.scss
150
+ - _sass/uswds/src/core/mixins/_add-aspect.scss
151
+ - _sass/uswds/src/core/mixins/_add-background-svg.scss
152
+ - _sass/uswds/src/core/mixins/_add-bar.scss
153
+ - _sass/uswds/src/core/mixins/_add-checkbox-placeholder.scss
154
+ - _sass/uswds/src/core/mixins/_add-kerning.scss
155
+ - _sass/uswds/src/core/mixins/_add-knockout-font-smoothing.scss
156
+ - _sass/uswds/src/core/mixins/_add-list-reset.scss
157
+ - _sass/uswds/src/core/mixins/_add-responsive-site-margins.scss
158
+ - _sass/uswds/src/core/mixins/_add-success-mark.scss
159
+ - _sass/uswds/src/core/mixins/_all.scss
160
+ - _sass/uswds/src/core/mixins/_at-media.scss
161
+ - _sass/uswds/src/core/mixins/_border-box-sizing.scss
162
+ - _sass/uswds/src/core/mixins/_button-disabled.scss
163
+ - _sass/uswds/src/core/mixins/_button-unstyled.scss
164
+ - _sass/uswds/src/core/mixins/_clearfix.scss
165
+ - _sass/uswds/src/core/mixins/_embed-container.scss
166
+ - _sass/uswds/src/core/mixins/_external-link.scss
167
+ - _sass/uswds/src/core/mixins/_focus.scss
168
+ - _sass/uswds/src/core/mixins/_font-face.scss
169
+ - _sass/uswds/src/core/mixins/_icon.scss
170
+ - _sass/uswds/src/core/mixins/_layout-grid.scss
171
+ - _sass/uswds/src/core/mixins/_media-block-img.scss
172
+ - _sass/uswds/src/core/mixins/_media-link.scss
173
+ - _sass/uswds/src/core/mixins/_nav-list.scss
174
+ - _sass/uswds/src/core/mixins/_override-prose.scss
175
+ - _sass/uswds/src/core/mixins/_screen-reader.scss
176
+ - _sass/uswds/src/core/mixins/_typography.scss
177
+ - _sass/uswds/src/core/mixins/_unstyled-list.scss
178
+ - _sass/uswds/src/core/mixins/_usa-list-styles.scss
179
+ - _sass/uswds/src/core/mixins/_usa-table-styles.scss
180
+ - _sass/uswds/src/core/mixins/_usa-typography.scss
181
+ - _sass/uswds/src/core/mixins/_utility-builder.scss
182
+ - _sass/uswds/src/core/mixins/layout-grid/_grid-container.scss
183
+ - _sass/uswds/src/core/mixins/layout-grid/_grid-row.scss
184
+ - _sass/uswds/src/core/mixins/utilities/_align-items.scss
185
+ - _sass/uswds/src/core/mixins/utilities/_background-color.scss
186
+ - _sass/uswds/src/core/mixins/utilities/_border-color.scss
187
+ - _sass/uswds/src/core/mixins/utilities/_border-radius.scss
188
+ - _sass/uswds/src/core/mixins/utilities/_border-width.scss
189
+ - _sass/uswds/src/core/mixins/utilities/_border.scss
190
+ - _sass/uswds/src/core/mixins/utilities/_bottom.scss
191
+ - _sass/uswds/src/core/mixins/utilities/_circle.scss
192
+ - _sass/uswds/src/core/mixins/utilities/_color.scss
193
+ - _sass/uswds/src/core/mixins/utilities/_cursor.scss
194
+ - _sass/uswds/src/core/mixins/utilities/_display.scss
195
+ - _sass/uswds/src/core/mixins/utilities/_flex-direction.scss
196
+ - _sass/uswds/src/core/mixins/utilities/_flex.scss
197
+ - _sass/uswds/src/core/mixins/utilities/_float.scss
198
+ - _sass/uswds/src/core/mixins/utilities/_font-weight.scss
199
+ - _sass/uswds/src/core/mixins/utilities/_font.scss
200
+ - _sass/uswds/src/core/mixins/utilities/_height.scss
201
+ - _sass/uswds/src/core/mixins/utilities/_justify-content.scss
202
+ - _sass/uswds/src/core/mixins/utilities/_left.scss
203
+ - _sass/uswds/src/core/mixins/utilities/_line-height.scss
204
+ - _sass/uswds/src/core/mixins/utilities/_margin.scss
205
+ - _sass/uswds/src/core/mixins/utilities/_max-height.scss
206
+ - _sass/uswds/src/core/mixins/utilities/_max-width.scss
207
+ - _sass/uswds/src/core/mixins/utilities/_measure.scss
208
+ - _sass/uswds/src/core/mixins/utilities/_min-height.scss
209
+ - _sass/uswds/src/core/mixins/utilities/_min-width.scss
210
+ - _sass/uswds/src/core/mixins/utilities/_order.scss
211
+ - _sass/uswds/src/core/mixins/utilities/_outline-color.scss
212
+ - _sass/uswds/src/core/mixins/utilities/_outline.scss
213
+ - _sass/uswds/src/core/mixins/utilities/_overflow.scss
214
+ - _sass/uswds/src/core/mixins/utilities/_padding.scss
215
+ - _sass/uswds/src/core/mixins/utilities/_pin.scss
216
+ - _sass/uswds/src/core/mixins/utilities/_position.scss
217
+ - _sass/uswds/src/core/mixins/utilities/_right.scss
218
+ - _sass/uswds/src/core/mixins/utilities/_shadow.scss
219
+ - _sass/uswds/src/core/mixins/utilities/_square.scss
220
+ - _sass/uswds/src/core/mixins/utilities/_text-align.scss
221
+ - _sass/uswds/src/core/mixins/utilities/_text-decoration-color.scss
222
+ - _sass/uswds/src/core/mixins/utilities/_text-decoration.scss
223
+ - _sass/uswds/src/core/mixins/utilities/_text-indent.scss
224
+ - _sass/uswds/src/core/mixins/utilities/_text.scss
225
+ - _sass/uswds/src/core/mixins/utilities/_top.scss
226
+ - _sass/uswds/src/core/mixins/utilities/_vertical-align.scss
227
+ - _sass/uswds/src/core/mixins/utilities/_white-space.scss
228
+ - _sass/uswds/src/core/mixins/utilities/_width.scss
229
+ - _sass/uswds/src/core/mixins/utilities/_z-index.scss
230
+ - _sass/uswds/src/core/placeholders/_all.scss
231
+ - _sass/uswds/src/core/placeholders/_list.scss
232
+ - _sass/uswds/src/core/placeholders/_table.scss
233
+ - _sass/uswds/src/core/system-tokens/_blue-cool.scss
234
+ - _sass/uswds/src/core/system-tokens/_blue-warm.scss
235
+ - _sass/uswds/src/core/system-tokens/_blue.scss
236
+ - _sass/uswds/src/core/system-tokens/_cyan.scss
237
+ - _sass/uswds/src/core/system-tokens/_gold.scss
238
+ - _sass/uswds/src/core/system-tokens/_gray-cool.scss
239
+ - _sass/uswds/src/core/system-tokens/_gray-warm.scss
240
+ - _sass/uswds/src/core/system-tokens/_gray.scss
241
+ - _sass/uswds/src/core/system-tokens/_green-cool.scss
242
+ - _sass/uswds/src/core/system-tokens/_green-warm.scss
243
+ - _sass/uswds/src/core/system-tokens/_green.scss
244
+ - _sass/uswds/src/core/system-tokens/_indigo-cool.scss
245
+ - _sass/uswds/src/core/system-tokens/_indigo-warm.scss
246
+ - _sass/uswds/src/core/system-tokens/_indigo.scss
247
+ - _sass/uswds/src/core/system-tokens/_magenta.scss
248
+ - _sass/uswds/src/core/system-tokens/_mint-cool.scss
249
+ - _sass/uswds/src/core/system-tokens/_mint.scss
250
+ - _sass/uswds/src/core/system-tokens/_orange-warm.scss
251
+ - _sass/uswds/src/core/system-tokens/_orange.scss
252
+ - _sass/uswds/src/core/system-tokens/_red-cool.scss
253
+ - _sass/uswds/src/core/system-tokens/_red-warm.scss
254
+ - _sass/uswds/src/core/system-tokens/_red.scss
255
+ - _sass/uswds/src/core/system-tokens/_violet-warm.scss
256
+ - _sass/uswds/src/core/system-tokens/_violet.scss
257
+ - _sass/uswds/src/core/system-tokens/_yellow.scss
258
+ - _sass/uswds/src/elements/_buttons.scss
259
+ - _sass/uswds/src/elements/_embed.scss
260
+ - _sass/uswds/src/elements/_figure.scss
261
+ - _sass/uswds/src/elements/_layout-grid.scss
262
+ - _sass/uswds/src/elements/_table.scss
263
+ - _sass/uswds/src/elements/_tags.scss
264
+ - _sass/uswds/src/elements/form-controls/_all.scss
265
+ - _sass/uswds/src/elements/form-controls/_character-count.scss
266
+ - _sass/uswds/src/elements/form-controls/_checkbox-and-radio.scss
267
+ - _sass/uswds/src/elements/form-controls/_combo-box.scss
268
+ - _sass/uswds/src/elements/form-controls/_date-input.scss
269
+ - _sass/uswds/src/elements/form-controls/_dropdown.scss
270
+ - _sass/uswds/src/elements/form-controls/_file-input.scss
271
+ - _sass/uswds/src/elements/form-controls/_global.scss
272
+ - _sass/uswds/src/elements/form-controls/_range-input.scss
273
+ - _sass/uswds/src/elements/form-controls/_text-input.scss
274
+ - _sass/uswds/src/elements/typography/_content.scss
275
+ - _sass/uswds/src/elements/typography/_links.scss
276
+ - _sass/uswds/src/elements/typography/_list.scss
277
+ - _sass/uswds/src/elements/typography/_prose.scss
278
+ - _sass/uswds/src/global/_focus.scss
279
+ - _sass/uswds/src/global/_font-face.scss
280
+ - _sass/uswds/src/global/_sizing.scss
281
+ - _sass/uswds/src/global/_typography.scss
282
+ - _sass/uswds/src/lib/_normalize.scss
283
+ - _sass/uswds/src/packages/_form-controls.scss
284
+ - _sass/uswds/src/packages/_form-templates.scss
285
+ - _sass/uswds/src/packages/_global.scss
286
+ - _sass/uswds/src/packages/_layout-grid.scss
287
+ - _sass/uswds/src/packages/_required.scss
288
+ - _sass/uswds/src/packages/_typography.scss
289
+ - _sass/uswds/src/packages/_usa-accordion.scss
290
+ - _sass/uswds/src/packages/_usa-alert.scss
291
+ - _sass/uswds/src/packages/_usa-banner.scss
292
+ - _sass/uswds/src/packages/_usa-button-group.scss
293
+ - _sass/uswds/src/packages/_usa-button.scss
294
+ - _sass/uswds/src/packages/_usa-card.scss
295
+ - _sass/uswds/src/packages/_usa-checklist.scss
296
+ - _sass/uswds/src/packages/_usa-footer.scss
297
+ - _sass/uswds/src/packages/_usa-header.scss
298
+ - _sass/uswds/src/packages/_usa-hero.scss
299
+ - _sass/uswds/src/packages/_usa-media-block.scss
300
+ - _sass/uswds/src/packages/_usa-megamenu.scss
301
+ - _sass/uswds/src/packages/_usa-nav-container.scss
302
+ - _sass/uswds/src/packages/_usa-nav.scss
303
+ - _sass/uswds/src/packages/_usa-navbar.scss
304
+ - _sass/uswds/src/packages/_usa-search.scss
305
+ - _sass/uswds/src/packages/_usa-sidenav.scss
306
+ - _sass/uswds/src/packages/_usa-skipnav.scss
307
+ - _sass/uswds/src/packages/_usa-table.scss
308
+ - _sass/uswds/src/packages/_usa-tag.scss
309
+ - _sass/uswds/src/packages/_uswds-components.scss
310
+ - _sass/uswds/src/packages/_uswds-fonts.scss
311
+ - _sass/uswds/src/packages/_uswds-utilities.scss
312
+ - _sass/uswds/src/packages/_validation.scss
313
+ - _sass/uswds/src/settings/_settings-color.scss
314
+ - _sass/uswds/src/settings/_settings-components.scss
315
+ - _sass/uswds/src/settings/_settings-general.scss
316
+ - _sass/uswds/src/settings/_settings-spacing.scss
317
+ - _sass/uswds/src/settings/_settings-typography.scss
318
+ - _sass/uswds/src/settings/_settings-utilities.scss
319
+ - _sass/uswds/src/theme/_uswds-theme-color.scss
320
+ - _sass/uswds/src/theme/_uswds-theme-components.scss
321
+ - _sass/uswds/src/theme/_uswds-theme-custom-styles.scss
322
+ - _sass/uswds/src/theme/_uswds-theme-general.scss
323
+ - _sass/uswds/src/theme/_uswds-theme-spacing.scss
324
+ - _sass/uswds/src/theme/_uswds-theme-typography.scss
325
+ - _sass/uswds/src/theme/_uswds-theme-utilities.scss
326
+ - _sass/uswds/src/theme/styles.scss
327
+ - _sass/uswds/src/uswds.scss
328
+ - _sass/uswds/src/utilities/palettes/_all.scss
329
+ - _sass/uswds/src/utilities/palettes/_default-palettes.scss
330
+ - _sass/uswds/src/utilities/palettes/_font-palettes.scss
331
+ - _sass/uswds/src/utilities/palettes/_palette-registry.scss
332
+ - _sass/uswds/src/utilities/palettes/_spacing-palettes.scss
333
+ - _sass/uswds/src/utilities/palettes/colors/_all-colors-palettes.scss
334
+ - _sass/uswds/src/utilities/palettes/colors/_black-transparent-palettes.scss
335
+ - _sass/uswds/src/utilities/palettes/colors/_blue-cool-palettes.scss
336
+ - _sass/uswds/src/utilities/palettes/colors/_blue-palettes.scss
337
+ - _sass/uswds/src/utilities/palettes/colors/_blue-warm-palettes.scss
338
+ - _sass/uswds/src/utilities/palettes/colors/_cyan-palettes.scss
339
+ - _sass/uswds/src/utilities/palettes/colors/_gold-palettes.scss
340
+ - _sass/uswds/src/utilities/palettes/colors/_gray-cool-palettes.scss
341
+ - _sass/uswds/src/utilities/palettes/colors/_gray-palettes.scss
342
+ - _sass/uswds/src/utilities/palettes/colors/_gray-warm-palettes.scss
343
+ - _sass/uswds/src/utilities/palettes/colors/_green-cool-palettes.scss
344
+ - _sass/uswds/src/utilities/palettes/colors/_green-palettes.scss
345
+ - _sass/uswds/src/utilities/palettes/colors/_green-warm-palettes.scss
346
+ - _sass/uswds/src/utilities/palettes/colors/_indigo-cool-palettes.scss
347
+ - _sass/uswds/src/utilities/palettes/colors/_indigo-palettes.scss
348
+ - _sass/uswds/src/utilities/palettes/colors/_indigo-warm-palettes.scss
349
+ - _sass/uswds/src/utilities/palettes/colors/_magenta-palettes.scss
350
+ - _sass/uswds/src/utilities/palettes/colors/_mint-cool-palettes.scss
351
+ - _sass/uswds/src/utilities/palettes/colors/_mint-palettes.scss
352
+ - _sass/uswds/src/utilities/palettes/colors/_orange-palettes.scss
353
+ - _sass/uswds/src/utilities/palettes/colors/_orange-warm-palettes.scss
354
+ - _sass/uswds/src/utilities/palettes/colors/_red-cool-palettes.scss
355
+ - _sass/uswds/src/utilities/palettes/colors/_red-palettes.scss
356
+ - _sass/uswds/src/utilities/palettes/colors/_red-warm-palettes.scss
357
+ - _sass/uswds/src/utilities/palettes/colors/_violet-palettes.scss
358
+ - _sass/uswds/src/utilities/palettes/colors/_violet-warm-palettes.scss
359
+ - _sass/uswds/src/utilities/palettes/colors/_white-transparent-palettes.scss
360
+ - _sass/uswds/src/utilities/palettes/colors/_yellow-palettes.scss
361
+ - _sass/uswds/src/utilities/rules/_all.scss
362
+ - _sass/uswds/src/utilities/rules/_package.scss
363
+ - _sass/uswds/src/utilities/rules/add-aspect.scss
364
+ - _sass/uswds/src/utilities/rules/add-list-reset.scss
365
+ - _sass/uswds/src/utilities/rules/align-items.scss
366
+ - _sass/uswds/src/utilities/rules/background-color.scss
367
+ - _sass/uswds/src/utilities/rules/border-color.scss
368
+ - _sass/uswds/src/utilities/rules/border-radius.scss
369
+ - _sass/uswds/src/utilities/rules/border-style.scss
370
+ - _sass/uswds/src/utilities/rules/border-width.scss
371
+ - _sass/uswds/src/utilities/rules/border.scss
372
+ - _sass/uswds/src/utilities/rules/bottom.scss
373
+ - _sass/uswds/src/utilities/rules/box-shadow.scss
374
+ - _sass/uswds/src/utilities/rules/circle.scss
375
+ - _sass/uswds/src/utilities/rules/clearfix.scss
376
+ - _sass/uswds/src/utilities/rules/color.scss
377
+ - _sass/uswds/src/utilities/rules/cursor.scss
378
+ - _sass/uswds/src/utilities/rules/display.scss
379
+ - _sass/uswds/src/utilities/rules/flex-direction.scss
380
+ - _sass/uswds/src/utilities/rules/flex-wrap.scss
381
+ - _sass/uswds/src/utilities/rules/flex.scss
382
+ - _sass/uswds/src/utilities/rules/float.scss
383
+ - _sass/uswds/src/utilities/rules/font-family.scss
384
+ - _sass/uswds/src/utilities/rules/font-feature.scss
385
+ - _sass/uswds/src/utilities/rules/font-style.scss
386
+ - _sass/uswds/src/utilities/rules/font-weight.scss
387
+ - _sass/uswds/src/utilities/rules/font.scss
388
+ - _sass/uswds/src/utilities/rules/height.scss
389
+ - _sass/uswds/src/utilities/rules/justify-content.scss
390
+ - _sass/uswds/src/utilities/rules/left.scss
391
+ - _sass/uswds/src/utilities/rules/letter-spacing.scss
392
+ - _sass/uswds/src/utilities/rules/line-height.scss
393
+ - _sass/uswds/src/utilities/rules/margin.scss
394
+ - _sass/uswds/src/utilities/rules/max-height.scss
395
+ - _sass/uswds/src/utilities/rules/max-width.scss
396
+ - _sass/uswds/src/utilities/rules/measure.scss
397
+ - _sass/uswds/src/utilities/rules/min-height.scss
398
+ - _sass/uswds/src/utilities/rules/min-width.scss
399
+ - _sass/uswds/src/utilities/rules/opacity.scss
400
+ - _sass/uswds/src/utilities/rules/order.scss
401
+ - _sass/uswds/src/utilities/rules/outline-color.scss
402
+ - _sass/uswds/src/utilities/rules/outline.scss
403
+ - _sass/uswds/src/utilities/rules/overflow.scss
404
+ - _sass/uswds/src/utilities/rules/padding.scss
405
+ - _sass/uswds/src/utilities/rules/pin.scss
406
+ - _sass/uswds/src/utilities/rules/position.scss
407
+ - _sass/uswds/src/utilities/rules/right.scss
408
+ - _sass/uswds/src/utilities/rules/square.scss
409
+ - _sass/uswds/src/utilities/rules/text-align.scss
410
+ - _sass/uswds/src/utilities/rules/text-decoration-color.scss
411
+ - _sass/uswds/src/utilities/rules/text-decoration.scss
412
+ - _sass/uswds/src/utilities/rules/text-indent.scss
413
+ - _sass/uswds/src/utilities/rules/text-transform.scss
414
+ - _sass/uswds/src/utilities/rules/top.scss
415
+ - _sass/uswds/src/utilities/rules/vertical-align.scss
416
+ - _sass/uswds/src/utilities/rules/whitespace.scss
417
+ - _sass/uswds/src/utilities/rules/width.scss
418
+ - _sass/uswds/src/utilities/rules/z-index.scss
419
+ - _sass/uswds/src/utilities/utility-fonts.scss
420
+ - assets/css/uswds-theme.scss
421
+ - assets/img/circle.png
422
+ - assets/img/hero.png
423
+ - assets/img/project-images/project-placeholder.png
424
+ - assets/img/team-images/team-placeholder.png
224
425
  - assets/js/main.js
225
426
  - assets/js/vendor/anchor.min.js
226
- - assets/uswds/css/uswds.css
227
- - assets/uswds/css/uswds.min.css
228
- - assets/uswds/css/uswds.min.css.map
229
- - assets/uswds/fonts/merriweather-bold-webfont.eot
230
- - assets/uswds/fonts/merriweather-bold-webfont.ttf
231
- - assets/uswds/fonts/merriweather-bold-webfont.woff
232
- - assets/uswds/fonts/merriweather-bold-webfont.woff2
233
- - assets/uswds/fonts/merriweather-italic-webfont.eot
234
- - assets/uswds/fonts/merriweather-italic-webfont.ttf
235
- - assets/uswds/fonts/merriweather-italic-webfont.woff
236
- - assets/uswds/fonts/merriweather-italic-webfont.woff2
237
- - assets/uswds/fonts/merriweather-light-webfont.eot
238
- - assets/uswds/fonts/merriweather-light-webfont.ttf
239
- - assets/uswds/fonts/merriweather-light-webfont.woff
240
- - assets/uswds/fonts/merriweather-light-webfont.woff2
241
- - assets/uswds/fonts/merriweather-regular-webfont.eot
242
- - assets/uswds/fonts/merriweather-regular-webfont.ttf
243
- - assets/uswds/fonts/merriweather-regular-webfont.woff
244
- - assets/uswds/fonts/merriweather-regular-webfont.woff2
245
- - assets/uswds/fonts/sourcesanspro-bold-webfont.eot
246
- - assets/uswds/fonts/sourcesanspro-bold-webfont.ttf
247
- - assets/uswds/fonts/sourcesanspro-bold-webfont.woff
248
- - assets/uswds/fonts/sourcesanspro-bold-webfont.woff2
249
- - assets/uswds/fonts/sourcesanspro-italic-webfont.eot
250
- - assets/uswds/fonts/sourcesanspro-italic-webfont.ttf
251
- - assets/uswds/fonts/sourcesanspro-italic-webfont.woff
252
- - assets/uswds/fonts/sourcesanspro-italic-webfont.woff2
253
- - assets/uswds/fonts/sourcesanspro-light-webfont.eot
254
- - assets/uswds/fonts/sourcesanspro-light-webfont.ttf
255
- - assets/uswds/fonts/sourcesanspro-light-webfont.woff
256
- - assets/uswds/fonts/sourcesanspro-light-webfont.woff2
257
- - assets/uswds/fonts/sourcesanspro-regular-webfont.eot
258
- - assets/uswds/fonts/sourcesanspro-regular-webfont.ttf
259
- - assets/uswds/fonts/sourcesanspro-regular-webfont.woff
260
- - assets/uswds/fonts/sourcesanspro-regular-webfont.woff2
261
- - assets/uswds/img/alerts/error.png
427
+ - assets/uswds/fonts/merriweather/Latin-Merriweather-Black.ttf
428
+ - assets/uswds/fonts/merriweather/Latin-Merriweather-Black.woff
429
+ - assets/uswds/fonts/merriweather/Latin-Merriweather-Black.woff2
430
+ - assets/uswds/fonts/merriweather/Latin-Merriweather-BlackItalic.ttf
431
+ - assets/uswds/fonts/merriweather/Latin-Merriweather-BlackItalic.woff
432
+ - assets/uswds/fonts/merriweather/Latin-Merriweather-BlackItalic.woff2
433
+ - assets/uswds/fonts/merriweather/Latin-Merriweather-Bold.ttf
434
+ - assets/uswds/fonts/merriweather/Latin-Merriweather-Bold.woff
435
+ - assets/uswds/fonts/merriweather/Latin-Merriweather-Bold.woff2
436
+ - assets/uswds/fonts/merriweather/Latin-Merriweather-BoldItalic.ttf
437
+ - assets/uswds/fonts/merriweather/Latin-Merriweather-BoldItalic.woff
438
+ - assets/uswds/fonts/merriweather/Latin-Merriweather-BoldItalic.woff2
439
+ - assets/uswds/fonts/merriweather/Latin-Merriweather-Italic.ttf
440
+ - assets/uswds/fonts/merriweather/Latin-Merriweather-Italic.woff
441
+ - assets/uswds/fonts/merriweather/Latin-Merriweather-Italic.woff2
442
+ - assets/uswds/fonts/merriweather/Latin-Merriweather-Light.ttf
443
+ - assets/uswds/fonts/merriweather/Latin-Merriweather-Light.woff
444
+ - assets/uswds/fonts/merriweather/Latin-Merriweather-Light.woff2
445
+ - assets/uswds/fonts/merriweather/Latin-Merriweather-LightItalic.ttf
446
+ - assets/uswds/fonts/merriweather/Latin-Merriweather-LightItalic.woff
447
+ - assets/uswds/fonts/merriweather/Latin-Merriweather-LightItalic.woff2
448
+ - assets/uswds/fonts/merriweather/Latin-Merriweather-Regular.ttf
449
+ - assets/uswds/fonts/merriweather/Latin-Merriweather-Regular.woff
450
+ - assets/uswds/fonts/merriweather/Latin-Merriweather-Regular.woff2
451
+ - assets/uswds/fonts/public-sans/PublicSans-Black.ttf
452
+ - assets/uswds/fonts/public-sans/PublicSans-Black.woff
453
+ - assets/uswds/fonts/public-sans/PublicSans-Black.woff2
454
+ - assets/uswds/fonts/public-sans/PublicSans-BlackItalic.ttf
455
+ - assets/uswds/fonts/public-sans/PublicSans-BlackItalic.woff
456
+ - assets/uswds/fonts/public-sans/PublicSans-BlackItalic.woff2
457
+ - assets/uswds/fonts/public-sans/PublicSans-Bold.ttf
458
+ - assets/uswds/fonts/public-sans/PublicSans-Bold.woff
459
+ - assets/uswds/fonts/public-sans/PublicSans-Bold.woff2
460
+ - assets/uswds/fonts/public-sans/PublicSans-BoldItalic.ttf
461
+ - assets/uswds/fonts/public-sans/PublicSans-BoldItalic.woff
462
+ - assets/uswds/fonts/public-sans/PublicSans-BoldItalic.woff2
463
+ - assets/uswds/fonts/public-sans/PublicSans-ExtraBold.ttf
464
+ - assets/uswds/fonts/public-sans/PublicSans-ExtraBold.woff
465
+ - assets/uswds/fonts/public-sans/PublicSans-ExtraBold.woff2
466
+ - assets/uswds/fonts/public-sans/PublicSans-ExtraBoldItalic.ttf
467
+ - assets/uswds/fonts/public-sans/PublicSans-ExtraBoldItalic.woff
468
+ - assets/uswds/fonts/public-sans/PublicSans-ExtraBoldItalic.woff2
469
+ - assets/uswds/fonts/public-sans/PublicSans-ExtraLight.ttf
470
+ - assets/uswds/fonts/public-sans/PublicSans-ExtraLight.woff
471
+ - assets/uswds/fonts/public-sans/PublicSans-ExtraLight.woff2
472
+ - assets/uswds/fonts/public-sans/PublicSans-ExtraLightItalic.ttf
473
+ - assets/uswds/fonts/public-sans/PublicSans-ExtraLightItalic.woff
474
+ - assets/uswds/fonts/public-sans/PublicSans-ExtraLightItalic.woff2
475
+ - assets/uswds/fonts/public-sans/PublicSans-Italic.ttf
476
+ - assets/uswds/fonts/public-sans/PublicSans-Italic.woff
477
+ - assets/uswds/fonts/public-sans/PublicSans-Italic.woff2
478
+ - assets/uswds/fonts/public-sans/PublicSans-Light.ttf
479
+ - assets/uswds/fonts/public-sans/PublicSans-Light.woff
480
+ - assets/uswds/fonts/public-sans/PublicSans-Light.woff2
481
+ - assets/uswds/fonts/public-sans/PublicSans-LightItalic.ttf
482
+ - assets/uswds/fonts/public-sans/PublicSans-LightItalic.woff
483
+ - assets/uswds/fonts/public-sans/PublicSans-LightItalic.woff2
484
+ - assets/uswds/fonts/public-sans/PublicSans-Medium.ttf
485
+ - assets/uswds/fonts/public-sans/PublicSans-Medium.woff
486
+ - assets/uswds/fonts/public-sans/PublicSans-Medium.woff2
487
+ - assets/uswds/fonts/public-sans/PublicSans-MediumItalic.ttf
488
+ - assets/uswds/fonts/public-sans/PublicSans-MediumItalic.woff
489
+ - assets/uswds/fonts/public-sans/PublicSans-MediumItalic.woff2
490
+ - assets/uswds/fonts/public-sans/PublicSans-Regular.ttf
491
+ - assets/uswds/fonts/public-sans/PublicSans-Regular.woff
492
+ - assets/uswds/fonts/public-sans/PublicSans-Regular.woff2
493
+ - assets/uswds/fonts/public-sans/PublicSans-SemiBold.ttf
494
+ - assets/uswds/fonts/public-sans/PublicSans-SemiBold.woff
495
+ - assets/uswds/fonts/public-sans/PublicSans-SemiBold.woff2
496
+ - assets/uswds/fonts/public-sans/PublicSans-SemiBoldItalic.ttf
497
+ - assets/uswds/fonts/public-sans/PublicSans-SemiBoldItalic.woff
498
+ - assets/uswds/fonts/public-sans/PublicSans-SemiBoldItalic.woff2
499
+ - assets/uswds/fonts/public-sans/PublicSans-Thin.ttf
500
+ - assets/uswds/fonts/public-sans/PublicSans-Thin.woff
501
+ - assets/uswds/fonts/public-sans/PublicSans-Thin.woff2
502
+ - assets/uswds/fonts/public-sans/PublicSans-ThinItalic.ttf
503
+ - assets/uswds/fonts/public-sans/PublicSans-ThinItalic.woff
504
+ - assets/uswds/fonts/public-sans/PublicSans-ThinItalic.woff2
505
+ - assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-100.ttf
506
+ - assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-100.woff
507
+ - assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-100.woff2
508
+ - assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-100italic.ttf
509
+ - assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-100italic.woff
510
+ - assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-100italic.woff2
511
+ - assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-300.ttf
512
+ - assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-300.woff
513
+ - assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-300.woff2
514
+ - assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-300italic.ttf
515
+ - assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-300italic.woff
516
+ - assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-300italic.woff2
517
+ - assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-500.ttf
518
+ - assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-500.woff
519
+ - assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-500.woff2
520
+ - assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-500italic.ttf
521
+ - assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-500italic.woff
522
+ - assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-500italic.woff2
523
+ - assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-700.ttf
524
+ - assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-700.woff
525
+ - assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-700.woff2
526
+ - assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-700italic.ttf
527
+ - assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-700italic.woff
528
+ - assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-700italic.woff2
529
+ - assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-italic.ttf
530
+ - assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-italic.woff
531
+ - assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-italic.woff2
532
+ - assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-regular.ttf
533
+ - assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-regular.woff
534
+ - assets/uswds/fonts/roboto-mono/roboto-mono-v5-latin-regular.woff2
535
+ - assets/uswds/fonts/source-sans-pro/sourcesanspro-black-webfont.ttf
536
+ - assets/uswds/fonts/source-sans-pro/sourcesanspro-black-webfont.woff
537
+ - assets/uswds/fonts/source-sans-pro/sourcesanspro-black-webfont.woff2
538
+ - assets/uswds/fonts/source-sans-pro/sourcesanspro-blackitalic-webfont.ttf
539
+ - assets/uswds/fonts/source-sans-pro/sourcesanspro-blackitalic-webfont.woff
540
+ - assets/uswds/fonts/source-sans-pro/sourcesanspro-blackitalic-webfont.woff2
541
+ - assets/uswds/fonts/source-sans-pro/sourcesanspro-bold-webfont.ttf
542
+ - assets/uswds/fonts/source-sans-pro/sourcesanspro-bold-webfont.woff
543
+ - assets/uswds/fonts/source-sans-pro/sourcesanspro-bold-webfont.woff2
544
+ - assets/uswds/fonts/source-sans-pro/sourcesanspro-bolditalic-webfont.ttf
545
+ - assets/uswds/fonts/source-sans-pro/sourcesanspro-bolditalic-webfont.woff
546
+ - assets/uswds/fonts/source-sans-pro/sourcesanspro-bolditalic-webfont.woff2
547
+ - assets/uswds/fonts/source-sans-pro/sourcesanspro-extralight-webfont.ttf
548
+ - assets/uswds/fonts/source-sans-pro/sourcesanspro-extralight-webfont.woff
549
+ - assets/uswds/fonts/source-sans-pro/sourcesanspro-extralight-webfont.woff2
550
+ - assets/uswds/fonts/source-sans-pro/sourcesanspro-extralightitalic-webfont.ttf
551
+ - assets/uswds/fonts/source-sans-pro/sourcesanspro-extralightitalic-webfont.woff
552
+ - assets/uswds/fonts/source-sans-pro/sourcesanspro-extralightitalic-webfont.woff2
553
+ - assets/uswds/fonts/source-sans-pro/sourcesanspro-italic-webfont.ttf
554
+ - assets/uswds/fonts/source-sans-pro/sourcesanspro-italic-webfont.woff
555
+ - assets/uswds/fonts/source-sans-pro/sourcesanspro-italic-webfont.woff2
556
+ - assets/uswds/fonts/source-sans-pro/sourcesanspro-light-webfont.ttf
557
+ - assets/uswds/fonts/source-sans-pro/sourcesanspro-light-webfont.woff
558
+ - assets/uswds/fonts/source-sans-pro/sourcesanspro-light-webfont.woff2
559
+ - assets/uswds/fonts/source-sans-pro/sourcesanspro-lightitalic-webfont.ttf
560
+ - assets/uswds/fonts/source-sans-pro/sourcesanspro-lightitalic-webfont.woff
561
+ - assets/uswds/fonts/source-sans-pro/sourcesanspro-lightitalic-webfont.woff2
562
+ - assets/uswds/fonts/source-sans-pro/sourcesanspro-regular-webfont.ttf
563
+ - assets/uswds/fonts/source-sans-pro/sourcesanspro-regular-webfont.woff
564
+ - assets/uswds/fonts/source-sans-pro/sourcesanspro-regular-webfont.woff2
565
+ - assets/uswds/fonts/source-sans-pro/sourcesanspro-semibold-webfont.ttf
566
+ - assets/uswds/fonts/source-sans-pro/sourcesanspro-semibold-webfont.woff
567
+ - assets/uswds/fonts/source-sans-pro/sourcesanspro-semibold-webfont.woff2
568
+ - assets/uswds/fonts/source-sans-pro/sourcesanspro-semibolditalic-webfont.ttf
569
+ - assets/uswds/fonts/source-sans-pro/sourcesanspro-semibolditalic-webfont.woff
570
+ - assets/uswds/fonts/source-sans-pro/sourcesanspro-semibolditalic-webfont.woff2
262
571
  - assets/uswds/img/alerts/error.svg
263
- - assets/uswds/img/alerts/info.png
264
572
  - assets/uswds/img/alerts/info.svg
265
- - assets/uswds/img/alerts/success.png
266
573
  - assets/uswds/img/alerts/success.svg
267
- - assets/uswds/img/alerts/warning.png
268
574
  - assets/uswds/img/alerts/warning.svg
269
- - assets/uswds/img/angle-arrow-down-hover.png
270
575
  - assets/uswds/img/angle-arrow-down-hover.svg
271
- - assets/uswds/img/angle-arrow-down-primary-hover.png
272
576
  - assets/uswds/img/angle-arrow-down-primary-hover.svg
273
- - assets/uswds/img/angle-arrow-down-primary.png
274
577
  - assets/uswds/img/angle-arrow-down-primary.svg
275
- - assets/uswds/img/angle-arrow-down.png
578
+ - assets/uswds/img/angle-arrow-down-white.svg
276
579
  - assets/uswds/img/angle-arrow-down.svg
277
- - assets/uswds/img/angle-arrow-up-primary-hover.png
278
580
  - assets/uswds/img/angle-arrow-up-primary-hover.svg
279
- - assets/uswds/img/angle-arrow-up-primary.png
280
581
  - assets/uswds/img/angle-arrow-up-primary.svg
281
- - assets/uswds/img/arrow-both.png
582
+ - assets/uswds/img/angle-arrow-up-white.svg
282
583
  - assets/uswds/img/arrow-both.svg
283
- - assets/uswds/img/arrow-down.png
284
584
  - assets/uswds/img/arrow-down.svg
285
- - assets/uswds/img/arrow-right.png
286
585
  - assets/uswds/img/arrow-right.svg
586
+ - assets/uswds/img/checkbox-check-print.svg
287
587
  - assets/uswds/img/circle-124.png
288
- - assets/uswds/img/close-primary.png
588
+ - assets/uswds/img/close-blue-30-alt.svg
589
+ - assets/uswds/img/close-blue-40v-alt.svg
590
+ - assets/uswds/img/close-blue-50-alt.svg
591
+ - assets/uswds/img/close-blue-50v-alt.svg
592
+ - assets/uswds/img/close-blue-60-alt.svg
593
+ - assets/uswds/img/close-blue-60v-alt.svg
594
+ - assets/uswds/img/close-gray-90-alt.svg
289
595
  - assets/uswds/img/close-primary.svg
290
- - assets/uswds/img/close.png
596
+ - assets/uswds/img/close-white-alt.svg
597
+ - assets/uswds/img/close-white.svg
291
598
  - assets/uswds/img/close.svg
292
- - assets/uswds/img/correct8.png
599
+ - assets/uswds/img/correct8-alt.png
600
+ - assets/uswds/img/correct8-alt.svg
293
601
  - assets/uswds/img/correct8.svg
294
- - assets/uswds/img/correct9.png
295
602
  - assets/uswds/img/correct9.svg
296
- - assets/uswds/img/external-link-alt-hover.png
297
603
  - assets/uswds/img/external-link-alt-hover.svg
298
- - assets/uswds/img/external-link-alt.png
299
604
  - assets/uswds/img/external-link-alt.svg
300
- - assets/uswds/img/external-link-hover.png
301
605
  - assets/uswds/img/external-link-hover.svg
302
- - assets/uswds/img/external-link.png
303
606
  - assets/uswds/img/external-link.svg
304
607
  - assets/uswds/img/favicons/favicon-114.png
305
608
  - assets/uswds/img/favicons/favicon-144.png
@@ -314,166 +617,26 @@ files:
314
617
  - assets/uswds/img/icon-dot-gov.svg
315
618
  - assets/uswds/img/icon-https.svg
316
619
  - assets/uswds/img/logo-img.png
317
- - assets/uswds/img/minus-alt.png
318
620
  - assets/uswds/img/minus-alt.svg
319
- - assets/uswds/img/minus.png
320
621
  - assets/uswds/img/minus.svg
321
- - assets/uswds/img/plus-alt.png
322
622
  - assets/uswds/img/plus-alt.svg
323
- - assets/uswds/img/plus.png
324
623
  - assets/uswds/img/plus.svg
325
- - assets/uswds/img/search-alt.png
326
624
  - assets/uswds/img/search-alt.svg
327
- - assets/uswds/img/search-primary.png
328
625
  - assets/uswds/img/search-primary.svg
329
- - assets/uswds/img/search.png
330
626
  - assets/uswds/img/search.svg
331
- - assets/uswds/img/social-icons/png/facebook25.png
332
- - assets/uswds/img/social-icons/png/rss25.png
333
- - assets/uswds/img/social-icons/png/twitter16.png
334
- - assets/uswds/img/social-icons/png/youtube15.png
335
- - assets/uswds/img/social-icons/svg/facebook25.svg
336
- - assets/uswds/img/social-icons/svg/rss25.svg
337
- - assets/uswds/img/social-icons/svg/twitter16.svg
338
- - assets/uswds/img/social-icons/svg/youtube15.svg
627
+ - assets/uswds/img/social-icons/facebook25.png
628
+ - assets/uswds/img/social-icons/facebook25.svg
629
+ - assets/uswds/img/social-icons/rss25.png
630
+ - assets/uswds/img/social-icons/rss25.svg
631
+ - assets/uswds/img/social-icons/twitter16.png
632
+ - assets/uswds/img/social-icons/twitter16.svg
633
+ - assets/uswds/img/social-icons/youtube15.png
634
+ - assets/uswds/img/social-icons/youtube15.svg
339
635
  - assets/uswds/img/us_flag_small.png
340
636
  - assets/uswds/js/uswds.js
341
637
  - assets/uswds/js/uswds.min.js
342
638
  - assets/uswds/js/uswds.min.js.map
343
- - assets/uswds/scss/_all.scss
344
- - assets/uswds/scss/components/_accordions.scss
345
- - assets/uswds/scss/components/_alerts.scss
346
- - assets/uswds/scss/components/_banner.scss
347
- - assets/uswds/scss/components/_footer.scss
348
- - assets/uswds/scss/components/_forms.scss
349
- - assets/uswds/scss/components/_graphic-list.scss
350
- - assets/uswds/scss/components/_header.scss
351
- - assets/uswds/scss/components/_hero.scss
352
- - assets/uswds/scss/components/_layout.scss
353
- - assets/uswds/scss/components/_media-block.scss
354
- - assets/uswds/scss/components/_navigation.scss
355
- - assets/uswds/scss/components/_search.scss
356
- - assets/uswds/scss/components/_section.scss
357
- - assets/uswds/scss/components/_sidenav.scss
358
- - assets/uswds/scss/components/_skipnav.scss
359
- - assets/uswds/scss/core/_base.scss
360
- - assets/uswds/scss/core/_defaults.scss
361
- - assets/uswds/scss/core/_fonts.scss
362
- - assets/uswds/scss/core/_grid-settings.scss
363
- - assets/uswds/scss/core/_grid.scss
364
- - assets/uswds/scss/core/_utilities.scss
365
- - assets/uswds/scss/core/_variables.scss
366
- - assets/uswds/scss/elements/_buttons.scss
367
- - assets/uswds/scss/elements/_embed.scss
368
- - assets/uswds/scss/elements/_figure.scss
369
- - assets/uswds/scss/elements/_inputs.scss
370
- - assets/uswds/scss/elements/_labels.scss
371
- - assets/uswds/scss/elements/_list.scss
372
- - assets/uswds/scss/elements/_table.scss
373
- - assets/uswds/scss/elements/_typography.scss
374
- - assets/uswds/scss/lib/_bourbon-deprecated-upcoming.scss
375
- - assets/uswds/scss/lib/_bourbon.scss
376
- - assets/uswds/scss/lib/_neat-helpers.scss
377
- - assets/uswds/scss/lib/_neat.scss
378
- - assets/uswds/scss/lib/_normalize.scss
379
- - assets/uswds/scss/lib/addons/_border-color.scss
380
- - assets/uswds/scss/lib/addons/_border-radius.scss
381
- - assets/uswds/scss/lib/addons/_border-style.scss
382
- - assets/uswds/scss/lib/addons/_border-width.scss
383
- - assets/uswds/scss/lib/addons/_buttons.scss
384
- - assets/uswds/scss/lib/addons/_clearfix.scss
385
- - assets/uswds/scss/lib/addons/_ellipsis.scss
386
- - assets/uswds/scss/lib/addons/_font-stacks.scss
387
- - assets/uswds/scss/lib/addons/_hide-text.scss
388
- - assets/uswds/scss/lib/addons/_margin.scss
389
- - assets/uswds/scss/lib/addons/_padding.scss
390
- - assets/uswds/scss/lib/addons/_position.scss
391
- - assets/uswds/scss/lib/addons/_prefixer.scss
392
- - assets/uswds/scss/lib/addons/_retina-image.scss
393
- - assets/uswds/scss/lib/addons/_size.scss
394
- - assets/uswds/scss/lib/addons/_text-inputs.scss
395
- - assets/uswds/scss/lib/addons/_timing-functions.scss
396
- - assets/uswds/scss/lib/addons/_triangle.scss
397
- - assets/uswds/scss/lib/addons/_word-wrap.scss
398
- - assets/uswds/scss/lib/css3/_animation.scss
399
- - assets/uswds/scss/lib/css3/_appearance.scss
400
- - assets/uswds/scss/lib/css3/_backface-visibility.scss
401
- - assets/uswds/scss/lib/css3/_background-image.scss
402
- - assets/uswds/scss/lib/css3/_background.scss
403
- - assets/uswds/scss/lib/css3/_border-image.scss
404
- - assets/uswds/scss/lib/css3/_calc.scss
405
- - assets/uswds/scss/lib/css3/_columns.scss
406
- - assets/uswds/scss/lib/css3/_filter.scss
407
- - assets/uswds/scss/lib/css3/_flex-box.scss
408
- - assets/uswds/scss/lib/css3/_font-face.scss
409
- - assets/uswds/scss/lib/css3/_font-feature-settings.scss
410
- - assets/uswds/scss/lib/css3/_hidpi-media-query.scss
411
- - assets/uswds/scss/lib/css3/_hyphens.scss
412
- - assets/uswds/scss/lib/css3/_image-rendering.scss
413
- - assets/uswds/scss/lib/css3/_keyframes.scss
414
- - assets/uswds/scss/lib/css3/_linear-gradient.scss
415
- - assets/uswds/scss/lib/css3/_perspective.scss
416
- - assets/uswds/scss/lib/css3/_placeholder.scss
417
- - assets/uswds/scss/lib/css3/_radial-gradient.scss
418
- - assets/uswds/scss/lib/css3/_selection.scss
419
- - assets/uswds/scss/lib/css3/_text-decoration.scss
420
- - assets/uswds/scss/lib/css3/_transform.scss
421
- - assets/uswds/scss/lib/css3/_transition.scss
422
- - assets/uswds/scss/lib/css3/_user-select.scss
423
- - assets/uswds/scss/lib/functions/_assign-inputs.scss
424
- - assets/uswds/scss/lib/functions/_contains-falsy.scss
425
- - assets/uswds/scss/lib/functions/_contains.scss
426
- - assets/uswds/scss/lib/functions/_is-length.scss
427
- - assets/uswds/scss/lib/functions/_is-light.scss
428
- - assets/uswds/scss/lib/functions/_is-number.scss
429
- - assets/uswds/scss/lib/functions/_is-size.scss
430
- - assets/uswds/scss/lib/functions/_modular-scale.scss
431
- - assets/uswds/scss/lib/functions/_new-breakpoint.scss
432
- - assets/uswds/scss/lib/functions/_private.scss
433
- - assets/uswds/scss/lib/functions/_px-to-em.scss
434
- - assets/uswds/scss/lib/functions/_px-to-rem.scss
435
- - assets/uswds/scss/lib/functions/_shade.scss
436
- - assets/uswds/scss/lib/functions/_strip-units.scss
437
- - assets/uswds/scss/lib/functions/_tint.scss
438
- - assets/uswds/scss/lib/functions/_transition-property-name.scss
439
- - assets/uswds/scss/lib/functions/_unpack.scss
440
- - assets/uswds/scss/lib/grid/_box-sizing.scss
441
- - assets/uswds/scss/lib/grid/_direction-context.scss
442
- - assets/uswds/scss/lib/grid/_display-context.scss
443
- - assets/uswds/scss/lib/grid/_fill-parent.scss
444
- - assets/uswds/scss/lib/grid/_media.scss
445
- - assets/uswds/scss/lib/grid/_omega.scss
446
- - assets/uswds/scss/lib/grid/_outer-container.scss
447
- - assets/uswds/scss/lib/grid/_pad.scss
448
- - assets/uswds/scss/lib/grid/_private.scss
449
- - assets/uswds/scss/lib/grid/_row.scss
450
- - assets/uswds/scss/lib/grid/_shift.scss
451
- - assets/uswds/scss/lib/grid/_span-columns.scss
452
- - assets/uswds/scss/lib/grid/_to-deprecate.scss
453
- - assets/uswds/scss/lib/grid/_visual-grid.scss
454
- - assets/uswds/scss/lib/helpers/_convert-units.scss
455
- - assets/uswds/scss/lib/helpers/_directional-values.scss
456
- - assets/uswds/scss/lib/helpers/_font-source-declaration.scss
457
- - assets/uswds/scss/lib/helpers/_gradient-positions-parser.scss
458
- - assets/uswds/scss/lib/helpers/_linear-angle-parser.scss
459
- - assets/uswds/scss/lib/helpers/_linear-gradient-parser.scss
460
- - assets/uswds/scss/lib/helpers/_linear-positions-parser.scss
461
- - assets/uswds/scss/lib/helpers/_linear-side-corner-parser.scss
462
- - assets/uswds/scss/lib/helpers/_radial-arg-parser.scss
463
- - assets/uswds/scss/lib/helpers/_radial-gradient-parser.scss
464
- - assets/uswds/scss/lib/helpers/_radial-positions-parser.scss
465
- - assets/uswds/scss/lib/helpers/_render-gradients.scss
466
- - assets/uswds/scss/lib/helpers/_shape-size-stripper.scss
467
- - assets/uswds/scss/lib/helpers/_str-to-num.scss
468
- - assets/uswds/scss/lib/mixins/_clearfix.scss
469
- - assets/uswds/scss/lib/settings/_asset-pipeline.scss
470
- - assets/uswds/scss/lib/settings/_disable-warnings.scss
471
- - assets/uswds/scss/lib/settings/_grid.scss
472
- - assets/uswds/scss/lib/settings/_prefixer.scss
473
- - assets/uswds/scss/lib/settings/_px-to-em.scss
474
- - assets/uswds/scss/lib/settings/_visual-grid.scss
475
- - assets/uswds/scss/uswds.scss
476
- homepage: https://standards.usa.gov/
639
+ homepage: https://designsystem.digital.gov/
477
640
  licenses:
478
641
  - CC0-1.0
479
642
  metadata: {}
@@ -492,9 +655,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
492
655
  - !ruby/object:Gem::Version
493
656
  version: '0'
494
657
  requirements: []
495
- rubyforge_project:
496
- rubygems_version: 2.6.10
658
+ rubygems_version: 3.1.4
497
659
  signing_key:
498
660
  specification_version: 4
499
- summary: A Jekyll theme for the U.S. Web Design Standards.
661
+ summary: A Jekyll theme for the U.S. Web Design System.
500
662
  test_files: []