anentrypoint-design 0.0.158 → 0.0.161
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/app-shell.css +40 -15
- package/dist/247420.css +40 -15
- package/dist/247420.js +9 -9
- package/package.json +1 -1
- package/src/components/community.js +8 -3
- package/src/components/shell.js +17 -5
package/app-shell.css
CHANGED
|
@@ -186,14 +186,43 @@ pre .n { color: var(--green-2); }
|
|
|
186
186
|
|
|
187
187
|
.app-topbar {
|
|
188
188
|
position: sticky; top: 0; z-index: var(--z-header);
|
|
189
|
-
display:
|
|
189
|
+
display: flex; flex-wrap: wrap;
|
|
190
190
|
align-items: center; gap: var(--space-4);
|
|
191
191
|
min-height: var(--app-topbar-h);
|
|
192
192
|
padding: 10px var(--pad-x);
|
|
193
193
|
background: color-mix(in oklab, var(--bg) 88%, transparent);
|
|
194
194
|
backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px);
|
|
195
195
|
}
|
|
196
|
-
|
|
196
|
+
|
|
197
|
+
/* Merged chrome: when AppShell gets both a topbar and a crumb it wraps them
|
|
198
|
+
in .app-chrome and they share ONE sticky band instead of stacking as two
|
|
199
|
+
bars. The breadcrumb provides the left identity (it already begins with the
|
|
200
|
+
brand), so the topbar's standalone brand is hidden to avoid showing the name
|
|
201
|
+
twice; nav and the crumb's right slot sit together on the right. */
|
|
202
|
+
.app-chrome {
|
|
203
|
+
position: sticky; top: 0; z-index: var(--z-header);
|
|
204
|
+
display: flex; flex-wrap: wrap; align-items: center;
|
|
205
|
+
gap: var(--space-2) var(--space-4);
|
|
206
|
+
padding: 8px var(--pad-x);
|
|
207
|
+
background: color-mix(in oklab, var(--bg) 88%, transparent);
|
|
208
|
+
backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px);
|
|
209
|
+
}
|
|
210
|
+
.app-chrome > .app-topbar,
|
|
211
|
+
.app-chrome > .app-crumb {
|
|
212
|
+
position: static; background: none; backdrop-filter: none;
|
|
213
|
+
-webkit-backdrop-filter: none; padding: 0; min-height: 0;
|
|
214
|
+
flex: 1 1 auto;
|
|
215
|
+
}
|
|
216
|
+
.app-chrome > .app-crumb { order: 1; flex: 1 1 auto; }
|
|
217
|
+
.app-chrome > .app-topbar { order: 2; flex: 0 0 auto; }
|
|
218
|
+
.app-chrome > .app-topbar > .brand { display: none; }
|
|
219
|
+
.app-chrome > .app-topbar > nav { margin-left: 0; }
|
|
220
|
+
.app-chrome > .app-crumb > .crumb-right { margin-left: auto; }
|
|
221
|
+
.app-topbar > .brand { flex: 0 0 auto; }
|
|
222
|
+
.app-topbar > .app-search { flex: 1 1 auto; }
|
|
223
|
+
.app-topbar > nav { margin-left: auto; }
|
|
224
|
+
.app-topbar nav { display: flex; gap: 4px; font-size: var(--fs-sm); flex-wrap: wrap; }
|
|
225
|
+
.app-topbar nav a { flex: 0 0 auto; }
|
|
197
226
|
.app-topbar nav a {
|
|
198
227
|
color: var(--fg-2);
|
|
199
228
|
padding: 12px 14px;
|
|
@@ -751,25 +780,21 @@ table tr.clickable:focus-visible td { background: var(--bg-2); }
|
|
|
751
780
|
/* App Layout: single-column + drawer is handled once in the ≤900px block;
|
|
752
781
|
no need to re-declare grid-template-columns here (was a redundant !important). */
|
|
753
782
|
|
|
754
|
-
/* Topbar Navigation
|
|
783
|
+
/* Topbar Navigation: stack the nav onto its own full-width row below the
|
|
784
|
+
brand and let it scroll horizontally. The brand stays on the first row;
|
|
785
|
+
nav wraps to a second row at 100% width (flex-wrap on .app-topbar). */
|
|
755
786
|
.app-topbar {
|
|
756
|
-
grid-template-columns: 1fr auto;
|
|
757
787
|
gap: var(--space-2); padding: 12px var(--space-3);
|
|
758
788
|
}
|
|
759
|
-
.app-topbar nav
|
|
760
|
-
|
|
761
|
-
|
|
762
|
-
}
|
|
763
|
-
/* Keep primary nav reachable on small screens (apps without a sidebar have
|
|
764
|
-
no other entry point). Compact it and let it scroll horizontally rather
|
|
765
|
-
than hiding it entirely. */
|
|
766
|
-
.app-topbar nav {
|
|
767
|
-
display: flex; gap: 2px;
|
|
789
|
+
.app-topbar > nav {
|
|
790
|
+
flex: 1 1 100%; margin-left: 0; order: 3;
|
|
791
|
+
display: flex; gap: 2px; flex-wrap: nowrap;
|
|
768
792
|
overflow-x: auto; scrollbar-width: none; -webkit-overflow-scrolling: touch;
|
|
769
|
-
max-width: 60vw;
|
|
770
793
|
}
|
|
771
794
|
.app-topbar nav::-webkit-scrollbar { display: none; }
|
|
772
|
-
.app-topbar nav a {
|
|
795
|
+
.app-topbar nav a {
|
|
796
|
+
flex: 0 0 auto; padding: 10px 12px; min-height: 44px; white-space: nowrap;
|
|
797
|
+
}
|
|
773
798
|
.brand { font-size: var(--fs-tiny); font-weight: 600; }
|
|
774
799
|
|
|
775
800
|
/* Search */
|
package/dist/247420.css
CHANGED
|
@@ -518,14 +518,43 @@
|
|
|
518
518
|
|
|
519
519
|
.ds-247420 .app-topbar {
|
|
520
520
|
position: sticky; top: 0; z-index: var(--z-header);
|
|
521
|
-
display:
|
|
521
|
+
display: flex; flex-wrap: wrap;
|
|
522
522
|
align-items: center; gap: var(--space-4);
|
|
523
523
|
min-height: var(--app-topbar-h);
|
|
524
524
|
padding: 10px var(--pad-x);
|
|
525
525
|
background: color-mix(in oklab, var(--bg) 88%, transparent);
|
|
526
526
|
backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px);
|
|
527
527
|
}
|
|
528
|
-
|
|
528
|
+
|
|
529
|
+
/* Merged chrome: when AppShell gets both a topbar and a crumb it wraps them
|
|
530
|
+
in .app-chrome and they share ONE sticky band instead of stacking as two
|
|
531
|
+
bars. The breadcrumb provides the left identity (it already begins with the
|
|
532
|
+
brand), so the topbar's standalone brand is hidden to avoid showing the name
|
|
533
|
+
twice; nav and the crumb's right slot sit together on the right. */
|
|
534
|
+
.ds-247420 .app-chrome {
|
|
535
|
+
position: sticky; top: 0; z-index: var(--z-header);
|
|
536
|
+
display: flex; flex-wrap: wrap; align-items: center;
|
|
537
|
+
gap: var(--space-2) var(--space-4);
|
|
538
|
+
padding: 8px var(--pad-x);
|
|
539
|
+
background: color-mix(in oklab, var(--bg) 88%, transparent);
|
|
540
|
+
backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px);
|
|
541
|
+
}
|
|
542
|
+
.ds-247420 .app-chrome > .app-topbar,
|
|
543
|
+
.ds-247420 .app-chrome > .app-crumb {
|
|
544
|
+
position: static; background: none; backdrop-filter: none;
|
|
545
|
+
-webkit-backdrop-filter: none; padding: 0; min-height: 0;
|
|
546
|
+
flex: 1 1 auto;
|
|
547
|
+
}
|
|
548
|
+
.ds-247420 .app-chrome > .app-crumb { order: 1; flex: 1 1 auto; }
|
|
549
|
+
.ds-247420 .app-chrome > .app-topbar { order: 2; flex: 0 0 auto; }
|
|
550
|
+
.ds-247420 .app-chrome > .app-topbar > .brand { display: none; }
|
|
551
|
+
.ds-247420 .app-chrome > .app-topbar > nav { margin-left: 0; }
|
|
552
|
+
.ds-247420 .app-chrome > .app-crumb > .crumb-right { margin-left: auto; }
|
|
553
|
+
.ds-247420 .app-topbar > .brand { flex: 0 0 auto; }
|
|
554
|
+
.ds-247420 .app-topbar > .app-search { flex: 1 1 auto; }
|
|
555
|
+
.ds-247420 .app-topbar > nav { margin-left: auto; }
|
|
556
|
+
.ds-247420 .app-topbar nav { display: flex; gap: 4px; font-size: var(--fs-sm); flex-wrap: wrap; }
|
|
557
|
+
.ds-247420 .app-topbar nav a { flex: 0 0 auto; }
|
|
529
558
|
.ds-247420 .app-topbar nav a {
|
|
530
559
|
color: var(--fg-2);
|
|
531
560
|
padding: 12px 14px;
|
|
@@ -1083,25 +1112,21 @@
|
|
|
1083
1112
|
/* App Layout: single-column + drawer is handled once in the ≤900px block;
|
|
1084
1113
|
no need to re-declare grid-template-columns here (was a redundant !important). */
|
|
1085
1114
|
|
|
1086
|
-
/* Topbar Navigation
|
|
1115
|
+
/* Topbar Navigation: stack the nav onto its own full-width row below the
|
|
1116
|
+
brand and let it scroll horizontally. The brand stays on the first row;
|
|
1117
|
+
nav wraps to a second row at 100% width (flex-wrap on .app-topbar). */
|
|
1087
1118
|
.ds-247420 .app-topbar {
|
|
1088
|
-
grid-template-columns: 1fr auto;
|
|
1089
1119
|
gap: var(--space-2); padding: 12px var(--space-3);
|
|
1090
1120
|
}
|
|
1091
|
-
.ds-247420 .app-topbar nav
|
|
1092
|
-
|
|
1093
|
-
|
|
1094
|
-
}
|
|
1095
|
-
/* Keep primary nav reachable on small screens (apps without a sidebar have
|
|
1096
|
-
no other entry point). Compact it and let it scroll horizontally rather
|
|
1097
|
-
than hiding it entirely. */
|
|
1098
|
-
.ds-247420 .app-topbar nav {
|
|
1099
|
-
display: flex; gap: 2px;
|
|
1121
|
+
.ds-247420 .app-topbar > nav {
|
|
1122
|
+
flex: 1 1 100%; margin-left: 0; order: 3;
|
|
1123
|
+
display: flex; gap: 2px; flex-wrap: nowrap;
|
|
1100
1124
|
overflow-x: auto; scrollbar-width: none; -webkit-overflow-scrolling: touch;
|
|
1101
|
-
max-width: 60vw;
|
|
1102
1125
|
}
|
|
1103
1126
|
.ds-247420 .app-topbar nav::-webkit-scrollbar { display: none; }
|
|
1104
|
-
.ds-247420 .app-topbar nav a {
|
|
1127
|
+
.ds-247420 .app-topbar nav a {
|
|
1128
|
+
flex: 0 0 auto; padding: 10px 12px; min-height: 44px; white-space: nowrap;
|
|
1129
|
+
}
|
|
1105
1130
|
.ds-247420 .brand { font-size: var(--fs-tiny); font-weight: 600; }
|
|
1106
1131
|
|
|
1107
1132
|
/* Search */
|