@nuvoui/core 1.3.5 → 1.4.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.
Files changed (64) hide show
  1. package/LICENSE +21 -0
  2. package/dist/nuvoui.css +322 -258
  3. package/dist/nuvoui.css.map +1 -1
  4. package/dist/nuvoui.min.css +23 -1
  5. package/dist/nuvoui.min.css.map +1 -1
  6. package/package.json +1 -1
  7. package/src/styles/base/_base.scss +148 -147
  8. package/src/styles/base/_reset.scss +41 -49
  9. package/src/styles/build.scss +25 -1
  10. package/src/styles/components/_tooltips.scss +271 -0
  11. package/src/styles/config/_borders.scss +15 -0
  12. package/src/styles/config/_breakpoints.scss +11 -0
  13. package/src/styles/config/_colors.scss +192 -0
  14. package/src/styles/config/_constants.scss +1 -0
  15. package/src/styles/config/_container-queries.scss +1 -0
  16. package/src/styles/config/_feature-flags.scss +33 -0
  17. package/src/styles/config/_layouts.scss +13 -0
  18. package/src/styles/config/_shadows.scss +9 -0
  19. package/src/styles/config/_spacing.scss +41 -0
  20. package/src/styles/config/_theme-validation.scss +59 -0
  21. package/src/styles/config/_typography.scss +45 -0
  22. package/src/styles/functions/_breakpoints.scss +15 -0
  23. package/src/styles/functions/_colors.scss +280 -0
  24. package/src/styles/functions/_css-vars.scss +33 -0
  25. package/src/styles/functions/_feature-flags.scss +20 -0
  26. package/src/styles/functions/_math.scss +72 -0
  27. package/src/styles/functions/_strings.scss +68 -0
  28. package/src/styles/functions/_types.scss +104 -0
  29. package/src/styles/functions/_units.scss +83 -0
  30. package/src/styles/index.scss +26 -5
  31. package/src/styles/layouts/_container.scss +28 -27
  32. package/src/styles/layouts/_flex.scss +340 -337
  33. package/src/styles/layouts/_grid.scss +131 -128
  34. package/src/styles/mixins-map.json +484 -479
  35. package/src/styles/mixins-map.scss +1 -1
  36. package/src/styles/themes/_theme.scss +230 -211
  37. package/src/styles/tools/_accessibility.scss +50 -0
  38. package/src/styles/tools/_container-queries.scss +98 -0
  39. package/src/styles/tools/_feature-support.scss +46 -0
  40. package/src/styles/tools/_media-queries.scss +70 -0
  41. package/src/styles/tools/_modern-layout.scss +49 -0
  42. package/src/styles/utilities/_alignment.scss +35 -34
  43. package/src/styles/utilities/_animations.scss +312 -311
  44. package/src/styles/utilities/_backdrop-filters.scss +194 -193
  45. package/src/styles/utilities/_borders.scss +243 -237
  46. package/src/styles/utilities/_colors.scss +16 -136
  47. package/src/styles/utilities/_cursor.scss +10 -10
  48. package/src/styles/utilities/_display.scss +192 -191
  49. package/src/styles/utilities/_helpers.scss +106 -106
  50. package/src/styles/utilities/_opacity.scss +27 -25
  51. package/src/styles/utilities/_position.scss +124 -121
  52. package/src/styles/utilities/_shadows.scss +171 -169
  53. package/src/styles/utilities/_sizing.scss +197 -194
  54. package/src/styles/utilities/_spacing.scss +230 -227
  55. package/src/styles/utilities/_transforms.scss +235 -234
  56. package/src/styles/utilities/_transitions.scss +136 -135
  57. package/src/styles/utilities/_typography.scss +242 -239
  58. package/src/styles/utilities/_z-index.scss +69 -68
  59. package/src/styles/abstracts/_config.scss +0 -254
  60. package/src/styles/abstracts/_functions.scss +0 -626
  61. package/src/styles/themes/refactored_borders.ipynb +0 -37
  62. package/src/styles/utilities/_container-queries.scss +0 -95
  63. package/src/styles/utilities/_media-queries.scss +0 -189
  64. package/src/styles/utilities/_tooltips.scss +0 -258
@@ -3,15 +3,18 @@
3
3
  // Note: Gap utilities are defined in _spacing.scss
4
4
 
5
5
  @use "sass:math";
6
- @use "../abstracts/functions" as FN;
7
- @use "../abstracts/config" as VAR;
6
+ @use "../config/feature-flags" as config-flags;
7
+ @use "../config/layouts" as config-layout;
8
+ @use "../config/breakpoints" as config-breakpoint;
9
+ @use "../functions/feature-flags" as fn-flags;
10
+ @use "../functions/strings" as fn-string;
8
11
 
9
12
  // Grid Template Mixins
10
13
  @mixin cols($count) {
11
- grid-template-columns: repeat($count, minmax(0, 1fr));
14
+ grid-template-columns: repeat($count, minmax(0, 1fr));
12
15
  }
13
16
  @mixin rows($count) {
14
- grid-template-rows: repeat($count, minmax(0, 1fr));
17
+ grid-template-rows: repeat($count, minmax(0, 1fr));
15
18
  }
16
19
 
17
20
  // @description Establishes a grid container with a specified number of columns.
@@ -24,200 +27,200 @@
24
27
  // }
25
28
 
26
29
  @mixin cols-custom($template) {
27
- // Convert underscores to spaces so "1fr_auto" becomes "1fr auto"
28
- $converted: FN.str-replace($template, "_", " ");
30
+ // Convert underscores to spaces so "1fr_auto" becomes "1fr auto"
31
+ $converted: fn-string.str-replace($template, "_", " ");
29
32
 
30
- grid-template-columns: $converted;
33
+ grid-template-columns: $converted;
31
34
  }
32
35
 
33
36
  // Auto-fit/fill Mixins
34
37
  @mixin auto-fit($min-width) {
35
- grid-template-columns: repeat(auto-fit, minmax($min-width, 1fr));
38
+ grid-template-columns: repeat(auto-fit, minmax($min-width, 1fr));
36
39
  }
37
40
  @mixin auto-fill($min-width) {
38
- grid-template-columns: repeat(auto-fill, minmax($min-width, 1fr));
41
+ grid-template-columns: repeat(auto-fill, minmax($min-width, 1fr));
39
42
  }
40
43
 
41
44
  // Grid Flow Mixins
42
45
  @mixin flow-in-row {
43
- grid-auto-flow: row;
46
+ grid-auto-flow: row;
44
47
  }
45
48
  @mixin flow-in-col {
46
- grid-auto-flow: column;
49
+ grid-auto-flow: column;
47
50
  }
48
51
  @mixin flow-dense-items {
49
- grid-auto-flow: dense;
52
+ grid-auto-flow: dense;
50
53
  }
51
54
 
52
55
  // Grid Alignment Mixins
53
56
 
54
57
  // Alignment Classes
55
58
  $alignments: (
56
- "start": start,
57
- "end": end,
58
- "center": center,
59
- "stretch": stretch,
59
+ "start": start,
60
+ "end": end,
61
+ "center": center,
62
+ "stretch": stretch,
60
63
  );
61
64
 
62
65
  // @description justify-items container.
63
66
  // @param {string} $value - The value for the justify-items property.
64
67
  @mixin justify($value) {
65
- justify-items: $value;
68
+ justify-items: $value;
66
69
  }
67
70
 
68
71
  // @description Establishes a align-items container.
69
72
  // @param {string} $value - The value for the align-items property.
70
73
  @mixin align($value) {
71
- align-items: $value;
74
+ align-items: $value;
72
75
  }
73
76
 
74
77
  // @description Establishes a place-items container.
75
78
  // @param {string} $value - The value for the place-items property.
76
79
  @mixin place($value) {
77
- place-items: $value;
80
+ place-items: $value;
78
81
  }
79
82
 
80
83
  // Grid Item Placement Mixins
81
84
  @mixin col-span($span) {
82
- grid-column: span $span / span $span;
85
+ grid-column: span $span / span $span;
83
86
  }
84
87
  @mixin row-span($span) {
85
- grid-row: span $span / span $span;
88
+ grid-row: span $span / span $span;
86
89
  }
87
90
  @mixin col-start($start) {
88
- grid-column-start: $start;
91
+ grid-column-start: $start;
89
92
  }
90
93
  @mixin col-end($end) {
91
- grid-column-end: $end;
94
+ grid-column-end: $end;
92
95
  }
93
96
  @mixin row-start($start) {
94
- grid-row-start: $start;
97
+ grid-row-start: $start;
95
98
  }
96
99
  @mixin row-end($end) {
97
- grid-row-end: $end;
100
+ grid-row-end: $end;
98
101
  }
99
102
 
100
103
  @mixin grid-position($col, $row) {
101
- grid-column: $col;
102
- grid-row: $row;
104
+ grid-column: $col;
105
+ grid-row: $row;
103
106
  }
104
107
  @mixin position-col($col) {
105
- grid-column: $col;
108
+ grid-column: $col;
106
109
  }
107
110
  @mixin position-row($row) {
108
- grid-row: $row;
111
+ grid-row: $row;
109
112
  }
110
113
 
111
- @if FN.feature-enabled("grid") {
112
- // Build the flat selector list manually with proper escaping
113
- $base-grid-selector: #{VAR.$parent-selector} + " .grid";
114
- $all-grid-selectors: $base-grid-selector;
114
+ @if fn-flags.feature-enabled("grid") {
115
+ // Build the flat selector list manually with proper escaping
116
+ $base-grid-selector: #{config-flags.$parent-selector} + " .grid";
117
+ $all-grid-selectors: $base-grid-selector;
115
118
 
116
- @each $breakpoint, $width in VAR.$breakpoints {
117
- $all-grid-selectors: "#{$all-grid-selectors}, #{VAR.$parent-selector} .grid\\@#{$breakpoint}";
118
- }
119
-
120
- // Apply base grid styles to all grid variants at once
121
- #{$all-grid-selectors} {
122
- // Auto-fit/fill Classes
123
- @each $size, $width in VAR.$grid-item-sizes {
124
- &.auto-fit-#{$size} {
125
- @include auto-fit($width);
126
- }
127
-
128
- &.auto-fill-#{$size} {
129
- @include auto-fill($width);
130
- }
119
+ @each $breakpoint, $width in config-breakpoint.$breakpoints {
120
+ $all-grid-selectors: "#{$all-grid-selectors}, #{config-flags.$parent-selector} .grid\\@#{$breakpoint}";
131
121
  }
132
122
 
133
- // Flow Classes
134
- &.flow-row {
135
- @include flow-in-row;
136
- }
137
-
138
- &.flow-col {
139
- @include flow-in-col;
140
- }
123
+ // Apply base grid styles to all grid variants at once
124
+ #{$all-grid-selectors} {
125
+ // Auto-fit/fill Classes
126
+ @each $size, $width in config-layout.$grid-item-sizes {
127
+ &.auto-fit-#{$size} {
128
+ @include auto-fit($width);
129
+ }
130
+
131
+ &.auto-fill-#{$size} {
132
+ @include auto-fill($width);
133
+ }
134
+ }
141
135
 
142
- &.flow-dense {
143
- @include flow-dense-items;
144
- }
136
+ // Flow Classes
137
+ &.flow-row {
138
+ @include flow-in-row;
139
+ }
145
140
 
146
- // Basic column and row count
147
- @for $i from 1 through VAR.$column-count {
148
- &.cols-#{$i} {
149
- @include cols($i);
150
- }
151
- &.rows-#{$i} {
152
- @include rows($i);
153
- }
154
- }
141
+ &.flow-col {
142
+ @include flow-in-col;
143
+ }
155
144
 
156
- // Basic span classes (non-responsive)
157
- @for $i from 1 through VAR.$column-count {
158
- .col-span-#{$i} {
159
- @include col-span($i);
160
- }
161
- .row-span-#{$i} {
162
- @include row-span($i);
163
- }
164
- }
145
+ &.flow-dense {
146
+ @include flow-dense-items;
147
+ }
165
148
 
166
- // Alignment classes
167
- @each $name, $value in $alignments {
168
- &.justify-#{$name} {
169
- @include justify($value);
170
- }
171
- &.align-#{$name} {
172
- @include align($value);
173
- }
174
- &.place-#{$name} {
175
- @include place($value);
176
- }
177
- }
178
- }
179
-
180
- // Handle responsive variants
181
- @each $breakpoint, $width in VAR.$breakpoints {
182
- @media (min-width: #{$width}) {
183
- // Responsive grid columns/rows
184
- #{$all-grid-selectors} {
185
- @for $i from 1 through VAR.$column-count {
186
- &.cols-#{$i}\@#{$breakpoint} {
187
- @include cols($i);
188
- }
189
- &.rows-#{$i}\@#{$breakpoint} {
190
- @include rows($i);
191
- }
149
+ // Basic column and row count
150
+ @for $i from 1 through config-layout.$column-count {
151
+ &.cols-#{$i} {
152
+ @include cols($i);
153
+ }
154
+ &.rows-#{$i} {
155
+ @include rows($i);
156
+ }
192
157
  }
193
- }
194
-
195
- // Responsive spans
196
- #{$all-grid-selectors} {
197
- @for $i from 1 through VAR.$column-count {
198
- .col-span-#{$i}\@#{$breakpoint} {
199
- @include col-span($i);
200
- }
201
- .row-span-#{$i}\@#{$breakpoint} {
202
- @include row-span($i);
203
- }
158
+
159
+ // Basic span classes (non-responsive)
160
+ @for $i from 1 through config-layout.$column-count {
161
+ .col-span-#{$i} {
162
+ @include col-span($i);
163
+ }
164
+ .row-span-#{$i} {
165
+ @include row-span($i);
166
+ }
204
167
  }
205
- }
206
168
 
207
- // Responsive alignments
208
- #{$all-grid-selectors} {
169
+ // Alignment classes
209
170
  @each $name, $value in $alignments {
210
- &.justify-#{$name}\@#{$breakpoint} {
211
- @include justify($value);
212
- }
213
- &.align-#{$name}\@#{$breakpoint} {
214
- @include align($value);
215
- }
216
- &.place-#{$name}\@#{$breakpoint} {
217
- @include place($value);
218
- }
171
+ &.justify-#{$name} {
172
+ @include justify($value);
173
+ }
174
+ &.align-#{$name} {
175
+ @include align($value);
176
+ }
177
+ &.place-#{$name} {
178
+ @include place($value);
179
+ }
180
+ }
181
+ }
182
+
183
+ // Handle responsive variants
184
+ @each $breakpoint, $width in config-breakpoint.$breakpoints {
185
+ @media (min-width: #{$width}) {
186
+ // Responsive grid columns/rows
187
+ #{$all-grid-selectors} {
188
+ @for $i from 1 through config-layout.$column-count {
189
+ &.cols-#{$i}\@#{$breakpoint} {
190
+ @include cols($i);
191
+ }
192
+ &.rows-#{$i}\@#{$breakpoint} {
193
+ @include rows($i);
194
+ }
195
+ }
196
+ }
197
+
198
+ // Responsive spans
199
+ #{$all-grid-selectors} {
200
+ @for $i from 1 through config-layout.$column-count {
201
+ .col-span-#{$i}\@#{$breakpoint} {
202
+ @include col-span($i);
203
+ }
204
+ .row-span-#{$i}\@#{$breakpoint} {
205
+ @include row-span($i);
206
+ }
207
+ }
208
+ }
209
+
210
+ // Responsive alignments
211
+ #{$all-grid-selectors} {
212
+ @each $name, $value in $alignments {
213
+ &.justify-#{$name}\@#{$breakpoint} {
214
+ @include justify($value);
215
+ }
216
+ &.align-#{$name}\@#{$breakpoint} {
217
+ @include align($value);
218
+ }
219
+ &.place-#{$name}\@#{$breakpoint} {
220
+ @include place($value);
221
+ }
222
+ }
223
+ }
219
224
  }
220
- }
221
225
  }
222
- }
223
226
  }