@nordcode/ui 2.0.2 → 2.0.3

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.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,14 @@
1
+ ## 2.0.3 (2025-09-11)
2
+
3
+ ### improvements
4
+
5
+ - add :active state to buttons
6
+ - use more accessbile emhpasis color for selections
7
+
8
+ ### removals
9
+
10
+ - remove unused .buttonReset class
11
+
1
12
  ## 2.0.2 (2025-05-10)
2
13
 
3
14
  ### improvements
package/out/bundle.css CHANGED
@@ -617,12 +617,12 @@
617
617
 
618
618
  ::selection {
619
619
  background-color: var(--color-brand-primary-base);
620
- color: var(--color-surface-base);
620
+ color: var(--color-brand-primary-emphasis);
621
621
  }
622
622
 
623
623
  ::target-text {
624
624
  background-color: var(--color-brand-primary-base);
625
- color: var(--color-surface-base);
625
+ color: var(--color-brand-primary-emphasis);
626
626
  }
627
627
 
628
628
  :where(a, .nc-link) {
@@ -399,12 +399,12 @@
399
399
 
400
400
  ::selection {
401
401
  background-color: var(--color-brand-primary-base);
402
- color: var(--color-surface-base);
402
+ color: var(--color-brand-primary-emphasis);
403
403
  }
404
404
 
405
405
  ::target-text {
406
406
  background-color: var(--color-brand-primary-base);
407
- color: var(--color-surface-base);
407
+ color: var(--color-brand-primary-emphasis);
408
408
  }
409
409
 
410
410
  :where(a, .nc-link) {
package/out/complete.css CHANGED
@@ -617,12 +617,12 @@
617
617
 
618
618
  ::selection {
619
619
  background-color: var(--color-brand-primary-base);
620
- color: var(--color-surface-base);
620
+ color: var(--color-brand-primary-emphasis);
621
621
  }
622
622
 
623
623
  ::target-text {
624
624
  background-color: var(--color-brand-primary-base);
625
- color: var(--color-surface-base);
625
+ color: var(--color-brand-primary-emphasis);
626
626
  }
627
627
 
628
628
  :where(a, .nc-link) {
@@ -1514,12 +1514,6 @@
1514
1514
  }
1515
1515
 
1516
1516
  @layer components.buttons {
1517
- .buttonReset {
1518
- background: none;
1519
- border: none;
1520
- padding: 0;
1521
- }
1522
-
1523
1517
  :where(button:not([class]), button[type]:not([class]), input[type="button"]:not([class]), input[type="submit"]:not([class]), input[type="reset"]:not([class]), input[type="file"]:not([class]), .nc-button) {
1524
1518
  --_button-background: var(--button-background, var(--surface-hover));
1525
1519
  --_button-color: var(--button-color, var(--text-hover));
@@ -1551,6 +1545,7 @@
1551
1545
  box-shadow: var(--_button-box-shadow);
1552
1546
  -webkit-user-select: none;
1553
1547
  user-select: none;
1548
+ text-box: cap alphabetic;
1554
1549
  -webkit-tap-highlight-color: transparent;
1555
1550
  -webkit-touch-callout: none;
1556
1551
  line-height: var(--line-height-base);
@@ -1575,8 +1570,14 @@
1575
1570
  transform: none;
1576
1571
  }
1577
1572
 
1578
- :where(button:not([class]), button[type]:not([class]), input[type="button"]:not([class]), input[type="submit"]:not([class]), input[type="reset"]:not([class]), .nc-button):active {
1573
+ :where(button:not([class]), button[type]:not([class]), input[type="button"]:not([class]), input[type="submit"]:not([class]), input[type="reset"]:not([class]), .nc-button):is(:active, .-active) {
1574
+ background-color: var(--_button-background-hover);
1575
+ color: var(--_button-color-hover);
1576
+ border-color: var(--_button-border-color-hover);
1579
1577
  box-shadow: none;
1578
+ filter: contrast(1.2) saturate(1.1);
1579
+ -webkit-backdrop-filter: contrast(2);
1580
+ backdrop-filter: contrast(2);
1580
1581
  transform: none;
1581
1582
  }
1582
1583
 
@@ -1593,14 +1594,6 @@
1593
1594
  transform: none !important;
1594
1595
  }
1595
1596
 
1596
- :where(button:not([class]), button[type]:not([class]), input[type="button"]:not([class]), input[type="submit"]:not([class]), input[type="reset"]:not([class]), .nc-button).-active {
1597
- background-color: var(--_button-background-hover);
1598
- color: var(--_button-color-hover);
1599
- border-color: var(--_button-border-color-hover);
1600
- box-shadow: none;
1601
- transform: none;
1602
- }
1603
-
1604
1597
  :where(button:not([class]), button[type]:not([class]), input[type="button"]:not([class]), input[type="submit"]:not([class]), input[type="reset"]:not([class]), .nc-button).-outline {
1605
1598
  color: var(--text);
1606
1599
  border-color: var(--border);
@@ -1617,8 +1610,6 @@
1617
1610
  color: var(--text);
1618
1611
  background-color: #0000;
1619
1612
  border-color: #0000;
1620
- box-shadow: none !important;
1621
- transform: none !important;
1622
1613
  }
1623
1614
 
1624
1615
  :where(button:not([class]), button[type]:not([class]), input[type="button"]:not([class]), input[type="submit"]:not([class]), input[type="reset"]:not([class]), .nc-button).-stealth:hover {
@@ -1627,6 +1618,11 @@
1627
1618
  border-color: #0000;
1628
1619
  }
1629
1620
 
1621
+ :where(button:not([class]), button[type]:not([class]), input[type="button"]:not([class]), input[type="submit"]:not([class]), input[type="reset"]:not([class]), .nc-button).-stealth {
1622
+ box-shadow: none !important;
1623
+ transform: none !important;
1624
+ }
1625
+
1630
1626
  :where(button:not([class]), button[type]:not([class]), input[type="button"]:not([class]), input[type="submit"]:not([class]), input[type="reset"]:not([class]), .nc-button).-small {
1631
1627
  --_button-padding-inline: var(--control-spacing-near, .5em);
1632
1628
  min-block-size: var(--control-height-small);
@@ -1753,6 +1749,20 @@
1753
1749
  --_card-padding-inline: var(--card-padding-inline, var(--spacing-base));
1754
1750
  --_card-padding-block: var(--card-padding-block, var(--spacing-far));
1755
1751
  --_card-border-radius: var(--card-border-radius, var(--border-radius-large));
1752
+ }
1753
+
1754
+ :where(.nc-card)[data-size="xs"] {
1755
+ --_card-padding-inline: var(--card-padding-inline, var(--spacing-nearest));
1756
+ --_card-padding-block: var(--card-padding-block, var(--spacing-near));
1757
+ --_card-border-radius: var(--card-border-radius, var(--border-radius-medium));
1758
+ }
1759
+
1760
+ :where(.nc-card)[data-size="sm"] {
1761
+ --_card-padding-inline: var(--card-padding-inline, var(--spacing-near));
1762
+ --_card-padding-block: var(--card-padding-block, var(--spacing-base));
1763
+ }
1764
+
1765
+ :where(.nc-card) {
1756
1766
  box-sizing: border-box;
1757
1767
  inline-size: 100%;
1758
1768
  padding-inline: var(--_card-padding-inline);
@@ -1768,24 +1778,13 @@
1768
1778
  overflow: hidden;
1769
1779
  }
1770
1780
 
1771
- :where(.nc-card)[data-size="xs"] {
1772
- --_card-padding-inline: var(--card-padding-inline, var(--spacing-nearest));
1773
- --_card-padding-block: var(--card-padding-block, var(--spacing-near));
1774
- --_card-border-radius: var(--card-border-radius, var(--border-radius-medium));
1775
- }
1776
-
1777
- :where(.nc-card)[data-size="sm"] {
1778
- --_card-padding-inline: var(--card-padding-inline, var(--spacing-near));
1779
- --_card-padding-block: var(--card-padding-block, var(--spacing-base));
1780
- }
1781
-
1782
- @media (min-width: 480px) {
1781
+ @media (width >= 480px) {
1783
1782
  :where(.nc-card) {
1784
1783
  --_card-padding-inline: var(--card-padding-inline, var(--spacing-far));
1785
1784
  }
1786
1785
  }
1787
1786
 
1788
- @media (min-width: 1024px) {
1787
+ @media (width >= 1024px) {
1789
1788
  :where(.nc-card) {
1790
1789
  --_card-padding-inline: var(--card-padding-inline, var(--spacing-farthest));
1791
1790
  }
@@ -1857,7 +1856,7 @@
1857
1856
  overflow: clip;
1858
1857
  }
1859
1858
 
1860
- @media (min-width: 36rem) {
1859
+ @media (width >= 36rem) {
1861
1860
  :where(.nc-dialog) {
1862
1861
  --_dialog-radius: var(--dialog-radius, var(--border-radius-medium));
1863
1862
  inline-size: calc(100dvw - 2 * var(--_dialog-layout-padding));
@@ -399,12 +399,12 @@
399
399
 
400
400
  ::selection {
401
401
  background-color: var(--color-brand-primary-base);
402
- color: var(--color-surface-base);
402
+ color: var(--color-brand-primary-emphasis);
403
403
  }
404
404
 
405
405
  ::target-text {
406
406
  background-color: var(--color-brand-primary-base);
407
- color: var(--color-surface-base);
407
+ color: var(--color-brand-primary-emphasis);
408
408
  }
409
409
 
410
410
  :where(a, .nc-link) {
@@ -1296,12 +1296,6 @@
1296
1296
  }
1297
1297
 
1298
1298
  @layer components.buttons {
1299
- .buttonReset {
1300
- background: none;
1301
- border: none;
1302
- padding: 0;
1303
- }
1304
-
1305
1299
  :where(button:not([class]), button[type]:not([class]), input[type="button"]:not([class]), input[type="submit"]:not([class]), input[type="reset"]:not([class]), input[type="file"]:not([class]), .nc-button) {
1306
1300
  --_button-background: var(--button-background, var(--surface-hover));
1307
1301
  --_button-color: var(--button-color, var(--text-hover));
@@ -1333,6 +1327,7 @@
1333
1327
  box-shadow: var(--_button-box-shadow);
1334
1328
  -webkit-user-select: none;
1335
1329
  user-select: none;
1330
+ text-box: cap alphabetic;
1336
1331
  -webkit-tap-highlight-color: transparent;
1337
1332
  -webkit-touch-callout: none;
1338
1333
  line-height: var(--line-height-base);
@@ -1357,8 +1352,14 @@
1357
1352
  transform: none;
1358
1353
  }
1359
1354
 
1360
- :where(button:not([class]), button[type]:not([class]), input[type="button"]:not([class]), input[type="submit"]:not([class]), input[type="reset"]:not([class]), .nc-button):active {
1355
+ :where(button:not([class]), button[type]:not([class]), input[type="button"]:not([class]), input[type="submit"]:not([class]), input[type="reset"]:not([class]), .nc-button):is(:active, .-active) {
1356
+ background-color: var(--_button-background-hover);
1357
+ color: var(--_button-color-hover);
1358
+ border-color: var(--_button-border-color-hover);
1361
1359
  box-shadow: none;
1360
+ filter: contrast(1.2) saturate(1.1);
1361
+ -webkit-backdrop-filter: contrast(2);
1362
+ backdrop-filter: contrast(2);
1362
1363
  transform: none;
1363
1364
  }
1364
1365
 
@@ -1375,14 +1376,6 @@
1375
1376
  transform: none !important;
1376
1377
  }
1377
1378
 
1378
- :where(button:not([class]), button[type]:not([class]), input[type="button"]:not([class]), input[type="submit"]:not([class]), input[type="reset"]:not([class]), .nc-button).-active {
1379
- background-color: var(--_button-background-hover);
1380
- color: var(--_button-color-hover);
1381
- border-color: var(--_button-border-color-hover);
1382
- box-shadow: none;
1383
- transform: none;
1384
- }
1385
-
1386
1379
  :where(button:not([class]), button[type]:not([class]), input[type="button"]:not([class]), input[type="submit"]:not([class]), input[type="reset"]:not([class]), .nc-button).-outline {
1387
1380
  color: var(--text);
1388
1381
  border-color: var(--border);
@@ -1399,8 +1392,6 @@
1399
1392
  color: var(--text);
1400
1393
  background-color: #0000;
1401
1394
  border-color: #0000;
1402
- box-shadow: none !important;
1403
- transform: none !important;
1404
1395
  }
1405
1396
 
1406
1397
  :where(button:not([class]), button[type]:not([class]), input[type="button"]:not([class]), input[type="submit"]:not([class]), input[type="reset"]:not([class]), .nc-button).-stealth:hover {
@@ -1409,6 +1400,11 @@
1409
1400
  border-color: #0000;
1410
1401
  }
1411
1402
 
1403
+ :where(button:not([class]), button[type]:not([class]), input[type="button"]:not([class]), input[type="submit"]:not([class]), input[type="reset"]:not([class]), .nc-button).-stealth {
1404
+ box-shadow: none !important;
1405
+ transform: none !important;
1406
+ }
1407
+
1412
1408
  :where(button:not([class]), button[type]:not([class]), input[type="button"]:not([class]), input[type="submit"]:not([class]), input[type="reset"]:not([class]), .nc-button).-small {
1413
1409
  --_button-padding-inline: var(--control-spacing-near, .5em);
1414
1410
  min-block-size: var(--control-height-small);
@@ -1535,6 +1531,20 @@
1535
1531
  --_card-padding-inline: var(--card-padding-inline, var(--spacing-base));
1536
1532
  --_card-padding-block: var(--card-padding-block, var(--spacing-far));
1537
1533
  --_card-border-radius: var(--card-border-radius, var(--border-radius-large));
1534
+ }
1535
+
1536
+ :where(.nc-card)[data-size="xs"] {
1537
+ --_card-padding-inline: var(--card-padding-inline, var(--spacing-nearest));
1538
+ --_card-padding-block: var(--card-padding-block, var(--spacing-near));
1539
+ --_card-border-radius: var(--card-border-radius, var(--border-radius-medium));
1540
+ }
1541
+
1542
+ :where(.nc-card)[data-size="sm"] {
1543
+ --_card-padding-inline: var(--card-padding-inline, var(--spacing-near));
1544
+ --_card-padding-block: var(--card-padding-block, var(--spacing-base));
1545
+ }
1546
+
1547
+ :where(.nc-card) {
1538
1548
  box-sizing: border-box;
1539
1549
  inline-size: 100%;
1540
1550
  padding-inline: var(--_card-padding-inline);
@@ -1550,24 +1560,13 @@
1550
1560
  overflow: hidden;
1551
1561
  }
1552
1562
 
1553
- :where(.nc-card)[data-size="xs"] {
1554
- --_card-padding-inline: var(--card-padding-inline, var(--spacing-nearest));
1555
- --_card-padding-block: var(--card-padding-block, var(--spacing-near));
1556
- --_card-border-radius: var(--card-border-radius, var(--border-radius-medium));
1557
- }
1558
-
1559
- :where(.nc-card)[data-size="sm"] {
1560
- --_card-padding-inline: var(--card-padding-inline, var(--spacing-near));
1561
- --_card-padding-block: var(--card-padding-block, var(--spacing-base));
1562
- }
1563
-
1564
- @media (min-width: 480px) {
1563
+ @media (width >= 480px) {
1565
1564
  :where(.nc-card) {
1566
1565
  --_card-padding-inline: var(--card-padding-inline, var(--spacing-far));
1567
1566
  }
1568
1567
  }
1569
1568
 
1570
- @media (min-width: 1024px) {
1569
+ @media (width >= 1024px) {
1571
1570
  :where(.nc-card) {
1572
1571
  --_card-padding-inline: var(--card-padding-inline, var(--spacing-farthest));
1573
1572
  }
@@ -1639,7 +1638,7 @@
1639
1638
  overflow: clip;
1640
1639
  }
1641
1640
 
1642
- @media (min-width: 36rem) {
1641
+ @media (width >= 36rem) {
1643
1642
  :where(.nc-dialog) {
1644
1643
  --_dialog-radius: var(--dialog-radius, var(--border-radius-medium));
1645
1644
  inline-size: calc(100dvw - 2 * var(--_dialog-layout-padding));
package/package.json CHANGED
@@ -12,7 +12,7 @@
12
12
  "type": "git",
13
13
  "url": "https://github.com/nordcode-agency/nordcode/tree/main/packages/ui"
14
14
  },
15
- "version": "2.0.2",
15
+ "version": "2.0.3",
16
16
  "publishConfig": {
17
17
  "access": "public"
18
18
  },
@@ -1,10 +1,4 @@
1
1
  @layer components.buttons {
2
- .buttonReset {
3
- padding: 0;
4
- border: none;
5
- background: none;
6
- }
7
-
8
2
  :where(
9
3
  button:not([class]),
10
4
  button[type]:not([class]),
@@ -57,6 +51,7 @@
57
51
  text-decoration: unset;
58
52
  box-shadow: var(--_button-box-shadow);
59
53
  user-select: none;
54
+ text-box: cap alphabetic;
60
55
  -webkit-tap-highlight-color: transparent;
61
56
  -webkit-touch-callout: none;
62
57
 
@@ -71,6 +66,7 @@
71
66
  input[type="reset"]:not([class]),
72
67
  .nc-button
73
68
  ) {
69
+
74
70
  &:hover {
75
71
  background: var(--_button-background-hover);
76
72
  color: var(--_button-color-hover);
@@ -84,9 +80,15 @@
84
80
  font-weight: var(--font-weight-active);
85
81
  }
86
82
 
87
- &:active {
83
+ &:is(:active, .-active) {
84
+ background-color: var(--_button-background-hover);
85
+ color: var(--_button-color-hover);
86
+ border-color: var(--_button-border-color-hover);
87
+
88
88
  box-shadow: none;
89
89
  transform: none;
90
+ filter: contrast(1.2) saturate(1.1);
91
+ backdrop-filter: contrast(2);
90
92
  }
91
93
 
92
94
  &[disabled] {
@@ -103,15 +105,6 @@
103
105
  cursor: not-allowed;
104
106
  }
105
107
 
106
- &.-active {
107
- background-color: var(--_button-background-hover);
108
- color: var(--_button-color-hover);
109
- border-color: var(--_button-border-color-hover);
110
-
111
- box-shadow: none;
112
- transform: none;
113
- }
114
-
115
108
  &.-outline {
116
109
  background-color: transparent;
117
110
  color: var(--text);
@@ -202,7 +202,7 @@
202
202
  ::selection,
203
203
  ::target-text {
204
204
  background-color: var(--color-brand-primary-base);
205
- color: var(--color-surface-base);
205
+ color: var(--color-brand-primary-emphasis);
206
206
  }
207
207
 
208
208
  :where(a, .nc-link) {