@echelon-foundry/design-system 0.6.0 → 0.6.1-main.236.1
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 +11 -0
- package/dist/all.css +18 -10
- package/dist/build-metrics.json +2 -2
- package/dist/components.css +18 -10
- package/dist/icons/registry.json +1 -1
- package/dist/marketing/forma-all.css +19 -11
- package/dist/marketing/forma-echelon-marketing.css +1 -1
- package/dist/marketing/forma-marketing-theme-echelon.css +1 -1
- package/dist/marketing/forma-marketing.css +1 -1
- package/dist/marketing/forma-marketing.manifest.json +7 -7
- package/dist/marketing/forma-marketing.sha256 +4 -4
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,17 @@ published as GitHub release tarballs
|
|
|
7
7
|
and to npm. Earlier releases are described in `docs/CONSUMING-FORMA.md` and
|
|
8
8
|
`HANDOFF.md`.
|
|
9
9
|
|
|
10
|
+
## 0.6.1
|
|
11
|
+
|
|
12
|
+
Patch release: responsive navigation and native date/time field containment.
|
|
13
|
+
- Site navigation labels no longer break mid-word or overlap the header at tablet sizes, mobile widths, or larger text scales. Navigation reflows into its own bounded, keyboard-accessible horizontal scroll region.
|
|
14
|
+
- Shared native date, time, and datetime-local fields constrain their intrinsic width within grid columns, including Safari, without replacing the browser picker.
|
|
15
|
+
- Documentation example previews and code snippets scroll within their own containers instead of widening the page.
|
|
16
|
+
- Documentation navigation now highlights only the current section, with `aria-current="page"` on section index pages and `aria-current="location"` on descendants; the Agent use link is not a permanently highlighted call-to-action.
|
|
17
|
+
- Adds generated-page and WebKit responsive tests at eight widths, including the reported date-time-field examples and enlarged text.
|
|
18
|
+
|
|
19
|
+
No public icon identifiers, assets, or component semantics were renamed.
|
|
20
|
+
|
|
10
21
|
## 0.6.0
|
|
11
22
|
|
|
12
23
|
Additive icon-library expansion: **80 icons in total**, up from 40, with no changes to existing icon identifiers or their geometry.
|
package/dist/all.css
CHANGED
|
@@ -767,10 +767,22 @@
|
|
|
767
767
|
}
|
|
768
768
|
|
|
769
769
|
.ef-field {
|
|
770
|
+
/* A native date/time picker can have a larger intrinsic minimum than its
|
|
771
|
+
form column in WebKit. Keep the field's track shrinkable instead of
|
|
772
|
+
letting it widen the containing card or example frame. */
|
|
770
773
|
display: grid;
|
|
774
|
+
min-inline-size: 0;
|
|
775
|
+
max-inline-size: 100%;
|
|
776
|
+
grid-template-columns: minmax(0, 1fr);
|
|
771
777
|
gap: var(--ef-primitive-spacing-2, 0.5rem);
|
|
772
778
|
}
|
|
773
779
|
|
|
780
|
+
.ef-field > :is(input[type="date"], input[type="time"], input[type="datetime-local"]) {
|
|
781
|
+
min-inline-size: 0;
|
|
782
|
+
inline-size: 100%;
|
|
783
|
+
max-inline-size: 100%;
|
|
784
|
+
}
|
|
785
|
+
|
|
774
786
|
.ef-field__label {
|
|
775
787
|
color: var(--ef-color-text-primary, #171a18);
|
|
776
788
|
font-size: 0.9375rem;
|
|
@@ -832,7 +844,7 @@
|
|
|
832
844
|
--ef-motion-gravity-duration: 255ms;
|
|
833
845
|
--ef-motion-state-duration: 154ms;
|
|
834
846
|
--ef-motion-press-duration: 107ms;
|
|
835
|
-
--ef-motion-exit-duration:
|
|
847
|
+
--ef-motion-exit-duration: 214ms;
|
|
836
848
|
--ef-motion-spring-easing: linear(0, 0.42 24%, 0.82 48%, 1.055 70%, 0.988 88%, 1);
|
|
837
849
|
--ef-motion-damped-easing: cubic-bezier(0.2, 0.8, 0.2, 1);
|
|
838
850
|
}
|
|
@@ -906,11 +918,8 @@
|
|
|
906
918
|
calc(var(--ef-motion-inertia-duration) * 0.5),
|
|
907
919
|
160ms
|
|
908
920
|
);
|
|
909
|
-
|
|
910
|
-
|
|
911
|
-
calc(var(--ef-motion-inertia-duration) * 0.68),
|
|
912
|
-
220ms
|
|
913
|
-
);
|
|
921
|
+
/* Compatibility token: reciprocal motion has one response time. */
|
|
922
|
+
--ef-motion-exit-duration: var(--ef-motion-inertia-duration);
|
|
914
923
|
}
|
|
915
924
|
}
|
|
916
925
|
|
|
@@ -1503,8 +1512,7 @@
|
|
|
1503
1512
|
.ef-tooltip__surface:popover-open {
|
|
1504
1513
|
opacity: 1;
|
|
1505
1514
|
translate: 0 0;
|
|
1506
|
-
/*
|
|
1507
|
-
shorter derived exit duration. Opacity stays perceptual both ways. */
|
|
1515
|
+
/* Spatial response and perceptual opacity are identical both ways. */
|
|
1508
1516
|
transition-duration:
|
|
1509
1517
|
var(--ef-motion-perceptual-duration),
|
|
1510
1518
|
var(--ef-motion-inertia-duration),
|
|
@@ -1642,8 +1650,8 @@
|
|
|
1642
1650
|
|
|
1643
1651
|
/* Dialog and flyout ---------------------------------------------------- */
|
|
1644
1652
|
:where(.ef-dialog, .ef-flyout) {
|
|
1645
|
-
--ef-overlay-motion-duration: var(--ef-motion-
|
|
1646
|
-
--ef-overlay-spatial-easing: var(--ef-motion-
|
|
1653
|
+
--ef-overlay-motion-duration: var(--ef-motion-inertia-duration);
|
|
1654
|
+
--ef-overlay-spatial-easing: var(--ef-motion-spring-easing);
|
|
1647
1655
|
padding: 0;
|
|
1648
1656
|
border: 1px solid var(--ef-color-border-functional, #3a403c);
|
|
1649
1657
|
background: var(--ef-color-surface-primary, #f2efe7);
|
package/dist/build-metrics.json
CHANGED
|
@@ -339,12 +339,12 @@
|
|
|
339
339
|
"tokens.css"
|
|
340
340
|
],
|
|
341
341
|
"bytes": {
|
|
342
|
-
"all.css":
|
|
342
|
+
"all.css": 317434,
|
|
343
343
|
"assessment.css": 35692,
|
|
344
344
|
"brands/echelon.css": 3621,
|
|
345
345
|
"brands/example-harbor.css": 3637,
|
|
346
346
|
"brands/index.json": 335,
|
|
347
|
-
"components.css":
|
|
347
|
+
"components.css": 204184,
|
|
348
348
|
"foundations.css": 11558,
|
|
349
349
|
"icons/add.svg": 216,
|
|
350
350
|
"icons/agent.svg": 354,
|
package/dist/components.css
CHANGED
|
@@ -19,10 +19,22 @@
|
|
|
19
19
|
}
|
|
20
20
|
|
|
21
21
|
.ef-field {
|
|
22
|
+
/* A native date/time picker can have a larger intrinsic minimum than its
|
|
23
|
+
form column in WebKit. Keep the field's track shrinkable instead of
|
|
24
|
+
letting it widen the containing card or example frame. */
|
|
22
25
|
display: grid;
|
|
26
|
+
min-inline-size: 0;
|
|
27
|
+
max-inline-size: 100%;
|
|
28
|
+
grid-template-columns: minmax(0, 1fr);
|
|
23
29
|
gap: var(--ef-primitive-spacing-2, 0.5rem);
|
|
24
30
|
}
|
|
25
31
|
|
|
32
|
+
.ef-field > :is(input[type="date"], input[type="time"], input[type="datetime-local"]) {
|
|
33
|
+
min-inline-size: 0;
|
|
34
|
+
inline-size: 100%;
|
|
35
|
+
max-inline-size: 100%;
|
|
36
|
+
}
|
|
37
|
+
|
|
26
38
|
.ef-field__label {
|
|
27
39
|
color: var(--ef-color-text-primary, #171a18);
|
|
28
40
|
font-size: 0.9375rem;
|
|
@@ -84,7 +96,7 @@
|
|
|
84
96
|
--ef-motion-gravity-duration: 255ms;
|
|
85
97
|
--ef-motion-state-duration: 154ms;
|
|
86
98
|
--ef-motion-press-duration: 107ms;
|
|
87
|
-
--ef-motion-exit-duration:
|
|
99
|
+
--ef-motion-exit-duration: 214ms;
|
|
88
100
|
--ef-motion-spring-easing: linear(0, 0.42 24%, 0.82 48%, 1.055 70%, 0.988 88%, 1);
|
|
89
101
|
--ef-motion-damped-easing: cubic-bezier(0.2, 0.8, 0.2, 1);
|
|
90
102
|
}
|
|
@@ -158,11 +170,8 @@
|
|
|
158
170
|
calc(var(--ef-motion-inertia-duration) * 0.5),
|
|
159
171
|
160ms
|
|
160
172
|
);
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
calc(var(--ef-motion-inertia-duration) * 0.68),
|
|
164
|
-
220ms
|
|
165
|
-
);
|
|
173
|
+
/* Compatibility token: reciprocal motion has one response time. */
|
|
174
|
+
--ef-motion-exit-duration: var(--ef-motion-inertia-duration);
|
|
166
175
|
}
|
|
167
176
|
}
|
|
168
177
|
|
|
@@ -755,8 +764,7 @@
|
|
|
755
764
|
.ef-tooltip__surface:popover-open {
|
|
756
765
|
opacity: 1;
|
|
757
766
|
translate: 0 0;
|
|
758
|
-
/*
|
|
759
|
-
shorter derived exit duration. Opacity stays perceptual both ways. */
|
|
767
|
+
/* Spatial response and perceptual opacity are identical both ways. */
|
|
760
768
|
transition-duration:
|
|
761
769
|
var(--ef-motion-perceptual-duration),
|
|
762
770
|
var(--ef-motion-inertia-duration),
|
|
@@ -894,8 +902,8 @@
|
|
|
894
902
|
|
|
895
903
|
/* Dialog and flyout ---------------------------------------------------- */
|
|
896
904
|
:where(.ef-dialog, .ef-flyout) {
|
|
897
|
-
--ef-overlay-motion-duration: var(--ef-motion-
|
|
898
|
-
--ef-overlay-spatial-easing: var(--ef-motion-
|
|
905
|
+
--ef-overlay-motion-duration: var(--ef-motion-inertia-duration);
|
|
906
|
+
--ef-overlay-spatial-easing: var(--ef-motion-spring-easing);
|
|
899
907
|
padding: 0;
|
|
900
908
|
border: 1px solid var(--ef-color-border-functional, #3a403c);
|
|
901
909
|
background: var(--ef-color-surface-primary, #f2efe7);
|
package/dist/icons/registry.json
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! Forma 0.6.
|
|
1
|
+
/*! Forma 0.6.1 | forma-all.css | bundle echelon-marketing
|
|
2
2
|
Complete Forma surface (application components, assessment, and marketing layers) for sites that also present Forma application patterns such as data grids or status lozenges.
|
|
3
3
|
Generated by tools/PresentationBundler. Do not edit; pin by version and sha256. */
|
|
4
4
|
|
|
@@ -772,10 +772,22 @@
|
|
|
772
772
|
}
|
|
773
773
|
|
|
774
774
|
.ef-field {
|
|
775
|
+
/* A native date/time picker can have a larger intrinsic minimum than its
|
|
776
|
+
form column in WebKit. Keep the field's track shrinkable instead of
|
|
777
|
+
letting it widen the containing card or example frame. */
|
|
775
778
|
display: grid;
|
|
779
|
+
min-inline-size: 0;
|
|
780
|
+
max-inline-size: 100%;
|
|
781
|
+
grid-template-columns: minmax(0, 1fr);
|
|
776
782
|
gap: var(--ef-primitive-spacing-2, 0.5rem);
|
|
777
783
|
}
|
|
778
784
|
|
|
785
|
+
.ef-field > :is(input[type="date"], input[type="time"], input[type="datetime-local"]) {
|
|
786
|
+
min-inline-size: 0;
|
|
787
|
+
inline-size: 100%;
|
|
788
|
+
max-inline-size: 100%;
|
|
789
|
+
}
|
|
790
|
+
|
|
779
791
|
.ef-field__label {
|
|
780
792
|
color: var(--ef-color-text-primary, #171a18);
|
|
781
793
|
font-size: 0.9375rem;
|
|
@@ -837,7 +849,7 @@
|
|
|
837
849
|
--ef-motion-gravity-duration: 255ms;
|
|
838
850
|
--ef-motion-state-duration: 154ms;
|
|
839
851
|
--ef-motion-press-duration: 107ms;
|
|
840
|
-
--ef-motion-exit-duration:
|
|
852
|
+
--ef-motion-exit-duration: 214ms;
|
|
841
853
|
--ef-motion-spring-easing: linear(0, 0.42 24%, 0.82 48%, 1.055 70%, 0.988 88%, 1);
|
|
842
854
|
--ef-motion-damped-easing: cubic-bezier(0.2, 0.8, 0.2, 1);
|
|
843
855
|
}
|
|
@@ -911,11 +923,8 @@
|
|
|
911
923
|
calc(var(--ef-motion-inertia-duration) * 0.5),
|
|
912
924
|
160ms
|
|
913
925
|
);
|
|
914
|
-
|
|
915
|
-
|
|
916
|
-
calc(var(--ef-motion-inertia-duration) * 0.68),
|
|
917
|
-
220ms
|
|
918
|
-
);
|
|
926
|
+
/* Compatibility token: reciprocal motion has one response time. */
|
|
927
|
+
--ef-motion-exit-duration: var(--ef-motion-inertia-duration);
|
|
919
928
|
}
|
|
920
929
|
}
|
|
921
930
|
|
|
@@ -1508,8 +1517,7 @@
|
|
|
1508
1517
|
.ef-tooltip__surface:popover-open {
|
|
1509
1518
|
opacity: 1;
|
|
1510
1519
|
translate: 0 0;
|
|
1511
|
-
/*
|
|
1512
|
-
shorter derived exit duration. Opacity stays perceptual both ways. */
|
|
1520
|
+
/* Spatial response and perceptual opacity are identical both ways. */
|
|
1513
1521
|
transition-duration:
|
|
1514
1522
|
var(--ef-motion-perceptual-duration),
|
|
1515
1523
|
var(--ef-motion-inertia-duration),
|
|
@@ -1647,8 +1655,8 @@
|
|
|
1647
1655
|
|
|
1648
1656
|
/* Dialog and flyout ---------------------------------------------------- */
|
|
1649
1657
|
:where(.ef-dialog, .ef-flyout) {
|
|
1650
|
-
--ef-overlay-motion-duration: var(--ef-motion-
|
|
1651
|
-
--ef-overlay-spatial-easing: var(--ef-motion-
|
|
1658
|
+
--ef-overlay-motion-duration: var(--ef-motion-inertia-duration);
|
|
1659
|
+
--ef-overlay-spatial-easing: var(--ef-motion-spring-easing);
|
|
1652
1660
|
padding: 0;
|
|
1653
1661
|
border: 1px solid var(--ef-color-border-functional, #3a403c);
|
|
1654
1662
|
background: var(--ef-color-surface-primary, #f2efe7);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! Forma 0.6.
|
|
1
|
+
/*! Forma 0.6.1 | forma-echelon-marketing.css | bundle echelon-marketing
|
|
2
2
|
Single-file Echelon marketing presentation: forma-marketing.css followed by the Echelon theme. Most sites load only this file.
|
|
3
3
|
Generated by tools/PresentationBundler. Do not edit; pin by version and sha256. */
|
|
4
4
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! Forma 0.6.
|
|
1
|
+
/*! Forma 0.6.1 | forma-marketing-theme-echelon.css | bundle echelon-marketing
|
|
2
2
|
Echelon Marketing Theme: compiled theme tokens and theme hooks. Load after forma-marketing.css.
|
|
3
3
|
Generated by tools/PresentationBundler. Do not edit; pin by version and sha256. */
|
|
4
4
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! Forma 0.6.
|
|
1
|
+
/*! Forma 0.6.1 | forma-marketing.css | bundle echelon-marketing
|
|
2
2
|
Brand-neutral marketing layer: core tokens, role defaults, Forma foundations, marketing foundations, components, and layouts.
|
|
3
3
|
Generated by tools/PresentationBundler. Do not edit; pin by version and sha256. */
|
|
4
4
|
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": 1,
|
|
3
|
-
"forma": "0.6.
|
|
3
|
+
"forma": "0.6.1",
|
|
4
4
|
"bundle": "echelon-marketing",
|
|
5
5
|
"description": "Forma presentation artifacts for Echelon marketing sites. Every artifact is a single self-contained CSS file with no imports or relative URLs.",
|
|
6
|
-
"releaseTag": "v0.6.
|
|
6
|
+
"releaseTag": "v0.6.1",
|
|
7
7
|
"artifacts": [
|
|
8
8
|
{
|
|
9
9
|
"file": "forma-marketing.css",
|
|
10
10
|
"description": "Brand-neutral marketing layer: core tokens, role defaults, Forma foundations, marketing foundations, components, and layouts.",
|
|
11
11
|
"bytes": 78117,
|
|
12
|
-
"sha256": "
|
|
12
|
+
"sha256": "d2dd5cab7ebba2c2d667fa6cfab18bf3b19de729469e2fcca07a58d27c011525",
|
|
13
13
|
"sources": [
|
|
14
14
|
"dist/tokens.css",
|
|
15
15
|
"src/marketing/roles.css",
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
"file": "forma-marketing-theme-echelon.css",
|
|
24
24
|
"description": "Echelon Marketing Theme: compiled theme tokens and theme hooks. Load after forma-marketing.css.",
|
|
25
25
|
"bytes": 6295,
|
|
26
|
-
"sha256": "
|
|
26
|
+
"sha256": "33a128ec9b1fd5081a6d8ed37ca641a05ec9e91eb342026c34b5bed69f5d750b",
|
|
27
27
|
"sources": [
|
|
28
28
|
"build/marketing/echelon-marketing.tokens.css",
|
|
29
29
|
"themes/echelon/marketing.css"
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
"file": "forma-echelon-marketing.css",
|
|
34
34
|
"description": "Single-file Echelon marketing presentation: forma-marketing.css followed by the Echelon theme. Most sites load only this file.",
|
|
35
35
|
"bytes": 84257,
|
|
36
|
-
"sha256": "
|
|
36
|
+
"sha256": "6f89190f3133a0cad35b05d3b00c9e17f2036e3c8021347b0dcd7bad50ac5af5",
|
|
37
37
|
"sources": [
|
|
38
38
|
"artifact:forma-marketing.css",
|
|
39
39
|
"artifact:forma-marketing-theme-echelon.css"
|
|
@@ -42,8 +42,8 @@
|
|
|
42
42
|
{
|
|
43
43
|
"file": "forma-all.css",
|
|
44
44
|
"description": "Complete Forma surface (application components, assessment, and marketing layers) for sites that also present Forma application patterns such as data grids or status lozenges.",
|
|
45
|
-
"bytes":
|
|
46
|
-
"sha256": "
|
|
45
|
+
"bytes": 317796,
|
|
46
|
+
"sha256": "745a95984fd4ba3db4bdda3f5b11d842c9c57631f588c232fa7f846f37728c6b",
|
|
47
47
|
"sources": [
|
|
48
48
|
"dist/all.css"
|
|
49
49
|
]
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
d2dd5cab7ebba2c2d667fa6cfab18bf3b19de729469e2fcca07a58d27c011525 forma-marketing.css
|
|
2
|
+
33a128ec9b1fd5081a6d8ed37ca641a05ec9e91eb342026c34b5bed69f5d750b forma-marketing-theme-echelon.css
|
|
3
|
+
6f89190f3133a0cad35b05d3b00c9e17f2036e3c8021347b0dcd7bad50ac5af5 forma-echelon-marketing.css
|
|
4
|
+
745a95984fd4ba3db4bdda3f5b11d842c9c57631f588c232fa7f846f37728c6b forma-all.css
|