@axiapps/axi-design 1.18.0 → 1.19.0
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/axi.css +39 -2
- package/package.json +1 -1
- package/src/shells.css +39 -2
package/dist/axi.css
CHANGED
|
@@ -922,6 +922,29 @@ textarea.axi-input {
|
|
|
922
922
|
padding-inline: var(--axi-gutter);
|
|
923
923
|
display: flex; align-items: center; gap: 22px; min-height: 66px; flex-wrap: wrap;
|
|
924
924
|
}
|
|
925
|
+
/* Above --axi-page the row stops growing: the cap is on this box, not on the
|
|
926
|
+
window, so from 1280px up the masthead has exactly one width to fit in and
|
|
927
|
+
wrapping there is not a fallback, it is a permanent second line - one tab
|
|
928
|
+
too many and the last item in source order drops, on a 4K display as surely
|
|
929
|
+
as on a laptop. So the wide row does not wrap; it takes the width out of the
|
|
930
|
+
search field instead (below), and the strip scrolls only if that runs out.
|
|
931
|
+
Under the cap the window really is too narrow and wrapping is the honest
|
|
932
|
+
answer, which is why this is a floor and not a blanket `nowrap`. */
|
|
933
|
+
@media (min-width: 1280px) {
|
|
934
|
+
.axi-mast__in { flex-wrap: nowrap; }
|
|
935
|
+
}
|
|
936
|
+
/* Nothing in the row gives up width unless it is named below. */
|
|
937
|
+
.axi-mast__in > * { flex-shrink: 0; }
|
|
938
|
+
/* The field is the one control here that is still entirely itself 70px
|
|
939
|
+
narrower - a placeholder that elides costs nothing, where a clipped tab
|
|
940
|
+
costs a destination. Flexbox shrinks proportionally, not in order, and a
|
|
941
|
+
merely-larger factor still took a couple of pixels off the last tab; the
|
|
942
|
+
number is this big to make that share round to nothing, so the effect is
|
|
943
|
+
the ordering CSS has no other way to say. Once the field is at its floor -
|
|
944
|
+
still wide enough to read as a search box rather than a smudge - whatever
|
|
945
|
+
is left over goes to the strip, which scrolls. */
|
|
946
|
+
.axi-mast .axi-search,
|
|
947
|
+
.axi-mast .docs-search { flex-shrink: 1000; min-width: 200px; }
|
|
925
948
|
.axi-brand { display: flex; align-items: center; gap: 12px; text-decoration: none; }
|
|
926
949
|
/* The sigil is the diamond motif scaled up with a glyph on top. The diamond is
|
|
927
950
|
a rotated pseudo-element behind the text rather than a rotated box, so the
|
|
@@ -955,8 +978,14 @@ textarea.axi-input {
|
|
|
955
978
|
.axi-tabs { display: flex; gap: 8px; }
|
|
956
979
|
/* The auto margin belongs to the masthead, not to the strip: it is a statement
|
|
957
980
|
about where the tabs sit in that row, and a strip standing on its own -
|
|
958
|
-
spanning a view instead of ending a header - has nothing to push away from.
|
|
959
|
-
|
|
981
|
+
spanning a view instead of ending a header - has nothing to push away from.
|
|
982
|
+
The overflow belongs to the masthead for the same reason. This row is capped
|
|
983
|
+
at --axi-page, so the brand, the strip, the search field and the two selects
|
|
984
|
+
divide 1244px however wide the window is, and flex-wrap breaks a line before
|
|
985
|
+
it shrinks an item - so one tab too many sent the last item in source order
|
|
986
|
+
to a second row instead of taking width off the widest one. The strip is the
|
|
987
|
+
item that can give: it scrolls, and the row stays a row. */
|
|
988
|
+
.axi-mast .axi-tabs { margin-left: auto; flex-shrink: 1; min-width: 0; overflow-x: auto; }
|
|
960
989
|
.axi-tabs a,
|
|
961
990
|
.axi-tabs button {
|
|
962
991
|
padding: 8px 16px;
|
|
@@ -1051,6 +1080,14 @@ textarea.axi-input {
|
|
|
1051
1080
|
border-right: var(--axi-border-panel) solid var(--axi-ink-line);
|
|
1052
1081
|
border-radius: 0;
|
|
1053
1082
|
}
|
|
1083
|
+
/* A rail the page scrolls behind, rather than one the page sits beside.
|
|
1084
|
+
It is the same object, so it keeps every other rule; the one thing that
|
|
1085
|
+
changes is the surface it is printed on. --axi-surface is a translucent
|
|
1086
|
+
tint under a theme like glass, which reads as a pane only while the
|
|
1087
|
+
content behind it holds still — the moment a table scrolls past, the
|
|
1088
|
+
rows show through the nav. --axi-surface-float is the surface for
|
|
1089
|
+
exactly that case, so say it once here instead of in each consumer. */
|
|
1090
|
+
.axi-rail--float { background: var(--axi-surface-float); }
|
|
1054
1091
|
.axi-rail__nav { display: flex; flex-direction: column; gap: 2px; }
|
|
1055
1092
|
.axi-rail__item {
|
|
1056
1093
|
display: flex;
|
package/package.json
CHANGED
package/src/shells.css
CHANGED
|
@@ -23,6 +23,29 @@
|
|
|
23
23
|
padding-inline: var(--axi-gutter);
|
|
24
24
|
display: flex; align-items: center; gap: 22px; min-height: 66px; flex-wrap: wrap;
|
|
25
25
|
}
|
|
26
|
+
/* Above --axi-page the row stops growing: the cap is on this box, not on the
|
|
27
|
+
window, so from 1280px up the masthead has exactly one width to fit in and
|
|
28
|
+
wrapping there is not a fallback, it is a permanent second line - one tab
|
|
29
|
+
too many and the last item in source order drops, on a 4K display as surely
|
|
30
|
+
as on a laptop. So the wide row does not wrap; it takes the width out of the
|
|
31
|
+
search field instead (below), and the strip scrolls only if that runs out.
|
|
32
|
+
Under the cap the window really is too narrow and wrapping is the honest
|
|
33
|
+
answer, which is why this is a floor and not a blanket `nowrap`. */
|
|
34
|
+
@media (min-width: 1280px) {
|
|
35
|
+
.axi-mast__in { flex-wrap: nowrap; }
|
|
36
|
+
}
|
|
37
|
+
/* Nothing in the row gives up width unless it is named below. */
|
|
38
|
+
.axi-mast__in > * { flex-shrink: 0; }
|
|
39
|
+
/* The field is the one control here that is still entirely itself 70px
|
|
40
|
+
narrower - a placeholder that elides costs nothing, where a clipped tab
|
|
41
|
+
costs a destination. Flexbox shrinks proportionally, not in order, and a
|
|
42
|
+
merely-larger factor still took a couple of pixels off the last tab; the
|
|
43
|
+
number is this big to make that share round to nothing, so the effect is
|
|
44
|
+
the ordering CSS has no other way to say. Once the field is at its floor -
|
|
45
|
+
still wide enough to read as a search box rather than a smudge - whatever
|
|
46
|
+
is left over goes to the strip, which scrolls. */
|
|
47
|
+
.axi-mast .axi-search,
|
|
48
|
+
.axi-mast .docs-search { flex-shrink: 1000; min-width: 200px; }
|
|
26
49
|
.axi-brand { display: flex; align-items: center; gap: 12px; text-decoration: none; }
|
|
27
50
|
/* The sigil is the diamond motif scaled up with a glyph on top. The diamond is
|
|
28
51
|
a rotated pseudo-element behind the text rather than a rotated box, so the
|
|
@@ -56,8 +79,14 @@
|
|
|
56
79
|
.axi-tabs { display: flex; gap: 8px; }
|
|
57
80
|
/* The auto margin belongs to the masthead, not to the strip: it is a statement
|
|
58
81
|
about where the tabs sit in that row, and a strip standing on its own -
|
|
59
|
-
spanning a view instead of ending a header - has nothing to push away from.
|
|
60
|
-
|
|
82
|
+
spanning a view instead of ending a header - has nothing to push away from.
|
|
83
|
+
The overflow belongs to the masthead for the same reason. This row is capped
|
|
84
|
+
at --axi-page, so the brand, the strip, the search field and the two selects
|
|
85
|
+
divide 1244px however wide the window is, and flex-wrap breaks a line before
|
|
86
|
+
it shrinks an item - so one tab too many sent the last item in source order
|
|
87
|
+
to a second row instead of taking width off the widest one. The strip is the
|
|
88
|
+
item that can give: it scrolls, and the row stays a row. */
|
|
89
|
+
.axi-mast .axi-tabs { margin-left: auto; flex-shrink: 1; min-width: 0; overflow-x: auto; }
|
|
61
90
|
.axi-tabs a,
|
|
62
91
|
.axi-tabs button {
|
|
63
92
|
padding: 8px 16px;
|
|
@@ -152,6 +181,14 @@
|
|
|
152
181
|
border-right: var(--axi-border-panel) solid var(--axi-ink-line);
|
|
153
182
|
border-radius: 0;
|
|
154
183
|
}
|
|
184
|
+
/* A rail the page scrolls behind, rather than one the page sits beside.
|
|
185
|
+
It is the same object, so it keeps every other rule; the one thing that
|
|
186
|
+
changes is the surface it is printed on. --axi-surface is a translucent
|
|
187
|
+
tint under a theme like glass, which reads as a pane only while the
|
|
188
|
+
content behind it holds still — the moment a table scrolls past, the
|
|
189
|
+
rows show through the nav. --axi-surface-float is the surface for
|
|
190
|
+
exactly that case, so say it once here instead of in each consumer. */
|
|
191
|
+
.axi-rail--float { background: var(--axi-surface-float); }
|
|
155
192
|
.axi-rail__nav { display: flex; flex-direction: column; gap: 2px; }
|
|
156
193
|
.axi-rail__item {
|
|
157
194
|
display: flex;
|