@nordcode/ui 1.0.7 → 1.0.9
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 +17 -0
- package/out/bundle.css +11 -1
- package/out/bundle_configless.css +11 -1
- package/out/complete.css +48 -10
- package/out/complete_configless.css +48 -10
- package/package.json +1 -1
- package/src/styles/components/dialogs.css +38 -15
- package/src/styles/utils/base.css +2 -2
- package/src/styles/utils/reset.css +5 -0
package/CHANGELOG.md
CHANGED
|
@@ -28,3 +28,20 @@ Be sure to checkout the updated markup for these components in the documentation
|
|
|
28
28
|
### Fixes
|
|
29
29
|
|
|
30
30
|
- Fix fields not compiling
|
|
31
|
+
|
|
32
|
+
## 1.0.8 (2024-12-27)
|
|
33
|
+
|
|
34
|
+
### Improvements
|
|
35
|
+
|
|
36
|
+
- Tweak Dialog Styles
|
|
37
|
+
- Disable scroll when modal dialog is open
|
|
38
|
+
|
|
39
|
+
### Fixes
|
|
40
|
+
|
|
41
|
+
- Fix user selection styles
|
|
42
|
+
|
|
43
|
+
## 1.0.9 (2024-12-27)
|
|
44
|
+
|
|
45
|
+
### Improvements
|
|
46
|
+
|
|
47
|
+
- Tweak Dialog Radius and mobile styles
|
package/out/bundle.css
CHANGED
|
@@ -451,6 +451,11 @@
|
|
|
451
451
|
:where(p) {
|
|
452
452
|
text-wrap: pretty;
|
|
453
453
|
}
|
|
454
|
+
|
|
455
|
+
:where(html):has(dialog:modal) {
|
|
456
|
+
scrollbar-gutter: stable;
|
|
457
|
+
overflow: hidden;
|
|
458
|
+
}
|
|
454
459
|
}
|
|
455
460
|
|
|
456
461
|
@layer base {
|
|
@@ -647,7 +652,12 @@
|
|
|
647
652
|
color: var(--color-brand-primary-base);
|
|
648
653
|
}
|
|
649
654
|
|
|
650
|
-
|
|
655
|
+
::selection {
|
|
656
|
+
background-color: var(--color-brand-primary-base);
|
|
657
|
+
color: var(--color-surface-base);
|
|
658
|
+
}
|
|
659
|
+
|
|
660
|
+
::target-text {
|
|
651
661
|
background-color: var(--color-brand-primary-base);
|
|
652
662
|
color: var(--color-surface-base);
|
|
653
663
|
}
|
|
@@ -201,6 +201,11 @@
|
|
|
201
201
|
:where(p) {
|
|
202
202
|
text-wrap: pretty;
|
|
203
203
|
}
|
|
204
|
+
|
|
205
|
+
:where(html):has(dialog:modal) {
|
|
206
|
+
scrollbar-gutter: stable;
|
|
207
|
+
overflow: hidden;
|
|
208
|
+
}
|
|
204
209
|
}
|
|
205
210
|
|
|
206
211
|
@layer base {
|
|
@@ -397,7 +402,12 @@
|
|
|
397
402
|
color: var(--color-brand-primary-base);
|
|
398
403
|
}
|
|
399
404
|
|
|
400
|
-
|
|
405
|
+
::selection {
|
|
406
|
+
background-color: var(--color-brand-primary-base);
|
|
407
|
+
color: var(--color-surface-base);
|
|
408
|
+
}
|
|
409
|
+
|
|
410
|
+
::target-text {
|
|
401
411
|
background-color: var(--color-brand-primary-base);
|
|
402
412
|
color: var(--color-surface-base);
|
|
403
413
|
}
|
package/out/complete.css
CHANGED
|
@@ -451,6 +451,11 @@
|
|
|
451
451
|
:where(p) {
|
|
452
452
|
text-wrap: pretty;
|
|
453
453
|
}
|
|
454
|
+
|
|
455
|
+
:where(html):has(dialog:modal) {
|
|
456
|
+
scrollbar-gutter: stable;
|
|
457
|
+
overflow: hidden;
|
|
458
|
+
}
|
|
454
459
|
}
|
|
455
460
|
|
|
456
461
|
@layer base {
|
|
@@ -647,7 +652,12 @@
|
|
|
647
652
|
color: var(--color-brand-primary-base);
|
|
648
653
|
}
|
|
649
654
|
|
|
650
|
-
|
|
655
|
+
::selection {
|
|
656
|
+
background-color: var(--color-brand-primary-base);
|
|
657
|
+
color: var(--color-surface-base);
|
|
658
|
+
}
|
|
659
|
+
|
|
660
|
+
::target-text {
|
|
651
661
|
background-color: var(--color-brand-primary-base);
|
|
652
662
|
color: var(--color-surface-base);
|
|
653
663
|
}
|
|
@@ -1740,23 +1750,40 @@
|
|
|
1740
1750
|
:where(.nc-dialog) {
|
|
1741
1751
|
--_dialog-radius: var(--dialog-radius, var(--border-radius-medium));
|
|
1742
1752
|
--_dialog-padding-inline: var(--dialog-padding-inline, var(--spacing-base));
|
|
1753
|
+
--_dialog-layout-padding: var(--layout-padding, var(--spacing-base));
|
|
1743
1754
|
--_dialog-close-size: var(--dialog-close-size, var(--button-height-base));
|
|
1744
1755
|
--_dialog-transition-duration: var(--dialog-transition-duration, var(--transition-duration-base));
|
|
1756
|
+
--_dialog-max-block-size: var(--dialog-max-block-size, 90dvh);
|
|
1757
|
+
--_dialog-max-inline-size: var(--dialog-max-inline-size, 28rem);
|
|
1758
|
+
--dialog-radius: 0;
|
|
1745
1759
|
z-index: var(--layer-important);
|
|
1746
1760
|
animation: close-dialog var(--_dialog-transition-duration) cubic-bezier(.7, 0, 1, 1) forwards;
|
|
1747
1761
|
transition: opacity var(--_dialog-transition-duration) cubic-bezier(.7, 0, 1, 1);
|
|
1748
1762
|
border: var(--border-width-thin) solid var(--color-border-base);
|
|
1749
|
-
|
|
1763
|
+
block-size: max-content;
|
|
1764
|
+
inline-size: 100dvw;
|
|
1765
|
+
max-inline-size: var(--_dialog-max-inline-size);
|
|
1750
1766
|
background: var(--color-surface-base);
|
|
1751
|
-
|
|
1752
|
-
|
|
1753
|
-
|
|
1754
|
-
|
|
1755
|
-
margin
|
|
1767
|
+
overflow-clip-margin: 1rem;
|
|
1768
|
+
pointer-events: all;
|
|
1769
|
+
border-radius: 0;
|
|
1770
|
+
max-block-size: 100dvw;
|
|
1771
|
+
margin: auto 0;
|
|
1756
1772
|
padding: 0;
|
|
1757
1773
|
display: block;
|
|
1758
1774
|
position: fixed;
|
|
1759
1775
|
inset: 0;
|
|
1776
|
+
overflow: clip;
|
|
1777
|
+
}
|
|
1778
|
+
|
|
1779
|
+
@media (min-width: 36rem) {
|
|
1780
|
+
:where(.nc-dialog) {
|
|
1781
|
+
border-radius: var(--_dialog-radius);
|
|
1782
|
+
inline-size: calc(100dvw - 2 * var(--_dialog-layout-padding));
|
|
1783
|
+
max-block-size: var(--_dialog-max-block-size);
|
|
1784
|
+
box-shadow: var(--shadow-medium);
|
|
1785
|
+
margin-inline: auto;
|
|
1786
|
+
}
|
|
1760
1787
|
}
|
|
1761
1788
|
|
|
1762
1789
|
:where(.nc-dialog)[open] {
|
|
@@ -1765,6 +1792,7 @@
|
|
|
1765
1792
|
|
|
1766
1793
|
:where(.nc-dialog):not([open]) {
|
|
1767
1794
|
opacity: 0;
|
|
1795
|
+
pointer-events: none;
|
|
1768
1796
|
}
|
|
1769
1797
|
|
|
1770
1798
|
:where(.nc-dialog)::backdrop {
|
|
@@ -1774,20 +1802,30 @@
|
|
|
1774
1802
|
}
|
|
1775
1803
|
|
|
1776
1804
|
:where(.nc-dialog) :where(.dialog-container) {
|
|
1805
|
+
block-size: max-content;
|
|
1806
|
+
inline-size: 100%;
|
|
1807
|
+
max-block-size: var(--_dialog-max-block-size);
|
|
1808
|
+
overflow-clip-margin: 1rem;
|
|
1777
1809
|
grid-template: "header header"
|
|
1778
1810
|
"content content" 1fr
|
|
1779
1811
|
"footer footer"
|
|
1780
1812
|
/ 1fr 1fr;
|
|
1781
|
-
block-size: 100%;
|
|
1782
|
-
inline-size: 100%;
|
|
1783
1813
|
display: grid;
|
|
1814
|
+
overflow: clip;
|
|
1815
|
+
}
|
|
1816
|
+
|
|
1817
|
+
:where(.nc-dialog) :where(.dialog-container) > :first-child {
|
|
1818
|
+
border-radius: var(--_dialog-radius) var(--_dialog-radius) 0 0;
|
|
1819
|
+
}
|
|
1820
|
+
|
|
1821
|
+
:where(.nc-dialog) :where(.dialog-container) > :last-child {
|
|
1822
|
+
border-radius: 0 0 var(--_dialog-radius) var(--_dialog-radius);
|
|
1784
1823
|
}
|
|
1785
1824
|
|
|
1786
1825
|
:where(.nc-dialog) :where(.dialog-header) {
|
|
1787
1826
|
border-block-end: var(--border-width-thin) solid var(--color-border-muted);
|
|
1788
1827
|
background-color: var(--color-surface-subtle);
|
|
1789
1828
|
padding-inline: var(--_dialog-padding-inline);
|
|
1790
|
-
border-radius: var(--_dialog-radius) var(--_dialog-radius) 0 0;
|
|
1791
1829
|
grid-area: header;
|
|
1792
1830
|
grid-template: "title close" / 1fr var(--_dialog-close-size);
|
|
1793
1831
|
padding-block: var(--spacing-near);
|
|
@@ -201,6 +201,11 @@
|
|
|
201
201
|
:where(p) {
|
|
202
202
|
text-wrap: pretty;
|
|
203
203
|
}
|
|
204
|
+
|
|
205
|
+
:where(html):has(dialog:modal) {
|
|
206
|
+
scrollbar-gutter: stable;
|
|
207
|
+
overflow: hidden;
|
|
208
|
+
}
|
|
204
209
|
}
|
|
205
210
|
|
|
206
211
|
@layer base {
|
|
@@ -397,7 +402,12 @@
|
|
|
397
402
|
color: var(--color-brand-primary-base);
|
|
398
403
|
}
|
|
399
404
|
|
|
400
|
-
|
|
405
|
+
::selection {
|
|
406
|
+
background-color: var(--color-brand-primary-base);
|
|
407
|
+
color: var(--color-surface-base);
|
|
408
|
+
}
|
|
409
|
+
|
|
410
|
+
::target-text {
|
|
401
411
|
background-color: var(--color-brand-primary-base);
|
|
402
412
|
color: var(--color-surface-base);
|
|
403
413
|
}
|
|
@@ -1490,23 +1500,40 @@
|
|
|
1490
1500
|
:where(.nc-dialog) {
|
|
1491
1501
|
--_dialog-radius: var(--dialog-radius, var(--border-radius-medium));
|
|
1492
1502
|
--_dialog-padding-inline: var(--dialog-padding-inline, var(--spacing-base));
|
|
1503
|
+
--_dialog-layout-padding: var(--layout-padding, var(--spacing-base));
|
|
1493
1504
|
--_dialog-close-size: var(--dialog-close-size, var(--button-height-base));
|
|
1494
1505
|
--_dialog-transition-duration: var(--dialog-transition-duration, var(--transition-duration-base));
|
|
1506
|
+
--_dialog-max-block-size: var(--dialog-max-block-size, 90dvh);
|
|
1507
|
+
--_dialog-max-inline-size: var(--dialog-max-inline-size, 28rem);
|
|
1508
|
+
--dialog-radius: 0;
|
|
1495
1509
|
z-index: var(--layer-important);
|
|
1496
1510
|
animation: close-dialog var(--_dialog-transition-duration) cubic-bezier(.7, 0, 1, 1) forwards;
|
|
1497
1511
|
transition: opacity var(--_dialog-transition-duration) cubic-bezier(.7, 0, 1, 1);
|
|
1498
1512
|
border: var(--border-width-thin) solid var(--color-border-base);
|
|
1499
|
-
|
|
1513
|
+
block-size: max-content;
|
|
1514
|
+
inline-size: 100dvw;
|
|
1515
|
+
max-inline-size: var(--_dialog-max-inline-size);
|
|
1500
1516
|
background: var(--color-surface-base);
|
|
1501
|
-
|
|
1502
|
-
|
|
1503
|
-
|
|
1504
|
-
|
|
1505
|
-
margin
|
|
1517
|
+
overflow-clip-margin: 1rem;
|
|
1518
|
+
pointer-events: all;
|
|
1519
|
+
border-radius: 0;
|
|
1520
|
+
max-block-size: 100dvw;
|
|
1521
|
+
margin: auto 0;
|
|
1506
1522
|
padding: 0;
|
|
1507
1523
|
display: block;
|
|
1508
1524
|
position: fixed;
|
|
1509
1525
|
inset: 0;
|
|
1526
|
+
overflow: clip;
|
|
1527
|
+
}
|
|
1528
|
+
|
|
1529
|
+
@media (min-width: 36rem) {
|
|
1530
|
+
:where(.nc-dialog) {
|
|
1531
|
+
border-radius: var(--_dialog-radius);
|
|
1532
|
+
inline-size: calc(100dvw - 2 * var(--_dialog-layout-padding));
|
|
1533
|
+
max-block-size: var(--_dialog-max-block-size);
|
|
1534
|
+
box-shadow: var(--shadow-medium);
|
|
1535
|
+
margin-inline: auto;
|
|
1536
|
+
}
|
|
1510
1537
|
}
|
|
1511
1538
|
|
|
1512
1539
|
:where(.nc-dialog)[open] {
|
|
@@ -1515,6 +1542,7 @@
|
|
|
1515
1542
|
|
|
1516
1543
|
:where(.nc-dialog):not([open]) {
|
|
1517
1544
|
opacity: 0;
|
|
1545
|
+
pointer-events: none;
|
|
1518
1546
|
}
|
|
1519
1547
|
|
|
1520
1548
|
:where(.nc-dialog)::backdrop {
|
|
@@ -1524,20 +1552,30 @@
|
|
|
1524
1552
|
}
|
|
1525
1553
|
|
|
1526
1554
|
:where(.nc-dialog) :where(.dialog-container) {
|
|
1555
|
+
block-size: max-content;
|
|
1556
|
+
inline-size: 100%;
|
|
1557
|
+
max-block-size: var(--_dialog-max-block-size);
|
|
1558
|
+
overflow-clip-margin: 1rem;
|
|
1527
1559
|
grid-template: "header header"
|
|
1528
1560
|
"content content" 1fr
|
|
1529
1561
|
"footer footer"
|
|
1530
1562
|
/ 1fr 1fr;
|
|
1531
|
-
block-size: 100%;
|
|
1532
|
-
inline-size: 100%;
|
|
1533
1563
|
display: grid;
|
|
1564
|
+
overflow: clip;
|
|
1565
|
+
}
|
|
1566
|
+
|
|
1567
|
+
:where(.nc-dialog) :where(.dialog-container) > :first-child {
|
|
1568
|
+
border-radius: var(--_dialog-radius) var(--_dialog-radius) 0 0;
|
|
1569
|
+
}
|
|
1570
|
+
|
|
1571
|
+
:where(.nc-dialog) :where(.dialog-container) > :last-child {
|
|
1572
|
+
border-radius: 0 0 var(--_dialog-radius) var(--_dialog-radius);
|
|
1534
1573
|
}
|
|
1535
1574
|
|
|
1536
1575
|
:where(.nc-dialog) :where(.dialog-header) {
|
|
1537
1576
|
border-block-end: var(--border-width-thin) solid var(--color-border-muted);
|
|
1538
1577
|
background-color: var(--color-surface-subtle);
|
|
1539
1578
|
padding-inline: var(--_dialog-padding-inline);
|
|
1540
|
-
border-radius: var(--_dialog-radius) var(--_dialog-radius) 0 0;
|
|
1541
1579
|
grid-area: header;
|
|
1542
1580
|
grid-template: "title close" / 1fr var(--_dialog-close-size);
|
|
1543
1581
|
padding-block: var(--spacing-near);
|
package/package.json
CHANGED
|
@@ -2,28 +2,40 @@
|
|
|
2
2
|
:where(.nc-dialog) {
|
|
3
3
|
--_dialog-radius: var(--dialog-radius, var(--border-radius-medium));
|
|
4
4
|
--_dialog-padding-inline: var(--dialog-padding-inline, var(--spacing-base));
|
|
5
|
+
--_dialog-layout-padding: var(--layout-padding, var(--spacing-base));
|
|
5
6
|
--_dialog-close-size: var(--dialog-close-size, var(--button-height-base));
|
|
6
|
-
--_dialog-transition-duration: var(
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
);
|
|
7
|
+
--_dialog-transition-duration: var(--dialog-transition-duration,
|
|
8
|
+
var(--transition-duration-base));
|
|
9
|
+
--_dialog-max-block-size: var(--dialog-max-block-size, 90dvh);
|
|
10
|
+
--_dialog-max-inline-size: var(--dialog-max-inline-size, 28rem);
|
|
10
11
|
|
|
12
|
+
--dialog-radius: 0;
|
|
11
13
|
display: block;
|
|
12
14
|
z-index: var(--layer-important);
|
|
13
|
-
animation: close-dialog var(--_dialog-transition-duration) cubic-bezier(0.7, 0, 1, 1)
|
|
14
|
-
forwards;
|
|
15
|
+
animation: close-dialog var(--_dialog-transition-duration) cubic-bezier(0.7, 0, 1, 1) forwards;
|
|
15
16
|
transition: opacity var(--_dialog-transition-duration) cubic-bezier(0.7, 0, 1, 1);
|
|
16
17
|
position: fixed;
|
|
17
18
|
inset: 0;
|
|
18
19
|
border: var(--border-width-thin) solid var(--color-border-base);
|
|
19
|
-
inline-size:
|
|
20
|
-
block-size:
|
|
21
|
-
max-inline-size:
|
|
20
|
+
inline-size: 100dvw;
|
|
21
|
+
block-size: max-content;
|
|
22
|
+
max-inline-size: var(--_dialog-max-inline-size);
|
|
23
|
+
max-block-size: 100dvw;
|
|
22
24
|
background: var(--color-surface-base);
|
|
23
|
-
|
|
24
|
-
margin-block: 5dvh;
|
|
25
|
+
margin: auto 0;
|
|
25
26
|
padding: 0;
|
|
26
|
-
border-radius:
|
|
27
|
+
border-radius: 0;
|
|
28
|
+
overflow: clip;
|
|
29
|
+
overflow-clip-margin: 1rem;
|
|
30
|
+
pointer-events: all;
|
|
31
|
+
|
|
32
|
+
@media (min-width: 36rem) {
|
|
33
|
+
border-radius: var(--_dialog-radius);
|
|
34
|
+
inline-size: calc(100dvw - 2 * var(--_dialog-layout-padding));
|
|
35
|
+
max-block-size: var(--_dialog-max-block-size);
|
|
36
|
+
margin-inline: auto;
|
|
37
|
+
box-shadow: var(--shadow-medium);
|
|
38
|
+
}
|
|
27
39
|
|
|
28
40
|
&[open] {
|
|
29
41
|
animation: open-dialog var(--_dialog-transition-duration) cubic-bezier(0, 0.6, 0.58, 1);
|
|
@@ -31,6 +43,7 @@
|
|
|
31
43
|
|
|
32
44
|
&:not([open]) {
|
|
33
45
|
opacity: 0;
|
|
46
|
+
pointer-events: none;
|
|
34
47
|
}
|
|
35
48
|
|
|
36
49
|
&::backdrop {
|
|
@@ -45,7 +58,18 @@
|
|
|
45
58
|
"content content" 1fr
|
|
46
59
|
"footer footer" auto / 1fr 1fr;
|
|
47
60
|
inline-size: 100%;
|
|
48
|
-
block-size:
|
|
61
|
+
block-size: max-content;
|
|
62
|
+
max-block-size: var(--_dialog-max-block-size);
|
|
63
|
+
overflow: clip;
|
|
64
|
+
overflow-clip-margin: 1rem;
|
|
65
|
+
|
|
66
|
+
&>*:first-child {
|
|
67
|
+
border-radius: var(--_dialog-radius) var(--_dialog-radius) 0 0;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
&>*:last-child {
|
|
71
|
+
border-radius: 0 0 var(--_dialog-radius) var(--_dialog-radius);
|
|
72
|
+
}
|
|
49
73
|
}
|
|
50
74
|
|
|
51
75
|
:where(.dialog-header) {
|
|
@@ -53,7 +77,6 @@
|
|
|
53
77
|
border-block-end: var(--border-width-thin) solid var(--color-border-muted);
|
|
54
78
|
background-color: var(--color-surface-subtle);
|
|
55
79
|
padding-inline: var(--_dialog-padding-inline);
|
|
56
|
-
border-radius: var(--_dialog-radius) var(--_dialog-radius) 0 0;
|
|
57
80
|
display: grid;
|
|
58
81
|
grid-template: "title close" / 1fr var(--_dialog-close-size);
|
|
59
82
|
align-items: flex-start;
|
|
@@ -61,7 +84,7 @@
|
|
|
61
84
|
min-inline-size: calc(2 * var(--spacing-near) + var(--_dialog-close-size));
|
|
62
85
|
}
|
|
63
86
|
|
|
64
|
-
:where(.dialog-header)
|
|
87
|
+
:where(.dialog-header)>button[data-closes-dialog] {
|
|
65
88
|
grid-area: close;
|
|
66
89
|
inline-size: var(--_dialog-close-size);
|
|
67
90
|
block-size: var(--_dialog-close-size);
|