@ulu/frontend 0.0.3 → 0.0.6

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 (285) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/README.md +3 -1
  3. package/js/deprecated/mini-collapsible.js +1 -1
  4. package/js/events/index.js +4 -1
  5. package/js/helpers/css-breakpoint.js +5 -7
  6. package/js/helpers/file-save.js +4 -0
  7. package/js/helpers/node-data-manager.js +4 -0
  8. package/js/helpers/pause-youtube-video.js +4 -0
  9. package/js/helpers/scrollbar-width-property.js +6 -2
  10. package/js/index.js +0 -2
  11. package/js/ui/flipcard.js +5 -1
  12. package/js/ui/grid.js +4 -0
  13. package/js/ui/modals.js +4 -1
  14. package/js/ui/overflow-scroller-pager.js +3 -0
  15. package/js/ui/overflow-scroller.js +4 -1
  16. package/js/ui/programmatic-modal.js +3 -0
  17. package/js/ui/resizer.js +3 -0
  18. package/js/ui/slider.js +7 -4
  19. package/js/ui/tabs.js +3 -0
  20. package/js/ui/tooltip.js +3 -0
  21. package/js/utils/logger.js +3 -0
  22. package/package.json +20 -11
  23. package/scss/_breakpoint.scss +3 -4
  24. package/scss/_button.scss +4 -4
  25. package/scss/_color.scss +2 -2
  26. package/scss/_grid.scss +0 -1
  27. package/scss/_layout.scss +2 -3
  28. package/scss/_typography.scss +2 -3
  29. package/scss/_utils.scss +21 -4
  30. package/scss/base/_normalize.scss +1 -1
  31. package/scss/helpers/_units.scss +7 -11
  32. package/scss/stylesheets/full.scss +1 -4
  33. package/js/polyfills/element-closest.js +0 -17
  34. package/js/utils/array.js +0 -28
  35. package/js/utils/dom.js +0 -122
  36. package/js/utils/object.js +0 -22
  37. package/js/utils/performance.js +0 -43
  38. package/js/utils/regex.js +0 -10
  39. package/js/utils/string.js +0 -107
  40. package/trash/js-old/deprecated/doc-ready.js +0 -28
  41. package/trash/js-old/deprecated/jquery-prototypes.js +0 -309
  42. package/trash/js-old/deprecated/mini-collapsible-popper-positioning.js +0 -126
  43. package/trash/js-old/deprecated/mini-collapsible.js +0 -607
  44. package/trash/js-old/deprecated/script-loader.js +0 -60
  45. package/trash/js-old/events/index.js +0 -42
  46. package/trash/js-old/helpers/css-breakpoint.js +0 -247
  47. package/trash/js-old/helpers/file-save.js +0 -48
  48. package/trash/js-old/helpers/node-data-manager.js +0 -74
  49. package/trash/js-old/helpers/pause-youtube-video.js +0 -42
  50. package/trash/js-old/index.js +0 -15
  51. package/trash/js-old/polyfills/element-closest.js +0 -17
  52. package/trash/js-old/ui/flipcard.js +0 -202
  53. package/trash/js-old/ui/grid.js +0 -67
  54. package/trash/js-old/ui/modals.js +0 -219
  55. package/trash/js-old/ui/programmatic-modal.js +0 -91
  56. package/trash/js-old/ui/resizer.js +0 -60
  57. package/trash/js-old/ui/slider.js +0 -469
  58. package/trash/js-old/ui/tabs.js +0 -109
  59. package/trash/js-old/ui/tooltip.js +0 -82
  60. package/trash/js-old/utils/array.js +0 -28
  61. package/trash/js-old/utils/dom.js +0 -122
  62. package/trash/js-old/utils/logger.js +0 -69
  63. package/trash/js-old/utils/object.js +0 -22
  64. package/trash/js-old/utils/performance.js +0 -43
  65. package/trash/js-old/utils/regex.js +0 -10
  66. package/trash/js-old/utils/string.js +0 -107
  67. package/trash/js-old/waypoints/README.md +0 -3
  68. package/trash/js-old/waypoints/anchor-menu.js +0 -76
  69. package/trash/js-old/waypoints/element-waypoint.js +0 -75
  70. package/trash/js-old/waypoints/examples/page-link-menu.md +0 -106
  71. package/trash/js-old/waypoints/state-in-attribute.js +0 -32
  72. package/trash/js-old-230729/deprecated/doc-ready.js +0 -28
  73. package/trash/js-old-230729/deprecated/jquery-prototypes.js +0 -309
  74. package/trash/js-old-230729/deprecated/mini-collapsible-popper-positioning.js +0 -126
  75. package/trash/js-old-230729/deprecated/mini-collapsible.js +0 -607
  76. package/trash/js-old-230729/deprecated/script-loader.js +0 -60
  77. package/trash/js-old-230729/events/index.js +0 -42
  78. package/trash/js-old-230729/helpers/css-breakpoint.js +0 -247
  79. package/trash/js-old-230729/helpers/file-save.js +0 -48
  80. package/trash/js-old-230729/helpers/node-data-manager.js +0 -74
  81. package/trash/js-old-230729/helpers/pause-youtube-video.js +0 -42
  82. package/trash/js-old-230729/helpers/scrollbar-width-property.js +0 -10
  83. package/trash/js-old-230729/index.js +0 -15
  84. package/trash/js-old-230729/polyfills/element-closest.js +0 -17
  85. package/trash/js-old-230729/ui/flipcard.js +0 -202
  86. package/trash/js-old-230729/ui/grid.js +0 -67
  87. package/trash/js-old-230729/ui/modals.js +0 -219
  88. package/trash/js-old-230729/ui/overflow-scroller-pager.js +0 -58
  89. package/trash/js-old-230729/ui/overflow-scroller.js +0 -160
  90. package/trash/js-old-230729/ui/programmatic-modal.js +0 -91
  91. package/trash/js-old-230729/ui/resizer.js +0 -60
  92. package/trash/js-old-230729/ui/slider.js +0 -468
  93. package/trash/js-old-230729/ui/tabs.js +0 -109
  94. package/trash/js-old-230729/ui/tooltip.js +0 -82
  95. package/trash/js-old-230729/utils/array.js +0 -28
  96. package/trash/js-old-230729/utils/dom.js +0 -122
  97. package/trash/js-old-230729/utils/logger.js +0 -69
  98. package/trash/js-old-230729/utils/object.js +0 -22
  99. package/trash/js-old-230729/utils/performance.js +0 -43
  100. package/trash/js-old-230729/utils/regex.js +0 -10
  101. package/trash/js-old-230729/utils/string.js +0 -107
  102. package/trash/js-old-230729/waypoints/README.md +0 -3
  103. package/trash/js-old-230729/waypoints/anchor-menu.js +0 -76
  104. package/trash/js-old-230729/waypoints/element-waypoint.js +0 -75
  105. package/trash/js-old-230729/waypoints/examples/page-link-menu.md +0 -106
  106. package/trash/js-old-230729/waypoints/state-in-attribute.js +0 -32
  107. package/trash/logo-1.svg +0 -13
  108. package/trash/logo.svg +0 -16
  109. package/trash/scss-before-cqc-update/README.md +0 -58
  110. package/trash/scss-before-cqc-update/_breakpoint.scss +0 -190
  111. package/trash/scss-before-cqc-update/_button.scss +0 -229
  112. package/trash/scss-before-cqc-update/_calculate.scss +0 -65
  113. package/trash/scss-before-cqc-update/_color.scss +0 -211
  114. package/trash/scss-before-cqc-update/_cssvar.scss +0 -116
  115. package/trash/scss-before-cqc-update/_element.scss +0 -275
  116. package/trash/scss-before-cqc-update/_index.scss +0 -29
  117. package/trash/scss-before-cqc-update/_layout.scss +0 -247
  118. package/trash/scss-before-cqc-update/_path.scss +0 -59
  119. package/trash/scss-before-cqc-update/_selector.scss +0 -82
  120. package/trash/scss-before-cqc-update/_typography.scss +0 -322
  121. package/trash/scss-before-cqc-update/_units.scss +0 -48
  122. package/trash/scss-before-cqc-update/_utility.scss +0 -13
  123. package/trash/scss-before-cqc-update/_utils.scss +0 -211
  124. package/trash/scss-before-cqc-update/base/_color.scss +0 -14
  125. package/trash/scss-before-cqc-update/base/_elements.scss +0 -189
  126. package/trash/scss-before-cqc-update/base/_index.scss +0 -63
  127. package/trash/scss-before-cqc-update/base/_keyframes.scss +0 -74
  128. package/trash/scss-before-cqc-update/base/_layout.scss +0 -88
  129. package/trash/scss-before-cqc-update/base/_normalize.scss +0 -316
  130. package/trash/scss-before-cqc-update/base/_typography.scss +0 -42
  131. package/trash/scss-before-cqc-update/components/README.md +0 -5
  132. package/trash/scss-before-cqc-update/components/README.todos +0 -15
  133. package/trash/scss-before-cqc-update/components/_button.scss +0 -96
  134. package/trash/scss-before-cqc-update/components/_grid.scss +0 -671
  135. package/trash/scss-before-cqc-update/components/_index.scss +0 -70
  136. package/trash/scss-before-cqc-update/components/_links.scss +0 -35
  137. package/trash/scss-before-cqc-update/components/_list-lines.scss +0 -74
  138. package/trash/scss-before-cqc-update/components/_list-ordered.scss +0 -17
  139. package/trash/scss-before-cqc-update/components/_list-unordered.scss +0 -22
  140. package/trash/scss-before-cqc-update/components/_rule.scss +0 -94
  141. package/trash/scss-before-cqc-update/helpers/_color.scss +0 -15
  142. package/trash/scss-before-cqc-update/helpers/_display.scss +0 -73
  143. package/trash/scss-before-cqc-update/helpers/_index.scss +0 -68
  144. package/trash/scss-before-cqc-update/helpers/_print.scss +0 -59
  145. package/trash/scss-before-cqc-update/helpers/_typography.scss +0 -73
  146. package/trash/scss-before-cqc-update/helpers/_units.scss +0 -79
  147. package/trash/scss-before-cqc-update/helpers/_utilities.scss +0 -88
  148. package/trash/scss-before-cqc-update/stylesheets/README.md +0 -3
  149. package/trash/scss-before-cqc-update/stylesheets/full.scss +0 -17
  150. package/trash/scss-old/README.md +0 -58
  151. package/trash/scss-old/_breakpoint.scss +0 -140
  152. package/trash/scss-old/_button.scss +0 -223
  153. package/trash/scss-old/_calculate.scss +0 -64
  154. package/trash/scss-old/_color.scss +0 -200
  155. package/trash/scss-old/_element.scss +0 -262
  156. package/trash/scss-old/_grid.scss +0 -558
  157. package/trash/scss-old/_index.scss +0 -25
  158. package/trash/scss-old/_layout.scss +0 -170
  159. package/trash/scss-old/_path.scss +0 -58
  160. package/trash/scss-old/_selector.scss +0 -81
  161. package/trash/scss-old/_typography.scss +0 -320
  162. package/trash/scss-old/_units.scss +0 -47
  163. package/trash/scss-old/_utility.scss +0 -12
  164. package/trash/scss-old/_utils.scss +0 -186
  165. package/trash/scss-old/base/_color.scss +0 -13
  166. package/trash/scss-old/base/_elements.scss +0 -183
  167. package/trash/scss-old/base/_index.scss +0 -62
  168. package/trash/scss-old/base/_keyframes.scss +0 -74
  169. package/trash/scss-old/base/_layout.scss +0 -81
  170. package/trash/scss-old/base/_normalize.scss +0 -316
  171. package/trash/scss-old/base/_typography.scss +0 -42
  172. package/trash/scss-old/components/README.md +0 -5
  173. package/trash/scss-old/components/README.todos +0 -15
  174. package/trash/scss-old/components/_button.scss +0 -74
  175. package/trash/scss-old/components/_index.scss +0 -63
  176. package/trash/scss-old/components/_links.scss +0 -34
  177. package/trash/scss-old/components/_list-lines.scss +0 -73
  178. package/trash/scss-old/components/_list-ordered.scss +0 -16
  179. package/trash/scss-old/components/_list-unordered.scss +0 -21
  180. package/trash/scss-old/components/_rule.scss +0 -84
  181. package/trash/scss-old/helpers/_color.scss +0 -14
  182. package/trash/scss-old/helpers/_display.scss +0 -68
  183. package/trash/scss-old/helpers/_index.scss +0 -67
  184. package/trash/scss-old/helpers/_print.scss +0 -59
  185. package/trash/scss-old/helpers/_typography.scss +0 -73
  186. package/trash/scss-old/helpers/_units.scss +0 -68
  187. package/trash/scss-old/helpers/_utilities.scss +0 -82
  188. package/trash/scss-old/packages/README.md +0 -3
  189. package/trash/scss-old/packages/everything.scss +0 -17
  190. package/trash/scss-old-2/README.md +0 -58
  191. package/trash/scss-old-2/_breakpoint.scss +0 -139
  192. package/trash/scss-old-2/_button.scss +0 -223
  193. package/trash/scss-old-2/_calculate.scss +0 -64
  194. package/trash/scss-old-2/_color.scss +0 -202
  195. package/trash/scss-old-2/_element.scss +0 -263
  196. package/trash/scss-old-2/_grid.scss +0 -558
  197. package/trash/scss-old-2/_index.scss +0 -25
  198. package/trash/scss-old-2/_layout.scss +0 -170
  199. package/trash/scss-old-2/_path.scss +0 -58
  200. package/trash/scss-old-2/_selector.scss +0 -81
  201. package/trash/scss-old-2/_typography.scss +0 -320
  202. package/trash/scss-old-2/_units.scss +0 -47
  203. package/trash/scss-old-2/_utility.scss +0 -12
  204. package/trash/scss-old-2/_utils.scss +0 -186
  205. package/trash/scss-old-2/base/_color.scss +0 -13
  206. package/trash/scss-old-2/base/_elements.scss +0 -182
  207. package/trash/scss-old-2/base/_index.scss +0 -62
  208. package/trash/scss-old-2/base/_keyframes.scss +0 -73
  209. package/trash/scss-old-2/base/_layout.scss +0 -83
  210. package/trash/scss-old-2/base/_normalize.scss +0 -315
  211. package/trash/scss-old-2/base/_typography.scss +0 -41
  212. package/trash/scss-old-2/components/README.md +0 -5
  213. package/trash/scss-old-2/components/README.todos +0 -15
  214. package/trash/scss-old-2/components/_button.scss +0 -95
  215. package/trash/scss-old-2/components/_index.scss +0 -63
  216. package/trash/scss-old-2/components/_links.scss +0 -33
  217. package/trash/scss-old-2/components/_list-lines.scss +0 -73
  218. package/trash/scss-old-2/components/_list-ordered.scss +0 -16
  219. package/trash/scss-old-2/components/_list-unordered.scss +0 -21
  220. package/trash/scss-old-2/components/_rule.scss +0 -84
  221. package/trash/scss-old-2/helpers/_color.scss +0 -14
  222. package/trash/scss-old-2/helpers/_display.scss +0 -67
  223. package/trash/scss-old-2/helpers/_index.scss +0 -67
  224. package/trash/scss-old-2/helpers/_print.scss +0 -58
  225. package/trash/scss-old-2/helpers/_typography.scss +0 -72
  226. package/trash/scss-old-2/helpers/_units.scss +0 -68
  227. package/trash/scss-old-2/helpers/_utilities.scss +0 -81
  228. package/trash/scss-old-2/packages/README.md +0 -3
  229. package/trash/scss-old-2/packages/everything.scss +0 -17
  230. package/trash/scss-old-230729/README.md +0 -58
  231. package/trash/scss-old-230729/_breakpoint.scss +0 -139
  232. package/trash/scss-old-230729/_button.scss +0 -223
  233. package/trash/scss-old-230729/_calculate.scss +0 -64
  234. package/trash/scss-old-230729/_color.scss +0 -202
  235. package/trash/scss-old-230729/_element.scss +0 -273
  236. package/trash/scss-old-230729/_grid.scss +0 -694
  237. package/trash/scss-old-230729/_index.scss +0 -25
  238. package/trash/scss-old-230729/_layout.scss +0 -193
  239. package/trash/scss-old-230729/_path.scss +0 -58
  240. package/trash/scss-old-230729/_selector.scss +0 -81
  241. package/trash/scss-old-230729/_typography.scss +0 -320
  242. package/trash/scss-old-230729/_units.scss +0 -47
  243. package/trash/scss-old-230729/_utility.scss +0 -12
  244. package/trash/scss-old-230729/_utils.scss +0 -186
  245. package/trash/scss-old-230729/base/_color.scss +0 -13
  246. package/trash/scss-old-230729/base/_elements.scss +0 -188
  247. package/trash/scss-old-230729/base/_index.scss +0 -62
  248. package/trash/scss-old-230729/base/_keyframes.scss +0 -73
  249. package/trash/scss-old-230729/base/_layout.scss +0 -83
  250. package/trash/scss-old-230729/base/_normalize.scss +0 -315
  251. package/trash/scss-old-230729/base/_typography.scss +0 -41
  252. package/trash/scss-old-230729/components/README.md +0 -5
  253. package/trash/scss-old-230729/components/README.todos +0 -15
  254. package/trash/scss-old-230729/components/_button.scss +0 -95
  255. package/trash/scss-old-230729/components/_index.scss +0 -63
  256. package/trash/scss-old-230729/components/_links.scss +0 -34
  257. package/trash/scss-old-230729/components/_list-lines.scss +0 -73
  258. package/trash/scss-old-230729/components/_list-ordered.scss +0 -16
  259. package/trash/scss-old-230729/components/_list-unordered.scss +0 -21
  260. package/trash/scss-old-230729/components/_rule.scss +0 -93
  261. package/trash/scss-old-230729/helpers/_color.scss +0 -14
  262. package/trash/scss-old-230729/helpers/_display.scss +0 -73
  263. package/trash/scss-old-230729/helpers/_index.scss +0 -67
  264. package/trash/scss-old-230729/helpers/_print.scss +0 -58
  265. package/trash/scss-old-230729/helpers/_typography.scss +0 -72
  266. package/trash/scss-old-230729/helpers/_units.scss +0 -68
  267. package/trash/scss-old-230729/helpers/_utilities.scss +0 -87
  268. package/trash/scss-old-230729/packages/README.md +0 -3
  269. package/trash/scss-old-230729/packages/everything.scss +0 -17
  270. package/trash/vue/directives/background-image-url.js +0 -12
  271. package/trash/vue/helpers/add-required-components.js +0 -14
  272. package/trash/vue/ui/CollapsibleRegion/CollapsibleRegion.vue +0 -277
  273. package/trash/vue/ui/CollapsibleRegion/Demo.vue +0 -101
  274. package/trash/vue/ui/Dropdown/Dropdown.vue +0 -184
  275. package/trash/vue/ui/Modals/components/Modal.vue +0 -49
  276. package/trash/vue/ui/Modals/components/Modals.vue +0 -103
  277. package/trash/vue/ui/Modals/plugin.js +0 -215
  278. package/trash/vue/ui/Modals/readme.note +0 -10
  279. package/trash/vue/ui/Modals/reference/example-usage.vue +0 -27
  280. package/trash/vue/ui/Modals/reference/wcag-example/dialog.js +0 -324
  281. /package/js/{waypoints → deprecated/waypoints}/README.md +0 -0
  282. /package/js/{waypoints → deprecated/waypoints}/anchor-menu.js +0 -0
  283. /package/js/{waypoints → deprecated/waypoints}/element-waypoint.js +0 -0
  284. /package/js/{waypoints → deprecated/waypoints}/examples/page-link-menu.md +0 -0
  285. /package/js/{waypoints → deprecated/waypoints}/state-in-attribute.js +0 -0
@@ -1,558 +0,0 @@
1
- ////
2
- /// @group grid
3
- ////
4
-
5
- /// @version: 1.0.3
6
-
7
- /// HTML Attribute to use for selecting
8
- /// @example markup
9
- /// <!-- This grid does not use columns to ovoid repeating prefixes like: -->
10
- /// <div class="grid-columuns-12 grid-columuns-12-gutters">
11
- /// <div class="col-4 col-medium-6 col-offset-medium-3">
12
- /// </div>
13
- /// </div>
14
- ///
15
- /// <!-- instead it styles like: -->
16
- /// <div data-grid="columns: 12, gutters: true">
17
- /// <div data-grid-item="width: 4, width-medium: 6, offset-medium: 3">
18
- /// </div>
19
- /// </div>
20
-
21
- @use "sass:map";
22
- @use "sass:math";
23
- @use "breakpoint";
24
- @use "color";
25
- @use "element";
26
- @use "layout";
27
- @use "utils";
28
-
29
- /// Module Settings
30
- /// @type Map
31
- /// @prop {Number} $config.columns Default for grid mixin
32
- /// @prop {String} $config.attribute Default attribute to use for grid mixin
33
- /// @prop {Number} $config.gutter Default gutter for grid mixin
34
- /// @prop {Map} $config.extra-breakpoints Default extra breakpoints for grid mixin
35
- /// @prop {MaStringp} $config.position-class-column-first Classname for position system (JS) grid uses to display rules (layout can flow, script will update classes)
36
- /// @prop {String} $config.position-class-column-last See definition above
37
- /// @prop {String} $config.position-class-row-first See definition above
38
- /// @prop {String} $config.position-class-row-last See definition above
39
-
40
- $config: (
41
- "columns": 12,
42
- "attribute": "data-grid",
43
- "gutter": 14px,
44
- "breakpoint" : null, // Fallback to default
45
- "extra-breakpoints" : (
46
- "medium" : (
47
- "breakpoint" : "medium",
48
- "gutter" : 15px
49
- ),
50
- "large" : (
51
- "breakpoint" : "large",
52
- "gutter" : 20px
53
- )
54
- ),
55
- "position-class-column-first": "position-column-first",
56
- "position-class-column-last": "position-column-last",
57
- "position-class-row-first": "position-row-first",
58
- "position-class-row-last": "position-row-last"
59
- ) !default;
60
-
61
- /// Change modules $config
62
- /// @param {Map} $changes Map of changes
63
- /// @include module-name.set(( "property" : value ));
64
- @mixin set($changes) {
65
- $config: map.merge($config, $changes) !global;
66
- }
67
-
68
- /// Get a config option
69
- /// @param {Map} $name Name of property
70
- /// @include module-name.get("property");
71
-
72
- @function get($name) {
73
- @return utils.require-map-get($config, $name, "grid [config]");
74
- }
75
-
76
- /// Returns gutter size for grid breakpoint map, defaults to the config's values
77
- /// Pass custom map to get gutter values from it
78
- /// @param {String} $name The name of the "grid breakpoint" (could be a different name than the actual breakpoint name it maps too)
79
- /// @param {Map} $custom-map Provide custom map of grid breakpoints to get the gutter from (defaults to the grid module's defaults 'extra-breakpoints')
80
-
81
- @function get-gutter($name: null, $custom-map: null) {
82
- @if (not $name) {
83
- @return get("gutter");
84
- } @else {
85
- $map: if($custom-map, $custom-map, get("extra-breakpoints"));
86
- $settings: utils.require-map-get($map, $name, "grid [get-gutter]");
87
- @return map.get($settings, "gutter");
88
- }
89
- }
90
-
91
- /// Creates grid css (variation of original data-grid)
92
- /// @param {Number} $columns Columns in grid
93
- /// @param {Number} $breakpoint Breakpoint key for starting the grid
94
- /// @param {Map} $extra-breakpoints Map with other breakpoints to add (map of breakpoint and gutter see config.extra-breakpoints for an example (smalles to largest)
95
- /// @param {Number} $gutter Size in pixels for the gutters
96
- /// @param {Boolean} $include-rules Print styles for including rules
97
- /// @param {Number} $rule-size Size of the rule (border/seperator)
98
- /// @param {Map} $extra-rule-styles Map of other rule styles to add (map of maps of size, and color), key is the styles name ("name": ("size" : 4px, "color" : "color name" || color))
99
- /// @param {String} $attribute Attribute to use for selecting grid and children. Children attribute get's "-item" as a suffix ("ie. data-grid, data-grid-item")
100
-
101
- @mixin create(
102
- $columns: 12,
103
- $breakpoint: if(get("breakpoint"), get("breakpoint"), breakpoint.get("default")),
104
- $extra-breakpoints: if(breakpoint.exists("large"), get("extra-breakpoints"), false),
105
- $gutter: get("gutter"),
106
- $include-rules: false,
107
- $rule-size: 1px,
108
- $rule-color: color.get("rule"),
109
- $extra-rule-styles: null,
110
- $attribute: get("attribute")
111
- ) {
112
- $attribute-item: "#{ $attribute }-item";
113
- $select-grid: '[#{ $attribute }*="columns: #{ $columns }"]';
114
- $select-item: '[#{ $attribute-item }]';
115
- $select-rule-col: ":before";
116
- $select-rule-row: ":after";
117
- // These through off syntax highlighting when inside interpolation
118
- $position-class-column-first: get("position-class-column-first");
119
- $position-class-column-last: get("position-class-column-last");
120
- $position-class-row-first: get("position-class-row-first");
121
- $position-class-row-last: get("position-class-row-last");
122
-
123
- #{ $select-grid } {
124
- @include layout.clearfix(); // For legacy browsers
125
-
126
- // Ensure empty elements still take up space in layout
127
- > #{ $select-item } {
128
- min-height: 1px;
129
- width: 100%;
130
- }
131
- // This is for value of true and also covers all options below
132
- &#{'[#{ $attribute }*="gutters-row:"]'} {
133
- > #{ $select-item } {
134
- padding-top: $gutter;
135
- padding-bottom: $gutter;
136
- }
137
- }
138
- &#{'[#{ $attribute }*="gutters-row: top"]'} {
139
- > #{ $select-item } {
140
- &.#{ $position-class-row-last } {
141
- padding-bottom: 0;
142
- }
143
- }
144
- }
145
- &#{'[#{ $attribute }*="gutters-row: bottom"]'} {
146
- > #{ $select-item } {
147
- &.#{ $position-class-row-first } {
148
- padding-top: 0;
149
- }
150
- }
151
- }
152
- &#{'[#{ $attribute }*="gutters-row: fit"]'} {
153
- margin-top: -$gutter;
154
- margin-bottom: -$gutter;
155
- }
156
- // Rules: Row
157
- &#{'[#{ $attribute }*="rules-row:"]'} {
158
- > #{ $select-item } {
159
- &#{ $select-rule-row } {
160
- position: absolute;
161
- left: 0;
162
- right: 0;
163
- height: $rule-size;
164
- background: color.get($rule-color);
165
- }
166
- }
167
- }
168
- // Rules: Applies to both column and row
169
- &#{'[#{ $attribute }*="rules"]'} {
170
- > #{ $select-item } {
171
- position: relative;
172
- }
173
- }
174
- // Rules: Column
175
- &#{'[#{ $attribute }*="rules-column:"]'} {
176
- > #{ $select-item } {
177
- &#{ $select-rule-col } {
178
- position: absolute;
179
- top: 0;
180
- bottom: 0;
181
- width: $rule-size;
182
- background: color.get($rule-color);
183
- }
184
- }
185
- }
186
- // Options for the left or right
187
- @include -create-rule-col-position(
188
- $position: "left",
189
- $size: $rule-size,
190
- $attribute: $attribute,
191
- $select-item: $select-item,
192
- $select-rule-col: $select-rule-col,
193
- $end-class: $position-class-column-first
194
- );
195
- @include -create-rule-col-position(
196
- $position: "right",
197
- $size: $rule-size,
198
- $attribute: $attribute,
199
- $select-item: $select-item,
200
- $select-rule-col: $select-rule-col,
201
- $end-class: $position-class-column-last
202
- );
203
- // Override first or last column removing the rule using matching specificity
204
- &#{'[#{ $attribute }*="rules-column:"][#{ $attribute }*="rules-column-ends: true"]'} {
205
- > #{ $select-item } {
206
- &#{ $select-rule-col } {
207
- content: '';
208
- }
209
- }
210
- }
211
- &#{'[#{ $attribute }*="rules-column-align: gutter"]'} {
212
- > #{ $select-item } {
213
- &#{ $select-rule-col } {
214
- top: $gutter;
215
- bottom: $gutter;
216
- }
217
- }
218
- }
219
- // Options for the left or right
220
- @include -create-rule-row-position(
221
- $position: "top",
222
- $size: $rule-size,
223
- $attribute: $attribute,
224
- $select-item: $select-item,
225
- $select-rule-row: $select-rule-row,
226
- $between: false
227
- );
228
- @include -create-rule-row-position(
229
- $position: "bottom",
230
- $size: $rule-size,
231
- $attribute: $attribute,
232
- $select-item: $select-item,
233
- $select-rule-row: $select-rule-row,
234
- $between: false
235
- );
236
-
237
- &#{'[#{ $attribute }*="rules-row: between"]'} {
238
- > #{ $select-item } {
239
- &#{ $select-rule-row } {
240
- bottom: math.floor(math.div($rule-size, 2)) * -1;
241
- }
242
- // For removing the rule per row (via equal heights for now)
243
- &.#{ $position-class-row-last } {
244
- &#{ $select-rule-row } {
245
- content: none;
246
- }
247
- }
248
- }
249
- }
250
- &#{'[#{ $attribute }*="rules-row-align: gutter"]'} {
251
- > #{ $select-item } {
252
- &#{ $select-rule-row } {
253
- @include breakpoint.min($breakpoint) {
254
- left: $gutter;
255
- right: $gutter;
256
- }
257
- }
258
- }
259
- }
260
- &#{'[#{ $attribute }*="rules-row-persist: true"]'},
261
- &#{'[#{ $attribute }*="rules-row-stacked-only: true"]'} {
262
- > #{ $select-item } {
263
- &#{ $select-rule-row } {
264
- content: '';
265
- }
266
- }
267
- }
268
- // IE for mobile/small (non grid / stacked)
269
- &#{'[#{ $attribute }*="rules-row-stacked-only: true"]'} {
270
- > #{ $select-item } {
271
- &#{ $select-rule-row } {
272
- @include breakpoint.min($breakpoint) {
273
- content: none !important;
274
- }
275
- }
276
- }
277
- }
278
- }
279
-
280
- @include breakpoint.min($breakpoint) {
281
- // Select the attribute with matching column count
282
- #{ $select-grid } {
283
- // Defaults for grid an item
284
- display: flex;
285
- flex-flow: row wrap;
286
- align-items: stretch;
287
- margin-left: -$gutter;
288
- margin-right: -$gutter;
289
-
290
- > #{ $select-item } {
291
- float: left; // Fallback
292
- padding-left: $gutter;
293
- padding-right: $gutter;
294
- }
295
- // Alignment options
296
- &#{'[#{ $attribute }*="justify: center"]'} {
297
- justify-content: center;
298
- }
299
- &#{'[#{ $attribute }*="justify: end"]'} {
300
- justify-content: flex-end;
301
- }
302
- &#{'[#{ $attribute }*="align: center"]'} {
303
- align-items: center;
304
- }
305
- &#{'[#{ $attribute }*="align: end"]'} {
306
- align-items: flex-end;
307
- }
308
- &#{'[#{ $attribute }*="align: start"]'} {
309
- align-items: flex-start;
310
- }
311
- // Alignment of the children when using stretch
312
- // - There is no stetch-start (that's defualt);
313
- // - There is no stetch-middle (that's covered by stretch-);
314
- &#{'[#{ $attribute }*="align: stretch-"]'} {
315
- // set the child to display as a single flex item
316
- > #{ $select-item } {
317
- display: flex;
318
- flex-direction: column;
319
- justify-content: center;
320
- }
321
- }
322
- &#{'[#{ $attribute }*="align: stretch-end"]'} {
323
- > #{ $select-item } {
324
- justify-content: flex-end;
325
- }
326
- }
327
- // Other options
328
- &#{'[#{ $attribute }*="gutters: false"]'} {
329
- margin-left: 0;
330
- margin-right: 0;
331
- > #{ $select-item } {
332
- padding-left: 0;
333
- padding-right: 0;
334
- }
335
- }
336
- // Activate Rules
337
- &#{'[#{ $attribute }*="rules-column:"]'} {
338
- > #{ $select-item } {
339
- &#{ $select-rule-col } {
340
- content: '';
341
- }
342
- }
343
- }
344
- &#{'[#{ $attribute }*="rules-row:"]'} {
345
- > #{ $select-item } {
346
- &#{ $select-rule-row } {
347
- content: '';
348
- }
349
- }
350
- }
351
- // Generated props for item
352
- @include -create-column-widths(
353
- $columns: $columns,
354
- $attribute-item: $attribute-item,
355
- $suffix: ''
356
- );
357
- @include -create-column-offsets(
358
- $columns: $columns,
359
- $attribute-item: $attribute-item,
360
- $suffix: ''
361
- );
362
- }
363
- }
364
-
365
- @if $extra-breakpoints {
366
- @each $name, $options in $extra-breakpoints {
367
- $g: map.get($options, "gutter");
368
- @include -create-extra-breakpoint(
369
- $name: $name,
370
- $breakpoint: map.get($options, "breakpoint"),
371
- $gutter: if($g, $g, $gutter),
372
- $columns: $columns,
373
- $attribute-item: $attribute-item,
374
- $select-grid: $select-grid,
375
- $select-item: $select-item
376
- );
377
- }
378
- }
379
- @if $extra-rule-styles {
380
- @each $name, $options in $extra-rule-styles {
381
- $color: utils.require-map-get($options, "color", "grid [extra rule style]");
382
- $size: utils.require-map-get($options, "size", "grid [extra rule style]");
383
- #{ $select-grid } {
384
-
385
- &#{'[#{_attr}*="rules-column-style: #{ $name }"]'} {
386
- > #{ $select-item } {
387
- &#{ $select-rule-col } {
388
- background-color: color.get($color);
389
- width: $size;
390
- }
391
- }
392
- @include -create-rule-col-position(
393
- $position: "left",
394
- $size: $size,
395
- $attribute: $attribute,
396
- $select-item: $select-item,
397
- $select-rule-col: $select-rule-col,
398
- $end-class: false
399
- );
400
- @include -create-rule-col-position(
401
- $position: "right",
402
- $size: $size,
403
- $attribute: $attribute,
404
- $select-item: $select-item,
405
- $select-rule-col: $select-rule-col,
406
- $end-class: false
407
- );
408
- }
409
- &#{'[#{_attr}*="rules-row-style: #{ $name }"]'} {
410
- > #{ $select-item } {
411
- &#{ $select-rule-row } {
412
- background-color: $color;
413
- height: $size;
414
- }
415
- }
416
- @include -create-rule-row-position(
417
- $position: "top",
418
- $size: $size,
419
- $attribute: $attribute,
420
- $select-item: $select-item,
421
- $select-rule-row: $select-rule-row,
422
- $between: false
423
- );
424
- @include -create-rule-row-position(
425
- $position: "bottom",
426
- $size: $size,
427
- $attribute: $attribute,
428
- $select-item: $select-item,
429
- $select-rule-row: $select-rule-row,
430
- $between: false
431
- );
432
- @include -create-rule-row-position(
433
- $position: "bottom",
434
- $size: $size,
435
- $attribute: $attribute,
436
- $select-item: $select-item,
437
- $select-rule-row: $select-rule-row,
438
- $between: true
439
- );
440
- }
441
- }
442
- }
443
- }
444
- }
445
-
446
- @mixin -create-extra-breakpoint(
447
- $name,
448
- $breakpoint,
449
- $gutter,
450
- $columns,
451
- $attribute-item,
452
- $select-grid,
453
- $select-item
454
- ) {
455
- @include breakpoint.min($breakpoint) {
456
-
457
- #{ $select-grid } {
458
- margin-left: -$gutter;
459
- margin-right: -$gutter;
460
-
461
- > #{ $select-item } {
462
- padding-left: $gutter;
463
- padding-right: $gutter;
464
- }
465
-
466
- @include -create-column-widths(
467
- $columns: $columns,
468
- $attribute-item: $attribute-item,
469
- $suffix: "-#{ $name }"
470
- );
471
- @include -create-column-offsets(
472
- $columns: $columns,
473
- $attribute-item: $attribute-item,
474
- $suffix: "-#{ $name }"
475
- );
476
- }
477
- }
478
- }
479
-
480
- @mixin -create-column-widths(
481
- $columns,
482
- $attribute-item,
483
- $suffix: ''
484
- ) {
485
- $column-width: math.div(100%, $columns);
486
-
487
- @for $i from 1 through $columns {
488
- $width: $column-width * $i;
489
- & > #{'[#{ $attribute-item }*="width#{ $suffix }: #{ $i }"]'} {
490
- width: $width;
491
- flex-basis: $width;
492
- max-width: $width;
493
- }
494
- }
495
- }
496
-
497
- @mixin -create-column-offsets(
498
- $columns,
499
- $attribute-item,
500
- $suffix: ''
501
- ) {
502
- $column-width: math.div(100%, $columns);
503
-
504
- @for $i from 1 through $columns {
505
- & > #{'[#{ $attribute-item }*="offset#{ $suffix }: #{ $i }"]'} {
506
- margin-left: $column-width * $i;
507
- }
508
- }
509
- // For Zero (in case using breakpoints to remove)
510
- & > #{'[#{ $attribute-item }*="offset#{ $suffix }: 0"]'} {
511
- margin-left: 0;
512
- }
513
- }
514
-
515
- @mixin -create-rule-col-position(
516
- $position,
517
- $size,
518
- $attribute,
519
- $select-item,
520
- $select-rule-col,
521
- $end-class: false
522
- ) {
523
- &#{'[#{ $attribute }*="rules-column: #{ $position }"]'} {
524
- > #{ $select-item } {
525
- &#{ $select-rule-col } {
526
- #{$position}: math.floor(math.div($size, 2)) * -1;
527
- }
528
- // For removing the rule per row (via equal heights for now)
529
- @if $end-class {
530
- &.#{ $end-class } {
531
- &#{ $select-rule-col } {
532
- content: none;
533
- }
534
- }
535
- }
536
- }
537
- }
538
- }
539
-
540
- @mixin -create-rule-row-position(
541
- $position,
542
- $size,
543
- $attribute,
544
- $select-item,
545
- $select-rule-row,
546
- $between: false
547
- ) {
548
- $key: if($between, 'between', $position);
549
-
550
- &#{'[#{ $attribute }*="rules-row: #{ $key }"]'} {
551
- > #{ $select-item } {
552
- &#{ $select-rule-row } {
553
- content: $size;
554
- #{ $position }: math.floor(math.div($size, 2)) * -1;
555
- }
556
- }
557
- }
558
- }
@@ -1,25 +0,0 @@
1
- /// Main entry for library as single module use
2
- /// - All modules get namespaced
3
- /// @example scss - Example of color modules
4
- /// // Namespaced
5
- /// ulu.color-get();
6
- /// // Versus
7
- /// color.get();
8
- ///
9
-
10
- @forward "path" as path-*;
11
- @forward "color" as color-*;
12
- @forward "units" as units-*;
13
- @forward "calculate" as calculate-*;
14
- @forward "breakpoint" as breakpoint-*;
15
- @forward "selector" as selector-*;
16
- @forward "element" as element-*;
17
- @forward "typography" as typography-*;
18
- @forward "button" as button-*;
19
- @forward "utility" as utility-*;
20
- @forward "layout" as layout-*;
21
- @forward "grid" as grid-*;
22
- @forward "base" as base-*;
23
- @forward "components" as component-*;
24
- @forward "helpers" as helper-*;
25
- @forward "utils" as utils-*;