@medyll/cssfabric 0.2.0 → 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 (173) hide show
  1. package/README.md +58 -38
  2. package/dist/NewMenu.svelte +41 -0
  3. package/dist/NewMenu.svelte.d.ts +19 -0
  4. package/dist/css/animation/animation.css +2 -0
  5. package/dist/css/base/base.css +47 -0
  6. package/dist/css/base/base.min.css +1 -0
  7. package/{styles → dist/css}/box/box.css +118 -0
  8. package/dist/css/box/box.min.css +1 -0
  9. package/{styles → dist/css}/box/box.responsive.css +3063 -1550
  10. package/dist/css/box/box.responsive.min.css +1 -0
  11. package/{styles → dist/css}/color/color.css +11 -9
  12. package/{styles → dist/css}/color/color.responsive.css +3446 -1932
  13. package/dist/css/color/color.responsive.min.css +1 -0
  14. package/dist/css/cssfabric.css +5167 -0
  15. package/dist/css/cssfabric.min.css +4877 -0
  16. package/dist/css/cssfabric.responsive.css +20419 -0
  17. package/dist/css/cssfabric.responsive.min.css +1 -0
  18. package/{styles → dist/css}/flex/flex.css +2 -0
  19. package/{styles → dist/css}/flex/flex.responsive.css +192 -114
  20. package/dist/css/flex/flex.responsive.min.css +1 -0
  21. package/{styles → dist/css}/grid/grid.css +2 -0
  22. package/{styles → dist/css}/grid/grid.responsive.css +230 -212
  23. package/dist/css/grid/grid.responsive.min.css +1 -0
  24. package/{styles → dist/css}/menu/menu.css +2 -0
  25. package/{styles → dist/css}/menu/menu.responsive.css +165 -78
  26. package/dist/css/menu/menu.responsive.min.css +1 -0
  27. package/{styles → dist/css}/overflow/overflow.css +2 -0
  28. package/{styles → dist/css}/overflow/overflow.responsive.css +98 -105
  29. package/dist/css/overflow/overflow.responsive.min.css +1 -0
  30. package/{styles → dist/css}/scale/scale.css +2 -0
  31. package/{styles → dist/css}/scale/scale.responsive.css +1520 -1152
  32. package/dist/css/scale/scale.responsive.min.css +1 -0
  33. package/{styles → dist/css}/table/table.css +2 -0
  34. package/{styles → dist/css}/table/table.responsive.css +162 -86
  35. package/dist/css/table/table.responsive.min.css +1 -0
  36. package/{styles → dist/css}/text/text.css +2 -0
  37. package/{styles → dist/css}/text/text.responsive.css +76 -55
  38. package/dist/css/text/text.responsive.min.css +1 -0
  39. package/{styles → dist/css}/theme/theme.css +51 -0
  40. package/{styles → dist/css}/theme/theme.min.css +1 -1
  41. package/{styles → dist/css}/vars.css +66 -67
  42. package/dist/css/vars.min.css +1 -0
  43. package/{styles → dist/css}/zindex/zindex.css +2 -0
  44. package/dist/cssFabric/config.d.ts +29 -0
  45. package/dist/cssFabric/config.js +29 -0
  46. package/dist/cssFabric/cssFabricSheet.d.ts +1226 -0
  47. package/dist/cssFabric/cssFabricSheet.js +1270 -0
  48. package/dist/cssFabric/cssProperties.d.ts +27 -0
  49. package/dist/cssFabric/cssProperties.js +343 -0
  50. package/dist/cssFabric/cssVariationsAi.d.ts +12 -0
  51. package/dist/cssFabric/cssVariationsAi.js +111 -0
  52. package/dist/cssFabric/index.d.ts +113 -0
  53. package/dist/cssFabric/index.js +341 -0
  54. package/dist/cssf/README.md +197 -0
  55. package/{init/importCssVars.d.ts → dist/cssf/cssf.d.ts} +1 -1
  56. package/dist/cssf/cssf.js +12 -0
  57. package/dist/cssf/cssfGuide.d.ts +14 -0
  58. package/dist/cssf/cssfGuide.js +50 -0
  59. package/dist/cssf/cssfLib.d.ts +134 -0
  60. package/dist/cssf/cssfLib.js +116 -0
  61. package/dist/cssf/cssfModel.d.ts +8 -0
  62. package/dist/cssf/cssfModel.js +59 -0
  63. package/dist/cssf/cssfPlugin.d.ts +3 -0
  64. package/dist/cssf/cssfPlugin.js +37 -0
  65. package/dist/cssf/cssfTransformer.d.ts +2 -0
  66. package/dist/cssf/cssfTransformer.js +100 -0
  67. package/dist/cssf/index.d.ts +6 -0
  68. package/dist/cssf/index.js +7 -0
  69. package/dist/cssfVsCode/.vscode/launch.json +17 -0
  70. package/dist/cssfVsCode/.vscodeignore +4 -0
  71. package/dist/cssfVsCode/CHANGELOG.md +9 -0
  72. package/dist/cssfVsCode/README.md +65 -0
  73. package/dist/cssfVsCode/language-configuration.json +36 -0
  74. package/dist/cssfVsCode/package.json +40 -0
  75. package/dist/cssfVsCode/syntaxes/cssf.tmLanguage.json +1868 -0
  76. package/dist/cssfVsCode/test.cssf +6 -0
  77. package/dist/cssfVsCode/vsc-extension-quickstart.md +29 -0
  78. package/{_generated → dist/generated}/cssFabric.vars.json +4 -4
  79. package/{_generated/export.variables.md → dist/generated/cssFabric.vars.md} +268 -240
  80. package/dist/index.d.ts +119 -0
  81. package/dist/index.js +120 -0
  82. package/dist/scripts/cssfabric.d.ts +24 -0
  83. package/{scripts → dist/scripts}/cssfabric.js +43 -43
  84. package/{scripts → dist/scripts}/cssfabricClassNames.d.ts +14 -14
  85. package/{scripts → dist/scripts}/cssfabricClassNames.js +146 -146
  86. package/dist/scripts/index.d.ts +2 -0
  87. package/{scripts → dist/scripts}/index.js +4 -4
  88. package/{scripts → dist/scripts}/utils.d.ts +5 -5
  89. package/{scripts → dist/scripts}/utils.js +38 -38
  90. package/dist/scss/_utils.scss +203 -0
  91. package/dist/scss/modules/_cssfabric-config.scss +178 -0
  92. package/dist/scss/modules/_mixins.scss +1 -0
  93. package/dist/scss/modules/animation/_animation-vars.scss +17 -0
  94. package/dist/scss/modules/animation/animation.scss +3 -0
  95. package/dist/scss/modules/base/_base-vars.scss +19 -0
  96. package/dist/scss/modules/base/base.scss +58 -0
  97. package/dist/scss/modules/box/_box-build.scss +305 -0
  98. package/dist/scss/modules/box/_box-vars.scss +121 -0
  99. package/dist/scss/modules/box/box-responsive.scss +18 -0
  100. package/dist/scss/modules/box/box.scss +3 -0
  101. package/dist/scss/modules/color/_color-build.scss +196 -0
  102. package/dist/scss/modules/color/_color-vars.scss +80 -0
  103. package/dist/scss/modules/color/color-responsive.scss +23 -0
  104. package/dist/scss/modules/color/color.scss +9 -0
  105. package/dist/scss/modules/css-fabric.scss +1 -0
  106. package/dist/scss/modules/flex/_flex-build.scss +150 -0
  107. package/dist/scss/modules/flex/_flex-vars.scss +84 -0
  108. package/dist/scss/modules/flex/flex-responsive.scss +25 -0
  109. package/dist/scss/modules/flex/flex.scss +3 -0
  110. package/dist/scss/modules/grid/_grid-build.scss +87 -0
  111. package/dist/scss/modules/grid/_grid-vars.scss +88 -0
  112. package/dist/scss/modules/grid/grid-responsive.scss +25 -0
  113. package/dist/scss/modules/grid/grid.scss +6 -0
  114. package/dist/scss/modules/menu/_menu-build.scss +120 -0
  115. package/dist/scss/modules/menu/_menu-vars.scss +29 -0
  116. package/dist/scss/modules/menu/menu-responsive.scss +19 -0
  117. package/dist/scss/modules/menu/menu.scss +6 -0
  118. package/dist/scss/modules/overflow/_overflow-build.scss +22 -0
  119. package/dist/scss/modules/overflow/_overflow-vars.scss +31 -0
  120. package/dist/scss/modules/overflow/overflow-responsive.scss +25 -0
  121. package/dist/scss/modules/overflow/overflow.scss +7 -0
  122. package/dist/scss/modules/scale/_scale-build.scss +142 -0
  123. package/dist/scss/modules/scale/_scale-vars.scss +84 -0
  124. package/dist/scss/modules/scale/scale-responsive.scss +23 -0
  125. package/dist/scss/modules/scale/scale.scss +8 -0
  126. package/dist/scss/modules/table/_table-build.scss +134 -0
  127. package/dist/scss/modules/table/_table-vars.scss +30 -0
  128. package/dist/scss/modules/table/table-responsive.scss +24 -0
  129. package/dist/scss/modules/table/table.scss +8 -0
  130. package/dist/scss/modules/text/_text-build.scss +166 -0
  131. package/dist/scss/modules/text/_text-vars.scss +87 -0
  132. package/dist/scss/modules/text/text-responsive.scss +26 -0
  133. package/dist/scss/modules/text/text.scss +6 -0
  134. package/dist/scss/modules/theme/_theme-build.scss +128 -0
  135. package/dist/scss/modules/theme/_theme-vars.scss +46 -0
  136. package/dist/scss/modules/theme/theme.scss +6 -0
  137. package/dist/scss/modules/vars.scss +46 -0
  138. package/dist/scss/modules/zindex/_zindex-vars.scss +14 -0
  139. package/dist/scss/modules/zindex/zindex.scss +15 -0
  140. package/package.json +70 -113
  141. package/_generated/readme.md +0 -0
  142. package/init/importCssVars.js +0 -2
  143. package/scripts/cssfabric.d.ts +0 -24
  144. package/scripts/index.d.ts +0 -2
  145. package/styles/animation/animation.css +0 -0
  146. package/styles/base/base.css +0 -215
  147. package/styles/base/base.min.css +0 -1
  148. package/styles/box/box.min.css +0 -1
  149. package/styles/box/box.responsive.min.css +0 -1
  150. package/styles/color/color.responsive.min.css +0 -1
  151. package/styles/cssfabric.css +0 -61792
  152. package/styles/cssfabric.min.css +0 -168
  153. package/styles/cssfabric.responsive.css +0 -200596
  154. package/styles/cssfabric.responsive.min.css +0 -108
  155. package/styles/flex/flex.responsive.min.css +0 -1
  156. package/styles/grid/grid.responsive.min.css +0 -1
  157. package/styles/menu/menu.responsive.min.css +0 -1
  158. package/styles/overflow/overflow.responsive.min.css +0 -1
  159. package/styles/scale/scale.responsive.min.css +0 -1
  160. package/styles/table/table.responsive.min.css +0 -1
  161. package/styles/text/text.responsive.min.css +0 -1
  162. package/styles/vars.min.css +0 -1
  163. /package/{styles → dist/css}/animation/animation.min.css +0 -0
  164. /package/{styles → dist/css}/color/color.min.css +0 -0
  165. /package/{styles → dist/css}/flex/flex.min.css +0 -0
  166. /package/{styles → dist/css}/grid/grid.min.css +0 -0
  167. /package/{styles → dist/css}/menu/menu.min.css +0 -0
  168. /package/{styles → dist/css}/overflow/overflow.min.css +0 -0
  169. /package/{styles → dist/css}/scale/scale.min.css +0 -0
  170. /package/{styles → dist/css}/table/table.min.css +0 -0
  171. /package/{styles → dist/css}/text/text.min.css +0 -0
  172. /package/{styles → dist/css}/zindex/zindex.min.css +0 -0
  173. /package/{_generated → dist/scss}/index.d.ts +0 -0
@@ -0,0 +1,120 @@
1
+ @use 'menu-vars';
2
+ @use '../../_utils';
3
+
4
+ $menu-config: menu-vars.$menu-config;
5
+
6
+ // read variables
7
+ $menu_class_name: map-get($menu-config, menu_class_name);
8
+ $menu_class_name_short: map-get($menu-config, menu_class_name_short);
9
+
10
+ $menu_item_class_name: map-get($menu-config, menu_item_class_name);
11
+ $menu_item_class_name_short: map-get($menu-config, menu_item_class_name_short);
12
+
13
+ $orientations: map-get($menu-config, orientations);
14
+ $menu_item_disabled_tag: map-get($menu-config, menu_item_disabled_tag);
15
+ $menu_item_selected_tag: map-get($menu-config, menu_item_selected_tag);
16
+
17
+ $menu_dropdown_tag: map-get($menu-config, menu_dropdown_tag);
18
+ $menu_dropdown_open: map-get($menu-config, menu_dropdown_open);
19
+ $menu_dropdown_close: map-get($menu-config, menu_dropdown_close);
20
+
21
+ @mixin buildMenu($mq_key) {
22
+ $class_name: if($mq_key, #{$menu_class_name}-#{$mq_key}, #{$menu_class_name});
23
+
24
+ #{$menu_class_name_short} {
25
+ &.#{$class_name} {
26
+ list-style: none;
27
+ list-style-type: none;
28
+
29
+
30
+ @each $orientation_key, $orientation in $orientations {
31
+
32
+ &-#{$orientation_key} {
33
+ padding: 0;
34
+ margin: 0;
35
+ line-height: var(--box-density-2);
36
+
37
+ & li.#{$menu_item_class_name},
38
+ li {
39
+ display: block;
40
+ margin: 0;
41
+ width: auto;
42
+ transition-property: all;
43
+ transition-duration: 0.15s;
44
+ padding: var(--box-density-1);
45
+ border-left: 1px solid var( --theme-color-border );
46
+
47
+ &:hover {
48
+ border-radius: var(--radius-small);
49
+ background-color: #ededed;
50
+ border-left: 1px solid var(--theme-color-primary);
51
+ }
52
+
53
+ &.active {
54
+ border-radius: var(--radius-small);
55
+ background-color: #ededed;
56
+ font-weight: bold;
57
+ }
58
+
59
+ &.menu-small {
60
+ //
61
+ }
62
+ }
63
+
64
+ & li {
65
+ list-style: none;
66
+ }
67
+ }
68
+ }
69
+
70
+ &-v {
71
+ & li.#{$menu_item_class_name},
72
+ li {
73
+ &.active {
74
+ font-weight: bold;
75
+ margin-left: 1rem;
76
+ }
77
+
78
+ }
79
+ }
80
+
81
+ &-h {
82
+ max-width: 100%;
83
+ display: inline-flex;
84
+ padding: 0 0;
85
+ position: relative;
86
+ border-bottom: 1px solid #ededed;
87
+ overflow-x: auto;
88
+ overflow-y: hidden;
89
+
90
+ & li.#{$menu_item_class_name},
91
+ li {
92
+ margin: 0;
93
+ text-align: center;
94
+ }
95
+ }
96
+ }
97
+ }
98
+ }
99
+
100
+ $menu-border-color: red;
101
+
102
+
103
+ /* & li.#{$menu_item_class_name}{
104
+ dsp: none;
105
+ }
106
+ &-drop{
107
+ dsp: none;
108
+ & .#{$menu_class_name}-#{$menu_dropdown_open}{
109
+ dsp: none;
110
+ & li.#{$menu_item_class_name}, > li{
111
+ dsp: none;
112
+ }
113
+ }
114
+ & .#{$menu_class_name}-#{$menu_dropdown_close}{
115
+ dsp: none;
116
+ & li.#{$menu_item_class_name}, > li{
117
+ dsp: none;
118
+ }
119
+ }
120
+ }*/
@@ -0,0 +1,29 @@
1
+ $menu-metadata: (
2
+ title: menu,
3
+ tag: ul,
4
+ description: "cssfabric menu module to set menu style"
5
+ );
6
+ $menu-config: (
7
+ menu_class_name: menu,
8
+ menu_class_name_short: ul,
9
+ orientations: (
10
+ v: vertical,
11
+ h: horizontal
12
+ ),
13
+ menu_item_class_name: menu-item,
14
+ menu_item_class_name_short: li,
15
+ menu_item_disabled_tag: disabled,
16
+ menu_item_selected_tag: selected,
17
+ menu_dropdown_tag: drop,
18
+ menu_dropdown_open: open,
19
+ menu_dropdown_close: close
20
+ );
21
+ $menu-docs: (
22
+ attributes:(
23
+ menu:(tag: menu,
24
+ keys:(h v)
25
+ )
26
+ )
27
+ );
28
+
29
+
@@ -0,0 +1,19 @@
1
+
2
+ @use '../../_utils';
3
+ @use '_menu-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
+ // builder responsive
11
+ $min_value: 0;
12
+
13
+ @each $mq_size_key,
14
+ $mq_size_value in $_media_quey_sizes {
15
+ @include utils.fabricResponsiveEncloser($mq_size_value, $min_value) {
16
+ @include build.buildMenu($mq_size_key);
17
+ }
18
+ $min_value: $mq_size_value;
19
+ }
@@ -0,0 +1,6 @@
1
+
2
+ // load scss config file
3
+ @use 'menu-build' as build;
4
+
5
+
6
+ @include build.buildMenu(null)
@@ -0,0 +1,22 @@
1
+
2
+ @use 'overflow-vars';
3
+ $overflow-config: overflow-vars.$overflow-config;
4
+ // load scss config file
5
+ @use '../../_utils';
6
+
7
+ // read variables
8
+ $overflow_props: map-get($overflow-config, overflow_props);
9
+ $overflow_values: map-get($overflow-config, overflow_values);
10
+
11
+ /* css overflow rules */
12
+ @mixin buildOverflow($mq_size_key: null) {
13
+ @each $overflow_prop in $overflow_props {
14
+ $property_key: if($mq_size_key, #{$overflow_prop}-#{$mq_size_key}, #{$overflow_prop});
15
+
16
+ @each $overflow_value in $overflow_values {
17
+ .#{$property_key}-#{$overflow_value} {
18
+ overflow: $overflow_value;
19
+ }
20
+ }
21
+ }
22
+ }
@@ -0,0 +1,31 @@
1
+ $_overflow-values: (visible hidden clip scroll auto);
2
+ $_overflow-shorthands: (visible: visible, hidden:hidden, clip:clip, scroll:scroll, _: auto);
3
+
4
+ $overflow-metadata: (
5
+ title: overflow,
6
+ tag: flow,
7
+ description: "cssfabric overflow module to set overflow styles on all html elements"
8
+ );
9
+ $overflow-config: (
10
+ overflow_props: overflow overflow-x overflow-y,
11
+ overflow_values: $_overflow-values,
12
+ cssProps:(
13
+ overflow: $_overflow-shorthands
14
+ )
15
+ );
16
+ $overflow-docs: (
17
+ attributes:(
18
+ overflow:(
19
+ tag:flow,
20
+ keys: $_overflow-values
21
+ ),
22
+ overflowX:(
23
+ tag:flowX,
24
+ keys: $_overflow-values
25
+ ),
26
+ overflowY:(
27
+ tag:flowY,
28
+ keys: $_overflow-values
29
+ )
30
+ )
31
+ );
@@ -0,0 +1,25 @@
1
+
2
+ @use "sass:map";
3
+ // load scss config file
4
+ @use '../../_utils';
5
+ @use '_overflow-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
+
20
+ @include utils.fabricResponsiveEncloser($mq_size_value,$min_value) {
21
+ @include build.buildOverflow($mq_size_key);
22
+ }
23
+ $min_value: $mq_size_value;
24
+ }
25
+
@@ -0,0 +1,7 @@
1
+
2
+ // load scss config file
3
+ @use '_overflow-build' as build;
4
+
5
+ @include build.buildOverflow();
6
+
7
+
@@ -0,0 +1,142 @@
1
+ @use 'scale-vars';
2
+ @use '../../_utils';
3
+ @use "sass:math";
4
+
5
+ $_cfg: utils.get_fabric_conf();
6
+
7
+ // read variables
8
+ $_has_dimensions_strict: map-get($_cfg, has_dimensions_strict);
9
+ $_has_dimensions_min: true; // map-get($_cfg, has_dimensions_min);
10
+ $_has_dimensions_max: true; // map-get($_cfg, has_dimensions_max);
11
+
12
+ $scale-defined-steps: scale-vars.$scale-defined-steps;
13
+ $scale-defined-step-unit: scale-vars.$scale-defined-step-unit;
14
+ $scale-defined-step-size: scale-vars.$scale-defined-step-size;
15
+ $scale-grid-ratios-config: scale-vars.$scale-grid-ratios-config;
16
+
17
+ $scale-sizes: scale-vars.$scale-sizes-config;
18
+ $scale-content: scale-vars.$scale-content-config;
19
+
20
+ $weight-config: scale-vars.$scale-font-weight-config ;
21
+ $unit-tag-config: scale-vars.$scale-shorthands;
22
+ $scale-sizes-preset-config: scale-vars.$scale-sizes-preset-config;
23
+
24
+ /// css dimensions rules builder
25
+ @mixin scale-classname-builder($scale_prop, $size_code, $size_value, $media_query_code) {
26
+
27
+ $scale_prop_short: map-get($unit-tag-config, $scale_prop);
28
+
29
+ $tag: if(
30
+ $media_query_code,
31
+ #{$scale_prop_short}-#{$media_query_code}-#{$size_code},
32
+ #{$scale_prop_short}-#{$size_code}
33
+ );
34
+ .#{$tag} { // , .scale-#{$tag}
35
+ #{$scale_prop}: $size_value;
36
+
37
+ @if ($_has_dimensions_max) {
38
+ &-max {
39
+ max-#{$scale_prop}: $size_value;
40
+ }
41
+ }
42
+ @if ($_has_dimensions_min) {
43
+ &-min {
44
+ min-#{$scale_prop}: $size_value;
45
+ }
46
+ }
47
+ @if ($_has_dimensions_strict) {
48
+ &-strict {
49
+ #{$scale_prop}: $size_value;
50
+ max-#{$scale_prop}: $size_value;
51
+ min-#{$scale_prop}: $size_value;
52
+ }
53
+ }
54
+ }
55
+ }
56
+
57
+ // loop on shorthands // ok
58
+ @mixin play_shorthand_loop($scale_prop, $mq_size_key) {
59
+ @each $scale_shorthand, $scale_shorthand_value in $scale-sizes {
60
+ @include scale-classname-builder(
61
+ $scale_prop,
62
+ $scale_shorthand,
63
+ map-get($scale-sizes, $scale_shorthand),
64
+ $mq_size_key
65
+ );
66
+ }
67
+ }
68
+
69
+ // content-max-min
70
+ @mixin play_dimensions_loop($scale_prop, $mq_size_key) {
71
+ // loop on dimensions
72
+ @each $scale_css_key, $scale_css_value in $scale-content {
73
+ @include scale-classname-builder($scale_prop, $scale_css_key, $scale_css_value, $mq_size_key);
74
+ }
75
+ }
76
+
77
+ // loop on defined dimensions
78
+ // w-* h-*
79
+ // build ratio : w-n = n * $scale_defined_step_size
80
+ @mixin play_defined_dimensions_loop($scale_prop, $mq_size_key) {
81
+ // loop on defined dimensions
82
+ // @each $scale_defined_size in $scale_defined_steps {
83
+ $loop_turn: 1;
84
+ $multiplier: $scale-defined-step-size;
85
+
86
+ @each $scale_defined_step in $scale-defined-steps {
87
+
88
+ $loop_turn: $loop_turn * $multiplier;
89
+
90
+ @include scale-classname-builder(
91
+ $scale_prop,
92
+ $scale_defined_step,
93
+ $scale_defined_step + #{$scale-defined-step-unit},
94
+ $mq_size_key
95
+ );
96
+ }
97
+ }
98
+ $--var-oi: yt;
99
+
100
+ // loop on ratio dimensions
101
+ @mixin play_ratio_dimensions_loop($scale_prop, $mq_size_key) {
102
+ // loop on ratio dimensions
103
+ @each $dimensions_grid_ratio in $scale-grid-ratios-config {
104
+ @for $z_value from 1 through $dimensions_grid_ratio {
105
+ @include scale-classname-builder(
106
+ $scale_prop,
107
+ $z_value + "-" + $dimensions_grid_ratio,
108
+ (math.div($z_value , $dimensions_grid_ratio) * 100) + #{"%"},
109
+ $mq_size_key
110
+ );
111
+ }
112
+ }
113
+ }
114
+
115
+ @mixin play_preset_loop($scale_prop, $mq_size_key) {
116
+
117
+ @each $preset, $value in $scale-sizes-preset-config {
118
+ @include scale-classname-builder(
119
+ $scale_prop,
120
+ $preset,
121
+ $value + #{$scale-defined-step-unit},
122
+ $mq_size_key
123
+ );
124
+ }
125
+ }
126
+
127
+ @mixin buildScale($mq_size_key:null) {
128
+ @each $scale_prop, $scale_prop_short in $unit-tag-config {
129
+ // loop on shorthands mid tiers ...
130
+ @include play_shorthand_loop($scale_prop, $mq_size_key);
131
+
132
+ // loop on dimensions
133
+ @include play_dimensions_loop($scale_prop, $mq_size_key);
134
+
135
+ @include play_preset_loop($scale_prop, $mq_size_key);
136
+ // loop on defined dimensions
137
+ @include play_defined_dimensions_loop($scale_prop, $mq_size_key);
138
+
139
+ // loop on ratio dimensions
140
+ @include play_ratio_dimensions_loop($scale_prop, $mq_size_key);
141
+ }
142
+ }
@@ -0,0 +1,84 @@
1
+ @use '../../utils';
2
+ @use "../cssfabric-config";
3
+
4
+ $scale-sizes-config: (
5
+ full: 100%,
6
+ mid: 50%,
7
+ quarter: 25%,
8
+ tiers: 33%
9
+ );
10
+ $scale-content-config: (
11
+ content-max: max-content,
12
+ content-min: min-content
13
+ );
14
+
15
+ $scale-sizes-preset-config: (
16
+ tiny: 2,
17
+ small: 4,
18
+ medium: 8,
19
+ large: 16,
20
+ wide: 32,
21
+ );
22
+
23
+ $scale-grid-ratios-config: (16);
24
+
25
+ $scale-defined-steps: (
26
+ 1,
27
+ 2,
28
+ 4,
29
+ 8,
30
+ 16,
31
+ 24,
32
+ 32,
33
+ 48,
34
+ 64
35
+ );
36
+
37
+ $scale-shorthands: (
38
+ width: cssfabric-config.$scale-tag-width-shorthand,
39
+ height: cssfabric-config.$scale-tag-height-shorthand
40
+ );
41
+
42
+ $_cssProps: (
43
+ size: $scale-sizes-config,
44
+ content:$scale-content-config,
45
+ defined-steps: $scale-defined-steps
46
+ );
47
+
48
+ $scale-metadata: (
49
+ title: scale,
50
+ tag: scale,
51
+ description: "cssfabric scale module to set dimensions and ratios on all html elements"
52
+ );
53
+
54
+ $scale-font-weight-config: 1em;
55
+ $scale-defined-step-size: 2;
56
+ $scale-defined-step-unit: rem;
57
+
58
+ $scale-config: (
59
+ weight-config: $scale-font-weight-config,
60
+ unit-tag-config: (
61
+ width: w,
62
+ height: h
63
+ ),
64
+ grid-ratios-config: $scale-grid-ratios-config,
65
+ defined-step-size: $scale-defined-step-size,
66
+ defined-step-unit: $scale-defined-step-unit,
67
+ defined-steps: $scale-defined-steps,
68
+ cssProps:$_cssProps
69
+ );
70
+
71
+ $scale-docs: (
72
+ attributes:(
73
+ scale: (
74
+ tag: scale,
75
+ keys: (w, h),
76
+ levels:(
77
+ _size : utils.getObjectKeys($scale-sizes-config),
78
+ _content: utils.getObjectKeys($scale-content-config),
79
+ _defined-steps: utils.getObjectKeys($scale-defined-steps),
80
+ _grid-16: utils.getObjectKeys(utils.cssDimensionPropertyBuilder(h, 16)),
81
+ )
82
+ )
83
+ )
84
+ );
@@ -0,0 +1,23 @@
1
+
2
+ // load scss config file
3
+ @use '../../_utils';
4
+ @use '_scale-build'as build;
5
+ @use "../cssfabric-config";
6
+ // load general config variables
7
+ $config: cssfabric-config.$cssfabric-config;
8
+
9
+ // load general config variables
10
+ // media queries sizes, in rem
11
+ $_media_quey_sizes: map-get($config, media_quey_sizes);
12
+
13
+ // builder responsive
14
+ $min_value: 0;
15
+
16
+ @each $mq_size_key,
17
+ $mq_size_value in $_media_quey_sizes {
18
+
19
+ @include utils.fabricResponsiveEncloser($mq_size_value,$min_value) {
20
+ @include build.buildScale($mq_size_key);
21
+ }
22
+ $min_value: $mq_size_value;
23
+ }
@@ -0,0 +1,8 @@
1
+
2
+
3
+ // load scss config file
4
+ @use '../../_utils';
5
+ @use '_scale-build'as build;
6
+
7
+ // builder
8
+ @include build.buildScale(null);
@@ -0,0 +1,134 @@
1
+ @use 'table-vars';
2
+ @use '../../_utils';
3
+
4
+ $table-config: table-vars.$table-config;
5
+
6
+ $TABLE_PREFIX: map-get($table-config, table_class_name);
7
+ $TABLE_PREFIX_SHORT: map-get($table-config, table_class_name_short);
8
+
9
+ $table_bg_color_head: map-get($table-config, table-bg-color-head);
10
+ $table_bg_color_strip_main: map-get($table-config, table-bg-color-strip-main);
11
+ $table_bg_color_strip_second: map-get($table-config, table-bg-color-strip-second);
12
+
13
+ $table_border_color_header: map-get($table-config, table-border-color-header);
14
+ $table_border_color_main: map-get($table-config, table-border-color-main);
15
+ $table_border_color_second: map-get($table-config, table-border-color-second);
16
+
17
+ // .table-bg-strip-2
18
+ @mixin bg-strip($prefix_short,$nb_strips) {
19
+ &.#{$prefix_short}-bg-strip-#{$nb_strips} {
20
+ @for $nb_strip from 1 through $nb_strips {
21
+ tr:nth-child(#{$nb_strips}n + #{$nb_strip}) td {
22
+ @if ($nb_strip==$nb_strips) {
23
+ background-color: #{$table_bg_color_strip_main};
24
+ }
25
+
26
+ @if ($nb_strips%2==1 and $nb_strip%2==0 and $nb_strips > 2 and $nb_strip !=$nb_strips) {
27
+ // border-bottom: 10px solid black;
28
+ }
29
+ }
30
+ }
31
+ }
32
+ }
33
+
34
+ // .table-sticky
35
+ @mixin sticky($table_prefix_short) {
36
+ &.#{$table_prefix_short}-sticky {
37
+ position: relative;
38
+
39
+ thead tr,
40
+ .thead .tr {
41
+ position: static;
42
+
43
+ th,
44
+ .th {
45
+ background-color: #ededed;
46
+ position: sticky;
47
+ top: 0;
48
+ }
49
+ }
50
+ }
51
+ }
52
+ // -layout -h-line -v-line border
53
+ @mixin fabric_table($mq_size_key: null) {
54
+ /** cssfabric : #{$TABLE_PREFIX_SHORT}*/
55
+ $prefix_short: if($mq_size_key, #{$TABLE_PREFIX_SHORT}-#{$mq_size_key}, $TABLE_PREFIX_SHORT);
56
+
57
+ .#{$TABLE_PREFIX} {
58
+ border-collapse: collapse;
59
+ border-spacing: 0;
60
+
61
+ thead,
62
+ .thead {
63
+ position: relative;
64
+ margin-bottom:2rem;
65
+ }
66
+
67
+ &.#{$prefix_short}-head thead tr th {
68
+ background-color: #{table_bg_color_head};
69
+ }
70
+
71
+ thead tr th,
72
+ .thead .tr .th {
73
+ padding: 0.5rem 0.25rem;
74
+ font-weight: normal;
75
+ }
76
+
77
+ tbody tr td,
78
+ .tbody .tr .td {
79
+ padding: 0.25em;
80
+ }
81
+
82
+ &.#{$prefix_short}-layout {
83
+ table-layout: fixed;
84
+ }
85
+
86
+ &.#{$prefix_short}-h-line {
87
+
88
+ th,
89
+ td,
90
+ .th,
91
+ .td {
92
+ border-bottom: 1px solid #{$table_border_color_main};
93
+ }
94
+
95
+ &:last-child {
96
+ border-bottom: none;
97
+ }
98
+ }
99
+
100
+ &.#{$prefix_short}-v-line tr th,
101
+ &.#{$prefix_short}-v-line tr td {
102
+ border-right: 1px solid #{$table_border_color_main};
103
+
104
+ &:last-child {
105
+ border-right: none;
106
+ }
107
+ }
108
+
109
+ &.#{$prefix_short}-border {
110
+ border: 1px solid #{$table_border_color_main};
111
+ }
112
+
113
+ &.#{$prefix_short}-shad {
114
+ thead tr th {
115
+ box-shadow: 4px 4px 8px #ccc;
116
+ z-index: 11;
117
+
118
+ &:last-child {
119
+ box-shadow: 4px 4px 8px #ccc;
120
+ z-index: -1;
121
+ }
122
+ }
123
+ }
124
+
125
+ @include bg-strip($prefix_short, 2);
126
+ @include bg-strip($prefix_short, 5);
127
+
128
+ @include sticky($prefix_short);
129
+ }
130
+ }
131
+
132
+ @mixin buildTable($mq_size_key: null) {
133
+ @include fabric_table($mq_size_key);
134
+ }
@@ -0,0 +1,30 @@
1
+ $table-metadata: (
2
+ title: table,
3
+ tag: table,
4
+ description: "cssfabric table module to set different table styles"
5
+ );
6
+ $table-config: (
7
+ className: table,
8
+ classNameShort: tbl,
9
+ table_class_name: table,
10
+ table_class_name_short: tbl,
11
+ table-bg-color-head: #f4f4f4,
12
+ table-bg-color-strip-main: #ededed,
13
+ table-bg-color-strip-second: #f5f5f5,
14
+ table-border-color-header: #ccc,
15
+ table-border-color-main: #ededed,
16
+ table-border-color-second: #f5f5f5
17
+ );
18
+
19
+ $table-docs: (
20
+ attributes:(
21
+ table: (
22
+ tag: table,
23
+ classNames:(
24
+ "_": (bg-strip-2 bg-strip-5),
25
+ "_pos": (sticky layout),
26
+ "_deco": (h-line v-line border),
27
+ ),
28
+ about: "is a table"
29
+ )
30
+ ));