twskin 0.5.4 → 0.5.5

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.
@@ -59,6 +59,7 @@ body.trae-skin-v2 #trae-dream-skin-button {
59
59
  }
60
60
  #trae-dream-skin-panel .ds-header-actions { flex: 0 0 auto; display: flex; align-items: center; gap: 5px; }
61
61
  #trae-dream-skin-panel .ds-config-toggle,
62
+ #trae-dream-skin-panel .ds-sync,
62
63
  #trae-dream-skin-panel .ds-close,
63
64
  #trae-dream-skin-panel .ds-reload {
64
65
  border: 1px solid rgba(255, 255, 255, 0.18); border-radius: 6px;
@@ -66,6 +67,12 @@ body.trae-skin-v2 #trae-dream-skin-button {
66
67
  font: inherit; cursor: pointer;
67
68
  }
68
69
  #trae-dream-skin-panel .ds-config-toggle { padding: 3px 7px; }
70
+ #trae-dream-skin-panel .ds-sync { position: relative; padding: 3px 7px; }
71
+ #trae-dream-skin-panel .ds-sync.ds-sync-pending::after {
72
+ content: ""; position: absolute; top: -3px; right: -3px;
73
+ width: 6px; height: 6px; border-radius: 50%; background: #ff8d98;
74
+ border: 1px solid rgba(20, 22, 34, 0.9);
75
+ }
69
76
  #trae-dream-skin-panel .ds-close,
70
77
  #trae-dream-skin-panel .ds-reload {
71
78
  box-sizing: border-box; width: 23px; height: 23px; padding: 0;
@@ -73,6 +80,7 @@ body.trae-skin-v2 #trae-dream-skin-button {
73
80
  font-size: 14px; line-height: 1;
74
81
  }
75
82
  #trae-dream-skin-panel .ds-config-toggle:hover,
83
+ #trae-dream-skin-panel .ds-sync:hover:not(:disabled),
76
84
  #trae-dream-skin-panel .ds-close:hover,
77
85
  #trae-dream-skin-panel .ds-reload:hover { background: rgba(255, 255, 255, 0.14); }
78
86
  @keyframes trae-skin-spin { to { transform: rotate(360deg); } }
@@ -81,6 +89,7 @@ body.trae-skin-v2 #trae-dream-skin-button {
81
89
  #trae-dream-skin-panel .ds-reload.ds-reload-loading .ds-reload-icon {
82
90
  animation: trae-skin-spin 0.8s linear infinite;
83
91
  }
92
+ #trae-dream-skin-panel .ds-sync:disabled { opacity: 0.55; cursor: wait; }
84
93
  #trae-dream-skin-panel .ds-body {
85
94
  flex: 1 1 auto; overflow-y: auto; padding: 12px;
86
95
  scrollbar-width: thin; scrollbar-color: rgba(255, 255, 255, 0.22) transparent;
@@ -92,6 +101,22 @@ body.trae-skin-v2 #trae-dream-skin-button {
92
101
  #trae-dream-skin-panel .ds-gallery-view {
93
102
  display: grid; grid-template-columns: 1fr; gap: 4px;
94
103
  }
104
+ #trae-dream-skin-panel .ds-sync-banner {
105
+ display: none; align-items: center; justify-content: space-between; gap: 8px;
106
+ margin: 0 0 9px; padding: 7px 8px; border-radius: 8px;
107
+ border: 1px solid rgba(124, 156, 255, 0.38); background: rgba(124, 156, 255, 0.1);
108
+ font-size: 10px;
109
+ }
110
+ #trae-dream-skin-panel .ds-sync-banner.ds-sync-error {
111
+ border-color: rgba(255, 102, 117, 0.58); background: rgba(255, 82, 99, 0.1);
112
+ }
113
+ #trae-dream-skin-panel .ds-sync-copy { min-width: 0; flex: 1 1 auto; }
114
+ #trae-dream-skin-panel .ds-sync-action {
115
+ flex: 0 0 auto; padding: 3px 7px; border-radius: 5px;
116
+ border: 1px solid rgba(255, 255, 255, 0.2); color: inherit;
117
+ background: rgba(255, 255, 255, 0.1); font: inherit; cursor: pointer;
118
+ }
119
+ #trae-dream-skin-panel .ds-sync-action:hover { background: rgba(255, 255, 255, 0.18); }
95
120
  #trae-dream-skin-panel .ds-gallery-view,
96
121
  #trae-dream-skin-panel .ds-config-view { animation: trae-skin-fade-in 0.15s ease; }
97
122
  /* 分类 Tab */
@@ -273,6 +298,10 @@ body.trae-skin-v2 #trae-dream-skin-panel .ds-tab.ds-tab-active {
273
298
  display: block; font-size: 12px; font-weight: 600;
274
299
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
275
300
  }
301
+ #trae-dream-skin-panel .ds-version {
302
+ display: block; margin-top: 1px; font-size: 9px; opacity: 0.48;
303
+ font-variant-numeric: tabular-nums;
304
+ }
276
305
  #trae-dream-skin-panel .ds-desc {
277
306
  display: block; margin-top: 1px; font-size: 10px; opacity: 0.65;
278
307
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
@@ -306,6 +335,7 @@ body.trae-skin-v2 #trae-dream-skin-panel .ds-body::-webkit-scrollbar-thumb { bac
306
335
  body.trae-skin-v2 #trae-dream-skin-panel .ds-body::-webkit-scrollbar-thumb:hover { background: var(--trae-skin-scrollbar-hover); }
307
336
  body.trae-skin-effects-max #trae-dream-skin-panel .ds-header { padding-right: 16px; }
308
337
  body.trae-skin-v2 #trae-dream-skin-panel .ds-config-toggle,
338
+ body.trae-skin-v2 #trae-dream-skin-panel .ds-sync,
309
339
  body.trae-skin-v2 #trae-dream-skin-panel .ds-close,
310
340
  body.trae-skin-v2 #trae-dream-skin-panel .ds-reload,
311
341
  body.trae-skin-v2 #trae-dream-skin-panel .ds-copy-config,
@@ -316,6 +346,7 @@ body.trae-skin-v2 #trae-dream-skin-panel .ds-reset-cancel {
316
346
  border-color: var(--trae-skin-border-default);
317
347
  }
318
348
  body.trae-skin-v2 #trae-dream-skin-panel .ds-config-toggle:hover,
349
+ body.trae-skin-v2 #trae-dream-skin-panel .ds-sync:hover:not(:disabled),
319
350
  body.trae-skin-v2 #trae-dream-skin-panel .ds-close:hover,
320
351
  body.trae-skin-v2 #trae-dream-skin-panel .ds-reload:hover,
321
352
  body.trae-skin-v2 #trae-dream-skin-panel .ds-copy-config:hover,
@@ -337,6 +368,12 @@ body.trae-skin-v2 #trae-dream-skin-panel .ds-setting-row {
337
368
  background: var(--trae-skin-info-subtle);
338
369
  border-color: var(--trae-skin-border-subtle);
339
370
  }
371
+ body.trae-skin-v2 #trae-dream-skin-panel .ds-sync-banner {
372
+ border-color: var(--trae-skin-border-default); background: var(--trae-skin-info-subtle);
373
+ }
374
+ body.trae-skin-v2 #trae-dream-skin-panel .ds-sync-banner.ds-sync-error {
375
+ border-color: var(--trae-skin-error); background: color-mix(in srgb, var(--trae-skin-error) 12%, transparent);
376
+ }
340
377
  body.trae-skin-v2 #trae-dream-skin-panel .ds-switch[aria-checked="true"] {
341
378
  background: var(--trae-skin-accent);
342
379
  border-color: var(--trae-skin-border-strong);