aacinfo-theme 0.2.0 → 2.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (489) hide show
  1. checksums.yaml +8 -8
  2. data/README.md +25 -1
  3. data/_includes/footer.html +54 -0
  4. data/_includes/header.html +46 -0
  5. data/_includes/parts/content.html +6 -0
  6. data/_includes/parts/social-media.html +10 -0
  7. data/_includes/theme-menu.html +27 -28
  8. data/_layouts/theme.html +14 -26
  9. data/_layouts/title-page.html +22 -0
  10. data/_sass/_style.scss +122 -0
  11. data/_sass/components/_blockquotes.scss +62 -0
  12. data/_sass/components/_buttons.scss +100 -0
  13. data/_sass/components/_cards.scss +29 -0
  14. data/_sass/components/_dividers.scss +165 -0
  15. data/_sass/components/_featured-image.scss +14 -0
  16. data/_sass/components/_forms.scss +414 -0
  17. data/_sass/components/_links.scss +83 -0
  18. data/_sass/components/_pagination.scss +91 -0
  19. data/_sass/components/_selectric.scss +200 -0
  20. data/_sass/components/_slick-theme.scss +194 -0
  21. data/_sass/components/_slick.scss +98 -0
  22. data/_sass/components/_spinner.scss +356 -0
  23. data/_sass/components/_svg.scss +12 -0
  24. data/_sass/fontawesome/.bower.json +36 -0
  25. data/_sass/fontawesome/.gitignore +33 -0
  26. data/_sass/fontawesome/.npmignore +42 -0
  27. data/_sass/fontawesome/HELP-US-OUT.txt +7 -0
  28. data/_sass/fontawesome/bower.json +22 -0
  29. data/{assets → _sass/fontawesome}/css/font-awesome.css +547 -11
  30. data/_sass/fontawesome/css/font-awesome.css.map +7 -0
  31. data/_sass/fontawesome/css/font-awesome.min.css +4 -0
  32. data/_sass/fontawesome/fonts/FontAwesome.otf +0 -0
  33. data/_sass/fontawesome/fonts/fontawesome-webfont.eot +0 -0
  34. data/_sass/fontawesome/fonts/fontawesome-webfont.svg +2671 -0
  35. data/_sass/fontawesome/fonts/fontawesome-webfont.ttf +0 -0
  36. data/_sass/fontawesome/fonts/fontawesome-webfont.woff +0 -0
  37. data/_sass/fontawesome/fonts/fontawesome-webfont.woff2 +0 -0
  38. data/_sass/fontawesome/less/animated.less +34 -0
  39. data/_sass/fontawesome/less/bordered-pulled.less +25 -0
  40. data/_sass/fontawesome/less/core.less +12 -0
  41. data/_sass/fontawesome/less/fixed-width.less +6 -0
  42. data/_sass/fontawesome/less/font-awesome.less +18 -0
  43. data/_sass/fontawesome/less/icons.less +789 -0
  44. data/_sass/fontawesome/less/larger.less +13 -0
  45. data/_sass/fontawesome/less/list.less +19 -0
  46. data/_sass/fontawesome/less/mixins.less +60 -0
  47. data/_sass/fontawesome/less/path.less +15 -0
  48. data/_sass/fontawesome/less/rotated-flipped.less +20 -0
  49. data/_sass/fontawesome/less/screen-reader.less +5 -0
  50. data/_sass/fontawesome/less/stacked.less +20 -0
  51. data/_sass/fontawesome/less/variables.less +800 -0
  52. data/_sass/fontawesome/scss/_animated.scss +34 -0
  53. data/_sass/fontawesome/scss/_bordered-pulled.scss +25 -0
  54. data/_sass/fontawesome/scss/_core.scss +12 -0
  55. data/_sass/fontawesome/scss/_fixed-width.scss +6 -0
  56. data/_sass/fontawesome/scss/_icons.scss +789 -0
  57. data/_sass/fontawesome/scss/_larger.scss +13 -0
  58. data/_sass/fontawesome/scss/_list.scss +19 -0
  59. data/_sass/fontawesome/scss/_mixins.scss +60 -0
  60. data/_sass/fontawesome/scss/_path.scss +15 -0
  61. data/_sass/fontawesome/scss/_rotated-flipped.scss +20 -0
  62. data/_sass/fontawesome/scss/_screen-reader.scss +5 -0
  63. data/_sass/fontawesome/scss/_stacked.scss +20 -0
  64. data/_sass/fontawesome/scss/_variables.scss +800 -0
  65. data/_sass/fontawesome/scss/font-awesome.scss +18 -0
  66. data/_sass/foundation-sites/.bower.json +44 -0
  67. data/_sass/foundation-sites/.bowerrc +3 -0
  68. data/_sass/foundation-sites/.eslintrc +64 -0
  69. data/_sass/foundation-sites/.github/ISSUE_TEMPLATE.md +21 -0
  70. data/_sass/foundation-sites/.github/PULL_REQUEST_TEMPLATE.md +9 -0
  71. data/_sass/foundation-sites/.sass-lint.yml +409 -0
  72. data/_sass/foundation-sites/.travis.yml +9 -0
  73. data/_sass/foundation-sites/LICENSE +22 -0
  74. data/_sass/foundation-sites/README.md +52 -0
  75. data/_sass/foundation-sites/_vendor/normalize-scss/sass/_normalize.scss +3 -0
  76. data/_sass/foundation-sites/_vendor/normalize-scss/sass/normalize/_import-now.scss +11 -0
  77. data/_sass/foundation-sites/_vendor/normalize-scss/sass/normalize/_normalize-mixin.scss +676 -0
  78. data/_sass/foundation-sites/_vendor/normalize-scss/sass/normalize/_variables.scss +36 -0
  79. data/_sass/foundation-sites/_vendor/normalize-scss/sass/normalize/_vertical-rhythm.scss +61 -0
  80. data/_sass/foundation-sites/_vendor/sassy-lists/stylesheets/functions/_purge.scss +38 -0
  81. data/_sass/foundation-sites/_vendor/sassy-lists/stylesheets/functions/_remove.scss +31 -0
  82. data/_sass/foundation-sites/_vendor/sassy-lists/stylesheets/functions/_replace.scss +46 -0
  83. data/_sass/foundation-sites/_vendor/sassy-lists/stylesheets/functions/_to-list.scss +27 -0
  84. data/_sass/foundation-sites/_vendor/sassy-lists/stylesheets/helpers/_missing-dependencies.scss +25 -0
  85. data/_sass/foundation-sites/_vendor/sassy-lists/stylesheets/helpers/_true.scss +13 -0
  86. data/_sass/foundation-sites/assets/foundation-flex.scss +3 -0
  87. data/_sass/foundation-sites/assets/foundation-rtl.scss +5 -0
  88. data/_sass/foundation-sites/assets/foundation.scss +3 -0
  89. data/_sass/foundation-sites/bower.json +34 -0
  90. data/_sass/foundation-sites/browserstack.json +32 -0
  91. data/_sass/foundation-sites/code-of-conduct.md +43 -0
  92. data/_sass/foundation-sites/customizer/complete.json +48 -0
  93. data/_sass/foundation-sites/customizer/config.yml +228 -0
  94. data/_sass/foundation-sites/customizer/essential.json +11 -0
  95. data/_sass/foundation-sites/customizer/index.html +169 -0
  96. data/_sass/foundation-sites/dist/css/foundation-flex.css +4566 -0
  97. data/_sass/foundation-sites/dist/css/foundation-flex.min.css +2 -0
  98. data/_sass/foundation-sites/dist/css/foundation-rtl.css +4006 -0
  99. data/_sass/foundation-sites/dist/css/foundation-rtl.min.css +2 -0
  100. data/_sass/foundation-sites/dist/css/foundation.css +4001 -0
  101. data/_sass/foundation-sites/dist/css/foundation.min.css +2 -0
  102. data/_sass/foundation-sites/dist/js/foundation.d.ts +496 -0
  103. data/_sass/foundation-sites/dist/js/foundation.js +10207 -0
  104. data/_sass/foundation-sites/dist/js/foundation.min.js +4 -0
  105. data/_sass/foundation-sites/dist/js/plugins/foundation.abide.js +637 -0
  106. data/_sass/foundation-sites/dist/js/plugins/foundation.abide.min.js +1 -0
  107. data/_sass/foundation-sites/dist/js/plugins/foundation.accordion.js +252 -0
  108. data/_sass/foundation-sites/dist/js/plugins/foundation.accordion.min.js +1 -0
  109. data/_sass/foundation-sites/dist/js/plugins/foundation.accordionMenu.js +318 -0
  110. data/_sass/foundation-sites/dist/js/plugins/foundation.accordionMenu.min.js +1 -0
  111. data/_sass/foundation-sites/dist/js/plugins/foundation.core.js +386 -0
  112. data/_sass/foundation-sites/dist/js/plugins/foundation.core.min.js +1 -0
  113. data/_sass/foundation-sites/dist/js/plugins/foundation.drilldown.js +565 -0
  114. data/_sass/foundation-sites/dist/js/plugins/foundation.drilldown.min.js +1 -0
  115. data/_sass/foundation-sites/dist/js/plugins/foundation.dropdown.js +465 -0
  116. data/_sass/foundation-sites/dist/js/plugins/foundation.dropdown.min.js +1 -0
  117. data/_sass/foundation-sites/dist/js/plugins/foundation.dropdownMenu.js +486 -0
  118. data/_sass/foundation-sites/dist/js/plugins/foundation.dropdownMenu.min.js +1 -0
  119. data/_sass/foundation-sites/dist/js/plugins/foundation.equalizer.js +374 -0
  120. data/_sass/foundation-sites/dist/js/plugins/foundation.equalizer.min.js +1 -0
  121. data/_sass/foundation-sites/dist/js/plugins/foundation.interchange.js +233 -0
  122. data/_sass/foundation-sites/dist/js/plugins/foundation.interchange.min.js +1 -0
  123. data/_sass/foundation-sites/dist/js/plugins/foundation.magellan.js +285 -0
  124. data/_sass/foundation-sites/dist/js/plugins/foundation.magellan.min.js +1 -0
  125. data/_sass/foundation-sites/dist/js/plugins/foundation.offcanvas.js +474 -0
  126. data/_sass/foundation-sites/dist/js/plugins/foundation.offcanvas.min.js +1 -0
  127. data/_sass/foundation-sites/dist/js/plugins/foundation.orbit.js +566 -0
  128. data/_sass/foundation-sites/dist/js/plugins/foundation.orbit.min.js +1 -0
  129. data/_sass/foundation-sites/dist/js/plugins/foundation.responsiveMenu.js +169 -0
  130. data/_sass/foundation-sites/dist/js/plugins/foundation.responsiveMenu.min.js +1 -0
  131. data/_sass/foundation-sites/dist/js/plugins/foundation.responsiveToggle.js +177 -0
  132. data/_sass/foundation-sites/dist/js/plugins/foundation.responsiveToggle.min.js +1 -0
  133. data/_sass/foundation-sites/dist/js/plugins/foundation.reveal.js +633 -0
  134. data/_sass/foundation-sites/dist/js/plugins/foundation.reveal.min.js +1 -0
  135. data/_sass/foundation-sites/dist/js/plugins/foundation.slider.js +762 -0
  136. data/_sass/foundation-sites/dist/js/plugins/foundation.slider.min.js +1 -0
  137. data/_sass/foundation-sites/dist/js/plugins/foundation.sticky.js +518 -0
  138. data/_sass/foundation-sites/dist/js/plugins/foundation.sticky.min.js +1 -0
  139. data/_sass/foundation-sites/dist/js/plugins/foundation.tabs.js +512 -0
  140. data/_sass/foundation-sites/dist/js/plugins/foundation.tabs.min.js +1 -0
  141. data/_sass/foundation-sites/dist/js/plugins/foundation.toggler.js +169 -0
  142. data/_sass/foundation-sites/dist/js/plugins/foundation.toggler.min.js +1 -0
  143. data/_sass/foundation-sites/dist/js/plugins/foundation.tooltip.js +492 -0
  144. data/_sass/foundation-sites/dist/js/plugins/foundation.tooltip.min.js +1 -0
  145. data/_sass/foundation-sites/dist/js/plugins/foundation.util.box.js +196 -0
  146. data/_sass/foundation-sites/dist/js/plugins/foundation.util.box.min.js +1 -0
  147. data/_sass/foundation-sites/dist/js/plugins/foundation.util.keyboard.js +163 -0
  148. data/_sass/foundation-sites/dist/js/plugins/foundation.util.keyboard.min.js +1 -0
  149. data/_sass/foundation-sites/dist/js/plugins/foundation.util.mediaQuery.js +233 -0
  150. data/_sass/foundation-sites/dist/js/plugins/foundation.util.mediaQuery.min.js +1 -0
  151. data/_sass/foundation-sites/dist/js/plugins/foundation.util.motion.js +103 -0
  152. data/_sass/foundation-sites/dist/js/plugins/foundation.util.motion.min.js +1 -0
  153. data/_sass/foundation-sites/dist/js/plugins/foundation.util.nest.js +74 -0
  154. data/_sass/foundation-sites/dist/js/plugins/foundation.util.nest.min.js +1 -0
  155. data/_sass/foundation-sites/dist/js/plugins/foundation.util.timerAndImageLoader.js +90 -0
  156. data/_sass/foundation-sites/dist/js/plugins/foundation.util.timerAndImageLoader.min.js +1 -0
  157. data/_sass/foundation-sites/dist/js/plugins/foundation.util.touch.js +352 -0
  158. data/_sass/foundation-sites/dist/js/plugins/foundation.util.touch.min.js +1 -0
  159. data/_sass/foundation-sites/dist/js/plugins/foundation.util.triggers.js +261 -0
  160. data/_sass/foundation-sites/dist/js/plugins/foundation.util.triggers.min.js +1 -0
  161. data/_sass/foundation-sites/dist/js/plugins/foundation.zf.responsiveAccordionTabs.js +262 -0
  162. data/_sass/foundation-sites/dist/js/plugins/foundation.zf.responsiveAccordionTabs.min.js +1 -0
  163. data/_sass/foundation-sites/docslink.sh +3 -0
  164. data/_sass/foundation-sites/js/foundation.abide.js +584 -0
  165. data/_sass/foundation-sites/js/foundation.accordion.js +315 -0
  166. data/_sass/foundation-sites/js/foundation.accordionMenu.js +283 -0
  167. data/_sass/foundation-sites/js/foundation.core.js +378 -0
  168. data/_sass/foundation-sites/js/foundation.drilldown.js +518 -0
  169. data/_sass/foundation-sites/js/foundation.dropdown.js +432 -0
  170. data/_sass/foundation-sites/js/foundation.dropdownMenu.js +442 -0
  171. data/_sass/foundation-sites/js/foundation.equalizer.js +317 -0
  172. data/_sass/foundation-sites/js/foundation.interchange.js +203 -0
  173. data/_sass/foundation-sites/js/foundation.magellan.js +251 -0
  174. data/_sass/foundation-sites/js/foundation.offcanvas.js +434 -0
  175. data/_sass/foundation-sites/js/foundation.orbit.js +523 -0
  176. data/_sass/foundation-sites/js/foundation.responsiveMenu.js +147 -0
  177. data/_sass/foundation-sites/js/foundation.responsiveToggle.js +155 -0
  178. data/_sass/foundation-sites/js/foundation.reveal.js +603 -0
  179. data/_sass/foundation-sites/js/foundation.slider.js +697 -0
  180. data/_sass/foundation-sites/js/foundation.sticky.js +499 -0
  181. data/_sass/foundation-sites/js/foundation.tabs.js +490 -0
  182. data/_sass/foundation-sites/js/foundation.toggler.js +148 -0
  183. data/_sass/foundation-sites/js/foundation.tooltip.js +470 -0
  184. data/_sass/foundation-sites/js/foundation.util.box.js +195 -0
  185. data/_sass/foundation-sites/js/foundation.util.keyboard.js +152 -0
  186. data/_sass/foundation-sites/js/foundation.util.mediaQuery.js +230 -0
  187. data/_sass/foundation-sites/js/foundation.util.motion.js +105 -0
  188. data/_sass/foundation-sites/js/foundation.util.nest.js +81 -0
  189. data/_sass/foundation-sites/js/foundation.util.timerAndImageLoader.js +88 -0
  190. data/_sass/foundation-sites/js/foundation.util.touch.js +352 -0
  191. data/_sass/foundation-sites/js/foundation.util.triggers.js +210 -0
  192. data/_sass/foundation-sites/js/foundation.zf.responsiveAccordionTabs.js +240 -0
  193. data/_sass/foundation-sites/scss/_global.scss +219 -0
  194. data/_sass/foundation-sites/scss/components/_accordion-menu.scss +36 -0
  195. data/_sass/foundation-sites/scss/components/_accordion.scss +150 -0
  196. data/_sass/foundation-sites/scss/components/_badge.scss +63 -0
  197. data/_sass/foundation-sites/scss/components/_breadcrumbs.scss +100 -0
  198. data/_sass/foundation-sites/scss/components/_button-group.scss +253 -0
  199. data/_sass/foundation-sites/scss/components/_button.scss +332 -0
  200. data/_sass/foundation-sites/scss/components/_callout.scss +106 -0
  201. data/_sass/foundation-sites/scss/components/_card.scss +121 -0
  202. data/_sass/foundation-sites/scss/components/_close-button.scss +102 -0
  203. data/_sass/foundation-sites/scss/components/_drilldown.scss +93 -0
  204. data/_sass/foundation-sites/scss/components/_dropdown-menu.scss +226 -0
  205. data/_sass/foundation-sites/scss/components/_dropdown.scss +72 -0
  206. data/_sass/foundation-sites/scss/components/_flex-video.scss +1 -0
  207. data/_sass/foundation-sites/scss/components/_flex.scss +34 -0
  208. data/_sass/foundation-sites/scss/components/_float.scss +27 -0
  209. data/_sass/foundation-sites/scss/components/_label.scss +64 -0
  210. data/_sass/foundation-sites/scss/components/_media-object.scss +114 -0
  211. data/_sass/foundation-sites/scss/components/_menu-icon.scss +9 -0
  212. data/_sass/foundation-sites/scss/components/_menu.scss +376 -0
  213. data/_sass/foundation-sites/scss/components/_off-canvas.scss +329 -0
  214. data/_sass/foundation-sites/scss/components/_orbit.scss +196 -0
  215. data/_sass/foundation-sites/scss/components/_pagination.scss +193 -0
  216. data/_sass/foundation-sites/scss/components/_progress-bar.scss +64 -0
  217. data/_sass/foundation-sites/scss/components/_responsive-embed.scss +70 -0
  218. data/_sass/foundation-sites/scss/components/_reveal.scss +178 -0
  219. data/_sass/foundation-sites/scss/components/_slider.scss +138 -0
  220. data/_sass/foundation-sites/scss/components/_sticky.scss +38 -0
  221. data/_sass/foundation-sites/scss/components/_switch.scss +247 -0
  222. data/_sass/foundation-sites/scss/components/_table.scss +329 -0
  223. data/_sass/foundation-sites/scss/components/_tabs.scss +196 -0
  224. data/_sass/foundation-sites/scss/components/_thumbnail.scss +67 -0
  225. data/_sass/foundation-sites/scss/components/_title-bar.scss +84 -0
  226. data/_sass/foundation-sites/scss/components/_tooltip.scss +107 -0
  227. data/_sass/foundation-sites/scss/components/_top-bar.scss +173 -0
  228. data/_sass/foundation-sites/scss/components/_visibility.scss +132 -0
  229. data/_sass/foundation-sites/scss/forms/_checkbox.scss +41 -0
  230. data/_sass/foundation-sites/scss/forms/_error.scss +88 -0
  231. data/_sass/foundation-sites/scss/forms/_fieldset.scss +54 -0
  232. data/_sass/foundation-sites/scss/forms/_forms.scss +34 -0
  233. data/_sass/foundation-sites/scss/forms/_help-text.scss +30 -0
  234. data/_sass/foundation-sites/scss/forms/_input-group.scss +135 -0
  235. data/_sass/foundation-sites/scss/forms/_label.scss +50 -0
  236. data/_sass/foundation-sites/scss/forms/_meter.scss +110 -0
  237. data/_sass/foundation-sites/scss/forms/_progress.scss +94 -0
  238. data/_sass/foundation-sites/scss/forms/_range.scss +149 -0
  239. data/_sass/foundation-sites/scss/forms/_select.scss +85 -0
  240. data/_sass/foundation-sites/scss/forms/_text.scss +170 -0
  241. data/_sass/foundation-sites/scss/foundation.scss +118 -0
  242. data/_sass/foundation-sites/scss/grid/_classes.scss +176 -0
  243. data/_sass/foundation-sites/scss/grid/_column.scss +112 -0
  244. data/_sass/foundation-sites/scss/grid/_flex-grid.scss +312 -0
  245. data/_sass/foundation-sites/scss/grid/_grid.scss +48 -0
  246. data/_sass/foundation-sites/scss/grid/_gutter.scss +82 -0
  247. data/_sass/foundation-sites/scss/grid/_layout.scss +76 -0
  248. data/_sass/foundation-sites/scss/grid/_position.scss +76 -0
  249. data/_sass/foundation-sites/scss/grid/_row.scss +99 -0
  250. data/_sass/foundation-sites/scss/grid/_size.scss +24 -0
  251. data/_sass/foundation-sites/scss/settings/_settings.scss +620 -0
  252. data/_sass/foundation-sites/scss/typography/_alignment.scss +22 -0
  253. data/_sass/foundation-sites/scss/typography/_base.scss +509 -0
  254. data/_sass/foundation-sites/scss/typography/_helpers.scss +78 -0
  255. data/_sass/foundation-sites/scss/typography/_print.scss +86 -0
  256. data/_sass/foundation-sites/scss/typography/_typography.scss +26 -0
  257. data/_sass/foundation-sites/scss/util/_breakpoint.scss +281 -0
  258. data/_sass/foundation-sites/scss/util/_color.scss +126 -0
  259. data/_sass/foundation-sites/scss/util/_direction.scss +31 -0
  260. data/_sass/foundation-sites/scss/util/_flex.scss +85 -0
  261. data/_sass/foundation-sites/scss/util/_math.scss +72 -0
  262. data/_sass/foundation-sites/scss/util/_mixins.scss +276 -0
  263. data/_sass/foundation-sites/scss/util/_selector.scss +41 -0
  264. data/_sass/foundation-sites/scss/util/_typography.scss +26 -0
  265. data/_sass/foundation-sites/scss/util/_unit.scss +152 -0
  266. data/_sass/foundation-sites/scss/util/_util.scss +14 -0
  267. data/_sass/foundation-sites/scss/util/_value.scss +160 -0
  268. data/_sass/global/_accessibility.scss +32 -0
  269. data/_sass/global/_functions.scss +7 -0
  270. data/_sass/global/_modernizr.scss +0 -0
  271. data/_sass/global/_settings.scss +657 -0
  272. data/_sass/global/_wp-admin.scss +24 -0
  273. data/_sass/global/_wp-overrides.scss +51 -0
  274. data/_sass/jquery/.bower.json +25 -0
  275. data/_sass/jquery/AUTHORS.txt +278 -0
  276. data/_sass/jquery/LICENSE.txt +36 -0
  277. data/_sass/jquery/README.md +65 -0
  278. data/_sass/jquery/bower.json +14 -0
  279. data/_sass/jquery/dist/jquery.js +9814 -0
  280. data/_sass/jquery/dist/jquery.min.js +4 -0
  281. data/_sass/jquery/dist/jquery.min.map +1 -0
  282. data/_sass/jquery/external/sizzle/LICENSE.txt +36 -0
  283. data/_sass/jquery/external/sizzle/dist/sizzle.js +2143 -0
  284. data/_sass/jquery/external/sizzle/dist/sizzle.min.js +3 -0
  285. data/_sass/jquery/external/sizzle/dist/sizzle.min.map +1 -0
  286. data/_sass/jquery/src/.jshintrc +29 -0
  287. data/_sass/jquery/src/ajax.js +845 -0
  288. data/_sass/jquery/src/ajax/jsonp.js +100 -0
  289. data/_sass/jquery/src/ajax/load.js +83 -0
  290. data/_sass/jquery/src/ajax/parseJSON.js +13 -0
  291. data/_sass/jquery/src/ajax/parseXML.js +27 -0
  292. data/_sass/jquery/src/ajax/script.js +68 -0
  293. data/_sass/jquery/src/ajax/var/location.js +3 -0
  294. data/_sass/jquery/src/ajax/var/nonce.js +5 -0
  295. data/_sass/jquery/src/ajax/var/rquery.js +3 -0
  296. data/_sass/jquery/src/ajax/xhr.js +167 -0
  297. data/_sass/jquery/src/attributes.js +11 -0
  298. data/_sass/jquery/src/attributes/attr.js +142 -0
  299. data/_sass/jquery/src/attributes/classes.js +177 -0
  300. data/_sass/jquery/src/attributes/prop.js +125 -0
  301. data/_sass/jquery/src/attributes/support.js +36 -0
  302. data/_sass/jquery/src/attributes/val.js +177 -0
  303. data/_sass/jquery/src/callbacks.js +232 -0
  304. data/_sass/jquery/src/core.js +494 -0
  305. data/_sass/jquery/src/core/access.js +65 -0
  306. data/_sass/jquery/src/core/init.js +134 -0
  307. data/_sass/jquery/src/core/parseHTML.js +41 -0
  308. data/_sass/jquery/src/core/ready.js +103 -0
  309. data/_sass/jquery/src/core/var/rsingleTag.js +5 -0
  310. data/_sass/jquery/src/css.js +502 -0
  311. data/_sass/jquery/src/css/addGetHookIf.js +24 -0
  312. data/_sass/jquery/src/css/adjustCSS.js +65 -0
  313. data/_sass/jquery/src/css/curCSS.js +60 -0
  314. data/_sass/jquery/src/css/defaultDisplay.js +72 -0
  315. data/_sass/jquery/src/css/hiddenVisibleSelectors.js +18 -0
  316. data/_sass/jquery/src/css/showHide.js +48 -0
  317. data/_sass/jquery/src/css/support.js +121 -0
  318. data/_sass/jquery/src/css/var/cssExpand.js +3 -0
  319. data/_sass/jquery/src/css/var/getStyles.js +15 -0
  320. data/_sass/jquery/src/css/var/isHidden.js +16 -0
  321. data/_sass/jquery/src/css/var/rmargin.js +3 -0
  322. data/_sass/jquery/src/css/var/rnumnonpx.js +5 -0
  323. data/_sass/jquery/src/css/var/swap.js +24 -0
  324. data/_sass/jquery/src/data.js +187 -0
  325. data/_sass/jquery/src/data/Data.js +200 -0
  326. data/_sass/jquery/src/data/var/acceptData.js +18 -0
  327. data/_sass/jquery/src/data/var/dataPriv.js +5 -0
  328. data/_sass/jquery/src/data/var/dataUser.js +5 -0
  329. data/_sass/jquery/src/deferred.js +158 -0
  330. data/_sass/jquery/src/deprecated.js +32 -0
  331. data/_sass/jquery/src/dimensions.js +54 -0
  332. data/_sass/jquery/src/effects.js +629 -0
  333. data/_sass/jquery/src/effects/Tween.js +121 -0
  334. data/_sass/jquery/src/effects/animatedSelector.js +13 -0
  335. data/_sass/jquery/src/event.js +711 -0
  336. data/_sass/jquery/src/event/ajax.js +20 -0
  337. data/_sass/jquery/src/event/alias.js +27 -0
  338. data/_sass/jquery/src/event/focusin.js +53 -0
  339. data/_sass/jquery/src/event/support.js +9 -0
  340. data/_sass/jquery/src/event/trigger.js +183 -0
  341. data/_sass/jquery/src/exports/amd.js +24 -0
  342. data/_sass/jquery/src/exports/global.js +26 -0
  343. data/_sass/jquery/src/intro.js +44 -0
  344. data/_sass/jquery/src/jquery.js +37 -0
  345. data/_sass/jquery/src/manipulation.js +481 -0
  346. data/_sass/jquery/src/manipulation/_evalUrl.js +20 -0
  347. data/_sass/jquery/src/manipulation/buildFragment.js +102 -0
  348. data/_sass/jquery/src/manipulation/getAll.js +21 -0
  349. data/_sass/jquery/src/manipulation/setGlobalEval.js +20 -0
  350. data/_sass/jquery/src/manipulation/support.js +33 -0
  351. data/_sass/jquery/src/manipulation/var/rcheckableType.js +3 -0
  352. data/_sass/jquery/src/manipulation/var/rscriptType.js +3 -0
  353. data/_sass/jquery/src/manipulation/var/rtagName.js +3 -0
  354. data/_sass/jquery/src/manipulation/wrapMap.js +27 -0
  355. data/_sass/jquery/src/offset.js +218 -0
  356. data/_sass/jquery/src/outro.js +2 -0
  357. data/_sass/jquery/src/queue.js +143 -0
  358. data/_sass/jquery/src/queue/delay.js +22 -0
  359. data/_sass/jquery/src/selector-native.js +211 -0
  360. data/_sass/jquery/src/selector-sizzle.js +14 -0
  361. data/_sass/jquery/src/selector.js +1 -0
  362. data/_sass/jquery/src/serialize.js +125 -0
  363. data/_sass/jquery/src/traversing.js +175 -0
  364. data/_sass/jquery/src/traversing/findFilter.js +100 -0
  365. data/_sass/jquery/src/traversing/var/dir.js +20 -0
  366. data/_sass/jquery/src/traversing/var/rneedsContext.js +6 -0
  367. data/_sass/jquery/src/traversing/var/siblings.js +15 -0
  368. data/_sass/jquery/src/var/arr.js +3 -0
  369. data/_sass/jquery/src/var/class2type.js +5 -0
  370. data/_sass/jquery/src/var/concat.js +5 -0
  371. data/_sass/jquery/src/var/document.js +3 -0
  372. data/_sass/jquery/src/var/documentElement.js +5 -0
  373. data/_sass/jquery/src/var/hasOwn.js +5 -0
  374. data/_sass/jquery/src/var/indexOf.js +5 -0
  375. data/_sass/jquery/src/var/pnum.js +3 -0
  376. data/_sass/jquery/src/var/push.js +5 -0
  377. data/_sass/jquery/src/var/rcssNum.js +7 -0
  378. data/_sass/jquery/src/var/rnotwhite.js +3 -0
  379. data/_sass/jquery/src/var/slice.js +5 -0
  380. data/_sass/jquery/src/var/support.js +5 -0
  381. data/_sass/jquery/src/var/toString.js +5 -0
  382. data/_sass/jquery/src/wrap.js +79 -0
  383. data/_sass/modules/_editor-style.scss +5 -0
  384. data/_sass/modules/_footer.scss +115 -0
  385. data/_sass/modules/_navigation.scss +570 -0
  386. data/_sass/modules/_sidebar.scss +66 -0
  387. data/_sass/modules/_twitter.scss +58 -0
  388. data/_sass/motion-ui/.bower.json +38 -0
  389. data/_sass/motion-ui/LICENSE +22 -0
  390. data/_sass/motion-ui/README.md +29 -0
  391. data/_sass/motion-ui/bower.json +28 -0
  392. data/_sass/motion-ui/composer.json +25 -0
  393. data/_sass/motion-ui/dist/motion-ui.css +634 -0
  394. data/_sass/motion-ui/dist/motion-ui.js +117 -0
  395. data/_sass/motion-ui/dist/motion-ui.min.css +1 -0
  396. data/_sass/motion-ui/dist/motion-ui.min.js +1 -0
  397. data/_sass/motion-ui/docs/animations.md +230 -0
  398. data/_sass/motion-ui/docs/classes.md +81 -0
  399. data/_sass/motion-ui/docs/configuration.md +63 -0
  400. data/_sass/motion-ui/docs/installation.md +50 -0
  401. data/_sass/motion-ui/docs/javascript.md +36 -0
  402. data/_sass/motion-ui/docs/readme.md +32 -0
  403. data/_sass/motion-ui/docs/transitions.md +112 -0
  404. data/_sass/motion-ui/docs/wow.md +35 -0
  405. data/_sass/motion-ui/gulpfile.js +90 -0
  406. data/_sass/motion-ui/lib/handlebars.js +8 -0
  407. data/_sass/motion-ui/motion-ui.js +105 -0
  408. data/_sass/motion-ui/motion-ui.scss +4 -0
  409. data/_sass/motion-ui/package.json +44 -0
  410. data/_sass/motion-ui/src/_classes.scss +109 -0
  411. data/_sass/motion-ui/src/_settings.scss +61 -0
  412. data/_sass/motion-ui/src/effects/_fade.scss +32 -0
  413. data/_sass/motion-ui/src/effects/_hinge.scss +65 -0
  414. data/_sass/motion-ui/src/effects/_shake.scss +15 -0
  415. data/_sass/motion-ui/src/effects/_slide.scss +41 -0
  416. data/_sass/motion-ui/src/effects/_spin.scss +28 -0
  417. data/_sass/motion-ui/src/effects/_wiggle.scss +13 -0
  418. data/_sass/motion-ui/src/effects/_zoom.scss +15 -0
  419. data/_sass/motion-ui/src/motion-ui.scss +29 -0
  420. data/_sass/motion-ui/src/transitions/_fade.scss +28 -0
  421. data/_sass/motion-ui/src/transitions/_hinge.scss +43 -0
  422. data/_sass/motion-ui/src/transitions/_slide.scss +42 -0
  423. data/_sass/motion-ui/src/transitions/_spin.scss +39 -0
  424. data/_sass/motion-ui/src/transitions/_zoom.scss +39 -0
  425. data/_sass/motion-ui/src/util/_animation.scss +7 -0
  426. data/_sass/motion-ui/src/util/_args.scss +15 -0
  427. data/_sass/motion-ui/src/util/_keyframe.scss +136 -0
  428. data/_sass/motion-ui/src/util/_selector.scss +23 -0
  429. data/_sass/motion-ui/src/util/_series.scss +54 -0
  430. data/_sass/motion-ui/src/util/_transition.scss +45 -0
  431. data/_sass/motion-ui/src/util/_unit.scss +7 -0
  432. data/_sass/templates/_archive.scss +66 -0
  433. data/_sass/templates/_page-accordion-sidebar.scss +137 -0
  434. data/_sass/templates/_page-contact.scss +33 -0
  435. data/_sass/templates/_page-default.scss +472 -0
  436. data/_sass/templates/_page-faq-sidebar.scss +77 -0
  437. data/_sass/templates/_page-front.scss +549 -0
  438. data/_sass/templates/_page-full-width.scss +11 -0
  439. data/_sass/templates/_page-highlights.scss +156 -0
  440. data/_sass/templates/_page-sidebar-left.scss +27 -0
  441. data/_sass/templates/_print.scss +69 -0
  442. data/_sass/templates/_single-post.scss +12 -0
  443. data/_sass/what-input/.bower.json +35 -0
  444. data/_sass/what-input/Gulpfile.js +104 -0
  445. data/_sass/what-input/LICENSE +21 -0
  446. data/_sass/what-input/README.md +178 -0
  447. data/_sass/what-input/bower.json +26 -0
  448. data/_sass/what-input/dist/lte-IE8.js +1 -0
  449. data/_sass/what-input/dist/what-input.js +337 -0
  450. data/_sass/what-input/dist/what-input.min.js +7 -0
  451. data/_sass/what-input/index.html +164 -0
  452. data/_sass/what-input/package.json +38 -0
  453. data/_sass/what-input/src/polyfills/ie8/EventListener.js +150 -0
  454. data/_sass/what-input/src/polyfills/ie8/indexOf.js +65 -0
  455. data/_sass/what-input/src/what-input.js +269 -0
  456. data/_sass/what-input/yarn.lock +3482 -0
  457. data/assets/css/style.scss +4 -0
  458. data/assets/{css → fonts}/comfortaa-bold-webfont.eot +0 -0
  459. data/assets/{css → fonts}/comfortaa-bold-webfont.svg +0 -0
  460. data/assets/{css → fonts}/comfortaa-bold-webfont.ttf +0 -0
  461. data/assets/{css → fonts}/comfortaa-bold-webfont.woff +0 -0
  462. data/assets/{css → fonts}/comfortaa-bold-webfont.woff2 +0 -0
  463. data/assets/{css → fonts}/comfortaa-regular-webfont.eot +0 -0
  464. data/assets/{css → fonts}/comfortaa-regular-webfont.svg +0 -0
  465. data/assets/{css → fonts}/comfortaa-regular-webfont.ttf +0 -0
  466. data/assets/{css → fonts}/comfortaa-regular-webfont.woff +0 -0
  467. data/assets/{css → fonts}/comfortaa-regular-webfont.woff2 +0 -0
  468. data/assets/{css → fonts}/raleway-regular-webfont.svg +0 -0
  469. data/assets/images/ace-centre-logo.png +0 -0
  470. data/assets/images/getting-started-with-aac-logo.png +0 -0
  471. data/assets/images/getting-started-with-aac.png +0 -0
  472. data/assets/images/icon/ace-icon-180x180.png +0 -0
  473. data/assets/images/icon/ace-icon-192x192.png +0 -0
  474. data/assets/images/icon/ace-icon-270x270.png +0 -0
  475. data/assets/images/icon/ace-icon-32x32.png +0 -0
  476. data/assets/javascript/scripts.js +10 -0
  477. metadata +477 -29
  478. data/_includes/theme-footer.html +0 -16
  479. data/_includes/theme-head.html +0 -48
  480. data/assets/css/bootstrap-select.min.css +0 -7
  481. data/assets/css/bootstrap-theme.css +0 -442
  482. data/assets/css/bootstrap.css +0 -6203
  483. data/assets/css/draganddrop.css +0 -210
  484. data/assets/css/fonts.css +0 -41
  485. data/assets/css/responsive.css +0 -90
  486. data/assets/css/style.css +0 -260
  487. data/assets/images/divider.png +0 -0
  488. data/assets/images/logo-1.png +0 -0
  489. data/assets/images/logo-2.png +0 -0
@@ -0,0 +1,147 @@
1
+ 'use strict';
2
+
3
+ !function($) {
4
+
5
+ /**
6
+ * ResponsiveMenu module.
7
+ * @module foundation.responsiveMenu
8
+ * @requires foundation.util.triggers
9
+ * @requires foundation.util.mediaQuery
10
+ */
11
+
12
+ class ResponsiveMenu {
13
+ /**
14
+ * Creates a new instance of a responsive menu.
15
+ * @class
16
+ * @fires ResponsiveMenu#init
17
+ * @param {jQuery} element - jQuery object to make into a dropdown menu.
18
+ * @param {Object} options - Overrides to the default plugin settings.
19
+ */
20
+ constructor(element, options) {
21
+ this.$element = $(element);
22
+ this.rules = this.$element.data('responsive-menu');
23
+ this.currentMq = null;
24
+ this.currentPlugin = null;
25
+
26
+ this._init();
27
+ this._events();
28
+
29
+ Foundation.registerPlugin(this, 'ResponsiveMenu');
30
+ }
31
+
32
+ /**
33
+ * Initializes the Menu by parsing the classes from the 'data-ResponsiveMenu' attribute on the element.
34
+ * @function
35
+ * @private
36
+ */
37
+ _init() {
38
+ // The first time an Interchange plugin is initialized, this.rules is converted from a string of "classes" to an object of rules
39
+ if (typeof this.rules === 'string') {
40
+ let rulesTree = {};
41
+
42
+ // Parse rules from "classes" pulled from data attribute
43
+ let rules = this.rules.split(' ');
44
+
45
+ // Iterate through every rule found
46
+ for (let i = 0; i < rules.length; i++) {
47
+ let rule = rules[i].split('-');
48
+ let ruleSize = rule.length > 1 ? rule[0] : 'small';
49
+ let rulePlugin = rule.length > 1 ? rule[1] : rule[0];
50
+
51
+ if (MenuPlugins[rulePlugin] !== null) {
52
+ rulesTree[ruleSize] = MenuPlugins[rulePlugin];
53
+ }
54
+ }
55
+
56
+ this.rules = rulesTree;
57
+ }
58
+
59
+ if (!$.isEmptyObject(this.rules)) {
60
+ this._checkMediaQueries();
61
+ }
62
+ // Add data-mutate since children may need it.
63
+ this.$element.attr('data-mutate', (this.$element.attr('data-mutate') || Foundation.GetYoDigits(6, 'responsive-menu')));
64
+ }
65
+
66
+ /**
67
+ * Initializes events for the Menu.
68
+ * @function
69
+ * @private
70
+ */
71
+ _events() {
72
+ var _this = this;
73
+
74
+ $(window).on('changed.zf.mediaquery', function() {
75
+ _this._checkMediaQueries();
76
+ });
77
+ // $(window).on('resize.zf.ResponsiveMenu', function() {
78
+ // _this._checkMediaQueries();
79
+ // });
80
+ }
81
+
82
+ /**
83
+ * Checks the current screen width against available media queries. If the media query has changed, and the plugin needed has changed, the plugins will swap out.
84
+ * @function
85
+ * @private
86
+ */
87
+ _checkMediaQueries() {
88
+ var matchedMq, _this = this;
89
+ // Iterate through each rule and find the last matching rule
90
+ $.each(this.rules, function(key) {
91
+ if (Foundation.MediaQuery.atLeast(key)) {
92
+ matchedMq = key;
93
+ }
94
+ });
95
+
96
+ // No match? No dice
97
+ if (!matchedMq) return;
98
+
99
+ // Plugin already initialized? We good
100
+ if (this.currentPlugin instanceof this.rules[matchedMq].plugin) return;
101
+
102
+ // Remove existing plugin-specific CSS classes
103
+ $.each(MenuPlugins, function(key, value) {
104
+ _this.$element.removeClass(value.cssClass);
105
+ });
106
+
107
+ // Add the CSS class for the new plugin
108
+ this.$element.addClass(this.rules[matchedMq].cssClass);
109
+
110
+ // Create an instance of the new plugin
111
+ if (this.currentPlugin) this.currentPlugin.destroy();
112
+ this.currentPlugin = new this.rules[matchedMq].plugin(this.$element, {});
113
+ }
114
+
115
+ /**
116
+ * Destroys the instance of the current plugin on this element, as well as the window resize handler that switches the plugins out.
117
+ * @function
118
+ */
119
+ destroy() {
120
+ this.currentPlugin.destroy();
121
+ $(window).off('.zf.ResponsiveMenu');
122
+ Foundation.unregisterPlugin(this);
123
+ }
124
+ }
125
+
126
+ ResponsiveMenu.defaults = {};
127
+
128
+ // The plugin matches the plugin classes with these plugin instances.
129
+ var MenuPlugins = {
130
+ dropdown: {
131
+ cssClass: 'dropdown',
132
+ plugin: Foundation._plugins['dropdown-menu'] || null
133
+ },
134
+ drilldown: {
135
+ cssClass: 'drilldown',
136
+ plugin: Foundation._plugins['drilldown'] || null
137
+ },
138
+ accordion: {
139
+ cssClass: 'accordion-menu',
140
+ plugin: Foundation._plugins['accordion-menu'] || null
141
+ }
142
+ };
143
+
144
+ // Window exports
145
+ Foundation.plugin(ResponsiveMenu, 'ResponsiveMenu');
146
+
147
+ }(jQuery);
@@ -0,0 +1,155 @@
1
+ 'use strict';
2
+
3
+ !function($) {
4
+
5
+ /**
6
+ * ResponsiveToggle module.
7
+ * @module foundation.responsiveToggle
8
+ * @requires foundation.util.mediaQuery
9
+ */
10
+
11
+ class ResponsiveToggle {
12
+ /**
13
+ * Creates a new instance of Tab Bar.
14
+ * @class
15
+ * @fires ResponsiveToggle#init
16
+ * @param {jQuery} element - jQuery object to attach tab bar functionality to.
17
+ * @param {Object} options - Overrides to the default plugin settings.
18
+ */
19
+ constructor(element, options) {
20
+ this.$element = $(element);
21
+ this.options = $.extend({}, ResponsiveToggle.defaults, this.$element.data(), options);
22
+
23
+ this._init();
24
+ this._events();
25
+
26
+ Foundation.registerPlugin(this, 'ResponsiveToggle');
27
+ }
28
+
29
+ /**
30
+ * Initializes the tab bar by finding the target element, toggling element, and running update().
31
+ * @function
32
+ * @private
33
+ */
34
+ _init() {
35
+ var targetID = this.$element.data('responsive-toggle');
36
+ if (!targetID) {
37
+ console.error('Your tab bar needs an ID of a Menu as the value of data-tab-bar.');
38
+ }
39
+
40
+ this.$targetMenu = $(`#${targetID}`);
41
+ this.$toggler = this.$element.find('[data-toggle]').filter(function() {
42
+ var target = $(this).data('toggle');
43
+ return (target === targetID || target === "");
44
+ });
45
+ this.options = $.extend({}, this.options, this.$targetMenu.data());
46
+
47
+ // If they were set, parse the animation classes
48
+ if(this.options.animate) {
49
+ let input = this.options.animate.split(' ');
50
+
51
+ this.animationIn = input[0];
52
+ this.animationOut = input[1] || null;
53
+ }
54
+
55
+ this._update();
56
+ }
57
+
58
+ /**
59
+ * Adds necessary event handlers for the tab bar to work.
60
+ * @function
61
+ * @private
62
+ */
63
+ _events() {
64
+ var _this = this;
65
+
66
+ this._updateMqHandler = this._update.bind(this);
67
+
68
+ $(window).on('changed.zf.mediaquery', this._updateMqHandler);
69
+
70
+ this.$toggler.on('click.zf.responsiveToggle', this.toggleMenu.bind(this));
71
+ }
72
+
73
+ /**
74
+ * Checks the current media query to determine if the tab bar should be visible or hidden.
75
+ * @function
76
+ * @private
77
+ */
78
+ _update() {
79
+ // Mobile
80
+ if (!Foundation.MediaQuery.atLeast(this.options.hideFor)) {
81
+ this.$element.show();
82
+ this.$targetMenu.hide();
83
+ }
84
+
85
+ // Desktop
86
+ else {
87
+ this.$element.hide();
88
+ this.$targetMenu.show();
89
+ }
90
+ }
91
+
92
+ /**
93
+ * Toggles the element attached to the tab bar. The toggle only happens if the screen is small enough to allow it.
94
+ * @function
95
+ * @fires ResponsiveToggle#toggled
96
+ */
97
+ toggleMenu() {
98
+ if (!Foundation.MediaQuery.atLeast(this.options.hideFor)) {
99
+ /**
100
+ * Fires when the element attached to the tab bar toggles.
101
+ * @event ResponsiveToggle#toggled
102
+ */
103
+ if(this.options.animate) {
104
+ if (this.$targetMenu.is(':hidden')) {
105
+ Foundation.Motion.animateIn(this.$targetMenu, this.animationIn, () => {
106
+ this.$element.trigger('toggled.zf.responsiveToggle');
107
+ this.$targetMenu.find('[data-mutate]').triggerHandler('mutateme.zf.trigger');
108
+ });
109
+ }
110
+ else {
111
+ Foundation.Motion.animateOut(this.$targetMenu, this.animationOut, () => {
112
+ this.$element.trigger('toggled.zf.responsiveToggle');
113
+ });
114
+ }
115
+ }
116
+ else {
117
+ this.$targetMenu.toggle(0);
118
+ this.$targetMenu.find('[data-mutate]').trigger('mutateme.zf.trigger');
119
+ this.$element.trigger('toggled.zf.responsiveToggle');
120
+ }
121
+ }
122
+ };
123
+
124
+ destroy() {
125
+ this.$element.off('.zf.responsiveToggle');
126
+ this.$toggler.off('.zf.responsiveToggle');
127
+
128
+ $(window).off('changed.zf.mediaquery', this._updateMqHandler);
129
+
130
+ Foundation.unregisterPlugin(this);
131
+ }
132
+ }
133
+
134
+ ResponsiveToggle.defaults = {
135
+ /**
136
+ * The breakpoint after which the menu is always shown, and the tab bar is hidden.
137
+ * @option
138
+ * @type {string}
139
+ * @default 'medium'
140
+ */
141
+ hideFor: 'medium',
142
+
143
+ /**
144
+ * To decide if the toggle should be animated or not.
145
+ * @option
146
+ * @type {boolean}
147
+ * @default false
148
+ */
149
+ animate: false
150
+ };
151
+
152
+ // Window exports
153
+ Foundation.plugin(ResponsiveToggle, 'ResponsiveToggle');
154
+
155
+ }(jQuery);
@@ -0,0 +1,603 @@
1
+ 'use strict';
2
+
3
+ !function($) {
4
+
5
+ /**
6
+ * Reveal module.
7
+ * @module foundation.reveal
8
+ * @requires foundation.util.keyboard
9
+ * @requires foundation.util.box
10
+ * @requires foundation.util.triggers
11
+ * @requires foundation.util.mediaQuery
12
+ * @requires foundation.util.motion if using animations
13
+ */
14
+
15
+ class Reveal {
16
+ /**
17
+ * Creates a new instance of Reveal.
18
+ * @class
19
+ * @param {jQuery} element - jQuery object to use for the modal.
20
+ * @param {Object} options - optional parameters.
21
+ */
22
+ constructor(element, options) {
23
+ this.$element = element;
24
+ this.options = $.extend({}, Reveal.defaults, this.$element.data(), options);
25
+ this._init();
26
+
27
+ Foundation.registerPlugin(this, 'Reveal');
28
+ Foundation.Keyboard.register('Reveal', {
29
+ 'ENTER': 'open',
30
+ 'SPACE': 'open',
31
+ 'ESCAPE': 'close',
32
+ });
33
+ }
34
+
35
+ /**
36
+ * Initializes the modal by adding the overlay and close buttons, (if selected).
37
+ * @private
38
+ */
39
+ _init() {
40
+ this.id = this.$element.attr('id');
41
+ this.isActive = false;
42
+ this.cached = {mq: Foundation.MediaQuery.current};
43
+ this.isMobile = mobileSniff();
44
+
45
+ this.$anchor = $(`[data-open="${this.id}"]`).length ? $(`[data-open="${this.id}"]`) : $(`[data-toggle="${this.id}"]`);
46
+ this.$anchor.attr({
47
+ 'aria-controls': this.id,
48
+ 'aria-haspopup': true,
49
+ 'tabindex': 0
50
+ });
51
+
52
+ if (this.options.fullScreen || this.$element.hasClass('full')) {
53
+ this.options.fullScreen = true;
54
+ this.options.overlay = false;
55
+ }
56
+ if (this.options.overlay && !this.$overlay) {
57
+ this.$overlay = this._makeOverlay(this.id);
58
+ }
59
+
60
+ this.$element.attr({
61
+ 'role': 'dialog',
62
+ 'aria-hidden': true,
63
+ 'data-yeti-box': this.id,
64
+ 'data-resize': this.id
65
+ });
66
+
67
+ if(this.$overlay) {
68
+ this.$element.detach().appendTo(this.$overlay);
69
+ } else {
70
+ this.$element.detach().appendTo($(this.options.appendTo));
71
+ this.$element.addClass('without-overlay');
72
+ }
73
+ this._events();
74
+ if (this.options.deepLink && window.location.hash === ( `#${this.id}`)) {
75
+ $(window).one('load.zf.reveal', this.open.bind(this));
76
+ }
77
+ }
78
+
79
+ /**
80
+ * Creates an overlay div to display behind the modal.
81
+ * @private
82
+ */
83
+ _makeOverlay() {
84
+ return $('<div></div>')
85
+ .addClass('reveal-overlay')
86
+ .appendTo(this.options.appendTo);
87
+ }
88
+
89
+ /**
90
+ * Updates position of modal
91
+ * TODO: Figure out if we actually need to cache these values or if it doesn't matter
92
+ * @private
93
+ */
94
+ _updatePosition() {
95
+ var width = this.$element.outerWidth();
96
+ var outerWidth = $(window).width();
97
+ var height = this.$element.outerHeight();
98
+ var outerHeight = $(window).height();
99
+ var left, top;
100
+ if (this.options.hOffset === 'auto') {
101
+ left = parseInt((outerWidth - width) / 2, 10);
102
+ } else {
103
+ left = parseInt(this.options.hOffset, 10);
104
+ }
105
+ if (this.options.vOffset === 'auto') {
106
+ if (height > outerHeight) {
107
+ top = parseInt(Math.min(100, outerHeight / 10), 10);
108
+ } else {
109
+ top = parseInt((outerHeight - height) / 4, 10);
110
+ }
111
+ } else {
112
+ top = parseInt(this.options.vOffset, 10);
113
+ }
114
+ this.$element.css({top: top + 'px'});
115
+ // only worry about left if we don't have an overlay or we havea horizontal offset,
116
+ // otherwise we're perfectly in the middle
117
+ if(!this.$overlay || (this.options.hOffset !== 'auto')) {
118
+ this.$element.css({left: left + 'px'});
119
+ this.$element.css({margin: '0px'});
120
+ }
121
+
122
+ }
123
+
124
+ /**
125
+ * Adds event handlers for the modal.
126
+ * @private
127
+ */
128
+ _events() {
129
+ var _this = this;
130
+
131
+ this.$element.on({
132
+ 'open.zf.trigger': this.open.bind(this),
133
+ 'close.zf.trigger': (event, $element) => {
134
+ if ((event.target === _this.$element[0]) ||
135
+ ($(event.target).parents('[data-closable]')[0] === $element)) { // only close reveal when it's explicitly called
136
+ return this.close.apply(this);
137
+ }
138
+ },
139
+ 'toggle.zf.trigger': this.toggle.bind(this),
140
+ 'resizeme.zf.trigger': function() {
141
+ _this._updatePosition();
142
+ }
143
+ });
144
+
145
+ if (this.$anchor.length) {
146
+ this.$anchor.on('keydown.zf.reveal', function(e) {
147
+ if (e.which === 13 || e.which === 32) {
148
+ e.stopPropagation();
149
+ e.preventDefault();
150
+ _this.open();
151
+ }
152
+ });
153
+ }
154
+
155
+ if (this.options.closeOnClick && this.options.overlay) {
156
+ this.$overlay.off('.zf.reveal').on('click.zf.reveal', function(e) {
157
+ if (e.target === _this.$element[0] ||
158
+ $.contains(_this.$element[0], e.target) ||
159
+ !$.contains(document, e.target)) {
160
+ return;
161
+ }
162
+ _this.close();
163
+ });
164
+ }
165
+ if (this.options.deepLink) {
166
+ $(window).on(`popstate.zf.reveal:${this.id}`, this._handleState.bind(this));
167
+ }
168
+ }
169
+
170
+ /**
171
+ * Handles modal methods on back/forward button clicks or any other event that triggers popstate.
172
+ * @private
173
+ */
174
+ _handleState(e) {
175
+ if(window.location.hash === ( '#' + this.id) && !this.isActive){ this.open(); }
176
+ else{ this.close(); }
177
+ }
178
+
179
+
180
+ /**
181
+ * Opens the modal controlled by `this.$anchor`, and closes all others by default.
182
+ * @function
183
+ * @fires Reveal#closeme
184
+ * @fires Reveal#open
185
+ */
186
+ open() {
187
+ if (this.options.deepLink) {
188
+ var hash = `#${this.id}`;
189
+
190
+ if (window.history.pushState) {
191
+ window.history.pushState(null, null, hash);
192
+ } else {
193
+ window.location.hash = hash;
194
+ }
195
+ }
196
+
197
+ this.isActive = true;
198
+
199
+ // Make elements invisible, but remove display: none so we can get size and positioning
200
+ this.$element
201
+ .css({ 'visibility': 'hidden' })
202
+ .show()
203
+ .scrollTop(0);
204
+ if (this.options.overlay) {
205
+ this.$overlay.css({'visibility': 'hidden'}).show();
206
+ }
207
+
208
+ this._updatePosition();
209
+
210
+ this.$element
211
+ .hide()
212
+ .css({ 'visibility': '' });
213
+
214
+ if(this.$overlay) {
215
+ this.$overlay.css({'visibility': ''}).hide();
216
+ if(this.$element.hasClass('fast')) {
217
+ this.$overlay.addClass('fast');
218
+ } else if (this.$element.hasClass('slow')) {
219
+ this.$overlay.addClass('slow');
220
+ }
221
+ }
222
+
223
+
224
+ if (!this.options.multipleOpened) {
225
+ /**
226
+ * Fires immediately before the modal opens.
227
+ * Closes any other modals that are currently open
228
+ * @event Reveal#closeme
229
+ */
230
+ this.$element.trigger('closeme.zf.reveal', this.id);
231
+ }
232
+
233
+ var _this = this;
234
+
235
+ function addRevealOpenClasses() {
236
+ if (_this.isMobile) {
237
+ if(!_this.originalScrollPos) {
238
+ _this.originalScrollPos = window.pageYOffset;
239
+ }
240
+ $('html, body').addClass('is-reveal-open');
241
+ }
242
+ else {
243
+ $('body').addClass('is-reveal-open');
244
+ }
245
+ }
246
+ // Motion UI method of reveal
247
+ if (this.options.animationIn) {
248
+ function afterAnimation(){
249
+ _this.$element
250
+ .attr({
251
+ 'aria-hidden': false,
252
+ 'tabindex': -1
253
+ })
254
+ .focus();
255
+ addRevealOpenClasses();
256
+ Foundation.Keyboard.trapFocus(_this.$element);
257
+ }
258
+ if (this.options.overlay) {
259
+ Foundation.Motion.animateIn(this.$overlay, 'fade-in');
260
+ }
261
+ Foundation.Motion.animateIn(this.$element, this.options.animationIn, () => {
262
+ if(this.$element) { // protect against object having been removed
263
+ this.focusableElements = Foundation.Keyboard.findFocusable(this.$element);
264
+ afterAnimation();
265
+ }
266
+ });
267
+ }
268
+ // jQuery method of reveal
269
+ else {
270
+ if (this.options.overlay) {
271
+ this.$overlay.show(0);
272
+ }
273
+ this.$element.show(this.options.showDelay);
274
+ }
275
+
276
+ // handle accessibility
277
+ this.$element
278
+ .attr({
279
+ 'aria-hidden': false,
280
+ 'tabindex': -1
281
+ })
282
+ .focus();
283
+ Foundation.Keyboard.trapFocus(this.$element);
284
+
285
+ /**
286
+ * Fires when the modal has successfully opened.
287
+ * @event Reveal#open
288
+ */
289
+ this.$element.trigger('open.zf.reveal');
290
+
291
+ addRevealOpenClasses();
292
+
293
+ setTimeout(() => {
294
+ this._extraHandlers();
295
+ }, 0);
296
+ }
297
+
298
+ /**
299
+ * Adds extra event handlers for the body and window if necessary.
300
+ * @private
301
+ */
302
+ _extraHandlers() {
303
+ var _this = this;
304
+ if(!this.$element) { return; } // If we're in the middle of cleanup, don't freak out
305
+ this.focusableElements = Foundation.Keyboard.findFocusable(this.$element);
306
+
307
+ if (!this.options.overlay && this.options.closeOnClick && !this.options.fullScreen) {
308
+ $('body').on('click.zf.reveal', function(e) {
309
+ if (e.target === _this.$element[0] ||
310
+ $.contains(_this.$element[0], e.target) ||
311
+ !$.contains(document, e.target)) { return; }
312
+ _this.close();
313
+ });
314
+ }
315
+
316
+ if (this.options.closeOnEsc) {
317
+ $(window).on('keydown.zf.reveal', function(e) {
318
+ Foundation.Keyboard.handleKey(e, 'Reveal', {
319
+ close: function() {
320
+ if (_this.options.closeOnEsc) {
321
+ _this.close();
322
+ _this.$anchor.focus();
323
+ }
324
+ }
325
+ });
326
+ });
327
+ }
328
+
329
+ // lock focus within modal while tabbing
330
+ this.$element.on('keydown.zf.reveal', function(e) {
331
+ var $target = $(this);
332
+ // handle keyboard event with keyboard util
333
+ Foundation.Keyboard.handleKey(e, 'Reveal', {
334
+ open: function() {
335
+ if (_this.$element.find(':focus').is(_this.$element.find('[data-close]'))) {
336
+ setTimeout(function() { // set focus back to anchor if close button has been activated
337
+ _this.$anchor.focus();
338
+ }, 1);
339
+ } else if ($target.is(_this.focusableElements)) { // dont't trigger if acual element has focus (i.e. inputs, links, ...)
340
+ _this.open();
341
+ }
342
+ },
343
+ close: function() {
344
+ if (_this.options.closeOnEsc) {
345
+ _this.close();
346
+ _this.$anchor.focus();
347
+ }
348
+ },
349
+ handled: function(preventDefault) {
350
+ if (preventDefault) {
351
+ e.preventDefault();
352
+ }
353
+ }
354
+ });
355
+ });
356
+ }
357
+
358
+ /**
359
+ * Closes the modal.
360
+ * @function
361
+ * @fires Reveal#closed
362
+ */
363
+ close() {
364
+ if (!this.isActive || !this.$element.is(':visible')) {
365
+ return false;
366
+ }
367
+ var _this = this;
368
+
369
+ // Motion UI method of hiding
370
+ if (this.options.animationOut) {
371
+ if (this.options.overlay) {
372
+ Foundation.Motion.animateOut(this.$overlay, 'fade-out', finishUp);
373
+ }
374
+ else {
375
+ finishUp();
376
+ }
377
+
378
+ Foundation.Motion.animateOut(this.$element, this.options.animationOut);
379
+ }
380
+ // jQuery method of hiding
381
+ else {
382
+
383
+ this.$element.hide(this.options.hideDelay);
384
+
385
+ if (this.options.overlay) {
386
+ this.$overlay.hide(0, finishUp);
387
+ }
388
+ else {
389
+ finishUp();
390
+ }
391
+ }
392
+
393
+ // Conditionals to remove extra event listeners added on open
394
+ if (this.options.closeOnEsc) {
395
+ $(window).off('keydown.zf.reveal');
396
+ }
397
+
398
+ if (!this.options.overlay && this.options.closeOnClick) {
399
+ $('body').off('click.zf.reveal');
400
+ }
401
+
402
+ this.$element.off('keydown.zf.reveal');
403
+
404
+ function finishUp() {
405
+ if (_this.isMobile) {
406
+ if ($('.reveal:visible').length === 0) {
407
+ $('html, body').removeClass('is-reveal-open');
408
+ }
409
+ if(_this.originalScrollPos) {
410
+ $('body').scrollTop(_this.originalScrollPos);
411
+ _this.originalScrollPos = null;
412
+ }
413
+ }
414
+ else {
415
+ if ($('.reveal:visible').length === 0) {
416
+ $('body').removeClass('is-reveal-open');
417
+ }
418
+ }
419
+
420
+
421
+ Foundation.Keyboard.releaseFocus(_this.$element);
422
+
423
+ _this.$element.attr('aria-hidden', true);
424
+
425
+ /**
426
+ * Fires when the modal is done closing.
427
+ * @event Reveal#closed
428
+ */
429
+ _this.$element.trigger('closed.zf.reveal');
430
+ }
431
+
432
+ /**
433
+ * Resets the modal content
434
+ * This prevents a running video to keep going in the background
435
+ */
436
+ if (this.options.resetOnClose) {
437
+ this.$element.html(this.$element.html());
438
+ }
439
+
440
+ this.isActive = false;
441
+ if (_this.options.deepLink) {
442
+ if (window.history.replaceState) {
443
+ window.history.replaceState('', document.title, window.location.href.replace(`#${this.id}`, ''));
444
+ } else {
445
+ window.location.hash = '';
446
+ }
447
+ }
448
+ }
449
+
450
+ /**
451
+ * Toggles the open/closed state of a modal.
452
+ * @function
453
+ */
454
+ toggle() {
455
+ if (this.isActive) {
456
+ this.close();
457
+ } else {
458
+ this.open();
459
+ }
460
+ };
461
+
462
+ /**
463
+ * Destroys an instance of a modal.
464
+ * @function
465
+ */
466
+ destroy() {
467
+ if (this.options.overlay) {
468
+ this.$element.appendTo($(this.options.appendTo)); // move $element outside of $overlay to prevent error unregisterPlugin()
469
+ this.$overlay.hide().off().remove();
470
+ }
471
+ this.$element.hide().off();
472
+ this.$anchor.off('.zf');
473
+ $(window).off(`.zf.reveal:${this.id}`);
474
+
475
+ Foundation.unregisterPlugin(this);
476
+ };
477
+ }
478
+
479
+ Reveal.defaults = {
480
+ /**
481
+ * Motion-UI class to use for animated elements. If none used, defaults to simple show/hide.
482
+ * @option
483
+ * @type {string}
484
+ * @default ''
485
+ */
486
+ animationIn: '',
487
+ /**
488
+ * Motion-UI class to use for animated elements. If none used, defaults to simple show/hide.
489
+ * @option
490
+ * @type {string}
491
+ * @default ''
492
+ */
493
+ animationOut: '',
494
+ /**
495
+ * Time, in ms, to delay the opening of a modal after a click if no animation used.
496
+ * @option
497
+ * @type {number}
498
+ * @default 0
499
+ */
500
+ showDelay: 0,
501
+ /**
502
+ * Time, in ms, to delay the closing of a modal after a click if no animation used.
503
+ * @option
504
+ * @type {number}
505
+ * @default 0
506
+ */
507
+ hideDelay: 0,
508
+ /**
509
+ * Allows a click on the body/overlay to close the modal.
510
+ * @option
511
+ * @type {boolean}
512
+ * @default true
513
+ */
514
+ closeOnClick: true,
515
+ /**
516
+ * Allows the modal to close if the user presses the `ESCAPE` key.
517
+ * @option
518
+ * @type {boolean}
519
+ * @default true
520
+ */
521
+ closeOnEsc: true,
522
+ /**
523
+ * If true, allows multiple modals to be displayed at once.
524
+ * @option
525
+ * @type {boolean}
526
+ * @default false
527
+ */
528
+ multipleOpened: false,
529
+ /**
530
+ * Distance, in pixels, the modal should push down from the top of the screen.
531
+ * @option
532
+ * @type {number|string}
533
+ * @default auto
534
+ */
535
+ vOffset: 'auto',
536
+ /**
537
+ * Distance, in pixels, the modal should push in from the side of the screen.
538
+ * @option
539
+ * @type {number|string}
540
+ * @default auto
541
+ */
542
+ hOffset: 'auto',
543
+ /**
544
+ * Allows the modal to be fullscreen, completely blocking out the rest of the view. JS checks for this as well.
545
+ * @option
546
+ * @type {boolean}
547
+ * @default false
548
+ */
549
+ fullScreen: false,
550
+ /**
551
+ * Percentage of screen height the modal should push up from the bottom of the view.
552
+ * @option
553
+ * @type {number}
554
+ * @default 10
555
+ */
556
+ btmOffsetPct: 10,
557
+ /**
558
+ * Allows the modal to generate an overlay div, which will cover the view when modal opens.
559
+ * @option
560
+ * @type {boolean}
561
+ * @default true
562
+ */
563
+ overlay: true,
564
+ /**
565
+ * Allows the modal to remove and reinject markup on close. Should be true if using video elements w/o using provider's api, otherwise, videos will continue to play in the background.
566
+ * @option
567
+ * @type {boolean}
568
+ * @default false
569
+ */
570
+ resetOnClose: false,
571
+ /**
572
+ * Allows the modal to alter the url on open/close, and allows the use of the `back` button to close modals. ALSO, allows a modal to auto-maniacally open on page load IF the hash === the modal's user-set id.
573
+ * @option
574
+ * @type {boolean}
575
+ * @default false
576
+ */
577
+ deepLink: false,
578
+ /**
579
+ * Allows the modal to append to custom div.
580
+ * @option
581
+ * @type {string}
582
+ * @default "body"
583
+ */
584
+ appendTo: "body"
585
+
586
+ };
587
+
588
+ // Window exports
589
+ Foundation.plugin(Reveal, 'Reveal');
590
+
591
+ function iPhoneSniff() {
592
+ return /iP(ad|hone|od).*OS/.test(window.navigator.userAgent);
593
+ }
594
+
595
+ function androidSniff() {
596
+ return /Android/.test(window.navigator.userAgent);
597
+ }
598
+
599
+ function mobileSniff() {
600
+ return iPhoneSniff() || androidSniff();
601
+ }
602
+
603
+ }(jQuery);