@axiapps/axi-design 1.14.0 → 1.16.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/README.md +11 -4
- package/dist/axi.css +49 -5
- package/dist/icons/activity.svg +3 -0
- package/dist/icons/circle-help.svg +5 -0
- package/dist/icons/crown.svg +3 -0
- package/dist/icons/filter.svg +1 -1
- package/dist/icons/folder-open.svg +2 -2
- package/dist/icons/icons.json +183 -0
- package/dist/icons/loader-circle.svg +3 -0
- package/dist/icons/maximize-2.svg +5 -0
- package/dist/icons/message-square.svg +3 -0
- package/dist/icons/settings.svg +4 -0
- package/dist/icons/share-2.svg +7 -0
- package/dist/icons/shield.svg +3 -0
- package/dist/icons/sprite.svg +79 -4
- package/dist/icons/swords.svg +6 -0
- package/dist/icons/volume-2.svg +1 -1
- package/icons/activity.svg +3 -0
- package/icons/circle-help.svg +5 -0
- package/icons/crown.svg +3 -0
- package/icons/filter.svg +1 -1
- package/icons/folder-open.svg +2 -2
- package/icons/loader-circle.svg +3 -0
- package/icons/maximize-2.svg +5 -0
- package/icons/message-square.svg +3 -0
- package/icons/settings.svg +4 -0
- package/icons/share-2.svg +7 -0
- package/icons/shield.svg +3 -0
- package/icons/swords.svg +6 -0
- package/icons/volume-2.svg +1 -1
- package/package.json +1 -1
- package/src/shells.css +49 -5
package/README.md
CHANGED
|
@@ -55,7 +55,7 @@ everything-at-once view.
|
|
|
55
55
|
|
|
56
56
|
### An icon set of its own
|
|
57
57
|
|
|
58
|
-
|
|
58
|
+
Fifty-seven glyphs drawn to [rule 12](docs/RULES.md) — a 24 canvas, a 3px
|
|
59
59
|
stroke, mitered joins, square corners, and no angle that is not 0°, 45° or 90°.
|
|
60
60
|
They take their ink from whatever they sit in, so a glyph inside an accent
|
|
61
61
|
button turns accent-ink with the label and follows every accent and theme
|
|
@@ -74,12 +74,19 @@ absent, no error, no fallback. In that case do one of two things: inline
|
|
|
74
74
|
`dist/icons/sprite.svg` into the document once (a hidden `<svg>` before
|
|
75
75
|
`</body>`, which is what this project's own docs site does) and reference bare
|
|
76
76
|
fragments like `#axi-search`, or use the standalone `dist/icons/<name>.svg`
|
|
77
|
-
files. Serving the renderer over `http://localhost` also works.
|
|
77
|
+
files. Serving the renderer over `http://localhost` also works. Note that
|
|
78
|
+
alias names resolve only through the sprite — there is no
|
|
79
|
+
`dist/icons/triangle-alert.svg` — so the standalone-file route wants the
|
|
80
|
+
canonical name.
|
|
78
81
|
|
|
79
82
|
One sprite holds the set; `dist/icons/<name>.svg` is the same drawing on its own,
|
|
80
83
|
and `dist/icons/icons.json` is the catalogue — name, categories, aliases and
|
|
81
|
-
keywords — for an app that wants to build a picker.
|
|
82
|
-
|
|
84
|
+
keywords — for an app that wants to build a picker. A Lucide name this set
|
|
85
|
+
answers to under a different one — `triangle-alert`, `alert-circle`, `loader-2` —
|
|
86
|
+
resolves in the sprite too, so porting off `lucide-react` is a rename rather than
|
|
87
|
+
a call-site audit. Where the set will not draw a shape at all, the
|
|
88
|
+
[icons page](https://darkharasho.github.io/axi-design/icons/#substitutions) says
|
|
89
|
+
what to use instead. Size a glyph with `--axi-icon-size`. The vocabulary derives from [Lucide](https://lucide.dev)
|
|
83
90
|
under the ISC licence (`icons/LICENSE-LUCIDE`); none of the path data does.
|
|
84
91
|
Browse the set at [`/icons/`](https://darkharasho.github.io/axi-design/icons/).
|
|
85
92
|
|
package/dist/axi.css
CHANGED
|
@@ -874,24 +874,67 @@ textarea.axi-input {
|
|
|
874
874
|
color: var(--axi-text-faint);
|
|
875
875
|
letter-spacing: .09em; text-transform: uppercase;
|
|
876
876
|
}
|
|
877
|
-
.
|
|
878
|
-
|
|
877
|
+
/* Anchors and buttons both. A strip that moves between URLs is made of links;
|
|
878
|
+
a strip inside an application that swaps a view in place is made of buttons,
|
|
879
|
+
and they look the same because they answer the same question. A button also
|
|
880
|
+
arrives carrying the UA's own font, fill and cursor, which an anchor does
|
|
881
|
+
not, so those three are cleared here rather than left to the consumer. */
|
|
882
|
+
.axi-tabs { display: flex; gap: 8px; }
|
|
883
|
+
/* The auto margin belongs to the masthead, not to the strip: it is a statement
|
|
884
|
+
about where the tabs sit in that row, and a strip standing on its own -
|
|
885
|
+
spanning a view instead of ending a header - has nothing to push away from. */
|
|
886
|
+
.axi-mast .axi-tabs { margin-left: auto; }
|
|
887
|
+
.axi-tabs a,
|
|
888
|
+
.axi-tabs button {
|
|
879
889
|
padding: 8px 16px;
|
|
880
890
|
font: 800 13.5px/1 var(--axi-sans);
|
|
881
891
|
color: var(--axi-text-dim); text-decoration: none;
|
|
892
|
+
background: none;
|
|
893
|
+
cursor: pointer;
|
|
882
894
|
border: var(--axi-border-control) solid transparent;
|
|
883
895
|
border-radius: var(--axi-radius-sm);
|
|
884
896
|
}
|
|
885
|
-
.axi-tabs a:hover
|
|
897
|
+
.axi-tabs a:hover,
|
|
898
|
+
.axi-tabs button:hover { color: var(--axi-text); border-color: var(--axi-rule); }
|
|
886
899
|
/* The current tab is filled and blocked - the same treatment a pressed pill
|
|
887
900
|
gets, because it is the same idea: this one is on. */
|
|
888
|
-
.axi-tabs a[aria-current="page"]
|
|
901
|
+
.axi-tabs a[aria-current="page"],
|
|
902
|
+
.axi-tabs button[aria-current="page"] {
|
|
889
903
|
background: var(--axi-accent);
|
|
890
904
|
color: var(--axi-accent-ink);
|
|
891
905
|
border-color: var(--axi-ink-line);
|
|
892
906
|
box-shadow: var(--axi-shadow-control);
|
|
893
907
|
}
|
|
894
908
|
|
|
909
|
+
/* A closable tab - a report or a document, an open thing rather than a place.
|
|
910
|
+
The label and its close control travel together, so the pair is a box and
|
|
911
|
+
the strip's gap falls between pairs instead of between a tab and its own X.
|
|
912
|
+
|
|
913
|
+
The close control is a tab's affordance and not a tab, so it opts out of the
|
|
914
|
+
tab treatment: no tab padding, no tab weight, and faint until the cursor is
|
|
915
|
+
on it. Two classes to outrank `.axi-tabs button`, which is one class and one
|
|
916
|
+
element and would otherwise win on source order alone. */
|
|
917
|
+
/* A document title is arbitrarily long, so the label truncates rather than
|
|
918
|
+
pushing the close control off the strip. Both boxes need min-width: 0 - a
|
|
919
|
+
flex item's default min-width is its content, so without it the label simply
|
|
920
|
+
refuses to shrink and the ellipsis never appears. The consumer sets the width
|
|
921
|
+
it wants to hold on .axi-tabs__tab. */
|
|
922
|
+
.axi-tabs__tab { display: inline-flex; align-items: center; min-width: 0; }
|
|
923
|
+
.axi-tabs__tab > a:first-child,
|
|
924
|
+
.axi-tabs__tab > button:first-child {
|
|
925
|
+
min-width: 0;
|
|
926
|
+
overflow: hidden;
|
|
927
|
+
text-overflow: ellipsis;
|
|
928
|
+
white-space: nowrap;
|
|
929
|
+
}
|
|
930
|
+
.axi-tabs .axi-tabs__close {
|
|
931
|
+
padding: 0 6px;
|
|
932
|
+
font: var(--axi-t-micro);
|
|
933
|
+
color: var(--axi-text-faint);
|
|
934
|
+
border-color: transparent;
|
|
935
|
+
}
|
|
936
|
+
.axi-tabs .axi-tabs__close:hover { color: var(--axi-text); border-color: transparent; }
|
|
937
|
+
|
|
895
938
|
/* ---------- notice ---------- */
|
|
896
939
|
.axi-notice {
|
|
897
940
|
display: flex; gap: 14px; padding: 15px 18px;
|
|
@@ -1205,7 +1248,8 @@ textarea.axi-input {
|
|
|
1205
1248
|
|
|
1206
1249
|
@media (max-width: 640px) {
|
|
1207
1250
|
.axi-mast__in { min-height: 0; padding: 10px 16px; gap: 12px; }
|
|
1208
|
-
.axi-tabs { margin-left: 0;
|
|
1251
|
+
.axi-mast .axi-tabs { margin-left: 0; }
|
|
1252
|
+
.axi-tabs { width: 100%; overflow-x: auto; }
|
|
1209
1253
|
/* The offset blocks eat horizontal room a phone does not have, so the panel
|
|
1210
1254
|
step drops to the control step here rather than to an invented number.
|
|
1211
1255
|
The card's hover has to come down with it - left alone it kept deepening
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
2
|
+
<path d="M8.5 1.5 L15.5 1.5 L22.5 8.5 L22.5 15.5 L15.5 22.5 L8.5 22.5 L1.5 15.5 L1.5 8.5 Z"/>
|
|
3
|
+
<path d="M7 9 L8.5 7.5 L14.5 7.5 L14.5 11.5 L12 11.5 L12 14.5"/>
|
|
4
|
+
<path d="M12 17.5 L12 19"/>
|
|
5
|
+
</svg>
|
package/dist/icons/filter.svg
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
2
|
-
<path d="
|
|
2
|
+
<path d="M4.5 4.5 L19.5 4.5 L13.5 10.5 L13.5 19.5 L10.5 19.5 L10.5 10.5 Z"/>
|
|
3
3
|
</svg>
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
2
|
-
<path d="
|
|
3
|
-
<path d="
|
|
2
|
+
<path d="M3.5 18.5 L3.5 4.5 L8.5 4.5 L11.5 7.5 L19.5 7.5 L19.5 11.5"/>
|
|
3
|
+
<path d="M11.5 11.5 L19.5 11.5 L12.5 18.5 L4.5 18.5 Z"/>
|
|
4
4
|
</svg>
|
package/dist/icons/icons.json
CHANGED
|
@@ -1,4 +1,20 @@
|
|
|
1
1
|
[
|
|
2
|
+
{
|
|
3
|
+
"name": "activity",
|
|
4
|
+
"categories": [
|
|
5
|
+
"status"
|
|
6
|
+
],
|
|
7
|
+
"aliases": [
|
|
8
|
+
"pulse",
|
|
9
|
+
"live"
|
|
10
|
+
],
|
|
11
|
+
"keywords": [
|
|
12
|
+
"health",
|
|
13
|
+
"chart",
|
|
14
|
+
"monitor",
|
|
15
|
+
"heartbeat"
|
|
16
|
+
]
|
|
17
|
+
},
|
|
2
18
|
{
|
|
3
19
|
"name": "arrow-down",
|
|
4
20
|
"categories": [
|
|
@@ -165,6 +181,11 @@
|
|
|
165
181
|
"warning",
|
|
166
182
|
"exclamation"
|
|
167
183
|
],
|
|
184
|
+
"lucide": [
|
|
185
|
+
"alert-circle",
|
|
186
|
+
"triangle-alert",
|
|
187
|
+
"alert-triangle"
|
|
188
|
+
],
|
|
168
189
|
"keywords": [
|
|
169
190
|
"danger",
|
|
170
191
|
"error",
|
|
@@ -179,12 +200,35 @@
|
|
|
179
200
|
"aliases": [
|
|
180
201
|
"success"
|
|
181
202
|
],
|
|
203
|
+
"lucide": [
|
|
204
|
+
"check-circle",
|
|
205
|
+
"check-circle-2"
|
|
206
|
+
],
|
|
182
207
|
"keywords": [
|
|
183
208
|
"verified",
|
|
184
209
|
"passed",
|
|
185
210
|
"complete"
|
|
186
211
|
]
|
|
187
212
|
},
|
|
213
|
+
{
|
|
214
|
+
"name": "circle-help",
|
|
215
|
+
"categories": [
|
|
216
|
+
"status"
|
|
217
|
+
],
|
|
218
|
+
"aliases": [
|
|
219
|
+
"help",
|
|
220
|
+
"question"
|
|
221
|
+
],
|
|
222
|
+
"lucide": [
|
|
223
|
+
"help-circle"
|
|
224
|
+
],
|
|
225
|
+
"keywords": [
|
|
226
|
+
"what",
|
|
227
|
+
"support",
|
|
228
|
+
"unknown",
|
|
229
|
+
"faq"
|
|
230
|
+
]
|
|
231
|
+
},
|
|
188
232
|
{
|
|
189
233
|
"name": "circle-x",
|
|
190
234
|
"categories": [
|
|
@@ -193,6 +237,9 @@
|
|
|
193
237
|
"aliases": [
|
|
194
238
|
"failure"
|
|
195
239
|
],
|
|
240
|
+
"lucide": [
|
|
241
|
+
"x-circle"
|
|
242
|
+
],
|
|
196
243
|
"keywords": [
|
|
197
244
|
"error",
|
|
198
245
|
"rejected",
|
|
@@ -226,6 +273,22 @@
|
|
|
226
273
|
"clone"
|
|
227
274
|
]
|
|
228
275
|
},
|
|
276
|
+
{
|
|
277
|
+
"name": "crown",
|
|
278
|
+
"categories": [
|
|
279
|
+
"objects"
|
|
280
|
+
],
|
|
281
|
+
"aliases": [
|
|
282
|
+
"king",
|
|
283
|
+
"best"
|
|
284
|
+
],
|
|
285
|
+
"keywords": [
|
|
286
|
+
"rank",
|
|
287
|
+
"premium",
|
|
288
|
+
"featured",
|
|
289
|
+
"top"
|
|
290
|
+
]
|
|
291
|
+
},
|
|
229
292
|
{
|
|
230
293
|
"name": "download",
|
|
231
294
|
"categories": [
|
|
@@ -366,6 +429,25 @@
|
|
|
366
429
|
"connect"
|
|
367
430
|
]
|
|
368
431
|
},
|
|
432
|
+
{
|
|
433
|
+
"name": "loader-circle",
|
|
434
|
+
"categories": [
|
|
435
|
+
"status"
|
|
436
|
+
],
|
|
437
|
+
"aliases": [
|
|
438
|
+
"spinner",
|
|
439
|
+
"loading"
|
|
440
|
+
],
|
|
441
|
+
"lucide": [
|
|
442
|
+
"loader-2"
|
|
443
|
+
],
|
|
444
|
+
"keywords": [
|
|
445
|
+
"busy",
|
|
446
|
+
"pending",
|
|
447
|
+
"wait",
|
|
448
|
+
"progress"
|
|
449
|
+
]
|
|
450
|
+
},
|
|
369
451
|
{
|
|
370
452
|
"name": "lock",
|
|
371
453
|
"categories": [
|
|
@@ -381,6 +463,21 @@
|
|
|
381
463
|
"closed"
|
|
382
464
|
]
|
|
383
465
|
},
|
|
466
|
+
{
|
|
467
|
+
"name": "maximize-2",
|
|
468
|
+
"categories": [
|
|
469
|
+
"actions"
|
|
470
|
+
],
|
|
471
|
+
"aliases": [
|
|
472
|
+
"expand",
|
|
473
|
+
"fullscreen"
|
|
474
|
+
],
|
|
475
|
+
"keywords": [
|
|
476
|
+
"enlarge",
|
|
477
|
+
"grow",
|
|
478
|
+
"open"
|
|
479
|
+
]
|
|
480
|
+
},
|
|
384
481
|
{
|
|
385
482
|
"name": "menu",
|
|
386
483
|
"categories": [
|
|
@@ -395,6 +492,22 @@
|
|
|
395
492
|
"more"
|
|
396
493
|
]
|
|
397
494
|
},
|
|
495
|
+
{
|
|
496
|
+
"name": "message-square",
|
|
497
|
+
"categories": [
|
|
498
|
+
"objects"
|
|
499
|
+
],
|
|
500
|
+
"aliases": [
|
|
501
|
+
"comment",
|
|
502
|
+
"chat"
|
|
503
|
+
],
|
|
504
|
+
"keywords": [
|
|
505
|
+
"speech",
|
|
506
|
+
"reply",
|
|
507
|
+
"thread",
|
|
508
|
+
"note"
|
|
509
|
+
]
|
|
510
|
+
},
|
|
398
511
|
{
|
|
399
512
|
"name": "minus",
|
|
400
513
|
"categories": [
|
|
@@ -431,6 +544,10 @@
|
|
|
431
544
|
"edit",
|
|
432
545
|
"write"
|
|
433
546
|
],
|
|
547
|
+
"lucide": [
|
|
548
|
+
"edit-2",
|
|
549
|
+
"square-pen"
|
|
550
|
+
],
|
|
434
551
|
"keywords": [
|
|
435
552
|
"rename",
|
|
436
553
|
"modify",
|
|
@@ -509,6 +626,22 @@
|
|
|
509
626
|
"query"
|
|
510
627
|
]
|
|
511
628
|
},
|
|
629
|
+
{
|
|
630
|
+
"name": "settings",
|
|
631
|
+
"categories": [
|
|
632
|
+
"actions"
|
|
633
|
+
],
|
|
634
|
+
"aliases": [
|
|
635
|
+
"gear",
|
|
636
|
+
"cog"
|
|
637
|
+
],
|
|
638
|
+
"keywords": [
|
|
639
|
+
"admin",
|
|
640
|
+
"system",
|
|
641
|
+
"controls",
|
|
642
|
+
"setup"
|
|
643
|
+
]
|
|
644
|
+
},
|
|
512
645
|
{
|
|
513
646
|
"name": "settings-2",
|
|
514
647
|
"categories": [
|
|
@@ -524,6 +657,37 @@
|
|
|
524
657
|
"tune"
|
|
525
658
|
]
|
|
526
659
|
},
|
|
660
|
+
{
|
|
661
|
+
"name": "share-2",
|
|
662
|
+
"categories": [
|
|
663
|
+
"actions"
|
|
664
|
+
],
|
|
665
|
+
"aliases": [
|
|
666
|
+
"share"
|
|
667
|
+
],
|
|
668
|
+
"keywords": [
|
|
669
|
+
"send",
|
|
670
|
+
"distribute",
|
|
671
|
+
"network",
|
|
672
|
+
"nodes"
|
|
673
|
+
]
|
|
674
|
+
},
|
|
675
|
+
{
|
|
676
|
+
"name": "shield",
|
|
677
|
+
"categories": [
|
|
678
|
+
"status"
|
|
679
|
+
],
|
|
680
|
+
"aliases": [
|
|
681
|
+
"secure",
|
|
682
|
+
"protected"
|
|
683
|
+
],
|
|
684
|
+
"keywords": [
|
|
685
|
+
"guard",
|
|
686
|
+
"safety",
|
|
687
|
+
"defence",
|
|
688
|
+
"trust"
|
|
689
|
+
]
|
|
690
|
+
},
|
|
527
691
|
{
|
|
528
692
|
"name": "skip-forward",
|
|
529
693
|
"categories": [
|
|
@@ -545,12 +709,31 @@
|
|
|
545
709
|
"aliases": [
|
|
546
710
|
"stop"
|
|
547
711
|
],
|
|
712
|
+
"lucide": [
|
|
713
|
+
"circle"
|
|
714
|
+
],
|
|
548
715
|
"keywords": [
|
|
549
716
|
"halt",
|
|
550
717
|
"end",
|
|
551
718
|
"record"
|
|
552
719
|
]
|
|
553
720
|
},
|
|
721
|
+
{
|
|
722
|
+
"name": "swords",
|
|
723
|
+
"categories": [
|
|
724
|
+
"objects"
|
|
725
|
+
],
|
|
726
|
+
"aliases": [
|
|
727
|
+
"combat",
|
|
728
|
+
"versus"
|
|
729
|
+
],
|
|
730
|
+
"keywords": [
|
|
731
|
+
"battle",
|
|
732
|
+
"fight",
|
|
733
|
+
"pvp",
|
|
734
|
+
"duel"
|
|
735
|
+
]
|
|
736
|
+
},
|
|
554
737
|
{
|
|
555
738
|
"name": "tag",
|
|
556
739
|
"categories": [
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
2
|
+
<path d="M5.5 5.5 L10.5 5.5 L10.5 2.5 L13.5 2.5 L13.5 5.5 L18.5 5.5 L18.5 10.5 L21.5 10.5 L21.5 13.5 L18.5 13.5 L18.5 18.5 L13.5 18.5 L13.5 21.5 L10.5 21.5 L10.5 18.5 L5.5 18.5 L5.5 13.5 L2.5 13.5 L2.5 10.5 L5.5 10.5 Z"/>
|
|
3
|
+
<path d="M12 10 L14 12 L12 14 L10 12 Z" fill="currentColor" stroke="none"/>
|
|
4
|
+
</svg>
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
2
|
+
<path d="M8 10 L10 12 L8 14 L6 12 Z"/>
|
|
3
|
+
<path d="M15.5 2.5 L17.5 4.5 L15.5 6.5 L13.5 4.5 Z"/>
|
|
4
|
+
<path d="M15.5 17.5 L17.5 19.5 L15.5 21.5 L13.5 19.5 Z"/>
|
|
5
|
+
<path d="M10 10 L13.5 6.5"/>
|
|
6
|
+
<path d="M10 14 L13.5 17.5"/>
|
|
7
|
+
</svg>
|
package/dist/icons/sprite.svg
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
<svg xmlns="http://www.w3.org/2000/svg">
|
|
2
2
|
<!-- axi design language - generated by scripts/build.mjs from icons/.
|
|
3
3
|
Edit the files in icons/ and run `npm run build`; do not edit this file. -->
|
|
4
|
+
<symbol id="axi-activity" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
5
|
+
<path d="M2.5 12 L6 12 L9.5 15.5 L15.5 9.5 L18 12 L21.5 12"/>
|
|
6
|
+
</symbol>
|
|
4
7
|
<symbol id="axi-arrow-down" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
5
8
|
<path d="M12 3.5 L12 19.5"/>
|
|
6
9
|
<path d="M6 13.5 L12 19.5 L18 13.5"/>
|
|
@@ -51,6 +54,11 @@
|
|
|
51
54
|
<path d="M8.5 1.5 L15.5 1.5 L22.5 8.5 L22.5 15.5 L15.5 22.5 L8.5 22.5 L1.5 15.5 L1.5 8.5 Z"/>
|
|
52
55
|
<path d="M7 12 L10.5 15.5 L17 9"/>
|
|
53
56
|
</symbol>
|
|
57
|
+
<symbol id="axi-circle-help" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
58
|
+
<path d="M8.5 1.5 L15.5 1.5 L22.5 8.5 L22.5 15.5 L15.5 22.5 L8.5 22.5 L1.5 15.5 L1.5 8.5 Z"/>
|
|
59
|
+
<path d="M7 9 L8.5 7.5 L14.5 7.5 L14.5 11.5 L12 11.5 L12 14.5"/>
|
|
60
|
+
<path d="M12 17.5 L12 19"/>
|
|
61
|
+
</symbol>
|
|
54
62
|
<symbol id="axi-circle-x" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
55
63
|
<path d="M8.5 1.5 L15.5 1.5 L22.5 8.5 L22.5 15.5 L15.5 22.5 L8.5 22.5 L1.5 15.5 L1.5 8.5 Z"/>
|
|
56
64
|
<path d="M8 8 L16 16"/>
|
|
@@ -64,6 +72,9 @@
|
|
|
64
72
|
<path d="M8.5 8.5 L20.5 8.5 L20.5 20.5 L8.5 20.5 Z"/>
|
|
65
73
|
<path d="M15.5 5.5 L15.5 3.5 L3.5 3.5 L3.5 15.5 L5.5 15.5"/>
|
|
66
74
|
</symbol>
|
|
75
|
+
<symbol id="axi-crown" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
76
|
+
<path d="M3.5 8.5 L7.5 12.5 L12 8 L16.5 12.5 L20.5 8.5 L20.5 17.5 L3.5 17.5 Z"/>
|
|
77
|
+
</symbol>
|
|
67
78
|
<symbol id="axi-download" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
68
79
|
<path d="M12 2.5 L12 14.5"/>
|
|
69
80
|
<path d="M6.5 9 L12 14.5 L17.5 9"/>
|
|
@@ -89,14 +100,14 @@
|
|
|
89
100
|
<path d="M8.5 16.5 L15.5 16.5"/>
|
|
90
101
|
</symbol>
|
|
91
102
|
<symbol id="axi-filter" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
92
|
-
<path d="
|
|
103
|
+
<path d="M4.5 4.5 L19.5 4.5 L13.5 10.5 L13.5 19.5 L10.5 19.5 L10.5 10.5 Z"/>
|
|
93
104
|
</symbol>
|
|
94
105
|
<symbol id="axi-folder" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
95
106
|
<path d="M2.5 20.5 L2.5 4.5 L8.5 4.5 L11.5 7.5 L21.5 7.5 L21.5 20.5 Z"/>
|
|
96
107
|
</symbol>
|
|
97
108
|
<symbol id="axi-folder-open" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
98
|
-
<path d="
|
|
99
|
-
<path d="
|
|
109
|
+
<path d="M3.5 18.5 L3.5 4.5 L8.5 4.5 L11.5 7.5 L19.5 7.5 L19.5 11.5"/>
|
|
110
|
+
<path d="M11.5 11.5 L19.5 11.5 L12.5 18.5 L4.5 18.5 Z"/>
|
|
100
111
|
</symbol>
|
|
101
112
|
<symbol id="axi-info" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
102
113
|
<path d="M3.5 3.5 L20.5 3.5 L20.5 20.5 L3.5 20.5 Z"/>
|
|
@@ -108,15 +119,26 @@
|
|
|
108
119
|
<path d="M13.5 6.5 L16.5 3.5 L20.5 7.5 L17.5 10.5"/>
|
|
109
120
|
<path d="M10.5 17.5 L7.5 20.5 L3.5 16.5 L6.5 13.5"/>
|
|
110
121
|
</symbol>
|
|
122
|
+
<symbol id="axi-loader-circle" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
123
|
+
<path d="M12 3.5 L3.5 3.5 L3.5 20.5 L20.5 20.5 L20.5 12"/>
|
|
124
|
+
</symbol>
|
|
111
125
|
<symbol id="axi-lock" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
112
126
|
<path d="M4.5 11.5 L19.5 11.5 L19.5 21.5 L4.5 21.5 Z"/>
|
|
113
127
|
<path d="M8.5 11.5 L8.5 6.5 L15.5 6.5 L15.5 11.5"/>
|
|
114
128
|
</symbol>
|
|
129
|
+
<symbol id="axi-maximize-2" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
130
|
+
<path d="M14.5 3.5 L20.5 3.5 L20.5 9.5"/>
|
|
131
|
+
<path d="M9.5 20.5 L3.5 20.5 L3.5 14.5"/>
|
|
132
|
+
<path d="M20.5 3.5 L3.5 20.5"/>
|
|
133
|
+
</symbol>
|
|
115
134
|
<symbol id="axi-menu" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
116
135
|
<path d="M3.5 5.5 L20.5 5.5"/>
|
|
117
136
|
<path d="M3.5 12 L20.5 12"/>
|
|
118
137
|
<path d="M3.5 18.5 L20.5 18.5"/>
|
|
119
138
|
</symbol>
|
|
139
|
+
<symbol id="axi-message-square" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
140
|
+
<path d="M3.5 4.5 L20.5 4.5 L20.5 16.5 L9.5 16.5 L6.5 19.5 L6.5 16.5 L3.5 16.5 Z"/>
|
|
141
|
+
</symbol>
|
|
120
142
|
<symbol id="axi-minus" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
121
143
|
<path d="M3.5 12 L20.5 12"/>
|
|
122
144
|
</symbol>
|
|
@@ -150,12 +172,26 @@
|
|
|
150
172
|
<path d="M9.5 3.5 L15.5 9.5 L9.5 15.5 L3.5 9.5 Z"/>
|
|
151
173
|
<path d="M13.5 13.5 L20.5 20.5"/>
|
|
152
174
|
</symbol>
|
|
175
|
+
<symbol id="axi-settings" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
176
|
+
<path d="M5.5 5.5 L10.5 5.5 L10.5 2.5 L13.5 2.5 L13.5 5.5 L18.5 5.5 L18.5 10.5 L21.5 10.5 L21.5 13.5 L18.5 13.5 L18.5 18.5 L13.5 18.5 L13.5 21.5 L10.5 21.5 L10.5 18.5 L5.5 18.5 L5.5 13.5 L2.5 13.5 L2.5 10.5 L5.5 10.5 Z"/>
|
|
177
|
+
<path d="M12 10 L14 12 L12 14 L10 12 Z" fill="currentColor" stroke="none"/>
|
|
178
|
+
</symbol>
|
|
153
179
|
<symbol id="axi-settings-2" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
154
180
|
<path d="M3.5 8.5 L20.5 8.5"/>
|
|
155
181
|
<path d="M3.5 15.5 L20.5 15.5"/>
|
|
156
182
|
<path d="M9.5 5.5 L12.5 8.5 L9.5 11.5 L6.5 8.5 Z"/>
|
|
157
183
|
<path d="M15.5 12.5 L18.5 15.5 L15.5 18.5 L12.5 15.5 Z"/>
|
|
158
184
|
</symbol>
|
|
185
|
+
<symbol id="axi-share-2" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
186
|
+
<path d="M8 10 L10 12 L8 14 L6 12 Z"/>
|
|
187
|
+
<path d="M15.5 2.5 L17.5 4.5 L15.5 6.5 L13.5 4.5 Z"/>
|
|
188
|
+
<path d="M15.5 17.5 L17.5 19.5 L15.5 21.5 L13.5 19.5 Z"/>
|
|
189
|
+
<path d="M10 10 L13.5 6.5"/>
|
|
190
|
+
<path d="M10 14 L13.5 17.5"/>
|
|
191
|
+
</symbol>
|
|
192
|
+
<symbol id="axi-shield" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
193
|
+
<path d="M5.5 3.5 L18.5 3.5 L18.5 14.5 L12 21 L5.5 14.5 Z"/>
|
|
194
|
+
</symbol>
|
|
159
195
|
<symbol id="axi-skip-forward" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
160
196
|
<path d="M6.5 5.5 L13 12 L6.5 18.5 Z"/>
|
|
161
197
|
<path d="M17.5 5.5 L17.5 18.5"/>
|
|
@@ -163,6 +199,12 @@
|
|
|
163
199
|
<symbol id="axi-square" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
164
200
|
<path d="M4.5 4.5 L19.5 4.5 L19.5 19.5 L4.5 19.5 Z"/>
|
|
165
201
|
</symbol>
|
|
202
|
+
<symbol id="axi-swords" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
203
|
+
<path d="M3.5 6.5 L16.5 19.5"/>
|
|
204
|
+
<path d="M20.5 6.5 L7.5 19.5"/>
|
|
205
|
+
<path d="M12.5 18.5 L15.5 15.5"/>
|
|
206
|
+
<path d="M8.5 15.5 L11.5 18.5"/>
|
|
207
|
+
</symbol>
|
|
166
208
|
<symbol id="axi-tag" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
167
209
|
<path d="M2.5 2.5 L13.5 2.5 L21.5 10.5 L10.5 21.5 L2.5 13.5 Z"/>
|
|
168
210
|
<path d="M6.5 4.5 L8.5 6.5 L6.5 8.5 L4.5 6.5 Z"/>
|
|
@@ -192,7 +234,7 @@
|
|
|
192
234
|
<path d="M17 14.5 L19.5 14.5 L22.5 17.5 L22.5 20.5"/>
|
|
193
235
|
</symbol>
|
|
194
236
|
<symbol id="axi-volume-2" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
195
|
-
<path d="M2.5 9.5
|
|
237
|
+
<path d="M2.5 9.5 L7.5 9.5 L12.5 4.5 L12.5 19.5 L7.5 14.5 L2.5 14.5 Z"/>
|
|
196
238
|
<path d="M16.5 8.5 L16.5 15.5"/>
|
|
197
239
|
<path d="M20.5 5.5 L20.5 18.5"/>
|
|
198
240
|
</symbol>
|
|
@@ -200,4 +242,37 @@
|
|
|
200
242
|
<path d="M5.5 5.5 L18.5 18.5"/>
|
|
201
243
|
<path d="M18.5 5.5 L5.5 18.5"/>
|
|
202
244
|
</symbol>
|
|
245
|
+
<symbol id="axi-alert-circle" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
246
|
+
<use href="#axi-circle-alert"/>
|
|
247
|
+
</symbol>
|
|
248
|
+
<symbol id="axi-alert-triangle" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
249
|
+
<use href="#axi-circle-alert"/>
|
|
250
|
+
</symbol>
|
|
251
|
+
<symbol id="axi-check-circle" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
252
|
+
<use href="#axi-circle-check"/>
|
|
253
|
+
</symbol>
|
|
254
|
+
<symbol id="axi-check-circle-2" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
255
|
+
<use href="#axi-circle-check"/>
|
|
256
|
+
</symbol>
|
|
257
|
+
<symbol id="axi-circle" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
258
|
+
<use href="#axi-square"/>
|
|
259
|
+
</symbol>
|
|
260
|
+
<symbol id="axi-edit-2" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
261
|
+
<use href="#axi-pencil"/>
|
|
262
|
+
</symbol>
|
|
263
|
+
<symbol id="axi-help-circle" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
264
|
+
<use href="#axi-circle-help"/>
|
|
265
|
+
</symbol>
|
|
266
|
+
<symbol id="axi-loader-2" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
267
|
+
<use href="#axi-loader-circle"/>
|
|
268
|
+
</symbol>
|
|
269
|
+
<symbol id="axi-square-pen" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
270
|
+
<use href="#axi-pencil"/>
|
|
271
|
+
</symbol>
|
|
272
|
+
<symbol id="axi-triangle-alert" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
273
|
+
<use href="#axi-circle-alert"/>
|
|
274
|
+
</symbol>
|
|
275
|
+
<symbol id="axi-x-circle" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
276
|
+
<use href="#axi-circle-x"/>
|
|
277
|
+
</symbol>
|
|
203
278
|
</svg>
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
2
|
+
<path d="M3.5 6.5 L16.5 19.5"/>
|
|
3
|
+
<path d="M20.5 6.5 L7.5 19.5"/>
|
|
4
|
+
<path d="M12.5 18.5 L15.5 15.5"/>
|
|
5
|
+
<path d="M8.5 15.5 L11.5 18.5"/>
|
|
6
|
+
</svg>
|
package/dist/icons/volume-2.svg
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
2
|
-
<path d="M2.5 9.5
|
|
2
|
+
<path d="M2.5 9.5 L7.5 9.5 L12.5 4.5 L12.5 19.5 L7.5 14.5 L2.5 14.5 Z"/>
|
|
3
3
|
<path d="M16.5 8.5 L16.5 15.5"/>
|
|
4
4
|
<path d="M20.5 5.5 L20.5 18.5"/>
|
|
5
5
|
</svg>
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
2
|
+
<path d="M8.5 1.5 L15.5 1.5 L22.5 8.5 L22.5 15.5 L15.5 22.5 L8.5 22.5 L1.5 15.5 L1.5 8.5 Z"/>
|
|
3
|
+
<path d="M7 9 L8.5 7.5 L14.5 7.5 L14.5 11.5 L12 11.5 L12 14.5"/>
|
|
4
|
+
<path d="M12 17.5 L12 19"/>
|
|
5
|
+
</svg>
|
package/icons/crown.svg
ADDED
package/icons/filter.svg
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
2
|
-
<path d="
|
|
2
|
+
<path d="M4.5 4.5 L19.5 4.5 L13.5 10.5 L13.5 19.5 L10.5 19.5 L10.5 10.5 Z"/>
|
|
3
3
|
</svg>
|
package/icons/folder-open.svg
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
2
|
-
<path d="
|
|
3
|
-
<path d="
|
|
2
|
+
<path d="M3.5 18.5 L3.5 4.5 L8.5 4.5 L11.5 7.5 L19.5 7.5 L19.5 11.5"/>
|
|
3
|
+
<path d="M11.5 11.5 L19.5 11.5 L12.5 18.5 L4.5 18.5 Z"/>
|
|
4
4
|
</svg>
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
2
|
+
<path d="M5.5 5.5 L10.5 5.5 L10.5 2.5 L13.5 2.5 L13.5 5.5 L18.5 5.5 L18.5 10.5 L21.5 10.5 L21.5 13.5 L18.5 13.5 L18.5 18.5 L13.5 18.5 L13.5 21.5 L10.5 21.5 L10.5 18.5 L5.5 18.5 L5.5 13.5 L2.5 13.5 L2.5 10.5 L5.5 10.5 Z"/>
|
|
3
|
+
<path d="M12 10 L14 12 L12 14 L10 12 Z" fill="currentColor" stroke="none"/>
|
|
4
|
+
</svg>
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
2
|
+
<path d="M8 10 L10 12 L8 14 L6 12 Z"/>
|
|
3
|
+
<path d="M15.5 2.5 L17.5 4.5 L15.5 6.5 L13.5 4.5 Z"/>
|
|
4
|
+
<path d="M15.5 17.5 L17.5 19.5 L15.5 21.5 L13.5 19.5 Z"/>
|
|
5
|
+
<path d="M10 10 L13.5 6.5"/>
|
|
6
|
+
<path d="M10 14 L13.5 17.5"/>
|
|
7
|
+
</svg>
|
package/icons/shield.svg
ADDED
package/icons/swords.svg
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
2
|
+
<path d="M3.5 6.5 L16.5 19.5"/>
|
|
3
|
+
<path d="M20.5 6.5 L7.5 19.5"/>
|
|
4
|
+
<path d="M12.5 18.5 L15.5 15.5"/>
|
|
5
|
+
<path d="M8.5 15.5 L11.5 18.5"/>
|
|
6
|
+
</svg>
|
package/icons/volume-2.svg
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linejoin="miter">
|
|
2
|
-
<path d="M2.5 9.5
|
|
2
|
+
<path d="M2.5 9.5 L7.5 9.5 L12.5 4.5 L12.5 19.5 L7.5 14.5 L2.5 14.5 Z"/>
|
|
3
3
|
<path d="M16.5 8.5 L16.5 15.5"/>
|
|
4
4
|
<path d="M20.5 5.5 L20.5 18.5"/>
|
|
5
5
|
</svg>
|
package/package.json
CHANGED
package/src/shells.css
CHANGED
|
@@ -48,24 +48,67 @@
|
|
|
48
48
|
color: var(--axi-text-faint);
|
|
49
49
|
letter-spacing: .09em; text-transform: uppercase;
|
|
50
50
|
}
|
|
51
|
-
.
|
|
52
|
-
|
|
51
|
+
/* Anchors and buttons both. A strip that moves between URLs is made of links;
|
|
52
|
+
a strip inside an application that swaps a view in place is made of buttons,
|
|
53
|
+
and they look the same because they answer the same question. A button also
|
|
54
|
+
arrives carrying the UA's own font, fill and cursor, which an anchor does
|
|
55
|
+
not, so those three are cleared here rather than left to the consumer. */
|
|
56
|
+
.axi-tabs { display: flex; gap: 8px; }
|
|
57
|
+
/* The auto margin belongs to the masthead, not to the strip: it is a statement
|
|
58
|
+
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
|
+
.axi-mast .axi-tabs { margin-left: auto; }
|
|
61
|
+
.axi-tabs a,
|
|
62
|
+
.axi-tabs button {
|
|
53
63
|
padding: 8px 16px;
|
|
54
64
|
font: 800 13.5px/1 var(--axi-sans);
|
|
55
65
|
color: var(--axi-text-dim); text-decoration: none;
|
|
66
|
+
background: none;
|
|
67
|
+
cursor: pointer;
|
|
56
68
|
border: var(--axi-border-control) solid transparent;
|
|
57
69
|
border-radius: var(--axi-radius-sm);
|
|
58
70
|
}
|
|
59
|
-
.axi-tabs a:hover
|
|
71
|
+
.axi-tabs a:hover,
|
|
72
|
+
.axi-tabs button:hover { color: var(--axi-text); border-color: var(--axi-rule); }
|
|
60
73
|
/* The current tab is filled and blocked - the same treatment a pressed pill
|
|
61
74
|
gets, because it is the same idea: this one is on. */
|
|
62
|
-
.axi-tabs a[aria-current="page"]
|
|
75
|
+
.axi-tabs a[aria-current="page"],
|
|
76
|
+
.axi-tabs button[aria-current="page"] {
|
|
63
77
|
background: var(--axi-accent);
|
|
64
78
|
color: var(--axi-accent-ink);
|
|
65
79
|
border-color: var(--axi-ink-line);
|
|
66
80
|
box-shadow: var(--axi-shadow-control);
|
|
67
81
|
}
|
|
68
82
|
|
|
83
|
+
/* A closable tab - a report or a document, an open thing rather than a place.
|
|
84
|
+
The label and its close control travel together, so the pair is a box and
|
|
85
|
+
the strip's gap falls between pairs instead of between a tab and its own X.
|
|
86
|
+
|
|
87
|
+
The close control is a tab's affordance and not a tab, so it opts out of the
|
|
88
|
+
tab treatment: no tab padding, no tab weight, and faint until the cursor is
|
|
89
|
+
on it. Two classes to outrank `.axi-tabs button`, which is one class and one
|
|
90
|
+
element and would otherwise win on source order alone. */
|
|
91
|
+
/* A document title is arbitrarily long, so the label truncates rather than
|
|
92
|
+
pushing the close control off the strip. Both boxes need min-width: 0 - a
|
|
93
|
+
flex item's default min-width is its content, so without it the label simply
|
|
94
|
+
refuses to shrink and the ellipsis never appears. The consumer sets the width
|
|
95
|
+
it wants to hold on .axi-tabs__tab. */
|
|
96
|
+
.axi-tabs__tab { display: inline-flex; align-items: center; min-width: 0; }
|
|
97
|
+
.axi-tabs__tab > a:first-child,
|
|
98
|
+
.axi-tabs__tab > button:first-child {
|
|
99
|
+
min-width: 0;
|
|
100
|
+
overflow: hidden;
|
|
101
|
+
text-overflow: ellipsis;
|
|
102
|
+
white-space: nowrap;
|
|
103
|
+
}
|
|
104
|
+
.axi-tabs .axi-tabs__close {
|
|
105
|
+
padding: 0 6px;
|
|
106
|
+
font: var(--axi-t-micro);
|
|
107
|
+
color: var(--axi-text-faint);
|
|
108
|
+
border-color: transparent;
|
|
109
|
+
}
|
|
110
|
+
.axi-tabs .axi-tabs__close:hover { color: var(--axi-text); border-color: transparent; }
|
|
111
|
+
|
|
69
112
|
/* ---------- notice ---------- */
|
|
70
113
|
.axi-notice {
|
|
71
114
|
display: flex; gap: 14px; padding: 15px 18px;
|
|
@@ -379,7 +422,8 @@
|
|
|
379
422
|
|
|
380
423
|
@media (max-width: 640px) {
|
|
381
424
|
.axi-mast__in { min-height: 0; padding: 10px 16px; gap: 12px; }
|
|
382
|
-
.axi-tabs { margin-left: 0;
|
|
425
|
+
.axi-mast .axi-tabs { margin-left: 0; }
|
|
426
|
+
.axi-tabs { width: 100%; overflow-x: auto; }
|
|
383
427
|
/* The offset blocks eat horizontal room a phone does not have, so the panel
|
|
384
428
|
step drops to the control step here rather than to an invented number.
|
|
385
429
|
The card's hover has to come down with it - left alone it kept deepening
|