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 @@
1
+ "use strict";function _classCallCheck(t,i){if(!(t instanceof i))throw new TypeError("Cannot call a class as a function")}var _createClass=function(){function t(t,i){for(var e=0;e<i.length;e++){var s=i[e];s.enumerable=s.enumerable||!1,s.configurable=!0,"value"in s&&(s.writable=!0),Object.defineProperty(t,s.key,s)}}return function(i,e,s){return e&&t(i.prototype,e),s&&t(i,s),i}}();!function(t){var i=function(){function i(e,s){_classCallCheck(this,i),this.$element=e,this.options=t.extend({},i.defaults,this.$element.data(),s),this._init(),Foundation.registerPlugin(this,"Orbit"),Foundation.Keyboard.register("Orbit",{ltr:{ARROW_RIGHT:"next",ARROW_LEFT:"previous"},rtl:{ARROW_LEFT:"next",ARROW_RIGHT:"previous"}})}return _createClass(i,[{key:"_init",value:function(){this._reset(),this.$wrapper=this.$element.find("."+this.options.containerClass),this.$slides=this.$element.find("."+this.options.slideClass);var t=this.$element.find("img"),i=this.$slides.filter(".is-active"),e=this.$element[0].id||Foundation.GetYoDigits(6,"orbit");this.$element.attr({"data-resize":e,id:e}),i.length||this.$slides.eq(0).addClass("is-active"),this.options.useMUI||this.$slides.addClass("no-motionui"),t.length?Foundation.onImagesLoaded(t,this._prepareForOrbit.bind(this)):this._prepareForOrbit(),this.options.bullets&&this._loadBullets(),this._events(),this.options.autoPlay&&this.$slides.length>1&&this.geoSync(),this.options.accessible&&this.$wrapper.attr("tabindex",0)}},{key:"_loadBullets",value:function(){this.$bullets=this.$element.find("."+this.options.boxOfBullets).find("button")}},{key:"geoSync",value:function(){var t=this;this.timer=new Foundation.Timer(this.$element,{duration:this.options.timerDelay,infinite:!1},function(){t.changeSlide(!0)}),this.timer.start()}},{key:"_prepareForOrbit",value:function(){this._setWrapperHeight()}},{key:"_setWrapperHeight",value:function(i){var e,s=0,n=0,o=this;this.$slides.each(function(){e=this.getBoundingClientRect().height,t(this).attr("data-slide",n),o.$slides.filter(".is-active")[0]!==o.$slides.eq(n)[0]&&t(this).css({position:"relative",display:"none"}),s=e>s?e:s,n++}),n===this.$slides.length&&(this.$wrapper.css({height:s}),i&&i(s))}},{key:"_setSlideHeight",value:function(i){this.$slides.each(function(){t(this).css("max-height",i)})}},{key:"_events",value:function(){var i=this;if(this.$element.off(".resizeme.zf.trigger").on({"resizeme.zf.trigger":this._prepareForOrbit.bind(this)}),this.$slides.length>1){if(this.options.swipe&&this.$slides.off("swipeleft.zf.orbit swiperight.zf.orbit").on("swipeleft.zf.orbit",function(t){t.preventDefault(),i.changeSlide(!0)}).on("swiperight.zf.orbit",function(t){t.preventDefault(),i.changeSlide(!1)}),this.options.autoPlay&&(this.$slides.on("click.zf.orbit",function(){i.$element.data("clickedOn",!i.$element.data("clickedOn")),i.timer[i.$element.data("clickedOn")?"pause":"start"]()}),this.options.pauseOnHover&&this.$element.on("mouseenter.zf.orbit",function(){i.timer.pause()}).on("mouseleave.zf.orbit",function(){i.$element.data("clickedOn")||i.timer.start()})),this.options.navButtons){var e=this.$element.find("."+this.options.nextClass+", ."+this.options.prevClass);e.attr("tabindex",0).on("click.zf.orbit touchend.zf.orbit",function(e){e.preventDefault(),i.changeSlide(t(this).hasClass(i.options.nextClass))})}this.options.bullets&&this.$bullets.on("click.zf.orbit touchend.zf.orbit",function(){if(/is-active/g.test(this.className))return!1;var e=t(this).data("slide"),s=e>i.$slides.filter(".is-active").data("slide"),n=i.$slides.eq(e);i.changeSlide(s,n,e)}),this.options.accessible&&this.$wrapper.add(this.$bullets).on("keydown.zf.orbit",function(e){Foundation.Keyboard.handleKey(e,"Orbit",{next:function(){i.changeSlide(!0)},previous:function(){i.changeSlide(!1)},handled:function(){t(e.target).is(i.$bullets)&&i.$bullets.filter(".is-active").focus()}})})}}},{key:"_reset",value:function(){"undefined"!=typeof this.$slides&&this.$slides.length>1&&(this.$element.off(".zf.orbit").find("*").off(".zf.orbit"),this.options.autoPlay&&this.timer.restart(),this.$slides.each(function(i){t(i).removeClass("is-active is-active is-in").removeAttr("aria-live").hide()}),this.$slides.first().addClass("is-active").show(),this.$element.trigger("slidechange.zf.orbit",[this.$slides.first()]),this.options.bullets&&this._updateBullets(0))}},{key:"changeSlide",value:function(t,i,e){if(this.$slides){var s=this.$slides.filter(".is-active").eq(0);if(/mui/g.test(s[0].className))return!1;var n,o=this.$slides.first(),a=this.$slides.last(),l=t?"Right":"Left",r=t?"Left":"Right",h=this;n=i?i:t?this.options.infiniteWrap?s.next("."+this.options.slideClass).length?s.next("."+this.options.slideClass):o:s.next("."+this.options.slideClass):this.options.infiniteWrap?s.prev("."+this.options.slideClass).length?s.prev("."+this.options.slideClass):a:s.prev("."+this.options.slideClass),n.length&&(this.$element.trigger("beforeslidechange.zf.orbit",[s,n]),this.options.bullets&&(e=e||this.$slides.index(n),this._updateBullets(e)),this.options.useMUI&&!this.$element.is(":hidden")?(Foundation.Motion.animateIn(n.addClass("is-active").css({position:"absolute",top:0}),this.options["animInFrom"+l],function(){n.css({position:"relative",display:"block"}).attr("aria-live","polite")}),Foundation.Motion.animateOut(s.removeClass("is-active"),this.options["animOutTo"+r],function(){s.removeAttr("aria-live"),h.options.autoPlay&&!h.timer.isPaused&&h.timer.restart()})):(s.removeClass("is-active is-in").removeAttr("aria-live").hide(),n.addClass("is-active is-in").attr("aria-live","polite").show(),this.options.autoPlay&&!this.timer.isPaused&&this.timer.restart()),this.$element.trigger("slidechange.zf.orbit",[n]))}}},{key:"_updateBullets",value:function(t){var i=this.$element.find("."+this.options.boxOfBullets).find(".is-active").removeClass("is-active").blur(),e=i.find("span:last").detach();this.$bullets.eq(t).addClass("is-active").append(e)}},{key:"destroy",value:function(){this.$element.off(".zf.orbit").find("*").off(".zf.orbit").end().hide(),Foundation.unregisterPlugin(this)}}]),i}();i.defaults={bullets:!0,navButtons:!0,animInFromRight:"slide-in-right",animOutToRight:"slide-out-right",animInFromLeft:"slide-in-left",animOutToLeft:"slide-out-left",autoPlay:!0,timerDelay:5e3,infiniteWrap:!0,swipe:!0,pauseOnHover:!0,accessible:!0,containerClass:"orbit-container",slideClass:"orbit-slide",boxOfBullets:"orbit-bullets",nextClass:"orbit-next",prevClass:"orbit-previous",useMUI:!0},Foundation.plugin(i,"Orbit")}(jQuery);
@@ -0,0 +1,169 @@
1
+ 'use strict';
2
+
3
+ var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
4
+
5
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
6
+
7
+ !function ($) {
8
+
9
+ /**
10
+ * ResponsiveMenu module.
11
+ * @module foundation.responsiveMenu
12
+ * @requires foundation.util.triggers
13
+ * @requires foundation.util.mediaQuery
14
+ */
15
+
16
+ var ResponsiveMenu = function () {
17
+ /**
18
+ * Creates a new instance of a responsive menu.
19
+ * @class
20
+ * @fires ResponsiveMenu#init
21
+ * @param {jQuery} element - jQuery object to make into a dropdown menu.
22
+ * @param {Object} options - Overrides to the default plugin settings.
23
+ */
24
+ function ResponsiveMenu(element, options) {
25
+ _classCallCheck(this, ResponsiveMenu);
26
+
27
+ this.$element = $(element);
28
+ this.rules = this.$element.data('responsive-menu');
29
+ this.currentMq = null;
30
+ this.currentPlugin = null;
31
+
32
+ this._init();
33
+ this._events();
34
+
35
+ Foundation.registerPlugin(this, 'ResponsiveMenu');
36
+ }
37
+
38
+ /**
39
+ * Initializes the Menu by parsing the classes from the 'data-ResponsiveMenu' attribute on the element.
40
+ * @function
41
+ * @private
42
+ */
43
+
44
+
45
+ _createClass(ResponsiveMenu, [{
46
+ key: '_init',
47
+ value: function _init() {
48
+ // The first time an Interchange plugin is initialized, this.rules is converted from a string of "classes" to an object of rules
49
+ if (typeof this.rules === 'string') {
50
+ var rulesTree = {};
51
+
52
+ // Parse rules from "classes" pulled from data attribute
53
+ var rules = this.rules.split(' ');
54
+
55
+ // Iterate through every rule found
56
+ for (var i = 0; i < rules.length; i++) {
57
+ var rule = rules[i].split('-');
58
+ var ruleSize = rule.length > 1 ? rule[0] : 'small';
59
+ var rulePlugin = rule.length > 1 ? rule[1] : rule[0];
60
+
61
+ if (MenuPlugins[rulePlugin] !== null) {
62
+ rulesTree[ruleSize] = MenuPlugins[rulePlugin];
63
+ }
64
+ }
65
+
66
+ this.rules = rulesTree;
67
+ }
68
+
69
+ if (!$.isEmptyObject(this.rules)) {
70
+ this._checkMediaQueries();
71
+ }
72
+ // Add data-mutate since children may need it.
73
+ this.$element.attr('data-mutate', this.$element.attr('data-mutate') || Foundation.GetYoDigits(6, 'responsive-menu'));
74
+ }
75
+
76
+ /**
77
+ * Initializes events for the Menu.
78
+ * @function
79
+ * @private
80
+ */
81
+
82
+ }, {
83
+ key: '_events',
84
+ value: function _events() {
85
+ var _this = this;
86
+
87
+ $(window).on('changed.zf.mediaquery', function () {
88
+ _this._checkMediaQueries();
89
+ });
90
+ // $(window).on('resize.zf.ResponsiveMenu', function() {
91
+ // _this._checkMediaQueries();
92
+ // });
93
+ }
94
+
95
+ /**
96
+ * 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.
97
+ * @function
98
+ * @private
99
+ */
100
+
101
+ }, {
102
+ key: '_checkMediaQueries',
103
+ value: function _checkMediaQueries() {
104
+ var matchedMq,
105
+ _this = this;
106
+ // Iterate through each rule and find the last matching rule
107
+ $.each(this.rules, function (key) {
108
+ if (Foundation.MediaQuery.atLeast(key)) {
109
+ matchedMq = key;
110
+ }
111
+ });
112
+
113
+ // No match? No dice
114
+ if (!matchedMq) return;
115
+
116
+ // Plugin already initialized? We good
117
+ if (this.currentPlugin instanceof this.rules[matchedMq].plugin) return;
118
+
119
+ // Remove existing plugin-specific CSS classes
120
+ $.each(MenuPlugins, function (key, value) {
121
+ _this.$element.removeClass(value.cssClass);
122
+ });
123
+
124
+ // Add the CSS class for the new plugin
125
+ this.$element.addClass(this.rules[matchedMq].cssClass);
126
+
127
+ // Create an instance of the new plugin
128
+ if (this.currentPlugin) this.currentPlugin.destroy();
129
+ this.currentPlugin = new this.rules[matchedMq].plugin(this.$element, {});
130
+ }
131
+
132
+ /**
133
+ * Destroys the instance of the current plugin on this element, as well as the window resize handler that switches the plugins out.
134
+ * @function
135
+ */
136
+
137
+ }, {
138
+ key: 'destroy',
139
+ value: function destroy() {
140
+ this.currentPlugin.destroy();
141
+ $(window).off('.zf.ResponsiveMenu');
142
+ Foundation.unregisterPlugin(this);
143
+ }
144
+ }]);
145
+
146
+ return ResponsiveMenu;
147
+ }();
148
+
149
+ ResponsiveMenu.defaults = {};
150
+
151
+ // The plugin matches the plugin classes with these plugin instances.
152
+ var MenuPlugins = {
153
+ dropdown: {
154
+ cssClass: 'dropdown',
155
+ plugin: Foundation._plugins['dropdown-menu'] || null
156
+ },
157
+ drilldown: {
158
+ cssClass: 'drilldown',
159
+ plugin: Foundation._plugins['drilldown'] || null
160
+ },
161
+ accordion: {
162
+ cssClass: 'accordion-menu',
163
+ plugin: Foundation._plugins['accordion-menu'] || null
164
+ }
165
+ };
166
+
167
+ // Window exports
168
+ Foundation.plugin(ResponsiveMenu, 'ResponsiveMenu');
169
+ }(jQuery);
@@ -0,0 +1 @@
1
+ "use strict";function _classCallCheck(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}var _createClass=function(){function e(e,n){for(var t=0;t<n.length;t++){var i=n[t];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(n,t,i){return t&&e(n.prototype,t),i&&e(n,i),n}}();!function(e){var n=function(){function n(t,i){_classCallCheck(this,n),this.$element=e(t),this.rules=this.$element.data("responsive-menu"),this.currentMq=null,this.currentPlugin=null,this._init(),this._events(),Foundation.registerPlugin(this,"ResponsiveMenu")}return _createClass(n,[{key:"_init",value:function(){if("string"==typeof this.rules){for(var n={},i=this.rules.split(" "),s=0;s<i.length;s++){var u=i[s].split("-"),l=u.length>1?u[0]:"small",r=u.length>1?u[1]:u[0];null!==t[r]&&(n[l]=t[r])}this.rules=n}e.isEmptyObject(this.rules)||this._checkMediaQueries(),this.$element.attr("data-mutate",this.$element.attr("data-mutate")||Foundation.GetYoDigits(6,"responsive-menu"))}},{key:"_events",value:function(){var n=this;e(window).on("changed.zf.mediaquery",function(){n._checkMediaQueries()})}},{key:"_checkMediaQueries",value:function(){var n,i=this;e.each(this.rules,function(e){Foundation.MediaQuery.atLeast(e)&&(n=e)}),n&&(this.currentPlugin instanceof this.rules[n].plugin||(e.each(t,function(e,n){i.$element.removeClass(n.cssClass)}),this.$element.addClass(this.rules[n].cssClass),this.currentPlugin&&this.currentPlugin.destroy(),this.currentPlugin=new this.rules[n].plugin(this.$element,{})))}},{key:"destroy",value:function(){this.currentPlugin.destroy(),e(window).off(".zf.ResponsiveMenu"),Foundation.unregisterPlugin(this)}}]),n}();n.defaults={};var t={dropdown:{cssClass:"dropdown",plugin:Foundation._plugins["dropdown-menu"]||null},drilldown:{cssClass:"drilldown",plugin:Foundation._plugins.drilldown||null},accordion:{cssClass:"accordion-menu",plugin:Foundation._plugins["accordion-menu"]||null}};Foundation.plugin(n,"ResponsiveMenu")}(jQuery);
@@ -0,0 +1,177 @@
1
+ 'use strict';
2
+
3
+ var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
4
+
5
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
6
+
7
+ !function ($) {
8
+
9
+ /**
10
+ * ResponsiveToggle module.
11
+ * @module foundation.responsiveToggle
12
+ * @requires foundation.util.mediaQuery
13
+ */
14
+
15
+ var ResponsiveToggle = function () {
16
+ /**
17
+ * Creates a new instance of Tab Bar.
18
+ * @class
19
+ * @fires ResponsiveToggle#init
20
+ * @param {jQuery} element - jQuery object to attach tab bar functionality to.
21
+ * @param {Object} options - Overrides to the default plugin settings.
22
+ */
23
+ function ResponsiveToggle(element, options) {
24
+ _classCallCheck(this, ResponsiveToggle);
25
+
26
+ this.$element = $(element);
27
+ this.options = $.extend({}, ResponsiveToggle.defaults, this.$element.data(), options);
28
+
29
+ this._init();
30
+ this._events();
31
+
32
+ Foundation.registerPlugin(this, 'ResponsiveToggle');
33
+ }
34
+
35
+ /**
36
+ * Initializes the tab bar by finding the target element, toggling element, and running update().
37
+ * @function
38
+ * @private
39
+ */
40
+
41
+
42
+ _createClass(ResponsiveToggle, [{
43
+ key: '_init',
44
+ value: function _init() {
45
+ var targetID = this.$element.data('responsive-toggle');
46
+ if (!targetID) {
47
+ console.error('Your tab bar needs an ID of a Menu as the value of data-tab-bar.');
48
+ }
49
+
50
+ this.$targetMenu = $('#' + targetID);
51
+ this.$toggler = this.$element.find('[data-toggle]').filter(function () {
52
+ var target = $(this).data('toggle');
53
+ return target === targetID || target === "";
54
+ });
55
+ this.options = $.extend({}, this.options, this.$targetMenu.data());
56
+
57
+ // If they were set, parse the animation classes
58
+ if (this.options.animate) {
59
+ var input = this.options.animate.split(' ');
60
+
61
+ this.animationIn = input[0];
62
+ this.animationOut = input[1] || null;
63
+ }
64
+
65
+ this._update();
66
+ }
67
+
68
+ /**
69
+ * Adds necessary event handlers for the tab bar to work.
70
+ * @function
71
+ * @private
72
+ */
73
+
74
+ }, {
75
+ key: '_events',
76
+ value: function _events() {
77
+ var _this = this;
78
+
79
+ this._updateMqHandler = this._update.bind(this);
80
+
81
+ $(window).on('changed.zf.mediaquery', this._updateMqHandler);
82
+
83
+ this.$toggler.on('click.zf.responsiveToggle', this.toggleMenu.bind(this));
84
+ }
85
+
86
+ /**
87
+ * Checks the current media query to determine if the tab bar should be visible or hidden.
88
+ * @function
89
+ * @private
90
+ */
91
+
92
+ }, {
93
+ key: '_update',
94
+ value: function _update() {
95
+ // Mobile
96
+ if (!Foundation.MediaQuery.atLeast(this.options.hideFor)) {
97
+ this.$element.show();
98
+ this.$targetMenu.hide();
99
+ }
100
+
101
+ // Desktop
102
+ else {
103
+ this.$element.hide();
104
+ this.$targetMenu.show();
105
+ }
106
+ }
107
+
108
+ /**
109
+ * Toggles the element attached to the tab bar. The toggle only happens if the screen is small enough to allow it.
110
+ * @function
111
+ * @fires ResponsiveToggle#toggled
112
+ */
113
+
114
+ }, {
115
+ key: 'toggleMenu',
116
+ value: function toggleMenu() {
117
+ var _this2 = this;
118
+
119
+ if (!Foundation.MediaQuery.atLeast(this.options.hideFor)) {
120
+ /**
121
+ * Fires when the element attached to the tab bar toggles.
122
+ * @event ResponsiveToggle#toggled
123
+ */
124
+ if (this.options.animate) {
125
+ if (this.$targetMenu.is(':hidden')) {
126
+ Foundation.Motion.animateIn(this.$targetMenu, this.animationIn, function () {
127
+ _this2.$element.trigger('toggled.zf.responsiveToggle');
128
+ _this2.$targetMenu.find('[data-mutate]').triggerHandler('mutateme.zf.trigger');
129
+ });
130
+ } else {
131
+ Foundation.Motion.animateOut(this.$targetMenu, this.animationOut, function () {
132
+ _this2.$element.trigger('toggled.zf.responsiveToggle');
133
+ });
134
+ }
135
+ } else {
136
+ this.$targetMenu.toggle(0);
137
+ this.$targetMenu.find('[data-mutate]').trigger('mutateme.zf.trigger');
138
+ this.$element.trigger('toggled.zf.responsiveToggle');
139
+ }
140
+ }
141
+ }
142
+ }, {
143
+ key: 'destroy',
144
+ value: function destroy() {
145
+ this.$element.off('.zf.responsiveToggle');
146
+ this.$toggler.off('.zf.responsiveToggle');
147
+
148
+ $(window).off('changed.zf.mediaquery', this._updateMqHandler);
149
+
150
+ Foundation.unregisterPlugin(this);
151
+ }
152
+ }]);
153
+
154
+ return ResponsiveToggle;
155
+ }();
156
+
157
+ ResponsiveToggle.defaults = {
158
+ /**
159
+ * The breakpoint after which the menu is always shown, and the tab bar is hidden.
160
+ * @option
161
+ * @type {string}
162
+ * @default 'medium'
163
+ */
164
+ hideFor: 'medium',
165
+
166
+ /**
167
+ * To decide if the toggle should be animated or not.
168
+ * @option
169
+ * @type {boolean}
170
+ * @default false
171
+ */
172
+ animate: false
173
+ };
174
+
175
+ // Window exports
176
+ Foundation.plugin(ResponsiveToggle, 'ResponsiveToggle');
177
+ }(jQuery);
@@ -0,0 +1 @@
1
+ "use strict";function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var _createClass=function(){function e(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}return function(t,n,i){return n&&e(t.prototype,n),i&&e(t,i),t}}();!function(e){var t=function(){function t(n,i){_classCallCheck(this,t),this.$element=e(n),this.options=e.extend({},t.defaults,this.$element.data(),i),this._init(),this._events(),Foundation.registerPlugin(this,"ResponsiveToggle")}return _createClass(t,[{key:"_init",value:function(){var t=this.$element.data("responsive-toggle");if(t||console.error("Your tab bar needs an ID of a Menu as the value of data-tab-bar."),this.$targetMenu=e("#"+t),this.$toggler=this.$element.find("[data-toggle]").filter(function(){var n=e(this).data("toggle");return n===t||""===n}),this.options=e.extend({},this.options,this.$targetMenu.data()),this.options.animate){var n=this.options.animate.split(" ");this.animationIn=n[0],this.animationOut=n[1]||null}this._update()}},{key:"_events",value:function(){this._updateMqHandler=this._update.bind(this),e(window).on("changed.zf.mediaquery",this._updateMqHandler),this.$toggler.on("click.zf.responsiveToggle",this.toggleMenu.bind(this))}},{key:"_update",value:function(){Foundation.MediaQuery.atLeast(this.options.hideFor)?(this.$element.hide(),this.$targetMenu.show()):(this.$element.show(),this.$targetMenu.hide())}},{key:"toggleMenu",value:function(){var e=this;Foundation.MediaQuery.atLeast(this.options.hideFor)||(this.options.animate?this.$targetMenu.is(":hidden")?Foundation.Motion.animateIn(this.$targetMenu,this.animationIn,function(){e.$element.trigger("toggled.zf.responsiveToggle"),e.$targetMenu.find("[data-mutate]").triggerHandler("mutateme.zf.trigger")}):Foundation.Motion.animateOut(this.$targetMenu,this.animationOut,function(){e.$element.trigger("toggled.zf.responsiveToggle")}):(this.$targetMenu.toggle(0),this.$targetMenu.find("[data-mutate]").trigger("mutateme.zf.trigger"),this.$element.trigger("toggled.zf.responsiveToggle")))}},{key:"destroy",value:function(){this.$element.off(".zf.responsiveToggle"),this.$toggler.off(".zf.responsiveToggle"),e(window).off("changed.zf.mediaquery",this._updateMqHandler),Foundation.unregisterPlugin(this)}}]),t}();t.defaults={hideFor:"medium",animate:!1},Foundation.plugin(t,"ResponsiveToggle")}(jQuery);
@@ -0,0 +1,633 @@
1
+ 'use strict';
2
+
3
+ var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
4
+
5
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
6
+
7
+ !function ($) {
8
+
9
+ /**
10
+ * Reveal module.
11
+ * @module foundation.reveal
12
+ * @requires foundation.util.keyboard
13
+ * @requires foundation.util.box
14
+ * @requires foundation.util.triggers
15
+ * @requires foundation.util.mediaQuery
16
+ * @requires foundation.util.motion if using animations
17
+ */
18
+
19
+ var Reveal = function () {
20
+ /**
21
+ * Creates a new instance of Reveal.
22
+ * @class
23
+ * @param {jQuery} element - jQuery object to use for the modal.
24
+ * @param {Object} options - optional parameters.
25
+ */
26
+ function Reveal(element, options) {
27
+ _classCallCheck(this, Reveal);
28
+
29
+ this.$element = element;
30
+ this.options = $.extend({}, Reveal.defaults, this.$element.data(), options);
31
+ this._init();
32
+
33
+ Foundation.registerPlugin(this, 'Reveal');
34
+ Foundation.Keyboard.register('Reveal', {
35
+ 'ENTER': 'open',
36
+ 'SPACE': 'open',
37
+ 'ESCAPE': 'close'
38
+ });
39
+ }
40
+
41
+ /**
42
+ * Initializes the modal by adding the overlay and close buttons, (if selected).
43
+ * @private
44
+ */
45
+
46
+
47
+ _createClass(Reveal, [{
48
+ key: '_init',
49
+ value: function _init() {
50
+ this.id = this.$element.attr('id');
51
+ this.isActive = false;
52
+ this.cached = { mq: Foundation.MediaQuery.current };
53
+ this.isMobile = mobileSniff();
54
+
55
+ this.$anchor = $('[data-open="' + this.id + '"]').length ? $('[data-open="' + this.id + '"]') : $('[data-toggle="' + this.id + '"]');
56
+ this.$anchor.attr({
57
+ 'aria-controls': this.id,
58
+ 'aria-haspopup': true,
59
+ 'tabindex': 0
60
+ });
61
+
62
+ if (this.options.fullScreen || this.$element.hasClass('full')) {
63
+ this.options.fullScreen = true;
64
+ this.options.overlay = false;
65
+ }
66
+ if (this.options.overlay && !this.$overlay) {
67
+ this.$overlay = this._makeOverlay(this.id);
68
+ }
69
+
70
+ this.$element.attr({
71
+ 'role': 'dialog',
72
+ 'aria-hidden': true,
73
+ 'data-yeti-box': this.id,
74
+ 'data-resize': this.id
75
+ });
76
+
77
+ if (this.$overlay) {
78
+ this.$element.detach().appendTo(this.$overlay);
79
+ } else {
80
+ this.$element.detach().appendTo($(this.options.appendTo));
81
+ this.$element.addClass('without-overlay');
82
+ }
83
+ this._events();
84
+ if (this.options.deepLink && window.location.hash === '#' + this.id) {
85
+ $(window).one('load.zf.reveal', this.open.bind(this));
86
+ }
87
+ }
88
+
89
+ /**
90
+ * Creates an overlay div to display behind the modal.
91
+ * @private
92
+ */
93
+
94
+ }, {
95
+ key: '_makeOverlay',
96
+ value: function _makeOverlay() {
97
+ return $('<div></div>').addClass('reveal-overlay').appendTo(this.options.appendTo);
98
+ }
99
+
100
+ /**
101
+ * Updates position of modal
102
+ * TODO: Figure out if we actually need to cache these values or if it doesn't matter
103
+ * @private
104
+ */
105
+
106
+ }, {
107
+ key: '_updatePosition',
108
+ value: function _updatePosition() {
109
+ var width = this.$element.outerWidth();
110
+ var outerWidth = $(window).width();
111
+ var height = this.$element.outerHeight();
112
+ var outerHeight = $(window).height();
113
+ var left, top;
114
+ if (this.options.hOffset === 'auto') {
115
+ left = parseInt((outerWidth - width) / 2, 10);
116
+ } else {
117
+ left = parseInt(this.options.hOffset, 10);
118
+ }
119
+ if (this.options.vOffset === 'auto') {
120
+ if (height > outerHeight) {
121
+ top = parseInt(Math.min(100, outerHeight / 10), 10);
122
+ } else {
123
+ top = parseInt((outerHeight - height) / 4, 10);
124
+ }
125
+ } else {
126
+ top = parseInt(this.options.vOffset, 10);
127
+ }
128
+ this.$element.css({ top: top + 'px' });
129
+ // only worry about left if we don't have an overlay or we havea horizontal offset,
130
+ // otherwise we're perfectly in the middle
131
+ if (!this.$overlay || this.options.hOffset !== 'auto') {
132
+ this.$element.css({ left: left + 'px' });
133
+ this.$element.css({ margin: '0px' });
134
+ }
135
+ }
136
+
137
+ /**
138
+ * Adds event handlers for the modal.
139
+ * @private
140
+ */
141
+
142
+ }, {
143
+ key: '_events',
144
+ value: function _events() {
145
+ var _this2 = this;
146
+
147
+ var _this = this;
148
+
149
+ this.$element.on({
150
+ 'open.zf.trigger': this.open.bind(this),
151
+ 'close.zf.trigger': function (event, $element) {
152
+ if (event.target === _this.$element[0] || $(event.target).parents('[data-closable]')[0] === $element) {
153
+ // only close reveal when it's explicitly called
154
+ return _this2.close.apply(_this2);
155
+ }
156
+ },
157
+ 'toggle.zf.trigger': this.toggle.bind(this),
158
+ 'resizeme.zf.trigger': function () {
159
+ _this._updatePosition();
160
+ }
161
+ });
162
+
163
+ if (this.$anchor.length) {
164
+ this.$anchor.on('keydown.zf.reveal', function (e) {
165
+ if (e.which === 13 || e.which === 32) {
166
+ e.stopPropagation();
167
+ e.preventDefault();
168
+ _this.open();
169
+ }
170
+ });
171
+ }
172
+
173
+ if (this.options.closeOnClick && this.options.overlay) {
174
+ this.$overlay.off('.zf.reveal').on('click.zf.reveal', function (e) {
175
+ if (e.target === _this.$element[0] || $.contains(_this.$element[0], e.target) || !$.contains(document, e.target)) {
176
+ return;
177
+ }
178
+ _this.close();
179
+ });
180
+ }
181
+ if (this.options.deepLink) {
182
+ $(window).on('popstate.zf.reveal:' + this.id, this._handleState.bind(this));
183
+ }
184
+ }
185
+
186
+ /**
187
+ * Handles modal methods on back/forward button clicks or any other event that triggers popstate.
188
+ * @private
189
+ */
190
+
191
+ }, {
192
+ key: '_handleState',
193
+ value: function _handleState(e) {
194
+ if (window.location.hash === '#' + this.id && !this.isActive) {
195
+ this.open();
196
+ } else {
197
+ this.close();
198
+ }
199
+ }
200
+
201
+ /**
202
+ * Opens the modal controlled by `this.$anchor`, and closes all others by default.
203
+ * @function
204
+ * @fires Reveal#closeme
205
+ * @fires Reveal#open
206
+ */
207
+
208
+ }, {
209
+ key: 'open',
210
+ value: function open() {
211
+ var _this3 = this;
212
+
213
+ if (this.options.deepLink) {
214
+ var hash = '#' + this.id;
215
+
216
+ if (window.history.pushState) {
217
+ window.history.pushState(null, null, hash);
218
+ } else {
219
+ window.location.hash = hash;
220
+ }
221
+ }
222
+
223
+ this.isActive = true;
224
+
225
+ // Make elements invisible, but remove display: none so we can get size and positioning
226
+ this.$element.css({ 'visibility': 'hidden' }).show().scrollTop(0);
227
+ if (this.options.overlay) {
228
+ this.$overlay.css({ 'visibility': 'hidden' }).show();
229
+ }
230
+
231
+ this._updatePosition();
232
+
233
+ this.$element.hide().css({ 'visibility': '' });
234
+
235
+ if (this.$overlay) {
236
+ this.$overlay.css({ 'visibility': '' }).hide();
237
+ if (this.$element.hasClass('fast')) {
238
+ this.$overlay.addClass('fast');
239
+ } else if (this.$element.hasClass('slow')) {
240
+ this.$overlay.addClass('slow');
241
+ }
242
+ }
243
+
244
+ if (!this.options.multipleOpened) {
245
+ /**
246
+ * Fires immediately before the modal opens.
247
+ * Closes any other modals that are currently open
248
+ * @event Reveal#closeme
249
+ */
250
+ this.$element.trigger('closeme.zf.reveal', this.id);
251
+ }
252
+
253
+ var _this = this;
254
+
255
+ function addRevealOpenClasses() {
256
+ if (_this.isMobile) {
257
+ if (!_this.originalScrollPos) {
258
+ _this.originalScrollPos = window.pageYOffset;
259
+ }
260
+ $('html, body').addClass('is-reveal-open');
261
+ } else {
262
+ $('body').addClass('is-reveal-open');
263
+ }
264
+ }
265
+ // Motion UI method of reveal
266
+ if (this.options.animationIn) {
267
+ (function () {
268
+ var afterAnimation = function () {
269
+ _this.$element.attr({
270
+ 'aria-hidden': false,
271
+ 'tabindex': -1
272
+ }).focus();
273
+ addRevealOpenClasses();
274
+ Foundation.Keyboard.trapFocus(_this.$element);
275
+ };
276
+
277
+ if (_this3.options.overlay) {
278
+ Foundation.Motion.animateIn(_this3.$overlay, 'fade-in');
279
+ }
280
+ Foundation.Motion.animateIn(_this3.$element, _this3.options.animationIn, function () {
281
+ if (_this3.$element) {
282
+ // protect against object having been removed
283
+ _this3.focusableElements = Foundation.Keyboard.findFocusable(_this3.$element);
284
+ afterAnimation();
285
+ }
286
+ });
287
+ })();
288
+ }
289
+ // jQuery method of reveal
290
+ else {
291
+ if (this.options.overlay) {
292
+ this.$overlay.show(0);
293
+ }
294
+ this.$element.show(this.options.showDelay);
295
+ }
296
+
297
+ // handle accessibility
298
+ this.$element.attr({
299
+ 'aria-hidden': false,
300
+ 'tabindex': -1
301
+ }).focus();
302
+ Foundation.Keyboard.trapFocus(this.$element);
303
+
304
+ /**
305
+ * Fires when the modal has successfully opened.
306
+ * @event Reveal#open
307
+ */
308
+ this.$element.trigger('open.zf.reveal');
309
+
310
+ addRevealOpenClasses();
311
+
312
+ setTimeout(function () {
313
+ _this3._extraHandlers();
314
+ }, 0);
315
+ }
316
+
317
+ /**
318
+ * Adds extra event handlers for the body and window if necessary.
319
+ * @private
320
+ */
321
+
322
+ }, {
323
+ key: '_extraHandlers',
324
+ value: function _extraHandlers() {
325
+ var _this = this;
326
+ if (!this.$element) {
327
+ return;
328
+ } // If we're in the middle of cleanup, don't freak out
329
+ this.focusableElements = Foundation.Keyboard.findFocusable(this.$element);
330
+
331
+ if (!this.options.overlay && this.options.closeOnClick && !this.options.fullScreen) {
332
+ $('body').on('click.zf.reveal', function (e) {
333
+ if (e.target === _this.$element[0] || $.contains(_this.$element[0], e.target) || !$.contains(document, e.target)) {
334
+ return;
335
+ }
336
+ _this.close();
337
+ });
338
+ }
339
+
340
+ if (this.options.closeOnEsc) {
341
+ $(window).on('keydown.zf.reveal', function (e) {
342
+ Foundation.Keyboard.handleKey(e, 'Reveal', {
343
+ close: function () {
344
+ if (_this.options.closeOnEsc) {
345
+ _this.close();
346
+ _this.$anchor.focus();
347
+ }
348
+ }
349
+ });
350
+ });
351
+ }
352
+
353
+ // lock focus within modal while tabbing
354
+ this.$element.on('keydown.zf.reveal', function (e) {
355
+ var $target = $(this);
356
+ // handle keyboard event with keyboard util
357
+ Foundation.Keyboard.handleKey(e, 'Reveal', {
358
+ open: function () {
359
+ if (_this.$element.find(':focus').is(_this.$element.find('[data-close]'))) {
360
+ setTimeout(function () {
361
+ // set focus back to anchor if close button has been activated
362
+ _this.$anchor.focus();
363
+ }, 1);
364
+ } else if ($target.is(_this.focusableElements)) {
365
+ // dont't trigger if acual element has focus (i.e. inputs, links, ...)
366
+ _this.open();
367
+ }
368
+ },
369
+ close: function () {
370
+ if (_this.options.closeOnEsc) {
371
+ _this.close();
372
+ _this.$anchor.focus();
373
+ }
374
+ },
375
+ handled: function (preventDefault) {
376
+ if (preventDefault) {
377
+ e.preventDefault();
378
+ }
379
+ }
380
+ });
381
+ });
382
+ }
383
+
384
+ /**
385
+ * Closes the modal.
386
+ * @function
387
+ * @fires Reveal#closed
388
+ */
389
+
390
+ }, {
391
+ key: 'close',
392
+ value: function close() {
393
+ if (!this.isActive || !this.$element.is(':visible')) {
394
+ return false;
395
+ }
396
+ var _this = this;
397
+
398
+ // Motion UI method of hiding
399
+ if (this.options.animationOut) {
400
+ if (this.options.overlay) {
401
+ Foundation.Motion.animateOut(this.$overlay, 'fade-out', finishUp);
402
+ } else {
403
+ finishUp();
404
+ }
405
+
406
+ Foundation.Motion.animateOut(this.$element, this.options.animationOut);
407
+ }
408
+ // jQuery method of hiding
409
+ else {
410
+ if (this.options.overlay) {
411
+ this.$overlay.hide(0, finishUp);
412
+ } else {
413
+ finishUp();
414
+ }
415
+
416
+ this.$element.hide(this.options.hideDelay);
417
+ }
418
+
419
+ // Conditionals to remove extra event listeners added on open
420
+ if (this.options.closeOnEsc) {
421
+ $(window).off('keydown.zf.reveal');
422
+ }
423
+
424
+ if (!this.options.overlay && this.options.closeOnClick) {
425
+ $('body').off('click.zf.reveal');
426
+ }
427
+
428
+ this.$element.off('keydown.zf.reveal');
429
+
430
+ function finishUp() {
431
+ if (_this.isMobile) {
432
+ $('html, body').removeClass('is-reveal-open');
433
+ if (_this.originalScrollPos) {
434
+ $('body').scrollTop(_this.originalScrollPos);
435
+ _this.originalScrollPos = null;
436
+ }
437
+ } else {
438
+ $('body').removeClass('is-reveal-open');
439
+ }
440
+
441
+ Foundation.Keyboard.releaseFocus(_this.$element);
442
+
443
+ _this.$element.attr('aria-hidden', true);
444
+
445
+ /**
446
+ * Fires when the modal is done closing.
447
+ * @event Reveal#closed
448
+ */
449
+ _this.$element.trigger('closed.zf.reveal');
450
+ }
451
+
452
+ /**
453
+ * Resets the modal content
454
+ * This prevents a running video to keep going in the background
455
+ */
456
+ if (this.options.resetOnClose) {
457
+ this.$element.html(this.$element.html());
458
+ }
459
+
460
+ this.isActive = false;
461
+ if (_this.options.deepLink) {
462
+ if (window.history.replaceState) {
463
+ window.history.replaceState('', document.title, window.location.href.replace('#' + this.id, ''));
464
+ } else {
465
+ window.location.hash = '';
466
+ }
467
+ }
468
+ }
469
+
470
+ /**
471
+ * Toggles the open/closed state of a modal.
472
+ * @function
473
+ */
474
+
475
+ }, {
476
+ key: 'toggle',
477
+ value: function toggle() {
478
+ if (this.isActive) {
479
+ this.close();
480
+ } else {
481
+ this.open();
482
+ }
483
+ }
484
+ }, {
485
+ key: 'destroy',
486
+
487
+
488
+ /**
489
+ * Destroys an instance of a modal.
490
+ * @function
491
+ */
492
+ value: function destroy() {
493
+ if (this.options.overlay) {
494
+ this.$element.appendTo($(this.options.appendTo)); // move $element outside of $overlay to prevent error unregisterPlugin()
495
+ this.$overlay.hide().off().remove();
496
+ }
497
+ this.$element.hide().off();
498
+ this.$anchor.off('.zf');
499
+ $(window).off('.zf.reveal:' + this.id);
500
+
501
+ Foundation.unregisterPlugin(this);
502
+ }
503
+ }]);
504
+
505
+ return Reveal;
506
+ }();
507
+
508
+ Reveal.defaults = {
509
+ /**
510
+ * Motion-UI class to use for animated elements. If none used, defaults to simple show/hide.
511
+ * @option
512
+ * @type {string}
513
+ * @default ''
514
+ */
515
+ animationIn: '',
516
+ /**
517
+ * Motion-UI class to use for animated elements. If none used, defaults to simple show/hide.
518
+ * @option
519
+ * @type {string}
520
+ * @default ''
521
+ */
522
+ animationOut: '',
523
+ /**
524
+ * Time, in ms, to delay the opening of a modal after a click if no animation used.
525
+ * @option
526
+ * @type {number}
527
+ * @default 0
528
+ */
529
+ showDelay: 0,
530
+ /**
531
+ * Time, in ms, to delay the closing of a modal after a click if no animation used.
532
+ * @option
533
+ * @type {number}
534
+ * @default 0
535
+ */
536
+ hideDelay: 0,
537
+ /**
538
+ * Allows a click on the body/overlay to close the modal.
539
+ * @option
540
+ * @type {boolean}
541
+ * @default true
542
+ */
543
+ closeOnClick: true,
544
+ /**
545
+ * Allows the modal to close if the user presses the `ESCAPE` key.
546
+ * @option
547
+ * @type {boolean}
548
+ * @default true
549
+ */
550
+ closeOnEsc: true,
551
+ /**
552
+ * If true, allows multiple modals to be displayed at once.
553
+ * @option
554
+ * @type {boolean}
555
+ * @default false
556
+ */
557
+ multipleOpened: false,
558
+ /**
559
+ * Distance, in pixels, the modal should push down from the top of the screen.
560
+ * @option
561
+ * @type {number|string}
562
+ * @default auto
563
+ */
564
+ vOffset: 'auto',
565
+ /**
566
+ * Distance, in pixels, the modal should push in from the side of the screen.
567
+ * @option
568
+ * @type {number|string}
569
+ * @default auto
570
+ */
571
+ hOffset: 'auto',
572
+ /**
573
+ * Allows the modal to be fullscreen, completely blocking out the rest of the view. JS checks for this as well.
574
+ * @option
575
+ * @type {boolean}
576
+ * @default false
577
+ */
578
+ fullScreen: false,
579
+ /**
580
+ * Percentage of screen height the modal should push up from the bottom of the view.
581
+ * @option
582
+ * @type {number}
583
+ * @default 10
584
+ */
585
+ btmOffsetPct: 10,
586
+ /**
587
+ * Allows the modal to generate an overlay div, which will cover the view when modal opens.
588
+ * @option
589
+ * @type {boolean}
590
+ * @default true
591
+ */
592
+ overlay: true,
593
+ /**
594
+ * 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.
595
+ * @option
596
+ * @type {boolean}
597
+ * @default false
598
+ */
599
+ resetOnClose: false,
600
+ /**
601
+ * 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.
602
+ * @option
603
+ * @type {boolean}
604
+ * @default false
605
+ */
606
+ deepLink: false,
607
+ /**
608
+ * Allows the modal to append to custom div.
609
+ * @option
610
+ * @type {string}
611
+ * @default "body"
612
+ */
613
+ appendTo: "body"
614
+
615
+ };
616
+
617
+ // Window exports
618
+ Foundation.plugin(Reveal, 'Reveal');
619
+
620
+ function iPhoneSniff() {
621
+ return (/iP(ad|hone|od).*OS/.test(window.navigator.userAgent)
622
+ );
623
+ }
624
+
625
+ function androidSniff() {
626
+ return (/Android/.test(window.navigator.userAgent)
627
+ );
628
+ }
629
+
630
+ function mobileSniff() {
631
+ return iPhoneSniff() || androidSniff();
632
+ }
633
+ }(jQuery);