loomcss 0.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.
- checksums.yaml +7 -0
- data/.gitignore +16 -0
- data/.nvmrc +1 -0
- data/.stylelintrc +6 -0
- data/Gemfile +4 -0
- data/LICENSE +21 -0
- data/README.md +161 -0
- data/Rakefile +2 -0
- data/assets/loom/10-global-settings/_box-sizing.scss +5 -0
- data/assets/loom/10-global-settings/_breakpoints.scss +22 -0
- data/assets/loom/10-global-settings/_color.scss +79 -0
- data/assets/loom/10-global-settings/_icons.scss +5 -0
- data/assets/loom/10-global-settings/_misc.scss +89 -0
- data/assets/loom/10-global-settings/_spacing.scss +20 -0
- data/assets/loom/10-global-settings/_typography.scss +201 -0
- data/assets/loom/20-tools/_color.scss +22 -0
- data/assets/loom/20-tools/_grid-columns.scss +23 -0
- data/assets/loom/20-tools/_icons.scss +16 -0
- data/assets/loom/20-tools/_misc.scss +12 -0
- data/assets/loom/20-tools/_mq.scss +126 -0
- data/assets/loom/20-tools/_spacing.scss +14 -0
- data/assets/loom/20-tools/_transition.scss +10 -0
- data/assets/loom/20-tools/_type-checking.scss +52 -0
- data/assets/loom/20-tools/_typography.scss +130 -0
- data/assets/loom/20-tools/_z-index.scss +16 -0
- data/assets/loom/30-generic/_box-sizing.scss +9 -0
- data/assets/loom/30-generic/_normalize.scss +461 -0
- data/assets/loom/30-generic/_reset.scss +48 -0
- data/assets/loom/40-base-elements/_form-items.scss +50 -0
- data/assets/loom/40-base-elements/_images.scss +5 -0
- data/assets/loom/40-base-elements/_typography.scss +138 -0
- data/assets/loom/50-layout/_grid.scss +37 -0
- data/assets/loom/60-objects/_absolute-center.scss +18 -0
- data/assets/loom/60-objects/_absolute-cover.scss +19 -0
- data/assets/loom/60-objects/_button.scss +93 -0
- data/assets/loom/60-objects/_clearfix.scss +19 -0
- data/assets/loom/60-objects/_container.scss +34 -0
- data/assets/loom/60-objects/_fixed-ratio.scss +42 -0
- data/assets/loom/60-objects/_headings.scss +28 -0
- data/assets/loom/60-objects/_hide-visually.scss +23 -0
- data/assets/loom/60-objects/_icon.scss +30 -0
- data/assets/loom/60-objects/_list-inline.scss +37 -0
- data/assets/loom/60-objects/_list-reset.scss +25 -0
- data/assets/loom/60-objects/_media.scss +35 -0
- data/assets/loom/60-objects/_vertical-center.scss +18 -0
- data/assets/loom/70-ui-components/_example.scss +22 -0
- data/assets/loom/80-utilities/_background-color.scss +13 -0
- data/assets/loom/80-utilities/_border.scss +10 -0
- data/assets/loom/80-utilities/_color.scss +13 -0
- data/assets/loom/80-utilities/_display.scss +31 -0
- data/assets/loom/80-utilities/_font-family.scss +20 -0
- data/assets/loom/80-utilities/_font-size.scss +24 -0
- data/assets/loom/80-utilities/_font-style.scss +15 -0
- data/assets/loom/80-utilities/_font-weight.scss +15 -0
- data/assets/loom/80-utilities/_line-height.scss +0 -0
- data/assets/loom/80-utilities/_margin.scss +33 -0
- data/assets/loom/80-utilities/_padding.scss +32 -0
- data/assets/loom/80-utilities/_position.scss +15 -0
- data/assets/loom/80-utilities/_text-align.scss +19 -0
- data/assets/loom/80-utilities/_text-transform.scss +19 -0
- data/assets/loom/80-utilities/_vertical-align.scss +26 -0
- data/assets/loom/80-utilities/_white-space.scss +27 -0
- data/assets/loom/80-utilities/_width.scss +11 -0
- data/assets/loom/90-trumps/.keepfile +0 -0
- data/assets/loom/_10-global-settings.scss +7 -0
- data/assets/loom/_20-tools.scss +10 -0
- data/assets/loom/_30-generic.scss +2 -0
- data/assets/loom/_40-base-elements.scss +3 -0
- data/assets/loom/_50-layout.scss +1 -0
- data/assets/loom/_60-objects.scss +13 -0
- data/assets/loom/_70-ui-components.scss +0 -0
- data/assets/loom/_80-utilities.scss +17 -0
- data/assets/loom/_90-trumps.scss +0 -0
- data/assets/main-shorthand.scss +44 -0
- data/assets/main.scss +108 -0
- data/bin/console +14 -0
- data/bin/setup +8 -0
- data/gulpfile.js +24 -0
- data/index.html +97 -0
- data/lib/loomcss.rb +2 -0
- data/lib/loomcss/engine.rb +9 -0
- data/lib/loomcss/version.rb +3 -0
- data/loomcss.gemspec +32 -0
- data/main.css +1298 -0
- data/package.json +36 -0
- data/public/docs/assets/images/favicon.png +0 -0
- data/public/docs/assets/images/logo_full_compact.svg +1 -0
- data/public/docs/assets/images/logo_full_inline.svg +1 -0
- data/public/docs/assets/images/logo_light_compact.svg +1 -0
- data/public/docs/assets/images/logo_light_inline.svg +1 -0
- data/public/docs/assets/js/main.js +56 -0
- data/public/docs/assets/js/main.min.js +1 -0
- data/public/docs/assets/js/search.js +146 -0
- data/public/docs/assets/js/sidebar.js +163 -0
- data/public/docs/assets/js/vendor/fuse.min.js +20 -0
- data/public/docs/assets/js/vendor/jquery.min.js +4 -0
- data/public/docs/assets/js/vendor/prism.min.js +9 -0
- data/public/docs/index.html +314 -0
- metadata +172 -0
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/// Toggle padding class generation.
|
|
2
|
+
///
|
|
3
|
+
/// By default uses global setting.
|
|
4
|
+
/// @group 80-utilities
|
|
5
|
+
$LOOM-use-utility-classes-padding: $LOOM-use-utility-classes !default;
|
|
6
|
+
|
|
7
|
+
@if $LOOM-use-utility-classes-padding {
|
|
8
|
+
// Paddings for each spacing unit and position.
|
|
9
|
+
// Paddings for each breakpoint
|
|
10
|
+
|
|
11
|
+
.u-padding-none {
|
|
12
|
+
padding: 0;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
@each $position in (left, top, right, bottom) {
|
|
16
|
+
.u-padding-#{$position}-none {
|
|
17
|
+
padding-#{$position}: 0;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
@each $key, $value in $LOOM-spacing {
|
|
22
|
+
.u-padding-#{$key} {
|
|
23
|
+
padding: $value;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
@each $position in (left, top, right, bottom) {
|
|
27
|
+
.u-padding-#{$position}-#{$key} {
|
|
28
|
+
padding-#{$position}: $value;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/// Toggle position class generation.
|
|
2
|
+
///
|
|
3
|
+
/// By default uses global setting.
|
|
4
|
+
/// @group 80-utilities
|
|
5
|
+
$LOOM-use-utility-classes-position: $LOOM-use-utility-classes !default;
|
|
6
|
+
|
|
7
|
+
@if $LOOM-use-utility-classes-position {
|
|
8
|
+
.u-position-absolute {
|
|
9
|
+
position: absolute;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
.u-position-relative {
|
|
13
|
+
position: relative;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/// Toggle text-align class generation.
|
|
2
|
+
///
|
|
3
|
+
/// By default uses global setting.
|
|
4
|
+
/// @group 80-utilities
|
|
5
|
+
$LOOM-use-utility-classes-text-align: $LOOM-use-utility-classes !default;
|
|
6
|
+
|
|
7
|
+
@if $LOOM-use-utility-classes-text-align {
|
|
8
|
+
.u-text-align-left {
|
|
9
|
+
text-align: left;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
.u-text-align-right {
|
|
13
|
+
text-align: right;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
.u-text-align-center {
|
|
17
|
+
text-align: center;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/// Toggle text-transform class generation.
|
|
2
|
+
///
|
|
3
|
+
/// By default uses global setting.
|
|
4
|
+
/// @group 80-utilities
|
|
5
|
+
$LOOM-use-utility-classes-text-transform: $LOOM-use-utility-classes !default;
|
|
6
|
+
|
|
7
|
+
@if $LOOM-use-utility-classes-text-transform {
|
|
8
|
+
.u-text-transform-uppercase {
|
|
9
|
+
text-transform: uppercase;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
.u-text-transform-lowercase {
|
|
13
|
+
text-transform: lowercase;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
.u-text-transform-capitalize {
|
|
17
|
+
text-transform: capitalize;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/// Toggle vertical-align class generation.
|
|
2
|
+
///
|
|
3
|
+
/// By default uses global setting.
|
|
4
|
+
/// @group 80-utilities
|
|
5
|
+
$LOOM-use-utility-classes-vertical-align: $LOOM-use-utility-classes !default;
|
|
6
|
+
|
|
7
|
+
/// List of possible vertical-align values
|
|
8
|
+
/// @group 80-utilities
|
|
9
|
+
$LOOM-vertical-align: (
|
|
10
|
+
baseline,
|
|
11
|
+
sub,
|
|
12
|
+
super,
|
|
13
|
+
text-top,
|
|
14
|
+
text-bottom,
|
|
15
|
+
middle,
|
|
16
|
+
top,
|
|
17
|
+
bottom,
|
|
18
|
+
);
|
|
19
|
+
|
|
20
|
+
@if $LOOM-use-utility-classes-vertical-align {
|
|
21
|
+
@each $item in $LOOM-vertical-align {
|
|
22
|
+
.u-vertical-align-#{$item} {
|
|
23
|
+
vertical-align: $item;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/// Toggle white-space class generation.
|
|
2
|
+
///
|
|
3
|
+
/// By default uses global setting.
|
|
4
|
+
/// @group 80-utilities
|
|
5
|
+
$LOOM-use-utility-classes-white-space: $LOOM-use-utility-classes !default;
|
|
6
|
+
|
|
7
|
+
@if $LOOM-use-utility-classes-white-space {
|
|
8
|
+
.u-white-space-normal {
|
|
9
|
+
white-space: normal;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
.u-white-space-nowrap {
|
|
13
|
+
white-space: nowrap;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
.u-white-space-pre {
|
|
17
|
+
white-space: pre;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
.u-white-space-pre-wrap {
|
|
21
|
+
white-space: pre-wrap;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
.u-white-space-pre-line {
|
|
25
|
+
white-space: pre-line;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/// Toggle width class generation.
|
|
2
|
+
///
|
|
3
|
+
/// By default uses global setting.
|
|
4
|
+
/// @group 80-utilities
|
|
5
|
+
$LOOM-use-utility-classes-width: $LOOM-use-utility-classes !default;
|
|
6
|
+
|
|
7
|
+
@if $LOOM-use-utility-classes-width {
|
|
8
|
+
.u-width-full {
|
|
9
|
+
width: 100%;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
File without changes
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
@import '10-global-settings/box-sizing';
|
|
2
|
+
@import '10-global-settings/breakpoints';
|
|
3
|
+
@import '10-global-settings/color';
|
|
4
|
+
@import '10-global-settings/icons';
|
|
5
|
+
@import '10-global-settings/misc';
|
|
6
|
+
@import '10-global-settings/spacing';
|
|
7
|
+
@import '10-global-settings/typography';
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
@import '20-tools/color';
|
|
2
|
+
@import '20-tools/grid-columns';
|
|
3
|
+
@import '20-tools/icons';
|
|
4
|
+
@import '20-tools/misc';
|
|
5
|
+
@import '20-tools/mq';
|
|
6
|
+
@import '20-tools/spacing';
|
|
7
|
+
@import '20-tools/transition';
|
|
8
|
+
@import '20-tools/type-checking';
|
|
9
|
+
@import '20-tools/typography';
|
|
10
|
+
@import '20-tools/z-index';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@import '50-layout/grid';
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
@import '60-objects/headings';
|
|
2
|
+
@import '60-objects/list-reset';
|
|
3
|
+
@import '60-objects/icon';
|
|
4
|
+
@import '60-objects/button';
|
|
5
|
+
@import '60-objects/absolute-center';
|
|
6
|
+
@import '60-objects/absolute-cover';
|
|
7
|
+
@import '60-objects/clearfix';
|
|
8
|
+
@import '60-objects/fixed-ratio';
|
|
9
|
+
@import '60-objects/vertical-center';
|
|
10
|
+
@import '60-objects/media';
|
|
11
|
+
@import '60-objects/hide-visually';
|
|
12
|
+
@import '60-objects/container';
|
|
13
|
+
@import '60-objects/list-inline';
|
|
File without changes
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
@import '80-utilities/background-color';
|
|
2
|
+
@import '80-utilities/border';
|
|
3
|
+
@import '80-utilities/color';
|
|
4
|
+
@import '80-utilities/display';
|
|
5
|
+
@import '80-utilities/font-family';
|
|
6
|
+
@import '80-utilities/font-size';
|
|
7
|
+
@import '80-utilities/font-style';
|
|
8
|
+
@import '80-utilities/font-weight';
|
|
9
|
+
@import '80-utilities/line-height';
|
|
10
|
+
@import '80-utilities/margin';
|
|
11
|
+
@import '80-utilities/padding';
|
|
12
|
+
@import '80-utilities/position';
|
|
13
|
+
@import '80-utilities/text-align';
|
|
14
|
+
@import '80-utilities/text-transform';
|
|
15
|
+
@import '80-utilities/vertical-align';
|
|
16
|
+
@import '80-utilities/white-space';
|
|
17
|
+
@import '80-utilities/width';
|
|
File without changes
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/*
|
|
2
|
+
IMPORTANT - PLEASE READ
|
|
3
|
+
This method of importing Loom is a bit quicker, and looks nicer in your
|
|
4
|
+
application. It also retains all the power of the full import, as long as you
|
|
5
|
+
disable/enable modules via Sass variables, and only import your own modules
|
|
6
|
+
underneath existing Loom modules.
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
// SETTINGS
|
|
10
|
+
// -----> ADD YOUR OWN MODULES HERE! :D
|
|
11
|
+
@import 'loom/10-global-settings';
|
|
12
|
+
// Don't add settings here! Settings need to be imported BEFORE the Loom modules!
|
|
13
|
+
|
|
14
|
+
// TOOLS
|
|
15
|
+
@import 'loom/20-tools';
|
|
16
|
+
// -----> ADD YOUR OWN MODULES HERE! :D
|
|
17
|
+
|
|
18
|
+
// GENERIC
|
|
19
|
+
@import 'loom/30-generic';
|
|
20
|
+
// -----> ADD YOUR OWN MODULES HERE! :D
|
|
21
|
+
|
|
22
|
+
// BASE ELEMENTS
|
|
23
|
+
@import 'loom/40-base-elements';
|
|
24
|
+
// -----> ADD YOUR OWN MODULES HERE! :D
|
|
25
|
+
|
|
26
|
+
// LAYOUT
|
|
27
|
+
@import 'loom/50-layout';
|
|
28
|
+
// -----> ADD YOUR OWN MODULES HERE! :D
|
|
29
|
+
|
|
30
|
+
// OBJECTS
|
|
31
|
+
@import 'loom/60-objects';
|
|
32
|
+
// -----> ADD YOUR OWN MODULES HERE! :D
|
|
33
|
+
|
|
34
|
+
// UI COMPONENTS
|
|
35
|
+
@import 'loom/70-ui-components';
|
|
36
|
+
// -----> ADD YOUR OWN MODULES HERE! :D
|
|
37
|
+
|
|
38
|
+
// UTILITIES
|
|
39
|
+
@import 'loom/80-utilities';
|
|
40
|
+
// -----> ADD YOUR OWN MODULES HERE! :D
|
|
41
|
+
|
|
42
|
+
// TRUMPS
|
|
43
|
+
@import 'loom/90-trumps';
|
|
44
|
+
// -----> ADD YOUR OWN MODULES HERE! :D
|
data/assets/main.scss
ADDED
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
// SETTINGS
|
|
2
|
+
// All global settings. Nothing visual.
|
|
3
|
+
// -----> ADD YOUR OWN SETTINGS HERE! :D
|
|
4
|
+
@import 'loom/10-global-settings/misc';
|
|
5
|
+
@import 'loom/10-global-settings/typography';
|
|
6
|
+
@import 'loom/10-global-settings/color';
|
|
7
|
+
@import 'loom/10-global-settings/breakpoints';
|
|
8
|
+
@import 'loom/10-global-settings/spacing';
|
|
9
|
+
@import 'loom/10-global-settings/box-sizing';
|
|
10
|
+
@import 'loom/10-global-settings/icons';
|
|
11
|
+
// NOOOO! DON'T ADD YOUR OWN SETTINGS AT THE END! :( SEE THE TEXT ABOVE!
|
|
12
|
+
// Why is this is different from every other layer? Because Sass is special,
|
|
13
|
+
// and allows overrides to be set before the variables they override are
|
|
14
|
+
// actually defined.
|
|
15
|
+
|
|
16
|
+
// TOOLS
|
|
17
|
+
// Mixins and functions. Nothing visual.
|
|
18
|
+
@import 'loom/20-tools/misc';
|
|
19
|
+
@import 'loom/20-tools/type-checking';
|
|
20
|
+
@import 'loom/20-tools/typography';
|
|
21
|
+
@import 'loom/20-tools/mq';
|
|
22
|
+
@import 'loom/20-tools/spacing';
|
|
23
|
+
@import 'loom/20-tools/color';
|
|
24
|
+
@import 'loom/20-tools/transition';
|
|
25
|
+
@import 'loom/20-tools/z-index';
|
|
26
|
+
@import 'loom/20-tools/grid-columns';
|
|
27
|
+
@import 'loom/20-tools/icons';
|
|
28
|
+
// -----> ADD YOUR OWN TOOLS HERE! :D
|
|
29
|
+
|
|
30
|
+
// GENERIC
|
|
31
|
+
// Far reaching, global styles. Normalize, resets.
|
|
32
|
+
@import 'loom/30-generic/box-sizing';
|
|
33
|
+
@import 'loom/30-generic/normalize';
|
|
34
|
+
// -----> ADD YOUR OWN GENERIC STYLES HERE! :D
|
|
35
|
+
|
|
36
|
+
// BASE ELEMENTS
|
|
37
|
+
// Unclassed elements. Basic spacing and sizing for raw HTML elements.
|
|
38
|
+
// p {}
|
|
39
|
+
@import 'loom/40-base-elements/images';
|
|
40
|
+
@import 'loom/40-base-elements/typography';
|
|
41
|
+
@import 'loom/40-base-elements/form-items';
|
|
42
|
+
// -----> ADD YOUR OWN BASE ELEMENTS HERE! :D
|
|
43
|
+
|
|
44
|
+
// LAYOUT
|
|
45
|
+
// Grid systems and flex.
|
|
46
|
+
// Should probably be used seperately from components (and objects/utilities, if they're being used for scaffolding). Ideally should be used as part of a wrapper element, as spacing and margins can conflict between layout and objects.
|
|
47
|
+
// You can use all of these with your own classnames, as everything is available as a mixin.
|
|
48
|
+
// .l-layout {}
|
|
49
|
+
@import 'loom/50-layout/grid';
|
|
50
|
+
// -----> ADD YOUR OWN LAYOUT ENGINES HERE! :D
|
|
51
|
+
|
|
52
|
+
// OBJECTS
|
|
53
|
+
// SRP objects. Common code patterns. They do useful things that are repeated over and over.
|
|
54
|
+
// Each object has a mixin so that these can be applied directly to a component, and they have an optional class, so that they can be used for scaffolding.
|
|
55
|
+
// .o-object {}
|
|
56
|
+
@import 'loom/60-objects/headings';
|
|
57
|
+
@import 'loom/60-objects/list-reset';
|
|
58
|
+
@import 'loom/60-objects/icon';
|
|
59
|
+
@import 'loom/60-objects/button';
|
|
60
|
+
@import 'loom/60-objects/absolute-center';
|
|
61
|
+
@import 'loom/60-objects/absolute-cover';
|
|
62
|
+
@import 'loom/60-objects/clearfix';
|
|
63
|
+
@import 'loom/60-objects/fixed-ratio';
|
|
64
|
+
@import 'loom/60-objects/vertical-center';
|
|
65
|
+
@import 'loom/60-objects/media';
|
|
66
|
+
@import 'loom/60-objects/hide-visually';
|
|
67
|
+
@import 'loom/60-objects/container';
|
|
68
|
+
@import 'loom/60-objects/list-inline';
|
|
69
|
+
// -----> ADD YOUR OWN OBJECTS HERE! :D
|
|
70
|
+
|
|
71
|
+
// UI COMPONENTS
|
|
72
|
+
// Styled visual components. $LOOM doesn't try to provide these. These will be specific to your project.
|
|
73
|
+
// Build components with help from @included objects and $LOOM predefined variables.
|
|
74
|
+
// .c-component {}
|
|
75
|
+
@import 'loom/70-ui-components/example';
|
|
76
|
+
// -----> ADD YOUR OWN UI COMPONENTS HERE! :D
|
|
77
|
+
|
|
78
|
+
// UTILITIES
|
|
79
|
+
// If a component does not handle it's own spacing, font-styling, sizing, then they can use these utility classes.
|
|
80
|
+
// They only represent a single CSS rule. Useful for quickly scaffolding interfaces by adding classes to HTML. However, only a temporary solution as readibility is compromised - should probably be merged into a UI-component.
|
|
81
|
+
// However, if you're into atomic CSS, you can use and extend the utilities here.
|
|
82
|
+
// Rule of thumb: if the ruleset consists of a single line, it probably belongs in here. Multiple lines are generally objects.
|
|
83
|
+
// .u-utility {}
|
|
84
|
+
@import 'loom/80-utilities/background-color';
|
|
85
|
+
@import 'loom/80-utilities/border';
|
|
86
|
+
@import 'loom/80-utilities/color';
|
|
87
|
+
@import 'loom/80-utilities/display';
|
|
88
|
+
@import 'loom/80-utilities/font-family';
|
|
89
|
+
@import 'loom/80-utilities/font-size';
|
|
90
|
+
@import 'loom/80-utilities/font-style';
|
|
91
|
+
@import 'loom/80-utilities/font-weight';
|
|
92
|
+
@import 'loom/80-utilities/line-height';
|
|
93
|
+
@import 'loom/80-utilities/margin';
|
|
94
|
+
@import 'loom/80-utilities/padding';
|
|
95
|
+
@import 'loom/80-utilities/position';
|
|
96
|
+
@import 'loom/80-utilities/text-align';
|
|
97
|
+
@import 'loom/80-utilities/text-transform';
|
|
98
|
+
@import 'loom/80-utilities/vertical-align';
|
|
99
|
+
@import 'loom/80-utilities/white-space';
|
|
100
|
+
@import 'loom/80-utilities/width';
|
|
101
|
+
// -----> ADD YOUR OWN UTILITIES HERE! :D
|
|
102
|
+
|
|
103
|
+
// TRUMPS
|
|
104
|
+
// Real ultimate overrides. Real nasty stuff. The plutonium of selectors.
|
|
105
|
+
// Ideally, nothing should live here. (Sadly this is an imperfect world).
|
|
106
|
+
// .t-trump {}
|
|
107
|
+
// @import 'loom/90-trumps';
|
|
108
|
+
// -----> ADD YOUR OWN TRUMPS HERE! :D
|
data/bin/console
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
|
|
3
|
+
require "bundler/setup"
|
|
4
|
+
require "loomcss"
|
|
5
|
+
|
|
6
|
+
# You can add fixtures and/or initialization code here to make experimenting
|
|
7
|
+
# with your gem easier. You can also use a different console, if you like.
|
|
8
|
+
|
|
9
|
+
# (If you use this, don't forget to add pry to your Gemfile!)
|
|
10
|
+
# require "pry"
|
|
11
|
+
# Pry.start
|
|
12
|
+
|
|
13
|
+
require "irb"
|
|
14
|
+
IRB.start
|
data/bin/setup
ADDED
data/gulpfile.js
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var gulp = require('gulp');
|
|
4
|
+
var sass = require('gulp-sass');
|
|
5
|
+
var sassdoc = require('sassdoc');
|
|
6
|
+
|
|
7
|
+
gulp.task('sass', function () {
|
|
8
|
+
return gulp.src('./assets/main.scss')
|
|
9
|
+
.pipe(sass().on('error', sass.logError))
|
|
10
|
+
.pipe(gulp.dest('./'));
|
|
11
|
+
});
|
|
12
|
+
|
|
13
|
+
gulp.task('sassdoc', function () {
|
|
14
|
+
return gulp.src('./assets/loom/**/*.scss')
|
|
15
|
+
.pipe(sassdoc({
|
|
16
|
+
dest: 'public/docs'
|
|
17
|
+
}));
|
|
18
|
+
});
|
|
19
|
+
|
|
20
|
+
gulp.task('watch', function() {
|
|
21
|
+
gulp.watch('./assets/loom/**/*.scss', ['sass', 'sassdoc']);
|
|
22
|
+
});
|
|
23
|
+
|
|
24
|
+
gulp.task('default', ['watch']);
|
data/index.html
ADDED
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html class="no-js" lang="">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="utf-8">
|
|
5
|
+
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
|
|
6
|
+
<title>Test library</title>
|
|
7
|
+
<meta name="description" content="">
|
|
8
|
+
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
9
|
+
|
|
10
|
+
<link rel="stylesheet" href="main.css">
|
|
11
|
+
</head>
|
|
12
|
+
<body>
|
|
13
|
+
|
|
14
|
+
<header class="o-container">
|
|
15
|
+
<h1>Loom's internal patterns</h1>
|
|
16
|
+
<p>Here are examples of all the bare HTML touched by the `40-base-elements` layer and examples of the Object classes that ship by default.</p>
|
|
17
|
+
</header>
|
|
18
|
+
|
|
19
|
+
<article class="o-container">
|
|
20
|
+
<h1>Headings</h1>
|
|
21
|
+
<p>Headings receive some light styling by default, but their styling can be removed comletely by flipping the <code class="u-display-inline">$LOOM-generate-sizes-for-base-headings</code> variable. </p>
|
|
22
|
+
<p>This is useful if you want to add styling manually and retain HTML headings for their semantic value.</p>
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
<h1>Heading 1</h1>
|
|
26
|
+
<h2>Heading 2</h2>
|
|
27
|
+
<h3>Heading 3</h3>
|
|
28
|
+
<h4>Heading 4</h4>
|
|
29
|
+
<h5>Heading 5</h5>
|
|
30
|
+
<h6>Heading 6</h6>
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
<p>Vidit assum prompta mel ex. <a href="http://google.com">Nec lorem volumus detraxit te</a>. Movet dolor quaerendum id eam, no quo ocurreret vulputate. Te quo facer graeci, at est mediocrem evertitur constituam, tempor impedit officiis mei in.</p>
|
|
34
|
+
|
|
35
|
+
<p>Dicit similique expetendis mea in, ei mel eleifend dissentiet, epicuri assueverit vim an. Viris maiorum postulant cu sit, mel cu habeo recusabo. Ius liber quaestio at, nam eu stet placerat oporteat. Eos eu dissentias contentiones, nemore feugiat eu qui. Harum dolore vim at, vulputate consectetuer sit et. Eum case eripuit interesset et, eam ad justo expetenda, usu enim quas dissentiet at.</p>
|
|
36
|
+
|
|
37
|
+
<p>Vel an solum debet, vis inani percipit ex, cum adhuc possit repudiare ei. Quis mazim mel cu, ei blandit phaedrum duo, accumsan suavitate urbanitas ex nam. Lobortis eleifend ad eum, his oratio nostrud sadipscing ei. Prima eligendi id eos, vel mandamus assueverit ex, duo hinc sensibus ex.</p>
|
|
38
|
+
|
|
39
|
+
<button class="o-button">
|
|
40
|
+
<svg class="o-icon" width="472" height="472" viewBox="0 0 472 472" xmlns="http://www.w3.org/2000/svg"><title>heart</title><path d="M433.601 67.001c-24.7-24.7-57.4-38.2-92.3-38.2s-67.7 13.6-92.4 38.3l-12.9 12.9-13.1-13.1c-24.7-24.7-57.6-38.4-92.5-38.4-34.8 0-67.6 13.6-92.2 38.2-24.7 24.7-38.3 57.5-38.2 92.4 0 34.9 13.7 67.6 38.4 92.3l187.8 187.8c2.6 2.6 6.1 4 9.5 4 3.4 0 6.9-1.3 9.5-3.9l188.2-187.5c24.7-24.7 38.3-57.5 38.3-92.4.1-34.9-13.4-67.7-38.1-92.4zm-19.2 165.7l-178.7 178-178.3-178.3c-19.6-19.6-30.4-45.6-30.4-73.3 0-27.7 10.7-53.7 30.3-73.2 19.5-19.5 45.5-30.3 73.1-30.3 27.7 0 53.8 10.8 73.4 30.4l22.6 22.6c5.3 5.3 13.8 5.3 19.1 0l22.4-22.4c19.6-19.6 45.7-30.4 73.3-30.4 27.6 0 53.6 10.8 73.2 30.3 19.6 19.6 30.3 45.6 30.3 73.3.1 27.7-10.7 53.7-30.3 73.3z" fill-rule="evenodd"/></svg>
|
|
41
|
+
<span class="o-button__label">Hello world!</span>
|
|
42
|
+
</button>
|
|
43
|
+
<button class="o-button-icon">
|
|
44
|
+
<svg class="o-icon" width="472" height="472" viewBox="0 0 472 472" xmlns="http://www.w3.org/2000/svg"><title>heart</title><path d="M433.601 67.001c-24.7-24.7-57.4-38.2-92.3-38.2s-67.7 13.6-92.4 38.3l-12.9 12.9-13.1-13.1c-24.7-24.7-57.6-38.4-92.5-38.4-34.8 0-67.6 13.6-92.2 38.2-24.7 24.7-38.3 57.5-38.2 92.4 0 34.9 13.7 67.6 38.4 92.3l187.8 187.8c2.6 2.6 6.1 4 9.5 4 3.4 0 6.9-1.3 9.5-3.9l188.2-187.5c24.7-24.7 38.3-57.5 38.3-92.4.1-34.9-13.4-67.7-38.1-92.4zm-19.2 165.7l-178.7 178-178.3-178.3c-19.6-19.6-30.4-45.6-30.4-73.3 0-27.7 10.7-53.7 30.3-73.2 19.5-19.5 45.5-30.3 73.1-30.3 27.7 0 53.8 10.8 73.4 30.4l22.6 22.6c5.3 5.3 13.8 5.3 19.1 0l22.4-22.4c19.6-19.6 45.7-30.4 73.3-30.4 27.6 0 53.6 10.8 73.2 30.3 19.6 19.6 30.3 45.6 30.3 73.3.1 27.7-10.7 53.7-30.3 73.3z" fill-rule="evenodd"/></svg>
|
|
45
|
+
</button>
|
|
46
|
+
<button class="o-button">Another button</button>
|
|
47
|
+
|
|
48
|
+
<h1 class="o-h1">Heading 1</h1>
|
|
49
|
+
<p>Lorem ipsum dolor sit amet, sea purto epicuri at. Recusabo voluptaria at vim, magna prompta ne pro. Duis quaestio eu nec. Cum tacimates perpetua no, solet viderer duo ut.</p>
|
|
50
|
+
</article>
|
|
51
|
+
|
|
52
|
+
<article class="o-container">
|
|
53
|
+
<h1 class="o-h1">Form items</h1>
|
|
54
|
+
<form>
|
|
55
|
+
<div>
|
|
56
|
+
<label for="inputA">Email</label>
|
|
57
|
+
<input type="text" id="inputA" placeholder="test@example.com">
|
|
58
|
+
</div>
|
|
59
|
+
|
|
60
|
+
<div>
|
|
61
|
+
<input type="checkbox" id="cbox2" value="second_checkbox"> <label for="cbox2">This is the second checkbox</label>
|
|
62
|
+
</div>
|
|
63
|
+
|
|
64
|
+
<div>
|
|
65
|
+
<label for="inputB">Select</label>
|
|
66
|
+
<select name="select" id="inputB">
|
|
67
|
+
<option value="value1">Value 1</option>
|
|
68
|
+
<option value="value2" selected>Value 2</option>
|
|
69
|
+
<option value="value3">Value 3</option>
|
|
70
|
+
</select>
|
|
71
|
+
</div>
|
|
72
|
+
</form>
|
|
73
|
+
</article>
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
<article class="o-container">
|
|
77
|
+
<h1 class="o-h1">Grid system</h1>
|
|
78
|
+
<div class="l-grid">
|
|
79
|
+
<div class="l-grid__item l-col-12-of-12">
|
|
80
|
+
12-of-12
|
|
81
|
+
</div>
|
|
82
|
+
<div class="l-grid__item l-col-6-of-12">
|
|
83
|
+
6-of-12
|
|
84
|
+
</div>
|
|
85
|
+
<div class="l-grid__item l-col-6-of-12">
|
|
86
|
+
6-of-12
|
|
87
|
+
</div>
|
|
88
|
+
</div>
|
|
89
|
+
</article>
|
|
90
|
+
|
|
91
|
+
<footer class="o-container">
|
|
92
|
+
<p>Copyright, trademark, lawyers etc.</p>
|
|
93
|
+
</footer>
|
|
94
|
+
|
|
95
|
+
<script src="js/main.js"></script>
|
|
96
|
+
</body>
|
|
97
|
+
</html>
|