@ship-ui/core 0.19.5 → 0.22.2

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.
Files changed (153) hide show
  1. package/README.md +3 -0
  2. package/assets/mcp/components.json +66 -4243
  3. package/bin/mcp/index.js +6027 -273
  4. package/bin/ship-fg-scanner +0 -0
  5. package/bin/ship-fg.mjs +14 -12
  6. package/bin/src/subset.ts +3 -1
  7. package/fesm2022/ship-ui-core-sh-form-field-experimental.mjs +42 -0
  8. package/fesm2022/ship-ui-core-sh-form-field-experimental.mjs.map +1 -0
  9. package/fesm2022/ship-ui-core-ship-accordion.mjs +127 -0
  10. package/fesm2022/ship-ui-core-ship-accordion.mjs.map +1 -0
  11. package/fesm2022/ship-ui-core-ship-alert.mjs +305 -0
  12. package/fesm2022/ship-ui-core-ship-alert.mjs.map +1 -0
  13. package/fesm2022/ship-ui-core-ship-blueprint.mjs +1156 -0
  14. package/fesm2022/ship-ui-core-ship-blueprint.mjs.map +1 -0
  15. package/fesm2022/ship-ui-core-ship-button-group.mjs +41 -0
  16. package/fesm2022/ship-ui-core-ship-button-group.mjs.map +1 -0
  17. package/fesm2022/ship-ui-core-ship-button.mjs +38 -0
  18. package/fesm2022/ship-ui-core-ship-button.mjs.map +1 -0
  19. package/fesm2022/ship-ui-core-ship-card.mjs +35 -0
  20. package/fesm2022/ship-ui-core-ship-card.mjs.map +1 -0
  21. package/fesm2022/ship-ui-core-ship-checkbox.mjs +113 -0
  22. package/fesm2022/ship-ui-core-ship-checkbox.mjs.map +1 -0
  23. package/fesm2022/ship-ui-core-ship-chip.mjs +44 -0
  24. package/fesm2022/ship-ui-core-ship-chip.mjs.map +1 -0
  25. package/fesm2022/ship-ui-core-ship-color-picker.mjs +947 -0
  26. package/fesm2022/ship-ui-core-ship-color-picker.mjs.map +1 -0
  27. package/fesm2022/ship-ui-core-ship-datepicker.mjs +951 -0
  28. package/fesm2022/ship-ui-core-ship-datepicker.mjs.map +1 -0
  29. package/fesm2022/ship-ui-core-ship-dialog.mjs +263 -0
  30. package/fesm2022/ship-ui-core-ship-dialog.mjs.map +1 -0
  31. package/fesm2022/ship-ui-core-ship-divider.mjs +22 -0
  32. package/fesm2022/ship-ui-core-ship-divider.mjs.map +1 -0
  33. package/fesm2022/ship-ui-core-ship-event-card.mjs +50 -0
  34. package/fesm2022/ship-ui-core-ship-event-card.mjs.map +1 -0
  35. package/fesm2022/ship-ui-core-ship-file-upload.mjs +112 -0
  36. package/fesm2022/ship-ui-core-ship-file-upload.mjs.map +1 -0
  37. package/fesm2022/ship-ui-core-ship-form-field.mjs +310 -0
  38. package/fesm2022/ship-ui-core-ship-form-field.mjs.map +1 -0
  39. package/fesm2022/ship-ui-core-ship-icon.mjs +81 -0
  40. package/fesm2022/ship-ui-core-ship-icon.mjs.map +1 -0
  41. package/fesm2022/ship-ui-core-ship-list.mjs +22 -0
  42. package/fesm2022/ship-ui-core-ship-list.mjs.map +1 -0
  43. package/fesm2022/ship-ui-core-ship-menu.mjs +545 -0
  44. package/fesm2022/ship-ui-core-ship-menu.mjs.map +1 -0
  45. package/fesm2022/ship-ui-core-ship-popover.mjs +286 -0
  46. package/fesm2022/ship-ui-core-ship-popover.mjs.map +1 -0
  47. package/fesm2022/ship-ui-core-ship-progress-bar.mjs +37 -0
  48. package/fesm2022/ship-ui-core-ship-progress-bar.mjs.map +1 -0
  49. package/fesm2022/ship-ui-core-ship-radio.mjs +102 -0
  50. package/fesm2022/ship-ui-core-ship-radio.mjs.map +1 -0
  51. package/fesm2022/ship-ui-core-ship-range-slider.mjs +277 -0
  52. package/fesm2022/ship-ui-core-ship-range-slider.mjs.map +1 -0
  53. package/fesm2022/ship-ui-core-ship-select.mjs +971 -0
  54. package/fesm2022/ship-ui-core-ship-select.mjs.map +1 -0
  55. package/fesm2022/ship-ui-core-ship-sidenav.mjs +248 -0
  56. package/fesm2022/ship-ui-core-ship-sidenav.mjs.map +1 -0
  57. package/fesm2022/ship-ui-core-ship-sortable.mjs +485 -0
  58. package/fesm2022/ship-ui-core-ship-sortable.mjs.map +1 -0
  59. package/fesm2022/ship-ui-core-ship-spinner.mjs +28 -0
  60. package/fesm2022/ship-ui-core-ship-spinner.mjs.map +1 -0
  61. package/fesm2022/ship-ui-core-ship-stepper.mjs +76 -0
  62. package/fesm2022/ship-ui-core-ship-stepper.mjs.map +1 -0
  63. package/fesm2022/ship-ui-core-ship-table-filter-bar.mjs +28 -0
  64. package/fesm2022/ship-ui-core-ship-table-filter-bar.mjs.map +1 -0
  65. package/fesm2022/ship-ui-core-ship-table.mjs +442 -0
  66. package/fesm2022/ship-ui-core-ship-table.mjs.map +1 -0
  67. package/fesm2022/ship-ui-core-ship-tabs.mjs +38 -0
  68. package/fesm2022/ship-ui-core-ship-tabs.mjs.map +1 -0
  69. package/fesm2022/ship-ui-core-ship-theme-toggle.mjs +119 -0
  70. package/fesm2022/ship-ui-core-ship-theme-toggle.mjs.map +1 -0
  71. package/fesm2022/ship-ui-core-ship-toggle-card.mjs +75 -0
  72. package/fesm2022/ship-ui-core-ship-toggle-card.mjs.map +1 -0
  73. package/fesm2022/ship-ui-core-ship-toggle.mjs +105 -0
  74. package/fesm2022/ship-ui-core-ship-toggle.mjs.map +1 -0
  75. package/fesm2022/ship-ui-core-ship-virtual-scroll.mjs +186 -0
  76. package/fesm2022/ship-ui-core-ship-virtual-scroll.mjs.map +1 -0
  77. package/fesm2022/ship-ui-core.mjs +880 -8782
  78. package/fesm2022/ship-ui-core.mjs.map +1 -1
  79. package/package.json +147 -3
  80. package/styles/core.scss +43 -0
  81. package/styles/helpers.scss +2 -0
  82. package/styles/index.scss +12 -123
  83. package/types/ship-ui-core-sh-form-field-experimental.d.ts +11 -0
  84. package/types/ship-ui-core-ship-accordion.d.ts +19 -0
  85. package/types/ship-ui-core-ship-alert.d.ts +68 -0
  86. package/types/ship-ui-core-ship-blueprint.d.ts +112 -0
  87. package/types/ship-ui-core-ship-button-group.d.ts +15 -0
  88. package/types/ship-ui-core-ship-button.d.ts +13 -0
  89. package/types/ship-ui-core-ship-card.d.ts +11 -0
  90. package/types/ship-ui-core-ship-checkbox.d.ts +22 -0
  91. package/types/ship-ui-core-ship-chip.d.ts +15 -0
  92. package/types/ship-ui-core-ship-color-picker.d.ts +105 -0
  93. package/types/ship-ui-core-ship-datepicker.d.ts +96 -0
  94. package/types/ship-ui-core-ship-dialog.d.ts +76 -0
  95. package/types/ship-ui-core-ship-divider.d.ts +8 -0
  96. package/types/ship-ui-core-ship-event-card.d.ts +11 -0
  97. package/types/ship-ui-core-ship-file-upload.d.ts +20 -0
  98. package/types/ship-ui-core-ship-form-field.d.ts +32 -0
  99. package/types/ship-ui-core-ship-icon.d.ts +18 -0
  100. package/types/ship-ui-core-ship-list.d.ts +8 -0
  101. package/types/ship-ui-core-ship-menu.d.ts +49 -0
  102. package/types/ship-ui-core-ship-popover.d.ts +40 -0
  103. package/types/ship-ui-core-ship-progress-bar.d.ts +14 -0
  104. package/types/ship-ui-core-ship-radio.d.ts +22 -0
  105. package/types/ship-ui-core-ship-range-slider.d.ts +31 -0
  106. package/types/ship-ui-core-ship-select.d.ts +81 -0
  107. package/types/ship-ui-core-ship-sidenav.d.ts +36 -0
  108. package/types/ship-ui-core-ship-sortable.d.ts +72 -0
  109. package/types/ship-ui-core-ship-spinner.d.ts +10 -0
  110. package/types/ship-ui-core-ship-stepper.d.ts +13 -0
  111. package/types/ship-ui-core-ship-table-filter-bar.d.ts +8 -0
  112. package/types/ship-ui-core-ship-table.d.ts +69 -0
  113. package/types/ship-ui-core-ship-tabs.d.ts +14 -0
  114. package/types/ship-ui-core-ship-theme-toggle.d.ts +28 -0
  115. package/types/ship-ui-core-ship-toggle-card.d.ts +15 -0
  116. package/types/ship-ui-core-ship-toggle.d.ts +21 -0
  117. package/types/ship-ui-core-ship-virtual-scroll.d.ts +22 -0
  118. package/types/ship-ui-core.d.ts +88 -1070
  119. package/styles/components/ship-accordion.scss +0 -113
  120. package/styles/components/ship-alert-container.scss +0 -49
  121. package/styles/components/ship-alert.scss +0 -177
  122. package/styles/components/ship-blueprint.scss +0 -242
  123. package/styles/components/ship-button-group.scss +0 -165
  124. package/styles/components/ship-button.scss +0 -141
  125. package/styles/components/ship-card.scss +0 -57
  126. package/styles/components/ship-checkbox.scss +0 -116
  127. package/styles/components/ship-chip.scss +0 -104
  128. package/styles/components/ship-color-picker.scss +0 -150
  129. package/styles/components/ship-datepicker.scss +0 -317
  130. package/styles/components/ship-dialog.scss +0 -152
  131. package/styles/components/ship-divider.scss +0 -27
  132. package/styles/components/ship-event-card.scss +0 -51
  133. package/styles/components/ship-file-upload.scss +0 -47
  134. package/styles/components/ship-form-field.scss +0 -408
  135. package/styles/components/ship-icon.scss +0 -54
  136. package/styles/components/ship-list.scss +0 -165
  137. package/styles/components/ship-menu.scss +0 -237
  138. package/styles/components/ship-popover.scss +0 -205
  139. package/styles/components/ship-progress-bar.scss +0 -173
  140. package/styles/components/ship-radio.scss +0 -113
  141. package/styles/components/ship-range-slider.scss +0 -421
  142. package/styles/components/ship-select.scss +0 -153
  143. package/styles/components/ship-sidenav.scss +0 -195
  144. package/styles/components/ship-sortable.scss +0 -45
  145. package/styles/components/ship-spinner.scss +0 -53
  146. package/styles/components/ship-stepper.scss +0 -158
  147. package/styles/components/ship-table.scss +0 -443
  148. package/styles/components/ship-tabs.scss +0 -125
  149. package/styles/components/ship-theme-toggle.scss +0 -41
  150. package/styles/components/ship-toggle-card.scss +0 -69
  151. package/styles/components/ship-toggle.scss +0 -255
  152. package/styles/components/ship-tooltip.scss +0 -151
  153. package/styles/components/ship-virtual-scroll.scss +0 -12
@@ -1,443 +0,0 @@
1
- @use '../helpers.scss' as *;
2
-
3
- $shipTable: true !default;
4
-
5
- @mixin caret($color) {
6
- border-left: p2r(3) solid $color;
7
- border-bottom: p2r(3) solid $color;
8
- width: p2r(8);
9
- height: p2r(8);
10
- transform: rotate(45deg);
11
- }
12
-
13
- @if $shipTable == true {
14
- sh-table {
15
- --table-bc: var(--base-4);
16
- --table-th-bg: var(--base-1);
17
- --table-tr-bg: var(--base-1);
18
- --table-td-bg: var(--base-1);
19
- --table-th-c: var(--base-8);
20
- --table-th-f: var(--paragraph-30);
21
- --table-td-c: var(--base-8);
22
- --table-td-f: var(--paragraph-30);
23
- --table-th-p: #{p2r(0 20)};
24
- --table-td-p: #{p2r(0 20)};
25
- --table-th-mh: #{p2r(48)};
26
- --table-td-mh: #{p2r(78)};
27
- --table-th-g: #{p2r(4)};
28
- --table-td-g: #{p2r(8)};
29
- --table-ws: nowrap;
30
- --table-th-bw: 0;
31
- --table-td-bw: #{p2r(1 0 0)};
32
- --table-columns: 1fr 1fr 1fr max-content;
33
- --table-sticky-bw: #{p2r(1)};
34
-
35
- &.type-a {
36
- tbody,
37
- thead {
38
- > th,
39
- > td {
40
- padding-right: 0;
41
-
42
- &:first-child {
43
- padding: 0;
44
- }
45
- }
46
- }
47
-
48
- &.scrolled-x.can-scroll-x {
49
- [shStickyColumns=''],
50
- th.sticky,
51
- td.sticky {
52
- border-right-width: p2r(1);
53
- }
54
- }
55
-
56
- &:not(.scrolled-x-end).can-scroll-x {
57
- [shStickyColumns='end'],
58
- th.sticky-end,
59
- td.sticky-end {
60
- border-left-width: p2r(1);
61
- }
62
- }
63
- }
64
-
65
- &.type-b {
66
- --table-th-p: #{p2r(0 12)};
67
- --table-td-p: #{p2r(0 12)};
68
- --table-th-mh: #{p2r(36)};
69
- --table-td-mh: #{p2r(56)};
70
- --table-th-bw: #{p2r(1 0 1 1)};
71
- --table-td-bw: #{p2r(0 0 1 1)};
72
- --table-th-bg: var(--base-2);
73
- --table-sticky-bw: #{p2r(2)};
74
-
75
- th {
76
- &:first-child {
77
- border-left-width: 0;
78
- padding: var(--table-th-p);
79
- }
80
- }
81
-
82
- td {
83
- &:first-child {
84
- border-left-width: 0;
85
- padding: var(--table-td-p);
86
- }
87
- }
88
-
89
- [shStickyColumns='end'] {
90
- border-left-width: p2r(2);
91
- }
92
-
93
- &.scrolled-x {
94
- [shStickyColumns=''] {
95
- border-right-width: p2r(2);
96
- }
97
- }
98
-
99
- &.scrolled-x-end {
100
- [shStickyColumns='end'] {
101
- border-left-width: p2r(1);
102
- }
103
- }
104
-
105
- td,
106
- th {
107
- &.sticky {
108
- border-left-width: 0;
109
- border-right-width: p2r(1);
110
- }
111
- &.sticky + * {
112
- border-left-width: 0;
113
- }
114
- }
115
-
116
- tr:hover td {
117
- background-color: var(--base-2);
118
- }
119
-
120
- div[table-header] tr:first-child th {
121
- border-bottom: 0;
122
- }
123
-
124
- .actionbar {
125
- background-color: var(--base-2);
126
- border-width: p2r(1 0 0);
127
- }
128
- }
129
-
130
- width: 100%;
131
- display: grid;
132
- overflow: auto;
133
- grid-template-columns: var(--table-columns);
134
- position: relative;
135
-
136
- &.resizing {
137
- user-select: none;
138
- }
139
-
140
- &:has([shTableResize]) {
141
- td {
142
- overflow: auto;
143
- }
144
- }
145
-
146
- &.no-resize {
147
- .sh-resizer {
148
- display: none;
149
- }
150
-
151
- td {
152
- overflow: initial;
153
- }
154
- }
155
-
156
- .actionbar {
157
- display: grid;
158
- grid-column: 1 / -1;
159
- align-items: start;
160
- gap: p2r(8);
161
- grid-template-rows: 1fr;
162
- grid-auto-flow: column;
163
- grid-auto-columns: max-content;
164
- padding: p2r(8);
165
- border: var(--border-10);
166
- border-width: p2r(1 0);
167
- opacity: 1;
168
-
169
- transition:
170
- grid-template-rows 300ms ease-out,
171
- padding 300ms ease-out,
172
- border-width 300ms ease-out,
173
- opacity 300ms ease-out;
174
-
175
- overflow: hidden;
176
-
177
- &:empty {
178
- grid-template-rows: 0fr;
179
- padding-top: 0;
180
- padding-bottom: 0;
181
- border-width: 0;
182
- opacity: 0;
183
- pointer-events: none;
184
- }
185
-
186
- & > * {
187
- min-height: 0;
188
- }
189
- }
190
-
191
- tbody {
192
- position: relative;
193
-
194
- // &:has(div[table-header].sticky),
195
- &:has(tr.sticky) {
196
- position: sticky;
197
- top: 0;
198
- z-index: 1;
199
- }
200
- }
201
-
202
- thead {
203
- position: relative;
204
-
205
- &:has(tr.sticky) {
206
- position: sticky;
207
- top: 0;
208
- z-index: 2;
209
- }
210
- }
211
-
212
- sh-progress-bar {
213
- grid-column: 1 / -1;
214
- position: absolute;
215
- top: 100%;
216
- transform: translateY(-50%);
217
- z-index: 200;
218
- }
219
-
220
- tbody,
221
- thead,
222
- // div[table-header].sticky,
223
- tr {
224
- display: grid;
225
- grid-column: 1 / -1;
226
- grid-template-columns: subgrid;
227
- }
228
-
229
- tr {
230
- background: var(--table-tr-bg);
231
- position: relative;
232
- z-index: 0;
233
-
234
- &.sticky {
235
- position: sticky;
236
- top: 0;
237
- z-index: 1;
238
- }
239
-
240
- &.sticky-end {
241
- position: sticky;
242
- bottom: 0;
243
- z-index: 3;
244
- }
245
-
246
- &:has(th.sticky-end) {
247
- th:nth-last-child(2) {
248
- padding: var(--table-th-p);
249
- }
250
- }
251
-
252
- &:has(td.sticky-end) {
253
- td:nth-last-child(2) {
254
- padding: var(--table-td-p);
255
- }
256
- }
257
- }
258
-
259
- th {
260
- display: flex;
261
- align-items: center;
262
- padding: var(--table-th-p);
263
- min-height: var(--table-th-mh);
264
- font: var(--table-th-f);
265
- line-height: 1em;
266
- white-space: var(--table-ws);
267
- color: var(--table-th-c);
268
- border: 0;
269
- border-color: var(--table-bc);
270
- border-style: solid;
271
- border-width: var(--table-th-bw);
272
- background: var(--table-th-bg);
273
- gap: var(--table-th-g);
274
- z-index: 100;
275
-
276
- &:has(.sh-resizer) {
277
- position: relative;
278
- }
279
-
280
- &.sortable {
281
- --caret-color: var(--base-10);
282
- --caret-size: #{p2r(6)};
283
-
284
- cursor: pointer;
285
- user-select: none;
286
-
287
- &:not(:has(sh-icon)) {
288
- &:after {
289
- content: '';
290
- border: var(--caret-size) solid transparent;
291
- width: 0;
292
- height: 0;
293
- opacity: 0;
294
- transition: opacity 125ms ease-in-out;
295
- }
296
-
297
- &.sort-desc::after {
298
- opacity: 1;
299
- transform: translateY(-4px);
300
- border-bottom-color: var(--caret-color);
301
- }
302
-
303
- &.sort-asc::after {
304
- opacity: 1;
305
- transform: translateY(4px);
306
- border-top-color: var(--caret-color);
307
- }
308
- }
309
- }
310
-
311
- .sh-resizer {
312
- width: 10px;
313
- height: 100%;
314
- position: absolute;
315
- top: 0;
316
- right: 0;
317
- cursor: col-resize;
318
-
319
- &:before,
320
- &:after {
321
- content: '';
322
- position: absolute;
323
- top: 50%;
324
- transform: translateY(-50%);
325
- height: p2r(12);
326
- right: p2r(3);
327
- width: p2r(1);
328
- background-color: var(--base-4);
329
- }
330
-
331
- &:hover {
332
- &:before,
333
- &:after {
334
- background-color: var(--primary-8);
335
- }
336
- }
337
-
338
- &:before {
339
- left: p2r(3);
340
- }
341
- }
342
- }
343
-
344
- td {
345
- display: flex;
346
- align-items: center;
347
- padding: var(--table-td-p);
348
- min-height: var(--table-td-mh);
349
- gap: var(--table-td-g);
350
- color: var(--table-td-c);
351
- font: var(--table-td-f);
352
- white-space: var(--table-ws);
353
- border-color: var(--table-bc);
354
- border-style: solid;
355
- border-width: var(--table-td-bw);
356
- background: var(--table-td-bg);
357
-
358
- + td.sticky-end:last-child {
359
- padding: var(--table-td-p);
360
- }
361
- }
362
-
363
- th,
364
- td {
365
- &.sticky,
366
- &.sticky-end {
367
- position: sticky;
368
- overflow: hidden;
369
- right: auto;
370
- left: 0;
371
- z-index: 1;
372
- padding: var(--table-td-p);
373
-
374
- &:first-child {
375
- padding: var(--table-th-p);
376
- }
377
- }
378
-
379
- &.sticky-end {
380
- right: 0;
381
- left: auto;
382
- }
383
- }
384
-
385
- th {
386
- &.sticky,
387
- &.sticky-end {
388
- background: var(--table-th-bg);
389
- padding: var(--table-th-p);
390
- z-index: 101;
391
-
392
- &:first-child {
393
- padding: var(--table-th-p);
394
- }
395
- }
396
- }
397
-
398
- [shStickyColumns] {
399
- display: grid;
400
- grid-template-columns: subgrid;
401
- position: sticky;
402
- left: 0;
403
- z-index: 1000;
404
- border: 0;
405
- border-color: var(--table-bc);
406
- border-style: solid;
407
- }
408
-
409
- [shStickyColumns='end'] {
410
- left: auto;
411
- right: 0;
412
- }
413
-
414
- thead {
415
- > [shStickyColumns] {
416
- border-width: var(--table-th-bw);
417
- }
418
- }
419
-
420
- tbody {
421
- > [shStickyColumns] {
422
- border-width: var(--table-td-bw);
423
- }
424
- }
425
-
426
- .span-all {
427
- grid-column: 1 / -1;
428
- white-space: initial;
429
- align-items: flex-start;
430
- padding: 0;
431
- border-left-width: 0;
432
- }
433
-
434
- .no-rows {
435
- display: none;
436
- grid-column: 1 / -1;
437
- }
438
-
439
- tbody:empty + .no-rows {
440
- display: block;
441
- }
442
- }
443
- }
@@ -1,125 +0,0 @@
1
- @use '../helpers.scss' as *;
2
-
3
- $shipTabs: true !default;
4
-
5
- @if $shipTabs == true {
6
- sh-tabs {
7
- --tabs-bc: var(--base-4);
8
- --tabs-bg: var(--base-1);
9
- --tabs-c: var(--base-12);
10
- --tabs-c-hover: var(--base-8);
11
- --tabs-c-active: var(--base-12);
12
- --tabs-f: var(--paragraph-30);
13
- --tabs-sel-bg: var(--base-12);
14
-
15
- display: flex;
16
- gap: p2r(16);
17
- border-bottom: var(--border-10);
18
- position: relative;
19
-
20
- button,
21
- [tab],
22
- [value] {
23
- display: flex;
24
- align-items: center;
25
- gap: p2r(8);
26
- height: p2r(48);
27
- font: var(--tabs-f);
28
- background: var(--tabs-bg);
29
- border-radius: 0;
30
- appearance: none;
31
- border: 0;
32
- color: var(--tabs-c);
33
- cursor: pointer;
34
- position: relative;
35
-
36
- transition: transform 125ms linear;
37
- transform: scale(1);
38
-
39
- &:focus-visible {
40
- outline: 2px solid var(--primary-8);
41
- outline-offset: -2px;
42
- border-radius: var(--shape-1);
43
- }
44
-
45
- &:active {
46
- transform: scale(0.98);
47
- }
48
-
49
- &:hover {
50
- color: var(--tabs-c-hover);
51
- }
52
-
53
- &.active {
54
- color: var(--tabs-c-active);
55
-
56
- @supports (anchor-name: --anchor) {
57
- position: relative;
58
- anchor-name: var(--tabs-id);
59
- }
60
-
61
- @supports not (anchor-name: --anchor) {
62
- &::after {
63
- display: block;
64
- }
65
- }
66
- }
67
-
68
- &:after {
69
- content: '';
70
- display: none;
71
- width: 100%;
72
- height: p2r(2);
73
- background: var(--tabs-sel-bg);
74
- position: absolute;
75
- left: 0;
76
- bottom: 0;
77
-
78
- @supports (anchor-name: --anchor) {
79
- display: none;
80
- }
81
- }
82
- }
83
-
84
- @supports (anchor-name: --anchor) {
85
- &:after {
86
- content: '';
87
- background: var(--tabs-sel-bg);
88
- pointer-events: none;
89
- position: absolute;
90
- z-index: 10;
91
- height: p2r(2);
92
- bottom: anchor(bottom);
93
- left: anchor(left);
94
- right: anchor(right);
95
- position-anchor: var(--tabs-id);
96
- transition: all 0.175s ease-out;
97
- }
98
- }
99
-
100
- &.primary {
101
- --tabs-sel-bg: var(--primary-8);
102
- --tabs-c-active: var(--primary-8);
103
- }
104
-
105
- &.accent {
106
- --tabs-sel-bg: var(--accent-8);
107
- --tabs-c-active: var(--accent-8);
108
- }
109
-
110
- &.warn {
111
- --tabs-sel-bg: var(--warn-8);
112
- --tabs-c-active: var(--warn-8);
113
- }
114
-
115
- &.error {
116
- --tabs-sel-bg: var(--error-8);
117
- --tabs-c-active: var(--error-8);
118
- }
119
-
120
- &.success {
121
- --tabs-sel-bg: var(--success-8);
122
- --tabs-c-active: var(--success-8);
123
- }
124
- }
125
- }
@@ -1,41 +0,0 @@
1
- @use '../helpers.scss' as *;
2
-
3
- $shipThemeToggle: true !default;
4
-
5
- @if $shipThemeToggle == true {
6
- ship-theme-toggle {
7
- display: flex;
8
- align-items: center;
9
- justify-content: center;
10
- position: relative;
11
-
12
- [shButton].small sh-icon.small-icon {
13
- font-size: p2r(10);
14
- }
15
-
16
- &:has(sh-icon.small-icon) {
17
- [shButton].small {
18
- gap: 0;
19
- }
20
-
21
- sh-icon:first-child {
22
- transform: translate(p2r(-1), p2r(-4));
23
- }
24
-
25
- sh-icon:last-child {
26
- transform: translate(p2r(1), p2r(4));
27
- }
28
-
29
- &:after {
30
- content: '';
31
- height: p2r(16);
32
- width: 1px;
33
- background: var(--base-12);
34
- position: absolute;
35
- inset: 0;
36
- margin: auto;
37
- transform: rotate(30deg);
38
- }
39
- }
40
- }
41
- }
@@ -1,69 +0,0 @@
1
- @use '../helpers.scss' as *;
2
-
3
- $shipToggleCard: true !default;
4
-
5
- @if $shipToggleCard == true {
6
- sh-toggle-card {
7
- display: flex;
8
- flex-direction: column;
9
- border-radius: var(--shape-3);
10
- background-color: var(--base-2);
11
-
12
- &.type-a {
13
- background-color: transparent;
14
- border: var(--border-10);
15
- }
16
-
17
- &.active {
18
- .collapsable {
19
- grid-template-rows: 1fr;
20
- }
21
-
22
- .content {
23
- padding: p2r(0 16 16);
24
-
25
- &:empty {
26
- padding: p2r(0 16);
27
- }
28
- }
29
-
30
- sh-icon.toggle-icon {
31
- transform: rotate(180deg);
32
- }
33
- }
34
-
35
- h3 {
36
- display: flex;
37
- align-items: center;
38
- justify-content: space-between;
39
- font: var(--paragraph-10);
40
- padding: p2r(16);
41
- cursor: pointer;
42
- user-select: none;
43
- }
44
-
45
- sh-icon.toggle-icon {
46
- cursor: pointer;
47
- transform: rotate(0);
48
- transform-origin: center;
49
- transition: transform 200ms ease;
50
- }
51
-
52
- .collapsable {
53
- display: grid;
54
- grid-template-rows: 0fr;
55
- transition: grid-template-rows 0.5s linear;
56
- overflow: hidden;
57
- }
58
-
59
- .content {
60
- display: flex;
61
- flex-direction: column;
62
- gap: p2r(16);
63
-
64
- padding: p2r(0 16);
65
- min-height: 0;
66
- overflow: hidden;
67
- }
68
- }
69
- }