aacinfo-theme 0.2.0 → 2.0.1

Sign up to get free protection for your applications and to get access to all the features.
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,317 @@
1
+ 'use strict';
2
+
3
+ !function($) {
4
+
5
+ /**
6
+ * Equalizer module.
7
+ * @module foundation.equalizer
8
+ * @requires foundation.util.mediaQuery
9
+ * @requires foundation.util.timerAndImageLoader if equalizer contains images
10
+ */
11
+
12
+ class Equalizer {
13
+ /**
14
+ * Creates a new instance of Equalizer.
15
+ * @class
16
+ * @fires Equalizer#init
17
+ * @param {Object} element - jQuery object to add the trigger to.
18
+ * @param {Object} options - Overrides to the default plugin settings.
19
+ */
20
+ constructor(element, options){
21
+ this.$element = element;
22
+ this.options = $.extend({}, Equalizer.defaults, this.$element.data(), options);
23
+
24
+ this._init();
25
+
26
+ Foundation.registerPlugin(this, 'Equalizer');
27
+ }
28
+
29
+ /**
30
+ * Initializes the Equalizer plugin and calls functions to get equalizer functioning on load.
31
+ * @private
32
+ */
33
+ _init() {
34
+ var eqId = this.$element.attr('data-equalizer') || '';
35
+ var $watched = this.$element.find(`[data-equalizer-watch="${eqId}"]`);
36
+
37
+ this.$watched = $watched.length ? $watched : this.$element.find('[data-equalizer-watch]');
38
+ this.$element.attr('data-resize', (eqId || Foundation.GetYoDigits(6, 'eq')));
39
+ this.$element.attr('data-mutate', (eqId || Foundation.GetYoDigits(6, 'eq')));
40
+
41
+ this.hasNested = this.$element.find('[data-equalizer]').length > 0;
42
+ this.isNested = this.$element.parentsUntil(document.body, '[data-equalizer]').length > 0;
43
+ this.isOn = false;
44
+ this._bindHandler = {
45
+ onResizeMeBound: this._onResizeMe.bind(this),
46
+ onPostEqualizedBound: this._onPostEqualized.bind(this)
47
+ };
48
+
49
+ var imgs = this.$element.find('img');
50
+ var tooSmall;
51
+ if(this.options.equalizeOn){
52
+ tooSmall = this._checkMQ();
53
+ $(window).on('changed.zf.mediaquery', this._checkMQ.bind(this));
54
+ }else{
55
+ this._events();
56
+ }
57
+ if((tooSmall !== undefined && tooSmall === false) || tooSmall === undefined){
58
+ if(imgs.length){
59
+ Foundation.onImagesLoaded(imgs, this._reflow.bind(this));
60
+ }else{
61
+ this._reflow();
62
+ }
63
+ }
64
+ }
65
+
66
+ /**
67
+ * Removes event listeners if the breakpoint is too small.
68
+ * @private
69
+ */
70
+ _pauseEvents() {
71
+ this.isOn = false;
72
+ this.$element.off({
73
+ '.zf.equalizer': this._bindHandler.onPostEqualizedBound,
74
+ 'resizeme.zf.trigger': this._bindHandler.onResizeMeBound,
75
+ 'mutateme.zf.trigger': this._bindHandler.onResizeMeBound
76
+ });
77
+ }
78
+
79
+ /**
80
+ * function to handle $elements resizeme.zf.trigger, with bound this on _bindHandler.onResizeMeBound
81
+ * @private
82
+ */
83
+ _onResizeMe(e) {
84
+ this._reflow();
85
+ }
86
+
87
+ /**
88
+ * function to handle $elements postequalized.zf.equalizer, with bound this on _bindHandler.onPostEqualizedBound
89
+ * @private
90
+ */
91
+ _onPostEqualized(e) {
92
+ if(e.target !== this.$element[0]){ this._reflow(); }
93
+ }
94
+
95
+ /**
96
+ * Initializes events for Equalizer.
97
+ * @private
98
+ */
99
+ _events() {
100
+ var _this = this;
101
+ this._pauseEvents();
102
+ if(this.hasNested){
103
+ this.$element.on('postequalized.zf.equalizer', this._bindHandler.onPostEqualizedBound);
104
+ }else{
105
+ this.$element.on('resizeme.zf.trigger', this._bindHandler.onResizeMeBound);
106
+ this.$element.on('mutateme.zf.trigger', this._bindHandler.onResizeMeBound);
107
+ }
108
+ this.isOn = true;
109
+ }
110
+
111
+ /**
112
+ * Checks the current breakpoint to the minimum required size.
113
+ * @private
114
+ */
115
+ _checkMQ() {
116
+ var tooSmall = !Foundation.MediaQuery.is(this.options.equalizeOn);
117
+ if(tooSmall){
118
+ if(this.isOn){
119
+ this._pauseEvents();
120
+ this.$watched.css('height', 'auto');
121
+ }
122
+ }else{
123
+ if(!this.isOn){
124
+ this._events();
125
+ }
126
+ }
127
+ return tooSmall;
128
+ }
129
+
130
+ /**
131
+ * A noop version for the plugin
132
+ * @private
133
+ */
134
+ _killswitch() {
135
+ return;
136
+ }
137
+
138
+ /**
139
+ * Calls necessary functions to update Equalizer upon DOM change
140
+ * @private
141
+ */
142
+ _reflow() {
143
+ if(!this.options.equalizeOnStack){
144
+ if(this._isStacked()){
145
+ this.$watched.css('height', 'auto');
146
+ return false;
147
+ }
148
+ }
149
+ if (this.options.equalizeByRow) {
150
+ this.getHeightsByRow(this.applyHeightByRow.bind(this));
151
+ }else{
152
+ this.getHeights(this.applyHeight.bind(this));
153
+ }
154
+ }
155
+
156
+ /**
157
+ * Manually determines if the first 2 elements are *NOT* stacked.
158
+ * @private
159
+ */
160
+ _isStacked() {
161
+ if (!this.$watched[0] || !this.$watched[1]) {
162
+ return true;
163
+ }
164
+ return this.$watched[0].getBoundingClientRect().top !== this.$watched[1].getBoundingClientRect().top;
165
+ }
166
+
167
+ /**
168
+ * Finds the outer heights of children contained within an Equalizer parent and returns them in an array
169
+ * @param {Function} cb - A non-optional callback to return the heights array to.
170
+ * @returns {Array} heights - An array of heights of children within Equalizer container
171
+ */
172
+ getHeights(cb) {
173
+ var heights = [];
174
+ for(var i = 0, len = this.$watched.length; i < len; i++){
175
+ this.$watched[i].style.height = 'auto';
176
+ heights.push(this.$watched[i].offsetHeight);
177
+ }
178
+ cb(heights);
179
+ }
180
+
181
+ /**
182
+ * Finds the outer heights of children contained within an Equalizer parent and returns them in an array
183
+ * @param {Function} cb - A non-optional callback to return the heights array to.
184
+ * @returns {Array} groups - An array of heights of children within Equalizer container grouped by row with element,height and max as last child
185
+ */
186
+ getHeightsByRow(cb) {
187
+ var lastElTopOffset = (this.$watched.length ? this.$watched.first().offset().top : 0),
188
+ groups = [],
189
+ group = 0;
190
+ //group by Row
191
+ groups[group] = [];
192
+ for(var i = 0, len = this.$watched.length; i < len; i++){
193
+ this.$watched[i].style.height = 'auto';
194
+ //maybe could use this.$watched[i].offsetTop
195
+ var elOffsetTop = $(this.$watched[i]).offset().top;
196
+ if (elOffsetTop!=lastElTopOffset) {
197
+ group++;
198
+ groups[group] = [];
199
+ lastElTopOffset=elOffsetTop;
200
+ }
201
+ groups[group].push([this.$watched[i],this.$watched[i].offsetHeight]);
202
+ }
203
+
204
+ for (var j = 0, ln = groups.length; j < ln; j++) {
205
+ var heights = $(groups[j]).map(function(){ return this[1]; }).get();
206
+ var max = Math.max.apply(null, heights);
207
+ groups[j].push(max);
208
+ }
209
+ cb(groups);
210
+ }
211
+
212
+ /**
213
+ * Changes the CSS height property of each child in an Equalizer parent to match the tallest
214
+ * @param {array} heights - An array of heights of children within Equalizer container
215
+ * @fires Equalizer#preequalized
216
+ * @fires Equalizer#postequalized
217
+ */
218
+ applyHeight(heights) {
219
+ var max = Math.max.apply(null, heights);
220
+ /**
221
+ * Fires before the heights are applied
222
+ * @event Equalizer#preequalized
223
+ */
224
+ this.$element.trigger('preequalized.zf.equalizer');
225
+
226
+ this.$watched.css('height', max);
227
+
228
+ /**
229
+ * Fires when the heights have been applied
230
+ * @event Equalizer#postequalized
231
+ */
232
+ this.$element.trigger('postequalized.zf.equalizer');
233
+ }
234
+
235
+ /**
236
+ * Changes the CSS height property of each child in an Equalizer parent to match the tallest by row
237
+ * @param {array} groups - An array of heights of children within Equalizer container grouped by row with element,height and max as last child
238
+ * @fires Equalizer#preequalized
239
+ * @fires Equalizer#preequalizedrow
240
+ * @fires Equalizer#postequalizedrow
241
+ * @fires Equalizer#postequalized
242
+ */
243
+ applyHeightByRow(groups) {
244
+ /**
245
+ * Fires before the heights are applied
246
+ */
247
+ this.$element.trigger('preequalized.zf.equalizer');
248
+ for (var i = 0, len = groups.length; i < len ; i++) {
249
+ var groupsILength = groups[i].length,
250
+ max = groups[i][groupsILength - 1];
251
+ if (groupsILength<=2) {
252
+ $(groups[i][0][0]).css({'height':'auto'});
253
+ continue;
254
+ }
255
+ /**
256
+ * Fires before the heights per row are applied
257
+ * @event Equalizer#preequalizedrow
258
+ */
259
+ this.$element.trigger('preequalizedrow.zf.equalizer');
260
+ for (var j = 0, lenJ = (groupsILength-1); j < lenJ ; j++) {
261
+ $(groups[i][j][0]).css({'height':max});
262
+ }
263
+ /**
264
+ * Fires when the heights per row have been applied
265
+ * @event Equalizer#postequalizedrow
266
+ */
267
+ this.$element.trigger('postequalizedrow.zf.equalizer');
268
+ }
269
+ /**
270
+ * Fires when the heights have been applied
271
+ */
272
+ this.$element.trigger('postequalized.zf.equalizer');
273
+ }
274
+
275
+ /**
276
+ * Destroys an instance of Equalizer.
277
+ * @function
278
+ */
279
+ destroy() {
280
+ this._pauseEvents();
281
+ this.$watched.css('height', 'auto');
282
+
283
+ Foundation.unregisterPlugin(this);
284
+ }
285
+ }
286
+
287
+ /**
288
+ * Default settings for plugin
289
+ */
290
+ Equalizer.defaults = {
291
+ /**
292
+ * Enable height equalization when stacked on smaller screens.
293
+ * @option
294
+ * @type {boolean}
295
+ * @default false
296
+ */
297
+ equalizeOnStack: false,
298
+ /**
299
+ * Enable height equalization row by row.
300
+ * @option
301
+ * @type {boolean}
302
+ * @default false
303
+ */
304
+ equalizeByRow: false,
305
+ /**
306
+ * String representing the minimum breakpoint size the plugin should equalize heights on.
307
+ * @option
308
+ * @type {string}
309
+ * @default ''
310
+ */
311
+ equalizeOn: ''
312
+ };
313
+
314
+ // Window exports
315
+ Foundation.plugin(Equalizer, 'Equalizer');
316
+
317
+ }(jQuery);
@@ -0,0 +1,203 @@
1
+ 'use strict';
2
+
3
+ !function($) {
4
+
5
+ /**
6
+ * Interchange module.
7
+ * @module foundation.interchange
8
+ * @requires foundation.util.mediaQuery
9
+ * @requires foundation.util.timerAndImageLoader
10
+ */
11
+
12
+ class Interchange {
13
+ /**
14
+ * Creates a new instance of Interchange.
15
+ * @class
16
+ * @fires Interchange#init
17
+ * @param {Object} element - jQuery object to add the trigger to.
18
+ * @param {Object} options - Overrides to the default plugin settings.
19
+ */
20
+ constructor(element, options) {
21
+ this.$element = element;
22
+ this.options = $.extend({}, Interchange.defaults, options);
23
+ this.rules = [];
24
+ this.currentPath = '';
25
+
26
+ this._init();
27
+ this._events();
28
+
29
+ Foundation.registerPlugin(this, 'Interchange');
30
+ }
31
+
32
+ /**
33
+ * Initializes the Interchange plugin and calls functions to get interchange functioning on load.
34
+ * @function
35
+ * @private
36
+ */
37
+ _init() {
38
+ this._addBreakpoints();
39
+ this._generateRules();
40
+ this._reflow();
41
+ }
42
+
43
+ /**
44
+ * Initializes events for Interchange.
45
+ * @function
46
+ * @private
47
+ */
48
+ _events() {
49
+ $(window).on('resize.zf.interchange', Foundation.util.throttle(() => {
50
+ this._reflow();
51
+ }, 50));
52
+ }
53
+
54
+ /**
55
+ * Calls necessary functions to update Interchange upon DOM change
56
+ * @function
57
+ * @private
58
+ */
59
+ _reflow() {
60
+ var match;
61
+
62
+ // Iterate through each rule, but only save the last match
63
+ for (var i in this.rules) {
64
+ if(this.rules.hasOwnProperty(i)) {
65
+ var rule = this.rules[i];
66
+ if (window.matchMedia(rule.query).matches) {
67
+ match = rule;
68
+ }
69
+ }
70
+ }
71
+
72
+ if (match) {
73
+ this.replace(match.path);
74
+ }
75
+ }
76
+
77
+ /**
78
+ * Gets the Foundation breakpoints and adds them to the Interchange.SPECIAL_QUERIES object.
79
+ * @function
80
+ * @private
81
+ */
82
+ _addBreakpoints() {
83
+ for (var i in Foundation.MediaQuery.queries) {
84
+ if (Foundation.MediaQuery.queries.hasOwnProperty(i)) {
85
+ var query = Foundation.MediaQuery.queries[i];
86
+ Interchange.SPECIAL_QUERIES[query.name] = query.value;
87
+ }
88
+ }
89
+ }
90
+
91
+ /**
92
+ * Checks the Interchange element for the provided media query + content pairings
93
+ * @function
94
+ * @private
95
+ * @param {Object} element - jQuery object that is an Interchange instance
96
+ * @returns {Array} scenarios - Array of objects that have 'mq' and 'path' keys with corresponding keys
97
+ */
98
+ _generateRules(element) {
99
+ var rulesList = [];
100
+ var rules;
101
+
102
+ if (this.options.rules) {
103
+ rules = this.options.rules;
104
+ }
105
+ else {
106
+ rules = this.$element.data('interchange');
107
+ }
108
+
109
+ rules = typeof rules === 'string' ? rules.match(/\[.*?\]/g) : rules;
110
+
111
+ for (var i in rules) {
112
+ if(rules.hasOwnProperty(i)) {
113
+ var rule = rules[i].slice(1, -1).split(', ');
114
+ var path = rule.slice(0, -1).join('');
115
+ var query = rule[rule.length - 1];
116
+
117
+ if (Interchange.SPECIAL_QUERIES[query]) {
118
+ query = Interchange.SPECIAL_QUERIES[query];
119
+ }
120
+
121
+ rulesList.push({
122
+ path: path,
123
+ query: query
124
+ });
125
+ }
126
+ }
127
+
128
+ this.rules = rulesList;
129
+ }
130
+
131
+ /**
132
+ * Update the `src` property of an image, or change the HTML of a container, to the specified path.
133
+ * @function
134
+ * @param {String} path - Path to the image or HTML partial.
135
+ * @fires Interchange#replaced
136
+ */
137
+ replace(path) {
138
+ if (this.currentPath === path) return;
139
+
140
+ var _this = this,
141
+ trigger = 'replaced.zf.interchange';
142
+
143
+ // Replacing images
144
+ if (this.$element[0].nodeName === 'IMG') {
145
+ this.$element.attr('src', path).on('load', function() {
146
+ _this.currentPath = path;
147
+ })
148
+ .trigger(trigger);
149
+ }
150
+ // Replacing background images
151
+ else if (path.match(/\.(gif|jpg|jpeg|png|svg|tiff)([?#].*)?/i)) {
152
+ this.$element.css({ 'background-image': 'url('+path+')' })
153
+ .trigger(trigger);
154
+ }
155
+ // Replacing HTML
156
+ else {
157
+ $.get(path, function(response) {
158
+ _this.$element.html(response)
159
+ .trigger(trigger);
160
+ $(response).foundation();
161
+ _this.currentPath = path;
162
+ });
163
+ }
164
+
165
+ /**
166
+ * Fires when content in an Interchange element is done being loaded.
167
+ * @event Interchange#replaced
168
+ */
169
+ // this.$element.trigger('replaced.zf.interchange');
170
+ }
171
+
172
+ /**
173
+ * Destroys an instance of interchange.
174
+ * @function
175
+ */
176
+ destroy() {
177
+ //TODO this.
178
+ }
179
+ }
180
+
181
+ /**
182
+ * Default settings for plugin
183
+ */
184
+ Interchange.defaults = {
185
+ /**
186
+ * Rules to be applied to Interchange elements. Set with the `data-interchange` array notation.
187
+ * @option
188
+ * @type {?array}
189
+ * @default null
190
+ */
191
+ rules: null
192
+ };
193
+
194
+ Interchange.SPECIAL_QUERIES = {
195
+ 'landscape': 'screen and (orientation: landscape)',
196
+ 'portrait': 'screen and (orientation: portrait)',
197
+ 'retina': 'only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min--moz-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio: 2/1), only screen and (min-device-pixel-ratio: 2), only screen and (min-resolution: 192dpi), only screen and (min-resolution: 2dppx)'
198
+ };
199
+
200
+ // Window exports
201
+ Foundation.plugin(Interchange, 'Interchange');
202
+
203
+ }(jQuery);