oneflow-jekyll 1.0

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 (122) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE.MD +7 -0
  3. data/README.md +29 -0
  4. data/_data/navigation.yml +18 -0
  5. data/_includes/editables/editables.html +15 -0
  6. data/_includes/figure +9 -0
  7. data/_includes/footer/custom.html +3 -0
  8. data/_includes/footer.html +27 -0
  9. data/_includes/gallery +35 -0
  10. data/_includes/head/custom.html +12 -0
  11. data/_includes/head.html +23 -0
  12. data/_includes/image-text-row +61 -0
  13. data/_includes/masthead.html +35 -0
  14. data/_includes/page__hero.html +46 -0
  15. data/_includes/popup.html +43 -0
  16. data/_includes/round-images +30 -0
  17. data/_includes/scripts.html +13 -0
  18. data/_includes/seo.html +158 -0
  19. data/_includes/video +24 -0
  20. data/_layouts/default.html +78 -0
  21. data/_layouts/page.html +13 -0
  22. data/_sass/oneflow/_animations.scss +21 -0
  23. data/_sass/oneflow/_base.scss +356 -0
  24. data/_sass/oneflow/_boxes.scss +46 -0
  25. data/_sass/oneflow/_buttons.scss +95 -0
  26. data/_sass/oneflow/_fonts.scss +18 -0
  27. data/_sass/oneflow/_footer.scss +121 -0
  28. data/_sass/oneflow/_masthead.scss +97 -0
  29. data/_sass/oneflow/_mixins.scss +92 -0
  30. data/_sass/oneflow/_navigation.scss +412 -0
  31. data/_sass/oneflow/_notices.scss +109 -0
  32. data/_sass/oneflow/_page.scss +287 -0
  33. data/_sass/oneflow/_print.scss +252 -0
  34. data/_sass/oneflow/_reset.scss +187 -0
  35. data/_sass/oneflow/_sections.scss +29 -0
  36. data/_sass/oneflow/_utilities.scss +307 -0
  37. data/_sass/oneflow/_variables.scss +140 -0
  38. data/_sass/oneflow/skins/_air.scss +23 -0
  39. data/_sass/oneflow/skins/_aqua.scss +34 -0
  40. data/_sass/oneflow/skins/_contrast.scss +52 -0
  41. data/_sass/oneflow/skins/_dark.scss +30 -0
  42. data/_sass/oneflow/skins/_default.scss +5 -0
  43. data/_sass/oneflow/skins/_dirt.scss +33 -0
  44. data/_sass/oneflow/skins/_mint.scss +24 -0
  45. data/_sass/oneflow/skins/_neon.scss +63 -0
  46. data/_sass/oneflow/skins/_plum.scss +70 -0
  47. data/_sass/oneflow/skins/_sunrise.scss +49 -0
  48. data/_sass/oneflow/vendor/breakpoint/_breakpoint.scss +114 -0
  49. data/_sass/oneflow/vendor/breakpoint/_context.scss +95 -0
  50. data/_sass/oneflow/vendor/breakpoint/_helpers.scss +151 -0
  51. data/_sass/oneflow/vendor/breakpoint/_legacy-settings.scss +50 -0
  52. data/_sass/oneflow/vendor/breakpoint/_no-query.scss +15 -0
  53. data/_sass/oneflow/vendor/breakpoint/_parsers.scss +215 -0
  54. data/_sass/oneflow/vendor/breakpoint/_respond-to.scss +82 -0
  55. data/_sass/oneflow/vendor/breakpoint/_settings.scss +71 -0
  56. data/_sass/oneflow/vendor/breakpoint/parsers/_double.scss +33 -0
  57. data/_sass/oneflow/vendor/breakpoint/parsers/_query.scss +82 -0
  58. data/_sass/oneflow/vendor/breakpoint/parsers/_resolution.scss +31 -0
  59. data/_sass/oneflow/vendor/breakpoint/parsers/_single.scss +26 -0
  60. data/_sass/oneflow/vendor/breakpoint/parsers/_triple.scss +36 -0
  61. data/_sass/oneflow/vendor/breakpoint/parsers/double/_default-pair.scss +21 -0
  62. data/_sass/oneflow/vendor/breakpoint/parsers/double/_default.scss +22 -0
  63. data/_sass/oneflow/vendor/breakpoint/parsers/double/_double-string.scss +22 -0
  64. data/_sass/oneflow/vendor/breakpoint/parsers/resolution/_resolution.scss +60 -0
  65. data/_sass/oneflow/vendor/breakpoint/parsers/single/_default.scss +13 -0
  66. data/_sass/oneflow/vendor/breakpoint/parsers/triple/_default.scss +18 -0
  67. data/_sass/oneflow/vendor/magnific-popup/_magnific-popup.scss +649 -0
  68. data/_sass/oneflow/vendor/magnific-popup/_settings.scss +46 -0
  69. data/_sass/oneflow/vendor/susy/_su.scss +4 -0
  70. data/_sass/oneflow/vendor/susy/_susy-prefix.scss +13 -0
  71. data/_sass/oneflow/vendor/susy/_susy.scss +5 -0
  72. data/_sass/oneflow/vendor/susy/plugins/_svg-grid.scss +5 -0
  73. data/_sass/oneflow/vendor/susy/plugins/svg-grid/_prefix.scss +7 -0
  74. data/_sass/oneflow/vendor/susy/plugins/svg-grid/_svg-api.scss +114 -0
  75. data/_sass/oneflow/vendor/susy/plugins/svg-grid/_svg-grid-math.scss +67 -0
  76. data/_sass/oneflow/vendor/susy/plugins/svg-grid/_svg-settings.scss +14 -0
  77. data/_sass/oneflow/vendor/susy/plugins/svg-grid/_svg-unprefix.scss +18 -0
  78. data/_sass/oneflow/vendor/susy/plugins/svg-grid/_svg-utilities.scss +133 -0
  79. data/_sass/oneflow/vendor/susy/susy/_api.scss +318 -0
  80. data/_sass/oneflow/vendor/susy/susy/_normalize.scss +261 -0
  81. data/_sass/oneflow/vendor/susy/susy/_parse.scss +163 -0
  82. data/_sass/oneflow/vendor/susy/susy/_settings.scss +329 -0
  83. data/_sass/oneflow/vendor/susy/susy/_su-math.scss +441 -0
  84. data/_sass/oneflow/vendor/susy/susy/_su-validate.scss +213 -0
  85. data/_sass/oneflow/vendor/susy/susy/_syntax-helpers.scss +191 -0
  86. data/_sass/oneflow/vendor/susy/susy/_unprefix.scss +56 -0
  87. data/_sass/oneflow/vendor/susy/susy/_utilities.scss +167 -0
  88. data/_sass/oneflow.scss +33 -0
  89. data/assets/css/all.min.css +9 -0
  90. data/assets/css/custom-styles.css +1 -0
  91. data/assets/css/main.scss +13 -0
  92. data/assets/fonts/great-vibes-v18-latin-regular.woff2 +0 -0
  93. data/assets/images/header.webp +0 -0
  94. data/assets/images/logo.webp +0 -0
  95. data/assets/images/sydney-2.webp +0 -0
  96. data/assets/images/sydney-3.webp +0 -0
  97. data/assets/images/sydney-4.webp +0 -0
  98. data/assets/images/sydney-5.webp +0 -0
  99. data/assets/images/sydney-6.webp +0 -0
  100. data/assets/js/_main.js +136 -0
  101. data/assets/js/lunr/lunr-en.js +73 -0
  102. data/assets/js/lunr/lunr-gr.js +526 -0
  103. data/assets/js/lunr/lunr-store.js +84 -0
  104. data/assets/js/lunr/lunr.js +3475 -0
  105. data/assets/js/lunr/lunr.min.js +6 -0
  106. data/assets/js/main.min.js +6 -0
  107. data/assets/js/plugins/gumshoe.js +484 -0
  108. data/assets/js/plugins/jquery.ba-throttle-debounce.js +252 -0
  109. data/assets/js/plugins/jquery.fitvids.js +82 -0
  110. data/assets/js/plugins/jquery.greedy-navigation.js +127 -0
  111. data/assets/js/plugins/jquery.magnific-popup.js +1860 -0
  112. data/assets/js/plugins/smooth-scroll.js +650 -0
  113. data/assets/js/vendor/jquery/jquery-3.6.0.js +10881 -0
  114. data/assets/webfonts/fa-brands-400.ttf +0 -0
  115. data/assets/webfonts/fa-brands-400.woff2 +0 -0
  116. data/assets/webfonts/fa-regular-400.ttf +0 -0
  117. data/assets/webfonts/fa-regular-400.woff2 +0 -0
  118. data/assets/webfonts/fa-solid-900.ttf +0 -0
  119. data/assets/webfonts/fa-solid-900.woff2 +0 -0
  120. data/assets/webfonts/fa-v4compatibility.ttf +0 -0
  121. data/assets/webfonts/fa-v4compatibility.woff2 +0 -0
  122. metadata +253 -0
@@ -0,0 +1,52 @@
1
+ /* ==========================================================================
2
+ Contrast skin
3
+ ========================================================================== */
4
+
5
+ /* Colors */
6
+ $text-color: #000 !default;
7
+ $muted-text-color: $text-color !default;
8
+ $primary-color: #ff0000 !default;
9
+ $border-color: mix(#fff, $text-color, 75%) !default;
10
+ $footer-background-color: #000 !default;
11
+ $link-color: #0000ff !default;
12
+ $masthead-link-color: $text-color !default;
13
+ $masthead-link-color-hover: $text-color !default;
14
+ $navicon-link-color-hover: mix(#fff, $text-color, 80%) !default;
15
+
16
+ /* contrast syntax highlighting (base16) */
17
+ $base00: #000000 !default;
18
+ $base01: #242422 !default;
19
+ $base02: #484844 !default;
20
+ $base03: #6c6c66 !default;
21
+ $base04: #918f88 !default;
22
+ $base05: #b5b3aa !default;
23
+ $base06: #d9d7cc !default;
24
+ $base07: #fdfbee !default;
25
+ $base08: #ff6c60 !default;
26
+ $base09: #e9c062 !default;
27
+ $base0a: #ffffb6 !default;
28
+ $base0b: #a8ff60 !default;
29
+ $base0c: #c6c5fe !default;
30
+ $base0d: #96cbfe !default;
31
+ $base0e: #ff73fd !default;
32
+ $base0f: #b18a3d !default;
33
+
34
+ .page__content {
35
+ .notice,
36
+ .notice--primary,
37
+ .notice--info,
38
+ .notice--warning,
39
+ .notice--success,
40
+ .notice--danger {
41
+ color: $text-color;
42
+ }
43
+ }
44
+
45
+ .page__footer {
46
+ color: #fff !important; // override
47
+ }
48
+
49
+ .page__footer-follow .social-icons i,
50
+ .page__footer-follow .social-icons .svg-inline--fa {
51
+ color: inherit;
52
+ }
@@ -0,0 +1,30 @@
1
+ /* ==========================================================================
2
+ Dark skin
3
+ ========================================================================== */
4
+
5
+ /* Colors */
6
+ $background-color: #252a34 !default;
7
+ $text-color: #eaeaea !default;
8
+ $primary-color: #00adb5 !default;
9
+ $border-color: mix(#fff, $background-color, 20%) !default;
10
+ $code-background-color: mix(#000, $background-color, 15%) !default;
11
+ $code-background-color-dark: mix(#000, $background-color, 20%) !default;
12
+ $form-background-color: mix(#000, $background-color, 15%) !default;
13
+ $footer-background-color: mix(#000, $background-color, 30%) !default;
14
+ $link-color: mix($primary-color, $text-color, 10%) !default;
15
+ $link-color-hover: mix(#fff, $link-color, 25%) !default;
16
+ $link-color-visited: mix(#000, $link-color, 25%) !default;
17
+ $masthead-link-color: $text-color !default;
18
+ $masthead-link-color-hover: mix(#000, $text-color, 20%) !default;
19
+ $navicon-link-color-hover: mix(#000, $background-color, 30%) !default;
20
+
21
+ .author__urls.social-icons i,
22
+ .author__urls.social-icons .svg-inline--fa,
23
+ .page__footer-follow .social-icons i,
24
+ .page__footer-follow .social-icons .svg-inline--fa {
25
+ color: inherit;
26
+ }
27
+
28
+ .ais-search-box .ais-search-box--input {
29
+ background-color: $form-background-color;
30
+ }
@@ -0,0 +1,5 @@
1
+ /* ==========================================================================
2
+ Default skin
3
+ ========================================================================== */
4
+
5
+ // Intentionally left blank
@@ -0,0 +1,33 @@
1
+ /* ==========================================================================
2
+ Dirt skin
3
+ ========================================================================== */
4
+
5
+ /* Colors */
6
+ $background-color: #f3f3f3 !default;
7
+ $text-color: #343434 !default;
8
+ $muted-text-color: #8e8b82 !default;
9
+ $primary-color: #343434 !default;
10
+ $border-color: #e9dcbe !default;
11
+ $footer-background-color: #e9dcbe !default;
12
+ $link-color: #414040 !default;
13
+ $masthead-link-color: $text-color !default;
14
+ $masthead-link-color-hover: $text-color !default;
15
+ $navicon-link-color-hover: mix(#fff, $text-color, 80%) !default;
16
+
17
+ /* dirt syntax highlighting (base16) */
18
+ $base00: #231e18 !default;
19
+ $base01: #302b25 !default;
20
+ $base02: #48413a !default;
21
+ $base03: #9d8b70 !default;
22
+ $base04: #b4a490 !default;
23
+ $base05: #cabcb1 !default;
24
+ $base06: #d7c8bc !default;
25
+ $base07: #e4d4c8 !default;
26
+ $base08: #d35c5c !default;
27
+ $base09: #ca7f32 !default;
28
+ $base0a: #e0ac16 !default;
29
+ $base0b: #b7ba53 !default;
30
+ $base0c: #6eb958 !default;
31
+ $base0d: #88a4d3 !default;
32
+ $base0e: #bb90e2 !default;
33
+ $base0f: #b49368 !default;
@@ -0,0 +1,24 @@
1
+ /* ==========================================================================
2
+ Mint skin
3
+ ========================================================================== */
4
+
5
+ /* Colors */
6
+ $background-color: #f3f6f6 !default;
7
+ $text-color: #40514e !default;
8
+ $muted-text-color: #40514e !default;
9
+ $primary-color: #11999e !default;
10
+ $border-color: mix(#fff, #40514e, 75%) !default;
11
+ $footer-background-color: #30e3ca !default;
12
+ $link-color: mix(#000, $primary-color, 25%) !default;
13
+ $masthead-link-color: $text-color !default;
14
+ $masthead-link-color-hover: $text-color !default;
15
+ $navicon-link-color-hover: mix(#fff, $text-color, 80%) !default;
16
+
17
+ .page__footer {
18
+ color: #fff !important; // override
19
+ }
20
+
21
+ .page__footer-follow .social-icons i,
22
+ .page__footer-follow .social-icons .svg-inline--fa {
23
+ color: inherit;
24
+ }
@@ -0,0 +1,63 @@
1
+ /* ==========================================================================
2
+ Neon skin
3
+ ========================================================================== */
4
+
5
+ /* Colors */
6
+ $background-color: #141010 !default;
7
+ $text-color: #fff6fb !default;
8
+ $primary-color: #f21368 !default;
9
+ $border-color: mix(#fff, $background-color, 20%) !default;
10
+ $code-background-color: mix(#000, $background-color, 15%) !default;
11
+ $code-background-color-dark: mix(#000, $background-color, 20%) !default;
12
+ $form-background-color: mix(#000, $background-color, 15%) !default;
13
+ $footer-background-color: mix($primary-color, #000, 10%) !default;
14
+ $link-color: mix(#fff, $primary-color, 40%) !default;
15
+ $link-color-hover: mix(#fff, $link-color, 15%) !default;
16
+ $link-color-visited: mix(#000, $link-color, 25%) !default;
17
+ $masthead-link-color: $text-color !default;
18
+ $masthead-link-color-hover: mix(#000, $text-color, 20%) !default;
19
+ $navicon-link-color-hover: mix(#000, $background-color, 30%) !default;
20
+
21
+ /* notices */
22
+ $notice-background-mix: 90% !default;
23
+ $code-notice-background-mix: 95% !default;
24
+
25
+ /* neon syntax highlighting (base16) */
26
+ $base00: #ffffff !default;
27
+ $base01: #e0e0e0 !default;
28
+ $base02: #d0d0d0 !default;
29
+ $base03: #b0b0b0 !default;
30
+ $base04: #000000 !default;
31
+ $base05: #101010 !default;
32
+ $base06: #151515 !default;
33
+ $base07: #202020 !default;
34
+ $base08: #ff0086 !default;
35
+ $base09: #fd8900 !default;
36
+ $base0a: #aba800 !default;
37
+ $base0b: #00c918 !default;
38
+ $base0c: #1faaaa !default;
39
+ $base0d: #3777e6 !default;
40
+ $base0e: #ad00a1 !default;
41
+ $base0f: #cc6633 !default;
42
+
43
+ .author__urls.social-icons i,
44
+ .author__urls.social-icons .svg-inline--fa,
45
+ .page__footer-follow .social-icons i,
46
+ .page__footer-follow .social-icons .svg-inline--fa {
47
+ color: inherit;
48
+ }
49
+
50
+ /* next/previous buttons */
51
+ .pagination--pager {
52
+ color: $text-color;
53
+ background-color: $primary-color;
54
+ border-color: transparent;
55
+
56
+ &:visited {
57
+ color: $text-color;
58
+ }
59
+ }
60
+
61
+ .ais-search-box .ais-search-box--input {
62
+ background-color: $form-background-color;
63
+ }
@@ -0,0 +1,70 @@
1
+ /* ==========================================================================
2
+ Plum skin
3
+ ========================================================================== */
4
+
5
+ /* Colors */
6
+ $background-color: #521477 !default;
7
+ $text-color: #fffd86 !default;
8
+ $primary-color: #c327ab !default;
9
+ $border-color: mix(#fff, $background-color, 20%) !default;
10
+ $code-background-color: mix(#000, $background-color, 15%) !default;
11
+ $code-background-color-dark: mix(#000, $background-color, 20%) !default;
12
+ $form-background-color: mix(#000, $background-color, 15%) !default;
13
+ $footer-background-color: mix(#000, $background-color, 25%) !default;
14
+ $link-color: mix(#fff, $primary-color, 25%) !default;
15
+ $link-color-hover: mix(#fff, $link-color, 25%) !default;
16
+ $link-color-visited: mix(#000, $link-color, 25%) !default;
17
+ $masthead-link-color: $text-color !default;
18
+ $masthead-link-color-hover: mix(#000, $text-color, 20%) !default;
19
+ $navicon-link-color-hover: mix(#000, $background-color, 30%) !default;
20
+
21
+ /* notices */
22
+ $notice-background-mix: 70% !default;
23
+ $code-notice-background-mix: 80% !default;
24
+
25
+ /* plum syntax highlighting (base16) */
26
+ $base00: #ffffff !default;
27
+ $base01: #e0e0e0 !default;
28
+ $base02: #d0d0d0 !default;
29
+ $base03: #b0b0b0 !default;
30
+ $base04: #000000 !default;
31
+ $base05: #101010 !default;
32
+ $base06: #151515 !default;
33
+ $base07: #202020 !default;
34
+ $base08: #ff0086 !default;
35
+ $base09: #fd8900 !default;
36
+ $base0a: #aba800 !default;
37
+ $base0b: #00c918 !default;
38
+ $base0c: #1faaaa !default;
39
+ $base0d: #3777e6 !default;
40
+ $base0e: #ad00a1 !default;
41
+ $base0f: #cc6633 !default;
42
+
43
+ .author__urls.social-icons i,
44
+ .author__urls.social-icons .svg-inline--fa,
45
+ .page__footer-follow .social-icons i,
46
+ .page__footer-follow .social-icons .svg-inline--fa {
47
+ color: inherit;
48
+ }
49
+
50
+ .page__content {
51
+ a,
52
+ a:visited {
53
+ color: inherit;
54
+ }
55
+ }
56
+
57
+ /* next/previous buttons */
58
+ .pagination--pager {
59
+ color: $text-color;
60
+ background-color: $primary-color;
61
+ border-color: transparent;
62
+
63
+ &:visited {
64
+ color: $text-color;
65
+ }
66
+ }
67
+
68
+ .ais-search-box .ais-search-box--input {
69
+ background-color: $form-background-color;
70
+ }
@@ -0,0 +1,49 @@
1
+ /* ==========================================================================
2
+ Sunrise skin
3
+ ========================================================================== */
4
+
5
+ /* Colors */
6
+ $dark-gray: #0e2431 !default;
7
+ $background-color: #e8d5b7 !default;
8
+ $text-color: #000 !default;
9
+ $muted-text-color: $dark-gray !default;
10
+ $primary-color: #fc3a52 !default;
11
+ $border-color: mix(#000, $background-color, 20%) !default;
12
+ $code-background-color: mix(#fff, $background-color, 20%) !default;
13
+ $code-background-color-dark: mix(#000, $background-color, 10%) !default;
14
+ $form-background-color: mix(#fff, $background-color, 15%) !default;
15
+ $footer-background-color: #f9b248 !default;
16
+ $link-color: mix(#000, $primary-color, 10%) !default;
17
+ $link-color-hover: mix(#fff, $link-color, 5%) !default;
18
+ $link-color-visited: mix(#000, $link-color, 15%) !default;
19
+ $masthead-link-color: $text-color !default;
20
+ $masthead-link-color-hover: mix(#000, $text-color, 20%) !default;
21
+ $navicon-link-color-hover: mix(#000, $background-color, 30%) !default;
22
+
23
+ /* notices */
24
+ $notice-background-mix: 75% !default;
25
+
26
+ /* sunrise syntax highlighting (base16) */
27
+ $base00: #1d1f21 !default;
28
+ $base01: #282a2e !default;
29
+ $base02: #373b41 !default;
30
+ $base03: #969896 !default;
31
+ $base04: #b4b7b4 !default;
32
+ $base05: #c5c8c6 !default;
33
+ $base06: #e0e0e0 !default;
34
+ $base07: #ffffff !default;
35
+ $base08: #cc6666 !default;
36
+ $base09: #de935f !default;
37
+ $base0a: #f0c674 !default;
38
+ $base0b: #b5bd68 !default;
39
+ $base0c: #8abeb7 !default;
40
+ $base0d: #81a2be !default;
41
+ $base0e: #b294bb !default;
42
+ $base0f: #a3685a !default;
43
+
44
+ .author__urls.social-icons i,
45
+ .author__urls.social-icons .svg-inline--fa,
46
+ .page__footer-follow .social-icons i,
47
+ .page__footer-follow .social-icons .svg-inline--fa {
48
+ color: inherit;
49
+ }
@@ -0,0 +1,114 @@
1
+ //////////////////////////////
2
+ // Default Variables
3
+ //////////////////////////////
4
+ $Breakpoint-Settings: (
5
+ 'default media': all,
6
+ 'default feature': min-width,
7
+ 'default pair': width,
8
+
9
+ 'force all media type': false,
10
+ 'to ems': false,
11
+ 'transform resolutions': true,
12
+
13
+ 'no queries': false,
14
+ 'no query fallbacks': false,
15
+
16
+ 'base font size': 16px,
17
+
18
+ 'legacy syntax': false
19
+ );
20
+
21
+ $breakpoint: () !default;
22
+
23
+ //////////////////////////////
24
+ // Imports
25
+ //////////////////////////////
26
+ @import "settings";
27
+ @import "context";
28
+ @import "helpers";
29
+ @import "parsers";
30
+ @import "no-query";
31
+
32
+ @import "respond-to";
33
+
34
+ @import "legacy-settings";
35
+
36
+ //////////////////////////////
37
+ // Breakpoint Mixin
38
+ //////////////////////////////
39
+
40
+ @mixin breakpoint($query, $no-query: false) {
41
+ @include legacy-settings-warning;
42
+
43
+ // Reset contexts
44
+ @include private-breakpoint-reset-contexts();
45
+
46
+ $breakpoint: breakpoint($query, false);
47
+
48
+ $query-string: map-get($breakpoint, 'query');
49
+ $query-fallback: map-get($breakpoint, 'fallback');
50
+
51
+ $private-breakpoint-context-holder: map-get($breakpoint, 'context holder') !global;
52
+ $private-breakpoint-query-count: map-get($breakpoint, 'query count') !global;
53
+
54
+ // Allow for an as-needed override or usage of no query fallback.
55
+ @if $no-query != false {
56
+ $query-fallback: $no-query;
57
+ }
58
+
59
+ @if $query-fallback != false {
60
+ $context-setter: private-breakpoint-set-context('no-query', $query-fallback);
61
+ }
62
+
63
+ // Print Out Query String
64
+ @if not breakpoint-get('no queries') {
65
+ @media #{$query-string} {
66
+ @content;
67
+ }
68
+ }
69
+
70
+ @if breakpoint-get('no query fallbacks') != false or breakpoint-get('no queries') == true {
71
+
72
+ $type: type-of(breakpoint-get('no query fallbacks'));
73
+ $print: false;
74
+
75
+ @if ($type == 'bool') {
76
+ $print: true;
77
+ }
78
+ @else if ($type == 'string') {
79
+ @if $query-fallback == breakpoint-get('no query fallbacks') {
80
+ $print: true;
81
+ }
82
+ }
83
+ @else if ($type == 'list') {
84
+ @each $wrapper in breakpoint-get('no query fallbacks') {
85
+ @if $query-fallback == $wrapper {
86
+ $print: true;
87
+ }
88
+ }
89
+ }
90
+
91
+ // Write Fallback
92
+ @if ($query-fallback != false) and ($print == true) {
93
+ $type-fallback: type-of($query-fallback);
94
+
95
+ @if ($type-fallback != 'bool') {
96
+ #{$query-fallback} & {
97
+ @content;
98
+ }
99
+ }
100
+ @else {
101
+ @content;
102
+ }
103
+ }
104
+ }
105
+
106
+ @include private-breakpoint-reset-contexts();
107
+ }
108
+
109
+
110
+ @mixin mq($query, $no-query: false) {
111
+ @include breakpoint($query, $no-query) {
112
+ @content;
113
+ }
114
+ }
@@ -0,0 +1,95 @@
1
+ //////////////////////////////
2
+ // Private Breakpoint Variables
3
+ //////////////////////////////
4
+ $private-breakpoint-context-holder: ();
5
+ $private-breakpoint-query-count: 0 !default;
6
+
7
+ //////////////////////////////
8
+ // Breakpoint Has Context
9
+ // Returns whether or not you are inside a Breakpoint query
10
+ //////////////////////////////
11
+ @function breakpoint-has-context() {
12
+ @if length($private-breakpoint-query-count) {
13
+ @return true;
14
+ }
15
+ @else {
16
+ @return false;
17
+ }
18
+ }
19
+
20
+ //////////////////////////////
21
+ // Breakpoint Get Context
22
+ // $feature: Input feature to get it's current MQ context. Returns false if no context
23
+ //////////////////////////////
24
+ @function breakpoint-get-context($feature) {
25
+ @if map-has-key($private-breakpoint-context-holder, $feature) {
26
+ $get: map-get($private-breakpoint-context-holder, $feature);
27
+ // Special handling of no-query from get side so /false/ prepends aren't returned
28
+ @if $feature == 'no-query' {
29
+ @if type-of($get) == 'list' and length($get) > 1 and nth($get, 1) == false {
30
+ $get: nth($get, length($get));
31
+ }
32
+ }
33
+ @return $get;
34
+ }
35
+ @else {
36
+ @if breakpoint-has-context() and $feature == 'media' {
37
+ @return breakpoint-get('default media');
38
+ }
39
+ @else {
40
+ @return false;
41
+ }
42
+ }
43
+ }
44
+
45
+ //////////////////////////////
46
+ // Private function to set context
47
+ //////////////////////////////
48
+ @function private-breakpoint-set-context($feature, $value) {
49
+ @if $value == 'monochrome' {
50
+ $feature: 'monochrome';
51
+ }
52
+
53
+ $current: map-get($private-breakpoint-context-holder, $feature);
54
+ @if $current and length($current) == $private-breakpoint-query-count {
55
+ @warn "You have already queried against `#{$feature}`. Unexpected things may happen if you query against the same feature more than once in the same `and` query. Breakpoint is overwriting the current context with `#{$value}`";
56
+ }
57
+
58
+ @if not map-has-key($private-breakpoint-context-holder, $feature) {
59
+ $v-holder: ();
60
+ @for $i from 1 to $private-breakpoint-query-count {
61
+ @if $feature == 'media' {
62
+ $v-holder: append($v-holder, breakpoint-get('default media'));
63
+ }
64
+ @else {
65
+ $v-holder: append($v-holder, false);
66
+ }
67
+ }
68
+ $v-holder: append($v-holder, $value);
69
+ $private-breakpoint-context-holder: map-merge($private-breakpoint-context-holder, ($feature: $v-holder)) !global;
70
+ }
71
+ @else {
72
+ $v-holder: map-get($private-breakpoint-context-holder, $feature);
73
+ $length: length($v-holder);
74
+ @for $i from $length to $private-breakpoint-query-count - 1 {
75
+ @if $feature == 'media' {
76
+ $v-holder: append($v-holder, breakpoint-get('default media'));
77
+ }
78
+ @else {
79
+ $v-holder: append($v-holder, false);
80
+ }
81
+ }
82
+ $v-holder: append($v-holder, $value);
83
+ $private-breakpoint-context-holder: map-merge($private-breakpoint-context-holder, ($feature: $v-holder)) !global;
84
+ }
85
+
86
+ @return true;
87
+ }
88
+
89
+ //////////////////////////////
90
+ // Private function to reset context
91
+ //////////////////////////////
92
+ @mixin private-breakpoint-reset-contexts {
93
+ $private-breakpoint-context-holder: () !global;
94
+ $private-breakpoint-query-count: 0 !global;
95
+ }