@ulu/frontend 0.0.3
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.
- package/LICENSE +21 -0
- package/README.md +9 -0
- package/dist/ulu-frontend.min.css +1 -0
- package/dist/ulu-frontend.min.js +1 -0
- package/index.js +2 -0
- package/js/deprecated/doc-ready.js +28 -0
- package/js/deprecated/jquery-prototypes.js +309 -0
- package/js/deprecated/mini-collapsible-popper-positioning.js +126 -0
- package/js/deprecated/mini-collapsible.js +607 -0
- package/js/deprecated/script-loader.js +60 -0
- package/js/events/index.js +42 -0
- package/js/helpers/css-breakpoint.js +247 -0
- package/js/helpers/file-save.js +48 -0
- package/js/helpers/node-data-manager.js +74 -0
- package/js/helpers/pause-youtube-video.js +42 -0
- package/js/helpers/scrollbar-width-property.js +10 -0
- package/js/index.js +15 -0
- package/js/polyfills/element-closest.js +17 -0
- package/js/ui/flipcard.js +202 -0
- package/js/ui/grid.js +67 -0
- package/js/ui/modals.js +219 -0
- package/js/ui/overflow-scroller-pager.js +58 -0
- package/js/ui/overflow-scroller.js +160 -0
- package/js/ui/programmatic-modal.js +91 -0
- package/js/ui/resizer.js +60 -0
- package/js/ui/slider.js +468 -0
- package/js/ui/tabs.js +109 -0
- package/js/ui/tooltip.js +82 -0
- package/js/utils/array.js +28 -0
- package/js/utils/dom.js +122 -0
- package/js/utils/logger.js +69 -0
- package/js/utils/object.js +22 -0
- package/js/utils/performance.js +43 -0
- package/js/utils/regex.js +10 -0
- package/js/utils/string.js +107 -0
- package/js/waypoints/README.md +3 -0
- package/js/waypoints/anchor-menu.js +76 -0
- package/js/waypoints/element-waypoint.js +75 -0
- package/js/waypoints/examples/page-link-menu.md +106 -0
- package/js/waypoints/state-in-attribute.js +32 -0
- package/package.json +38 -0
- package/scss/README.md +58 -0
- package/scss/_breakpoint.scss +190 -0
- package/scss/_button.scss +241 -0
- package/scss/_calculate.scss +64 -0
- package/scss/_color.scss +211 -0
- package/scss/_cssvar.scss +116 -0
- package/scss/_element.scss +276 -0
- package/scss/_grid.scss +699 -0
- package/scss/_index.scss +29 -0
- package/scss/_layout.scss +202 -0
- package/scss/_path.scss +58 -0
- package/scss/_selector.scss +81 -0
- package/scss/_typography.scss +320 -0
- package/scss/_units.scss +47 -0
- package/scss/_utility.scss +12 -0
- package/scss/_utils.scss +209 -0
- package/scss/base/_color.scss +13 -0
- package/scss/base/_elements.scss +188 -0
- package/scss/base/_index.scss +62 -0
- package/scss/base/_keyframes.scss +78 -0
- package/scss/base/_layout.scss +100 -0
- package/scss/base/_normalize.scss +315 -0
- package/scss/base/_typography.scss +41 -0
- package/scss/components/README.md +5 -0
- package/scss/components/README.todos +15 -0
- package/scss/components/_button.scss +95 -0
- package/scss/components/_index.scss +63 -0
- package/scss/components/_links.scss +34 -0
- package/scss/components/_list-lines.scss +73 -0
- package/scss/components/_list-ordered.scss +16 -0
- package/scss/components/_list-unordered.scss +21 -0
- package/scss/components/_rule.scss +93 -0
- package/scss/helpers/_color.scss +14 -0
- package/scss/helpers/_display.scss +73 -0
- package/scss/helpers/_index.scss +67 -0
- package/scss/helpers/_print.scss +58 -0
- package/scss/helpers/_typography.scss +80 -0
- package/scss/helpers/_units.scss +79 -0
- package/scss/helpers/_utilities.scss +102 -0
- package/scss/stylesheets/README.md +3 -0
- package/scss/stylesheets/full.scss +17 -0
- package/trash/js-old/deprecated/doc-ready.js +28 -0
- package/trash/js-old/deprecated/jquery-prototypes.js +309 -0
- package/trash/js-old/deprecated/mini-collapsible-popper-positioning.js +126 -0
- package/trash/js-old/deprecated/mini-collapsible.js +607 -0
- package/trash/js-old/deprecated/script-loader.js +60 -0
- package/trash/js-old/events/index.js +42 -0
- package/trash/js-old/helpers/css-breakpoint.js +247 -0
- package/trash/js-old/helpers/file-save.js +48 -0
- package/trash/js-old/helpers/node-data-manager.js +74 -0
- package/trash/js-old/helpers/pause-youtube-video.js +42 -0
- package/trash/js-old/index.js +15 -0
- package/trash/js-old/polyfills/element-closest.js +17 -0
- package/trash/js-old/ui/flipcard.js +202 -0
- package/trash/js-old/ui/grid.js +67 -0
- package/trash/js-old/ui/modals.js +219 -0
- package/trash/js-old/ui/programmatic-modal.js +91 -0
- package/trash/js-old/ui/resizer.js +60 -0
- package/trash/js-old/ui/slider.js +469 -0
- package/trash/js-old/ui/tabs.js +109 -0
- package/trash/js-old/ui/tooltip.js +82 -0
- package/trash/js-old/utils/array.js +28 -0
- package/trash/js-old/utils/dom.js +122 -0
- package/trash/js-old/utils/logger.js +69 -0
- package/trash/js-old/utils/object.js +22 -0
- package/trash/js-old/utils/performance.js +43 -0
- package/trash/js-old/utils/regex.js +10 -0
- package/trash/js-old/utils/string.js +107 -0
- package/trash/js-old/waypoints/README.md +3 -0
- package/trash/js-old/waypoints/anchor-menu.js +76 -0
- package/trash/js-old/waypoints/element-waypoint.js +75 -0
- package/trash/js-old/waypoints/examples/page-link-menu.md +106 -0
- package/trash/js-old/waypoints/state-in-attribute.js +32 -0
- package/trash/js-old-230729/deprecated/doc-ready.js +28 -0
- package/trash/js-old-230729/deprecated/jquery-prototypes.js +309 -0
- package/trash/js-old-230729/deprecated/mini-collapsible-popper-positioning.js +126 -0
- package/trash/js-old-230729/deprecated/mini-collapsible.js +607 -0
- package/trash/js-old-230729/deprecated/script-loader.js +60 -0
- package/trash/js-old-230729/events/index.js +42 -0
- package/trash/js-old-230729/helpers/css-breakpoint.js +247 -0
- package/trash/js-old-230729/helpers/file-save.js +48 -0
- package/trash/js-old-230729/helpers/node-data-manager.js +74 -0
- package/trash/js-old-230729/helpers/pause-youtube-video.js +42 -0
- package/trash/js-old-230729/helpers/scrollbar-width-property.js +10 -0
- package/trash/js-old-230729/index.js +15 -0
- package/trash/js-old-230729/polyfills/element-closest.js +17 -0
- package/trash/js-old-230729/ui/flipcard.js +202 -0
- package/trash/js-old-230729/ui/grid.js +67 -0
- package/trash/js-old-230729/ui/modals.js +219 -0
- package/trash/js-old-230729/ui/overflow-scroller-pager.js +58 -0
- package/trash/js-old-230729/ui/overflow-scroller.js +160 -0
- package/trash/js-old-230729/ui/programmatic-modal.js +91 -0
- package/trash/js-old-230729/ui/resizer.js +60 -0
- package/trash/js-old-230729/ui/slider.js +468 -0
- package/trash/js-old-230729/ui/tabs.js +109 -0
- package/trash/js-old-230729/ui/tooltip.js +82 -0
- package/trash/js-old-230729/utils/array.js +28 -0
- package/trash/js-old-230729/utils/dom.js +122 -0
- package/trash/js-old-230729/utils/logger.js +69 -0
- package/trash/js-old-230729/utils/object.js +22 -0
- package/trash/js-old-230729/utils/performance.js +43 -0
- package/trash/js-old-230729/utils/regex.js +10 -0
- package/trash/js-old-230729/utils/string.js +107 -0
- package/trash/js-old-230729/waypoints/README.md +3 -0
- package/trash/js-old-230729/waypoints/anchor-menu.js +76 -0
- package/trash/js-old-230729/waypoints/element-waypoint.js +75 -0
- package/trash/js-old-230729/waypoints/examples/page-link-menu.md +106 -0
- package/trash/js-old-230729/waypoints/state-in-attribute.js +32 -0
- package/trash/logo-1.svg +13 -0
- package/trash/logo.svg +16 -0
- package/trash/scss-before-cqc-update/README.md +58 -0
- package/trash/scss-before-cqc-update/_breakpoint.scss +190 -0
- package/trash/scss-before-cqc-update/_button.scss +229 -0
- package/trash/scss-before-cqc-update/_calculate.scss +65 -0
- package/trash/scss-before-cqc-update/_color.scss +211 -0
- package/trash/scss-before-cqc-update/_cssvar.scss +116 -0
- package/trash/scss-before-cqc-update/_element.scss +275 -0
- package/trash/scss-before-cqc-update/_index.scss +29 -0
- package/trash/scss-before-cqc-update/_layout.scss +247 -0
- package/trash/scss-before-cqc-update/_path.scss +59 -0
- package/trash/scss-before-cqc-update/_selector.scss +82 -0
- package/trash/scss-before-cqc-update/_typography.scss +322 -0
- package/trash/scss-before-cqc-update/_units.scss +48 -0
- package/trash/scss-before-cqc-update/_utility.scss +13 -0
- package/trash/scss-before-cqc-update/_utils.scss +211 -0
- package/trash/scss-before-cqc-update/base/_color.scss +14 -0
- package/trash/scss-before-cqc-update/base/_elements.scss +189 -0
- package/trash/scss-before-cqc-update/base/_index.scss +63 -0
- package/trash/scss-before-cqc-update/base/_keyframes.scss +74 -0
- package/trash/scss-before-cqc-update/base/_layout.scss +88 -0
- package/trash/scss-before-cqc-update/base/_normalize.scss +316 -0
- package/trash/scss-before-cqc-update/base/_typography.scss +42 -0
- package/trash/scss-before-cqc-update/components/README.md +5 -0
- package/trash/scss-before-cqc-update/components/README.todos +15 -0
- package/trash/scss-before-cqc-update/components/_button.scss +96 -0
- package/trash/scss-before-cqc-update/components/_grid.scss +671 -0
- package/trash/scss-before-cqc-update/components/_index.scss +70 -0
- package/trash/scss-before-cqc-update/components/_links.scss +35 -0
- package/trash/scss-before-cqc-update/components/_list-lines.scss +74 -0
- package/trash/scss-before-cqc-update/components/_list-ordered.scss +17 -0
- package/trash/scss-before-cqc-update/components/_list-unordered.scss +22 -0
- package/trash/scss-before-cqc-update/components/_rule.scss +94 -0
- package/trash/scss-before-cqc-update/helpers/_color.scss +15 -0
- package/trash/scss-before-cqc-update/helpers/_display.scss +73 -0
- package/trash/scss-before-cqc-update/helpers/_index.scss +68 -0
- package/trash/scss-before-cqc-update/helpers/_print.scss +59 -0
- package/trash/scss-before-cqc-update/helpers/_typography.scss +73 -0
- package/trash/scss-before-cqc-update/helpers/_units.scss +79 -0
- package/trash/scss-before-cqc-update/helpers/_utilities.scss +88 -0
- package/trash/scss-before-cqc-update/stylesheets/README.md +3 -0
- package/trash/scss-before-cqc-update/stylesheets/full.scss +17 -0
- package/trash/scss-old/README.md +58 -0
- package/trash/scss-old/_breakpoint.scss +140 -0
- package/trash/scss-old/_button.scss +223 -0
- package/trash/scss-old/_calculate.scss +64 -0
- package/trash/scss-old/_color.scss +200 -0
- package/trash/scss-old/_element.scss +262 -0
- package/trash/scss-old/_grid.scss +558 -0
- package/trash/scss-old/_index.scss +25 -0
- package/trash/scss-old/_layout.scss +170 -0
- package/trash/scss-old/_path.scss +58 -0
- package/trash/scss-old/_selector.scss +81 -0
- package/trash/scss-old/_typography.scss +320 -0
- package/trash/scss-old/_units.scss +47 -0
- package/trash/scss-old/_utility.scss +12 -0
- package/trash/scss-old/_utils.scss +186 -0
- package/trash/scss-old/base/_color.scss +13 -0
- package/trash/scss-old/base/_elements.scss +183 -0
- package/trash/scss-old/base/_index.scss +62 -0
- package/trash/scss-old/base/_keyframes.scss +74 -0
- package/trash/scss-old/base/_layout.scss +81 -0
- package/trash/scss-old/base/_normalize.scss +316 -0
- package/trash/scss-old/base/_typography.scss +42 -0
- package/trash/scss-old/components/README.md +5 -0
- package/trash/scss-old/components/README.todos +15 -0
- package/trash/scss-old/components/_button.scss +74 -0
- package/trash/scss-old/components/_index.scss +63 -0
- package/trash/scss-old/components/_links.scss +34 -0
- package/trash/scss-old/components/_list-lines.scss +73 -0
- package/trash/scss-old/components/_list-ordered.scss +16 -0
- package/trash/scss-old/components/_list-unordered.scss +21 -0
- package/trash/scss-old/components/_rule.scss +84 -0
- package/trash/scss-old/helpers/_color.scss +14 -0
- package/trash/scss-old/helpers/_display.scss +68 -0
- package/trash/scss-old/helpers/_index.scss +67 -0
- package/trash/scss-old/helpers/_print.scss +59 -0
- package/trash/scss-old/helpers/_typography.scss +73 -0
- package/trash/scss-old/helpers/_units.scss +68 -0
- package/trash/scss-old/helpers/_utilities.scss +82 -0
- package/trash/scss-old/packages/README.md +3 -0
- package/trash/scss-old/packages/everything.scss +17 -0
- package/trash/scss-old-2/README.md +58 -0
- package/trash/scss-old-2/_breakpoint.scss +139 -0
- package/trash/scss-old-2/_button.scss +223 -0
- package/trash/scss-old-2/_calculate.scss +64 -0
- package/trash/scss-old-2/_color.scss +202 -0
- package/trash/scss-old-2/_element.scss +263 -0
- package/trash/scss-old-2/_grid.scss +558 -0
- package/trash/scss-old-2/_index.scss +25 -0
- package/trash/scss-old-2/_layout.scss +170 -0
- package/trash/scss-old-2/_path.scss +58 -0
- package/trash/scss-old-2/_selector.scss +81 -0
- package/trash/scss-old-2/_typography.scss +320 -0
- package/trash/scss-old-2/_units.scss +47 -0
- package/trash/scss-old-2/_utility.scss +12 -0
- package/trash/scss-old-2/_utils.scss +186 -0
- package/trash/scss-old-2/base/_color.scss +13 -0
- package/trash/scss-old-2/base/_elements.scss +182 -0
- package/trash/scss-old-2/base/_index.scss +62 -0
- package/trash/scss-old-2/base/_keyframes.scss +73 -0
- package/trash/scss-old-2/base/_layout.scss +83 -0
- package/trash/scss-old-2/base/_normalize.scss +315 -0
- package/trash/scss-old-2/base/_typography.scss +41 -0
- package/trash/scss-old-2/components/README.md +5 -0
- package/trash/scss-old-2/components/README.todos +15 -0
- package/trash/scss-old-2/components/_button.scss +95 -0
- package/trash/scss-old-2/components/_index.scss +63 -0
- package/trash/scss-old-2/components/_links.scss +33 -0
- package/trash/scss-old-2/components/_list-lines.scss +73 -0
- package/trash/scss-old-2/components/_list-ordered.scss +16 -0
- package/trash/scss-old-2/components/_list-unordered.scss +21 -0
- package/trash/scss-old-2/components/_rule.scss +84 -0
- package/trash/scss-old-2/helpers/_color.scss +14 -0
- package/trash/scss-old-2/helpers/_display.scss +67 -0
- package/trash/scss-old-2/helpers/_index.scss +67 -0
- package/trash/scss-old-2/helpers/_print.scss +58 -0
- package/trash/scss-old-2/helpers/_typography.scss +72 -0
- package/trash/scss-old-2/helpers/_units.scss +68 -0
- package/trash/scss-old-2/helpers/_utilities.scss +81 -0
- package/trash/scss-old-2/packages/README.md +3 -0
- package/trash/scss-old-2/packages/everything.scss +17 -0
- package/trash/scss-old-230729/README.md +58 -0
- package/trash/scss-old-230729/_breakpoint.scss +139 -0
- package/trash/scss-old-230729/_button.scss +223 -0
- package/trash/scss-old-230729/_calculate.scss +64 -0
- package/trash/scss-old-230729/_color.scss +202 -0
- package/trash/scss-old-230729/_element.scss +273 -0
- package/trash/scss-old-230729/_grid.scss +694 -0
- package/trash/scss-old-230729/_index.scss +25 -0
- package/trash/scss-old-230729/_layout.scss +193 -0
- package/trash/scss-old-230729/_path.scss +58 -0
- package/trash/scss-old-230729/_selector.scss +81 -0
- package/trash/scss-old-230729/_typography.scss +320 -0
- package/trash/scss-old-230729/_units.scss +47 -0
- package/trash/scss-old-230729/_utility.scss +12 -0
- package/trash/scss-old-230729/_utils.scss +186 -0
- package/trash/scss-old-230729/base/_color.scss +13 -0
- package/trash/scss-old-230729/base/_elements.scss +188 -0
- package/trash/scss-old-230729/base/_index.scss +62 -0
- package/trash/scss-old-230729/base/_keyframes.scss +73 -0
- package/trash/scss-old-230729/base/_layout.scss +83 -0
- package/trash/scss-old-230729/base/_normalize.scss +315 -0
- package/trash/scss-old-230729/base/_typography.scss +41 -0
- package/trash/scss-old-230729/components/README.md +5 -0
- package/trash/scss-old-230729/components/README.todos +15 -0
- package/trash/scss-old-230729/components/_button.scss +95 -0
- package/trash/scss-old-230729/components/_index.scss +63 -0
- package/trash/scss-old-230729/components/_links.scss +34 -0
- package/trash/scss-old-230729/components/_list-lines.scss +73 -0
- package/trash/scss-old-230729/components/_list-ordered.scss +16 -0
- package/trash/scss-old-230729/components/_list-unordered.scss +21 -0
- package/trash/scss-old-230729/components/_rule.scss +93 -0
- package/trash/scss-old-230729/helpers/_color.scss +14 -0
- package/trash/scss-old-230729/helpers/_display.scss +73 -0
- package/trash/scss-old-230729/helpers/_index.scss +67 -0
- package/trash/scss-old-230729/helpers/_print.scss +58 -0
- package/trash/scss-old-230729/helpers/_typography.scss +72 -0
- package/trash/scss-old-230729/helpers/_units.scss +68 -0
- package/trash/scss-old-230729/helpers/_utilities.scss +87 -0
- package/trash/scss-old-230729/packages/README.md +3 -0
- package/trash/scss-old-230729/packages/everything.scss +17 -0
- package/trash/vue/directives/background-image-url.js +12 -0
- package/trash/vue/helpers/add-required-components.js +14 -0
- package/trash/vue/ui/CollapsibleRegion/CollapsibleRegion.vue +277 -0
- package/trash/vue/ui/CollapsibleRegion/Demo.vue +101 -0
- package/trash/vue/ui/Dropdown/Dropdown.vue +184 -0
- package/trash/vue/ui/Modals/components/Modal.vue +49 -0
- package/trash/vue/ui/Modals/components/Modals.vue +103 -0
- package/trash/vue/ui/Modals/plugin.js +215 -0
- package/trash/vue/ui/Modals/readme.note +10 -0
- package/trash/vue/ui/Modals/reference/example-usage.vue +27 -0
- package/trash/vue/ui/Modals/reference/wcag-example/dialog.js +324 -0
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
////
|
|
2
|
+
/// @group components-rule Rule
|
|
3
|
+
////
|
|
4
|
+
|
|
5
|
+
@use "sass:map";
|
|
6
|
+
@use "../utils";
|
|
7
|
+
@use "../element";
|
|
8
|
+
@use "../color";
|
|
9
|
+
@use "../selector";
|
|
10
|
+
|
|
11
|
+
/// Module Settings
|
|
12
|
+
/// @type Map
|
|
13
|
+
/// @prop {Number} $config.short-width Short rule width (like an inline rule, normally used above headings), Setting this to false will disable output
|
|
14
|
+
/// @prop {Number} $config.short-border-width Short rule width of border
|
|
15
|
+
|
|
16
|
+
$config: (
|
|
17
|
+
"short-width" : 2.75rem,
|
|
18
|
+
"short-border-width" : 4px
|
|
19
|
+
) !default;
|
|
20
|
+
|
|
21
|
+
/// Change modules $config
|
|
22
|
+
/// @param {Map} $changes Map of changes
|
|
23
|
+
/// @example scss - General example, replace module-name with module's name
|
|
24
|
+
/// @include module-name.set(( "property" : value ));
|
|
25
|
+
|
|
26
|
+
@mixin set($changes) {
|
|
27
|
+
$config: map.merge($config, $changes) !global;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
/// Get a config option
|
|
31
|
+
/// @param {Map} $name Name of property
|
|
32
|
+
/// @example scss - General example, replace module-name with module's name
|
|
33
|
+
/// @include module-name.get("property");
|
|
34
|
+
|
|
35
|
+
@function get($name) {
|
|
36
|
+
@return utils.require-map-get($config, $name, "rule [config]");
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
/// Output styles
|
|
40
|
+
|
|
41
|
+
@mixin styles {
|
|
42
|
+
|
|
43
|
+
$class: selector.class("rule");
|
|
44
|
+
|
|
45
|
+
#{ $class } {
|
|
46
|
+
@include element.rule();
|
|
47
|
+
}
|
|
48
|
+
#{ $class }--content-on-top {
|
|
49
|
+
position: relative;
|
|
50
|
+
> * {
|
|
51
|
+
background-color: white; // User woud need to specific per context needed or something
|
|
52
|
+
position: absolute;
|
|
53
|
+
top: 50%;
|
|
54
|
+
left: 50%;
|
|
55
|
+
transform: translate(-50%, -50%);
|
|
56
|
+
max-width: 100%;
|
|
57
|
+
padding: 0.5em;
|
|
58
|
+
margin: 0;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
// Output user's styles presets
|
|
63
|
+
@each $name, $value in element.$rule-styles {
|
|
64
|
+
#{ $class }--#{ $name } {
|
|
65
|
+
@include element.rule-style($name);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
// Output user's margin presets
|
|
69
|
+
@each $name, $value in element.$rule-margins {
|
|
70
|
+
#{ $class }--margin-#{ $name } {
|
|
71
|
+
@include element.rule-margin($name);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
// Meant to be user by tself without content
|
|
76
|
+
$short-width: get("short-width");
|
|
77
|
+
@if ($short-width) {
|
|
78
|
+
#{ $class }--short {
|
|
79
|
+
width: $short-width;
|
|
80
|
+
max-width: 100%;
|
|
81
|
+
border-bottom-width: get("short-border-width");
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
////
|
|
2
|
+
/// @group helpers-color
|
|
3
|
+
////
|
|
4
|
+
|
|
5
|
+
@use "../utils";
|
|
6
|
+
@use "../color";
|
|
7
|
+
|
|
8
|
+
/// Prints color-context and color-[name] styles as helper classes (bottom of stylesheet)
|
|
9
|
+
|
|
10
|
+
@mixin styles {
|
|
11
|
+
@include utils.file-header('helpers', 'color');
|
|
12
|
+
@include color.all-context-styles("helper-class");
|
|
13
|
+
@include color.all-color-class-styles();
|
|
14
|
+
}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
////
|
|
2
|
+
/// @group helpers-display
|
|
3
|
+
////
|
|
4
|
+
|
|
5
|
+
@use "sass:map";
|
|
6
|
+
|
|
7
|
+
@use "../utils";
|
|
8
|
+
@use "../utility";
|
|
9
|
+
@use "../layout";
|
|
10
|
+
@use "../element";
|
|
11
|
+
@use "../breakpoint";
|
|
12
|
+
@use "../selector";
|
|
13
|
+
|
|
14
|
+
/// Print utilities helper styles
|
|
15
|
+
/// @name helper-display-styles
|
|
16
|
+
/// @example scss
|
|
17
|
+
/// @include ulu.helper-display-styles();
|
|
18
|
+
|
|
19
|
+
@mixin styles {
|
|
20
|
+
|
|
21
|
+
@include utils.file-header('helpers', 'display');
|
|
22
|
+
|
|
23
|
+
$hiddenVisuallyPrefix: selector.class("hidden-visually");
|
|
24
|
+
|
|
25
|
+
#{ $hiddenVisuallyPrefix } {
|
|
26
|
+
@include element.hidden-visually();
|
|
27
|
+
}
|
|
28
|
+
#{ $hiddenVisuallyPrefix }--focusable {
|
|
29
|
+
&:active,
|
|
30
|
+
&:focus {
|
|
31
|
+
@include element.hidden-visually(false);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
// Consider removing
|
|
35
|
+
.clearfix,
|
|
36
|
+
.cf {
|
|
37
|
+
@include layout.clearfix();
|
|
38
|
+
}
|
|
39
|
+
.display-block {
|
|
40
|
+
display: block;
|
|
41
|
+
}
|
|
42
|
+
.display-inline {
|
|
43
|
+
display: inline;
|
|
44
|
+
}
|
|
45
|
+
.display-inline-all * {
|
|
46
|
+
display: inline;
|
|
47
|
+
}
|
|
48
|
+
.display-inline-block {
|
|
49
|
+
display: inline-block;
|
|
50
|
+
}
|
|
51
|
+
.hidden {
|
|
52
|
+
display: none;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
// Display none per breakpoint
|
|
56
|
+
@each $name in map.keys(breakpoint.$sizes) {
|
|
57
|
+
@include breakpoint.min($name) {
|
|
58
|
+
.hidden-min-#{ $name } {
|
|
59
|
+
display: none;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
@include breakpoint.max($name) {
|
|
63
|
+
.hidden-max-#{ $name } {
|
|
64
|
+
display: none;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
////
|
|
2
|
+
/// @group helpers (import all)
|
|
3
|
+
////
|
|
4
|
+
|
|
5
|
+
@forward "typography" as typography-*;
|
|
6
|
+
@forward "display" as display-*;
|
|
7
|
+
@forward "utilities" as utilities-*;
|
|
8
|
+
@forward "print" as print-*;
|
|
9
|
+
@forward "units" as units-*;
|
|
10
|
+
@forward "color" as color-*;
|
|
11
|
+
|
|
12
|
+
@use "sass:map";
|
|
13
|
+
@use "../utils";
|
|
14
|
+
@use "typography";
|
|
15
|
+
@use "display";
|
|
16
|
+
@use "utilities";
|
|
17
|
+
@use "units";
|
|
18
|
+
@use "print";
|
|
19
|
+
@use "color";
|
|
20
|
+
|
|
21
|
+
// Used to check against user's includes
|
|
22
|
+
|
|
23
|
+
$-all-includes: (
|
|
24
|
+
"typography" : true,
|
|
25
|
+
"units" : true,
|
|
26
|
+
"display" : true,
|
|
27
|
+
"utilities" : true,
|
|
28
|
+
"print" : true,
|
|
29
|
+
"color" : true
|
|
30
|
+
);
|
|
31
|
+
|
|
32
|
+
/// Prints all Helper styles
|
|
33
|
+
/// @name helper-styles
|
|
34
|
+
/// @param {List} $includes AA list of changes to this module's includes
|
|
35
|
+
/// @example scss
|
|
36
|
+
/// @include ulu.helper-styles();
|
|
37
|
+
|
|
38
|
+
@mixin styles($includes: null) {
|
|
39
|
+
@include utils.file-header("helpers");
|
|
40
|
+
@if $includes {
|
|
41
|
+
@include utils.require-list-contains($-all-includes, $includes);
|
|
42
|
+
$-all-includes: map.merge($-all-includes, $includes) !global;
|
|
43
|
+
}
|
|
44
|
+
@if (map.get($-all-includes, "typography")) {
|
|
45
|
+
@include typography.styles;
|
|
46
|
+
}
|
|
47
|
+
@if (map.get($-all-includes, "units")) {
|
|
48
|
+
@include units.styles;
|
|
49
|
+
}
|
|
50
|
+
@if (map.get($-all-includes, "display")) {
|
|
51
|
+
@include display.styles;
|
|
52
|
+
}
|
|
53
|
+
@if (map.get($-all-includes, "utilities")) {
|
|
54
|
+
@include utilities.styles;
|
|
55
|
+
}
|
|
56
|
+
@if (map.get($-all-includes, "print")) {
|
|
57
|
+
@include print.styles;
|
|
58
|
+
}
|
|
59
|
+
@if (map.get($-all-includes, "color")) {
|
|
60
|
+
@include color.styles;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
////
|
|
2
|
+
/// @group helpers-print
|
|
3
|
+
////
|
|
4
|
+
|
|
5
|
+
/// Printed Media Styles
|
|
6
|
+
/// @name helper-print-styles
|
|
7
|
+
/// @example scss
|
|
8
|
+
/// @include ulu.helper-print-styles();
|
|
9
|
+
|
|
10
|
+
@mixin styles {
|
|
11
|
+
// Note: this is an old framework stylesheet (may be outdated)
|
|
12
|
+
@media (print) {
|
|
13
|
+
.no-print {
|
|
14
|
+
display: none;
|
|
15
|
+
}
|
|
16
|
+
* {
|
|
17
|
+
background: transparent !important;
|
|
18
|
+
color: black !important;
|
|
19
|
+
box-shadow: none !important;
|
|
20
|
+
text-shadow: none !important;
|
|
21
|
+
filter: none !important;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
/* Black prints faster: h5bp.com/s */
|
|
25
|
+
a,
|
|
26
|
+
a:visited {
|
|
27
|
+
text-decoration: underline;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
/* Don't show links for images, or javascript/internal links */
|
|
31
|
+
pre,
|
|
32
|
+
blockquote {
|
|
33
|
+
border: 1px solid #999;
|
|
34
|
+
page-break-inside: avoid;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
/*thead {
|
|
38
|
+
display: table-header-group;
|
|
39
|
+
}*/
|
|
40
|
+
|
|
41
|
+
/* h5bp.com/t */
|
|
42
|
+
tr, img {
|
|
43
|
+
page-break-inside: avoid;
|
|
44
|
+
}
|
|
45
|
+
img {
|
|
46
|
+
max-width: 100% !important;
|
|
47
|
+
}
|
|
48
|
+
p,
|
|
49
|
+
h2,
|
|
50
|
+
h3 {
|
|
51
|
+
orphans: 3;
|
|
52
|
+
widows: 3;
|
|
53
|
+
}
|
|
54
|
+
h2,
|
|
55
|
+
h3 {
|
|
56
|
+
page-break-after: avoid;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
////
|
|
2
|
+
/// @group helpers-typography
|
|
3
|
+
////
|
|
4
|
+
|
|
5
|
+
@use "sass:map";
|
|
6
|
+
@use "../utils";
|
|
7
|
+
@use "../selector";
|
|
8
|
+
@use "../typography";
|
|
9
|
+
|
|
10
|
+
/// Prints Typography Helper styles
|
|
11
|
+
/// @name helper-typography-styles
|
|
12
|
+
/// @example scss
|
|
13
|
+
/// @include ulu.helper-typography-styles();
|
|
14
|
+
/// @example html {preview} Example of type size as helper prefixed
|
|
15
|
+
/// <span class="type-large-xxx">A</span>
|
|
16
|
+
/// <span class="type-large-xx">A</span>
|
|
17
|
+
/// <span class="type-large-x">A</span>
|
|
18
|
+
/// <span class="type-large">A</span>
|
|
19
|
+
/// <span class="type-base">A</span>
|
|
20
|
+
/// <span class="type-small">A</span>
|
|
21
|
+
/// <span class="type-small-x">A</span>
|
|
22
|
+
|
|
23
|
+
@mixin styles {
|
|
24
|
+
|
|
25
|
+
@include utils.file-header('helpers', 'typography');
|
|
26
|
+
|
|
27
|
+
$prefix: selector.class("type");
|
|
28
|
+
|
|
29
|
+
@each $size, $values in typography.$sizes {
|
|
30
|
+
@if (map.get($values, "helper-class")) {
|
|
31
|
+
@if (map.get($values, "helper-class-prefixed")) {
|
|
32
|
+
#{ $prefix }-#{$size} {
|
|
33
|
+
@include typography.size($size);
|
|
34
|
+
}
|
|
35
|
+
} @else {
|
|
36
|
+
.#{$size} {
|
|
37
|
+
@include typography.size($size);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
#{ $prefix }-light { font-weight: typography.get("font-weight-light"); }
|
|
44
|
+
#{ $prefix }-normal { font-weight: typography.get("font-weight-normal"); }
|
|
45
|
+
#{ $prefix }-semibold { font-weight: typography.get("font-weight-semibold"); }
|
|
46
|
+
#{ $prefix }-bold { font-weight: typography.get("font-weight-bold"); }
|
|
47
|
+
|
|
48
|
+
#{ $prefix }-italic { font-style: italic; }
|
|
49
|
+
|
|
50
|
+
#{ $prefix }-center { text-align: center; }
|
|
51
|
+
#{ $prefix }-left { text-align: left; }
|
|
52
|
+
#{ $prefix }-right { text-align: right; }
|
|
53
|
+
|
|
54
|
+
#{ $prefix }-upper {
|
|
55
|
+
text-transform: uppercase;
|
|
56
|
+
letter-spacing: typography.get("letter-spacing-uppercase");
|
|
57
|
+
}
|
|
58
|
+
#{ $prefix }-lower { text-transform: lowercase; }
|
|
59
|
+
#{ $prefix }-title { text-transform: capitalize; }
|
|
60
|
+
|
|
61
|
+
#{ $prefix }-family { font-family: typography.get("font-family"); }
|
|
62
|
+
#{ $prefix }-family-sans { font-family: typography.get("font-family-sans"); }
|
|
63
|
+
#{ $prefix }-family-serif { font-family: typography.get("font-family-serif"); }
|
|
64
|
+
#{ $prefix }-family-mono { font-family: typography.get("font-family-monospace"); }
|
|
65
|
+
|
|
66
|
+
#{ $prefix }-word-break { @include typography.word-break(); }
|
|
67
|
+
#{ $prefix }-word-break-all { @include typography.word-break(true); }
|
|
68
|
+
|
|
69
|
+
#{ $prefix }-max-width { max-width: typography.get("max-width"); }
|
|
70
|
+
#{ $prefix }-max-width-small { max-width: typography.get("max-width-small"); }
|
|
71
|
+
#{ selector.class("line-height") }-dense { line-height: typography.get("line-height-dense"); }
|
|
72
|
+
#{ selector.class("line-height") }-spaced { line-height: typography.get("line-height-spaced"); }
|
|
73
|
+
}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
////
|
|
2
|
+
/// @group helpers-units
|
|
3
|
+
////
|
|
4
|
+
|
|
5
|
+
@use "sass:map";
|
|
6
|
+
@use "../units";
|
|
7
|
+
@use "../utils";
|
|
8
|
+
@use "../selector";
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
/// Module Settings
|
|
12
|
+
/// @type Map
|
|
13
|
+
/// @prop {Number} $config.sides Sides to print for helper classes (ie. reduce output of uneeded sides)
|
|
14
|
+
|
|
15
|
+
$config: (
|
|
16
|
+
"sides": ("top", "bottom", "left", "right")
|
|
17
|
+
) !default;
|
|
18
|
+
|
|
19
|
+
/// Change modules $config
|
|
20
|
+
/// @param {Map} $changes Map of changes
|
|
21
|
+
/// @example scss - General example, replace module-name with module's name
|
|
22
|
+
/// @include module-name.set(( "property" : value ));
|
|
23
|
+
@mixin set($changes) {
|
|
24
|
+
$config: map.merge($config, $changes) !global;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
/// Get a config option
|
|
28
|
+
/// @param {Map} $name Name of property
|
|
29
|
+
/// @example scss - General example, replace module-name with module's name
|
|
30
|
+
/// @include module-name.get("property");
|
|
31
|
+
|
|
32
|
+
@function get($name) {
|
|
33
|
+
@return utils.require-map-get($config, $name, "units [config]");
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
/// Prints all unit helper classes
|
|
37
|
+
|
|
38
|
+
@mixin styles {
|
|
39
|
+
@include utils.file-header('helpers', 'leading');
|
|
40
|
+
@include create-property-classes("margin", selector.class("margin"));
|
|
41
|
+
@include create-property-classes("padding", selector.class("padding"));
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
/// Creates the unit classes with all variations (from unit presets)
|
|
45
|
+
/// - This can be used by itself if not outputing .styles() or if you wanted to change the default prefixes
|
|
46
|
+
@mixin create-property-classes($property, $prefix) {
|
|
47
|
+
// On all sides
|
|
48
|
+
#{ $prefix } {
|
|
49
|
+
#{ $property } : units.get(1);
|
|
50
|
+
}
|
|
51
|
+
@each $name, $value in units.$config {
|
|
52
|
+
#{ $prefix }-#{ $name } {
|
|
53
|
+
#{ $property }: units.get($name);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
// Individual sides
|
|
57
|
+
@each $side in get("sides") {
|
|
58
|
+
$full-prop: #{ $property }-#{ $side };
|
|
59
|
+
#{ $prefix }-#{ $side } {
|
|
60
|
+
#{ $full-prop }: units.get(1);
|
|
61
|
+
}
|
|
62
|
+
@each $name, $value in units.$config {
|
|
63
|
+
#{ $prefix }-#{ $side }-#{ $name } {
|
|
64
|
+
#{ $full-prop }: units.get($name);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
////
|
|
2
|
+
/// @group helpers-utilities
|
|
3
|
+
////
|
|
4
|
+
|
|
5
|
+
@use "../utils";
|
|
6
|
+
@use "../utility";
|
|
7
|
+
@use "../layout";
|
|
8
|
+
|
|
9
|
+
/// Print utilities helper styles
|
|
10
|
+
/// @name helper-utilities-styles
|
|
11
|
+
/// @example scss
|
|
12
|
+
/// @include ulu.helper-utilities-styles();
|
|
13
|
+
|
|
14
|
+
@mixin styles {
|
|
15
|
+
|
|
16
|
+
@include utils.file-header('helpers', 'utilities');
|
|
17
|
+
|
|
18
|
+
// Consider removing
|
|
19
|
+
.no-scroll-y {
|
|
20
|
+
overflow-y: hidden;
|
|
21
|
+
}
|
|
22
|
+
.no-scroll-x {
|
|
23
|
+
overflow-x: hidden;
|
|
24
|
+
}
|
|
25
|
+
.full-height {
|
|
26
|
+
height: 100%;
|
|
27
|
+
}
|
|
28
|
+
.full-min-height {
|
|
29
|
+
min-height: 100%;
|
|
30
|
+
}
|
|
31
|
+
.image-fill {
|
|
32
|
+
width: 100%;
|
|
33
|
+
height: 100%;
|
|
34
|
+
object-fit: cover;
|
|
35
|
+
}
|
|
36
|
+
.image-full-width img,
|
|
37
|
+
.image-full-width {
|
|
38
|
+
width: 100%;
|
|
39
|
+
height: auto;
|
|
40
|
+
}
|
|
41
|
+
.margin-auto,
|
|
42
|
+
.center {
|
|
43
|
+
margin-left: auto;
|
|
44
|
+
margin-right: auto;
|
|
45
|
+
}
|
|
46
|
+
.margin-left-auto {
|
|
47
|
+
margin-left: auto;
|
|
48
|
+
}
|
|
49
|
+
.margin-right-auto {
|
|
50
|
+
margin-right: auto;
|
|
51
|
+
}
|
|
52
|
+
.no-margin {
|
|
53
|
+
margin: 0;
|
|
54
|
+
}
|
|
55
|
+
.no-margin-top {
|
|
56
|
+
margin-top: 0;
|
|
57
|
+
}
|
|
58
|
+
.no-margin-bottom {
|
|
59
|
+
margin-bottom: 0;
|
|
60
|
+
}
|
|
61
|
+
.no-margin-left {
|
|
62
|
+
margin-left: 0;
|
|
63
|
+
}
|
|
64
|
+
.no-margin-right {
|
|
65
|
+
margin-right: 0;
|
|
66
|
+
}
|
|
67
|
+
.no-padding {
|
|
68
|
+
padding: 0;
|
|
69
|
+
}
|
|
70
|
+
.no-padding-top {
|
|
71
|
+
padding-top: 0;
|
|
72
|
+
}
|
|
73
|
+
.no-padding-bottom {
|
|
74
|
+
padding-bottom: 0;
|
|
75
|
+
}
|
|
76
|
+
.no-padding-left {
|
|
77
|
+
padding-left: 0;
|
|
78
|
+
}
|
|
79
|
+
.no-padding-right {
|
|
80
|
+
padding-right: 0;
|
|
81
|
+
}
|
|
82
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
////
|
|
2
|
+
/// @group packages
|
|
3
|
+
////
|
|
4
|
+
|
|
5
|
+
/// Stylesheet includes everything user just imports it
|
|
6
|
+
/// - Note: Not configurable as far as output of styles (use minimal)
|
|
7
|
+
|
|
8
|
+
@forward "../";
|
|
9
|
+
|
|
10
|
+
@use "../base";
|
|
11
|
+
@use "../components";
|
|
12
|
+
@use "../helpers";
|
|
13
|
+
|
|
14
|
+
// Output all stylesheets
|
|
15
|
+
@include base.styles();
|
|
16
|
+
@include components.styles();
|
|
17
|
+
@include helpers.styles();
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
|
|
2
|
+
### Directory Contents/Structure
|
|
3
|
+
|
|
4
|
+
1. Base - The area for the base styles (normalize, html elements)
|
|
5
|
+
2. Components - The area for reusable ui/layout components
|
|
6
|
+
3. Helpers - The place for stylesheets that provide overriding/atomic styles (accessibility, type classes, etc)
|
|
7
|
+
4. Lib - The modules that are used throughout the system and on the user's side
|
|
8
|
+
5. Packages - Entry points for users with preset imports
|
|
9
|
+
- Note: User's will need to add a namespace like `ulu` when importing a package
|
|
10
|
+
|
|
11
|
+
### Important Goals
|
|
12
|
+
|
|
13
|
+
1. You should be able get access to anything from the user's side
|
|
14
|
+
- Mixins, Functions, Variables
|
|
15
|
+
- Styles - Things should be able to be
|
|
16
|
+
- Extended into a pre-existing system (when you have little selector control)
|
|
17
|
+
- Mixing in styles when needed
|
|
18
|
+
- Use placeholders as a more flexible selector system
|
|
19
|
+
2. Namespacing
|
|
20
|
+
- Should you be able to namespace the library (selectors not modules)?
|
|
21
|
+
- Would create a log of interpolation which makes the codebase harder to maintain
|
|
22
|
+
- Bigger barrier if someone else works into this
|
|
23
|
+
- Probably important with certain components
|
|
24
|
+
- If it's within a module/component (interpolation) it's probably not a huge deal
|
|
25
|
+
|
|
26
|
+
### Rules
|
|
27
|
+
|
|
28
|
+
- Leverage default parameters in mixin and functions over config defaults that rely on other module's configuration
|
|
29
|
+
- Testing shows that these are evaluated when the function is called, which makes sense because if not these may have all the same references (thinking JS has the parameter scope and is evaluated on call)
|
|
30
|
+
- No changing vars (aka with)
|
|
31
|
+
- No extending (not supported, only within the same module for convenience)
|
|
32
|
+
- No relying on use of @use > with to configure, it's too complicated for user (and me).
|
|
33
|
+
- Use mixin to set vars (kind of a pain but we should probably rely more on maps so there isn't so much repetition)
|
|
34
|
+
- Kabab case will be used for everything, @see "Module Prefixes" below, works better with kabab case
|
|
35
|
+
- Modules use simple variable, mixins and function names relative to their module
|
|
36
|
+
- Forwards will make namespacing in the overall ulu packaged module
|
|
37
|
+
- **Module Prefixes:** Modules all get prefixed by parent module ie lib will transform color.set() to color-set(), adding the modules namespace for users that are importing the whole library. It also matches the core modules `map-get()` and when @used `map.get()`
|
|
38
|
+
|
|
39
|
+
### Writing Docs
|
|
40
|
+
|
|
41
|
+
- Should be written from the user's point of view
|
|
42
|
+
- Use prefixes @see "Module Prefixes" in member names. This will avoid confusion about normal use case. For advanced user importing specific parts would already be familiar with this pattern.
|
|
43
|
+
|
|
44
|
+
### Ideas
|
|
45
|
+
|
|
46
|
+
- How to solve the inability to use standard vars (avoid with)
|
|
47
|
+
- Use maps (reduce code repetition, just need boiler plate get/set (may be able to contain this in utils and extend the module not sure if you can add functions to a namespace dynamically?))
|
|
48
|
+
- Issue: You can't use it for grandchild deps defaults, aka if another dep has .get() then it will get the unconfigured value
|
|
49
|
+
- The issue is that these things are not references or there is no way to easily poin
|
|
50
|
+
- Think how do we solve this in JS?
|
|
51
|
+
- Could this be solved by some standardized lifecycle?
|
|
52
|
+
- Fuzzy but something that the user has to call to initialize? (don't like this)
|
|
53
|
+
- Could this be solved by tokens? Like the color library (actual value is set when requested, versus variables (on module init))
|
|
54
|
+
- Note: This is one reason the element system ("_element()") mixin could be handy across the board. It still has the same issue though in terms of references changing (maps being cloned and they aren't references)
|
|
55
|
+
- Could use a global config/theme and allow that to be set with "with"
|
|
56
|
+
- Or allow the user to configure the modules and not try and group modules
|
|
57
|
+
- One flat list
|
|
58
|
+
- Needs more thought
|