@rak200/ui 0.6.11 → 0.6.13
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/dist/checkbox.d.ts +9 -8
- package/dist/checkbox.d.ts.map +1 -1
- package/dist/checkbox.js +69 -36
- package/dist/checkbox.js.map +1 -1
- package/dist/radio.d.ts.map +1 -1
- package/dist/radio.js +27 -18
- package/dist/radio.js.map +1 -1
- package/package.json +1 -1
package/dist/checkbox.d.ts
CHANGED
|
@@ -95,8 +95,8 @@ declare class UiToggle extends LitElement {
|
|
|
95
95
|
* attribute is the *default*, which is what a form reset returns to, and an attribute
|
|
96
96
|
* that followed every click would make the default whatever the user last did.
|
|
97
97
|
*
|
|
98
|
-
* A host stylesheet reaches the live state through `:state(checked)
|
|
99
|
-
* {@link UiToggle.expose}
|
|
98
|
+
* A host stylesheet reaches the live state through `:state(checked)`, and the box alone
|
|
99
|
+
* through `::part(box):checked` — {@link UiToggle.expose} says what each one reaches.
|
|
100
100
|
*/
|
|
101
101
|
checked: boolean;
|
|
102
102
|
/** Whether the control rejects interaction. Reflected, the way the platform's is. */
|
|
@@ -114,12 +114,13 @@ declare class UiToggle extends LitElement {
|
|
|
114
114
|
/**
|
|
115
115
|
* Puts one internal state where a host stylesheet can select on it.
|
|
116
116
|
*
|
|
117
|
-
* **This is what replaces the attribute `checked` deliberately does not reflect
|
|
118
|
-
*
|
|
119
|
-
*
|
|
120
|
-
*
|
|
121
|
-
*
|
|
122
|
-
*
|
|
117
|
+
* **This is what replaces the attribute `checked` deliberately does not reflect.**
|
|
118
|
+
* `::part(box):checked` matches as well — a `::part()` takes any pseudo-class that is
|
|
119
|
+
* not structural — but a part reaches the box and only the box. A host that wants the
|
|
120
|
+
* element itself to answer to the state, its label included, had no selector to write,
|
|
121
|
+
* which would have made *not reflecting* a decision that costs the host something,
|
|
122
|
+
* rather than one that costs nothing. `tests/checkbox.test.ts` holds both routes, so
|
|
123
|
+
* an engine that stops matching the part is a failure rather than a stale sentence.
|
|
123
124
|
*
|
|
124
125
|
* Only the two states with no other route are exposed. `:valid`, `:invalid` and
|
|
125
126
|
* `:disabled` already match on this element, measured, because a form-associated
|
package/dist/checkbox.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkbox.d.ts","sourceRoot":"","sources":["../src/checkbox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAsB,KAAK,SAAS,EAAE,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"checkbox.d.ts","sourceRoot":"","sources":["../src/checkbox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAsB,KAAK,SAAS,EAAE,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAsL1F;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,cAAM,QAAS,SAAQ,UAAU;;IAC7B,MAAM,CAAC,QAAQ,CAAC,cAAc,QAAQ;IAEtC;;;;;;;OAOG;IACH,gBAAyB,iBAAiB;;;;;;;MAGxC;IAEF,gBAAyB,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAQjC;IAEF;;;;;OAKG;IACH,KAAK,SAAM;IAEX;;;;;;;OAOG;IACH,IAAI,SAAM;IAEV,iFAAiF;IACjF,KAAK,SAAQ;IAEb;;;;;;;;;;OAUG;IACH,OAAO,UAAS;IAEhB,qFAAqF;IACrF,QAAQ,UAAS;IAEjB,gFAAgF;IAChF,QAAQ,UAAS;IAEjB,sFAAsF;IACtF,KAAK,SAAM;IAgDX;;;;OAIG;IACM,OAAO,IAAI,IAAI;IAKxB;;;;;;;;;;;;;;;;OAgBG;IACH,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,GAAG,IAAI;IAQlD;;;;;;;OAOG;IACH,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAM;IAE5C;;;;;;;;;;OAUG;IACH,SAAS,CAAC,QAAQ,CAAC,OAAO,GAAI,OAAO,KAAK,KAAG,IAAI,CAG/C;IAEF;;;;;;OAMG;IACH,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI;IAI/C;;;;;;OAMG;IACH,iBAAiB,IAAI,IAAI;IAIzB,sFAAsF;IACtF,oBAAoB,CAAC,QAAQ,EAAE,OAAO,GAAG,IAAI;IAI7C,iFAAiF;IACjF,wBAAwB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAIpD,uEAAuE;IACvE,IAAI,IAAI,IAAI,eAAe,GAAG,IAAI,CAEjC;IAED,+DAA+D;IAC/D,IAAI,QAAQ,IAAI,aAAa,CAE5B;IAED,gFAAgF;IAChF,IAAI,iBAAiB,IAAI,MAAM,CAE9B;IAEQ,MAAM,IAAI,cAAc;IAIjC;;;;;;;;;;;;OAYG;IACH,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,cAAc;CAyBrD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,qBAAa,UAAW,SAAQ,QAAQ;IACpC,mDAAmD;IACnD,gBAAyB,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAGjC;IAEF;;;;;;OAMG;IACH,aAAa,UAAS;IAEtB,yCAAyC;IACzC,gBAAyB,MAAM,EAAE,SAAS,EAAE,CAqE1C;IAEF,gFAAgF;IACvE,MAAM,IAAI,cAAc;IAIjC;;;OAGG;IACM,OAAO,IAAI,IAAI;IAKxB;;;;OAIG;cACgB,IAAI,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI;CAI3D;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,QAAS,SAAQ,QAAQ;IAClC,yCAAyC;IACzC,gBAAyB,MAAM,EAAE,SAAS,EAAE,CA8C1C;IAEF,mBAA4B,WAAW,EAAE,MAAM,CAAY;CAC9D;AAWD,OAAO,CAAC,MAAM,CAAC;IACX,UAAU,qBAAqB;QAC3B,aAAa,EAAE,UAAU,CAAC;QAC1B,WAAW,EAAE,QAAQ,CAAC;KACzB;CACJ"}
|
package/dist/checkbox.js
CHANGED
|
@@ -18,12 +18,13 @@ const size = css `max(24px, calc(${reference('--ui-space')} * 3))`;
|
|
|
18
18
|
* A `data:` URI freezes whatever is inside it, so an SVG drawn with `stroke='#fff'` would
|
|
19
19
|
* be one hardcoded colour in a package whose rule is that a host can override every visual
|
|
20
20
|
* decision. **A mask has no colour**: only its alpha is read, so the black below is a
|
|
21
|
-
* shape and never a value.
|
|
22
|
-
*
|
|
21
|
+
* shape and never a value. The colour is `--ui-color-accent-contrast`, painted on the
|
|
22
|
+
* control's `::before` and cut to this shape — the accent's label, which is what anything
|
|
23
|
+
* sitting on the accent takes.
|
|
23
24
|
*/
|
|
24
25
|
const tick = css `url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7'/%3E%3C/svg%3E")`;
|
|
25
|
-
/** A
|
|
26
|
-
const
|
|
26
|
+
/** A rectangle, as a mask: the dash is this shape at a size. */
|
|
27
|
+
const bar = css `linear-gradient(#000, #000)`;
|
|
27
28
|
/**
|
|
28
29
|
* What a drawn boolean control looks like, which both elements share.
|
|
29
30
|
*
|
|
@@ -157,7 +158,7 @@ const toggle = css `
|
|
|
157
158
|
*not* — the state disappears, silently, for the people who turned the mode on to
|
|
158
159
|
see states more clearly. Measured in this engine. System colours are the ones
|
|
159
160
|
forced colors keeps, so the checked states name Highlight and the difference
|
|
160
|
-
survives
|
|
161
|
+
survives, and the checkbox's mark names HighlightText beside its own rules.
|
|
161
162
|
|
|
162
163
|
Opacity is not a colour and is not forced, so the disabled control would still be
|
|
163
164
|
half-transparent against a palette chosen for contrast. GrayText is what that mode
|
|
@@ -225,8 +226,8 @@ class UiToggle extends LitElement {
|
|
|
225
226
|
* attribute is the *default*, which is what a form reset returns to, and an attribute
|
|
226
227
|
* that followed every click would make the default whatever the user last did.
|
|
227
228
|
*
|
|
228
|
-
* A host stylesheet reaches the live state through `:state(checked)
|
|
229
|
-
* {@link UiToggle.expose}
|
|
229
|
+
* A host stylesheet reaches the live state through `:state(checked)`, and the box alone
|
|
230
|
+
* through `::part(box):checked` — {@link UiToggle.expose} says what each one reaches.
|
|
230
231
|
*/
|
|
231
232
|
this.checked = false;
|
|
232
233
|
/** Whether the control rejects interaction. Reflected, the way the platform's is. */
|
|
@@ -345,12 +346,13 @@ class UiToggle extends LitElement {
|
|
|
345
346
|
/**
|
|
346
347
|
* Puts one internal state where a host stylesheet can select on it.
|
|
347
348
|
*
|
|
348
|
-
* **This is what replaces the attribute `checked` deliberately does not reflect
|
|
349
|
-
*
|
|
350
|
-
*
|
|
351
|
-
*
|
|
352
|
-
*
|
|
353
|
-
*
|
|
349
|
+
* **This is what replaces the attribute `checked` deliberately does not reflect.**
|
|
350
|
+
* `::part(box):checked` matches as well — a `::part()` takes any pseudo-class that is
|
|
351
|
+
* not structural — but a part reaches the box and only the box. A host that wants the
|
|
352
|
+
* element itself to answer to the state, its label included, had no selector to write,
|
|
353
|
+
* which would have made *not reflecting* a decision that costs the host something,
|
|
354
|
+
* rather than one that costs nothing. `tests/checkbox.test.ts` holds both routes, so
|
|
355
|
+
* an engine that stops matching the part is a failure rather than a stale sentence.
|
|
354
356
|
*
|
|
355
357
|
* Only the two states with no other route are exposed. `:valid`, `:invalid` and
|
|
356
358
|
* `:disabled` already match on this element, measured, because a form-associated
|
|
@@ -496,29 +498,45 @@ export class UiCheckbox extends UiToggle {
|
|
|
496
498
|
input {
|
|
497
499
|
inline-size: ${size};
|
|
498
500
|
border-radius: ${reference('--ui-radius')};
|
|
501
|
+
/* What the mark is laid out against. */
|
|
502
|
+
position: relative;
|
|
499
503
|
}
|
|
500
504
|
|
|
501
|
-
/* The mark is
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
505
|
+
/* The mark is painted over the fill, in the accent's label, and the mask
|
|
506
|
+
constant above gives it its shape. Not a hole showing whatever the control
|
|
507
|
+
sits on: that is the accent's label only by coincidence, and a black accent
|
|
508
|
+
on a dark page would put a dark tick on black.
|
|
509
|
+
|
|
510
|
+
On the control's own ::before, which appearance: none lets every engine
|
|
511
|
+
paint, and with inset: -1px to reach back over the shared sheet's border, so
|
|
512
|
+
the shape is laid out over the whole control as the tick's coordinates
|
|
513
|
+
assume. */
|
|
514
|
+
input:checked::before,
|
|
515
|
+
input:indeterminate::before {
|
|
516
|
+
content: '';
|
|
517
|
+
position: absolute;
|
|
518
|
+
inset: -1px;
|
|
519
|
+
background-color: ${reference('--ui-color-accent-contrast')};
|
|
508
520
|
mask-repeat: no-repeat;
|
|
509
521
|
}
|
|
510
522
|
|
|
511
|
-
|
|
523
|
+
input:checked::before {
|
|
524
|
+
mask-image: ${tick};
|
|
525
|
+
mask-size: 100% 100%;
|
|
526
|
+
}
|
|
527
|
+
|
|
528
|
+
/* A dash needs no drawing: a rectangle is a gradient with a size. Later than
|
|
529
|
+
the tick, so a control that is both shows the mixed state, as the platform's
|
|
530
|
+
own drawing does. */
|
|
512
531
|
input:indeterminate {
|
|
513
532
|
background-color: ${reference('--ui-color-accent')};
|
|
514
533
|
border-color: ${reference('--ui-color-accent')};
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
534
|
+
}
|
|
535
|
+
|
|
536
|
+
input:indeterminate::before {
|
|
537
|
+
mask-image: ${bar};
|
|
538
|
+
mask-size: calc(${size} / 2) calc(${size} / 12);
|
|
520
539
|
mask-position: center;
|
|
521
|
-
mask-repeat: no-repeat;
|
|
522
540
|
}
|
|
523
541
|
|
|
524
542
|
/* The mixed state's forced-colors override lives here rather than beside the
|
|
@@ -533,6 +551,14 @@ export class UiCheckbox extends UiToggle {
|
|
|
533
551
|
background-color: Highlight;
|
|
534
552
|
border-color: Highlight;
|
|
535
553
|
}
|
|
554
|
+
|
|
555
|
+
/* The mark is an author colour too, so the mode would force it to the
|
|
556
|
+
surface's; HighlightText is the colour it pairs with Highlight. Its shape
|
|
557
|
+
is a mask, which the mode leaves alone. */
|
|
558
|
+
input:checked::before,
|
|
559
|
+
input:indeterminate::before {
|
|
560
|
+
background-color: HighlightText;
|
|
561
|
+
}
|
|
536
562
|
}
|
|
537
563
|
`,
|
|
538
564
|
]; }
|
|
@@ -591,20 +617,20 @@ export class UiSwitch extends UiToggle {
|
|
|
591
617
|
/* Any radius at or above half the block size rounds the ends fully, so
|
|
592
618
|
the whole size is a pill at every size this control can take. */
|
|
593
619
|
border-radius: ${size};
|
|
594
|
-
/*
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
620
|
+
/* Off, the switch is an empty box, as an unchecked checkbox is: the shared
|
|
621
|
+
sheet's surface inside the shared sheet's border, which is the boundary
|
|
622
|
+
WCAG 1.4.11 asks 3:1 of. The thumb takes the border's colour, so it
|
|
623
|
+
clears the same floor against the surface it sits on. Not a filled track:
|
|
624
|
+
a fill is what *on* looks like, and a palette whose border is near its
|
|
625
|
+
accent reads a filled track as on — RFC 0003.
|
|
626
|
+
|
|
627
|
+
The thumb is a background layer rather than an element, because the
|
|
602
628
|
layer moves with one number where an element would need a second rule
|
|
603
629
|
to be told the control is on. A closest-side radius comes from the
|
|
604
630
|
layer's own size. */
|
|
605
631
|
background-image: radial-gradient(
|
|
606
632
|
circle closest-side,
|
|
607
|
-
${reference('--ui-color-
|
|
633
|
+
${reference('--ui-color-border')} 100%,
|
|
608
634
|
transparent 100%
|
|
609
635
|
);
|
|
610
636
|
background-size: calc(${size} * 2 / 3);
|
|
@@ -618,7 +644,14 @@ export class UiSwitch extends UiToggle {
|
|
|
618
644
|
${reference('--ui-easing-state')};
|
|
619
645
|
}
|
|
620
646
|
|
|
647
|
+
/* On, the shared sheet fills the box with the accent, and the thumb takes the
|
|
648
|
+
accent's label over it, as the checkbox's mark does. */
|
|
621
649
|
input:checked {
|
|
650
|
+
background-image: radial-gradient(
|
|
651
|
+
circle closest-side,
|
|
652
|
+
${reference('--ui-color-accent-contrast')} 100%,
|
|
653
|
+
transparent 100%
|
|
654
|
+
);
|
|
622
655
|
background-position: calc(100% - ${size} / 6) center;
|
|
623
656
|
}
|
|
624
657
|
`,
|
package/dist/checkbox.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkbox.js","sourceRoot":"","sources":["../src/checkbox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAuC,MAAM,KAAK,CAAC;AAC1F,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C;;;;;;;;;GASG;AACH,MAAM,IAAI,GAAG,GAAG,CAAA,kBAAkB,SAAS,CAAC,YAAY,CAAC,QAAQ,CAAC;AAElE
|
|
1
|
+
{"version":3,"file":"checkbox.js","sourceRoot":"","sources":["../src/checkbox.ts"],"names":[],"mappings":"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"}
|
package/dist/radio.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"radio.d.ts","sourceRoot":"","sources":["../src/radio.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAsB,KAAK,SAAS,EAAE,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAI1F,yEAAyE;AACzE,MAAM,MAAM,gBAAgB,GAAG,UAAU,GAAG,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"radio.d.ts","sourceRoot":"","sources":["../src/radio.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAsB,KAAK,SAAS,EAAE,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAI1F,yEAAyE;AACzE,MAAM,MAAM,gBAAgB,GAAG,UAAU,GAAG,YAAY,CAAC;AA+CzD;;;;;;;;;;;;;GAaG;AACH,qBAAa,OAAQ,SAAQ,UAAU;;IACnC,yCAAyC;IACzC,gBAAyB,MAAM,EAAE,SAAS,CAIxC;IAEF,mDAAmD;IACnD,gBAAyB,UAAU;;;;;;;;;;;;;MAIjC;IAEF,oEAAoE;IACpE,KAAK,SAAM;IAEX,mFAAmF;IACnF,OAAO,UAAS;IAEhB,qFAAqF;IACrF,QAAQ,UAAS;IAEjB;;;;;;;;OAQG;IACM,OAAO,IAAI,IAAI;IAQxB,iFAAiF;IACxE,MAAM,IAAI,cAAc;CAGpC;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,qBAAa,YAAa,SAAQ,UAAU;;IACxC,yCAAyC;IACzC,gBAAyB,MAAM,EAAE,SAAS,CA6LxC;IAEF,yCAAyC;IACzC,MAAM,CAAC,QAAQ,CAAC,cAAc,QAAQ;IAEtC;;;;;OAKG;IACH,gBAAyB,iBAAiB;;;;;;;MAGxC;IAEF,mDAAmD;IACnD,gBAAyB,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAajC;IAEF;;;;;OAKG;IACH,KAAK,SAAM;IAEX,mFAAmF;IACnF,IAAI,SAAM;IAEV,gFAAgF;IAChF,KAAK,SAAM;IAEX;;;;;;OAMG;IACH,IAAI,SAAM;IAEV;;;;;;OAMG;IACH,KAAK,SAAM;IAEX,+EAA+E;IAC/E,WAAW,EAAE,gBAAgB,CAAc;IAE3C,yDAAyD;IACzD,QAAQ,UAAS;IAEjB,sEAAsE;IACtE,QAAQ,UAAS;IAmBjB,6EAA6E;IACpE,iBAAiB,IAAI,IAAI;IA+ClC;;;;;;;OAOG;IACM,OAAO,IAAI,IAAI;IAoBxB,uEAAuE;IACvE,iBAAiB,IAAI,IAAI;IAIzB,sFAAsF;IACtF,oBAAoB,CAAC,QAAQ,EAAE,OAAO,GAAG,IAAI;IAI7C,iFAAiF;IACjF,wBAAwB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAIpD,uEAAuE;IACvE,IAAI,IAAI,IAAI,eAAe,GAAG,IAAI,CAEjC;IAED,6DAA6D;IAC7D,IAAI,QAAQ,IAAI,aAAa,CAE5B;IAED,8EAA8E;IAC9E,IAAI,iBAAiB,IAAI,MAAM,CAE9B;IA0CD;;;OAGG;IACM,MAAM,IAAI,cAAc;CAkCpC;AAWD,OAAO,CAAC,MAAM,CAAC;IACX,UAAU,qBAAqB;QAC3B,UAAU,EAAE,OAAO,CAAC;QACpB,gBAAgB,EAAE,YAAY,CAAC;KAClC;CACJ"}
|
package/dist/radio.js
CHANGED
|
@@ -32,17 +32,14 @@ const grouping = 'option';
|
|
|
32
32
|
* they drift.
|
|
33
33
|
*/
|
|
34
34
|
const size = css `max(24px, calc(${reference('--ui-space')} * 3))`;
|
|
35
|
-
/** A mask layer covering the whole control, which the mark is then subtracted from. */
|
|
36
|
-
const whole = css `linear-gradient(#000, #000)`;
|
|
37
35
|
/**
|
|
38
|
-
* The mark, as a
|
|
39
|
-
* length, reached here without a picture at all.
|
|
36
|
+
* The mark, as a mask rather than a picture — the same decision `src/checkbox.ts` explains
|
|
37
|
+
* at length, reached here without a picture at all.
|
|
40
38
|
*
|
|
41
39
|
* A checkbox's tick needs a path and therefore a `data:` URI; a radio's mark is a circle,
|
|
42
|
-
* which is a gradient with a size. What both share is that the
|
|
43
|
-
*
|
|
44
|
-
*
|
|
45
|
-
* could not override it.
|
|
40
|
+
* which is a gradient with a size. What both share is that the shape carries no colour:
|
|
41
|
+
* the dot is `--ui-color-accent-contrast`, painted on the control's `::before` and cut to
|
|
42
|
+
* this circle, so no colour is frozen anywhere a host could not override it.
|
|
46
43
|
*/
|
|
47
44
|
const mark = css `radial-gradient(circle closest-side, #000 100%, transparent 100%)`;
|
|
48
45
|
/**
|
|
@@ -260,6 +257,8 @@ export class UiRadioGroup extends LitElement {
|
|
|
260
257
|
background-repeat: no-repeat;
|
|
261
258
|
border: 1px solid ${reference('--ui-color-border')};
|
|
262
259
|
cursor: inherit;
|
|
260
|
+
/* What the mark is laid out against. */
|
|
261
|
+
position: relative;
|
|
263
262
|
/* The focus ring is deliberately not in this list, for the reason
|
|
264
263
|
src/button.ts gives beside its own: delaying the affordance that says *this
|
|
265
264
|
is where you are* is the opposite of what it exists to do. */
|
|
@@ -269,17 +268,22 @@ export class UiRadioGroup extends LitElement {
|
|
|
269
268
|
border-color ${reference('--ui-duration-state')} ${reference('--ui-easing-state')};
|
|
270
269
|
}
|
|
271
270
|
|
|
272
|
-
/* The mark is a hole: the whole control, minus the circle, so what shows through is
|
|
273
|
-
whatever the control sits on. The docblock on the mask constant says why a hole
|
|
274
|
-
rather than a colour. */
|
|
275
271
|
input:checked {
|
|
276
272
|
background-color: ${reference('--ui-color-accent')};
|
|
277
273
|
border-color: ${reference('--ui-color-accent')};
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
274
|
+
}
|
|
275
|
+
|
|
276
|
+
/* The mark is painted over the fill, in the accent's label, the way the checkbox's
|
|
277
|
+
is and for its reason: a hole shows whatever the control sits on, which is the
|
|
278
|
+
label only by coincidence. On the control's own ::before, with inset: -1px to
|
|
279
|
+
reach back over the border, so the dot is centred on the whole control. */
|
|
280
|
+
input:checked::before {
|
|
281
|
+
content: '';
|
|
282
|
+
position: absolute;
|
|
283
|
+
inset: -1px;
|
|
284
|
+
background-color: ${reference('--ui-color-accent-contrast')};
|
|
285
|
+
mask-image: ${mark};
|
|
286
|
+
mask-size: calc(${size} / 2);
|
|
283
287
|
mask-position: center;
|
|
284
288
|
mask-repeat: no-repeat;
|
|
285
289
|
}
|
|
@@ -342,8 +346,9 @@ export class UiRadioGroup extends LitElement {
|
|
|
342
346
|
the accent that says *selected* becomes the same Canvas as the surface that says
|
|
343
347
|
*not* — the state disappears, silently, for the people who turned the mode on to
|
|
344
348
|
see states more clearly. System colours are the ones forced colors keeps, so the
|
|
345
|
-
selected state names Highlight and the difference survives
|
|
346
|
-
|
|
349
|
+
selected state names Highlight and the difference survives. The mark is an author
|
|
350
|
+
colour too, so it names HighlightText, the colour the mode pairs with Highlight;
|
|
351
|
+
its shape is a mask, which the mode leaves alone.
|
|
347
352
|
|
|
348
353
|
Opacity is not a colour and is not forced, so the disabled control would still be
|
|
349
354
|
half-transparent against a palette chosen for contrast. GrayText is what that
|
|
@@ -354,6 +359,10 @@ export class UiRadioGroup extends LitElement {
|
|
|
354
359
|
border-color: Highlight;
|
|
355
360
|
}
|
|
356
361
|
|
|
362
|
+
input:checked::before {
|
|
363
|
+
background-color: HighlightText;
|
|
364
|
+
}
|
|
365
|
+
|
|
357
366
|
input:disabled {
|
|
358
367
|
border-color: GrayText;
|
|
359
368
|
opacity: 1;
|
package/dist/radio.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"radio.js","sourceRoot":"","sources":["../src/radio.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAuC,MAAM,KAAK,CAAC;AAC1F,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAK/C,2FAA2F;AAC3F,0FAA0F;AAC1F,2FAA2F;AAC3F,oEAAoE;AACpE,MAAM,YAAY,GAAG,kBAAkB,CAAC;AAExC;;;;;;;GAOG;AACH,MAAM,QAAQ,GAAG,QAAQ,CAAC;AAE1B;;;;;;;;;;;;;;;GAeG;AACH,MAAM,IAAI,GAAG,GAAG,CAAA,kBAAkB,SAAS,CAAC,YAAY,CAAC,QAAQ,CAAC;AAElE
|
|
1
|
+
{"version":3,"file":"radio.js","sourceRoot":"","sources":["../src/radio.ts"],"names":[],"mappings":"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"}
|