foundation6-jekyll-base 0.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 (160) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +21 -0
  3. data/README.md +2 -0
  4. data/_includes/footer.html +1 -0
  5. data/_includes/head.html +16 -0
  6. data/_includes/header.html +1 -0
  7. data/_includes/javascripts.html +4 -0
  8. data/_layouts/default.html +18 -0
  9. data/_layouts/home.html +26 -0
  10. data/_layouts/page.html +15 -0
  11. data/_layouts/post.html +25 -0
  12. data/_sass/_vendor/normalize-scss/sass/_normalize.scss +3 -0
  13. data/_sass/_vendor/normalize-scss/sass/normalize/_import-now.scss +11 -0
  14. data/_sass/_vendor/normalize-scss/sass/normalize/_normalize-mixin.scss +676 -0
  15. data/_sass/_vendor/normalize-scss/sass/normalize/_variables.scss +36 -0
  16. data/_sass/_vendor/normalize-scss/sass/normalize/_vertical-rhythm.scss +61 -0
  17. data/_sass/_vendor/sassy-lists/stylesheets/functions/_purge.scss +38 -0
  18. data/_sass/_vendor/sassy-lists/stylesheets/functions/_remove.scss +31 -0
  19. data/_sass/_vendor/sassy-lists/stylesheets/functions/_replace.scss +46 -0
  20. data/_sass/_vendor/sassy-lists/stylesheets/functions/_to-list.scss +27 -0
  21. data/_sass/_vendor/sassy-lists/stylesheets/helpers/_missing-dependencies.scss +25 -0
  22. data/_sass/_vendor/sassy-lists/stylesheets/helpers/_true.scss +13 -0
  23. data/_sass/foundation/_global.scss +219 -0
  24. data/_sass/foundation/components/_accordion-menu.scss +36 -0
  25. data/_sass/foundation/components/_accordion.scss +150 -0
  26. data/_sass/foundation/components/_badge.scss +63 -0
  27. data/_sass/foundation/components/_breadcrumbs.scss +97 -0
  28. data/_sass/foundation/components/_button-group.scss +249 -0
  29. data/_sass/foundation/components/_button.scss +303 -0
  30. data/_sass/foundation/components/_callout.scss +106 -0
  31. data/_sass/foundation/components/_card.scss +121 -0
  32. data/_sass/foundation/components/_close-button.scss +102 -0
  33. data/_sass/foundation/components/_drilldown.scss +93 -0
  34. data/_sass/foundation/components/_dropdown-menu.scss +226 -0
  35. data/_sass/foundation/components/_dropdown.scss +72 -0
  36. data/_sass/foundation/components/_flex-video.scss +1 -0
  37. data/_sass/foundation/components/_flex.scss +28 -0
  38. data/_sass/foundation/components/_float.scss +27 -0
  39. data/_sass/foundation/components/_label.scss +64 -0
  40. data/_sass/foundation/components/_media-object.scss +114 -0
  41. data/_sass/foundation/components/_menu-icon.scss +9 -0
  42. data/_sass/foundation/components/_menu.scss +371 -0
  43. data/_sass/foundation/components/_off-canvas.scss +329 -0
  44. data/_sass/foundation/components/_orbit.scss +196 -0
  45. data/_sass/foundation/components/_pagination.scss +193 -0
  46. data/_sass/foundation/components/_progress-bar.scss +64 -0
  47. data/_sass/foundation/components/_responsive-embed.scss +67 -0
  48. data/_sass/foundation/components/_reveal.scss +178 -0
  49. data/_sass/foundation/components/_slider.scss +138 -0
  50. data/_sass/foundation/components/_sticky.scss +38 -0
  51. data/_sass/foundation/components/_switch.scss +247 -0
  52. data/_sass/foundation/components/_table.scss +329 -0
  53. data/_sass/foundation/components/_tabs.scss +196 -0
  54. data/_sass/foundation/components/_thumbnail.scss +67 -0
  55. data/_sass/foundation/components/_title-bar.scss +84 -0
  56. data/_sass/foundation/components/_tooltip.scss +107 -0
  57. data/_sass/foundation/components/_top-bar.scss +173 -0
  58. data/_sass/foundation/components/_visibility.scss +132 -0
  59. data/_sass/foundation/forms/_checkbox.scss +41 -0
  60. data/_sass/foundation/forms/_error.scss +88 -0
  61. data/_sass/foundation/forms/_fieldset.scss +54 -0
  62. data/_sass/foundation/forms/_forms.scss +34 -0
  63. data/_sass/foundation/forms/_help-text.scss +30 -0
  64. data/_sass/foundation/forms/_input-group.scss +135 -0
  65. data/_sass/foundation/forms/_label.scss +50 -0
  66. data/_sass/foundation/forms/_meter.scss +110 -0
  67. data/_sass/foundation/forms/_progress.scss +94 -0
  68. data/_sass/foundation/forms/_range.scss +149 -0
  69. data/_sass/foundation/forms/_select.scss +85 -0
  70. data/_sass/foundation/forms/_text.scss +170 -0
  71. data/_sass/foundation/foundation.scss +118 -0
  72. data/_sass/foundation/grid/_classes.scss +176 -0
  73. data/_sass/foundation/grid/_column.scss +112 -0
  74. data/_sass/foundation/grid/_flex-grid.scss +307 -0
  75. data/_sass/foundation/grid/_grid.scss +44 -0
  76. data/_sass/foundation/grid/_gutter.scss +82 -0
  77. data/_sass/foundation/grid/_layout.scss +76 -0
  78. data/_sass/foundation/grid/_position.scss +76 -0
  79. data/_sass/foundation/grid/_row.scss +99 -0
  80. data/_sass/foundation/grid/_size.scss +24 -0
  81. data/_sass/foundation/settings/_settings.scss +621 -0
  82. data/_sass/foundation/typography/_alignment.scss +22 -0
  83. data/_sass/foundation/typography/_base.scss +509 -0
  84. data/_sass/foundation/typography/_helpers.scss +78 -0
  85. data/_sass/foundation/typography/_print.scss +81 -0
  86. data/_sass/foundation/typography/_typography.scss +26 -0
  87. data/_sass/foundation/util/_breakpoint.scss +281 -0
  88. data/_sass/foundation/util/_color.scss +126 -0
  89. data/_sass/foundation/util/_direction.scss +31 -0
  90. data/_sass/foundation/util/_flex.scss +85 -0
  91. data/_sass/foundation/util/_math.scss +72 -0
  92. data/_sass/foundation/util/_mixins.scss +276 -0
  93. data/_sass/foundation/util/_selector.scss +41 -0
  94. data/_sass/foundation/util/_unit.scss +152 -0
  95. data/_sass/foundation/util/_util.scss +13 -0
  96. data/_sass/foundation/util/_value.scss +140 -0
  97. data/assets/js/app.js +1 -0
  98. data/assets/js/vendor/foundation/foundation.d.ts +496 -0
  99. data/assets/js/vendor/foundation/foundation.js +10207 -0
  100. data/assets/js/vendor/foundation/foundation.min.js +4 -0
  101. data/assets/js/vendor/foundation/plugins/foundation.abide.js +637 -0
  102. data/assets/js/vendor/foundation/plugins/foundation.abide.min.js +1 -0
  103. data/assets/js/vendor/foundation/plugins/foundation.accordion.js +252 -0
  104. data/assets/js/vendor/foundation/plugins/foundation.accordion.min.js +1 -0
  105. data/assets/js/vendor/foundation/plugins/foundation.accordionMenu.js +318 -0
  106. data/assets/js/vendor/foundation/plugins/foundation.accordionMenu.min.js +1 -0
  107. data/assets/js/vendor/foundation/plugins/foundation.core.js +386 -0
  108. data/assets/js/vendor/foundation/plugins/foundation.core.min.js +1 -0
  109. data/assets/js/vendor/foundation/plugins/foundation.drilldown.js +565 -0
  110. data/assets/js/vendor/foundation/plugins/foundation.drilldown.min.js +1 -0
  111. data/assets/js/vendor/foundation/plugins/foundation.dropdown.js +465 -0
  112. data/assets/js/vendor/foundation/plugins/foundation.dropdown.min.js +1 -0
  113. data/assets/js/vendor/foundation/plugins/foundation.dropdownMenu.js +486 -0
  114. data/assets/js/vendor/foundation/plugins/foundation.dropdownMenu.min.js +1 -0
  115. data/assets/js/vendor/foundation/plugins/foundation.equalizer.js +374 -0
  116. data/assets/js/vendor/foundation/plugins/foundation.equalizer.min.js +1 -0
  117. data/assets/js/vendor/foundation/plugins/foundation.interchange.js +233 -0
  118. data/assets/js/vendor/foundation/plugins/foundation.interchange.min.js +1 -0
  119. data/assets/js/vendor/foundation/plugins/foundation.magellan.js +285 -0
  120. data/assets/js/vendor/foundation/plugins/foundation.magellan.min.js +1 -0
  121. data/assets/js/vendor/foundation/plugins/foundation.offcanvas.js +474 -0
  122. data/assets/js/vendor/foundation/plugins/foundation.offcanvas.min.js +1 -0
  123. data/assets/js/vendor/foundation/plugins/foundation.orbit.js +566 -0
  124. data/assets/js/vendor/foundation/plugins/foundation.orbit.min.js +1 -0
  125. data/assets/js/vendor/foundation/plugins/foundation.responsiveMenu.js +169 -0
  126. data/assets/js/vendor/foundation/plugins/foundation.responsiveMenu.min.js +1 -0
  127. data/assets/js/vendor/foundation/plugins/foundation.responsiveToggle.js +177 -0
  128. data/assets/js/vendor/foundation/plugins/foundation.responsiveToggle.min.js +1 -0
  129. data/assets/js/vendor/foundation/plugins/foundation.reveal.js +633 -0
  130. data/assets/js/vendor/foundation/plugins/foundation.reveal.min.js +1 -0
  131. data/assets/js/vendor/foundation/plugins/foundation.slider.js +762 -0
  132. data/assets/js/vendor/foundation/plugins/foundation.slider.min.js +1 -0
  133. data/assets/js/vendor/foundation/plugins/foundation.sticky.js +518 -0
  134. data/assets/js/vendor/foundation/plugins/foundation.sticky.min.js +1 -0
  135. data/assets/js/vendor/foundation/plugins/foundation.tabs.js +512 -0
  136. data/assets/js/vendor/foundation/plugins/foundation.tabs.min.js +1 -0
  137. data/assets/js/vendor/foundation/plugins/foundation.toggler.js +169 -0
  138. data/assets/js/vendor/foundation/plugins/foundation.toggler.min.js +1 -0
  139. data/assets/js/vendor/foundation/plugins/foundation.tooltip.js +492 -0
  140. data/assets/js/vendor/foundation/plugins/foundation.tooltip.min.js +1 -0
  141. data/assets/js/vendor/foundation/plugins/foundation.util.box.js +196 -0
  142. data/assets/js/vendor/foundation/plugins/foundation.util.box.min.js +1 -0
  143. data/assets/js/vendor/foundation/plugins/foundation.util.keyboard.js +163 -0
  144. data/assets/js/vendor/foundation/plugins/foundation.util.keyboard.min.js +1 -0
  145. data/assets/js/vendor/foundation/plugins/foundation.util.mediaQuery.js +233 -0
  146. data/assets/js/vendor/foundation/plugins/foundation.util.mediaQuery.min.js +1 -0
  147. data/assets/js/vendor/foundation/plugins/foundation.util.motion.js +103 -0
  148. data/assets/js/vendor/foundation/plugins/foundation.util.motion.min.js +1 -0
  149. data/assets/js/vendor/foundation/plugins/foundation.util.nest.js +74 -0
  150. data/assets/js/vendor/foundation/plugins/foundation.util.nest.min.js +1 -0
  151. data/assets/js/vendor/foundation/plugins/foundation.util.timerAndImageLoader.js +90 -0
  152. data/assets/js/vendor/foundation/plugins/foundation.util.timerAndImageLoader.min.js +1 -0
  153. data/assets/js/vendor/foundation/plugins/foundation.util.touch.js +352 -0
  154. data/assets/js/vendor/foundation/plugins/foundation.util.touch.min.js +1 -0
  155. data/assets/js/vendor/foundation/plugins/foundation.util.triggers.js +261 -0
  156. data/assets/js/vendor/foundation/plugins/foundation.util.triggers.min.js +1 -0
  157. data/assets/js/vendor/foundation/plugins/foundation.zf.responsiveAccordionTabs.js +262 -0
  158. data/assets/js/vendor/foundation/plugins/foundation.zf.responsiveAccordionTabs.min.js +1 -0
  159. data/assets/main.scss +6 -0
  160. metadata +232 -0
@@ -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 a=0;a<t.length;a++){var r=t[a];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,a,r){return a&&e(t.prototype,a),r&&e(t,r),t}}();!function(e){var t=function(){function t(a){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};_classCallCheck(this,t),this.$element=a,this.options=e.extend({},t.defaults,this.$element.data(),r),this._init(),Foundation.registerPlugin(this,"Abide")}return _createClass(t,[{key:"_init",value:function(){this.$inputs=this.$element.find("input, textarea, select"),this._events()}},{key:"_events",value:function(){var t=this;this.$element.off(".abide").on("reset.zf.abide",function(){t.resetForm()}).on("submit.zf.abide",function(){return t.validateForm()}),"fieldChange"===this.options.validateOn&&this.$inputs.off("change.zf.abide").on("change.zf.abide",function(a){t.validateInput(e(a.target))}),this.options.liveValidate&&this.$inputs.off("input.zf.abide").on("input.zf.abide",function(a){t.validateInput(e(a.target))}),this.options.validateOnBlur&&this.$inputs.off("blur.zf.abide").on("blur.zf.abide",function(a){t.validateInput(e(a.target))})}},{key:"_reflow",value:function(){this._init()}},{key:"requiredCheck",value:function(e){if(!e.attr("required"))return!0;var t=!0;switch(e[0].type){case"checkbox":t=e[0].checked;break;case"select":case"select-one":case"select-multiple":var a=e.find("option:selected");a.length&&a.val()||(t=!1);break;default:e.val()&&e.val().length||(t=!1)}return t}},{key:"findFormError",value:function(e){var t=e.siblings(this.options.formErrorSelector);return t.length||(t=e.parent().find(this.options.formErrorSelector)),t}},{key:"findLabel",value:function(e){var t=e[0].id,a=this.$element.find('label[for="'+t+'"]');return a.length?a:e.closest("label")}},{key:"findRadioLabels",value:function(t){var a=this,r=t.map(function(t,r){var i=r.id,n=a.$element.find('label[for="'+i+'"]');return n.length||(n=e(r).closest("label")),n[0]});return e(r)}},{key:"addErrorClasses",value:function(e){var t=this.findLabel(e),a=this.findFormError(e);t.length&&t.addClass(this.options.labelErrorClass),a.length&&a.addClass(this.options.formErrorClass),e.addClass(this.options.inputErrorClass).attr("data-invalid","")}},{key:"removeRadioErrorClasses",value:function(e){var t=this.$element.find(':radio[name="'+e+'"]'),a=this.findRadioLabels(t),r=this.findFormError(t);a.length&&a.removeClass(this.options.labelErrorClass),r.length&&r.removeClass(this.options.formErrorClass),t.removeClass(this.options.inputErrorClass).removeAttr("data-invalid")}},{key:"removeErrorClasses",value:function(e){if("radio"==e[0].type)return this.removeRadioErrorClasses(e.attr("name"));var t=this.findLabel(e),a=this.findFormError(e);t.length&&t.removeClass(this.options.labelErrorClass),a.length&&a.removeClass(this.options.formErrorClass),e.removeClass(this.options.inputErrorClass).removeAttr("data-invalid")}},{key:"validateInput",value:function(t){var a=this,r=this.requiredCheck(t),i=!1,n=!0,s=t.attr("data-validator"),o=!0;if(t.is("[data-abide-ignore]")||t.is('[type="hidden"]')||t.is("[disabled]"))return!0;switch(t[0].type){case"radio":i=this.validateRadio(t.attr("name"));break;case"checkbox":i=r;break;case"select":case"select-one":case"select-multiple":i=r;break;default:i=this.validateText(t)}s&&(n=this.matchValidation(t,s,t.attr("required"))),t.attr("data-equalto")&&(o=this.options.validators.equalTo(t));var l=[r,i,n,o].indexOf(!1)===-1,u=(l?"valid":"invalid")+".zf.abide";if(l){var d=this.$element.find('[data-equalto="'+t.attr("id")+'"]');d.length&&!function(){var t=a;d.each(function(){e(this).val()&&t.validateInput(e(this))})}()}return this[l?"removeErrorClasses":"addErrorClasses"](t),t.trigger(u,[t]),l}},{key:"validateForm",value:function(){var t=[],a=this;this.$inputs.each(function(){t.push(a.validateInput(e(this)))});var r=t.indexOf(!1)===-1;return this.$element.find("[data-abide-error]").css("display",r?"none":"block"),this.$element.trigger((r?"formvalid":"forminvalid")+".zf.abide",[this.$element]),r}},{key:"validateText",value:function(e,t){t=t||e.attr("pattern")||e.attr("type");var a=e.val(),r=!1;return a.length?r=this.options.patterns.hasOwnProperty(t)?this.options.patterns[t].test(a):t===e.attr("type")||new RegExp(t).test(a):e.prop("required")||(r=!0),r}},{key:"validateRadio",value:function(t){var a=this.$element.find(':radio[name="'+t+'"]'),r=!1,i=!1;return a.each(function(t,a){e(a).attr("required")&&(i=!0)}),i||(r=!0),r||a.each(function(t,a){e(a).prop("checked")&&(r=!0)}),r}},{key:"matchValidation",value:function(e,t,a){var r=this;a=!!a;var i=t.split(" ").map(function(t){return r.options.validators[t](e,a,e.parent())});return i.indexOf(!1)===-1}},{key:"resetForm",value:function(){var t=this.$element,a=this.options;e("."+a.labelErrorClass,t).not("small").removeClass(a.labelErrorClass),e("."+a.inputErrorClass,t).not("small").removeClass(a.inputErrorClass),e(a.formErrorSelector+"."+a.formErrorClass).removeClass(a.formErrorClass),t.find("[data-abide-error]").css("display","none"),e(":input",t).not(":button, :submit, :reset, :hidden, :radio, :checkbox, [data-abide-ignore]").val("").removeAttr("data-invalid"),e(":input:radio",t).not("[data-abide-ignore]").prop("checked",!1).removeAttr("data-invalid"),e(":input:checkbox",t).not("[data-abide-ignore]").prop("checked",!1).removeAttr("data-invalid"),t.trigger("formreset.zf.abide",[t])}},{key:"destroy",value:function(){var t=this;this.$element.off(".abide").find("[data-abide-error]").css("display","none"),this.$inputs.off(".abide").each(function(){t.removeErrorClasses(e(this))}),Foundation.unregisterPlugin(this)}}]),t}();t.defaults={validateOn:"fieldChange",labelErrorClass:"is-invalid-label",inputErrorClass:"is-invalid-input",formErrorSelector:".form-error",formErrorClass:"is-visible",liveValidate:!1,validateOnBlur:!1,patterns:{alpha:/^[a-zA-Z]+$/,alpha_numeric:/^[a-zA-Z0-9]+$/,integer:/^[-+]?\d+$/,number:/^[-+]?\d*(?:[\.\,]\d+)?$/,card:/^(?:4[0-9]{12}(?:[0-9]{3})?|5[1-5][0-9]{14}|6(?:011|5[0-9][0-9])[0-9]{12}|3[47][0-9]{13}|3(?:0[0-5]|[68][0-9])[0-9]{11}|(?:2131|1800|35\d{3})\d{11})$/,cvv:/^([0-9]){3,4}$/,email:/^[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+$/,url:/^(https?|ftp|file|ssh):\/\/(((([a-zA-Z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-zA-Z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-zA-Z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-zA-Z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-zA-Z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-zA-Z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-zA-Z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-zA-Z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-zA-Z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-zA-Z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-zA-Z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-zA-Z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-zA-Z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/,domain:/^([a-zA-Z0-9]([a-zA-Z0-9\-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,8}$/,datetime:/^([0-2][0-9]{3})\-([0-1][0-9])\-([0-3][0-9])T([0-5][0-9])\:([0-5][0-9])\:([0-5][0-9])(Z|([\-\+]([0-1][0-9])\:00))$/,date:/(?:19|20)[0-9]{2}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-9])|(?:(?!02)(?:0[1-9]|1[0-2])-(?:30))|(?:(?:0[13578]|1[02])-31))$/,time:/^(0[0-9]|1[0-9]|2[0-3])(:[0-5][0-9]){2}$/,dateISO:/^\d{4}[\/\-]\d{1,2}[\/\-]\d{1,2}$/,month_day_year:/^(0[1-9]|1[012])[- \/.](0[1-9]|[12][0-9]|3[01])[- \/.]\d{4}$/,day_month_year:/^(0[1-9]|[12][0-9]|3[01])[- \/.](0[1-9]|1[012])[- \/.]\d{4}$/,color:/^#?([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$/},validators:{equalTo:function(t,a,r){return e("#"+t.attr("data-equalto")).val()===t.val()}}},Foundation.plugin(t,"Abide")}(jQuery);
@@ -0,0 +1,252 @@
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
+ * Accordion module.
11
+ * @module foundation.accordion
12
+ * @requires foundation.util.keyboard
13
+ * @requires foundation.util.motion
14
+ */
15
+
16
+ var Accordion = function () {
17
+ /**
18
+ * Creates a new instance of an accordion.
19
+ * @class
20
+ * @fires Accordion#init
21
+ * @param {jQuery} element - jQuery object to make into an accordion.
22
+ * @param {Object} options - a plain object with settings to override the default options.
23
+ */
24
+ function Accordion(element, options) {
25
+ _classCallCheck(this, Accordion);
26
+
27
+ this.$element = element;
28
+ this.options = $.extend({}, Accordion.defaults, this.$element.data(), options);
29
+
30
+ this._init();
31
+
32
+ Foundation.registerPlugin(this, 'Accordion');
33
+ Foundation.Keyboard.register('Accordion', {
34
+ 'ENTER': 'toggle',
35
+ 'SPACE': 'toggle',
36
+ 'ARROW_DOWN': 'next',
37
+ 'ARROW_UP': 'previous'
38
+ });
39
+ }
40
+
41
+ /**
42
+ * Initializes the accordion by animating the preset active pane(s).
43
+ * @private
44
+ */
45
+
46
+
47
+ _createClass(Accordion, [{
48
+ key: '_init',
49
+ value: function _init() {
50
+ this.$element.attr('role', 'tablist');
51
+ this.$tabs = this.$element.children('[data-accordion-item]');
52
+
53
+ this.$tabs.each(function (idx, el) {
54
+ var $el = $(el),
55
+ $content = $el.children('[data-tab-content]'),
56
+ id = $content[0].id || Foundation.GetYoDigits(6, 'accordion'),
57
+ linkId = el.id || id + '-label';
58
+
59
+ $el.find('a:first').attr({
60
+ 'aria-controls': id,
61
+ 'role': 'tab',
62
+ 'id': linkId,
63
+ 'aria-expanded': false,
64
+ 'aria-selected': false
65
+ });
66
+
67
+ $content.attr({ 'role': 'tabpanel', 'aria-labelledby': linkId, 'aria-hidden': true, 'id': id });
68
+ });
69
+ var $initActive = this.$element.find('.is-active').children('[data-tab-content]');
70
+ if ($initActive.length) {
71
+ this.down($initActive, true);
72
+ }
73
+ this._events();
74
+ }
75
+
76
+ /**
77
+ * Adds event handlers for items within the accordion.
78
+ * @private
79
+ */
80
+
81
+ }, {
82
+ key: '_events',
83
+ value: function _events() {
84
+ var _this = this;
85
+
86
+ this.$tabs.each(function () {
87
+ var $elem = $(this);
88
+ var $tabContent = $elem.children('[data-tab-content]');
89
+ if ($tabContent.length) {
90
+ $elem.children('a').off('click.zf.accordion keydown.zf.accordion').on('click.zf.accordion', function (e) {
91
+ e.preventDefault();
92
+ _this.toggle($tabContent);
93
+ }).on('keydown.zf.accordion', function (e) {
94
+ Foundation.Keyboard.handleKey(e, 'Accordion', {
95
+ toggle: function () {
96
+ _this.toggle($tabContent);
97
+ },
98
+ next: function () {
99
+ var $a = $elem.next().find('a').focus();
100
+ if (!_this.options.multiExpand) {
101
+ $a.trigger('click.zf.accordion');
102
+ }
103
+ },
104
+ previous: function () {
105
+ var $a = $elem.prev().find('a').focus();
106
+ if (!_this.options.multiExpand) {
107
+ $a.trigger('click.zf.accordion');
108
+ }
109
+ },
110
+ handled: function () {
111
+ e.preventDefault();
112
+ e.stopPropagation();
113
+ }
114
+ });
115
+ });
116
+ }
117
+ });
118
+ }
119
+
120
+ /**
121
+ * Toggles the selected content pane's open/close state.
122
+ * @param {jQuery} $target - jQuery object of the pane to toggle (`.accordion-content`).
123
+ * @function
124
+ */
125
+
126
+ }, {
127
+ key: 'toggle',
128
+ value: function toggle($target) {
129
+ if ($target.parent().hasClass('is-active')) {
130
+ this.up($target);
131
+ } else {
132
+ this.down($target);
133
+ }
134
+ }
135
+
136
+ /**
137
+ * Opens the accordion tab defined by `$target`.
138
+ * @param {jQuery} $target - Accordion pane to open (`.accordion-content`).
139
+ * @param {Boolean} firstTime - flag to determine if reflow should happen.
140
+ * @fires Accordion#down
141
+ * @function
142
+ */
143
+
144
+ }, {
145
+ key: 'down',
146
+ value: function down($target, firstTime) {
147
+ var _this2 = this;
148
+
149
+ $target.attr('aria-hidden', false).parent('[data-tab-content]').addBack().parent().addClass('is-active');
150
+
151
+ if (!this.options.multiExpand && !firstTime) {
152
+ var $currentActive = this.$element.children('.is-active').children('[data-tab-content]');
153
+ if ($currentActive.length) {
154
+ this.up($currentActive.not($target));
155
+ }
156
+ }
157
+
158
+ $target.slideDown(this.options.slideSpeed, function () {
159
+ /**
160
+ * Fires when the tab is done opening.
161
+ * @event Accordion#down
162
+ */
163
+ _this2.$element.trigger('down.zf.accordion', [$target]);
164
+ });
165
+
166
+ $('#' + $target.attr('aria-labelledby')).attr({
167
+ 'aria-expanded': true,
168
+ 'aria-selected': true
169
+ });
170
+ }
171
+
172
+ /**
173
+ * Closes the tab defined by `$target`.
174
+ * @param {jQuery} $target - Accordion tab to close (`.accordion-content`).
175
+ * @fires Accordion#up
176
+ * @function
177
+ */
178
+
179
+ }, {
180
+ key: 'up',
181
+ value: function up($target) {
182
+ var $aunts = $target.parent().siblings(),
183
+ _this = this;
184
+
185
+ if (!this.options.allowAllClosed && !$aunts.hasClass('is-active') || !$target.parent().hasClass('is-active')) {
186
+ return;
187
+ }
188
+
189
+ // Foundation.Move(this.options.slideSpeed, $target, function(){
190
+ $target.slideUp(_this.options.slideSpeed, function () {
191
+ /**
192
+ * Fires when the tab is done collapsing up.
193
+ * @event Accordion#up
194
+ */
195
+ _this.$element.trigger('up.zf.accordion', [$target]);
196
+ });
197
+ // });
198
+
199
+ $target.attr('aria-hidden', true).parent().removeClass('is-active');
200
+
201
+ $('#' + $target.attr('aria-labelledby')).attr({
202
+ 'aria-expanded': false,
203
+ 'aria-selected': false
204
+ });
205
+ }
206
+
207
+ /**
208
+ * Destroys an instance of an accordion.
209
+ * @fires Accordion#destroyed
210
+ * @function
211
+ */
212
+
213
+ }, {
214
+ key: 'destroy',
215
+ value: function destroy() {
216
+ this.$element.find('[data-tab-content]').stop(true).slideUp(0).css('display', '');
217
+ this.$element.find('a').off('.zf.accordion');
218
+
219
+ Foundation.unregisterPlugin(this);
220
+ }
221
+ }]);
222
+
223
+ return Accordion;
224
+ }();
225
+
226
+ Accordion.defaults = {
227
+ /**
228
+ * Amount of time to animate the opening of an accordion pane.
229
+ * @option
230
+ * @type {number}
231
+ * @default 250
232
+ */
233
+ slideSpeed: 250,
234
+ /**
235
+ * Allow the accordion to have multiple open panes.
236
+ * @option
237
+ * @type {boolean}
238
+ * @default false
239
+ */
240
+ multiExpand: false,
241
+ /**
242
+ * Allow the accordion to close all panes.
243
+ * @option
244
+ * @type {boolean}
245
+ * @default false
246
+ */
247
+ allowAllClosed: false
248
+ };
249
+
250
+ // Window exports
251
+ Foundation.plugin(Accordion, 'Accordion');
252
+ }(jQuery);
@@ -0,0 +1 @@
1
+ "use strict";function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}var _createClass=function(){function t(t,e){for(var n=0;n<e.length;n++){var a=e[n];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(t,a.key,a)}}return function(e,n,a){return n&&t(e.prototype,n),a&&t(e,a),e}}();!function(t){var e=function(){function e(n,a){_classCallCheck(this,e),this.$element=n,this.options=t.extend({},e.defaults,this.$element.data(),a),this._init(),Foundation.registerPlugin(this,"Accordion"),Foundation.Keyboard.register("Accordion",{ENTER:"toggle",SPACE:"toggle",ARROW_DOWN:"next",ARROW_UP:"previous"})}return _createClass(e,[{key:"_init",value:function(){this.$element.attr("role","tablist"),this.$tabs=this.$element.children("[data-accordion-item]"),this.$tabs.each(function(e,n){var a=t(n),i=a.children("[data-tab-content]"),o=i[0].id||Foundation.GetYoDigits(6,"accordion"),r=n.id||o+"-label";a.find("a:first").attr({"aria-controls":o,role:"tab",id:r,"aria-expanded":!1,"aria-selected":!1}),i.attr({role:"tabpanel","aria-labelledby":r,"aria-hidden":!0,id:o})});var e=this.$element.find(".is-active").children("[data-tab-content]");e.length&&this.down(e,!0),this._events()}},{key:"_events",value:function(){var e=this;this.$tabs.each(function(){var n=t(this),a=n.children("[data-tab-content]");a.length&&n.children("a").off("click.zf.accordion keydown.zf.accordion").on("click.zf.accordion",function(t){t.preventDefault(),e.toggle(a)}).on("keydown.zf.accordion",function(t){Foundation.Keyboard.handleKey(t,"Accordion",{toggle:function(){e.toggle(a)},next:function(){var t=n.next().find("a").focus();e.options.multiExpand||t.trigger("click.zf.accordion")},previous:function(){var t=n.prev().find("a").focus();e.options.multiExpand||t.trigger("click.zf.accordion")},handled:function(){t.preventDefault(),t.stopPropagation()}})})})}},{key:"toggle",value:function(t){t.parent().hasClass("is-active")?this.up(t):this.down(t)}},{key:"down",value:function(e,n){var a=this;if(e.attr("aria-hidden",!1).parent("[data-tab-content]").addBack().parent().addClass("is-active"),!this.options.multiExpand&&!n){var i=this.$element.children(".is-active").children("[data-tab-content]");i.length&&this.up(i.not(e))}e.slideDown(this.options.slideSpeed,function(){a.$element.trigger("down.zf.accordion",[e])}),t("#"+e.attr("aria-labelledby")).attr({"aria-expanded":!0,"aria-selected":!0})}},{key:"up",value:function(e){var n=e.parent().siblings(),a=this;(this.options.allowAllClosed||n.hasClass("is-active"))&&e.parent().hasClass("is-active")&&(e.slideUp(a.options.slideSpeed,function(){a.$element.trigger("up.zf.accordion",[e])}),e.attr("aria-hidden",!0).parent().removeClass("is-active"),t("#"+e.attr("aria-labelledby")).attr({"aria-expanded":!1,"aria-selected":!1}))}},{key:"destroy",value:function(){this.$element.find("[data-tab-content]").stop(!0).slideUp(0).css("display",""),this.$element.find("a").off(".zf.accordion"),Foundation.unregisterPlugin(this)}}]),e}();e.defaults={slideSpeed:250,multiExpand:!1,allowAllClosed:!1},Foundation.plugin(e,"Accordion")}(jQuery);
@@ -0,0 +1,318 @@
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
+ * AccordionMenu module.
11
+ * @module foundation.accordionMenu
12
+ * @requires foundation.util.keyboard
13
+ * @requires foundation.util.motion
14
+ * @requires foundation.util.nest
15
+ */
16
+
17
+ var AccordionMenu = function () {
18
+ /**
19
+ * Creates a new instance of an accordion menu.
20
+ * @class
21
+ * @fires AccordionMenu#init
22
+ * @param {jQuery} element - jQuery object to make into an accordion menu.
23
+ * @param {Object} options - Overrides to the default plugin settings.
24
+ */
25
+ function AccordionMenu(element, options) {
26
+ _classCallCheck(this, AccordionMenu);
27
+
28
+ this.$element = element;
29
+ this.options = $.extend({}, AccordionMenu.defaults, this.$element.data(), options);
30
+
31
+ Foundation.Nest.Feather(this.$element, 'accordion');
32
+
33
+ this._init();
34
+
35
+ Foundation.registerPlugin(this, 'AccordionMenu');
36
+ Foundation.Keyboard.register('AccordionMenu', {
37
+ 'ENTER': 'toggle',
38
+ 'SPACE': 'toggle',
39
+ 'ARROW_RIGHT': 'open',
40
+ 'ARROW_UP': 'up',
41
+ 'ARROW_DOWN': 'down',
42
+ 'ARROW_LEFT': 'close',
43
+ 'ESCAPE': 'closeAll'
44
+ });
45
+ }
46
+
47
+ /**
48
+ * Initializes the accordion menu by hiding all nested menus.
49
+ * @private
50
+ */
51
+
52
+
53
+ _createClass(AccordionMenu, [{
54
+ key: '_init',
55
+ value: function _init() {
56
+ this.$element.find('[data-submenu]').not('.is-active').slideUp(0); //.find('a').css('padding-left', '1rem');
57
+ this.$element.attr({
58
+ 'role': 'menu',
59
+ 'aria-multiselectable': this.options.multiOpen
60
+ });
61
+
62
+ this.$menuLinks = this.$element.find('.is-accordion-submenu-parent');
63
+ this.$menuLinks.each(function () {
64
+ var linkId = this.id || Foundation.GetYoDigits(6, 'acc-menu-link'),
65
+ $elem = $(this),
66
+ $sub = $elem.children('[data-submenu]'),
67
+ subId = $sub[0].id || Foundation.GetYoDigits(6, 'acc-menu'),
68
+ isActive = $sub.hasClass('is-active');
69
+ $elem.attr({
70
+ 'aria-controls': subId,
71
+ 'aria-expanded': isActive,
72
+ 'role': 'menuitem',
73
+ 'id': linkId
74
+ });
75
+ $sub.attr({
76
+ 'aria-labelledby': linkId,
77
+ 'aria-hidden': !isActive,
78
+ 'role': 'menu',
79
+ 'id': subId
80
+ });
81
+ });
82
+ var initPanes = this.$element.find('.is-active');
83
+ if (initPanes.length) {
84
+ var _this = this;
85
+ initPanes.each(function () {
86
+ _this.down($(this));
87
+ });
88
+ }
89
+ this._events();
90
+ }
91
+
92
+ /**
93
+ * Adds event handlers for items within the menu.
94
+ * @private
95
+ */
96
+
97
+ }, {
98
+ key: '_events',
99
+ value: function _events() {
100
+ var _this = this;
101
+
102
+ this.$element.find('li').each(function () {
103
+ var $submenu = $(this).children('[data-submenu]');
104
+
105
+ if ($submenu.length) {
106
+ $(this).children('a').off('click.zf.accordionMenu').on('click.zf.accordionMenu', function (e) {
107
+ e.preventDefault();
108
+
109
+ _this.toggle($submenu);
110
+ });
111
+ }
112
+ }).on('keydown.zf.accordionmenu', function (e) {
113
+ var $element = $(this),
114
+ $elements = $element.parent('ul').children('li'),
115
+ $prevElement,
116
+ $nextElement,
117
+ $target = $element.children('[data-submenu]');
118
+
119
+ $elements.each(function (i) {
120
+ if ($(this).is($element)) {
121
+ $prevElement = $elements.eq(Math.max(0, i - 1)).find('a').first();
122
+ $nextElement = $elements.eq(Math.min(i + 1, $elements.length - 1)).find('a').first();
123
+
124
+ if ($(this).children('[data-submenu]:visible').length) {
125
+ // has open sub menu
126
+ $nextElement = $element.find('li:first-child').find('a').first();
127
+ }
128
+ if ($(this).is(':first-child')) {
129
+ // is first element of sub menu
130
+ $prevElement = $element.parents('li').first().find('a').first();
131
+ } else if ($prevElement.parents('li').first().children('[data-submenu]:visible').length) {
132
+ // if previous element has open sub menu
133
+ $prevElement = $prevElement.parents('li').find('li:last-child').find('a').first();
134
+ }
135
+ if ($(this).is(':last-child')) {
136
+ // is last element of sub menu
137
+ $nextElement = $element.parents('li').first().next('li').find('a').first();
138
+ }
139
+
140
+ return;
141
+ }
142
+ });
143
+
144
+ Foundation.Keyboard.handleKey(e, 'AccordionMenu', {
145
+ open: function () {
146
+ if ($target.is(':hidden')) {
147
+ _this.down($target);
148
+ $target.find('li').first().find('a').first().focus();
149
+ }
150
+ },
151
+ close: function () {
152
+ if ($target.length && !$target.is(':hidden')) {
153
+ // close active sub of this item
154
+ _this.up($target);
155
+ } else if ($element.parent('[data-submenu]').length) {
156
+ // close currently open sub
157
+ _this.up($element.parent('[data-submenu]'));
158
+ $element.parents('li').first().find('a').first().focus();
159
+ }
160
+ },
161
+ up: function () {
162
+ $prevElement.focus();
163
+ return true;
164
+ },
165
+ down: function () {
166
+ $nextElement.focus();
167
+ return true;
168
+ },
169
+ toggle: function () {
170
+ if ($element.children('[data-submenu]').length) {
171
+ _this.toggle($element.children('[data-submenu]'));
172
+ }
173
+ },
174
+ closeAll: function () {
175
+ _this.hideAll();
176
+ },
177
+ handled: function (preventDefault) {
178
+ if (preventDefault) {
179
+ e.preventDefault();
180
+ }
181
+ e.stopImmediatePropagation();
182
+ }
183
+ });
184
+ }); //.attr('tabindex', 0);
185
+ }
186
+
187
+ /**
188
+ * Closes all panes of the menu.
189
+ * @function
190
+ */
191
+
192
+ }, {
193
+ key: 'hideAll',
194
+ value: function hideAll() {
195
+ this.up(this.$element.find('[data-submenu]'));
196
+ }
197
+
198
+ /**
199
+ * Opens all panes of the menu.
200
+ * @function
201
+ */
202
+
203
+ }, {
204
+ key: 'showAll',
205
+ value: function showAll() {
206
+ this.down(this.$element.find('[data-submenu]'));
207
+ }
208
+
209
+ /**
210
+ * Toggles the open/close state of a submenu.
211
+ * @function
212
+ * @param {jQuery} $target - the submenu to toggle
213
+ */
214
+
215
+ }, {
216
+ key: 'toggle',
217
+ value: function toggle($target) {
218
+ if (!$target.is(':animated')) {
219
+ if (!$target.is(':hidden')) {
220
+ this.up($target);
221
+ } else {
222
+ this.down($target);
223
+ }
224
+ }
225
+ }
226
+
227
+ /**
228
+ * Opens the sub-menu defined by `$target`.
229
+ * @param {jQuery} $target - Sub-menu to open.
230
+ * @fires AccordionMenu#down
231
+ */
232
+
233
+ }, {
234
+ key: 'down',
235
+ value: function down($target) {
236
+ var _this = this;
237
+
238
+ if (!this.options.multiOpen) {
239
+ this.up(this.$element.find('.is-active').not($target.parentsUntil(this.$element).add($target)));
240
+ }
241
+
242
+ $target.addClass('is-active').attr({ 'aria-hidden': false }).parent('.is-accordion-submenu-parent').attr({ 'aria-expanded': true });
243
+
244
+ //Foundation.Move(this.options.slideSpeed, $target, function() {
245
+ $target.slideDown(_this.options.slideSpeed, function () {
246
+ /**
247
+ * Fires when the menu is done opening.
248
+ * @event AccordionMenu#down
249
+ */
250
+ _this.$element.trigger('down.zf.accordionMenu', [$target]);
251
+ });
252
+ //});
253
+ }
254
+
255
+ /**
256
+ * Closes the sub-menu defined by `$target`. All sub-menus inside the target will be closed as well.
257
+ * @param {jQuery} $target - Sub-menu to close.
258
+ * @fires AccordionMenu#up
259
+ */
260
+
261
+ }, {
262
+ key: 'up',
263
+ value: function up($target) {
264
+ var _this = this;
265
+ //Foundation.Move(this.options.slideSpeed, $target, function(){
266
+ $target.slideUp(_this.options.slideSpeed, function () {
267
+ /**
268
+ * Fires when the menu is done collapsing up.
269
+ * @event AccordionMenu#up
270
+ */
271
+ _this.$element.trigger('up.zf.accordionMenu', [$target]);
272
+ });
273
+ //});
274
+
275
+ var $menus = $target.find('[data-submenu]').slideUp(0).addBack().attr('aria-hidden', true);
276
+
277
+ $menus.parent('.is-accordion-submenu-parent').attr('aria-expanded', false);
278
+ }
279
+
280
+ /**
281
+ * Destroys an instance of accordion menu.
282
+ * @fires AccordionMenu#destroyed
283
+ */
284
+
285
+ }, {
286
+ key: 'destroy',
287
+ value: function destroy() {
288
+ this.$element.find('[data-submenu]').slideDown(0).css('display', '');
289
+ this.$element.find('a').off('click.zf.accordionMenu');
290
+
291
+ Foundation.Nest.Burn(this.$element, 'accordion');
292
+ Foundation.unregisterPlugin(this);
293
+ }
294
+ }]);
295
+
296
+ return AccordionMenu;
297
+ }();
298
+
299
+ AccordionMenu.defaults = {
300
+ /**
301
+ * Amount of time to animate the opening of a submenu in ms.
302
+ * @option
303
+ * @type {number}
304
+ * @default 250
305
+ */
306
+ slideSpeed: 250,
307
+ /**
308
+ * Allow the menu to have multiple open panes.
309
+ * @option
310
+ * @type {boolean}
311
+ * @default true
312
+ */
313
+ multiOpen: true
314
+ };
315
+
316
+ // Window exports
317
+ Foundation.plugin(AccordionMenu, 'AccordionMenu');
318
+ }(jQuery);