foundation-rails 6.3.1.0 → 6.4.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (139) hide show
  1. checksums.yaml +4 -4
  2. data/bower.json +3 -3
  3. data/lib/foundation/rails/version.rb +1 -1
  4. data/lib/generators/foundation/install_generator.rb +1 -1
  5. data/lib/generators/foundation/templates/_settings.scss +291 -48
  6. data/vendor/assets/js/entries/foundation-plugins.js +25 -0
  7. data/vendor/assets/js/entries/foundation.js +101 -0
  8. data/vendor/assets/js/entries/plugins/foundation.abide.js +4 -0
  9. data/vendor/assets/js/entries/plugins/foundation.accordion.js +4 -0
  10. data/vendor/assets/js/entries/plugins/foundation.accordionMenu.js +5 -0
  11. data/vendor/assets/js/entries/plugins/foundation.core.js +21 -0
  12. data/vendor/assets/js/entries/plugins/foundation.drilldown.js +4 -0
  13. data/vendor/assets/js/entries/plugins/foundation.dropdown.js +5 -0
  14. data/vendor/assets/js/entries/plugins/foundation.dropdownMenu.js +4 -0
  15. data/vendor/assets/js/entries/plugins/foundation.equalizer.js +4 -0
  16. data/vendor/assets/js/entries/plugins/foundation.interchange.js +4 -0
  17. data/vendor/assets/js/entries/plugins/foundation.magellan.js +4 -0
  18. data/vendor/assets/js/entries/plugins/foundation.offcanvas.js +4 -0
  19. data/vendor/assets/js/entries/plugins/foundation.orbit.js +5 -0
  20. data/vendor/assets/js/entries/plugins/foundation.responsiveAccordionTabs.js +5 -0
  21. data/vendor/assets/js/entries/plugins/foundation.responsiveMenu.js +5 -0
  22. data/vendor/assets/js/entries/plugins/foundation.responsiveToggle.js +5 -0
  23. data/vendor/assets/js/entries/plugins/foundation.reveal.js +4 -0
  24. data/vendor/assets/js/entries/plugins/foundation.slider.js +5 -0
  25. data/vendor/assets/js/entries/plugins/foundation.smoothScroll.js +5 -0
  26. data/vendor/assets/js/entries/plugins/foundation.sticky.js +5 -0
  27. data/vendor/assets/js/entries/plugins/foundation.tabs.js +5 -0
  28. data/vendor/assets/js/entries/plugins/foundation.toggler.js +5 -0
  29. data/vendor/assets/js/entries/plugins/foundation.tooltip.js +4 -0
  30. data/vendor/assets/js/entries/plugins/foundation.util.box.js +4 -0
  31. data/vendor/assets/js/entries/plugins/foundation.util.imageLoader.js +5 -0
  32. data/vendor/assets/js/entries/plugins/foundation.util.keyboard.js +4 -0
  33. data/vendor/assets/js/entries/plugins/foundation.util.mediaQuery.js +4 -0
  34. data/vendor/assets/js/entries/plugins/foundation.util.motion.js +5 -0
  35. data/vendor/assets/js/entries/plugins/foundation.util.nest.js +5 -0
  36. data/vendor/assets/js/entries/plugins/foundation.util.timer.js +5 -0
  37. data/vendor/assets/js/entries/plugins/foundation.util.touch.js +7 -0
  38. data/vendor/assets/js/entries/plugins/foundation.util.triggers.js +5 -0
  39. data/vendor/assets/js/foundation.abide.js.es6 +18 -15
  40. data/vendor/assets/js/foundation.accordion.js.es6 +37 -23
  41. data/vendor/assets/js/foundation.accordionMenu.js.es6 +96 -51
  42. data/vendor/assets/js/foundation.core.js.es6 +46 -87
  43. data/vendor/assets/js/foundation.drilldown.js.es6 +47 -29
  44. data/vendor/assets/js/foundation.dropdown.js.es6 +84 -122
  45. data/vendor/assets/js/foundation.dropdownMenu.js.es6 +44 -28
  46. data/vendor/assets/js/foundation.equalizer.js.es6 +18 -17
  47. data/vendor/assets/js/foundation.interchange.js.es6 +26 -19
  48. data/vendor/assets/js/foundation.js.es6 +8 -3
  49. data/vendor/assets/js/foundation.magellan.js.es6 +36 -30
  50. data/vendor/assets/js/foundation.offcanvas.js.es6 +148 -36
  51. data/vendor/assets/js/foundation.orbit.js.es6 +26 -18
  52. data/vendor/assets/js/foundation.plugin.js.es6 +54 -0
  53. data/vendor/assets/js/foundation.positionable.js.es6 +206 -0
  54. data/vendor/assets/js/{foundation.zf.responsiveAccordionTabs.js.es6 → foundation.responsiveAccordionTabs.js.es6} +33 -30
  55. data/vendor/assets/js/foundation.responsiveMenu.js.es6 +37 -29
  56. data/vendor/assets/js/foundation.responsiveToggle.js.es6 +17 -16
  57. data/vendor/assets/js/foundation.reveal.js.es6 +61 -79
  58. data/vendor/assets/js/foundation.slider.js.es6 +33 -18
  59. data/vendor/assets/js/foundation.smoothScroll.js.es6 +135 -0
  60. data/vendor/assets/js/foundation.sticky.js.es6 +25 -17
  61. data/vendor/assets/js/foundation.tabs.js.es6 +35 -27
  62. data/vendor/assets/js/foundation.toggler.js.es6 +15 -13
  63. data/vendor/assets/js/foundation.tooltip.js.es6 +100 -108
  64. data/vendor/assets/js/foundation.util.box.js.es6 +114 -78
  65. data/vendor/assets/js/foundation.util.core.js.es6 +52 -0
  66. data/vendor/assets/js/foundation.util.imageLoader.js.es6 +45 -0
  67. data/vendor/assets/js/foundation.util.keyboard.js.es6 +41 -31
  68. data/vendor/assets/js/foundation.util.mediaQuery.js.es6 +59 -55
  69. data/vendor/assets/js/foundation.util.motion.js.es6 +4 -5
  70. data/vendor/assets/js/foundation.util.nest.js.es6 +9 -23
  71. data/vendor/assets/js/{foundation.util.timerAndImageLoader.js.es6 → foundation.util.timer.js.es6} +2 -42
  72. data/vendor/assets/js/foundation.util.touch.js.es6 +91 -294
  73. data/vendor/assets/js/foundation.util.triggers.js.es6 +199 -141
  74. data/vendor/assets/scss/_global.scss +29 -1
  75. data/vendor/assets/scss/components/_accordion-menu.scss +148 -13
  76. data/vendor/assets/scss/components/_accordion.scss +5 -0
  77. data/vendor/assets/scss/components/_breadcrumbs.scss +26 -9
  78. data/vendor/assets/scss/components/_button-group.scss +4 -4
  79. data/vendor/assets/scss/components/_button.scss +59 -12
  80. data/vendor/assets/scss/components/_card.scss +10 -2
  81. data/vendor/assets/scss/components/_drilldown.scss +90 -41
  82. data/vendor/assets/scss/components/_dropdown-menu.scss +52 -6
  83. data/vendor/assets/scss/components/_dropdown.scss +8 -1
  84. data/vendor/assets/scss/components/_flex.scss +85 -2
  85. data/vendor/assets/scss/components/_menu.scss +267 -162
  86. data/vendor/assets/scss/components/_off-canvas.scss +159 -45
  87. data/vendor/assets/scss/components/_pagination.scss +1 -1
  88. data/vendor/assets/scss/components/_reveal.scss +13 -11
  89. data/vendor/assets/scss/components/_slider.scss +0 -1
  90. data/vendor/assets/scss/components/_sticky.scss +1 -0
  91. data/vendor/assets/scss/components/_table.scss +7 -6
  92. data/vendor/assets/scss/components/_tabs.scss +1 -1
  93. data/vendor/assets/scss/components/_title-bar.scss +1 -1
  94. data/vendor/assets/scss/components/_tooltip.scss +74 -21
  95. data/vendor/assets/scss/components/_top-bar.scss +2 -0
  96. data/vendor/assets/scss/forms/_fieldset.scss +0 -1
  97. data/vendor/assets/scss/forms/_meter.scss +7 -1
  98. data/vendor/assets/scss/forms/_select.scss +4 -3
  99. data/vendor/assets/scss/forms/_text.scss +11 -2
  100. data/vendor/assets/scss/foundation.scss +17 -3
  101. data/vendor/assets/scss/grid/_flex-grid.scss +3 -52
  102. data/vendor/assets/scss/prototype/_arrow.scss +36 -0
  103. data/vendor/assets/scss/prototype/_border-box.scss +35 -0
  104. data/vendor/assets/scss/prototype/_border-none.scss +35 -0
  105. data/vendor/assets/scss/prototype/_bordered.scss +54 -0
  106. data/vendor/assets/scss/prototype/_box.scss +23 -0
  107. data/vendor/assets/scss/prototype/_display.scss +50 -0
  108. data/vendor/assets/scss/prototype/_font-styling.scss +95 -0
  109. data/vendor/assets/scss/prototype/_list-style-type.scss +95 -0
  110. data/vendor/assets/scss/prototype/_overflow.scss +72 -0
  111. data/vendor/assets/scss/prototype/_position.scss +114 -0
  112. data/vendor/assets/scss/prototype/_prototype.scss +91 -0
  113. data/vendor/assets/scss/prototype/_relation.scss +157 -0
  114. data/vendor/assets/scss/prototype/_rotate.scss +31 -0
  115. data/vendor/assets/scss/prototype/_rounded.scss +54 -0
  116. data/vendor/assets/scss/prototype/_separator.scss +96 -0
  117. data/vendor/assets/scss/prototype/_shadow.scss +43 -0
  118. data/vendor/assets/scss/prototype/_sizing.scss +73 -0
  119. data/vendor/assets/scss/prototype/_spacing.scss +204 -0
  120. data/vendor/assets/scss/prototype/_text-decoration.scss +48 -0
  121. data/vendor/assets/scss/prototype/_text-transformation.scss +48 -0
  122. data/vendor/assets/scss/prototype/_text-utilities.scss +88 -0
  123. data/vendor/assets/scss/prototype/_typescale.scss +20 -0
  124. data/vendor/assets/scss/settings/_settings.scss +291 -48
  125. data/vendor/assets/scss/typography/_base.scss +2 -2
  126. data/vendor/assets/scss/typography/_helpers.scss +6 -4
  127. data/vendor/assets/scss/util/_breakpoint.scss +60 -1
  128. data/vendor/assets/scss/util/_color.scss +8 -5
  129. data/vendor/assets/scss/util/_mixins.scss +45 -5
  130. data/vendor/assets/scss/xy-grid/_cell.scss +179 -0
  131. data/vendor/assets/scss/xy-grid/_classes.scss +455 -0
  132. data/vendor/assets/scss/xy-grid/_collapse.scss +54 -0
  133. data/vendor/assets/scss/xy-grid/_frame.scss +54 -0
  134. data/vendor/assets/scss/xy-grid/_grid.scss +56 -0
  135. data/vendor/assets/scss/xy-grid/_gutters.scss +45 -0
  136. data/vendor/assets/scss/xy-grid/_layout.scss +33 -0
  137. data/vendor/assets/scss/xy-grid/_position.scss +28 -0
  138. data/vendor/assets/scss/xy-grid/_xy-grid.scss +52 -0
  139. metadata +73 -4
@@ -0,0 +1,35 @@
1
+ // Foundation for Sites by ZURB
2
+ // foundation.zurb.com
3
+ // Licensed under MIT Open Source
4
+
5
+ ////
6
+ /// @group prototype-border-none
7
+ ////
8
+
9
+ /// Responsive breakpoints for border none.
10
+ /// @type Boolean
11
+ $prototype-border-none-breakpoints: $global-prototype-breakpoints !default;
12
+
13
+ /// Border none utility
14
+ @mixin border-none {
15
+ border: none !important;
16
+ }
17
+
18
+ @mixin foundation-prototype-border-none {
19
+ .border-none {
20
+ @include border-none;
21
+ }
22
+
23
+ @if ($prototype-border-none-breakpoints) {
24
+ // Loop through Responsive Breakpoints
25
+ @each $size in $breakpoint-classes {
26
+ @include breakpoint($size) {
27
+ @if $size != $-zf-zero-breakpoint {
28
+ .#{$size}-border-none {
29
+ @include border-none;
30
+ }
31
+ }
32
+ }
33
+ }
34
+ }
35
+ }
@@ -0,0 +1,54 @@
1
+ // Foundation for Sites by ZURB
2
+ // foundation.zurb.com
3
+ // Licensed under MIT Open Source
4
+
5
+ ////
6
+ /// @group prototype-bordered
7
+ ////
8
+
9
+ /// Responsive breakpoints for bordered utility.
10
+ /// @type Boolean
11
+ $prototype-bordered-breakpoints: $global-prototype-breakpoints !default;
12
+
13
+ /// Default value for `prototype-border-width`
14
+ /// @type Number
15
+ $prototype-border-width: rem-calc(1) !default;
16
+
17
+ /// Default value for `prototype-border-type`
18
+ /// @type String
19
+ $prototype-border-type: solid !default;
20
+
21
+ /// Default value for `prototype-border-color` defaulted to `medium-gray`
22
+ /// @type Color
23
+ $prototype-border-color: $medium-gray !default;
24
+
25
+ /// Bordered Utility: Adds a light border to an element by default.
26
+ /// @param {Number} $width [$prototype-border-width] Width of the border
27
+ /// @param {String} $type [$prototype-border-type] Type of the border
28
+ /// @param {Color} $color [$prototype-border-color] Color of the border
29
+ @mixin bordered(
30
+ $width: $prototype-border-width,
31
+ $type: $prototype-border-type,
32
+ $color: $prototype-border-color
33
+ ) {
34
+ border: $width $type $color;
35
+ }
36
+
37
+ @mixin foundation-prototype-bordered {
38
+ .bordered {
39
+ @include bordered;
40
+ }
41
+
42
+ @if ($prototype-bordered-breakpoints) {
43
+ // Loop through Responsive Breakpoints
44
+ @each $size in $breakpoint-classes {
45
+ @include breakpoint($size) {
46
+ @if $size != $-zf-zero-breakpoint {
47
+ .#{$size}-bordered {
48
+ @include bordered;
49
+ }
50
+ }
51
+ }
52
+ }
53
+ }
54
+ }
@@ -0,0 +1,23 @@
1
+ // Foundation for Sites by ZURB
2
+ // foundation.zurb.com
3
+ // Licensed under MIT Open Source
4
+
5
+ ////
6
+ /// @group prototype-box
7
+ ////
8
+
9
+ /// Box Mixin: Easily create a square, rectangle or a circle
10
+ /// @param {Number} $width[] Width of the box
11
+ /// @param {Number} $height[$width] Height of the box, defaults to `$width` to easily make a square
12
+ /// @param {Boolean} $circle[false] Makes the box a circle, by default `false`.
13
+ @mixin box(
14
+ $width,
15
+ $height: $width,
16
+ $circle: false
17
+ ) {
18
+ width: $width;
19
+ height: $height;
20
+ @if $circle {
21
+ border-radius: 50% !important;
22
+ }
23
+ }
@@ -0,0 +1,50 @@
1
+ // Foundation for Sites by ZURB
2
+ // foundation.zurb.com
3
+ // Licensed under MIT Open Source
4
+
5
+ ////
6
+ /// @group prototype-display
7
+ ////
8
+
9
+ /// Responsive breakpoints for display classes
10
+ /// @type Boolean
11
+ $prototype-display-breakpoints: $global-prototype-breakpoints !default;
12
+
13
+ /// Map containing all the `display` classes
14
+ /// @type Map
15
+ $prototype-display: (
16
+ inline,
17
+ inline-block,
18
+ block,
19
+ table,
20
+ table-cell
21
+ ) !default;
22
+
23
+ /// Display classes, by default coming through a map `$prototype-display`
24
+ /// @param {String} $display [] Display classes
25
+ @mixin display($display) {
26
+ display: $display !important;
27
+ }
28
+
29
+ @mixin foundation-prototype-display {
30
+ @each $display in $prototype-display {
31
+ .display-#{$display} {
32
+ @include display($display);
33
+ }
34
+ }
35
+
36
+ @if ($prototype-display-breakpoints) {
37
+ // Loop through Responsive Breakpoints
38
+ @each $size in $breakpoint-classes {
39
+ @include breakpoint($size) {
40
+ @each $display in $prototype-display {
41
+ @if $size != $-zf-zero-breakpoint {
42
+ .#{$size}-display-#{$display} {
43
+ @include display($display);
44
+ }
45
+ }
46
+ }
47
+ }
48
+ }
49
+ }
50
+ }
@@ -0,0 +1,95 @@
1
+ // Foundation for Sites by ZURB
2
+ // foundation.zurb.com
3
+ // Licensed under MIT Open Source
4
+
5
+ ////
6
+ /// @group prototype-font-styling
7
+ ////
8
+
9
+ /// Responsive breakpoints for font styling types
10
+ /// @type Boolean
11
+ $prototype-font-breakpoints: $global-prototype-breakpoints !default;
12
+
13
+ /// Letter spacing for `.font-wide`
14
+ /// @type Number
15
+ $prototype-wide-letter-spacing: rem-calc(4) !default;
16
+
17
+ /// Default weight for `.font-normal`, defaulted to `global-weight-normal`
18
+ /// @type Number
19
+ $prototype-font-normal: $global-weight-normal !default;
20
+
21
+ /// Default weight for `.font-bold`, defaulted to `global-weight-bold`
22
+ /// @type Number
23
+ $prototype-font-bold: $global-weight-bold !default;
24
+
25
+ /// Font wide letter spacing!
26
+ /// @param {Number} $letter-spacing [$prototype-wide-letter-spacing] Wide letter spacing for the font
27
+ @mixin font-wide(
28
+ $letter-spacing: $prototype-wide-letter-spacing
29
+ ) {
30
+ letter-spacing: $letter-spacing;
31
+ }
32
+
33
+ /// Font Weight Normal, default value coming through `global-weight-normal`
34
+ /// @param {Number} $weight [$prototype-font-normal] Weight of the font (normal)
35
+ @mixin font-normal(
36
+ $weight: $prototype-font-normal
37
+ ) {
38
+ font-weight: $weight;
39
+ }
40
+
41
+ /// Font Weight Bold, default value coming through `global-weight-bold`
42
+ /// @param {Number} $weight [$prototype-font-bold] Weight of the font (bold)
43
+ @mixin font-bold(
44
+ $weight: $prototype-font-bold
45
+ ) {
46
+ font-weight: $weight;
47
+ }
48
+
49
+ /// Font Style Italic
50
+ @mixin font-italic {
51
+ font-style: italic !important;
52
+ }
53
+
54
+ @mixin foundation-prototype-font-styling {
55
+ .font-wide{
56
+ @include font-wide;
57
+ }
58
+
59
+ .font-normal {
60
+ @include font-normal;
61
+ }
62
+
63
+ .font-bold {
64
+ @include font-bold;
65
+ }
66
+
67
+ .font-italic {
68
+ @include font-italic;
69
+ }
70
+
71
+ @if ($prototype-font-breakpoints) {
72
+ // Loop through Responsive Breakpoints
73
+ @each $size in $breakpoint-classes {
74
+ @include breakpoint($size) {
75
+ @if $size != $-zf-zero-breakpoint {
76
+ .#{$size}-font-wide{
77
+ @include font-wide;
78
+ }
79
+
80
+ .#{$size}-font-normal {
81
+ @include font-normal;
82
+ }
83
+
84
+ .#{$size}-font-bold {
85
+ @include font-bold;
86
+ }
87
+
88
+ .#{$size}-font-italic {
89
+ @include font-italic;
90
+ }
91
+ }
92
+ }
93
+ }
94
+ }
95
+ }
@@ -0,0 +1,95 @@
1
+ // Foundation for Sites by ZURB
2
+ // foundation.zurb.com
3
+ // Licensed under MIT Open Source
4
+
5
+ ////
6
+ /// @group prototype-list-style-type
7
+ ////
8
+
9
+ /// Responsive breakpoints for list styling types
10
+ /// @type Boolean
11
+ $prototype-list-breakpoints: $global-prototype-breakpoints !default;
12
+
13
+ /// Map containing all the `style-type-unordered` classes
14
+ /// @type Map
15
+ $prototype-style-type-unordered: (
16
+ disc,
17
+ circle,
18
+ square
19
+ ) !default;
20
+
21
+ /// Map containing all the `style-type-ordered` classes
22
+ /// @type Map
23
+ $prototype-style-type-ordered: (
24
+ decimal,
25
+ lower-alpha,
26
+ lower-latin,
27
+ lower-roman,
28
+ upper-alpha,
29
+ upper-latin,
30
+ upper-roman
31
+ ) !default;
32
+
33
+
34
+ /// Style type for unordered Lists, by default coming through a map `$prototype-style-type-unordered`
35
+ /// @param {String} $style-type-unordered [] Style type for unordered Lists
36
+ @mixin style-type-unordered($style-type-unordered) {
37
+ list-style-type: $style-type-unordered !important;
38
+ }
39
+
40
+ /// Style type for ordered Lists, by default coming through a map `$prototype-style-type-ordered`
41
+ /// @param {String} $style-type-ordered [] Style type for ordered Lists
42
+ @mixin style-type-ordered($style-type-ordered) {
43
+ list-style-type: $style-type-ordered !important;
44
+ }
45
+
46
+ @mixin list-unordered {
47
+ @each $style-type-unordered in $prototype-style-type-unordered {
48
+ ul.list-#{$style-type-unordered} {
49
+ @include style-type-unordered($style-type-unordered);
50
+ }
51
+ }
52
+
53
+ @if ($prototype-list-breakpoints) {
54
+ // Loop through Responsive Breakpoints
55
+ @each $size in $breakpoint-classes {
56
+ @include breakpoint($size) {
57
+ @each $style-type-unordered in $prototype-style-type-unordered {
58
+ @if $size != $-zf-zero-breakpoint {
59
+ ul.#{$size}-list-#{$style-type-unordered} {
60
+ @include style-type-unordered($style-type-unordered);
61
+ }
62
+ }
63
+ }
64
+ }
65
+ }
66
+ }
67
+ }
68
+
69
+ @mixin list-ordered {
70
+ @each $style-type-ordered in $prototype-style-type-ordered {
71
+ ol.list-#{$style-type-ordered} {
72
+ @include style-type-ordered($style-type-ordered);
73
+ }
74
+ }
75
+
76
+ @if ($prototype-list-breakpoints) {
77
+ // Loop through Responsive Breakpoints
78
+ @each $size in $breakpoint-classes {
79
+ @include breakpoint($size) {
80
+ @each $style-type-ordered in $prototype-style-type-ordered {
81
+ @if $size != $-zf-zero-breakpoint {
82
+ ol.#{$size}-list-#{$style-type-ordered} {
83
+ @include style-type-ordered($style-type-ordered);
84
+ }
85
+ }
86
+ }
87
+ }
88
+ }
89
+ }
90
+ }
91
+
92
+ @mixin foundation-prototype-list-style-type {
93
+ @include list-unordered;
94
+ @include list-ordered;
95
+ }
@@ -0,0 +1,72 @@
1
+ // Foundation for Sites by ZURB
2
+ // foundation.zurb.com
3
+ // Licensed under MIT Open Source
4
+
5
+ ////
6
+ /// @group prototype-overflow
7
+ ////
8
+
9
+ /// Responsive breakpoints for overflow helper classes
10
+ /// @type Boolean
11
+ $prototype-overflow-breakpoints: $global-prototype-breakpoints !default;
12
+
13
+ /// Map containing all the `overflow` classes
14
+ /// @type Map
15
+ $prototype-overflow: (
16
+ visible,
17
+ hidden,
18
+ scroll
19
+ ) !default;
20
+
21
+ /// Overflow classes, by default coming through a map `$prototype-overflow`
22
+ /// @param {String} $overflow [] Overflow classes
23
+ @mixin overflow($overflow) {
24
+ overflow: $overflow !important;
25
+ }
26
+
27
+ /// Overflow classes on horizontal axis, by default coming through a map `$prototype-overflow`
28
+ /// @param {String} $overflow [] Overflow classes (horizontal axis)
29
+ @mixin overflow-x($overflow) {
30
+ overflow-x: $overflow !important;
31
+ }
32
+
33
+ /// Overflow classes on vertical axis, by default coming through a map `$prototype-overflow`
34
+ /// @param {String} $overflow [] Overflow classes (vertical axis)
35
+ @mixin overflow-y($overflow) {
36
+ overflow-y: $overflow !important;
37
+ }
38
+
39
+ @mixin foundation-prototype-overflow {
40
+ @each $overflow in $prototype-overflow {
41
+ .overflow-#{$overflow} {
42
+ @include overflow($overflow);
43
+ }
44
+ .overflow-x-#{$overflow} {
45
+ @include overflow-x($overflow);
46
+ }
47
+ .overflow-y-#{$overflow} {
48
+ @include overflow-y($overflow);
49
+ }
50
+ }
51
+
52
+ @if ($prototype-overflow-breakpoints) {
53
+ // Loop through Responsive Breakpoints
54
+ @each $size in $breakpoint-classes {
55
+ @include breakpoint($size) {
56
+ @each $overflow in $prototype-overflow {
57
+ @if $size != $-zf-zero-breakpoint {
58
+ .#{$size}-overflow-#{$overflow} {
59
+ @include overflow($overflow);
60
+ }
61
+ .#{$size}-overflow-x-#{$overflow} {
62
+ @include overflow-x($overflow);
63
+ }
64
+ .#{$size}-overflow-y-#{$overflow} {
65
+ @include overflow-y($overflow);
66
+ }
67
+ }
68
+ }
69
+ }
70
+ }
71
+ }
72
+ }
@@ -0,0 +1,114 @@
1
+ // Foundation for Sites by ZURB
2
+ // foundation.zurb.com
3
+ // Licensed under MIT Open Source
4
+
5
+ ////
6
+ /// @group prototype-position
7
+ ////
8
+
9
+ /// Responsive breakpoints for position helpers
10
+ /// @type Boolean
11
+ $prototype-position-breakpoints: $global-prototype-breakpoints !default;
12
+
13
+ /// Map containing all the `position` classes
14
+ /// @type Map
15
+ $prototype-position: (
16
+ static,
17
+ relative,
18
+ absolute,
19
+ fixed
20
+ ) !default;
21
+
22
+ /// z-index for fixed positioning
23
+ /// @type Number
24
+ $prototype-position-z-index: 975 !default;
25
+
26
+ /// Position classes, by default coming through a map `$prototype-position`, whereas all the offset values are multiplied by `$global-position` which by default is equal to `1rem`.
27
+ /// @param {String} $position [] Position classes, Either `static`, `relative`, `absolute` or `fixed`
28
+ /// @param {Number} $top [null] - Top offset
29
+ /// @param {Number} $right [null] - Right offset
30
+ /// @param {Number} $bottom [null] - Bottom offset
31
+ /// @param {Number} $left [null] - Left offset
32
+ @mixin position(
33
+ $position,
34
+ $top: null,
35
+ $right: null,
36
+ $bottom: null,
37
+ $left: null
38
+ ) {
39
+ position: $position !important;
40
+ @if $top != null {
41
+ top: $top * $global-position !important;
42
+ }
43
+ @if $right != null {
44
+ right: $right * $global-position !important;
45
+ }
46
+ @if $bottom != null {
47
+ bottom: $bottom * $global-position !important;
48
+ }
49
+ @if $left != null {
50
+ left: $left * $global-position !important;
51
+ }
52
+ }
53
+
54
+ /// Position Fixed on top corners
55
+ /// @param {Number} $z-index [$prototype-position-z-index] z-index for `position-fixed-top`
56
+ @mixin position-fixed-top(
57
+ $z-index: $prototype-position-z-index
58
+ ) {
59
+ @include position(fixed, 0, 0, null, 0);
60
+ z-index: $z-index;
61
+ }
62
+
63
+ /// Position Fixed on bottom corners
64
+ /// @param {Number} $z-index [$prototype-position-z-index] z-index for `position-fixed-bottom`
65
+ @mixin position-fixed-bottom(
66
+ $z-index: $prototype-position-z-index
67
+ ) {
68
+ @include position(fixed, null, 0, 0, 0);
69
+ z-index: $z-index;
70
+ }
71
+
72
+ @mixin foundation-prototype-position {
73
+ // Position: Static, Relative, Fixed, Absolute
74
+ @each $position in $prototype-position {
75
+ .position-#{$position} {
76
+ @include position($position);
77
+ }
78
+ }
79
+
80
+ // Position: Fixed Top, Fixed Bottom
81
+ .position-fixed-top {
82
+ @include position-fixed-top;
83
+ }
84
+ .position-fixed-bottom {
85
+ @include position-fixed-bottom;
86
+ }
87
+
88
+ @if ($prototype-position-breakpoints) {
89
+ // Loop through Responsive Breakpoints
90
+ @each $size in $breakpoint-classes {
91
+ @include breakpoint($size) {
92
+ // Position: Static, Relative, Fixed, Absolute
93
+ @each $position in $prototype-position {
94
+ @if $size != $-zf-zero-breakpoint {
95
+ .#{$size}-position-#{$position} {
96
+ @include position($position);
97
+ }
98
+ }
99
+ }
100
+
101
+ // Position: Fixed Top, Fixed Bottom
102
+ @if $size != $-zf-zero-breakpoint {
103
+ .#{$size}-position-fixed-top {
104
+ @include position-fixed-top;
105
+ }
106
+
107
+ .#{$size}-position-fixed-bottom {
108
+ @include position-fixed-bottom;
109
+ }
110
+ }
111
+ }
112
+ }
113
+ }
114
+ }