@svadmin/ui 0.84.1 → 0.86.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 +29 -0
- package/dist/app-shell.css +216 -0
- package/dist/app.css +496 -171
- package/dist/app.theme.css +496 -171
- package/dist/component-registry.d.ts +7292 -529
- package/dist/component-registry.js +32 -3
- package/dist/components/AppShellPage.svelte +172 -0
- package/dist/components/AppShellPage.svelte.d.ts +30 -0
- package/dist/components/AuthPageShell.svelte +14 -7
- package/dist/components/AuthPageShell.svelte.d.ts +1 -0
- package/dist/components/AutoForm.svelte +7 -12
- package/dist/components/AutoForm.svelte.d.ts +0 -1
- package/dist/components/AutoTable.svelte +2 -0
- package/dist/components/AutoTable.svelte.d.ts +2 -0
- package/dist/components/ConfigurationPage.svelte +0 -3
- package/dist/components/ConfigurationPage.svelte.d.ts +0 -1
- package/dist/components/CreatePage.svelte +1 -5
- package/dist/components/CreatePage.svelte.d.ts +0 -1
- package/dist/components/EditPage.svelte +1 -5
- package/dist/components/EditPage.svelte.d.ts +0 -1
- package/dist/components/FieldRenderer.svelte +2 -10
- package/dist/components/FieldRenderer.svelte.d.ts +0 -1
- package/dist/components/ListPage.svelte +2 -5
- package/dist/components/ListPage.svelte.d.ts +0 -1
- package/dist/components/PageHeader.svelte +1 -3
- package/dist/components/PageHeader.svelte.d.ts +0 -1
- package/dist/components/PagePattern.svelte +36 -13
- package/dist/components/PagePattern.svelte.d.ts +7 -0
- package/dist/components/QuickEditDrawer.svelte +0 -1
- package/dist/components/ShowPage.svelte +5 -9
- package/dist/components/ShowPage.svelte.d.ts +0 -1
- package/dist/components/SvarAutoTable.svelte +2 -1
- package/dist/components/SvarDataGrid.svelte +8 -4
- package/dist/components/SvarDataGrid.svelte.d.ts +3 -0
- package/dist/components/SvarResourceTable.svelte +0 -1
- package/dist/components/SvarResourceTable.svelte.d.ts +0 -1
- package/dist/components/SvarResourceTableView.svelte +2 -2
- package/dist/components/auto-table-grid.d.ts +1 -0
- package/dist/components/content/ContentPageHeader.svelte +2 -1
- package/dist/components/content/ContentPageHeader.svelte.d.ts +1 -0
- package/dist/components/content/ContentPageShell.svelte +1 -1
- package/dist/components/content/ContentPageShell.svelte.d.ts +1 -0
- package/dist/components/content/DataPanel.svelte +58 -0
- package/dist/components/content/DataPanel.svelte.d.ts +16 -0
- package/dist/components/content/DescriptionList.svelte +5 -8
- package/dist/components/content/DescriptionList.svelte.d.ts +0 -1
- package/dist/components/content/FilterToolbar.svelte +2 -5
- package/dist/components/content/FilterToolbar.svelte.d.ts +0 -1
- package/dist/components/content/NetworkTable.svelte +3 -3
- package/dist/components/content/NetworkTable.svelte.d.ts +0 -1
- package/dist/components/content/PageSection.svelte +1 -1
- package/dist/components/content/StatusTabs.svelte +2 -7
- package/dist/components/content/StatusTabs.svelte.d.ts +0 -1
- package/dist/components/content/index.d.ts +1 -0
- package/dist/components/content/index.js +1 -0
- package/dist/components/ui/table/index.d.ts +0 -1
- package/dist/components/ui/table/table.svelte +1 -0
- package/dist/components/ui/table/table.svelte.d.ts +1 -0
- package/dist/components.css +1 -11
- package/dist/data-panel.css +88 -0
- package/dist/design-contract.d.ts +11 -0
- package/dist/design-contract.js +8 -0
- package/dist/design-system.d.ts +3 -2
- package/dist/design-system.js +3 -2
- package/dist/index.d.ts +4 -2
- package/dist/index.js +2 -0
- package/dist/page-chrome.css +53 -61
- package/dist/recipes.d.ts +67 -154
- package/dist/recipes.js +32 -68
- package/dist/styles/recipes.css +15 -48
- package/package.json +4 -4
package/dist/app.theme.css
CHANGED
|
@@ -5522,23 +5522,16 @@
|
|
|
5522
5522
|
--container-xs: 20rem;
|
|
5523
5523
|
--container-sm: 24rem;
|
|
5524
5524
|
--container-xl: 36rem;
|
|
5525
|
-
--container-2xl: 42rem;
|
|
5526
5525
|
--container-3xl: 48rem;
|
|
5527
5526
|
--text-xs: 0.75rem;
|
|
5528
5527
|
--text-xs--line-height: calc(1 / 0.75);
|
|
5529
5528
|
--text-sm: 0.875rem;
|
|
5530
5529
|
--text-sm--line-height: calc(1.25 / 0.875);
|
|
5531
|
-
--text-base: 1rem;
|
|
5532
|
-
--text-base--line-height: calc(1.5 / 1);
|
|
5533
|
-
--text-lg: 1.125rem;
|
|
5534
|
-
--text-lg--line-height: calc(1.75 / 1.125);
|
|
5535
|
-
--text-xl: 1.25rem;
|
|
5536
|
-
--text-xl--line-height: calc(1.75 / 1.25);
|
|
5537
5530
|
--text-2xl: 1.5rem;
|
|
5538
5531
|
--text-2xl--line-height: calc(2 / 1.5);
|
|
5539
5532
|
--font-weight-medium: 500;
|
|
5540
5533
|
--font-weight-semibold: 600;
|
|
5541
|
-
--
|
|
5534
|
+
--radius-md: calc(var(--radius) - 2px);
|
|
5542
5535
|
--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
|
|
5543
5536
|
--drop-shadow-sm: 0 1px 2px rgb(0 0 0 / 0.15);
|
|
5544
5537
|
--ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
|
|
@@ -5605,6 +5598,9 @@
|
|
|
5605
5598
|
.mt-3 {
|
|
5606
5599
|
margin-top: calc(var(--spacing) * 3);
|
|
5607
5600
|
}
|
|
5601
|
+
.mt-\[var\(--svadmin-space-1\)\] {
|
|
5602
|
+
margin-top: var(--svadmin-space-1);
|
|
5603
|
+
}
|
|
5608
5604
|
.block {
|
|
5609
5605
|
display: block;
|
|
5610
5606
|
}
|
|
@@ -5653,9 +5649,6 @@
|
|
|
5653
5649
|
.w-full {
|
|
5654
5650
|
width: 100%;
|
|
5655
5651
|
}
|
|
5656
|
-
.max-w-2xl {
|
|
5657
|
-
max-width: var(--container-2xl);
|
|
5658
|
-
}
|
|
5659
5652
|
.max-w-3xl {
|
|
5660
5653
|
max-width: var(--container-3xl);
|
|
5661
5654
|
}
|
|
@@ -5665,9 +5658,6 @@
|
|
|
5665
5658
|
.max-w-\[64rem\] {
|
|
5666
5659
|
max-width: 64rem;
|
|
5667
5660
|
}
|
|
5668
|
-
.max-w-\[65ch\] {
|
|
5669
|
-
max-width: 65ch;
|
|
5670
|
-
}
|
|
5671
5661
|
.max-w-\[74rem\] {
|
|
5672
5662
|
max-width: 74rem;
|
|
5673
5663
|
}
|
|
@@ -5677,6 +5667,9 @@
|
|
|
5677
5667
|
.max-w-\[92rem\] {
|
|
5678
5668
|
max-width: 92rem;
|
|
5679
5669
|
}
|
|
5670
|
+
.max-w-\[var\(--svadmin-measure\)\] {
|
|
5671
|
+
max-width: var(--svadmin-measure);
|
|
5672
|
+
}
|
|
5680
5673
|
.max-w-full {
|
|
5681
5674
|
max-width: 100%;
|
|
5682
5675
|
}
|
|
@@ -5695,8 +5688,8 @@
|
|
|
5695
5688
|
.flex-1 {
|
|
5696
5689
|
flex: 1;
|
|
5697
5690
|
}
|
|
5698
|
-
.flex-\[
|
|
5699
|
-
flex: 1 1
|
|
5691
|
+
.flex-\[1_1_var\(--svadmin-chrome-basis\)\] {
|
|
5692
|
+
flex: 1 1 var(--svadmin-chrome-basis);
|
|
5700
5693
|
}
|
|
5701
5694
|
.flex-shrink {
|
|
5702
5695
|
flex-shrink: 1;
|
|
@@ -5770,15 +5763,14 @@
|
|
|
5770
5763
|
.gap-8 {
|
|
5771
5764
|
gap: calc(var(--spacing) * 8);
|
|
5772
5765
|
}
|
|
5773
|
-
|
|
5774
|
-
--
|
|
5775
|
-
margin-block-start: calc(calc(var(--spacing) * 0.5) * var(--tw-space-y-reverse));
|
|
5776
|
-
margin-block-end: calc(calc(var(--spacing) * 0.5) * calc(1 - var(--tw-space-y-reverse)));
|
|
5766
|
+
.gap-\[var\(--svadmin-space-2\)\] {
|
|
5767
|
+
gap: var(--svadmin-space-2);
|
|
5777
5768
|
}
|
|
5778
|
-
|
|
5779
|
-
--
|
|
5780
|
-
|
|
5781
|
-
|
|
5769
|
+
.gap-\[var\(--svadmin-space-3\)\] {
|
|
5770
|
+
gap: var(--svadmin-space-3);
|
|
5771
|
+
}
|
|
5772
|
+
.gap-\[var\(--svadmin-space-5\)\] {
|
|
5773
|
+
gap: var(--svadmin-space-5);
|
|
5782
5774
|
}
|
|
5783
5775
|
:where(.space-y-2 > :not(:last-child)) {
|
|
5784
5776
|
--tw-space-y-reverse: 0;
|
|
@@ -5805,6 +5797,21 @@
|
|
|
5805
5797
|
margin-block-start: calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));
|
|
5806
5798
|
margin-block-end: calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)));
|
|
5807
5799
|
}
|
|
5800
|
+
:where(.space-y-\[var\(--svadmin-space-1\)\] > :not(:last-child)) {
|
|
5801
|
+
--tw-space-y-reverse: 0;
|
|
5802
|
+
margin-block-start: calc(var(--svadmin-space-1) * var(--tw-space-y-reverse));
|
|
5803
|
+
margin-block-end: calc(var(--svadmin-space-1) * calc(1 - var(--tw-space-y-reverse)));
|
|
5804
|
+
}
|
|
5805
|
+
:where(.space-y-\[var\(--svadmin-space-3\)\] > :not(:last-child)) {
|
|
5806
|
+
--tw-space-y-reverse: 0;
|
|
5807
|
+
margin-block-start: calc(var(--svadmin-space-3) * var(--tw-space-y-reverse));
|
|
5808
|
+
margin-block-end: calc(var(--svadmin-space-3) * calc(1 - var(--tw-space-y-reverse)));
|
|
5809
|
+
}
|
|
5810
|
+
:where(.space-y-\[var\(--svadmin-space-5\)\] > :not(:last-child)) {
|
|
5811
|
+
--tw-space-y-reverse: 0;
|
|
5812
|
+
margin-block-start: calc(var(--svadmin-space-5) * var(--tw-space-y-reverse));
|
|
5813
|
+
margin-block-end: calc(var(--svadmin-space-5) * calc(1 - var(--tw-space-y-reverse)));
|
|
5814
|
+
}
|
|
5808
5815
|
.overflow-hidden {
|
|
5809
5816
|
overflow: hidden;
|
|
5810
5817
|
}
|
|
@@ -5895,9 +5902,6 @@
|
|
|
5895
5902
|
.p-0 {
|
|
5896
5903
|
padding: 0px;
|
|
5897
5904
|
}
|
|
5898
|
-
.p-3 {
|
|
5899
|
-
padding: calc(var(--spacing) * 3);
|
|
5900
|
-
}
|
|
5901
5905
|
.p-4 {
|
|
5902
5906
|
padding: calc(var(--spacing) * 4);
|
|
5903
5907
|
}
|
|
@@ -5910,6 +5914,9 @@
|
|
|
5910
5914
|
.px-4 {
|
|
5911
5915
|
padding-inline: calc(var(--spacing) * 4);
|
|
5912
5916
|
}
|
|
5917
|
+
.px-\[var\(--svadmin-space-4\)\] {
|
|
5918
|
+
padding-inline: var(--svadmin-space-4);
|
|
5919
|
+
}
|
|
5913
5920
|
.py-1 {
|
|
5914
5921
|
padding-block: var(--spacing);
|
|
5915
5922
|
}
|
|
@@ -5919,9 +5926,6 @@
|
|
|
5919
5926
|
.py-3 {
|
|
5920
5927
|
padding-block: calc(var(--spacing) * 3);
|
|
5921
5928
|
}
|
|
5922
|
-
.py-4 {
|
|
5923
|
-
padding-block: calc(var(--spacing) * 4);
|
|
5924
|
-
}
|
|
5925
5929
|
.py-5 {
|
|
5926
5930
|
padding-block: calc(var(--spacing) * 5);
|
|
5927
5931
|
}
|
|
@@ -5931,6 +5935,15 @@
|
|
|
5931
5935
|
.py-\[7px\] {
|
|
5932
5936
|
padding-block: 7px;
|
|
5933
5937
|
}
|
|
5938
|
+
.py-\[var\(--svadmin-space-1\)\] {
|
|
5939
|
+
padding-block: var(--svadmin-space-1);
|
|
5940
|
+
}
|
|
5941
|
+
.py-\[var\(--svadmin-space-3\)\] {
|
|
5942
|
+
padding-block: var(--svadmin-space-3);
|
|
5943
|
+
}
|
|
5944
|
+
.py-\[var\(--svadmin-space-4\)\] {
|
|
5945
|
+
padding-block: var(--svadmin-space-4);
|
|
5946
|
+
}
|
|
5934
5947
|
.text-left {
|
|
5935
5948
|
text-align: left;
|
|
5936
5949
|
}
|
|
@@ -5938,22 +5951,10 @@
|
|
|
5938
5951
|
font-size: var(--text-2xl);
|
|
5939
5952
|
line-height: var(--tw-leading, var(--text-2xl--line-height));
|
|
5940
5953
|
}
|
|
5941
|
-
.text-base {
|
|
5942
|
-
font-size: var(--text-base);
|
|
5943
|
-
line-height: var(--tw-leading, var(--text-base--line-height));
|
|
5944
|
-
}
|
|
5945
|
-
.text-lg {
|
|
5946
|
-
font-size: var(--text-lg);
|
|
5947
|
-
line-height: var(--tw-leading, var(--text-lg--line-height));
|
|
5948
|
-
}
|
|
5949
5954
|
.text-sm {
|
|
5950
5955
|
font-size: var(--text-sm);
|
|
5951
5956
|
line-height: var(--tw-leading, var(--text-sm--line-height));
|
|
5952
5957
|
}
|
|
5953
|
-
.text-xl {
|
|
5954
|
-
font-size: var(--text-xl);
|
|
5955
|
-
line-height: var(--tw-leading, var(--text-xl--line-height));
|
|
5956
|
-
}
|
|
5957
5958
|
.text-xs {
|
|
5958
5959
|
font-size: var(--text-xs);
|
|
5959
5960
|
line-height: var(--tw-leading, var(--text-xs--line-height));
|
|
@@ -5961,17 +5962,32 @@
|
|
|
5961
5962
|
.text-\[0\.8125rem\] {
|
|
5962
5963
|
font-size: 0.8125rem;
|
|
5963
5964
|
}
|
|
5964
|
-
.
|
|
5965
|
-
|
|
5966
|
-
|
|
5965
|
+
.text-\[length\:var\(--svadmin-text-body\)\] {
|
|
5966
|
+
font-size: var(--svadmin-text-body);
|
|
5967
|
+
}
|
|
5968
|
+
.text-\[length\:var\(--svadmin-text-caption\)\] {
|
|
5969
|
+
font-size: var(--svadmin-text-caption);
|
|
5970
|
+
}
|
|
5971
|
+
.text-\[length\:var\(--svadmin-text-label\)\] {
|
|
5972
|
+
font-size: var(--svadmin-text-label);
|
|
5973
|
+
}
|
|
5974
|
+
.text-\[length\:var\(--svadmin-text-section\)\] {
|
|
5975
|
+
font-size: var(--svadmin-text-section);
|
|
5976
|
+
}
|
|
5977
|
+
.text-\[length\:var\(--svadmin-text-title\)\] {
|
|
5978
|
+
font-size: var(--svadmin-text-title);
|
|
5967
5979
|
}
|
|
5968
5980
|
.leading-6 {
|
|
5969
5981
|
--tw-leading: calc(var(--spacing) * 6);
|
|
5970
5982
|
line-height: calc(var(--spacing) * 6);
|
|
5971
5983
|
}
|
|
5972
|
-
.leading-
|
|
5973
|
-
--tw-leading: var(--leading-
|
|
5974
|
-
line-height: var(--leading-
|
|
5984
|
+
.leading-\[var\(--svadmin-leading-body\)\] {
|
|
5985
|
+
--tw-leading: var(--svadmin-leading-body);
|
|
5986
|
+
line-height: var(--svadmin-leading-body);
|
|
5987
|
+
}
|
|
5988
|
+
.leading-\[var\(--svadmin-leading-tight\)\] {
|
|
5989
|
+
--tw-leading: var(--svadmin-leading-tight);
|
|
5990
|
+
line-height: var(--svadmin-leading-tight);
|
|
5975
5991
|
}
|
|
5976
5992
|
.font-medium {
|
|
5977
5993
|
--tw-font-weight: var(--font-weight-medium);
|
|
@@ -6095,15 +6111,9 @@
|
|
|
6095
6111
|
.\[--svadmin-metric-state-border-width\:3px\] {
|
|
6096
6112
|
--svadmin-metric-state-border-width: 3px;
|
|
6097
6113
|
}
|
|
6098
|
-
.\[--svadmin-metric-state-height\:4\.5rem\] {
|
|
6099
|
-
--svadmin-metric-state-height: 4.5rem;
|
|
6100
|
-
}
|
|
6101
6114
|
.\[--svadmin-metric-state-height\:6rem\] {
|
|
6102
6115
|
--svadmin-metric-state-height: 6rem;
|
|
6103
6116
|
}
|
|
6104
|
-
.\[--svadmin-metric-state-padding\:0\.75rem\] {
|
|
6105
|
-
--svadmin-metric-state-padding: 0.75rem;
|
|
6106
|
-
}
|
|
6107
6117
|
.\[--svadmin-metric-state-padding\:1\.25rem\] {
|
|
6108
6118
|
--svadmin-metric-state-padding: 1.25rem;
|
|
6109
6119
|
}
|
|
@@ -6122,11 +6132,8 @@
|
|
|
6122
6132
|
.\[--svadmin-status-color\:var\(--warning\)\] {
|
|
6123
6133
|
--svadmin-status-color: var(--warning);
|
|
6124
6134
|
}
|
|
6125
|
-
.\[--svadmin-table-state-height\:
|
|
6126
|
-
--svadmin-table-state-height:
|
|
6127
|
-
}
|
|
6128
|
-
.\[--svadmin-table-state-height\:8rem\] {
|
|
6129
|
-
--svadmin-table-state-height: 8rem;
|
|
6135
|
+
.\[--svadmin-table-state-height\:var\(--svadmin-table-state-min-h\)\] {
|
|
6136
|
+
--svadmin-table-state-height: var(--svadmin-table-state-min-h);
|
|
6130
6137
|
}
|
|
6131
6138
|
.\[writing-mode\:vertical-rl\] {
|
|
6132
6139
|
writing-mode: vertical-rl;
|
|
@@ -6207,33 +6214,17 @@
|
|
|
6207
6214
|
.\[\&_\[data-command-group-heading\]\]\:uppercase [data-command-group-heading] {
|
|
6208
6215
|
text-transform: uppercase;
|
|
6209
6216
|
}
|
|
6210
|
-
.\[\&\[data-slot\=table-cell\]\]\:py-
|
|
6211
|
-
padding-block: var(--
|
|
6212
|
-
}
|
|
6213
|
-
.\[\&\[data-slot\=table-cell\]\]\:py-2[data-slot=table-cell] {
|
|
6214
|
-
padding-block: calc(var(--spacing) * 2);
|
|
6215
|
-
}
|
|
6216
|
-
.\[\&\[data-slot\=table-cell\]\]\:text-sm[data-slot=table-cell] {
|
|
6217
|
-
font-size: var(--text-sm);
|
|
6218
|
-
line-height: var(--tw-leading, var(--text-sm--line-height));
|
|
6219
|
-
}
|
|
6220
|
-
.\[\&\[data-slot\=table-cell\]\]\:text-xs[data-slot=table-cell] {
|
|
6221
|
-
font-size: var(--text-xs);
|
|
6222
|
-
line-height: var(--tw-leading, var(--text-xs--line-height));
|
|
6223
|
-
}
|
|
6224
|
-
.\[\&\[data-slot\=table-head\]\]\:py-1[data-slot=table-head] {
|
|
6225
|
-
padding-block: var(--spacing);
|
|
6217
|
+
.\[\&\[data-slot\=table-cell\]\]\:py-\[var\(--svadmin-space-2\)\][data-slot=table-cell] {
|
|
6218
|
+
padding-block: var(--svadmin-space-2);
|
|
6226
6219
|
}
|
|
6227
|
-
.\[\&\[data-slot\=table-
|
|
6228
|
-
|
|
6220
|
+
.\[\&\[data-slot\=table-cell\]\]\:text-\[length\:var\(--svadmin-text-body\)\][data-slot=table-cell] {
|
|
6221
|
+
font-size: var(--svadmin-text-body);
|
|
6229
6222
|
}
|
|
6230
|
-
.\[\&\[data-slot\=table-head\]\]\:
|
|
6231
|
-
|
|
6232
|
-
line-height: var(--tw-leading, var(--text-sm--line-height));
|
|
6223
|
+
.\[\&\[data-slot\=table-head\]\]\:py-\[var\(--svadmin-space-2\)\][data-slot=table-head] {
|
|
6224
|
+
padding-block: var(--svadmin-space-2);
|
|
6233
6225
|
}
|
|
6234
|
-
.\[\&\[data-slot\=table-head\]\]\:text-
|
|
6235
|
-
font-size: var(--text-
|
|
6236
|
-
line-height: var(--tw-leading, var(--text-xs--line-height));
|
|
6226
|
+
.\[\&\[data-slot\=table-head\]\]\:text-\[length\:var\(--svadmin-text-body\)\][data-slot=table-head] {
|
|
6227
|
+
font-size: var(--svadmin-text-body);
|
|
6237
6228
|
}
|
|
6238
6229
|
}
|
|
6239
6230
|
@property --tw-rotate-x {
|
|
@@ -6471,25 +6462,32 @@
|
|
|
6471
6462
|
}
|
|
6472
6463
|
}
|
|
6473
6464
|
@layer components {
|
|
6465
|
+
/*
|
|
6466
|
+
* The skip link uses a generated translate-y utility, whose composite
|
|
6467
|
+
* translate declaration is invalid when no x-axis value is present.
|
|
6468
|
+
* Keep this accessibility control hidden until focus without relying on
|
|
6469
|
+
* the host application's utility CSS implementation.
|
|
6470
|
+
*/
|
|
6471
|
+
[data-svadmin-skip-link] {
|
|
6472
|
+
transform: translateY(calc(-100% - var(--svadmin-space-4)));
|
|
6473
|
+
}
|
|
6474
|
+
[data-svadmin-skip-link]:focus,
|
|
6475
|
+
[data-svadmin-skip-link]:focus-visible {
|
|
6476
|
+
transform: translateY(0);
|
|
6477
|
+
}
|
|
6478
|
+
|
|
6474
6479
|
.svadmin-page-header {
|
|
6475
|
-
--svadmin-page-header-gap:
|
|
6480
|
+
--svadmin-page-header-gap: var(--svadmin-space-2);
|
|
6476
6481
|
min-width: 0;
|
|
6477
6482
|
}
|
|
6478
|
-
.svadmin-page-header[data-density="compact"] {
|
|
6479
|
-
--svadmin-page-header-gap: 0.375rem;
|
|
6480
|
-
}
|
|
6481
6483
|
.svadmin-page-header__breadcrumbs {
|
|
6482
|
-
margin-bottom:
|
|
6483
|
-
}
|
|
6484
|
-
.svadmin-page-header[data-density="compact"] .svadmin-page-header__breadcrumbs {
|
|
6485
|
-
margin-bottom: 0.375rem;
|
|
6486
|
-
font-size: 0.75rem;
|
|
6484
|
+
margin-bottom: var(--svadmin-space-4);
|
|
6487
6485
|
}
|
|
6488
6486
|
.svadmin-page-header__row, .svadmin-filter-toolbar__row {
|
|
6489
6487
|
display: flex;
|
|
6490
6488
|
flex-direction: column;
|
|
6491
6489
|
min-width: 0;
|
|
6492
|
-
gap:
|
|
6490
|
+
gap: var(--svadmin-space-2);
|
|
6493
6491
|
}
|
|
6494
6492
|
.svadmin-page-header__row {
|
|
6495
6493
|
gap: var(--svadmin-page-header-gap);
|
|
@@ -6498,7 +6496,7 @@
|
|
|
6498
6496
|
display: flex;
|
|
6499
6497
|
align-items: center;
|
|
6500
6498
|
min-width: 0;
|
|
6501
|
-
gap:
|
|
6499
|
+
gap: var(--svadmin-space-3);
|
|
6502
6500
|
}
|
|
6503
6501
|
.svadmin-page-header__text {
|
|
6504
6502
|
min-width: 0;
|
|
@@ -6508,7 +6506,7 @@
|
|
|
6508
6506
|
flex-wrap: wrap;
|
|
6509
6507
|
align-items: center;
|
|
6510
6508
|
min-width: 0;
|
|
6511
|
-
gap:
|
|
6509
|
+
gap: var(--svadmin-space-2);
|
|
6512
6510
|
}
|
|
6513
6511
|
.svadmin-page-header__tags, .svadmin-page-header__actions {
|
|
6514
6512
|
max-width: 100%;
|
|
@@ -6517,24 +6515,17 @@
|
|
|
6517
6515
|
.svadmin-page-header__title {
|
|
6518
6516
|
min-width: 0;
|
|
6519
6517
|
color: var(--foreground);
|
|
6520
|
-
font-size:
|
|
6518
|
+
font-size: var(--svadmin-text-title);
|
|
6521
6519
|
font-weight: 600;
|
|
6522
|
-
line-height:
|
|
6520
|
+
line-height: var(--svadmin-leading-tight);
|
|
6523
6521
|
overflow-wrap: anywhere;
|
|
6524
6522
|
}
|
|
6525
6523
|
.svadmin-page-header__description {
|
|
6526
6524
|
color: var(--muted-foreground);
|
|
6527
|
-
font-size:
|
|
6528
|
-
line-height:
|
|
6525
|
+
font-size: var(--svadmin-text-body);
|
|
6526
|
+
line-height: var(--svadmin-leading-body);
|
|
6529
6527
|
overflow-wrap: anywhere;
|
|
6530
6528
|
}
|
|
6531
|
-
.svadmin-page-header[data-density="compact"] .svadmin-page-header__title {
|
|
6532
|
-
font-size: 1.125rem;
|
|
6533
|
-
}
|
|
6534
|
-
.svadmin-page-header[data-density="compact"] .svadmin-page-header__description {
|
|
6535
|
-
font-size: 0.75rem;
|
|
6536
|
-
line-height: 1rem;
|
|
6537
|
-
}
|
|
6538
6529
|
.svadmin-page-header .svadmin-page-header__back {
|
|
6539
6530
|
flex-shrink: 0;
|
|
6540
6531
|
color: var(--muted-foreground);
|
|
@@ -6543,14 +6534,14 @@
|
|
|
6543
6534
|
color: var(--foreground);
|
|
6544
6535
|
}
|
|
6545
6536
|
.svadmin-page-header .svadmin-page-header__back-icon {
|
|
6546
|
-
width:
|
|
6547
|
-
height:
|
|
6537
|
+
width: var(--svadmin-space-4);
|
|
6538
|
+
height: var(--svadmin-space-4);
|
|
6548
6539
|
}
|
|
6549
6540
|
.svadmin-breadcrumbs {
|
|
6550
6541
|
min-width: 0;
|
|
6551
6542
|
}
|
|
6552
6543
|
.svadmin-breadcrumbs--spaced {
|
|
6553
|
-
margin-bottom:
|
|
6544
|
+
margin-bottom: var(--svadmin-space-4);
|
|
6554
6545
|
}
|
|
6555
6546
|
.svadmin-breadcrumbs__item {
|
|
6556
6547
|
display: inline-flex;
|
|
@@ -6561,16 +6552,11 @@
|
|
|
6561
6552
|
color: var(--muted-foreground);
|
|
6562
6553
|
}
|
|
6563
6554
|
.svadmin-filter-toolbar {
|
|
6564
|
-
--svadmin-filter-control-height:
|
|
6565
|
-
--svadmin-filter-control-font:
|
|
6566
|
-
--svadmin-filter-search-icon-size:
|
|
6555
|
+
--svadmin-filter-control-height: var(--svadmin-control-h);
|
|
6556
|
+
--svadmin-filter-control-font: var(--svadmin-text-body);
|
|
6557
|
+
--svadmin-filter-search-icon-size: var(--svadmin-space-4);
|
|
6567
6558
|
min-width: 0;
|
|
6568
6559
|
}
|
|
6569
|
-
.svadmin-filter-toolbar[data-density="compact"] {
|
|
6570
|
-
--svadmin-filter-control-height: 2rem;
|
|
6571
|
-
--svadmin-filter-control-font: 0.75rem;
|
|
6572
|
-
--svadmin-filter-search-icon-size: 0.875rem;
|
|
6573
|
-
}
|
|
6574
6560
|
.svadmin-filter-toolbar__search {
|
|
6575
6561
|
position: relative;
|
|
6576
6562
|
min-width: 0;
|
|
@@ -6578,60 +6564,57 @@
|
|
|
6578
6564
|
.svadmin-filter-toolbar__search-icon {
|
|
6579
6565
|
position: absolute;
|
|
6580
6566
|
top: 50%;
|
|
6581
|
-
inset-inline-start:
|
|
6567
|
+
inset-inline-start: var(--svadmin-space-3);
|
|
6582
6568
|
width: var(--svadmin-filter-search-icon-size);
|
|
6583
6569
|
height: var(--svadmin-filter-search-icon-size);
|
|
6584
6570
|
color: var(--muted-foreground);
|
|
6585
6571
|
transform: translateY(-50%);
|
|
6586
6572
|
pointer-events: none;
|
|
6587
6573
|
}
|
|
6588
|
-
.svadmin-filter-toolbar
|
|
6574
|
+
.svadmin-filter-toolbar .svadmin-filter-toolbar__input {
|
|
6589
6575
|
height: var(--svadmin-filter-control-height);
|
|
6590
|
-
padding-inline:
|
|
6576
|
+
padding-inline: calc(var(--svadmin-space-5) + var(--svadmin-space-3));
|
|
6591
6577
|
font-size: var(--svadmin-filter-control-font);
|
|
6592
|
-
line-height:
|
|
6578
|
+
line-height: var(--svadmin-leading-tight);
|
|
6593
6579
|
}
|
|
6594
|
-
.svadmin-filter-toolbar
|
|
6580
|
+
.svadmin-filter-toolbar .svadmin-filter-toolbar__clear {
|
|
6595
6581
|
position: absolute;
|
|
6596
6582
|
top: 50%;
|
|
6597
|
-
inset-inline-end:
|
|
6583
|
+
inset-inline-end: var(--svadmin-space-1);
|
|
6598
6584
|
transform: translateY(-50%);
|
|
6599
6585
|
}
|
|
6600
|
-
.svadmin-filter-toolbar
|
|
6586
|
+
.svadmin-filter-toolbar .svadmin-filter-toolbar__toggle {
|
|
6601
6587
|
flex-shrink: 0;
|
|
6602
|
-
gap:
|
|
6588
|
+
gap: var(--svadmin-space-2);
|
|
6603
6589
|
height: var(--svadmin-filter-control-height);
|
|
6604
6590
|
font-size: var(--svadmin-filter-control-font);
|
|
6605
6591
|
max-width: 100%;
|
|
6606
6592
|
white-space: normal;
|
|
6607
6593
|
overflow-wrap: anywhere;
|
|
6608
6594
|
}
|
|
6609
|
-
.svadmin-filter-toolbar[data-density="compact"] .svadmin-filter-toolbar__toggle {
|
|
6610
|
-
padding-inline: 0.625rem;
|
|
6611
|
-
}
|
|
6612
6595
|
.svadmin-filter-toolbar .svadmin-filter-toolbar__control-icon {
|
|
6613
|
-
width:
|
|
6614
|
-
height:
|
|
6596
|
+
width: var(--svadmin-space-3);
|
|
6597
|
+
height: var(--svadmin-space-3);
|
|
6615
6598
|
}
|
|
6616
6599
|
.svadmin-filter-toolbar .svadmin-filter-toolbar__chevron {
|
|
6617
|
-
width:
|
|
6618
|
-
height:
|
|
6619
|
-
margin-inline-start:
|
|
6600
|
+
width: var(--svadmin-space-3);
|
|
6601
|
+
height: var(--svadmin-space-3);
|
|
6602
|
+
margin-inline-start: var(--svadmin-space-1);
|
|
6620
6603
|
color: var(--muted-foreground);
|
|
6621
6604
|
}
|
|
6622
|
-
.svadmin-filter-toolbar
|
|
6623
|
-
height:
|
|
6624
|
-
min-height:
|
|
6625
|
-
min-width:
|
|
6626
|
-
margin-inline-start:
|
|
6627
|
-
padding: 0
|
|
6628
|
-
font-size:
|
|
6605
|
+
.svadmin-filter-toolbar .svadmin-filter-toolbar__count {
|
|
6606
|
+
height: var(--svadmin-space-4);
|
|
6607
|
+
min-height: var(--svadmin-space-4);
|
|
6608
|
+
min-width: var(--svadmin-space-4);
|
|
6609
|
+
margin-inline-start: var(--svadmin-space-1);
|
|
6610
|
+
padding: 0 var(--svadmin-space-1);
|
|
6611
|
+
font-size: var(--svadmin-text-caption);
|
|
6629
6612
|
font-weight: 600;
|
|
6630
6613
|
line-height: 1;
|
|
6631
6614
|
font-variant-numeric: tabular-nums;
|
|
6632
6615
|
}
|
|
6633
6616
|
.svadmin-filter-toolbar .svadmin-filter-toolbar-advanced {
|
|
6634
|
-
margin-top:
|
|
6617
|
+
margin-top: var(--svadmin-space-2);
|
|
6635
6618
|
border: 1px solid var(--border);
|
|
6636
6619
|
@supports (color: color-mix(in lab, red, red)) {
|
|
6637
6620
|
border: 1px solid color-mix(in oklch, var(--border) 60%, transparent);
|
|
@@ -6641,7 +6624,7 @@
|
|
|
6641
6624
|
@supports (color: color-mix(in lab, red, red)) {
|
|
6642
6625
|
background: color-mix(in oklch, var(--muted) 20%, transparent);
|
|
6643
6626
|
}
|
|
6644
|
-
padding:
|
|
6627
|
+
padding: var(--svadmin-space-3);
|
|
6645
6628
|
overflow-wrap: anywhere;
|
|
6646
6629
|
}
|
|
6647
6630
|
@media (min-width: 640px) {
|
|
@@ -6654,13 +6637,317 @@
|
|
|
6654
6637
|
justify-content: space-between;
|
|
6655
6638
|
}
|
|
6656
6639
|
.svadmin-page-header__heading {
|
|
6657
|
-
flex: 1 1
|
|
6640
|
+
flex: 1 1 var(--svadmin-chrome-basis);
|
|
6658
6641
|
}
|
|
6659
6642
|
.svadmin-filter-toolbar__search {
|
|
6660
|
-
flex: 1 1
|
|
6643
|
+
flex: 1 1 var(--svadmin-chrome-basis);
|
|
6661
6644
|
}
|
|
6662
6645
|
}
|
|
6663
6646
|
}
|
|
6647
|
+
/* Router-agnostic application shell.
|
|
6648
|
+
*
|
|
6649
|
+
* Every length, size and color here comes from a token. That is the contract
|
|
6650
|
+
* hosts rely on: a host with its own router composes the shell with snippets and
|
|
6651
|
+
* overrides tokens, instead of re-implementing sidebar, topbar and page
|
|
6652
|
+
* composition in bespoke CSS. See docs/components/app-shell.md. */
|
|
6653
|
+
@layer components {
|
|
6654
|
+
.svadmin-app-shell {
|
|
6655
|
+
display: grid;
|
|
6656
|
+
grid-template-rows: auto minmax(0, 1fr) auto;
|
|
6657
|
+
grid-template-columns: minmax(0, 1fr);
|
|
6658
|
+
min-height: 100dvh;
|
|
6659
|
+
background: var(--background);
|
|
6660
|
+
color: var(--foreground);
|
|
6661
|
+
font-size: var(--svadmin-text-body);
|
|
6662
|
+
line-height: var(--svadmin-leading-body);
|
|
6663
|
+
}
|
|
6664
|
+
.svadmin-app-shell[data-width="narrow"] {
|
|
6665
|
+
--svadmin-shell-max: 48rem;
|
|
6666
|
+
}
|
|
6667
|
+
.svadmin-app-shell[data-width="wide"] {
|
|
6668
|
+
--svadmin-shell-max: 92rem;
|
|
6669
|
+
}
|
|
6670
|
+
.svadmin-app-shell[data-width="full"] {
|
|
6671
|
+
--svadmin-shell-max: none;
|
|
6672
|
+
}
|
|
6673
|
+
.svadmin-app-shell[data-sidebar="true"] {
|
|
6674
|
+
grid-template-columns: var(--svadmin-shell-sidebar-w) minmax(0, 1fr);
|
|
6675
|
+
grid-template-areas:
|
|
6676
|
+
"topbar topbar"
|
|
6677
|
+
"sidebar main"
|
|
6678
|
+
"sidebar footer";
|
|
6679
|
+
}
|
|
6680
|
+
.svadmin-app-shell[data-collapsed="true"] {
|
|
6681
|
+
--svadmin-shell-sidebar-w: var(--svadmin-shell-sidebar-w-collapsed);
|
|
6682
|
+
}
|
|
6683
|
+
.svadmin-app-shell[data-aside="true"] .svadmin-app-shell__body {
|
|
6684
|
+
grid-template-columns: minmax(0, 1fr) minmax(0, var(--svadmin-shell-aside-w));
|
|
6685
|
+
}
|
|
6686
|
+
|
|
6687
|
+
.svadmin-app-shell__skip {
|
|
6688
|
+
position: fixed;
|
|
6689
|
+
z-index: 60;
|
|
6690
|
+
inset-block-start: var(--svadmin-space-2);
|
|
6691
|
+
inset-inline-start: var(--svadmin-space-2);
|
|
6692
|
+
border: 1px solid var(--border);
|
|
6693
|
+
border-radius: var(--radius-md);
|
|
6694
|
+
background: var(--card);
|
|
6695
|
+
padding: var(--svadmin-space-2) var(--svadmin-space-3);
|
|
6696
|
+
color: var(--foreground);
|
|
6697
|
+
font-size: var(--svadmin-text-caption);
|
|
6698
|
+
font-weight: 600;
|
|
6699
|
+
transform: translateY(calc(-1 * (var(--svadmin-space-6) + var(--svadmin-space-5))));
|
|
6700
|
+
}
|
|
6701
|
+
.svadmin-app-shell__skip:focus-visible {
|
|
6702
|
+
transform: none;
|
|
6703
|
+
outline: var(--svadmin-focus-width) solid var(--ring);
|
|
6704
|
+
outline-offset: var(--svadmin-focus-offset);
|
|
6705
|
+
}
|
|
6706
|
+
|
|
6707
|
+
.svadmin-app-shell__topbar {
|
|
6708
|
+
grid-area: topbar;
|
|
6709
|
+
display: flex;
|
|
6710
|
+
align-items: center;
|
|
6711
|
+
gap: var(--svadmin-space-3);
|
|
6712
|
+
min-width: 0;
|
|
6713
|
+
min-height: var(--svadmin-shell-topbar-h);
|
|
6714
|
+
border-bottom: 1px solid var(--border);
|
|
6715
|
+
background: var(--card);
|
|
6716
|
+
padding-inline: var(--svadmin-shell-gutter);
|
|
6717
|
+
}
|
|
6718
|
+
.svadmin-app-shell__topbar-start,
|
|
6719
|
+
.svadmin-app-shell__topbar-end {
|
|
6720
|
+
display: flex;
|
|
6721
|
+
align-items: center;
|
|
6722
|
+
min-width: 0;
|
|
6723
|
+
gap: var(--svadmin-space-2);
|
|
6724
|
+
}
|
|
6725
|
+
.svadmin-app-shell__topbar-main {
|
|
6726
|
+
display: flex;
|
|
6727
|
+
flex: 1 1 auto;
|
|
6728
|
+
align-items: center;
|
|
6729
|
+
min-width: 0;
|
|
6730
|
+
gap: var(--svadmin-space-3);
|
|
6731
|
+
}
|
|
6732
|
+
.svadmin-app-shell__topbar-end {
|
|
6733
|
+
flex: 0 0 auto;
|
|
6734
|
+
justify-content: flex-end;
|
|
6735
|
+
}
|
|
6736
|
+
|
|
6737
|
+
.svadmin-app-shell__sidebar {
|
|
6738
|
+
grid-area: sidebar;
|
|
6739
|
+
display: flex;
|
|
6740
|
+
flex-direction: column;
|
|
6741
|
+
min-width: 0;
|
|
6742
|
+
min-height: 0;
|
|
6743
|
+
border-inline-end: 1px solid var(--sidebar-border, var(--border));
|
|
6744
|
+
background: var(--sidebar, var(--card));
|
|
6745
|
+
color: var(--sidebar-foreground, var(--foreground));
|
|
6746
|
+
overflow-y: auto;
|
|
6747
|
+
overscroll-behavior: contain;
|
|
6748
|
+
}
|
|
6749
|
+
.svadmin-app-shell__sidebar-inner {
|
|
6750
|
+
display: flex;
|
|
6751
|
+
flex: 1 1 auto;
|
|
6752
|
+
flex-direction: column;
|
|
6753
|
+
gap: var(--svadmin-space-2);
|
|
6754
|
+
min-width: 0;
|
|
6755
|
+
padding: var(--svadmin-space-3) var(--svadmin-space-2);
|
|
6756
|
+
}
|
|
6757
|
+
|
|
6758
|
+
.svadmin-app-shell__main {
|
|
6759
|
+
grid-area: main;
|
|
6760
|
+
display: flex;
|
|
6761
|
+
flex-direction: column;
|
|
6762
|
+
min-width: 0;
|
|
6763
|
+
min-height: 0;
|
|
6764
|
+
}
|
|
6765
|
+
.svadmin-app-shell__body {
|
|
6766
|
+
display: grid;
|
|
6767
|
+
grid-template-columns: minmax(0, 1fr);
|
|
6768
|
+
align-items: start;
|
|
6769
|
+
gap: var(--svadmin-section-gap);
|
|
6770
|
+
width: 100%;
|
|
6771
|
+
max-width: var(--svadmin-shell-max);
|
|
6772
|
+
margin-inline: auto;
|
|
6773
|
+
padding: var(--svadmin-shell-gutter);
|
|
6774
|
+
min-width: 0;
|
|
6775
|
+
}
|
|
6776
|
+
.svadmin-app-shell__content {
|
|
6777
|
+
display: grid;
|
|
6778
|
+
gap: var(--svadmin-section-gap);
|
|
6779
|
+
min-width: 0;
|
|
6780
|
+
}
|
|
6781
|
+
.svadmin-app-shell__aside {
|
|
6782
|
+
display: grid;
|
|
6783
|
+
gap: var(--svadmin-section-gap);
|
|
6784
|
+
min-width: 0;
|
|
6785
|
+
}
|
|
6786
|
+
|
|
6787
|
+
.svadmin-app-shell__footer {
|
|
6788
|
+
grid-area: footer;
|
|
6789
|
+
display: flex;
|
|
6790
|
+
flex-wrap: wrap;
|
|
6791
|
+
align-items: center;
|
|
6792
|
+
justify-content: space-between;
|
|
6793
|
+
gap: var(--svadmin-space-2);
|
|
6794
|
+
width: 100%;
|
|
6795
|
+
max-width: var(--svadmin-shell-max);
|
|
6796
|
+
margin-inline: auto;
|
|
6797
|
+
border-top: 1px solid var(--border);
|
|
6798
|
+
padding: var(--svadmin-space-3) var(--svadmin-shell-gutter);
|
|
6799
|
+
color: var(--muted-foreground);
|
|
6800
|
+
font-size: var(--svadmin-text-caption);
|
|
6801
|
+
}
|
|
6802
|
+
|
|
6803
|
+
/* The mobile navigation trigger only exists below the sidebar breakpoint. */
|
|
6804
|
+
.svadmin-app-shell__mobile-toggle {
|
|
6805
|
+
display: none;
|
|
6806
|
+
}
|
|
6807
|
+
.svadmin-app-shell__scrim {
|
|
6808
|
+
display: none;
|
|
6809
|
+
}
|
|
6810
|
+
|
|
6811
|
+
@media (max-width: 63.999rem) {
|
|
6812
|
+
.svadmin-app-shell[data-sidebar="true"] {
|
|
6813
|
+
grid-template-columns: minmax(0, 1fr);
|
|
6814
|
+
grid-template-areas:
|
|
6815
|
+
"topbar"
|
|
6816
|
+
"main"
|
|
6817
|
+
"footer";
|
|
6818
|
+
}
|
|
6819
|
+
.svadmin-app-shell[data-aside="true"] .svadmin-app-shell__body {
|
|
6820
|
+
grid-template-columns: minmax(0, 1fr);
|
|
6821
|
+
}
|
|
6822
|
+
.svadmin-app-shell__mobile-toggle {
|
|
6823
|
+
display: inline-flex;
|
|
6824
|
+
}
|
|
6825
|
+
.svadmin-app-shell__sidebar {
|
|
6826
|
+
position: fixed;
|
|
6827
|
+
z-index: 45;
|
|
6828
|
+
inset-block: var(--svadmin-shell-topbar-h) 0;
|
|
6829
|
+
inset-inline-start: 0;
|
|
6830
|
+
width: var(--svadmin-shell-sidebar-w);
|
|
6831
|
+
max-width: 85vw;
|
|
6832
|
+
box-shadow: var(--shadow-overlay);
|
|
6833
|
+
transform: translateX(-100%);
|
|
6834
|
+
visibility: hidden;
|
|
6835
|
+
transition: transform var(--svadmin-motion-standard) var(--svadmin-motion-easing), visibility var(--svadmin-motion-standard);
|
|
6836
|
+
}
|
|
6837
|
+
[dir="rtl"] .svadmin-app-shell__sidebar {
|
|
6838
|
+
transform: translateX(100%);
|
|
6839
|
+
}
|
|
6840
|
+
.svadmin-app-shell[data-mobile-open="true"] .svadmin-app-shell__sidebar {
|
|
6841
|
+
transform: none;
|
|
6842
|
+
visibility: visible;
|
|
6843
|
+
}
|
|
6844
|
+
.svadmin-app-shell[data-mobile-open="true"] .svadmin-app-shell__scrim {
|
|
6845
|
+
display: block;
|
|
6846
|
+
position: fixed;
|
|
6847
|
+
z-index: 40;
|
|
6848
|
+
inset: var(--svadmin-shell-topbar-h) 0 0;
|
|
6849
|
+
border: 0;
|
|
6850
|
+
background: var(--foreground);
|
|
6851
|
+
opacity: 0.28;
|
|
6852
|
+
cursor: pointer;
|
|
6853
|
+
}
|
|
6854
|
+
}
|
|
6855
|
+
|
|
6856
|
+
/* 窄视口下页面容器自己承担横向留白,外壳不再重复叠加。 */
|
|
6857
|
+
@media (max-width: 40rem) {
|
|
6858
|
+
.svadmin-app-shell {
|
|
6859
|
+
--svadmin-shell-gutter: var(--svadmin-space-4);
|
|
6860
|
+
}
|
|
6861
|
+
}
|
|
6862
|
+
}
|
|
6863
|
+
/* Data panel: the recurring "titled surface with a body" container.
|
|
6864
|
+
*
|
|
6865
|
+
* Hosts previously hand-rolled this block per page, which is how a project ends
|
|
6866
|
+
* up with three panel paddings and two radii. Every length here is a token. */
|
|
6867
|
+
@layer components {
|
|
6868
|
+
.svadmin-data-panel {
|
|
6869
|
+
--svadmin-panel-padding: var(--svadmin-space-5);
|
|
6870
|
+
display: grid;
|
|
6871
|
+
grid-template-columns: minmax(0, 1fr);
|
|
6872
|
+
align-content: start;
|
|
6873
|
+
min-width: 0;
|
|
6874
|
+
border: 1px solid var(--border);
|
|
6875
|
+
border-radius: var(--radius-lg);
|
|
6876
|
+
background: var(--card);
|
|
6877
|
+
color: var(--card-foreground);
|
|
6878
|
+
overflow: hidden;
|
|
6879
|
+
}
|
|
6880
|
+
.svadmin-data-panel[data-padding="compact"] {
|
|
6881
|
+
--svadmin-panel-padding: var(--svadmin-space-4);
|
|
6882
|
+
}
|
|
6883
|
+
.svadmin-data-panel[data-padding="none"] {
|
|
6884
|
+
--svadmin-panel-padding: 0;
|
|
6885
|
+
}
|
|
6886
|
+
|
|
6887
|
+
.svadmin-data-panel__header {
|
|
6888
|
+
display: flex;
|
|
6889
|
+
flex-wrap: wrap;
|
|
6890
|
+
align-items: flex-start;
|
|
6891
|
+
justify-content: space-between;
|
|
6892
|
+
gap: var(--svadmin-space-3);
|
|
6893
|
+
min-width: 0;
|
|
6894
|
+
padding: var(--svadmin-panel-padding);
|
|
6895
|
+
padding-block-end: 0;
|
|
6896
|
+
}
|
|
6897
|
+
.svadmin-data-panel[data-padding="none"] .svadmin-data-panel__header {
|
|
6898
|
+
padding: var(--svadmin-space-4) var(--svadmin-space-5);
|
|
6899
|
+
border-bottom: 1px solid var(--border);
|
|
6900
|
+
}
|
|
6901
|
+
.svadmin-data-panel__heading {
|
|
6902
|
+
display: grid;
|
|
6903
|
+
gap: var(--svadmin-space-1);
|
|
6904
|
+
min-width: 0;
|
|
6905
|
+
flex: 1 1 0;
|
|
6906
|
+
}
|
|
6907
|
+
.svadmin-data-panel__title {
|
|
6908
|
+
margin: 0;
|
|
6909
|
+
color: var(--foreground);
|
|
6910
|
+
font-size: var(--svadmin-text-section);
|
|
6911
|
+
font-weight: 600;
|
|
6912
|
+
line-height: var(--svadmin-leading-tight);
|
|
6913
|
+
overflow-wrap: anywhere;
|
|
6914
|
+
}
|
|
6915
|
+
.svadmin-data-panel__description {
|
|
6916
|
+
max-width: var(--svadmin-measure);
|
|
6917
|
+
margin: 0;
|
|
6918
|
+
color: var(--muted-foreground);
|
|
6919
|
+
font-size: var(--svadmin-text-body);
|
|
6920
|
+
line-height: var(--svadmin-leading-body);
|
|
6921
|
+
overflow-wrap: anywhere;
|
|
6922
|
+
}
|
|
6923
|
+
.svadmin-data-panel__actions {
|
|
6924
|
+
display: flex;
|
|
6925
|
+
flex-wrap: wrap;
|
|
6926
|
+
align-items: center;
|
|
6927
|
+
gap: var(--svadmin-space-2);
|
|
6928
|
+
flex: 0 0 auto;
|
|
6929
|
+
}
|
|
6930
|
+
.svadmin-data-panel__body {
|
|
6931
|
+
display: grid;
|
|
6932
|
+
gap: var(--svadmin-space-4);
|
|
6933
|
+
min-width: 0;
|
|
6934
|
+
padding: var(--svadmin-panel-padding);
|
|
6935
|
+
}
|
|
6936
|
+
.svadmin-data-panel[data-padding="none"] .svadmin-data-panel__body {
|
|
6937
|
+
gap: 0;
|
|
6938
|
+
}
|
|
6939
|
+
.svadmin-data-panel__footer {
|
|
6940
|
+
display: flex;
|
|
6941
|
+
flex-wrap: wrap;
|
|
6942
|
+
align-items: center;
|
|
6943
|
+
justify-content: flex-end;
|
|
6944
|
+
gap: var(--svadmin-space-2);
|
|
6945
|
+
padding: var(--svadmin-space-3) var(--svadmin-space-5);
|
|
6946
|
+
border-top: 1px solid var(--border);
|
|
6947
|
+
color: var(--muted-foreground);
|
|
6948
|
+
font-size: var(--svadmin-text-caption);
|
|
6949
|
+
}
|
|
6950
|
+
}
|
|
6664
6951
|
|
|
6665
6952
|
/* 保留状态对比度和 clean-flat 卡片表现,颜色始终来自宿主 token。 */
|
|
6666
6953
|
.svadmin-product-status[data-slot="badge"] {
|
|
@@ -6739,6 +7026,41 @@
|
|
|
6739
7026
|
--svadmin-shadow-control: 0 1px 2px rgb(15 23 42 / 0.04);
|
|
6740
7027
|
--svadmin-shadow-surface: 0 1px 2px rgb(15 23 42 / 0.035);
|
|
6741
7028
|
--svadmin-shadow-surface-hover: 0 2px 5px rgb(15 23 42 / 0.06);
|
|
7029
|
+
|
|
7030
|
+
/* Size rhythm. Single source of truth for control, row, spacing and type
|
|
7031
|
+
* sizes; components read these tokens and hosts override the token instead
|
|
7032
|
+
* of re-writing component CSS. Values stay on the 4px grid from DESIGN.md
|
|
7033
|
+
* (xs 4, sm 8, md 16, lg 24, xl 32). */
|
|
7034
|
+
--svadmin-control-h-sm: 1.75rem; /* 28px */
|
|
7035
|
+
--svadmin-control-h: 2.25rem; /* 36px */
|
|
7036
|
+
--svadmin-control-h-lg: 2.5rem; /* 40px */
|
|
7037
|
+
--svadmin-row-h: 3rem; /* 48px */
|
|
7038
|
+
--svadmin-table-head-h: 2.75rem; /* 44px */
|
|
7039
|
+
--svadmin-table-state-min-h: 8rem; /* 128px */
|
|
7040
|
+
--svadmin-space-1: 0.25rem; /* 4px */
|
|
7041
|
+
--svadmin-space-2: 0.5rem; /* 8px */
|
|
7042
|
+
--svadmin-space-3: 0.75rem; /* 12px */
|
|
7043
|
+
--svadmin-space-4: 1rem; /* 16px */
|
|
7044
|
+
--svadmin-space-5: 1.5rem; /* 24px */
|
|
7045
|
+
--svadmin-space-6: 2rem; /* 32px */
|
|
7046
|
+
--svadmin-section-gap: var(--svadmin-space-5);
|
|
7047
|
+
--svadmin-text-caption: 0.75rem; /* 12px */
|
|
7048
|
+
--svadmin-text-label: 0.8125rem; /* 13px */
|
|
7049
|
+
--svadmin-text-body: 0.875rem; /* 14px */
|
|
7050
|
+
--svadmin-text-section: 1rem; /* 16px */
|
|
7051
|
+
--svadmin-text-title: 1.25rem; /* 20px */
|
|
7052
|
+
--svadmin-leading-tight: 1.25;
|
|
7053
|
+
--svadmin-leading-snug: 1.35;
|
|
7054
|
+
--svadmin-leading-body: 1.5;
|
|
7055
|
+
--svadmin-focus-width: 2px;
|
|
7056
|
+
--svadmin-measure: 65ch;
|
|
7057
|
+
--svadmin-shell-sidebar-w: 15rem;
|
|
7058
|
+
--svadmin-shell-sidebar-w-collapsed: 3.5rem;
|
|
7059
|
+
--svadmin-shell-topbar-h: 3.5rem;
|
|
7060
|
+
--svadmin-shell-gutter: var(--svadmin-space-5);
|
|
7061
|
+
--svadmin-shell-max: 74rem;
|
|
7062
|
+
--svadmin-chrome-basis: 16rem;
|
|
7063
|
+
--svadmin-shell-aside-w: 22rem;
|
|
6742
7064
|
--svadmin-shadow-overlay: 0 20px 52px rgb(15 23 42 / 0.18), 0 6px 16px rgb(15 23 42 / 0.1);
|
|
6743
7065
|
}
|
|
6744
7066
|
|
|
@@ -7164,15 +7486,15 @@ h6,
|
|
|
7164
7486
|
}
|
|
7165
7487
|
|
|
7166
7488
|
:is([data-slot="button"], .svadmin-button):is([data-size="default"], .svadmin-button-size--default),
|
|
7167
|
-
:is([data-svadmin-button], .svadmin-button):is([data-size="default"], .svadmin-button-size--default) { min-height:
|
|
7489
|
+
:is([data-svadmin-button], .svadmin-button):is([data-size="default"], .svadmin-button-size--default) { min-height: var(--svadmin-control-h); padding: 0 0.75rem; }
|
|
7168
7490
|
:is([data-slot="button"], .svadmin-button):is([data-size="xs"], .svadmin-button-size--xs),
|
|
7169
7491
|
:is([data-svadmin-button], .svadmin-button):is([data-size="xs"], .svadmin-button-size--xs) { min-height: 1.5rem; padding: 0 0.5rem; font-size: 0.75rem; }
|
|
7170
7492
|
:is([data-slot="button"], .svadmin-button):is([data-size="sm"], .svadmin-button-size--sm),
|
|
7171
7493
|
:is([data-svadmin-button], .svadmin-button):is([data-size="sm"], .svadmin-button-size--sm) { min-height: 2rem; padding: 0 0.75rem; font-size: 0.8rem; }
|
|
7172
7494
|
:is([data-slot="button"], .svadmin-button):is([data-size="lg"], .svadmin-button-size--lg),
|
|
7173
|
-
:is([data-svadmin-button], .svadmin-button):is([data-size="lg"], .svadmin-button-size--lg) { min-height:
|
|
7495
|
+
:is([data-svadmin-button], .svadmin-button):is([data-size="lg"], .svadmin-button-size--lg) { min-height: var(--svadmin-control-h-lg); padding: 0 1rem; }
|
|
7174
7496
|
:is([data-slot="button"], .svadmin-button):is([data-size="icon"], .svadmin-button-size--icon),
|
|
7175
|
-
:is([data-svadmin-button], .svadmin-button):is([data-size="icon"], .svadmin-button-size--icon) { width:
|
|
7497
|
+
:is([data-svadmin-button], .svadmin-button):is([data-size="icon"], .svadmin-button-size--icon) { width: var(--svadmin-control-h); height: var(--svadmin-control-h); }
|
|
7176
7498
|
:is([data-slot="button"], .svadmin-button):is([data-size="icon-xs"], .svadmin-button-size--icon-xs),
|
|
7177
7499
|
:is([data-svadmin-button], .svadmin-button):is([data-size="icon-xs"], .svadmin-button-size--icon-xs) { width: 1.5rem; height: 1.5rem; }
|
|
7178
7500
|
:is([data-slot="button"], .svadmin-button):is([data-size="icon-sm"], .svadmin-button-size--icon-sm),
|
|
@@ -7624,7 +7946,7 @@ main {
|
|
|
7624
7946
|
.svadmin-input {
|
|
7625
7947
|
width: 100%;
|
|
7626
7948
|
min-width: 0;
|
|
7627
|
-
height:
|
|
7949
|
+
height: var(--svadmin-control-h);
|
|
7628
7950
|
border: 1px solid var(--border);
|
|
7629
7951
|
border-radius: 0.5rem;
|
|
7630
7952
|
background: transparent;
|
|
@@ -7714,15 +8036,17 @@ main {
|
|
|
7714
8036
|
}
|
|
7715
8037
|
|
|
7716
8038
|
.svadmin-table-cell {
|
|
7717
|
-
|
|
8039
|
+
height: var(--svadmin-row-h);
|
|
8040
|
+
padding: var(--svadmin-space-2);
|
|
8041
|
+
font-size: var(--svadmin-text-label);
|
|
7718
8042
|
vertical-align: middle;
|
|
7719
8043
|
white-space: nowrap;
|
|
7720
8044
|
}
|
|
7721
8045
|
|
|
7722
8046
|
.svadmin-table-cell[data-density="compact"] {
|
|
7723
|
-
height:
|
|
7724
|
-
padding:
|
|
7725
|
-
font-size:
|
|
8047
|
+
height: calc(var(--svadmin-row-h) - var(--svadmin-space-4));
|
|
8048
|
+
padding: var(--svadmin-space-1) var(--svadmin-space-2);
|
|
8049
|
+
font-size: var(--svadmin-text-caption);
|
|
7726
8050
|
}
|
|
7727
8051
|
|
|
7728
8052
|
.svadmin-table-cell[data-sticky="right"],
|
|
@@ -8048,9 +8372,9 @@ main {
|
|
|
8048
8372
|
}
|
|
8049
8373
|
|
|
8050
8374
|
.svadmin-table-caption {
|
|
8051
|
-
margin-top:
|
|
8375
|
+
margin-top: var(--svadmin-space-4);
|
|
8052
8376
|
color: var(--muted-foreground);
|
|
8053
|
-
font-size:
|
|
8377
|
+
font-size: var(--svadmin-text-body);
|
|
8054
8378
|
}
|
|
8055
8379
|
|
|
8056
8380
|
.svadmin-table-footer {
|
|
@@ -8207,7 +8531,7 @@ main {
|
|
|
8207
8531
|
|
|
8208
8532
|
.svadmin-select {
|
|
8209
8533
|
width: 100%;
|
|
8210
|
-
height:
|
|
8534
|
+
height: var(--svadmin-control-h);
|
|
8211
8535
|
border: 1px solid var(--border);
|
|
8212
8536
|
border-radius: 0.5rem;
|
|
8213
8537
|
padding: 0.375rem 0.75rem;
|
|
@@ -8244,7 +8568,7 @@ main {
|
|
|
8244
8568
|
.svadmin-tabs-list {
|
|
8245
8569
|
display: inline-flex;
|
|
8246
8570
|
width: fit-content;
|
|
8247
|
-
height:
|
|
8571
|
+
height: var(--svadmin-control-h);
|
|
8248
8572
|
align-items: center;
|
|
8249
8573
|
justify-content: center;
|
|
8250
8574
|
gap: 0.25rem;
|
|
@@ -8591,7 +8915,7 @@ main {
|
|
|
8591
8915
|
.svadmin-navigation-trigger {
|
|
8592
8916
|
display: inline-flex;
|
|
8593
8917
|
width: max-content;
|
|
8594
|
-
height:
|
|
8918
|
+
height: var(--svadmin-control-h);
|
|
8595
8919
|
align-items: center;
|
|
8596
8920
|
justify-content: center;
|
|
8597
8921
|
gap: 0.25rem;
|
|
@@ -8991,19 +9315,20 @@ main {
|
|
|
8991
9315
|
}
|
|
8992
9316
|
|
|
8993
9317
|
.svadmin-table-head {
|
|
8994
|
-
height:
|
|
8995
|
-
padding:
|
|
9318
|
+
height: var(--svadmin-table-head-h);
|
|
9319
|
+
padding: var(--svadmin-space-2);
|
|
8996
9320
|
color: var(--foreground);
|
|
8997
9321
|
text-align: left;
|
|
8998
9322
|
vertical-align: middle;
|
|
9323
|
+
font-size: var(--svadmin-text-caption);
|
|
8999
9324
|
font-weight: 500;
|
|
9000
9325
|
white-space: nowrap;
|
|
9001
9326
|
}
|
|
9002
9327
|
|
|
9003
9328
|
.svadmin-table-head[data-density="compact"] {
|
|
9004
|
-
height:
|
|
9005
|
-
padding:
|
|
9006
|
-
font-size:
|
|
9329
|
+
height: calc(var(--svadmin-table-head-h) - var(--svadmin-space-3));
|
|
9330
|
+
padding: var(--svadmin-space-1) var(--svadmin-space-2);
|
|
9331
|
+
font-size: var(--svadmin-text-caption);
|
|
9007
9332
|
}
|
|
9008
9333
|
|
|
9009
9334
|
.svadmin-table-head[data-sticky="right"],
|
|
@@ -9053,8 +9378,8 @@ main {
|
|
|
9053
9378
|
}
|
|
9054
9379
|
|
|
9055
9380
|
.svadmin-pagination-icon {
|
|
9056
|
-
width:
|
|
9057
|
-
height:
|
|
9381
|
+
width: var(--svadmin-space-4);
|
|
9382
|
+
height: var(--svadmin-space-4);
|
|
9058
9383
|
}
|
|
9059
9384
|
|
|
9060
9385
|
@keyframes svadmin-menu-enter {
|
|
@@ -9356,11 +9681,11 @@ details[data-svadmin-filter][open] > :not(summary),
|
|
|
9356
9681
|
}
|
|
9357
9682
|
|
|
9358
9683
|
.layout-clean-flat [data-svadmin-table-head] [data-slot="table-head"] {
|
|
9359
|
-
height:
|
|
9684
|
+
height: var(--svadmin-table-head-h);
|
|
9360
9685
|
border-bottom-color: var(--svadmin-border);
|
|
9361
9686
|
background: var(--svadmin-surface-muted);
|
|
9362
9687
|
color: var(--svadmin-text-muted);
|
|
9363
|
-
font-size:
|
|
9688
|
+
font-size: var(--svadmin-text-caption);
|
|
9364
9689
|
font-weight: 600;
|
|
9365
9690
|
letter-spacing: 0;
|
|
9366
9691
|
text-transform: none;
|
|
@@ -9371,10 +9696,10 @@ details[data-svadmin-filter][open] > :not(summary),
|
|
|
9371
9696
|
}
|
|
9372
9697
|
|
|
9373
9698
|
.layout-clean-flat [data-svadmin-table-row] [data-slot="table-cell"] {
|
|
9374
|
-
height:
|
|
9699
|
+
height: var(--svadmin-row-h);
|
|
9375
9700
|
border-bottom-color: var(--svadmin-border);
|
|
9376
9701
|
color: var(--svadmin-text);
|
|
9377
|
-
font-size:
|
|
9702
|
+
font-size: var(--svadmin-text-label);
|
|
9378
9703
|
}
|
|
9379
9704
|
|
|
9380
9705
|
.layout-clean-flat [data-svadmin-table-head] [data-slot="table-head"][data-density="compact"],
|
|
@@ -9426,19 +9751,19 @@ details[data-svadmin-filter][open] > :not(summary),
|
|
|
9426
9751
|
border-bottom: 1px solid var(--svadmin-border);
|
|
9427
9752
|
border-radius: 0;
|
|
9428
9753
|
background: transparent;
|
|
9429
|
-
padding:
|
|
9754
|
+
padding: var(--svadmin-space-3) 0;
|
|
9430
9755
|
box-shadow: none;
|
|
9431
9756
|
}
|
|
9432
9757
|
|
|
9433
9758
|
.layout-clean-flat [data-svadmin-table-toolbar] [data-slot="input"] {
|
|
9434
|
-
height:
|
|
9759
|
+
height: var(--svadmin-control-h-lg);
|
|
9435
9760
|
background: var(--svadmin-surface-muted);
|
|
9436
9761
|
}
|
|
9437
9762
|
|
|
9438
9763
|
.layout-clean-flat [data-svadmin-list-actions] :is([data-slot="button"], .svadmin-button),
|
|
9439
9764
|
.layout-clean-flat [data-svadmin-table-toolbar] :is([data-slot="button"], .svadmin-button),
|
|
9440
9765
|
.layout-clean-flat [data-svadmin-form-actions] :is([data-slot="button"], .svadmin-button) {
|
|
9441
|
-
height:
|
|
9766
|
+
height: var(--svadmin-control-h-lg);
|
|
9442
9767
|
flex-shrink: 0;
|
|
9443
9768
|
}
|
|
9444
9769
|
|