@medyll/cssfabric 0.2.1-beta.1 → 0.2.1-beta.2

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 (118) hide show
  1. package/dist/css/base/base.css +47 -0
  2. package/dist/css/base/base.min.css +1 -0
  3. package/dist/{styles → css}/box/box.css +1494 -1494
  4. package/dist/{styles → css}/box/box.responsive.css +7034 -7034
  5. package/dist/{styles → css}/color/color.css +1564 -1564
  6. package/dist/{styles → css}/color/color.responsive.css +7779 -7779
  7. package/dist/{styles → css}/cssfabric.css +5145 -5306
  8. package/dist/css/cssfabric.min.css +4877 -0
  9. package/dist/{styles → css}/cssfabric.responsive.css +20400 -20400
  10. package/dist/{styles → css}/flex/flex.css +123 -123
  11. package/dist/{styles → css}/flex/flex.responsive.css +579 -579
  12. package/dist/{styles → css}/grid/grid.css +118 -118
  13. package/dist/{styles → css}/grid/grid.responsive.css +499 -499
  14. package/dist/{styles → css}/menu/menu.css +100 -100
  15. package/dist/{styles → css}/menu/menu.responsive.css +442 -442
  16. package/dist/{styles → css}/overflow/overflow.css +59 -59
  17. package/dist/{styles → css}/overflow/overflow.responsive.css +235 -235
  18. package/dist/{styles → css}/scale/scale.css +718 -718
  19. package/dist/{styles → css}/scale/scale.responsive.css +3249 -3249
  20. package/dist/{styles → css}/table/table.css +71 -71
  21. package/dist/{styles → css}/table/table.responsive.css +369 -369
  22. package/dist/{styles → css}/text/text.css +150 -150
  23. package/dist/{styles → css}/text/text.responsive.css +214 -214
  24. package/dist/{styles → css}/theme/theme.css +245 -245
  25. package/dist/{styles → css}/vars.css +410 -410
  26. package/dist/{styles → css}/zindex/zindex.css +42 -42
  27. package/dist/cssf/cssfLib.d.ts +5 -5
  28. package/dist/cssf/index.d.ts +6 -4
  29. package/dist/cssf/index.js +7 -4
  30. package/dist/{_generated → generated}/cssFabric.vars.json +12 -12
  31. package/dist/{_generated → generated}/cssFabric.vars.md +268 -268
  32. package/dist/index.d.ts +118 -1
  33. package/dist/index.js +119 -2
  34. package/dist/scripts/cssfabric.d.ts +6 -6
  35. package/dist/scripts/cssfabric.js +9 -9
  36. package/dist/scss/_utils.scss +203 -0
  37. package/dist/scss/index.d.ts +3 -0
  38. package/dist/scss/modules/_cssfabric-config.scss +178 -0
  39. package/dist/scss/modules/_mixins.scss +1 -0
  40. package/dist/scss/modules/animation/_animation-vars.scss +17 -0
  41. package/dist/scss/modules/animation/animation.scss +3 -0
  42. package/dist/scss/modules/base/_base-vars.scss +19 -0
  43. package/dist/scss/modules/base/base.scss +58 -0
  44. package/dist/scss/modules/box/_box-build.scss +305 -0
  45. package/dist/scss/modules/box/_box-vars.scss +121 -0
  46. package/dist/scss/modules/box/box-responsive.scss +18 -0
  47. package/dist/scss/modules/box/box.scss +3 -0
  48. package/dist/scss/modules/color/_color-build.scss +196 -0
  49. package/dist/scss/modules/color/_color-vars.scss +80 -0
  50. package/dist/scss/modules/color/color-responsive.scss +23 -0
  51. package/dist/scss/modules/color/color.scss +9 -0
  52. package/dist/scss/modules/css-fabric.scss +1 -0
  53. package/dist/scss/modules/flex/_flex-build.scss +150 -0
  54. package/dist/scss/modules/flex/_flex-vars.scss +84 -0
  55. package/dist/scss/modules/flex/flex-responsive.scss +25 -0
  56. package/dist/scss/modules/flex/flex.scss +3 -0
  57. package/dist/scss/modules/grid/_grid-build.scss +87 -0
  58. package/dist/scss/modules/grid/_grid-vars.scss +88 -0
  59. package/dist/scss/modules/grid/grid-responsive.scss +25 -0
  60. package/dist/scss/modules/grid/grid.scss +6 -0
  61. package/dist/scss/modules/menu/_menu-build.scss +120 -0
  62. package/dist/scss/modules/menu/_menu-vars.scss +29 -0
  63. package/dist/scss/modules/menu/menu-responsive.scss +19 -0
  64. package/dist/scss/modules/menu/menu.scss +6 -0
  65. package/dist/scss/modules/overflow/_overflow-build.scss +22 -0
  66. package/dist/scss/modules/overflow/_overflow-vars.scss +31 -0
  67. package/dist/scss/modules/overflow/overflow-responsive.scss +25 -0
  68. package/dist/scss/modules/overflow/overflow.scss +7 -0
  69. package/dist/scss/modules/scale/_scale-build.scss +142 -0
  70. package/dist/scss/modules/scale/_scale-vars.scss +84 -0
  71. package/dist/scss/modules/scale/scale-responsive.scss +23 -0
  72. package/dist/scss/modules/scale/scale.scss +8 -0
  73. package/dist/scss/modules/table/_table-build.scss +134 -0
  74. package/dist/scss/modules/table/_table-vars.scss +30 -0
  75. package/dist/scss/modules/table/table-responsive.scss +24 -0
  76. package/dist/scss/modules/table/table.scss +8 -0
  77. package/dist/scss/modules/text/_text-build.scss +166 -0
  78. package/dist/scss/modules/text/_text-vars.scss +87 -0
  79. package/dist/scss/modules/text/text-responsive.scss +26 -0
  80. package/dist/scss/modules/text/text.scss +6 -0
  81. package/dist/scss/modules/theme/_theme-build.scss +128 -0
  82. package/dist/scss/modules/theme/_theme-vars.scss +46 -0
  83. package/dist/scss/modules/theme/theme.scss +6 -0
  84. package/dist/scss/modules/vars.scss +46 -0
  85. package/dist/scss/modules/zindex/_zindex-vars.scss +14 -0
  86. package/dist/scss/modules/zindex/zindex.scss +15 -0
  87. package/package.json +6 -4
  88. package/dist/_generated/export.variables.md +0 -240
  89. package/dist/_generated/readme.md +0 -0
  90. package/dist/init/importCssVars.d.ts +0 -1
  91. package/dist/init/importCssVars.js +0 -2
  92. package/dist/styles/base/base.css +0 -208
  93. package/dist/styles/base/base.min.css +0 -1
  94. package/dist/styles/cssfabric.min.css +0 -1
  95. /package/dist/{styles → css}/animation/animation.css +0 -0
  96. /package/dist/{styles → css}/animation/animation.min.css +0 -0
  97. /package/dist/{styles → css}/box/box.min.css +0 -0
  98. /package/dist/{styles → css}/box/box.responsive.min.css +0 -0
  99. /package/dist/{styles → css}/color/color.min.css +0 -0
  100. /package/dist/{styles → css}/color/color.responsive.min.css +0 -0
  101. /package/dist/{styles → css}/cssfabric.responsive.min.css +0 -0
  102. /package/dist/{styles → css}/flex/flex.min.css +0 -0
  103. /package/dist/{styles → css}/flex/flex.responsive.min.css +0 -0
  104. /package/dist/{styles → css}/grid/grid.min.css +0 -0
  105. /package/dist/{styles → css}/grid/grid.responsive.min.css +0 -0
  106. /package/dist/{styles → css}/menu/menu.min.css +0 -0
  107. /package/dist/{styles → css}/menu/menu.responsive.min.css +0 -0
  108. /package/dist/{styles → css}/overflow/overflow.min.css +0 -0
  109. /package/dist/{styles → css}/overflow/overflow.responsive.min.css +0 -0
  110. /package/dist/{styles → css}/scale/scale.min.css +0 -0
  111. /package/dist/{styles → css}/scale/scale.responsive.min.css +0 -0
  112. /package/dist/{styles → css}/table/table.min.css +0 -0
  113. /package/dist/{styles → css}/table/table.responsive.min.css +0 -0
  114. /package/dist/{styles → css}/text/text.min.css +0 -0
  115. /package/dist/{styles → css}/text/text.responsive.min.css +0 -0
  116. /package/dist/{styles → css}/theme/theme.min.css +0 -0
  117. /package/dist/{styles → css}/vars.min.css +0 -0
  118. /package/dist/{styles → css}/zindex/zindex.min.css +0 -0
@@ -0,0 +1,18 @@
1
+
2
+ @use '../../_utils';
3
+ @use "_box-build" as build;
4
+ @use "../cssfabric-config";
5
+ // load general config variables
6
+ $config: cssfabric-config.$cssfabric-config;
7
+
8
+ $_media_quey_sizes: map-get($config, media_quey_sizes);
9
+
10
+ // responsive builder here
11
+ $min_value: 0;
12
+
13
+ @each $mq_size_key, $mq_size_value in $_media_quey_sizes {
14
+ @include utils.fabricResponsiveEncloser($mq_size_value, $min_value) {
15
+ @include build.buildBox($mq_size_key);
16
+ }
17
+ $min_value: $mq_size_value;
18
+ }
@@ -0,0 +1,3 @@
1
+ @use "_box-build" as build;
2
+ //
3
+ @include build.buildBox();
@@ -0,0 +1,196 @@
1
+ @use "sass:map";
2
+ @use 'color-vars';
3
+ @use "sass:math";
4
+ // load scss config file
5
+ @use '../../_utils';
6
+ @use '../cssfabric-config';
7
+
8
+ $color-config: color-vars.$color-config;
9
+
10
+ // COLOR TYPES
11
+ $color-types-config: map-get($color-config, color-types-config);
12
+ // COLOR SCHEMES
13
+ $color-schemes: map-get($color-config, scheme) !default;
14
+ // COLOR PALETTE
15
+ $color-palette: map-get($color-config, palette) !default;
16
+ // COLOR THEME
17
+ $color-theme: map-get($color-config, theme) !default;
18
+
19
+
20
+ // GRAYS
21
+ $color-gray-start: cssfabric-config.$gray-start !default;
22
+ $color-gray-end: cssfabric-config.$gray-end !default;
23
+ $color-gray-steps: cssfabric-config.$gray-steps !default;
24
+ $gray-schemes: utils.getGraySteps($color-gray-steps, $color-gray-start, $color-gray-end);
25
+
26
+
27
+
28
+
29
+
30
+ @function text-contrast($n) {
31
+ $color-brightness: round((red($n) * 299) + (green($n) * 587) + math.div(blue(#ffffff) * 114, 1000));
32
+ $light-color: round((red(#ffffff) * 299) + (green(#ffffff) * 587) + math.div(blue(#ffffff) * 114, 1000));
33
+ $color: black;
34
+
35
+ @if abs($color-brightness) < math.div($light-color,2) {
36
+ $color: white;
37
+ }
38
+
39
+ @return $color;
40
+ }
41
+
42
+ @mixin buildColorCssVars() {
43
+
44
+ /* color-scheme primary secondary tertiary */
45
+ @each $type-key, $type-prop in $color-schemes {
46
+ --color-scheme-#{$type-key} : #{$type-prop};
47
+ --color-scheme-#{$type-key}-light: #{utils.applyColorEffect('light',$type-prop)};
48
+ --color-scheme-#{$type-key}-dark: #{utils.applyColorEffect('dark',$type-prop)};
49
+ @include utils.alphaTize(--color-scheme-#{$type-key}, $type-prop);
50
+ }
51
+
52
+ /* color-palette */
53
+ @each $type-key, $type-prop in $color-palette {
54
+ --color-palette-#{$type-key} : #{$type-prop};
55
+ @include utils.alphaTize(--color-palette-#{$type-key}, $type-prop);
56
+
57
+ --color-palette-#{$type-key}-lighter: #{utils.applyColorEffect('lighter',$type-prop)};
58
+ --color-palette-#{$type-key}-light: #{utils.applyColorEffect('light',$type-prop)};
59
+ --color-palette-#{$type-key}-dark: #{utils.applyColorEffect('dark',$type-prop)};
60
+ --color-palette-#{$type-key}-darker: #{utils.applyColorEffect('darker',$type-prop)};
61
+
62
+ --color-palette-#{$type-key}-complement: #{utils.applyColorEffect('complement',$type-prop)};
63
+ @include utils.alphaTize(--color-palette-#{$type-key}-complement, utils.applyColorEffect('complement', $type-prop));
64
+
65
+ --color-palette-#{$type-key}-invert: #{utils.applyColorEffect('invert',$type-prop)};
66
+ @include utils.alphaTize(--color-palette-#{$type-key}-invert, utils.applyColorEffect('invert', $type-prop));
67
+ // backdrop-filter: blur(5px);
68
+ }
69
+
70
+ /* grays */
71
+ @each $type-key, $type-prop in $gray-schemes {
72
+ --color-gray-#{$type-key} : #{$type-prop};
73
+ @include utils.alphaTize(--color-gray-#{$type-key}, $type-prop);
74
+ }
75
+ }
76
+
77
+ @mixin colorFactory($tag_short, $color_prop) {
78
+ $switch-tag_short: utils.getColorPropertyType($tag_short);
79
+
80
+ @each $colorTint in (light lighter dark darker complement invert) {
81
+
82
+ $newColor: utils.applyColorEffect($colorTint, $color_prop);
83
+
84
+ &-#{$colorTint} {
85
+ @if $tag_short== "bg-themed" {
86
+ color: text-contrast($newColor);
87
+ }
88
+ #{$switch-tag_short}: $newColor;
89
+ }
90
+ }
91
+ }
92
+
93
+ @mixin fabricColors($color-type,$color-type-list, $color-type-key, $mq-key, $has-color-factory:null) {
94
+
95
+ $switch-tag_short: utils.getColorPropertyType($color-type-key);
96
+
97
+ $prop: "";
98
+
99
+ $property_key: #{$color-type-key}-#{$color-type} + if($mq-key, -#{$mq-key}, "");
100
+
101
+
102
+ .#{$property_key} {
103
+ @each $type-key, $type-prop in $color-type-list {
104
+ &#{"-" + $type-key} {
105
+
106
+ // border-color: ;
107
+ @if $color-type-key==border-color {
108
+ border-color: utils.applyColorEffect('dark', $type-prop) !important;
109
+ }
110
+
111
+ @if $color-type-key==foreground {
112
+ color: $type-prop;
113
+ @if $has-color-factory {
114
+ @include colorFactory($color-type-key, $type-prop);
115
+ }
116
+ }
117
+
118
+ @if $color-type-key==bg {
119
+ background-color: $type-prop;
120
+ @if $has-color-factory {
121
+ @include colorFactory($color-type-key, $type-prop);
122
+ }
123
+ }
124
+
125
+ @if $color-type-key == "bg-themed" {
126
+ color: text-contrast($type-prop);
127
+ text-shadow: 0 0 0.125rem utils.applyColorEffect("dark", $type-prop);
128
+ background-color: $type-prop;
129
+ @if $has-color-factory {
130
+ @include colorFactory($color-type-key, $type-prop);
131
+ }
132
+ }
133
+ }
134
+ }
135
+ }
136
+ }
137
+
138
+ @mixin buildColor($mq_size_key:null) {
139
+ // "foreground" ,
140
+ // "bg",
141
+ // "bg-themed",
142
+ // "border-color"
143
+
144
+ // $has-color-palette
145
+ @if ((cssfabric-config.$has-color-palette==true) or ($mq_size_key!=null and cssfabric-config.$has-color-palette-responsive==true)) {
146
+ // $has-color-foreground
147
+ @if (cssfabric-config.$has-color-foreground) {
148
+ @include fabricColors("palette", $color-palette, foreground, $mq_size_key, true);
149
+ }
150
+ // $has-color-bg
151
+ @if (cssfabric-config.$has-color-bg) {
152
+ @include fabricColors("palette", $color-palette, bg, $mq_size_key, true);
153
+ }
154
+ // $has-color-bg-themed
155
+ @if (cssfabric-config.$has-color-bg-themed) {
156
+ @include fabricColors("palette", $color-palette, bg-themed, $mq_size_key, true);
157
+ }
158
+ // $has-color-border
159
+ @if (cssfabric-config.$has-color-border) {
160
+ @include fabricColors("palette", $color-palette, border-color, $mq_size_key, true);
161
+ }
162
+ }
163
+
164
+ // $has-color-scheme
165
+ @if ((cssfabric-config.$has-color-scheme==true) or ($mq_size_key!=null and cssfabric-config.$has-color-scheme-responsive==true)) {
166
+ @if (cssfabric-config.$has-color-foreground) {
167
+ @include fabricColors("scheme", $color-schemes, foreground, $mq_size_key, true);
168
+ }
169
+ @if (cssfabric-config.$has-color-bg) {
170
+ @include fabricColors("scheme", $color-schemes, bg, $mq_size_key, true);
171
+ }
172
+ @if (cssfabric-config.$has-color-bg-themed) {
173
+ @include fabricColors("palette", $color-schemes, bg-themed, $mq_size_key, true);
174
+ }
175
+ @if (cssfabric-config.$has-color-border) {
176
+ @include fabricColors("scheme", $color-schemes, border-color, $mq_size_key);
177
+ }
178
+ }
179
+
180
+ // $has-color-gray
181
+ @if ((cssfabric-config.$has-color-gray==true) or ($mq_size_key!=null and cssfabric-config.$has-color-gray-responsive==true)) {
182
+ @if (cssfabric-config.$has-color-foreground) {
183
+ @include fabricColors("grey", $gray-schemes, foreground, $mq_size_key, true);
184
+ }
185
+ @if (cssfabric-config.$has-color-bg) {
186
+ @include fabricColors("grey", $gray-schemes, bg, $mq_size_key, true);
187
+ }
188
+ @if (cssfabric-config.$has-color-bg-themed) {
189
+ @include fabricColors("palette", $gray-schemes, bg-themed, $mq_size_key, true);
190
+ }
191
+ @if (cssfabric-config.$has-color-border) {
192
+ @include fabricColors("grey", $gray-schemes, border-color, $mq_size_key);
193
+ }
194
+ }
195
+
196
+ }
@@ -0,0 +1,80 @@
1
+ @use '../../_utils';
2
+
3
+ $_color-types-config: (color bg bg-themed border-color);
4
+ $_color-tint: (_ lighter light dark darker complement); // invert
5
+
6
+ $color-metadata: (
7
+ title: color,
8
+ title_tag: "its about colors",
9
+ description: "cssfabric color system: its about colors"
10
+ );
11
+ $color-config: (
12
+ gray-config: utils.get_fabric_conf(gray-config),
13
+ color-types-config: $_color-types-config,
14
+ theme: utils.get_fabric_conf(theme),
15
+ scheme: utils.get_fabric_conf(scheme),
16
+ palette: utils.get_fabric_conf(palette),
17
+ gray: utils.get_fabric_conf(gray)
18
+ );
19
+
20
+ $color-docs: (
21
+ attributes: (
22
+ color: (
23
+ tag: color,
24
+ keys: (
25
+ scheme palette gray
26
+ ),
27
+ levelsLinked: (
28
+ scheme: utils.getObjectKeys(utils.get_fabric_conf(scheme)),
29
+ palette: utils.getObjectKeys(utils.get_fabric_conf(palette)),
30
+ gray: utils.getObjectKeys(utils.get_fabric_conf(gray))
31
+ ),
32
+ levelsDeclin: (
33
+ palette: $_color-tint
34
+ ),
35
+ about: "color for text level html elements"
36
+ ),
37
+ background-color: (
38
+ tag: bg,
39
+ keys: (
40
+ scheme palette gray
41
+ ),
42
+ levelsLinked: (
43
+ scheme: utils.getObjectKeys(utils.get_fabric_conf(scheme)),
44
+ palette: utils.getObjectKeys(utils.get_fabric_conf(palette)),
45
+ gray: utils.getObjectKeys(utils.get_fabric_conf(gray)) // prefix with gray
46
+ ),
47
+ levelsDeclin: (
48
+ palette: $_color-tint
49
+ ),
50
+ about: "background colors"
51
+ ),
52
+ background-themed: (
53
+ tag: "bg-themed",
54
+ keys: (
55
+ scheme palette gray
56
+ ),
57
+ levelsLinked: (
58
+ gray: utils.getObjectKeys(utils.get_fabric_conf(gray)),
59
+ scheme: utils.getObjectKeys(utils.get_fabric_conf(scheme)),
60
+ palette: utils.getObjectKeys(utils.get_fabric_conf(palette))
61
+ ),
62
+ levelsDeclin: (
63
+ palette: $_color-tint
64
+ ),
65
+ about: "same as background-color, but with added contrasted color to text"
66
+ ),
67
+ border-color: (
68
+ tag: border-color,
69
+ keys: (
70
+ palette gray
71
+ ),
72
+ levelsLinked: (
73
+ gray: utils.getObjectKeys(utils.get_fabric_conf(gray)),
74
+ scheme: utils.getObjectKeys(utils.get_fabric_conf(scheme)),
75
+ palette: utils.getObjectKeys(utils.get_fabric_conf(palette))
76
+ ),
77
+ about: "border colors are slightly darker to maximize surrounding effect"
78
+ )
79
+ )
80
+ );
@@ -0,0 +1,23 @@
1
+
2
+ @use "sass:map";
3
+ // load scss config file
4
+ @use '../../_utils';
5
+ @use 'color-build' as build;
6
+ @use "../cssfabric-config";
7
+ // load general config variables
8
+ $config: cssfabric-config.$cssfabric-config;
9
+
10
+ // load general config variables
11
+ // media queries sizes, in rem
12
+ $_media_quey_sizes: map-get($config, media_quey_sizes);
13
+
14
+ // builder responsive
15
+ $min_value: 0;
16
+
17
+ @each $mq_size_key,
18
+ $mq_size_value in $_media_quey_sizes {
19
+ @include utils.fabricResponsiveEncloser($mq_size_value,$min_value) {
20
+ @include build.buildColor($mq_size_key);
21
+ }
22
+ $min_value: $mq_size_value;
23
+ }
@@ -0,0 +1,9 @@
1
+
2
+
3
+ @use '../../_utils';
4
+ @use '_color-build' as build;
5
+
6
+
7
+ @include build.buildColor(null);
8
+
9
+
@@ -0,0 +1 @@
1
+ // old name css-fabric.scss
@@ -0,0 +1,150 @@
1
+ // load scss config file
2
+ @use '../../_utils';
3
+ @use '../cssfabric-config' as cssfabric-vars;
4
+ @use 'flex-vars';
5
+
6
+ $flex-config: flex-vars.$flex-config;
7
+ $cssfabric-config: cssfabric-vars.$cssfabric-config;
8
+
9
+ $sep: map-get($cssfabric-config, sep);
10
+ // read variables
11
+ $grid-code: map-get($flex-config, moduleNameShort);
12
+ $grid-h: map-get($flex-config, horCode);
13
+ $grid-v: map-get($flex-config, vertCode);
14
+
15
+ $cssProps: map-get($flex-config, cssProps);
16
+ $cssItemsProps: map-get($flex-config, cssItemsProps);
17
+
18
+ $gridFullWidth: map-get($flex-config, gridFullWidth);
19
+
20
+ $grow-shrink-steps: map-get($flex-config, grow-shrink-steps);
21
+
22
+ $grid-code-sep: #{$grid-code}#{$sep};
23
+
24
+ @mixin makeGrid($mqKey) {
25
+ $prefix: if($mqKey, #{$grid-code}-#{$mqKey}, #{$grid-code});
26
+ $h_prop: #{$prefix}#{$sep}#{$grid-h};
27
+ $v_prop: #{$prefix}#{$sep}#{$grid-v};
28
+
29
+ %flex {
30
+ display: flex;
31
+ }
32
+
33
+ .#{$grid-code},
34
+ .#{$h_prop} {
35
+ display: flex;
36
+ flex-direction: row;
37
+
38
+ & > .#{$grid-code-sep}#{$gridFullWidth} {
39
+ flex: 1 1 0;
40
+ }
41
+
42
+ &.#{$grid-code-sep}align-middle {
43
+ align-items: center;
44
+ }
45
+
46
+ &.#{$grid-code-sep}align-top {
47
+ align-items: flex-start;
48
+ }
49
+
50
+ &.#{$grid-code-sep}align-left {
51
+ align-items: flex-start;
52
+ }
53
+
54
+ &.#{$grid-code-sep}align-right {
55
+ justify-content: flex-end;
56
+ }
57
+
58
+ &.#{$grid-code-sep}align-bottom {
59
+ align-items: flex-end;
60
+ }
61
+
62
+ &.#{$grid-code-sep}align-center {
63
+ justify-content: center;
64
+ }
65
+
66
+ &.#{$grid-code-sep}align-middle-center {
67
+ justify-content: center;
68
+ align-content: center;
69
+ align-items: center;
70
+ }
71
+
72
+ &.#{$grid-code-sep}align-stretch {
73
+ color: blue;
74
+ align-items: stretch;
75
+ }
76
+ }
77
+
78
+ .#{$v_prop} {
79
+ display: flex;
80
+ flex-direction: column;
81
+
82
+ & > .#{$grid-code-sep}#{$gridFullWidth} {
83
+ flex: 1 1 0;
84
+ max-height: 100%;
85
+ }
86
+
87
+ &.#{$grid-code-sep}align-middle {
88
+ justify-content: center;
89
+ }
90
+
91
+ &.#{$grid-code-sep}align-top {
92
+ justify-content: flex-start;
93
+ }
94
+
95
+ &.#{$grid-code-sep}align-left {
96
+ align-items: flex-start;
97
+ }
98
+
99
+ &.#{$grid-code-sep}align-right {
100
+ align-items: flex-end;
101
+ }
102
+
103
+ &.#{$grid-code-sep}align-bottom {
104
+ justify-content: flex-end;
105
+ }
106
+
107
+ &.#{$grid-code-sep}align-center {
108
+ align-items: center;
109
+ }
110
+
111
+ &.#{$grid-code-sep}align-middle-center {
112
+ align-items: center;
113
+ justify-content: center;
114
+ }
115
+
116
+ &.#{$grid-code-sep}align-stretch {
117
+ color: red;
118
+ align-items: stretch;
119
+ }
120
+ }
121
+
122
+
123
+ .#{$grid-code-sep}inline {
124
+ display: inline-flex;
125
+ }
126
+
127
+ // wrap rules
128
+ .#{$grid-code} {
129
+ @each $fabricRule, $value in map-get($cssProps, flexWrap) {
130
+ @include utils.fabricAttributes('&'+$sep, $fabricRule, 'flex-wrap', $value);
131
+ }
132
+ }
133
+
134
+ // align-self rules for children */
135
+ .self {
136
+ @each $fabricRule, $value in map-get($cssItemsProps, self) {
137
+ @include utils.fabricAttributes('&-', $fabricRule, 'align-self', $value);
138
+ }
139
+ }
140
+ @for $i from 0 through $grow-shrink-steps {
141
+ .#{$grid-code-sep}grow#{$sep}#{$i} {
142
+ flex-grow: #{$i};
143
+ }
144
+
145
+ .#{$grid-code-sep}shrink#{$sep}#{$i} {
146
+ flex-shrink: $i;
147
+ }
148
+ }
149
+
150
+ }
@@ -0,0 +1,84 @@
1
+ @use '../../utils';
2
+
3
+
4
+ $_grow-shrink-steps: 2;
5
+
6
+
7
+ $_grid-align: (top middle bottom left right center middle-center stretch);
8
+
9
+ $_classNames: (
10
+ wrap: wrap,
11
+ wrap-reverse: wrap-reverse
12
+ );
13
+
14
+ $_cssProps: (
15
+ flexWrap: (
16
+ wrap: wrap,
17
+ wrap-reverse: wrap-reverse
18
+ ),
19
+ grid-justify: (
20
+ start: flex-start,
21
+ end: flex-end,
22
+ between: space-between,
23
+ stretch: stretch,
24
+ center: flex-center
25
+ ),
26
+ grid-items: (
27
+ baseline: baseline,
28
+ stretch: stretch,
29
+ start: flex-start,
30
+ center: center,
31
+ end: flex-end
32
+ ),
33
+ grid-content: (
34
+ start: flex-start,
35
+ center: center,
36
+ end: flex-end,
37
+ between: space-between,
38
+ equal: space-evenly
39
+ )
40
+ );
41
+
42
+ $_cssItemsProps: (
43
+ self: (
44
+ start: flex-start,
45
+ end: flex-end,
46
+ stretch: stretch
47
+ )
48
+ );
49
+
50
+ $flex-metadata: (
51
+ title: "flex",
52
+ tag: "flex",
53
+ description: "cssfabric flex system module"
54
+ );
55
+
56
+ $flex-config: (
57
+ moduleName: flex,
58
+ moduleNameShort: flex,
59
+ horCode: h,
60
+ vertCode: v,
61
+ gridFullWidth: main,
62
+ grow-shrink-steps:$_grow-shrink-steps,
63
+ cssProps: $_cssProps,
64
+ cssItemsProps: $_cssItemsProps
65
+ );
66
+
67
+ $flex-docs: (// add align-middle non generated className // grow + shrink
68
+ attributes:(
69
+ grid:(
70
+ tag: flex,
71
+ keys: (v, h),
72
+ classNames: (
73
+ align: $_grid-align,
74
+ grid:utils.getObjectKeys(map-get($_cssProps, flexWrap)), // add inline !
75
+ ),
76
+ about: "a classic flex grid system, and hey, it gets height !"
77
+ ),
78
+ self:(
79
+ tag: self,
80
+ keys: utils.getObjectKeys(map-get($_cssItemsProps, self)),
81
+ about: "flex children specific classnames"
82
+ )
83
+ )
84
+ );
@@ -0,0 +1,25 @@
1
+
2
+
3
+ // load scss config file
4
+ @use '../../_utils';
5
+ @use '_flex-build' as build;
6
+ @use "../cssfabric-config";
7
+ // load general config variables
8
+ $config: cssfabric-config.$cssfabric-config;
9
+
10
+ // load general config variables
11
+ // media queries sizes, in rem
12
+ $_media_quey_sizes: map-get($config, media_quey_sizes);
13
+
14
+
15
+ // builder responsive
16
+ $min_value: 0;
17
+
18
+ @each $mq_size_key,
19
+ $mq_size_value in $_media_quey_sizes {
20
+ @include utils.fabricResponsiveEncloser($mq_size_value,$min_value) {
21
+ @include build.makeGrid($mq_size_key);
22
+ }
23
+ $min_value: $mq_size_value;
24
+ }
25
+
@@ -0,0 +1,3 @@
1
+ @use '_flex-build' as build;
2
+
3
+ @include build.makeGrid(null);
@@ -0,0 +1,87 @@
1
+ // load scss config file
2
+ @use '../../_utils';
3
+ @use '../cssfabric-config';
4
+ @use 'grid-vars';
5
+
6
+ $grid-config: grid-vars.$grid-config;
7
+ $cssfabric-config: cssfabric-config.$cssfabric-config;
8
+
9
+ $sep: map-get($cssfabric-config, sep);
10
+ // read variables
11
+ $grid-code: map-get($grid-config, moduleNameShort);
12
+ $grid-h: map-get($grid-config, horCode);
13
+ $grid-v: map-get($grid-config, vertCode);
14
+
15
+ $cssProps: map-get($grid-config, cssProps);
16
+ $cssItemsProps: map-get($grid-config, cssItemsProps);
17
+
18
+ $gridFullWidth: map-get($grid-config, gridFullWidth);
19
+
20
+ $grow-shrink-steps: map-get($grid-config, grow-shrink-steps);
21
+
22
+ $grid-max-cols: map-get($grid-config, grid-max-cols);
23
+ $grid-max-rows: map-get($grid-config, grid-max-rows);
24
+
25
+ $grid-code-sep: #{$grid-code}#{$sep};
26
+
27
+ //
28
+ @mixin makeGrid($mqKey) {
29
+ $prefix: if($mqKey, #{$grid-code}-#{$mqKey}, #{$grid-code});
30
+ $h_prop: #{$prefix}#{$sep}#{$grid-h};
31
+ $v_prop: #{$prefix}#{$sep}#{$grid-v};
32
+
33
+ .#{$prefix} {
34
+ display: grid;
35
+ &-auto-flow-cols {
36
+ grid-auto-flow: column;
37
+ }
38
+ &-auto-cols-auto {
39
+ grid-auto-columns: auto;
40
+ }
41
+ &-auto-cols-min {
42
+ grid-auto-columns: min-content;
43
+ }
44
+ &-auto-cols-max {
45
+ grid-auto-columns: max-content;
46
+ }
47
+ &-auto-cols {
48
+ grid-auto-columns: minmax(0, 1fr);
49
+ }
50
+
51
+ &-auto-flow-rows {
52
+ grid-auto-flow: row;
53
+ }
54
+ &-auto-rows-auto {
55
+ grid-auto-rows: auto;
56
+ }
57
+ &-auto-rows-min {
58
+ grid-auto-rows: min-content;
59
+ }
60
+ &-auto-rows-max {
61
+ grid-auto-rows: max-content;
62
+ }
63
+ &-auto-rows {
64
+ grid-auto-rows: minmax(0, 1fr);
65
+ }
66
+
67
+
68
+ }
69
+
70
+ .#{$grid-code-sep}inline {
71
+ display: inline-grid;
72
+ }
73
+
74
+
75
+ /* template-columns */
76
+ @for $col-row from 1 through $grid-max-cols {
77
+ .#{$prefix}-cols-#{$col-row} {
78
+ grid-template-columns: repeat(#{$col-row}, minmax(0, 1fr));
79
+ }
80
+ }
81
+ /* template-rows */
82
+ @for $col-row from 1 through $grid-max-rows {
83
+ .#{$prefix}-rows-#{$col-row} {
84
+ grid-template-rows: repeat(#{$col-row}, minmax(0, 1fr));
85
+ }
86
+ }
87
+ }