@ttoss/theme 1.4.35 → 1.4.37

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.
@@ -55,9 +55,23 @@ var require_success_circle = __commonJS({
55
55
  }
56
56
  });
57
57
 
58
+ // ../../node_modules/.pnpm/@iconify+icons-eos-icons@1.2.6/node_modules/@iconify/icons-eos-icons/three-dots-loading.js
59
+ var require_three_dots_loading = __commonJS({
60
+ "../../node_modules/.pnpm/@iconify+icons-eos-icons@1.2.6/node_modules/@iconify/icons-eos-icons/three-dots-loading.js"(exports) {
61
+ var data = {
62
+ "width": 24,
63
+ "height": 24,
64
+ "body": '<circle cx="18" cy="12" r="0" fill="currentColor"><animate attributeName="r" begin=".67" calcMode="spline" dur="1.5s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" repeatCount="indefinite" values="0;2;0;0"/></circle><circle cx="12" cy="12" r="0" fill="currentColor"><animate attributeName="r" begin=".33" calcMode="spline" dur="1.5s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" repeatCount="indefinite" values="0;2;0;0"/></circle><circle cx="6" cy="12" r="0" fill="currentColor"><animate attributeName="r" begin="0" calcMode="spline" dur="1.5s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" repeatCount="indefinite" values="0;2;0;0"/></circle>'
65
+ };
66
+ exports.__esModule = true;
67
+ exports.default = data;
68
+ }
69
+ });
70
+
58
71
  // src/themes/Bruttal/BruttalIcons.ts
59
72
  var import_loading = __toESM(require_loading());
60
73
  var import_success_circle = __toESM(require_success_circle());
74
+ var import_three_dots_loading = __toESM(require_three_dots_loading());
61
75
  import { addIcon } from "@iconify-icon/react";
62
76
  import addFilledIcon from "@iconify/icons-carbon/add-filled";
63
77
  import arrowRightIcon from "@iconify/icons-carbon/arrow-right";
@@ -91,6 +105,7 @@ import uploadIcon from "@iconify/icons-carbon/upload";
91
105
  import userAvatarFilledAltIcon from "@iconify/icons-carbon/user-avatar-filled-alt";
92
106
  import viewFilledIcon from "@iconify/icons-carbon/view-filled";
93
107
  import viewOffFilledIcon from "@iconify/icons-carbon/view-off-filled";
108
+ import warningAltIcon from "@iconify/icons-carbon/warning-alt";
94
109
  import warningFilledIcon from "@iconify/icons-carbon/warning-filled";
95
110
  var replicateIcon = {
96
111
  body: `<svg width="48" height="48" viewBox="0 0 48 48" fill="none" xmlns="http://www.w3.org/2000/svg">
@@ -140,14 +155,16 @@ addIcon("replicate", replicateIcon);
140
155
  addIcon("subtract", subtractIcon);
141
156
  addIcon("success-circle", import_success_circle.default);
142
157
  addIcon("small-close", closeFilledIcon);
158
+ addIcon("three-dots-loading", import_three_dots_loading.default);
143
159
  addIcon("time", timeIcon);
144
160
  addIcon("upload", uploadIcon);
145
161
  addIcon("view-off", viewOffFilledIcon);
146
162
  addIcon("view-on", viewFilledIcon);
147
163
  addIcon("warning", warningFilledIcon);
164
+ addIcon("warning-alt", warningAltIcon);
148
165
 
149
166
  // src/themes/Bruttal/BruttalFonts.ts
150
- var BruttalFonts = ["https://fonts.googleapis.com/css?family=Inconsolata:wght@100;200;300;400;500;700;800;900", "https://fonts.googleapis.com/css?family=Work+Sans:wght@100;200;300;400;500;700;800;900", "https://fonts.googleapis.com/css2?family=Atkinson+Hyperlegible:ital,wght@0,400;0,700;1,400;1,700&display=swap"];
167
+ var BruttalFonts = ["https://fonts.googleapis.com/css?family=Inconsolata:wght@100;200;300;400;500;700;800;900", "https://fonts.googleapis.com/css?family=Work+Sans:wght@0,400;0,700;1,400;1,700&display=swap", "https://fonts.googleapis.com/css2?family=Atkinson+Hyperlegible:ital,wght@0,400;0,700;1,400;1,700&display=swap"];
151
168
 
152
169
  // src/helpers/geometricCalc.ts
153
170
  var SIZE_TYPE = "rem";
@@ -205,7 +222,7 @@ var lineHeights = {
205
222
  "2xs": "0.422",
206
223
  xs: "0.562",
207
224
  sm: "calc(1 / 1.333)",
208
- base: "normal",
225
+ base: "1",
209
226
  lg: "calc(1 * 1.333)",
210
227
  xl: "1.776",
211
228
  "2xl": "2.368"
@@ -379,6 +396,7 @@ var BruttalTheme = {
379
396
  color: "text",
380
397
  fontFamily: "body",
381
398
  textDecorationLine: "underline",
399
+ lineHeight: "base",
382
400
  "&.quiet:not(:hover)": {
383
401
  textDecorationLine: "none"
384
402
  },
@@ -393,30 +411,25 @@ var BruttalTheme = {
393
411
  badges: {
394
412
  positive: {
395
413
  color: "onPositive",
396
- bg: "positive",
397
- borderRadius: "informative"
414
+ bg: "positive"
398
415
  },
399
416
  negative: {
400
417
  color: "onDanger",
401
- bg: "danger",
402
- borderRadius: "informative"
418
+ bg: "danger"
403
419
  },
404
420
  neutral: {
405
421
  color: "onSecondary",
406
422
  bg: "secondary",
407
- borderRadius: "informative",
408
423
  border: "muted",
409
424
  borderColor: "onMuted"
410
425
  },
411
426
  informative: {
412
427
  color: "onNotice",
413
- bg: "notice",
414
- borderRadius: "informative"
428
+ bg: "notice"
415
429
  },
416
430
  muted: {
417
431
  color: "onMuted",
418
- bg: "muted",
419
- borderRadius: "xs"
432
+ bg: "muted"
420
433
  }
421
434
  },
422
435
  buttons: {
@@ -489,8 +502,10 @@ var BruttalTheme = {
489
502
  color: "primary",
490
503
  border: "default",
491
504
  borderColor: "primary",
505
+ borderRadius: "action",
492
506
  ":disabled": {
493
507
  border: "muted",
508
+ borderColor: "onMuted",
494
509
  backgroundColor: "muted",
495
510
  color: "onMuted",
496
511
  cursor: "not-allowed"
@@ -524,12 +539,16 @@ var BruttalTheme = {
524
539
  fontSize: "sm",
525
540
  marginLeft: "2xs"
526
541
  },
542
+ '&:has(input[type="checkbox"])': {
543
+ fontSize: "base",
544
+ gap: "md"
545
+ },
546
+ '& > div:has(input[type="checkbox"]) > svg': {
547
+ marginRight: 0
548
+ },
527
549
  '&:has(input[type="checkbox"]:disabled)': {
528
550
  color: "onMuted"
529
551
  },
530
- "&:has(+div>:is(input, select, textarea))": {
531
- marginBottom: "md"
532
- },
533
552
  '&:has(div > input[type="radio"])': {
534
553
  alignItems: "center"
535
554
  },
@@ -582,6 +601,8 @@ var BruttalTheme = {
582
601
  borderColor: "onMuted",
583
602
  borderRadius: "action",
584
603
  backgroundColor: "surface",
604
+ fontSize: "base",
605
+ lineHeight: "base",
585
606
  "::placeholder": {
586
607
  color: "onMuted"
587
608
  },
@@ -590,13 +611,14 @@ var BruttalTheme = {
590
611
  },
591
612
  ":disabled": {
592
613
  backgroundColor: "muted",
614
+ color: "onMuted",
593
615
  border: "muted",
594
616
  borderColor: "onMuted"
595
617
  },
596
618
  '&[aria-invalid="true"]': {
597
619
  borderColor: "danger"
598
620
  },
599
- '&[aria-invalid="true"]+span>iconify-icon': {
621
+ '&[aria-invalid="true"] ~ span:has(iconify-icon)': {
600
622
  color: "danger"
601
623
  }
602
624
  },
package/dist/esm/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /** Powered by @ttoss/config. https://ttoss.dev/docs/modules/packages/config/ */
2
- import { BruttalTheme } from "./chunk-MT6XFJ5D.js";
2
+ import { BruttalTheme } from "./chunk-22ME5GR5.js";
3
3
 
4
4
  // src/createTheme.ts
5
5
  import deepmerge from "deepmerge";
@@ -1,3 +1,3 @@
1
1
  /** Powered by @ttoss/config. https://ttoss.dev/docs/modules/packages/config/ */
2
- import { BruttalFonts, BruttalTheme } from "../../chunk-MT6XFJ5D.js";
2
+ import { BruttalFonts, BruttalTheme } from "../../chunk-22ME5GR5.js";
3
3
  export { BruttalFonts, BruttalTheme };
package/dist/index.js CHANGED
@@ -66,6 +66,19 @@ var require_success_circle = __commonJS({
66
66
  }
67
67
  });
68
68
 
69
+ // ../../node_modules/.pnpm/@iconify+icons-eos-icons@1.2.6/node_modules/@iconify/icons-eos-icons/three-dots-loading.js
70
+ var require_three_dots_loading = __commonJS({
71
+ "../../node_modules/.pnpm/@iconify+icons-eos-icons@1.2.6/node_modules/@iconify/icons-eos-icons/three-dots-loading.js"(exports) {
72
+ var data = {
73
+ "width": 24,
74
+ "height": 24,
75
+ "body": '<circle cx="18" cy="12" r="0" fill="currentColor"><animate attributeName="r" begin=".67" calcMode="spline" dur="1.5s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" repeatCount="indefinite" values="0;2;0;0"/></circle><circle cx="12" cy="12" r="0" fill="currentColor"><animate attributeName="r" begin=".33" calcMode="spline" dur="1.5s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" repeatCount="indefinite" values="0;2;0;0"/></circle><circle cx="6" cy="12" r="0" fill="currentColor"><animate attributeName="r" begin="0" calcMode="spline" dur="1.5s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" repeatCount="indefinite" values="0;2;0;0"/></circle>'
76
+ };
77
+ exports.__esModule = true;
78
+ exports.default = data;
79
+ }
80
+ });
81
+
69
82
  // src/index.ts
70
83
  var src_exports = {};
71
84
  __export(src_exports, {
@@ -103,12 +116,14 @@ var import_radio_button_checked = __toESM(require("@iconify/icons-carbon/radio-b
103
116
  var import_radio_button = __toESM(require("@iconify/icons-carbon/radio-button"));
104
117
  var import_renew = __toESM(require("@iconify/icons-carbon/renew"));
105
118
  var import_success_circle = __toESM(require_success_circle());
119
+ var import_three_dots_loading = __toESM(require_three_dots_loading());
106
120
  var import_time = __toESM(require("@iconify/icons-carbon/time"));
107
121
  var import_trash_can = __toESM(require("@iconify/icons-carbon/trash-can"));
108
122
  var import_upload = __toESM(require("@iconify/icons-carbon/upload"));
109
123
  var import_user_avatar_filled_alt = __toESM(require("@iconify/icons-carbon/user-avatar-filled-alt"));
110
124
  var import_view_filled = __toESM(require("@iconify/icons-carbon/view-filled"));
111
125
  var import_view_off_filled = __toESM(require("@iconify/icons-carbon/view-off-filled"));
126
+ var import_warning_alt = __toESM(require("@iconify/icons-carbon/warning-alt"));
112
127
  var import_warning_filled = __toESM(require("@iconify/icons-carbon/warning-filled"));
113
128
  var replicateIcon = {
114
129
  body: `<svg width="48" height="48" viewBox="0 0 48 48" fill="none" xmlns="http://www.w3.org/2000/svg">
@@ -158,11 +173,13 @@ var subtractIcon = {
158
173
  (0, import_react.addIcon)("subtract", subtractIcon);
159
174
  (0, import_react.addIcon)("success-circle", import_success_circle.default);
160
175
  (0, import_react.addIcon)("small-close", import_close_filled.default);
176
+ (0, import_react.addIcon)("three-dots-loading", import_three_dots_loading.default);
161
177
  (0, import_react.addIcon)("time", import_time.default);
162
178
  (0, import_react.addIcon)("upload", import_upload.default);
163
179
  (0, import_react.addIcon)("view-off", import_view_off_filled.default);
164
180
  (0, import_react.addIcon)("view-on", import_view_filled.default);
165
181
  (0, import_react.addIcon)("warning", import_warning_filled.default);
182
+ (0, import_react.addIcon)("warning-alt", import_warning_alt.default);
166
183
 
167
184
  // src/helpers/geometricCalc.ts
168
185
  var SIZE_TYPE = "rem";
@@ -220,7 +237,7 @@ var lineHeights = {
220
237
  "2xs": "0.422",
221
238
  xs: "0.562",
222
239
  sm: "calc(1 / 1.333)",
223
- base: "normal",
240
+ base: "1",
224
241
  lg: "calc(1 * 1.333)",
225
242
  xl: "1.776",
226
243
  "2xl": "2.368"
@@ -394,6 +411,7 @@ var BruttalTheme = {
394
411
  color: "text",
395
412
  fontFamily: "body",
396
413
  textDecorationLine: "underline",
414
+ lineHeight: "base",
397
415
  "&.quiet:not(:hover)": {
398
416
  textDecorationLine: "none"
399
417
  },
@@ -408,30 +426,25 @@ var BruttalTheme = {
408
426
  badges: {
409
427
  positive: {
410
428
  color: "onPositive",
411
- bg: "positive",
412
- borderRadius: "informative"
429
+ bg: "positive"
413
430
  },
414
431
  negative: {
415
432
  color: "onDanger",
416
- bg: "danger",
417
- borderRadius: "informative"
433
+ bg: "danger"
418
434
  },
419
435
  neutral: {
420
436
  color: "onSecondary",
421
437
  bg: "secondary",
422
- borderRadius: "informative",
423
438
  border: "muted",
424
439
  borderColor: "onMuted"
425
440
  },
426
441
  informative: {
427
442
  color: "onNotice",
428
- bg: "notice",
429
- borderRadius: "informative"
443
+ bg: "notice"
430
444
  },
431
445
  muted: {
432
446
  color: "onMuted",
433
- bg: "muted",
434
- borderRadius: "xs"
447
+ bg: "muted"
435
448
  }
436
449
  },
437
450
  buttons: {
@@ -504,8 +517,10 @@ var BruttalTheme = {
504
517
  color: "primary",
505
518
  border: "default",
506
519
  borderColor: "primary",
520
+ borderRadius: "action",
507
521
  ":disabled": {
508
522
  border: "muted",
523
+ borderColor: "onMuted",
509
524
  backgroundColor: "muted",
510
525
  color: "onMuted",
511
526
  cursor: "not-allowed"
@@ -539,12 +554,16 @@ var BruttalTheme = {
539
554
  fontSize: "sm",
540
555
  marginLeft: "2xs"
541
556
  },
557
+ '&:has(input[type="checkbox"])': {
558
+ fontSize: "base",
559
+ gap: "md"
560
+ },
561
+ '& > div:has(input[type="checkbox"]) > svg': {
562
+ marginRight: 0
563
+ },
542
564
  '&:has(input[type="checkbox"]:disabled)': {
543
565
  color: "onMuted"
544
566
  },
545
- "&:has(+div>:is(input, select, textarea))": {
546
- marginBottom: "md"
547
- },
548
567
  '&:has(div > input[type="radio"])': {
549
568
  alignItems: "center"
550
569
  },
@@ -597,6 +616,8 @@ var BruttalTheme = {
597
616
  borderColor: "onMuted",
598
617
  borderRadius: "action",
599
618
  backgroundColor: "surface",
619
+ fontSize: "base",
620
+ lineHeight: "base",
600
621
  "::placeholder": {
601
622
  color: "onMuted"
602
623
  },
@@ -605,13 +626,14 @@ var BruttalTheme = {
605
626
  },
606
627
  ":disabled": {
607
628
  backgroundColor: "muted",
629
+ color: "onMuted",
608
630
  border: "muted",
609
631
  borderColor: "onMuted"
610
632
  },
611
633
  '&[aria-invalid="true"]': {
612
634
  borderColor: "danger"
613
635
  },
614
- '&[aria-invalid="true"]+span>iconify-icon': {
636
+ '&[aria-invalid="true"] ~ span:has(iconify-icon)': {
615
637
  color: "danger"
616
638
  }
617
639
  },
@@ -66,6 +66,19 @@ var require_success_circle = __commonJS({
66
66
  }
67
67
  });
68
68
 
69
+ // ../../node_modules/.pnpm/@iconify+icons-eos-icons@1.2.6/node_modules/@iconify/icons-eos-icons/three-dots-loading.js
70
+ var require_three_dots_loading = __commonJS({
71
+ "../../node_modules/.pnpm/@iconify+icons-eos-icons@1.2.6/node_modules/@iconify/icons-eos-icons/three-dots-loading.js"(exports) {
72
+ var data = {
73
+ "width": 24,
74
+ "height": 24,
75
+ "body": '<circle cx="18" cy="12" r="0" fill="currentColor"><animate attributeName="r" begin=".67" calcMode="spline" dur="1.5s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" repeatCount="indefinite" values="0;2;0;0"/></circle><circle cx="12" cy="12" r="0" fill="currentColor"><animate attributeName="r" begin=".33" calcMode="spline" dur="1.5s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" repeatCount="indefinite" values="0;2;0;0"/></circle><circle cx="6" cy="12" r="0" fill="currentColor"><animate attributeName="r" begin="0" calcMode="spline" dur="1.5s" keySplines="0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8;0.2 0.2 0.4 0.8" repeatCount="indefinite" values="0;2;0;0"/></circle>'
76
+ };
77
+ exports.__esModule = true;
78
+ exports.default = data;
79
+ }
80
+ });
81
+
69
82
  // src/themes/Bruttal/Bruttal.ts
70
83
  var Bruttal_exports = {};
71
84
  __export(Bruttal_exports, {
@@ -104,12 +117,14 @@ var import_radio_button_checked = __toESM(require("@iconify/icons-carbon/radio-b
104
117
  var import_radio_button = __toESM(require("@iconify/icons-carbon/radio-button"));
105
118
  var import_renew = __toESM(require("@iconify/icons-carbon/renew"));
106
119
  var import_success_circle = __toESM(require_success_circle());
120
+ var import_three_dots_loading = __toESM(require_three_dots_loading());
107
121
  var import_time = __toESM(require("@iconify/icons-carbon/time"));
108
122
  var import_trash_can = __toESM(require("@iconify/icons-carbon/trash-can"));
109
123
  var import_upload = __toESM(require("@iconify/icons-carbon/upload"));
110
124
  var import_user_avatar_filled_alt = __toESM(require("@iconify/icons-carbon/user-avatar-filled-alt"));
111
125
  var import_view_filled = __toESM(require("@iconify/icons-carbon/view-filled"));
112
126
  var import_view_off_filled = __toESM(require("@iconify/icons-carbon/view-off-filled"));
127
+ var import_warning_alt = __toESM(require("@iconify/icons-carbon/warning-alt"));
113
128
  var import_warning_filled = __toESM(require("@iconify/icons-carbon/warning-filled"));
114
129
  var replicateIcon = {
115
130
  body: `<svg width="48" height="48" viewBox="0 0 48 48" fill="none" xmlns="http://www.w3.org/2000/svg">
@@ -159,14 +174,16 @@ var subtractIcon = {
159
174
  (0, import_react.addIcon)("subtract", subtractIcon);
160
175
  (0, import_react.addIcon)("success-circle", import_success_circle.default);
161
176
  (0, import_react.addIcon)("small-close", import_close_filled.default);
177
+ (0, import_react.addIcon)("three-dots-loading", import_three_dots_loading.default);
162
178
  (0, import_react.addIcon)("time", import_time.default);
163
179
  (0, import_react.addIcon)("upload", import_upload.default);
164
180
  (0, import_react.addIcon)("view-off", import_view_off_filled.default);
165
181
  (0, import_react.addIcon)("view-on", import_view_filled.default);
166
182
  (0, import_react.addIcon)("warning", import_warning_filled.default);
183
+ (0, import_react.addIcon)("warning-alt", import_warning_alt.default);
167
184
 
168
185
  // src/themes/Bruttal/BruttalFonts.ts
169
- var BruttalFonts = ["https://fonts.googleapis.com/css?family=Inconsolata:wght@100;200;300;400;500;700;800;900", "https://fonts.googleapis.com/css?family=Work+Sans:wght@100;200;300;400;500;700;800;900", "https://fonts.googleapis.com/css2?family=Atkinson+Hyperlegible:ital,wght@0,400;0,700;1,400;1,700&display=swap"];
186
+ var BruttalFonts = ["https://fonts.googleapis.com/css?family=Inconsolata:wght@100;200;300;400;500;700;800;900", "https://fonts.googleapis.com/css?family=Work+Sans:wght@0,400;0,700;1,400;1,700&display=swap", "https://fonts.googleapis.com/css2?family=Atkinson+Hyperlegible:ital,wght@0,400;0,700;1,400;1,700&display=swap"];
170
187
 
171
188
  // src/helpers/geometricCalc.ts
172
189
  var SIZE_TYPE = "rem";
@@ -224,7 +241,7 @@ var lineHeights = {
224
241
  "2xs": "0.422",
225
242
  xs: "0.562",
226
243
  sm: "calc(1 / 1.333)",
227
- base: "normal",
244
+ base: "1",
228
245
  lg: "calc(1 * 1.333)",
229
246
  xl: "1.776",
230
247
  "2xl": "2.368"
@@ -398,6 +415,7 @@ var BruttalTheme = {
398
415
  color: "text",
399
416
  fontFamily: "body",
400
417
  textDecorationLine: "underline",
418
+ lineHeight: "base",
401
419
  "&.quiet:not(:hover)": {
402
420
  textDecorationLine: "none"
403
421
  },
@@ -412,30 +430,25 @@ var BruttalTheme = {
412
430
  badges: {
413
431
  positive: {
414
432
  color: "onPositive",
415
- bg: "positive",
416
- borderRadius: "informative"
433
+ bg: "positive"
417
434
  },
418
435
  negative: {
419
436
  color: "onDanger",
420
- bg: "danger",
421
- borderRadius: "informative"
437
+ bg: "danger"
422
438
  },
423
439
  neutral: {
424
440
  color: "onSecondary",
425
441
  bg: "secondary",
426
- borderRadius: "informative",
427
442
  border: "muted",
428
443
  borderColor: "onMuted"
429
444
  },
430
445
  informative: {
431
446
  color: "onNotice",
432
- bg: "notice",
433
- borderRadius: "informative"
447
+ bg: "notice"
434
448
  },
435
449
  muted: {
436
450
  color: "onMuted",
437
- bg: "muted",
438
- borderRadius: "xs"
451
+ bg: "muted"
439
452
  }
440
453
  },
441
454
  buttons: {
@@ -508,8 +521,10 @@ var BruttalTheme = {
508
521
  color: "primary",
509
522
  border: "default",
510
523
  borderColor: "primary",
524
+ borderRadius: "action",
511
525
  ":disabled": {
512
526
  border: "muted",
527
+ borderColor: "onMuted",
513
528
  backgroundColor: "muted",
514
529
  color: "onMuted",
515
530
  cursor: "not-allowed"
@@ -543,12 +558,16 @@ var BruttalTheme = {
543
558
  fontSize: "sm",
544
559
  marginLeft: "2xs"
545
560
  },
561
+ '&:has(input[type="checkbox"])': {
562
+ fontSize: "base",
563
+ gap: "md"
564
+ },
565
+ '& > div:has(input[type="checkbox"]) > svg': {
566
+ marginRight: 0
567
+ },
546
568
  '&:has(input[type="checkbox"]:disabled)': {
547
569
  color: "onMuted"
548
570
  },
549
- "&:has(+div>:is(input, select, textarea))": {
550
- marginBottom: "md"
551
- },
552
571
  '&:has(div > input[type="radio"])': {
553
572
  alignItems: "center"
554
573
  },
@@ -601,6 +620,8 @@ var BruttalTheme = {
601
620
  borderColor: "onMuted",
602
621
  borderRadius: "action",
603
622
  backgroundColor: "surface",
623
+ fontSize: "base",
624
+ lineHeight: "base",
604
625
  "::placeholder": {
605
626
  color: "onMuted"
606
627
  },
@@ -609,13 +630,14 @@ var BruttalTheme = {
609
630
  },
610
631
  ":disabled": {
611
632
  backgroundColor: "muted",
633
+ color: "onMuted",
612
634
  border: "muted",
613
635
  borderColor: "onMuted"
614
636
  },
615
637
  '&[aria-invalid="true"]': {
616
638
  borderColor: "danger"
617
639
  },
618
- '&[aria-invalid="true"]+span>iconify-icon': {
640
+ '&[aria-invalid="true"] ~ span:has(iconify-icon)': {
619
641
  color: "danger"
620
642
  }
621
643
  },
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ttoss/theme",
3
- "version": "1.4.35",
3
+ "version": "1.4.37",
4
4
  "description": "Theme for packages.",
5
5
  "license": "UNLICENSED",
6
6
  "author": "ttoss",
@@ -1,5 +1,5 @@
1
1
  export const BruttalFonts = [
2
2
  'https://fonts.googleapis.com/css?family=Inconsolata:wght@100;200;300;400;500;700;800;900',
3
- 'https://fonts.googleapis.com/css?family=Work+Sans:wght@100;200;300;400;500;700;800;900',
3
+ 'https://fonts.googleapis.com/css?family=Work+Sans:wght@0,400;0,700;1,400;1,700&display=swap',
4
4
  'https://fonts.googleapis.com/css2?family=Atkinson+Hyperlegible:ital,wght@0,400;0,700;1,400;1,700&display=swap',
5
5
  ];
@@ -27,12 +27,14 @@ import radioButtonCheckedIcon from '@iconify/icons-carbon/radio-button-checked';
27
27
  import radioButtonIcon from '@iconify/icons-carbon/radio-button';
28
28
  import renewIcon from '@iconify/icons-carbon/renew';
29
29
  import successCircleIcon from '@iconify/icons-mdi/success-circle';
30
+ import threeDotsLoadingIcon from '@iconify/icons-eos-icons/three-dots-loading';
30
31
  import timeIcon from '@iconify/icons-carbon/time';
31
32
  import trashCanIcon from '@iconify/icons-carbon/trash-can';
32
33
  import uploadIcon from '@iconify/icons-carbon/upload';
33
34
  import userAvatarFilledAltIcon from '@iconify/icons-carbon/user-avatar-filled-alt';
34
35
  import viewFilledIcon from '@iconify/icons-carbon/view-filled';
35
36
  import viewOffFilledIcon from '@iconify/icons-carbon/view-off-filled';
37
+ import warningAltIcon from '@iconify/icons-carbon/warning-alt';
36
38
  import warningFilledIcon from '@iconify/icons-carbon/warning-filled';
37
39
  import type { IconifyIcon } from '@iconify/types';
38
40
 
@@ -86,8 +88,10 @@ addIcon('replicate', replicateIcon);
86
88
  addIcon('subtract', subtractIcon);
87
89
  addIcon('success-circle', successCircleIcon);
88
90
  addIcon('small-close', closeFilledIcon);
91
+ addIcon('three-dots-loading', threeDotsLoadingIcon);
89
92
  addIcon('time', timeIcon);
90
93
  addIcon('upload', uploadIcon);
91
94
  addIcon('view-off', viewOffFilledIcon);
92
95
  addIcon('view-on', viewFilledIcon);
93
96
  addIcon('warning', warningFilledIcon);
97
+ addIcon('warning-alt', warningAltIcon);
@@ -157,6 +157,7 @@ export const BruttalTheme: Theme = {
157
157
  color: 'text',
158
158
  fontFamily: 'body',
159
159
  textDecorationLine: 'underline',
160
+ lineHeight: 'base',
160
161
  '&.quiet:not(:hover)': {
161
162
  textDecorationLine: 'none',
162
163
  },
@@ -172,29 +173,24 @@ export const BruttalTheme: Theme = {
172
173
  positive: {
173
174
  color: 'onPositive',
174
175
  bg: 'positive',
175
- borderRadius: 'informative',
176
176
  },
177
177
  negative: {
178
178
  color: 'onDanger',
179
179
  bg: 'danger',
180
- borderRadius: 'informative',
181
180
  },
182
181
  neutral: {
183
182
  color: 'onSecondary',
184
183
  bg: 'secondary',
185
- borderRadius: 'informative',
186
184
  border: 'muted',
187
185
  borderColor: 'onMuted',
188
186
  },
189
187
  informative: {
190
188
  color: 'onNotice',
191
189
  bg: 'notice',
192
- borderRadius: 'informative',
193
190
  },
194
191
  muted: {
195
192
  color: 'onMuted',
196
193
  bg: 'muted',
197
- borderRadius: 'xs',
198
194
  },
199
195
  },
200
196
  buttons: {
@@ -267,8 +263,10 @@ export const BruttalTheme: Theme = {
267
263
  color: 'primary',
268
264
  border: 'default',
269
265
  borderColor: 'primary',
266
+ borderRadius: 'action',
270
267
  ':disabled': {
271
268
  border: 'muted',
269
+ borderColor: 'onMuted',
272
270
  backgroundColor: 'muted',
273
271
  color: 'onMuted',
274
272
  cursor: 'not-allowed',
@@ -302,12 +300,16 @@ export const BruttalTheme: Theme = {
302
300
  fontSize: 'sm',
303
301
  marginLeft: '2xs',
304
302
  },
303
+ '&:has(input[type="checkbox"])': {
304
+ fontSize: 'base',
305
+ gap: 'md',
306
+ },
307
+ '& > div:has(input[type="checkbox"]) > svg': {
308
+ marginRight: 0,
309
+ },
305
310
  '&:has(input[type="checkbox"]:disabled)': {
306
311
  color: 'onMuted',
307
312
  },
308
- '&:has(+div>:is(input, select, textarea))': {
309
- marginBottom: 'md',
310
- },
311
313
  '&:has(div > input[type="radio"])': {
312
314
  alignItems: 'center',
313
315
  },
@@ -360,6 +362,8 @@ export const BruttalTheme: Theme = {
360
362
  borderColor: 'onMuted',
361
363
  borderRadius: 'action',
362
364
  backgroundColor: 'surface',
365
+ fontSize: 'base',
366
+ lineHeight: 'base',
363
367
  '::placeholder': {
364
368
  color: 'onMuted',
365
369
  },
@@ -368,13 +372,14 @@ export const BruttalTheme: Theme = {
368
372
  },
369
373
  ':disabled': {
370
374
  backgroundColor: 'muted',
375
+ color: 'onMuted',
371
376
  border: 'muted',
372
377
  borderColor: 'onMuted',
373
378
  },
374
379
  '&[aria-invalid="true"]': {
375
380
  borderColor: 'danger',
376
381
  },
377
- '&[aria-invalid="true"]+span>iconify-icon': {
382
+ '&[aria-invalid="true"] ~ span:has(iconify-icon)': {
378
383
  color: 'danger',
379
384
  },
380
385
  },
@@ -2,7 +2,7 @@ export const lineHeights = {
2
2
  '2xs': '0.422',
3
3
  xs: '0.562',
4
4
  sm: 'calc(1 / 1.333)',
5
- base: 'normal',
5
+ base: '1',
6
6
  lg: 'calc(1 * 1.333)',
7
7
  xl: '1.776',
8
8
  '2xl': '2.368',