@softwareone/spi-sv5-library 1.14.3 → 1.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/accordion/Accordion.svelte +14 -23
- package/dist/components/announcement/Announcement.svelte +53 -61
- package/dist/components/avatar/Avatar.svelte +30 -12
- package/dist/components/avatar/Avatar.svelte.d.ts +2 -2
- package/dist/components/button/Button.svelte +41 -44
- package/dist/components/card/Card.svelte +4 -6
- package/dist/components/chips/Chips.svelte +37 -36
- package/dist/components/chips/Chips.svelte.d.ts +1 -1
- package/dist/components/confirmation/Confirmation.svelte +6 -6
- package/dist/components/confirmation/Confirmation.svelte.d.ts +2 -2
- package/dist/components/controls/attach-file/AttachFile.svelte +18 -41
- package/dist/components/controls/attach-file/FileManager.svelte +16 -30
- package/dist/components/controls/attach-file/Warnings.svelte +13 -15
- package/dist/components/controls/input/Input.svelte +46 -72
- package/dist/components/controls/input/InputIcon.svelte +13 -13
- package/dist/components/controls/label/Label.svelte +5 -9
- package/dist/components/controls/radio-group/RadioGroup.svelte +25 -39
- package/dist/components/controls/select/Select.svelte +49 -71
- package/dist/components/controls/textarea/TextArea.svelte +36 -45
- package/dist/components/controls/toggle/Toggle.svelte +35 -37
- package/dist/components/delete-confirmation/DeleteConfirmation.svelte +3 -5
- package/dist/components/error-page/ErrorPage.svelte +9 -18
- package/dist/components/footer/Footer.svelte +9 -14
- package/dist/components/footer/Footer.svelte.d.ts +0 -1
- package/dist/components/footer/FooterLogo.svelte +16 -0
- package/dist/components/footer/FooterLogo.svelte.d.ts +26 -0
- package/dist/components/form/Form.svelte +1 -1
- package/dist/components/header/Header.svelte +39 -45
- package/dist/components/header/HeaderAccount.svelte +21 -33
- package/dist/components/header/HeaderLoader.svelte +13 -8
- package/dist/components/highlight-panel/HighlightPanel.svelte +29 -34
- package/dist/components/home/Home.svelte +18 -36
- package/dist/components/link/Link.svelte +1 -1
- package/dist/components/menu/Menu.svelte +16 -21
- package/dist/components/menu/MenuItem.svelte +25 -29
- package/dist/components/menu/Sidebar.svelte +32 -40
- package/dist/components/menu/utils.d.ts +1 -1
- package/dist/components/menu/utils.js +6 -7
- package/dist/components/modal/Modal.svelte +8 -11
- package/dist/components/modal/ModalContent.svelte +3 -3
- package/dist/components/modal/ModalFooter.svelte +5 -5
- package/dist/components/modal/ModalHeader.svelte +6 -11
- package/dist/components/notification/Notification.svelte +20 -27
- package/dist/components/processing/Processing.svelte +9 -16
- package/dist/components/progress-page/ProgressPage.svelte +13 -18
- package/dist/components/progress-wizard/ProgressWizard.svelte +43 -54
- package/dist/components/search/Search.svelte +24 -29
- package/dist/components/spinner/Spinner.svelte +1 -1
- package/dist/components/switcher/Switcher.svelte +14 -23
- package/dist/components/table/ActionsColumn.svelte +13 -33
- package/dist/components/table/AdvancedFilter.svelte +39 -74
- package/dist/components/table/Body.svelte +9 -18
- package/dist/components/table/ColumnVisibilityDropdown.svelte +24 -55
- package/dist/components/table/Footer.svelte +2 -4
- package/dist/components/table/Header.svelte +23 -44
- package/dist/components/table/PageSize.svelte +24 -36
- package/dist/components/table/Pagination.svelte +49 -35
- package/dist/components/table/RowCheckBox.svelte +5 -12
- package/dist/components/table/Skeleton.svelte +16 -25
- package/dist/components/table/Table.svelte +50 -38
- package/dist/components/table/Table.svelte.d.ts +5 -1
- package/dist/components/table/types.d.ts +9 -1
- package/dist/components/table/utils.d.ts +5 -1
- package/dist/components/table/utils.js +8 -8
- package/dist/components/tabs/Tabs.svelte +16 -20
- package/dist/components/toast/Toast.svelte +27 -30
- package/dist/components/tooltip/Tooltip.svelte +15 -19
- package/dist/components/waffle/Waffle.svelte +9 -13
- package/dist/components/waffle/WaffleItems.svelte +10 -13
- package/dist/styles/index.css +3 -0
- package/dist/styles/reset.css +19 -0
- package/dist/styles/tokens/index.css +2 -0
- package/dist/styles/tokens/primitives/borders.css +17 -0
- package/dist/styles/tokens/primitives/colors.css +41 -0
- package/dist/styles/tokens/primitives/index.css +7 -0
- package/dist/styles/tokens/primitives/motion.css +11 -0
- package/dist/styles/tokens/primitives/opacity.css +6 -0
- package/dist/styles/tokens/primitives/shadows.css +11 -0
- package/dist/styles/tokens/primitives/sizing.css +19 -0
- package/dist/styles/tokens/primitives/typography.css +13 -0
- package/dist/styles/tokens/semantic/colors.css +78 -0
- package/dist/styles/tokens/semantic/index.css +2 -0
- package/dist/styles/tokens/semantic/shadows.css +9 -0
- package/dist/styles/utilities.css +73 -0
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.js +1 -0
- package/dist/utils/url.d.ts +3 -0
- package/dist/utils/url.js +15 -0
- package/package.json +3 -2
|
@@ -77,14 +77,14 @@
|
|
|
77
77
|
onmouseenter={toggleActionsMenu}
|
|
78
78
|
onmouseleave={toggleActionsMenu}
|
|
79
79
|
>
|
|
80
|
-
<span class="actions-trigger">...</span>
|
|
80
|
+
<span class="actions-trigger spi-text-bold-6">...</span>
|
|
81
81
|
{#if isOpen}
|
|
82
82
|
<div
|
|
83
83
|
class="actions-menu"
|
|
84
84
|
{@attach autoPosition}
|
|
85
85
|
transition:fade={{ duration: 100 }}
|
|
86
86
|
>
|
|
87
|
-
<ul class="actions-list">
|
|
87
|
+
<ul class="actions-list spi-text-regular-2">
|
|
88
88
|
{#each actions as action, index (index)}
|
|
89
89
|
<li>
|
|
90
90
|
<button
|
|
@@ -111,23 +111,6 @@
|
|
|
111
111
|
|
|
112
112
|
<style>
|
|
113
113
|
.actions-column {
|
|
114
|
-
--color-primary: #472aff;
|
|
115
|
-
--color-red-200: #dc182c;
|
|
116
|
-
--color-gray-200: #e5e7eb;
|
|
117
|
-
--color-gray-300: #d1d5db;
|
|
118
|
-
--color-white: #ffffff;
|
|
119
|
-
--color-text: #000000;
|
|
120
|
-
--shadow-menu: 0 2px 10px rgba(0, 0, 0, 0.2);
|
|
121
|
-
--radius-lg: 8px;
|
|
122
|
-
--spacing-xs: 4px;
|
|
123
|
-
--spacing-sm: 8px;
|
|
124
|
-
--spacing-md: 10px;
|
|
125
|
-
--spacing-lg: 14px;
|
|
126
|
-
--z-index-menu: 1;
|
|
127
|
-
--font-size-sm: 14px;
|
|
128
|
-
--font-size-2xl: 24px;
|
|
129
|
-
--transition-standard: all 0.3s ease;
|
|
130
|
-
|
|
131
114
|
position: relative;
|
|
132
115
|
display: flex;
|
|
133
116
|
align-items: center;
|
|
@@ -136,33 +119,30 @@
|
|
|
136
119
|
|
|
137
120
|
.actions-trigger {
|
|
138
121
|
display: inline-block;
|
|
139
|
-
font-size: var(--font-size-2xl);
|
|
140
|
-
font-weight: bold;
|
|
141
122
|
line-height: 0;
|
|
142
123
|
cursor: default;
|
|
143
124
|
}
|
|
144
125
|
|
|
145
126
|
.actions-menu {
|
|
146
127
|
position: fixed;
|
|
147
|
-
z-index:
|
|
128
|
+
z-index: 1;
|
|
148
129
|
width: 108px;
|
|
149
130
|
left: var(--menu-left);
|
|
150
131
|
top: var(--menu-top);
|
|
151
|
-
padding: var(--
|
|
152
|
-
background: var(--color-
|
|
153
|
-
border-radius: var(--
|
|
154
|
-
box-shadow: var(--shadow-
|
|
132
|
+
padding: var(--spi-size-3) var(--spi-size-4);
|
|
133
|
+
background: var(--spi-color-surface-default);
|
|
134
|
+
border-radius: var(--spi-rounded-lg);
|
|
135
|
+
box-shadow: var(--spi-shadow-dropdown);
|
|
155
136
|
}
|
|
156
137
|
|
|
157
138
|
.actions-list {
|
|
158
139
|
display: flex;
|
|
159
140
|
flex-direction: column;
|
|
160
|
-
gap: var(--
|
|
141
|
+
gap: var(--spi-size-2);
|
|
161
142
|
margin: 0;
|
|
162
143
|
padding: 0;
|
|
163
144
|
list-style: none;
|
|
164
145
|
text-align: left;
|
|
165
|
-
font-size: var(--font-size-sm);
|
|
166
146
|
}
|
|
167
147
|
|
|
168
148
|
.action-button {
|
|
@@ -171,7 +151,7 @@
|
|
|
171
151
|
padding: 0;
|
|
172
152
|
border: none;
|
|
173
153
|
background: none;
|
|
174
|
-
color: var(--color-text);
|
|
154
|
+
color: var(--spi-color-text-primary);
|
|
175
155
|
font-size: inherit;
|
|
176
156
|
cursor: pointer;
|
|
177
157
|
}
|
|
@@ -181,13 +161,13 @@
|
|
|
181
161
|
}
|
|
182
162
|
|
|
183
163
|
.action-button:disabled {
|
|
184
|
-
color: var(--color-
|
|
164
|
+
color: var(--spi-color-text-disabled);
|
|
185
165
|
cursor: not-allowed;
|
|
186
166
|
font-weight: normal;
|
|
187
167
|
}
|
|
188
168
|
|
|
189
169
|
.action-button--delete {
|
|
190
|
-
color: var(--color-
|
|
170
|
+
color: var(--spi-color-text-danger);
|
|
191
171
|
}
|
|
192
172
|
|
|
193
173
|
.action-button--single {
|
|
@@ -196,7 +176,7 @@
|
|
|
196
176
|
}
|
|
197
177
|
|
|
198
178
|
.action-button--primary {
|
|
199
|
-
color: var(--color-primary);
|
|
179
|
+
color: var(--spi-color-primary-base);
|
|
200
180
|
}
|
|
201
181
|
|
|
202
182
|
.action-button--primary:hover {
|
|
@@ -205,7 +185,7 @@
|
|
|
205
185
|
|
|
206
186
|
.action-divider {
|
|
207
187
|
border: none;
|
|
208
|
-
border-top:
|
|
188
|
+
border-top: var(--spi-border-1) solid var(--spi-color-border-default);
|
|
209
189
|
margin: 0;
|
|
210
190
|
}
|
|
211
191
|
</style>
|
|
@@ -88,10 +88,10 @@
|
|
|
88
88
|
<div class="filter-container">
|
|
89
89
|
<button
|
|
90
90
|
type="button"
|
|
91
|
-
class={['filter-button', hasActiveFilters && 'filter-button--active']}
|
|
91
|
+
class={['filter-button', 'spi-text-regular-2', hasActiveFilters && 'filter-button--active']}
|
|
92
92
|
onclick={toggleModal}
|
|
93
93
|
>
|
|
94
|
-
<span class="material-icons">filter_list</span>
|
|
94
|
+
<span class="material-icons spi-text-regular-5">filter_list</span>
|
|
95
95
|
{#if hasActiveFilters}
|
|
96
96
|
<strong>{filters.length} {filters.length === 1 ? 'Filter' : 'Filters'}</strong>
|
|
97
97
|
{:else}
|
|
@@ -115,14 +115,14 @@
|
|
|
115
115
|
aria-labelledby="filter-dialog-title"
|
|
116
116
|
>
|
|
117
117
|
<div class="filter-header">
|
|
118
|
-
<h2 id="filter-dialog-title" class="filter-title">Filters</h2>
|
|
118
|
+
<h2 id="filter-dialog-title" class="filter-title spi-text-semibold-4">Filters</h2>
|
|
119
119
|
<button
|
|
120
120
|
type="button"
|
|
121
121
|
onclick={toggleModal}
|
|
122
122
|
class="filter-close-button"
|
|
123
123
|
aria-label="Close"
|
|
124
124
|
>
|
|
125
|
-
<span class="material-icons">close</span>
|
|
125
|
+
<span class="material-icons spi-text-regular-5">close</span>
|
|
126
126
|
</button>
|
|
127
127
|
</div>
|
|
128
128
|
|
|
@@ -168,7 +168,7 @@
|
|
|
168
168
|
class="filter-delete-button"
|
|
169
169
|
aria-label="Remove filter"
|
|
170
170
|
>
|
|
171
|
-
<span class="material-icons-outlined">delete</span>
|
|
171
|
+
<span class="material-icons-outlined spi-text-regular-5">delete</span>
|
|
172
172
|
</button>
|
|
173
173
|
</div>
|
|
174
174
|
{/each}
|
|
@@ -204,55 +204,29 @@
|
|
|
204
204
|
|
|
205
205
|
<style>
|
|
206
206
|
.filter-container {
|
|
207
|
-
--color-primary: #472aff;
|
|
208
|
-
--color-primary-light: #eaecff;
|
|
209
|
-
--color-white: #fff;
|
|
210
|
-
--color-text-primary: #25282d;
|
|
211
|
-
--color-text-dark: #111827;
|
|
212
|
-
--color-text-secondary: #6b7280;
|
|
213
|
-
--color-text-hover: #374151;
|
|
214
|
-
--color-bg-hover: #f4f6f8;
|
|
215
|
-
--color-border: #e5e7eb;
|
|
216
|
-
--spacing-xs: 4px;
|
|
217
|
-
--spacing-sm: 8px;
|
|
218
|
-
--spacing-md: 12px;
|
|
219
|
-
--spacing-lg: 16px;
|
|
220
|
-
--spacing-xl: 24px;
|
|
221
|
-
--font-size-sm: 14px;
|
|
222
|
-
--font-size-md: 18px;
|
|
223
|
-
--font-size-icon: 20px;
|
|
224
|
-
--border-radius-sm: 8px;
|
|
225
|
-
--border-radius-circle: 50%;
|
|
226
|
-
--button-size: 40px;
|
|
227
|
-
--delete-button-size: 48px;
|
|
228
|
-
--modal-width: 640px;
|
|
229
|
-
--operation-column-width: 80px;
|
|
230
|
-
--transition-speed: 0.2s;
|
|
231
|
-
|
|
232
207
|
position: relative;
|
|
233
208
|
}
|
|
234
209
|
|
|
235
210
|
.filter-button {
|
|
236
211
|
display: flex;
|
|
237
212
|
align-items: center;
|
|
238
|
-
gap: var(--
|
|
239
|
-
padding: var(--
|
|
213
|
+
gap: var(--spi-size-2);
|
|
214
|
+
padding: var(--spi-size-2) var(--spi-size-4);
|
|
240
215
|
border: none;
|
|
241
|
-
border-radius: var(--
|
|
242
|
-
background: var(--color-
|
|
243
|
-
|
|
244
|
-
color: var(--color-text-primary);
|
|
216
|
+
border-radius: var(--spi-rounded-lg);
|
|
217
|
+
background: var(--spi-color-surface-default);
|
|
218
|
+
color: var(--spi-color-text-primary);
|
|
245
219
|
cursor: pointer;
|
|
246
|
-
transition: background-color var(--
|
|
220
|
+
transition: background-color var(--spi-duration-normal) var(--spi-ease-in-out);
|
|
247
221
|
}
|
|
248
222
|
|
|
249
223
|
.filter-button:hover {
|
|
250
|
-
background: var(--color-
|
|
224
|
+
background: var(--spi-color-surface-subtle);
|
|
251
225
|
}
|
|
252
226
|
|
|
253
227
|
.filter-button--active {
|
|
254
|
-
background: var(--color-primary-
|
|
255
|
-
color: var(--color-primary);
|
|
228
|
+
background: var(--spi-color-primary-lighter);
|
|
229
|
+
color: var(--spi-color-primary-base);
|
|
256
230
|
}
|
|
257
231
|
|
|
258
232
|
.filter-overlay {
|
|
@@ -266,58 +240,54 @@
|
|
|
266
240
|
|
|
267
241
|
.filter-modal {
|
|
268
242
|
position: absolute;
|
|
269
|
-
top: calc(100% + var(--
|
|
243
|
+
top: calc(100% + var(--spi-size-2));
|
|
270
244
|
right: 0;
|
|
271
245
|
z-index: 10;
|
|
272
|
-
width:
|
|
273
|
-
padding: var(--
|
|
274
|
-
border:
|
|
275
|
-
border-radius: var(--
|
|
276
|
-
background: var(--color-
|
|
277
|
-
box-shadow:
|
|
278
|
-
0 10px 15px -3px rgba(0, 0, 0, 0.1),
|
|
279
|
-
0 4px 6px -2px rgba(0, 0, 0, 0.05);
|
|
246
|
+
width: 640px;
|
|
247
|
+
padding: var(--spi-size-6);
|
|
248
|
+
border: var(--spi-border-1) solid var(--spi-color-border-default);
|
|
249
|
+
border-radius: var(--spi-rounded-lg);
|
|
250
|
+
background: var(--spi-color-surface-default);
|
|
251
|
+
box-shadow: var(--spi-shadow-dropdown);
|
|
280
252
|
}
|
|
281
253
|
|
|
282
254
|
.filter-header {
|
|
283
255
|
display: flex;
|
|
284
256
|
align-items: center;
|
|
285
257
|
justify-content: space-between;
|
|
286
|
-
margin-bottom: var(--
|
|
258
|
+
margin-bottom: var(--spi-size-6);
|
|
287
259
|
}
|
|
288
260
|
|
|
289
261
|
.filter-title {
|
|
290
|
-
|
|
291
|
-
font-weight: 600;
|
|
292
|
-
color: var(--color-text-dark);
|
|
262
|
+
color: var(--spi-color-text-primary);
|
|
293
263
|
}
|
|
294
264
|
|
|
295
265
|
.filter-close-button {
|
|
296
266
|
display: flex;
|
|
297
267
|
align-items: center;
|
|
298
|
-
padding: var(--
|
|
268
|
+
padding: var(--spi-size-1);
|
|
299
269
|
border: none;
|
|
300
270
|
background: transparent;
|
|
301
|
-
color: var(--color-text-
|
|
271
|
+
color: var(--spi-color-text-muted);
|
|
302
272
|
cursor: pointer;
|
|
303
|
-
transition: color var(--
|
|
273
|
+
transition: color var(--spi-duration-normal) var(--spi-ease-in-out);
|
|
304
274
|
}
|
|
305
275
|
|
|
306
276
|
.filter-close-button:hover {
|
|
307
|
-
color: var(--color-text-
|
|
277
|
+
color: var(--spi-color-text-secondary);
|
|
308
278
|
}
|
|
309
279
|
|
|
310
280
|
.filter-body {
|
|
311
281
|
display: flex;
|
|
312
282
|
flex-direction: column;
|
|
313
|
-
gap: var(--
|
|
283
|
+
gap: var(--spi-size-4);
|
|
314
284
|
}
|
|
315
285
|
|
|
316
286
|
.filter-row {
|
|
317
287
|
display: grid;
|
|
318
|
-
grid-template-columns: var(--
|
|
288
|
+
grid-template-columns: var(--spi-size-20) 1fr 1fr var(--spi-size-12);
|
|
319
289
|
align-items: end;
|
|
320
|
-
gap: var(--
|
|
290
|
+
gap: var(--spi-size-3);
|
|
321
291
|
}
|
|
322
292
|
|
|
323
293
|
.filter-operation,
|
|
@@ -330,36 +300,31 @@
|
|
|
330
300
|
display: flex;
|
|
331
301
|
align-items: center;
|
|
332
302
|
justify-content: center;
|
|
333
|
-
padding: var(--
|
|
303
|
+
padding: var(--spi-size-2);
|
|
334
304
|
border: none;
|
|
335
305
|
background: transparent;
|
|
336
|
-
color: var(--color-text-primary);
|
|
337
|
-
border-radius: var(--
|
|
338
|
-
width: var(--
|
|
339
|
-
height: var(--
|
|
306
|
+
color: var(--spi-color-text-primary);
|
|
307
|
+
border-radius: var(--spi-rounded-full);
|
|
308
|
+
width: var(--spi-size-10);
|
|
309
|
+
height: var(--spi-size-10);
|
|
340
310
|
cursor: pointer;
|
|
341
|
-
transition: background-color var(--
|
|
311
|
+
transition: background-color var(--spi-duration-normal) var(--spi-ease-in-out);
|
|
342
312
|
}
|
|
343
313
|
|
|
344
314
|
.filter-delete-button:hover {
|
|
345
|
-
background: var(--color-
|
|
315
|
+
background: var(--spi-color-surface-subtle);
|
|
346
316
|
}
|
|
347
317
|
|
|
348
318
|
.filter-actions {
|
|
349
319
|
display: flex;
|
|
350
320
|
align-items: center;
|
|
351
321
|
justify-content: space-between;
|
|
352
|
-
margin-top: var(--
|
|
322
|
+
margin-top: var(--spi-size-2);
|
|
353
323
|
}
|
|
354
324
|
|
|
355
325
|
.filter-footer {
|
|
356
326
|
display: flex;
|
|
357
327
|
justify-content: flex-end;
|
|
358
|
-
margin-top: var(--
|
|
359
|
-
}
|
|
360
|
-
|
|
361
|
-
.material-icons,
|
|
362
|
-
.material-icons-outlined {
|
|
363
|
-
font-size: var(--font-size-icon);
|
|
328
|
+
margin-top: var(--spi-size-4);
|
|
364
329
|
}
|
|
365
330
|
</style>
|
|
@@ -38,6 +38,7 @@
|
|
|
38
38
|
<td
|
|
39
39
|
class={[
|
|
40
40
|
'table-cell',
|
|
41
|
+
'spi-text-regular-2',
|
|
41
42
|
alignColumn === 'right' && 'table-cell--right',
|
|
42
43
|
alignColumn === 'center' && 'table-cell--center',
|
|
43
44
|
!alignColumn && 'table-cell--left'
|
|
@@ -54,32 +55,23 @@
|
|
|
54
55
|
|
|
55
56
|
<style>
|
|
56
57
|
.table-body {
|
|
57
|
-
--color-
|
|
58
|
-
--color-black: #000;
|
|
59
|
-
--color-row-selected: #eaecff;
|
|
60
|
-
--color-gray-300: #e0e5e8;
|
|
61
|
-
--color-gray-400: #f3f4f6;
|
|
62
|
-
--spacing-md: 8px;
|
|
63
|
-
--spacing-lg: 16px;
|
|
64
|
-
--font-size-sm: 14px;
|
|
65
|
-
|
|
66
|
-
background: var(--color-white);
|
|
58
|
+
background: var(--spi-color-surface-default);
|
|
67
59
|
}
|
|
68
60
|
|
|
69
61
|
.table-row {
|
|
70
|
-
transition: background-color
|
|
62
|
+
transition: background-color var(--spi-duration-fast) var(--spi-ease-default);
|
|
71
63
|
}
|
|
72
64
|
|
|
73
65
|
.table-row:hover {
|
|
74
|
-
background: var(--color-
|
|
66
|
+
background: var(--spi-color-surface-subtle);
|
|
75
67
|
}
|
|
76
68
|
|
|
77
69
|
.table-row--selected {
|
|
78
|
-
background: var(--color-
|
|
70
|
+
background: var(--spi-color-primary-lighter);
|
|
79
71
|
}
|
|
80
72
|
|
|
81
73
|
.table-row--selected:hover {
|
|
82
|
-
background: var(--color-
|
|
74
|
+
background: var(--spi-color-primary-lighter);
|
|
83
75
|
}
|
|
84
76
|
|
|
85
77
|
.table-row--clickable {
|
|
@@ -88,10 +80,9 @@
|
|
|
88
80
|
|
|
89
81
|
.table-cell {
|
|
90
82
|
max-width: 50px;
|
|
91
|
-
padding: var(--
|
|
92
|
-
border-bottom:
|
|
93
|
-
|
|
94
|
-
color: var(--color-black);
|
|
83
|
+
padding: var(--spi-size-2) var(--spi-size-4);
|
|
84
|
+
border-bottom: var(--spi-border-1) solid var(--spi-color-border-default);
|
|
85
|
+
color: var(--spi-color-text-primary);
|
|
95
86
|
word-wrap: break-word;
|
|
96
87
|
white-space: normal;
|
|
97
88
|
}
|
|
@@ -15,17 +15,17 @@
|
|
|
15
15
|
</script>
|
|
16
16
|
|
|
17
17
|
<div class="column-visibility">
|
|
18
|
-
<button type="button" class="column-visibility-toggle" onclick={toggleModal}>
|
|
19
|
-
<span class="material-icons">table_rows</span>
|
|
18
|
+
<button type="button" class="column-visibility-toggle spi-text-regular-2" onclick={toggleModal}>
|
|
19
|
+
<span class="material-icons spi-text-regular-2">table_rows</span>
|
|
20
20
|
Columns
|
|
21
21
|
</button>
|
|
22
22
|
|
|
23
23
|
{#if isOpen}
|
|
24
24
|
<div class="column-visibility-dropdown" role="menu">
|
|
25
25
|
<div class="column-visibility-header">
|
|
26
|
-
<h2 class="column-visibility-title">Toggle columns</h2>
|
|
26
|
+
<h2 class="column-visibility-title spi-text-semibold-2">Toggle columns</h2>
|
|
27
27
|
<button type="button" onclick={toggleModal} class="column-visibility-close">
|
|
28
|
-
<span class="material-icons">close</span>
|
|
28
|
+
<span class="material-icons spi-text-regular-2">close</span>
|
|
29
29
|
</button>
|
|
30
30
|
</div>
|
|
31
31
|
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
checked={column.getIsVisible()}
|
|
42
42
|
onchange={() => column.toggleVisibility()}
|
|
43
43
|
/>
|
|
44
|
-
<span class="column-visibility-label">{header}</span>
|
|
44
|
+
<span class="column-visibility-label spi-text-regular-2">{header}</span>
|
|
45
45
|
</label>
|
|
46
46
|
{/each}
|
|
47
47
|
</div>
|
|
@@ -60,68 +60,45 @@
|
|
|
60
60
|
|
|
61
61
|
<style>
|
|
62
62
|
.column-visibility {
|
|
63
|
-
--color-white: #ffffff;
|
|
64
|
-
--color-gray-50: #f9fafb;
|
|
65
|
-
--color-gray-100: #f3f4f6;
|
|
66
|
-
--color-gray-500: #6b7280;
|
|
67
|
-
--color-gray-600: #4b5563;
|
|
68
|
-
--spacing-xs: 8px;
|
|
69
|
-
--spacing-sm: 8px;
|
|
70
|
-
--spacing-md: 16px;
|
|
71
|
-
--font-size-sm: 14px;
|
|
72
|
-
--font-size-icon: 14px;
|
|
73
|
-
--font-semibold: 600;
|
|
74
|
-
--radius-lg: 8px;
|
|
75
|
-
--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
|
|
76
|
-
--z-index-dropdown: 10;
|
|
77
|
-
--z-index-backdrop: 9;
|
|
78
|
-
|
|
79
63
|
position: relative;
|
|
80
64
|
}
|
|
81
65
|
|
|
82
66
|
.column-visibility-toggle {
|
|
83
67
|
display: flex;
|
|
84
68
|
align-items: center;
|
|
85
|
-
gap: var(--
|
|
86
|
-
padding: var(--
|
|
69
|
+
gap: var(--spi-size-2);
|
|
70
|
+
padding: var(--spi-size-2) var(--spi-size-4);
|
|
87
71
|
border: none;
|
|
88
|
-
border-radius: var(--
|
|
89
|
-
background: var(--color-
|
|
90
|
-
font-size: var(--font-size-sm);
|
|
72
|
+
border-radius: var(--spi-rounded-lg);
|
|
73
|
+
background: var(--spi-color-surface-default);
|
|
91
74
|
cursor: pointer;
|
|
92
75
|
}
|
|
93
76
|
|
|
94
77
|
.column-visibility-toggle:hover {
|
|
95
|
-
background: var(--color-
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
.column-visibility-toggle .material-icons {
|
|
99
|
-
font-size: var(--font-size-icon);
|
|
78
|
+
background: var(--spi-color-surface-muted);
|
|
100
79
|
}
|
|
101
80
|
|
|
102
81
|
.column-visibility-dropdown {
|
|
103
82
|
position: absolute;
|
|
104
|
-
top:
|
|
83
|
+
top: var(--spi-size-12);
|
|
105
84
|
right: 0;
|
|
106
|
-
z-index:
|
|
85
|
+
z-index: 10;
|
|
107
86
|
width: 224px;
|
|
108
|
-
padding: var(--
|
|
109
|
-
background: var(--color-
|
|
110
|
-
border-radius: var(--
|
|
111
|
-
box-shadow: var(--shadow-
|
|
87
|
+
padding: var(--spi-size-4);
|
|
88
|
+
background: var(--spi-color-surface-default);
|
|
89
|
+
border-radius: var(--spi-rounded-lg);
|
|
90
|
+
box-shadow: var(--spi-shadow-dropdown);
|
|
112
91
|
}
|
|
113
92
|
|
|
114
93
|
.column-visibility-header {
|
|
115
94
|
display: flex;
|
|
116
95
|
align-items: center;
|
|
117
96
|
justify-content: space-between;
|
|
118
|
-
margin-bottom: var(--
|
|
97
|
+
margin-bottom: var(--spi-size-2);
|
|
119
98
|
}
|
|
120
99
|
|
|
121
100
|
.column-visibility-title {
|
|
122
101
|
margin: 0;
|
|
123
|
-
font-size: var(--font-size-sm);
|
|
124
|
-
font-weight: var(--font-semibold);
|
|
125
102
|
}
|
|
126
103
|
|
|
127
104
|
.column-visibility-close {
|
|
@@ -130,16 +107,12 @@
|
|
|
130
107
|
padding: 0;
|
|
131
108
|
border: none;
|
|
132
109
|
background: none;
|
|
133
|
-
color: var(--color-
|
|
110
|
+
color: var(--spi-color-text-muted);
|
|
134
111
|
cursor: pointer;
|
|
135
112
|
}
|
|
136
113
|
|
|
137
114
|
.column-visibility-close:hover {
|
|
138
|
-
color: var(--color-
|
|
139
|
-
}
|
|
140
|
-
|
|
141
|
-
.column-visibility-close .material-icons {
|
|
142
|
-
font-size: var(--font-size-icon);
|
|
115
|
+
color: var(--spi-color-text-secondary);
|
|
143
116
|
}
|
|
144
117
|
|
|
145
118
|
.column-visibility-list {
|
|
@@ -150,24 +123,20 @@
|
|
|
150
123
|
.column-visibility-item {
|
|
151
124
|
display: flex;
|
|
152
125
|
align-items: center;
|
|
153
|
-
gap: var(--
|
|
154
|
-
padding: var(--
|
|
155
|
-
border-radius: var(--
|
|
126
|
+
gap: var(--spi-size-2);
|
|
127
|
+
padding: var(--spi-size-2);
|
|
128
|
+
border-radius: var(--spi-rounded-lg);
|
|
156
129
|
cursor: pointer;
|
|
157
130
|
}
|
|
158
131
|
|
|
159
132
|
.column-visibility-item:hover {
|
|
160
|
-
background: var(--color-
|
|
161
|
-
}
|
|
162
|
-
|
|
163
|
-
.column-visibility-label {
|
|
164
|
-
font-size: var(--font-size-sm);
|
|
133
|
+
background: var(--spi-color-surface-subtle);
|
|
165
134
|
}
|
|
166
135
|
|
|
167
136
|
.column-visibility-backdrop {
|
|
168
137
|
position: fixed;
|
|
169
138
|
inset: 0;
|
|
170
|
-
z-index:
|
|
139
|
+
z-index: 9;
|
|
171
140
|
border: none;
|
|
172
141
|
background: transparent;
|
|
173
142
|
cursor: default;
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
let { table, minPageSize }: Props = $props();
|
|
12
12
|
</script>
|
|
13
13
|
|
|
14
|
-
<footer class="table-footer">
|
|
14
|
+
<footer class="table-footer spi-text-medium-2">
|
|
15
15
|
<Pagination {table} />
|
|
16
16
|
<PageSize {table} {minPageSize} />
|
|
17
17
|
</footer>
|
|
@@ -21,9 +21,7 @@
|
|
|
21
21
|
display: flex;
|
|
22
22
|
align-items: center;
|
|
23
23
|
justify-content: space-between;
|
|
24
|
-
margin-bottom:
|
|
25
|
-
font-size: 14px;
|
|
26
|
-
font-weight: 500;
|
|
24
|
+
margin-bottom: var(--spi-size-5);
|
|
27
25
|
}
|
|
28
26
|
|
|
29
27
|
@media (max-width: 750px) {
|