@vixcom/ui 1.4.0 → 1.5.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.
@@ -11,23 +11,16 @@
11
11
  * {color}-c = The corresponding Text color of the color, if it is used as a background.
12
12
  */
13
13
 
14
- @each $k, $v in $app-colors-mapped {
14
+ @each $k, $v in $colors-mapped {
15
15
  // Texts
16
- @include mapped-color-variant('.text-#{$k}', $k, $v);
17
- @include mapped-neon-color-variant('.text-neon-#{$k}', $k, $v);
16
+ @include color-variant('.text-#{$k}', $k, $v);
17
+ @include neon-color-variant('.text-neon-#{$k}', $k, $v);
18
18
  // Background
19
- @include mapped-bg-color-variant('.bg-#{$k}', $k, $v);
20
- @include mapped-g-color-variant('.bg-g-#{$k}', $k, $v);
21
- @include mapped-tabs-variant('.tabs-#{$k}', $k, $v);
22
- @include mapped-alert-variant('.alert-#{$k}', $k, $v);
23
- @include mapped-outline-variant('.bg-outline-#{$k}', $k, $v);
24
- // Buttons
25
- @include mapped-bg-color-variant('.btn-#{$k}', $k, $v);
26
- @include mapped-g-color-variant('.btn-g-#{$k}', $k, $v);
27
- @include mapped-outline-variant('.btn-outline-#{$k}', $k, $v);
28
- // Badges
29
- @include mapped-bg-color-variant('.badge-#{$k}', $k, $v);
30
- @include mapped-outline-variant('.badge-outline-#{$k}', $k, $v);
19
+ @include bg-color-variant('.bg-#{$k}', $k, $v);
20
+ @include gradient-variant('.bg-g-#{$k}', $k, $v);
21
+ @include outline-variant('.bg-outline-#{$k}', $k, $v);
22
+ @include group-bg-color-variant('.tabs-#{$k}', $k, $v);
23
+ @include group-bg-color-variant('.dots-#{$k}', $k, $v);
31
24
 
32
25
  .border-#{$k} {
33
26
  border-color: map-get($v, 'bg');
@@ -99,7 +92,7 @@ input {
99
92
  position: relative;
100
93
  z-index: 1;
101
94
 
102
- & > * {
95
+ > * {
103
96
  position: relative;
104
97
  }
105
98
 
@@ -2,15 +2,52 @@
2
2
  * @Author Vixson
3
3
  * @Description Font variables and Logics
4
4
  */
5
+ @import 'mixins';
5
6
 
6
- @for $n from 1 through 6 {
7
+ %heading-size {
8
+ font-size: var(--heading-size);
9
+ @include unify-selector(svg, &) {
10
+ transform: scale(calc(var(--heading-size) / 10));
11
+ }
12
+ }
13
+
14
+ $heading-start: (
15
+ k: 1,
16
+ v: 200,
17
+ );
18
+ $heading-end: (
19
+ k: 6,
20
+ v: 100,
21
+ );
22
+
23
+ @for $n from map-get($heading-start, 'k') through map-get($heading-end, 'k') {
7
24
  h#{$n},
8
25
  .h#{$n},
9
- .font-#{7 - $n} {
26
+ .font-#{(map-get($heading-end, 'k') - $n+1)} {
10
27
  --heading-size: calc(
11
- var(--heading-start) -
12
- (#{$n - 1} * (var(--heading-start) - var(--heading-end)) / 5)
28
+ var(--heading-start, #{map-get($heading-start, 'v')}#{'%'}) -
29
+ (
30
+ #{$n -
31
+ 1} *
32
+ (
33
+ var(--heading-start, #{map-get($heading-start, 'v')}#{'%'}) -
34
+ var(--heading-end, #{map-get($heading-end, 'v')}#{'%'})
35
+ ) /
36
+ #{(map-get($heading-end, 'k') - map-get($heading-start, 'k'))}
37
+ )
13
38
  );
14
- font-size: var(--heading-size);
39
+ @extend %heading-size;
15
40
  }
16
41
  }
42
+
43
+ .font-sm {
44
+ font-size: 75%;
45
+ }
46
+
47
+ .font-md {
48
+ font-size: 90%;
49
+ }
50
+
51
+ .font-lg {
52
+ font-size: 250%;
53
+ }
@@ -1,8 +1,16 @@
1
1
  @import '../mixins';
2
2
 
3
3
  .p-component {
4
- font-size: 100%;
5
- font-family: unset;
4
+ & [class*='p-']:not(.pi) {
5
+ font: {
6
+ size: inherit;
7
+ weight: inherit;
8
+ }
9
+ }
10
+
11
+ * {
12
+ font-family: inherit;
13
+ }
6
14
  }
7
15
 
8
16
  .p-steps {
@@ -59,16 +67,21 @@
59
67
  font-size: 300%;
60
68
  }
61
69
 
62
- .p-dialog-header {
70
+ &-header {
71
+ display: flex;
72
+ align-items: center;
63
73
  border-top-left-radius: inherit;
64
74
  border-top-right-radius: inherit;
65
75
 
66
- .p-dialog-header-close:hover {
76
+ &-close:hover {
67
77
  color: var(--danger);
68
78
  }
79
+ &-icons button {
80
+ min-width: unset;
81
+ }
69
82
  }
70
83
 
71
- .p-dialog-content {
84
+ &-content {
72
85
  padding: 0.25rem 1.5rem;
73
86
 
74
87
  .p-confirm-dialog-message {
@@ -76,21 +89,17 @@
76
89
  }
77
90
  }
78
91
 
79
- .p-dialog-footer {
92
+ &-footer {
80
93
  display: flex;
81
94
  flex-wrap: wrap;
82
95
  justify-content: flex-end;
96
+ border-bottom-left-radius: inherit;
97
+ border-bottom-right-radius: inherit;
83
98
  padding: 1.5rem;
84
99
  gap: 0.5rem;
85
100
 
86
101
  button {
87
- border: none;
88
- padding: 0.5rem 1.25rem;
89
- text-transform: capitalize;
90
- }
91
-
92
- > * {
93
- margin-top: 1rem;
102
+ margin: 0;
94
103
  }
95
104
  }
96
105
  }
@@ -106,6 +115,15 @@
106
115
  display: flex;
107
116
  flex-direction: column;
108
117
  min-height: 100%;
118
+
119
+ & > {
120
+ header,
121
+ footer {
122
+ display: flex;
123
+ align-items: center;
124
+ gap: 1rem;
125
+ }
126
+ }
109
127
  }
110
128
  }
111
129
 
@@ -117,13 +135,20 @@
117
135
  font-size: 0.75rem;
118
136
  }
119
137
 
138
+ .p-float-label {
139
+ .p-dropdown .p-placeholder {
140
+ opacity: 1;
141
+ }
142
+ }
143
+
120
144
  .input > .p-inputtext {
121
145
  padding: 0;
122
146
  color: unset;
123
147
  font-size: unset;
124
148
  }
125
149
 
126
- .p-inputtext {
150
+ .p-inputtext,
151
+ .p-inputnumber {
127
152
  width: 100%;
128
153
 
129
154
  &:enabled {
@@ -150,6 +175,15 @@
150
175
 
151
176
  .p-dropdown {
152
177
  border-color: currentColor;
178
+ & &-label {
179
+ display: flex;
180
+ }
181
+
182
+ &-item {
183
+ > img {
184
+ width: 100%;
185
+ }
186
+ }
153
187
  }
154
188
 
155
189
  *:not(.p-paginator) > .p-dropdown {
@@ -306,7 +340,7 @@ p-chart {
306
340
  }
307
341
  }
308
342
 
309
- @media (max-width: 575.98px) {
343
+ @media (max-width: 576px) {
310
344
  .p-dialog {
311
345
  min-width: 95%;
312
346
 
@@ -348,7 +382,6 @@ p-chart {
348
382
 
349
383
  .p-button {
350
384
  text-transform: capitalize;
351
- font-size: 120%;
352
385
 
353
386
  &:hover {
354
387
  background-color: hsl(var(--primary-hs), calc(var(--primary-l) - 20%));
@@ -360,7 +393,7 @@ p-chart {
360
393
  }
361
394
 
362
395
  // @each $color,
363
- // $colorValue in $app-colors-mapped {
396
+ // $colorValue in $colors-mapped {
364
397
  // .p-toast-message-#{$color} {
365
398
  // background-color: var(--#{$color});
366
399
  // color: var(--#{$color}-c);
@@ -2,9 +2,6 @@
2
2
  * @Author: Vixson
3
3
  * @Description: Unique and Very Responsive Admin Dashboard UI
4
4
  */
5
- @import 'mixins';
6
- // @import 'https://unpkg.com/bootstrap@latest/dist/css/bootstrap.min.css';
7
- // @import 'external/bootstrap.css';
8
5
  @import 'variables.css';
9
6
  @import 'main.css';
10
7
  @import 'sizes.css';
@@ -88,9 +88,6 @@ b {
88
88
  .bg-text,
89
89
  .bg-text-color {
90
90
  position: relative;
91
- display: inline-flex;
92
- // align-items: center;
93
- // justify-content: center;
94
91
 
95
92
  &:hover::after {
96
93
  opacity: 0.125;
@@ -152,11 +149,9 @@ a:not(.link) {
152
149
  }
153
150
 
154
151
  .page-header {
155
- padding: 1rem 1.5rem;
152
+ padding: 0 1rem;
156
153
  display: flex;
157
154
  align-items: center;
158
- position: relative;
159
- z-index: 1;
160
155
 
161
156
  &.position-sticky,
162
157
  &.sticky {
@@ -165,49 +160,20 @@ a:not(.link) {
165
160
  left: 0;
166
161
  }
167
162
 
168
- .main-title {
169
- margin-bottom: 0;
170
- font-size: 125%;
171
-
172
- @include unify-selector(img, &) {
173
- width: 10rem;
174
- }
175
- }
176
- }
177
-
178
- .flex-container {
179
- display: flex;
180
- flex-wrap: wrap;
181
- /* align-items: flex-end; */
182
- margin: 0.5rem 0;
183
- gap: 0.5rem;
184
-
185
- > * {
186
- /* align-self: flex-start; */
187
- margin-bottom: 0;
188
- }
189
- }
190
-
191
- .page-header {
192
- margin: 1rem 0;
193
- padding: 0 1rem;
194
- display: flex;
195
- align-items: center;
196
-
197
163
  .page-title {
198
164
  text-transform: capitalize;
199
165
  margin-right: auto;
200
- margin-bottom: 1rem;
201
- color: var(--primary);
202
-
203
166
  font: {
204
167
  size: 200%;
205
168
  weight: normal;
206
169
  }
207
- }
208
170
 
209
- .button {
210
- min-width: auto;
171
+ .button {
172
+ min-width: auto;
173
+ }
174
+ @include unify-selector(img, &) {
175
+ width: 10rem;
176
+ }
211
177
  }
212
178
  }
213
179
 
@@ -251,6 +217,19 @@ a:not(.link) {
251
217
  }
252
218
  }
253
219
 
220
+ .flex-container {
221
+ display: flex;
222
+ flex-wrap: wrap;
223
+ /* align-items: flex-end; */
224
+ margin: 0.5rem 0;
225
+ gap: 0.5rem;
226
+
227
+ > * {
228
+ /* align-self: flex-start; */
229
+ margin-bottom: 0;
230
+ }
231
+ }
232
+
254
233
  .row > [class*='col'] {
255
234
  margin-bottom: 1em;
256
235
 
@@ -288,7 +267,9 @@ a:not(.link) {
288
267
  }
289
268
 
290
269
  [class*='sq-'] {
291
- @include flex-center;
270
+ display: inline-flex;
271
+ align-items: center;
272
+ justify-content: center;
292
273
  flex: unset;
293
274
  padding: 0;
294
275
  /* margin: auto; */
@@ -314,30 +295,6 @@ hr[class*='s-']:not(.default) {
314
295
  border: 0;
315
296
  }
316
297
 
317
- .s-sm {
318
- padding: 0.25rem;
319
- }
320
-
321
- .s-1 {
322
- padding: 0.5rem;
323
- }
324
-
325
- .s-2 {
326
- padding: 0.75rem;
327
- }
328
-
329
- .s-3 {
330
- padding: 1.5rem;
331
- }
332
-
333
- .s-4 {
334
- padding: 2.5rem;
335
- }
336
-
337
- .s-5 {
338
- padding: 5rem;
339
- }
340
-
341
298
  .dropdown-menu-right .dropdown-menu {
342
299
  transform: translate(-100%, 0);
343
300
  }
@@ -744,18 +701,18 @@ option[disabled]:first-of-type {
744
701
  margin-top: 0.5rem;
745
702
  }
746
703
 
747
- &:has(input:invalid) {
748
- color: var(--danger);
749
- }
704
+ // &:has(input:invalid) {
705
+ // color: var(--danger);
706
+ // }
750
707
 
751
- &:has(input:focus:empty),
752
- &:has(input:focus:placeholder-shown) {
753
- &::before,
754
- .label {
755
- // @include append-selector() {
756
- background-color: var(--primary);
757
- }
758
- }
708
+ // &:has(input:focus:empty),
709
+ // &:has(input:focus:placeholder-shown) {
710
+ // &::before,
711
+ // .label {
712
+ // // @include append-selector() {
713
+ // background-color: var(--primary);
714
+ // }
715
+ // }
759
716
 
760
717
  // &>label,
761
718
  &::before,
@@ -1022,9 +979,9 @@ button,
1022
979
  position: relative;
1023
980
  display: inline-flex;
1024
981
  border-radius: var(--border-radius, 0.25rem);
1025
- padding: 0.25rem;
982
+ padding: 0.25rem 0.75rem;
1026
983
  font-size: 120%;
1027
- min-width: 7.5rem;
984
+ min-width: 5rem;
1028
985
  gap: 0.25rem;
1029
986
  justify-content: center;
1030
987
  align-items: center;
@@ -1046,10 +1003,9 @@ button,
1046
1003
  }
1047
1004
 
1048
1005
  &.button-circle {
1049
- width: 3rem;
1050
- height: 3rem;
1006
+ min-width: 5rem;
1007
+ min-height: 5rem;
1051
1008
  display: inline-flex;
1052
- min-width: unset;
1053
1009
  padding: 0.5rem;
1054
1010
  align-items: center;
1055
1011
  justify-content: center;
@@ -1081,9 +1037,9 @@ button,
1081
1037
  margin-top: 0.5rem;
1082
1038
  }
1083
1039
 
1084
- // .icon {
1085
- // font-size: 80%;
1086
- // }
1040
+ .icon {
1041
+ font-size: 125%;
1042
+ }
1087
1043
  }
1088
1044
 
1089
1045
  .button-group {
@@ -1395,8 +1351,8 @@ table {
1395
1351
  }
1396
1352
 
1397
1353
  .bg-svg {
1398
- -webkit-mask-image: url('/assets/bg/flex-card-bg-icons.svg');
1399
- mask-image: url('/assets/bg/flex-card-bg-icons.svg');
1354
+ -webkit-mask-image: url('/assets/images/card-bg.svg');
1355
+ mask-image: url('/assets/images/card-bg.svg');
1400
1356
  }
1401
1357
  }
1402
1358
 
@@ -1452,6 +1408,19 @@ table {
1452
1408
  }
1453
1409
  }
1454
1410
 
1411
+ .grid-item {
1412
+ display: grid;
1413
+ grid-template-columns: 1fr 4fr;
1414
+ grid-template-rows: 1fr;
1415
+ align-items: center;
1416
+
1417
+ :nth-child(1) {
1418
+ grid-row: 1/-1;
1419
+ }
1420
+ :nth-child(2) {
1421
+ }
1422
+ }
1423
+
1455
1424
  .text-spaced {
1456
1425
  letter-spacing: 0.25rem;
1457
1426
 
@@ -1461,46 +1430,30 @@ table {
1461
1430
  }
1462
1431
 
1463
1432
  .text-strick-line {
1464
- display: flex;
1433
+ display: grid;
1434
+ grid-template-columns: repeat(3, 1fr);
1465
1435
  align-items: center;
1466
1436
  justify-content: center;
1467
-
1468
- & .label,
1469
- &::content {
1470
- width: 100%;
1471
- }
1437
+ gap: 0.5rem;
1472
1438
 
1473
1439
  &::before,
1474
1440
  &::after {
1475
1441
  content: '';
1476
1442
  display: inline-block;
1477
- margin: 0 0.5rem;
1478
- width: 100%;
1479
1443
  height: 1px;
1480
- max-width: 10rem;
1481
1444
  background-color: currentColor;
1482
1445
  }
1483
1446
  }
1484
1447
 
1485
1448
  .card {
1486
- @include before-content;
1487
-
1488
- &:not(.flat) {
1489
- /* overflow: unset; */
1490
- border: none;
1491
- z-index: 0;
1492
-
1493
- & > * {
1494
- /* position: relative; */
1495
- }
1449
+ display: flex;
1450
+ flex-direction: column;
1451
+ border-radius: var(--border-radius);
1496
1452
 
1497
- &::before {
1498
- box-shadow: var(--card-shadow);
1499
- }
1500
- }
1453
+ @include before-content;
1501
1454
 
1502
- & + .card {
1503
- margin-top: 1rem;
1455
+ &:not(.flat)::before {
1456
+ box-shadow: var(--card-shadow);
1504
1457
  }
1505
1458
 
1506
1459
  &:not(.card-body) > {
@@ -1556,6 +1509,12 @@ table {
1556
1509
  }
1557
1510
  }
1558
1511
 
1512
+ .card-group {
1513
+ .card + .card {
1514
+ margin-top: 1rem;
1515
+ }
1516
+ }
1517
+
1559
1518
  .flex-list,
1560
1519
  .item-list {
1561
1520
  margin: 1.5rem 0;
@@ -133,7 +133,6 @@ nav,
133
133
  gap: 0.75rem;
134
134
  padding: 0.5rem 1rem;
135
135
  text-decoration: none;
136
- color: currentColor;
137
136
 
138
137
  .label {
139
138
  transition: position 0.25s linear 0.125s, transform 0.25s linear 0.125s,
@@ -158,38 +158,3 @@ $directions: (
158
158
  }
159
159
  }
160
160
  }
161
-
162
- $heading-start: (
163
- k: 1,
164
- v: 200,
165
- );
166
- $heading-end: (
167
- k: 6,
168
- v: 100,
169
- );
170
- $heading-difference: math.div(
171
- (map-get($heading-start, 'v') - map-get($heading-end, 'v')),
172
- (map-get($heading-end, 'k') - map-get($heading-start, 'k'))
173
- );
174
-
175
- @for $n from map-get($heading-start, 'k') through map-get($heading-end, 'k') {
176
- $_value: map-get($heading-start, 'v') - (($n - 1) * $heading-difference);
177
-
178
- h#{$n},
179
- .h#{$n},
180
- .font-#{(map-get($heading-end, 'k') - ($n+1))} {
181
- font-size: #{$_value}#{'%'};
182
- }
183
- }
184
-
185
- .font-sm {
186
- font-size: 75%;
187
- }
188
-
189
- .font-md {
190
- font-size: 90%;
191
- }
192
-
193
- .font-lg {
194
- font-size: 250%;
195
- }
@@ -2,13 +2,13 @@
2
2
 
3
3
  :root {
4
4
  --font-size: var(--o-font-size, #{$font-size});
5
- --card-shadow: #{$card-shadow};
5
+ --card-shadow: var(--shadow-1);
6
6
  --background-color: #{$background-color};
7
7
  --heading-start: 200%;
8
8
  --heading-end: 100%;
9
9
 
10
10
  /* Color Variables */
11
- @each $k, $v in $app-colors-mapped {
11
+ @each $k, $v in $colors-mapped {
12
12
  /* ---COLOR-#{$k}-START--- */
13
13
  --#{$k}: #{map-get($v, 'bg')};
14
14
  /* ---HSL-#{$k}--- */
@@ -23,7 +23,7 @@
23
23
  }
24
24
  }
25
25
 
26
- @media (max-width: 575.98px) {
26
+ @media (max-width: 576px) {
27
27
  :root {
28
28
  --font-size: calc(var(--o-font-size) / 1.15);
29
29
  }