@ash-qw/dsh-theme-prts 1.0.6 → 1.1.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/CHANGELOG.md +14 -0
- package/README.en.md +9 -1
- package/README.md +8 -2
- package/lib/client.js +638 -43
- package/lib/index.js +1 -3
- package/package.json +5 -2
- package/src/client/custom-emblem.js +404 -0
- package/src/client/emblem-reorder.js +143 -0
- package/src/client/emblem-tool-preview.js +17 -0
- package/src/client/index.js +7 -1
- package/src/client/operations-shell-v2.js +2 -0
- package/src/client/particle-field-adapter.js +32 -7
- package/src/client/theme-settings-workbench.js +46 -33
- package/src/index.js +13 -1
- package/src/server/api.js +54 -0
- package/src/server/emblems.js +153 -0
- package/src/server/image-worker.js +32 -0
- package/src/server/tools.js +67 -0
- package/src/styles/theme-settings-workbench.css +69 -52
|
@@ -187,7 +187,7 @@ html[data-dsh-prts] [data-prts-settings-common] > header {
|
|
|
187
187
|
|
|
188
188
|
html[data-dsh-prts] [data-prts-settings-presets] > header span,
|
|
189
189
|
html[data-dsh-prts] [data-prts-settings-common] > header span,
|
|
190
|
-
html[data-dsh-prts] [data-prts-settings-advanced]
|
|
190
|
+
html[data-dsh-prts] [data-prts-settings-advanced] > [data-prts-section-heading] > span {
|
|
191
191
|
display: flex;
|
|
192
192
|
align-items: baseline;
|
|
193
193
|
gap: 9px;
|
|
@@ -195,7 +195,7 @@ html[data-dsh-prts] [data-prts-settings-advanced] summary > span {
|
|
|
195
195
|
|
|
196
196
|
html[data-dsh-prts] [data-prts-settings-presets] > header strong,
|
|
197
197
|
html[data-dsh-prts] [data-prts-settings-common] > header strong,
|
|
198
|
-
html[data-dsh-prts] [data-prts-settings-advanced]
|
|
198
|
+
html[data-dsh-prts] [data-prts-settings-advanced] > [data-prts-section-heading] strong {
|
|
199
199
|
font: 800 13px/1 var(--prts-display);
|
|
200
200
|
letter-spacing: .05em;
|
|
201
201
|
}
|
|
@@ -459,31 +459,16 @@ html[data-dsh-prts] [data-prts-theme-settings] input:focus-visible {
|
|
|
459
459
|
outline-offset: 2px;
|
|
460
460
|
}
|
|
461
461
|
|
|
462
|
-
html[data-dsh-prts] [data-prts-settings-advanced]
|
|
462
|
+
html[data-dsh-prts] [data-prts-settings-advanced] > [data-prts-section-heading] {
|
|
463
463
|
min-height: 52px;
|
|
464
464
|
display: flex;
|
|
465
465
|
align-items: center;
|
|
466
466
|
justify-content: space-between;
|
|
467
467
|
gap: 12px;
|
|
468
468
|
padding: 11px;
|
|
469
|
-
cursor: pointer;
|
|
470
469
|
list-style: none;
|
|
471
470
|
}
|
|
472
471
|
|
|
473
|
-
html[data-dsh-prts] [data-prts-settings-advanced] summary::-webkit-details-marker { display: none; }
|
|
474
|
-
html[data-dsh-prts] [data-prts-settings-advanced] summary::after {
|
|
475
|
-
content: "+";
|
|
476
|
-
width: 24px;
|
|
477
|
-
height: 24px;
|
|
478
|
-
display: grid;
|
|
479
|
-
place-items: center;
|
|
480
|
-
margin-left: 2px;
|
|
481
|
-
border: 1px solid var(--prts-line);
|
|
482
|
-
color: var(--prts-cyan);
|
|
483
|
-
font: 800 13px/1 var(--prts-mono);
|
|
484
|
-
}
|
|
485
|
-
|
|
486
|
-
html[data-dsh-prts] [data-prts-settings-advanced][open] summary::after { content: "−"; }
|
|
487
472
|
html[data-dsh-prts] [data-prts-settings-advanced-content] {
|
|
488
473
|
display: grid;
|
|
489
474
|
grid-template-columns: minmax(0, 1fr);
|
|
@@ -615,7 +600,7 @@ html[data-dsh-prts] :is(
|
|
|
615
600
|
html[data-dsh-prts] :is(
|
|
616
601
|
[data-prts-settings-presets] > header strong,
|
|
617
602
|
[data-prts-settings-common] > header strong,
|
|
618
|
-
[data-prts-settings-advanced]
|
|
603
|
+
[data-prts-settings-advanced] > [data-prts-section-heading] strong,
|
|
619
604
|
[data-prts-preset-card] strong,
|
|
620
605
|
[data-prts-settings-common] [data-prts-setting-row] > span > strong,
|
|
621
606
|
[data-prts-settings-advanced-content] section > header strong,
|
|
@@ -812,7 +797,7 @@ html[data-dsh-prts] [data-prts-theme-settings] :is([data-prts-settings-presets],
|
|
|
812
797
|
border: 0;
|
|
813
798
|
}
|
|
814
799
|
html[data-dsh-prts] [data-prts-theme-settings] :is([data-prts-settings-presets], [data-prts-settings-common]) > header strong,
|
|
815
|
-
html[data-dsh-prts] [data-prts-theme-settings] [data-prts-settings-advanced]
|
|
800
|
+
html[data-dsh-prts] [data-prts-theme-settings] [data-prts-settings-advanced] > [data-prts-section-heading] strong {
|
|
816
801
|
font: 650 16px/1.5 var(--prts-body);
|
|
817
802
|
letter-spacing: 0;
|
|
818
803
|
}
|
|
@@ -869,16 +854,18 @@ html[data-dsh-prts] [data-prts-theme-settings] button[data-prts-setting-key].is-
|
|
|
869
854
|
border-color: color-mix(in srgb, var(--prts-yellow) 70%, transparent);
|
|
870
855
|
color: var(--prts-ink);
|
|
871
856
|
}
|
|
872
|
-
html[data-dsh-prts] [data-prts-theme-settings]
|
|
873
|
-
|
|
874
|
-
|
|
875
|
-
|
|
876
|
-
|
|
877
|
-
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
|
|
881
|
-
|
|
857
|
+
html[data-dsh-prts] [data-prts-theme-settings] {
|
|
858
|
+
& [data-prts-setting-row="sessionFlowPalette"] > div { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
|
|
859
|
+
& [data-prts-setting-row="sessionFlowColors"] { grid-template-columns: minmax(0, 1fr); }
|
|
860
|
+
& [data-prts-settings-advanced] { border-top: 1px solid var(--prts-line); }
|
|
861
|
+
& [data-prts-settings-advanced] > [data-prts-section-heading] { padding: 22px 0; }
|
|
862
|
+
& [data-prts-settings-section][hidden] { display: none !important; }
|
|
863
|
+
& [data-prts-settings-advanced-content] { border: 0; }
|
|
864
|
+
& [data-prts-settings-advanced-content] > section { padding: 0 0 20px; }
|
|
865
|
+
& :is([data-prts-advanced-summary], [data-prts-session-flow-speed-output], [data-prts-particle-traversal-output]) { color: var(--prts-muted); font-size: 12px; font-weight: 400; }
|
|
866
|
+
& [data-prts-settings-actions] { padding-top: 24px; border-top: 1px solid var(--prts-line); }
|
|
867
|
+
& [data-prts-reset-zone] { padding: 0; }
|
|
868
|
+
}
|
|
882
869
|
@media (max-width: 720px) {
|
|
883
870
|
html[data-dsh-prts] [data-prts-theme-settings] { width: 100vw; height: 100dvh; max-height: none; }
|
|
884
871
|
html[data-dsh-prts] [data-prts-theme-settings] [data-prts-settings-frame] { border-radius: 0; }
|
|
@@ -894,12 +881,13 @@ html[data-dsh-prts] [data-prts-theme-settings] [data-prts-reset-zone] { padding:
|
|
|
894
881
|
html[data-dsh-prts] [data-prts-theme-settings] [data-prts-settings-common] [data-prts-setting-row]:has(> [data-prts-setting-switch]) { grid-template-columns: minmax(0, 1fr) auto; gap: 20px; }
|
|
895
882
|
}
|
|
896
883
|
|
|
884
|
+
html[data-dsh-prts] [data-prts-theme-settings] {
|
|
897
885
|
/* Four navigation destinations, each with one continuous settings surface. */
|
|
898
|
-
|
|
886
|
+
& [data-prts-theme-settings-scroll] {
|
|
899
887
|
padding: 20px 24px 28px;
|
|
900
888
|
background: var(--prts-canvas);
|
|
901
889
|
}
|
|
902
|
-
|
|
890
|
+
& [data-prts-settings-section] {
|
|
903
891
|
margin: 0 0 28px;
|
|
904
892
|
padding: 0 20px 8px;
|
|
905
893
|
border: 1px solid var(--prts-line);
|
|
@@ -907,7 +895,7 @@ html[data-dsh-prts] [data-prts-theme-settings] [data-prts-settings-section] {
|
|
|
907
895
|
background: var(--prts-panel);
|
|
908
896
|
scroll-margin-top: 16px;
|
|
909
897
|
}
|
|
910
|
-
|
|
898
|
+
& [data-prts-settings-section] > [data-prts-section-heading] {
|
|
911
899
|
display: flex;
|
|
912
900
|
align-items: center;
|
|
913
901
|
justify-content: space-between;
|
|
@@ -920,44 +908,73 @@ html[data-dsh-prts] [data-prts-theme-settings] [data-prts-settings-section] > [d
|
|
|
920
908
|
border-radius: 5px 5px 0 0;
|
|
921
909
|
background: var(--prts-panel-raised);
|
|
922
910
|
}
|
|
923
|
-
|
|
911
|
+
& [data-prts-settings-section] > [data-prts-section-heading] > span {
|
|
924
912
|
display: grid;
|
|
925
913
|
gap: 5px;
|
|
926
914
|
}
|
|
927
|
-
|
|
915
|
+
& [data-prts-settings-section] > [data-prts-section-heading] strong {
|
|
928
916
|
font: 650 18px/1.4 var(--prts-body);
|
|
929
917
|
letter-spacing: 0;
|
|
930
918
|
}
|
|
931
|
-
|
|
919
|
+
& [data-prts-settings-section] > [data-prts-section-heading] small {
|
|
932
920
|
color: var(--prts-muted);
|
|
933
921
|
font: 400 12px/1.5 var(--prts-body);
|
|
934
922
|
}
|
|
935
|
-
|
|
923
|
+
& [data-prts-settings-section="appearance"] > section {
|
|
936
924
|
margin-bottom: 8px;
|
|
937
925
|
}
|
|
938
|
-
|
|
926
|
+
& [data-prts-settings-section="appearance"] > section > header {
|
|
939
927
|
padding: 16px 0 10px;
|
|
940
928
|
}
|
|
941
|
-
|
|
929
|
+
& [data-prts-settings-section="appearance"] > section > header strong {
|
|
942
930
|
font-size: 13px;
|
|
943
931
|
color: var(--prts-muted);
|
|
944
932
|
}
|
|
945
|
-
|
|
946
|
-
padding-bottom: 0;
|
|
947
|
-
}
|
|
948
|
-
html[data-dsh-prts] [data-prts-theme-settings] [data-prts-settings-advanced]:not([open]) > summary {
|
|
949
|
-
margin-bottom: 0;
|
|
950
|
-
border-bottom: 0;
|
|
951
|
-
border-radius: 5px;
|
|
952
|
-
}
|
|
953
|
-
html[data-dsh-prts] [data-prts-theme-settings] [data-prts-settings-jump][aria-current="location"] {
|
|
933
|
+
& [data-prts-settings-jump][aria-selected="true"] {
|
|
954
934
|
color: var(--prts-ink);
|
|
955
935
|
background: var(--prts-panel-raised);
|
|
956
936
|
box-shadow: inset 3px 0 var(--prts-yellow);
|
|
957
937
|
}
|
|
958
938
|
@media (max-width: 720px) {
|
|
959
|
-
|
|
960
|
-
|
|
961
|
-
|
|
962
|
-
|
|
939
|
+
& [data-prts-theme-settings-scroll] { padding: 16px 12px 24px; }
|
|
940
|
+
& [data-prts-settings-section] { padding-inline: 14px; margin-bottom: 24px; }
|
|
941
|
+
& [data-prts-settings-section] > [data-prts-section-heading] { margin-inline: -14px; padding-inline: 14px; flex-wrap: wrap; gap: 4px 12px; }
|
|
942
|
+
& [data-prts-settings-jump][aria-selected="true"] { box-shadow: inset 0 -3px var(--prts-yellow); }
|
|
943
|
+
}
|
|
944
|
+
|
|
945
|
+
& [data-prts-custom-emblem] {
|
|
946
|
+
display: grid;
|
|
947
|
+
gap: 14px;
|
|
948
|
+
padding-block: 16px 24px;
|
|
949
|
+
border-bottom: 1px solid var(--prts-line);
|
|
950
|
+
margin-bottom: 20px;
|
|
951
|
+
}
|
|
952
|
+
& [data-prts-custom-emblem] header { display: grid; gap: 6px; }
|
|
953
|
+
& [data-prts-custom-emblem] :is(small, p) { font: 400 12px/1.6 var(--prts-body); color: var(--prts-muted); margin: 0; }
|
|
954
|
+
& [data-prts-custom-emblem] label { display: grid; grid-template-columns: 110px minmax(0, 1fr); align-items: center; gap: 12px; font-size: 13px; }
|
|
955
|
+
& [data-prts-emblem-editor] { display: grid; gap: 14px; }
|
|
956
|
+
& [data-prts-custom-emblem] :is(input,select) { min-width: 0; max-width: 100%; }
|
|
957
|
+
& [data-prts-custom-emblem] select { padding: 8px; background: var(--prts-panel-raised); color: var(--prts-ink); border: 1px solid var(--prts-line); }
|
|
958
|
+
& [data-prts-emblem-preview] { width: min(100%, 280px); height: auto; justify-self: center; border: 1px solid var(--prts-line); border-radius: 4px; }
|
|
959
|
+
& [data-prts-emblem-actions] { display: flex; flex-wrap: wrap; gap: 10px; }
|
|
960
|
+
& [data-prts-emblem-actions] button { padding: 10px 14px; border: 1px solid var(--prts-line); border-radius: 4px; color: var(--prts-ink); background: var(--prts-panel-raised); }
|
|
961
|
+
& [data-prts-emblem-actions] button:disabled { opacity: .45; }
|
|
962
|
+
& [data-prts-custom-emblem] h4 { margin: 8px 0 12px; font: 600 14px/1.5 var(--prts-body); }
|
|
963
|
+
& [data-prts-emblem-list] { display: grid; gap: 10px; list-style: none; padding: 0; margin: 14px 0; }
|
|
964
|
+
& :is([data-prts-emblem-list] > li, [data-prts-emblem-hero-row]) { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; padding: 12px; border: 1px solid var(--prts-line); border-radius: 4px; }
|
|
965
|
+
& :is([data-prts-emblem-list], [data-prts-emblem-hero-row]) canvas { width: 48px; height: 48px; flex: none; border-radius: 3px; }
|
|
966
|
+
& :is([data-prts-emblem-list] > li, [data-prts-emblem-hero-row]) > span { flex: 1; min-width: 100px; overflow-wrap: anywhere; font-size: 13px; }
|
|
967
|
+
& [data-emblem-action] { padding: 7px 10px; border: 1px solid var(--prts-line); border-radius: 4px; background: var(--prts-panel-raised); color: var(--prts-ink); }
|
|
968
|
+
& [data-emblem-action]:disabled { opacity: .4; }
|
|
969
|
+
& [data-prts-emblem-reorder] { padding: 0; border: 0; background: transparent; cursor: grab; }
|
|
970
|
+
& [data-emblem-key] {user-select:none;-webkit-touch-callout:none}
|
|
971
|
+
& [data-prts-emblem-reorder]:focus-visible { outline: 2px solid var(--prts-ink); outline-offset: 3px; }
|
|
972
|
+
& [data-prts-emblem-sorting] { user-select: none; }
|
|
973
|
+
& [data-prts-emblem-dragging] { opacity: .35; border-style: dashed !important; }
|
|
974
|
+
& [data-prts-emblem-drag-ghost] { background: var(--prts-panel-raised); box-shadow: 0 8px 28px #0005; opacity: .95; }
|
|
975
|
+
& [data-prts-emblem-workspace] { display: grid; gap: 14px; padding: 16px 0; border-top: 1px solid var(--prts-line); }
|
|
976
|
+
@media (max-width:720px) {
|
|
977
|
+
& [data-prts-emblem-list] [data-prts-emblem-actions] { flex-basis: 100%; gap: 5px; }
|
|
978
|
+
}
|
|
979
|
+
|
|
963
980
|
}
|