fastlane-plugin-polidea 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (108) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +21 -0
  3. data/README.md +52 -0
  4. data/lib/fastlane/plugin/polidea.rb +16 -0
  5. data/lib/fastlane/plugin/polidea/actions/extract_app_icon.rb +155 -0
  6. data/lib/fastlane/plugin/polidea/actions/extract_app_name.rb +91 -0
  7. data/lib/fastlane/plugin/polidea/actions/extract_version.rb +96 -0
  8. data/lib/fastlane/plugin/polidea/actions/get_binary_size.rb +53 -0
  9. data/lib/fastlane/plugin/polidea/actions/mailgun.rb +173 -0
  10. data/lib/fastlane/plugin/polidea/actions/polidea_store_action.rb +248 -0
  11. data/lib/fastlane/plugin/polidea/actions/qr_generator.rb +76 -0
  12. data/lib/fastlane/plugin/polidea/actions/s3.rb +551 -0
  13. data/lib/fastlane/plugin/polidea/helper/polidea_helper.rb +12 -0
  14. data/lib/fastlane/plugin/polidea/templates/images/icon-placeholder.png +0 -0
  15. data/lib/fastlane/plugin/polidea/templates/images/logo.png +0 -0
  16. data/lib/fastlane/plugin/polidea/templates/images/polidea-facebook-icon.png +0 -0
  17. data/lib/fastlane/plugin/polidea/templates/images/polidea-github-icon.png +0 -0
  18. data/lib/fastlane/plugin/polidea/templates/images/polidea-logo.png +0 -0
  19. data/lib/fastlane/plugin/polidea/templates/images/polidea-twitter-icon.png +0 -0
  20. data/lib/fastlane/plugin/polidea/templates/installation-page/css/installation-page.css +3142 -0
  21. data/lib/fastlane/plugin/polidea/templates/installation-page/css/installation-page.css.map +7 -0
  22. data/lib/fastlane/plugin/polidea/templates/installation-page/img/bg.png +0 -0
  23. data/lib/fastlane/plugin/polidea/templates/installation-page/img/jenkins_bg.jpg +0 -0
  24. data/lib/fastlane/plugin/polidea/templates/installation-page/img/jenkins_bg_1024.jpg +0 -0
  25. data/lib/fastlane/plugin/polidea/templates/installation-page/img/jenkins_bg_1280.jpg +0 -0
  26. data/lib/fastlane/plugin/polidea/templates/installation-page/img/jenkins_bg_1360.jpg +0 -0
  27. data/lib/fastlane/plugin/polidea/templates/installation-page/img/jenkins_bg_1440.jpg +0 -0
  28. data/lib/fastlane/plugin/polidea/templates/installation-page/img/jenkins_bg_1680.jpg +0 -0
  29. data/lib/fastlane/plugin/polidea/templates/installation-page/img/jenkins_bg_768.jpg +0 -0
  30. data/lib/fastlane/plugin/polidea/templates/installation-page/img/jenkins_bg_ipad_1024.jpg +0 -0
  31. data/lib/fastlane/plugin/polidea/templates/installation-page/img/jenkins_bg_ipad_768.jpg +0 -0
  32. data/lib/fastlane/plugin/polidea/templates/installation-page/img/logo.svg +32 -0
  33. data/lib/fastlane/plugin/polidea/templates/installation-page/img/logo_square.svg +12 -0
  34. data/lib/fastlane/plugin/polidea/templates/installation-page/js/foundation.min.js +10 -0
  35. data/lib/fastlane/plugin/polidea/templates/installation-page/js/foundation/foundation.abide.js +294 -0
  36. data/lib/fastlane/plugin/polidea/templates/installation-page/js/foundation/foundation.accordion.js +65 -0
  37. data/lib/fastlane/plugin/polidea/templates/installation-page/js/foundation/foundation.alert.js +43 -0
  38. data/lib/fastlane/plugin/polidea/templates/installation-page/js/foundation/foundation.clearing.js +558 -0
  39. data/lib/fastlane/plugin/polidea/templates/installation-page/js/foundation/foundation.dropdown.js +313 -0
  40. data/lib/fastlane/plugin/polidea/templates/installation-page/js/foundation/foundation.equalizer.js +74 -0
  41. data/lib/fastlane/plugin/polidea/templates/installation-page/js/foundation/foundation.interchange.js +344 -0
  42. data/lib/fastlane/plugin/polidea/templates/installation-page/js/foundation/foundation.joyride.js +915 -0
  43. data/lib/fastlane/plugin/polidea/templates/installation-page/js/foundation/foundation.js +625 -0
  44. data/lib/fastlane/plugin/polidea/templates/installation-page/js/foundation/foundation.magellan.js +189 -0
  45. data/lib/fastlane/plugin/polidea/templates/installation-page/js/foundation/foundation.offcanvas.js +139 -0
  46. data/lib/fastlane/plugin/polidea/templates/installation-page/js/foundation/foundation.orbit.js +472 -0
  47. data/lib/fastlane/plugin/polidea/templates/installation-page/js/foundation/foundation.reveal.js +443 -0
  48. data/lib/fastlane/plugin/polidea/templates/installation-page/js/foundation/foundation.slider.js +231 -0
  49. data/lib/fastlane/plugin/polidea/templates/installation-page/js/foundation/foundation.tab.js +167 -0
  50. data/lib/fastlane/plugin/polidea/templates/installation-page/js/foundation/foundation.tooltip.js +298 -0
  51. data/lib/fastlane/plugin/polidea/templates/installation-page/js/foundation/foundation.topbar.js +436 -0
  52. data/lib/fastlane/plugin/polidea/templates/installation-page/js/vendor/aes.js +35 -0
  53. data/lib/fastlane/plugin/polidea/templates/installation-page/js/vendor/enc-base64-min.js +8 -0
  54. data/lib/fastlane/plugin/polidea/templates/installation-page/js/vendor/fastclick.js +9 -0
  55. data/lib/fastlane/plugin/polidea/templates/installation-page/js/vendor/jquery.cookie.js +8 -0
  56. data/lib/fastlane/plugin/polidea/templates/installation-page/js/vendor/jquery.js +26 -0
  57. data/lib/fastlane/plugin/polidea/templates/installation-page/js/vendor/modernizr.js +8 -0
  58. data/lib/fastlane/plugin/polidea/templates/installation-page/js/vendor/pbkdf2.js +19 -0
  59. data/lib/fastlane/plugin/polidea/templates/installation-page/js/vendor/placeholder.js +2 -0
  60. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/fonts.scss +64 -0
  61. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/foundation.scss +45 -0
  62. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/foundation/_functions.scss +101 -0
  63. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/foundation/_settings.scss +1441 -0
  64. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/foundation/components/_accordion.scss +156 -0
  65. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/foundation/components/_alert-boxes.scss +126 -0
  66. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/foundation/components/_block-grid.scss +132 -0
  67. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/foundation/components/_breadcrumbs.scss +132 -0
  68. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/foundation/components/_button-groups.scss +200 -0
  69. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/foundation/components/_buttons.scss +252 -0
  70. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/foundation/components/_clearing.scss +247 -0
  71. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/foundation/components/_dropdown-buttons.scss +129 -0
  72. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/foundation/components/_dropdown.scss +248 -0
  73. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/foundation/components/_flex-video.scss +51 -0
  74. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/foundation/components/_forms.scss +570 -0
  75. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/foundation/components/_global.scss +447 -0
  76. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/foundation/components/_grid.scss +275 -0
  77. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/foundation/components/_icon-bar.scss +293 -0
  78. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/foundation/components/_inline-lists.scss +57 -0
  79. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/foundation/components/_joyride.scss +222 -0
  80. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/foundation/components/_keystrokes.scss +61 -0
  81. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/foundation/components/_labels.scss +105 -0
  82. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/foundation/components/_magellan.scss +34 -0
  83. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/foundation/components/_offcanvas.scss +510 -0
  84. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/foundation/components/_orbit.scss +368 -0
  85. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/foundation/components/_pagination.scss +162 -0
  86. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/foundation/components/_panels.scss +93 -0
  87. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/foundation/components/_pricing-tables.scss +150 -0
  88. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/foundation/components/_progress-bars.scss +79 -0
  89. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/foundation/components/_range-slider.scss +168 -0
  90. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/foundation/components/_reveal.scss +220 -0
  91. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/foundation/components/_side-nav.scss +116 -0
  92. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/foundation/components/_split-buttons.scss +191 -0
  93. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/foundation/components/_sub-nav.scss +125 -0
  94. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/foundation/components/_switches.scss +226 -0
  95. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/foundation/components/_tables.scss +135 -0
  96. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/foundation/components/_tabs.scss +123 -0
  97. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/foundation/components/_thumbs.scss +66 -0
  98. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/foundation/components/_toolbar.scss +70 -0
  99. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/foundation/components/_tooltips.scss +142 -0
  100. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/foundation/components/_top-bar.scss +676 -0
  101. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/foundation/components/_type.scss +523 -0
  102. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/foundation/components/_visibility.scss +408 -0
  103. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/installation-page.scss +171 -0
  104. data/lib/fastlane/plugin/polidea/templates/installation-page/sass/normalize.scss +425 -0
  105. data/lib/fastlane/plugin/polidea/templates/installation_template.erb +58 -0
  106. data/lib/fastlane/plugin/polidea/templates/mailgun_template.erb +1225 -0
  107. data/lib/fastlane/plugin/polidea/version.rb +5 -0
  108. metadata +323 -0
@@ -0,0 +1,156 @@
1
+ // Foundation by ZURB
2
+ // foundation.zurb.com
3
+ // Licensed under MIT Open Source
4
+
5
+ @import "global";
6
+
7
+ //
8
+ // @variables
9
+ //
10
+
11
+ $include-html-accordion-classes: $include-html-classes !default;
12
+
13
+ $accordion-navigation-padding: rem-calc(16) !default;
14
+ $accordion-navigation-bg-color: $silver !default;
15
+ $accordion-navigation-hover-bg-color: scale-color($accordion-navigation-bg-color, $lightness: -5%) !default;
16
+ $accordion-navigation-active-bg-color: scale-color($accordion-navigation-bg-color, $lightness: -3%) !default;
17
+ $accordion-navigation-font-color: $jet !default;
18
+ $accordion-navigation-font-size: rem-calc(16) !default;
19
+ $accordion-navigation-font-family: $body-font-family !default;
20
+
21
+ $accordion-content-padding: $column-gutter/2 !default;
22
+ $accordion-content-active-bg-color: $white !default;
23
+
24
+
25
+ // Mixin: accordion-container()
26
+ // Decription: Responsible for the container component of accordions, generating styles relating to a margin of zero and a clearfix
27
+ // Explicit Dependencies: a clearfix mixin *is* defined.
28
+ // Implicit Dependencies: None
29
+
30
+ @mixin accordion-container() {
31
+ @include clearfix;
32
+ margin-bottom: 0;
33
+ }
34
+
35
+ // Mixin: accordion-navigation( $bg, $hover-bg, $active-bg, $padding, $active_class, $font-color, $font-size, $font-family){
36
+ // @params $bg-color: [ color or string ]: Specify the background color for the navigation element
37
+ // @params $hover-bg-color [ color or string ]: Specify the background color for the navigation element when hovered
38
+ // @params $active-bg [ color or string ]: Specify the background color for the navigation element when clicked and not released.
39
+ // @params $active_class [ string ]: Specify the class name used to keep track of which accordion tab should be visible
40
+ // @params $font-color [ color or string ]: Color of the font for accordion
41
+ // @params $font-size [ number ]: Specifiy the font-size of the text inside the navigation element
42
+ // @params $font-family [ string ]: Specify the font family for the text of the navigation of the accorion
43
+
44
+ @mixin accordion-navigation( $bg: $accordion-navigation-bg-color, $hover-bg: $accordion-navigation-hover-bg-color, $active-bg: $accordion-navigation-active-bg-color, $padding: $accordion-navigation-padding, $active_class: 'active', $font-color: $accordion-navigation-font-color, $font-size: $accordion-navigation-font-size, $font-family: $accordion-navigation-font-family ){
45
+ display: block;
46
+ margin-bottom: 0 !important;
47
+ @if type-of($active_class) != "string" {
48
+ @warn "`#{$active_class}` isn't a valid string. A valid string is needed to correctly be interpolated as a CSS class. CSS classes cannot start with a number or consist of only numbers. CSS will not be generated for the active state of this navigation component."
49
+ }
50
+ @else {
51
+ &.#{ $active_class } > a {
52
+ background: $active-bg;
53
+ }
54
+ }
55
+ > a {
56
+ background: $bg;
57
+ color: $font-color;
58
+ @if type-of($padding) != number {
59
+ @warn "`#{$padding}` was read as #{type-of($padding)}";
60
+ @if $accordion-navigation-padding != null {
61
+ @warn "#{$padding} was read as a #{type-of($padding)}";
62
+ @warn "`#{$padding}` isn't a valid number. $accordion-navigation-padding (#{$accordion-navigation-padding}) will be used instead.)";
63
+ padding: $accordion-navigation-padding;
64
+ }
65
+ @else {
66
+ @warn "`#{$padding}` isn't a valid number and $accordion-navigation-padding is missing. A value of `null` is returned to not output an invalid value for padding";
67
+ padding: null;
68
+ }
69
+ }
70
+ @else {
71
+ padding: $padding;
72
+ }
73
+ display: block;
74
+ font-family: $font-family;
75
+ @if type-of($font-size) != number {
76
+ @warn "`#{$font-size}` was read as a #{type-of($font-size)}";
77
+ @if $accordion-navigation-font-size != null {
78
+ @warn "`#{$font-size}` is not a valid number. The value of $accordion-navigation-font-size will be used instead (#{$accordion-navigation-font-size}).";
79
+ font-size: $accordion-navigation-font-size;
80
+ }
81
+ @else{
82
+ @warn "`#{$font-size}` is not a valid number and the default value of $accordion-navigation-font-size is not defined. A value of `null` will be returned to not generate an invalid value for font-size.";
83
+ font-size: null;
84
+
85
+ }
86
+ }
87
+ @else {
88
+ font-size: $font-size;
89
+ }
90
+ &:hover {
91
+ background: $hover-bg;
92
+ }
93
+ }
94
+ }
95
+
96
+ // Mixin: accordion-content($bg, $padding, $active-class)
97
+ // @params $padding [ number ]: Padding for the content of the container
98
+ // @params $bg [ color ]: Background color for the content when it's visible
99
+ // @params $active_class [ string ]: Class name used to keep track of which accordion tab should be visible.
100
+
101
+ @mixin accordion-content($bg: $accordion-content-active-bg-color, $padding: $accordion-content-padding, $active_class: 'active'){
102
+ display: none;
103
+ @if type-of($padding) != "number" {
104
+ @warn "#{$padding} was read as a #{type-of($padding)}";
105
+ @if $accordion-content-padding != null {
106
+ @warn "`#{$padding}` isn't a valid number. $accordion-content-padding used instead";
107
+ padding: $accordion-content-padding;
108
+ } @else {
109
+ @warn "`#{$padding}` isn't a valid number and the default value of $accordion-content-padding is not defined. A value of `null` is returned to not output an invalid value for padding.";
110
+ padding: null;
111
+ }
112
+ } @else {
113
+ padding: $padding;
114
+ }
115
+
116
+ @if type-of($active_class) != "string" {
117
+ @warn "`#{$active_class}` isn't a valid string. A valid string is needed to correctly be interpolated as a CSS class. CSS classes cannot start with a number or consist of only numbers. CSS will not be generated for the active state of the content. "
118
+ }
119
+ @else {
120
+ &.#{$active_class} {
121
+ display: block;
122
+ background: $bg;
123
+ }
124
+ }
125
+ }
126
+
127
+ @include exports("accordion") {
128
+ @if $include-html-accordion-classes {
129
+ .accordion {
130
+ @include clearfix; margin-bottom: 0;
131
+ .accordion-navigation, dd {
132
+ display: block;
133
+ margin-bottom: 0 !important;
134
+ &.active > a { background: $accordion-navigation-active-bg-color; }
135
+ > a {
136
+ background: $accordion-navigation-bg-color;
137
+ color: $accordion-navigation-font-color;
138
+ padding: $accordion-navigation-padding;
139
+ display: block;
140
+ font-family: $accordion-navigation-font-family;
141
+ font-size: $accordion-navigation-font-size;
142
+ &:hover { background: $accordion-navigation-hover-bg-color; }
143
+ }
144
+
145
+ > .content {
146
+ display: none;
147
+ padding: $accordion-content-padding;
148
+ &.active {
149
+ display: block;
150
+ background: $accordion-content-active-bg-color;
151
+ }
152
+ }
153
+ }
154
+ }
155
+ }
156
+ }
@@ -0,0 +1,126 @@
1
+ // Foundation by ZURB
2
+ // foundation.zurb.com
3
+ // Licensed under MIT Open Source
4
+
5
+ @import "global";
6
+
7
+ //
8
+ // Alert Box Variables
9
+ //
10
+ $include-html-alert-classes: $include-html-classes !default;
11
+
12
+ // We use this to control alert padding.
13
+ $alert-padding-top: rem-calc(14) !default;
14
+ $alert-padding-default-float: $alert-padding-top !default;
15
+ $alert-padding-opposite-direction: $alert-padding-top + rem-calc(10) !default;
16
+ $alert-padding-bottom: $alert-padding-top !default;
17
+
18
+ // We use these to control text style.
19
+ $alert-font-weight: $font-weight-normal !default;
20
+ $alert-font-size: rem-calc(13) !default;
21
+ $alert-font-color: $white !default;
22
+ $alert-font-color-alt: scale-color($secondary-color, $lightness: -66%) !default;
23
+
24
+ // We use this for close hover effect.
25
+ $alert-function-factor: -14% !default;
26
+
27
+ // We use these to control border styles.
28
+ $alert-border-style: solid !default;
29
+ $alert-border-width: 1px !default;
30
+ $alert-border-color: scale-color($primary-color, $lightness: $alert-function-factor) !default;
31
+ $alert-bottom-margin: rem-calc(20) !default;
32
+
33
+ // We use these to style the close buttons
34
+ $alert-close-color: $oil !default;
35
+ $alert-close-top: 50% !default;
36
+ $alert-close-position: rem-calc(4) !default;
37
+ $alert-close-font-size: rem-calc(22) !default;
38
+ $alert-close-opacity: 0.3 !default;
39
+ $alert-close-opacity-hover: 0.5 !default;
40
+ $alert-close-padding: 9px 6px 4px !default;
41
+
42
+ // We use this to control border radius
43
+ $alert-radius: $global-radius !default;
44
+
45
+ $alert-transition-speed: 300ms !default;
46
+ $alert-transition-ease: ease-out !default;
47
+
48
+ //
49
+ // Alert Mixins
50
+ //
51
+
52
+ // We use this mixin to create a default alert base.
53
+ @mixin alert-base {
54
+ border-style: $alert-border-style;
55
+ border-width: $alert-border-width;
56
+ display: block;
57
+ font-weight: $alert-font-weight;
58
+ margin-bottom: $alert-bottom-margin;
59
+ position: relative;
60
+ padding: $alert-padding-top $alert-padding-opposite-direction $alert-padding-bottom $alert-padding-default-float;
61
+ font-size: $alert-font-size;
62
+ @include single-transition(opacity, $alert-transition-speed, $alert-transition-ease)
63
+ }
64
+
65
+ // We use this mixin to add alert styles
66
+ //
67
+ // $bg - The background of the alert. Default: $primary-color.
68
+ @mixin alert-style($bg:$primary-color) {
69
+
70
+ // This finds the lightness percentage of the background color.
71
+ $bg-lightness: lightness($bg);
72
+
73
+ // We control which background color and border come through.
74
+ background-color: $bg;
75
+ border-color: scale-color($bg, $lightness: $alert-function-factor);
76
+
77
+ // We control the text color for you based on the background color.
78
+ @if $bg-lightness > 70% { color: $alert-font-color-alt; }
79
+ @else { color: $alert-font-color; }
80
+
81
+ }
82
+
83
+ // We use this to create the close button.
84
+ @mixin alert-close {
85
+ font-size: $alert-close-font-size;
86
+ padding: $alert-close-padding;
87
+ line-height: 0;
88
+ position: absolute;
89
+ top: $alert-close-top;
90
+ margin-top: -($alert-close-font-size / 2);
91
+ #{$opposite-direction}: $alert-close-position;
92
+ color: $alert-close-color;
93
+ opacity: $alert-close-opacity;
94
+ &:hover,
95
+ &:focus { opacity: $alert-close-opacity-hover; }
96
+ }
97
+
98
+ // We use this to quickly create alerts with a single mixin.
99
+ //
100
+ // $bg - Background of alert. Default: $primary-color.
101
+ // $radius - Radius of alert box. Default: false.
102
+ @mixin alert($bg:$primary-color, $radius:false) {
103
+ @include alert-base;
104
+ @include alert-style($bg);
105
+ @include radius($radius);
106
+ }
107
+
108
+ @include exports("alert-box") {
109
+ @if $include-html-alert-classes {
110
+ .alert-box {
111
+ @include alert;
112
+
113
+ .close { @include alert-close; }
114
+
115
+ &.radius { @include radius($alert-radius); }
116
+ &.round { @include radius($global-rounded); }
117
+
118
+ &.success { @include alert-style($success-color); }
119
+ &.alert { @include alert-style($alert-color); }
120
+ &.secondary { @include alert-style($secondary-color); }
121
+ &.warning { @include alert-style($warning-color); }
122
+ &.info { @include alert-style($info-color); }
123
+ &.alert-close { opacity: 0}
124
+ }
125
+ }
126
+ }
@@ -0,0 +1,132 @@
1
+ // Foundation by ZURB
2
+ // foundation.zurb.com
3
+ // Licensed under MIT Open Source
4
+
5
+ @import "global";
6
+
7
+ //
8
+ // Block Grid Variables
9
+ //
10
+ $include-html-block-grid-classes: $include-html-classes !default;
11
+ $include-xl-html-block-grid-classes: false !default;
12
+
13
+ // We use this to control the maximum number of block grid elements per row
14
+ $block-grid-elements: 12 !default;
15
+ $block-grid-default-spacing: rem-calc(20) !default;
16
+
17
+ $align-block-grid-to-grid: false !default;
18
+ @if $align-block-grid-to-grid {
19
+ $block-grid-default-spacing: $column-gutter;
20
+ }
21
+
22
+ // Enables media queries for block-grid classes. Set to false if writing semantic HTML.
23
+ $block-grid-media-queries: true !default;
24
+
25
+ //
26
+ // Block Grid Mixins
27
+ //
28
+
29
+ // Create a custom block grid
30
+ //
31
+ // $per-row - # of items to display per row. Default: false.
32
+ // $spacing - # of ems to use as padding on each block item. Default: rem-calc(20).
33
+ // $base-style - Apply a base style to block grid. Default: true.
34
+ @mixin block-grid(
35
+ $per-row:false,
36
+ $spacing:$block-grid-default-spacing,
37
+ $include-spacing:true,
38
+ $base-style:true) {
39
+
40
+ @if $base-style {
41
+ display: block;
42
+ padding: 0;
43
+ @if $align-block-grid-to-grid {
44
+ margin: 0;
45
+ } @else {
46
+ margin: 0 (-$spacing/2);
47
+ }
48
+ @include clearfix;
49
+
50
+ &>li {
51
+ display: block;
52
+ height: auto;
53
+ float: $default-float;
54
+ @if $include-spacing {
55
+ padding: 0 ($spacing/2) $spacing;
56
+ }
57
+ }
58
+ }
59
+
60
+ @if $per-row {
61
+ &>li {
62
+ width: 100%/$per-row;
63
+ @if $include-spacing {
64
+ padding: 0 ($spacing/2) $spacing;
65
+ }
66
+ list-style: none;
67
+
68
+ &:nth-of-type(1n) { clear: none; }
69
+ &:nth-of-type(#{$per-row}n+1) { clear: both; }
70
+ @if $align-block-grid-to-grid {
71
+ @include block-grid-aligned($per-row, $spacing);
72
+ }
73
+ }
74
+ }
75
+ }
76
+
77
+ @mixin block-grid-aligned($per-row, $spacing) {
78
+ @for $i from 1 through $block-grid-elements {
79
+ @if $per-row >= $i {
80
+ $grid-column: '+' + $i;
81
+ @if $per-row == $i {
82
+ $grid-column: '';
83
+ }
84
+ &:nth-of-type(#{$per-row}n#{unquote($grid-column)}) {
85
+ padding-left: ($spacing - (($spacing / $per-row) * ($per-row - ($i - 1))));
86
+ padding-right: ($spacing - (($spacing / $per-row) * $i));
87
+ }
88
+ }
89
+ }
90
+ }
91
+
92
+ // Generate presentational markup for block grid.
93
+ //
94
+ // $size - Name of class to use, i.e. "large" will generate .large-block-grid-1, .large-block-grid-2, etc.
95
+ @mixin block-grid-html-classes($size,$include-spacing) {
96
+ @for $i from 1 through $block-grid-elements {
97
+ .#{$size}-block-grid-#{($i)} {
98
+ @include block-grid($i,$block-grid-default-spacing,$include-spacing,false);
99
+ }
100
+ }
101
+ }
102
+
103
+ @include exports("block-grid") {
104
+ @if $include-html-block-grid-classes {
105
+
106
+ [class*="block-grid-"] { @include block-grid; }
107
+
108
+ @if $block-grid-media-queries {
109
+ @media #{$small-up} {
110
+ @include block-grid-html-classes($size:small,$include-spacing:false);
111
+ }
112
+
113
+ @media #{$medium-up} {
114
+ @include block-grid-html-classes($size:medium,$include-spacing:false);
115
+ }
116
+
117
+ @media #{$large-up} {
118
+ @include block-grid-html-classes($size:large,$include-spacing:false);
119
+ }
120
+
121
+ @if $include-xl-html-block-grid-classes {
122
+ @media #{$xlarge-up} {
123
+ @include block-grid-html-classes($size:xlarge,$include-spacing:false);
124
+ }
125
+
126
+ @media #{$xxlarge-up} {
127
+ @include block-grid-html-classes($size:xxlarge,$include-spacing:false);
128
+ }
129
+ }
130
+ }
131
+ }
132
+ }
@@ -0,0 +1,132 @@
1
+ // Foundation by ZURB
2
+ // foundation.zurb.com
3
+ // Licensed under MIT Open Source
4
+
5
+ @import "global";
6
+
7
+ //
8
+ // Breadcrumb Variables
9
+ //
10
+ $include-html-nav-classes: $include-html-classes !default;
11
+
12
+ // We use this to set the background color for the breadcrumb container.
13
+ $crumb-bg: scale-color($secondary-color, $lightness: 55%) !default;
14
+
15
+ // We use these to set the padding around the breadcrumbs.
16
+ $crumb-padding: rem-calc(9 14 9) !default;
17
+ $crumb-side-padding: rem-calc(12) !default;
18
+
19
+ // We use these to control border styles.
20
+ $crumb-function-factor: -10% !default;
21
+ $crumb-border-size: 1px !default;
22
+ $crumb-border-style: solid !default;
23
+ $crumb-border-color: scale-color($crumb-bg, $lightness: $crumb-function-factor) !default;
24
+ $crumb-radius: $global-radius !default;
25
+
26
+ // We use these to set various text styles for breadcrumbs.
27
+ $crumb-font-size: rem-calc(11) !default;
28
+ $crumb-font-color: $primary-color !default;
29
+ $crumb-font-color-current: $oil !default;
30
+ $crumb-font-color-unavailable: $aluminum !default;
31
+ $crumb-font-transform: uppercase !default;
32
+ $crumb-link-decor: underline !default;
33
+
34
+ // We use these to control the slash between breadcrumbs
35
+ $crumb-slash-color: $base !default;
36
+ $crumb-slash: "/" !default;
37
+
38
+ //
39
+ // Breadcrumb Mixins
40
+ //
41
+
42
+ // We use this mixin to create a container around our breadcrumbs
43
+ @mixin crumb-container {
44
+ display: block;
45
+ padding: $crumb-padding;
46
+ overflow: hidden;
47
+ margin-#{$default-float}: 0;
48
+ list-style: none;
49
+ border-style: $crumb-border-style;
50
+ border-width: $crumb-border-size;
51
+
52
+ // We control which background color and border come through.
53
+ background-color: $crumb-bg;
54
+ border-color: $crumb-border-color;
55
+ }
56
+
57
+ // We use this mixin to create breadcrumb styles from list items.
58
+ @mixin crumbs {
59
+
60
+ // A normal state will make the links look and act like clickable breadcrumbs.
61
+ margin: 0;
62
+ float: $default-float;
63
+ font-size: $crumb-font-size;
64
+ line-height: $crumb-font-size;
65
+ text-transform: $crumb-font-transform;
66
+ color: $crumb-font-color;
67
+
68
+ &:hover a, &:focus a { text-decoration: $crumb-link-decor; }
69
+
70
+ a {
71
+ color: $crumb-font-color;
72
+ }
73
+
74
+ // Current is for the link of the current page
75
+ &.current {
76
+ cursor: $cursor-default-value;
77
+ color: $crumb-font-color-current;
78
+ a {
79
+ cursor: $cursor-default-value;
80
+ color: $crumb-font-color-current;
81
+ }
82
+
83
+ &:hover, &:hover a,
84
+ &:focus, &:focus a { text-decoration: none; }
85
+ }
86
+
87
+ // Unavailable removed color and link styles so it looks inactive.
88
+ &.unavailable {
89
+ color: $crumb-font-color-unavailable;
90
+ a { color: $crumb-font-color-unavailable; }
91
+
92
+ &:hover,
93
+ &:hover a,
94
+ &:focus,
95
+ a:focus {
96
+ text-decoration: none;
97
+ color: $crumb-font-color-unavailable;
98
+ cursor: $cursor-default-value;
99
+ }
100
+ }
101
+
102
+ &:before {
103
+ content: "#{$crumb-slash}";
104
+ color: $crumb-slash-color;
105
+ margin: 0 $crumb-side-padding;
106
+ position: relative;
107
+ top: 1px;
108
+ }
109
+
110
+ &:first-child:before {
111
+ content: " ";
112
+ margin: 0;
113
+ }
114
+ }
115
+
116
+ @include exports("breadcrumbs") {
117
+ @if $include-html-nav-classes {
118
+ .breadcrumbs {
119
+ @include crumb-container;
120
+ @include radius($crumb-radius);
121
+
122
+ &>* {
123
+ @include crumbs;
124
+ }
125
+ }
126
+ }
127
+ }
128
+
129
+ /* Accessibility - hides the forward slash */
130
+ [aria-label="breadcrumbs"] [aria-hidden="true"]:after {
131
+ content: "/";
132
+ }