@ash-qw/dsh-theme-prts 0.1.91

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 (50) hide show
  1. package/LICENSE +24 -0
  2. package/README.en.md +103 -0
  3. package/README.md +107 -0
  4. package/THIRD_PARTY_NOTICES.md +48 -0
  5. package/cordis.patch.yml +4 -0
  6. package/lib/client.js +7466 -0
  7. package/lib/index.js +3 -0
  8. package/package.json +64 -0
  9. package/src/assets/faction-emblems/lungmen.png +0 -0
  10. package/src/assets/faction-emblems/penguin-logistics.png +0 -0
  11. package/src/assets/faction-emblems/reunion.png +0 -0
  12. package/src/assets/faction-emblems/rhine-lab.png +0 -0
  13. package/src/assets/faction-emblems/rhodes-island.png +0 -0
  14. package/src/assets/prts-original-avatar.png +0 -0
  15. package/src/assets/rhodes-dsh.svg +6 -0
  16. package/src/assets/topographic-map.svg +72 -0
  17. package/src/assets/topographic-tech.svg +19 -0
  18. package/src/client/assistant-glass-adapter.js +231 -0
  19. package/src/client/composer-glass-adapter.js +210 -0
  20. package/src/client/conversation-control-adapter.js +109 -0
  21. package/src/client/conversation-scale-adapter.js +2243 -0
  22. package/src/client/facility-geometry.js +60 -0
  23. package/src/client/facility-vector.js +230 -0
  24. package/src/client/floating-glass-adapter.js +177 -0
  25. package/src/client/host-geometry-adapter.js +123 -0
  26. package/src/client/index.js +359 -0
  27. package/src/client/layout-stability-diagnostics.js +162 -0
  28. package/src/client/operations-shell-v2.js +248 -0
  29. package/src/client/particle-field-adapter.js +1840 -0
  30. package/src/client/preferences.js +239 -0
  31. package/src/client/rc7-adapter.js +83 -0
  32. package/src/client/resize-shield-adapter.js +64 -0
  33. package/src/client/settings-page.js +62 -0
  34. package/src/client/sidebar-control-adapter.js +317 -0
  35. package/src/client/startup-sequence.js +366 -0
  36. package/src/client/status-projection.js +79 -0
  37. package/src/client/terrain-motion-adapter.js +188 -0
  38. package/src/client/theme-controller-v2.js +134 -0
  39. package/src/client/theme-controller.js +119 -0
  40. package/src/client/theme-settings-workbench.js +583 -0
  41. package/src/client/to-bottom-adapter.js +85 -0
  42. package/src/client/ui-store.js +23 -0
  43. package/src/index.js +4 -0
  44. package/src/styles/conversation-scale.css +471 -0
  45. package/src/styles/facility-vector.css +292 -0
  46. package/src/styles/prts.css +1223 -0
  47. package/src/styles/refinement.css +429 -0
  48. package/src/styles/stabilization.css +161 -0
  49. package/src/styles/startup-sequence.css +496 -0
  50. package/src/styles/theme-settings-workbench.css +803 -0
@@ -0,0 +1,292 @@
1
+ /* Vector facility renderer: the legacy polygons remain active until each owner is ready. */
2
+ html[data-dsh-prts] [data-prts-facility-defs] {
3
+ position: absolute;
4
+ width: 0;
5
+ height: 0;
6
+ overflow: hidden;
7
+ pointer-events: none;
8
+ }
9
+
10
+ html[data-dsh-prts] [data-prts-facility-svg] {
11
+ position: absolute;
12
+ z-index: -1;
13
+ inset: 0;
14
+ width: 100%;
15
+ height: 100%;
16
+ overflow: visible;
17
+ pointer-events: none;
18
+ }
19
+
20
+ html[data-dsh-prts] [data-prts-facility-layer="surface"] {
21
+ fill: var(--prts-facility-surface, var(--prts-panel-raised));
22
+ }
23
+
24
+ html[data-dsh-prts] [data-prts-facility-layer="texture"] {
25
+ fill: none;
26
+ opacity: 0;
27
+ pointer-events: none;
28
+ transition: opacity 160ms ease;
29
+ }
30
+
31
+ html[data-dsh-prts] [data-prts-facility-layer="outline"] {
32
+ fill: none;
33
+ stroke: var(--prts-facility-outline, var(--prts-line-strong));
34
+ stroke-width: 1;
35
+ stroke-linejoin: miter;
36
+ stroke-miterlimit: 2;
37
+ vector-effect: non-scaling-stroke;
38
+ shape-rendering: geometricPrecision;
39
+ pointer-events: none;
40
+ }
41
+
42
+ html[data-dsh-prts] [data-prts-facility-vector][data-prts-facility-texture="grid"] [data-prts-facility-layer="texture"] {
43
+ fill: var(--prts-facility-texture-color, var(--prts-cyan));
44
+ opacity: var(--prts-facility-texture-opacity, .12);
45
+ mask: url("#prts-facility-grid-mask");
46
+ }
47
+
48
+ html[data-dsh-prts] [data-prts-facility-vector][data-prts-facility-texture="scanline"] [data-prts-facility-layer="texture"] {
49
+ fill: var(--prts-facility-texture-color, var(--prts-cyan));
50
+ opacity: var(--prts-facility-texture-opacity, .1);
51
+ mask: url("#prts-facility-scanline-mask");
52
+ }
53
+
54
+ html[data-dsh-prts] [data-prts-workspace-row] {
55
+ --prts-facility-texture-color: var(--prts-cyan);
56
+ --prts-silhouette-fill: #f3f6f7;
57
+ --prts-silhouette-far-opacity: .06;
58
+ --prts-silhouette-near-opacity: .12;
59
+ }
60
+
61
+ html[data-dsh-prts][data-prts-scheme="light"] [data-prts-workspace-row] {
62
+ --prts-silhouette-fill: #3f4d56;
63
+ --prts-silhouette-far-opacity: .13;
64
+ --prts-silhouette-near-opacity: .26;
65
+ }
66
+
67
+ html[data-dsh-prts] [data-prts-workspace-row][aria-expanded="true"],
68
+ html[data-dsh-prts] [data-prts-workspace-row]:is(:hover, :focus-within, [data-prts-row-menu-open]) {
69
+ --prts-silhouette-far-opacity: .24;
70
+ --prts-silhouette-near-opacity: .52;
71
+ }
72
+
73
+ html[data-dsh-prts][data-prts-scheme="light"] [data-prts-workspace-row][aria-expanded="true"],
74
+ html[data-dsh-prts][data-prts-scheme="light"] [data-prts-workspace-row]:is(:hover, :focus-within, [data-prts-row-menu-open]) {
75
+ --prts-silhouette-far-opacity: .25;
76
+ --prts-silhouette-near-opacity: .5;
77
+ }
78
+
79
+ html[data-dsh-prts] [data-prts-facility-texture="silhouette"] [data-prts-facility-layer="texture"] {
80
+ opacity: 0;
81
+ }
82
+
83
+ html[data-dsh-prts] [data-prts-facility-silhouette] {
84
+ fill: var(--prts-silhouette-fill);
85
+ opacity: 0;
86
+ pointer-events: none;
87
+ }
88
+
89
+ html[data-dsh-prts] [data-prts-facility-texture="silhouette"] [data-prts-facility-silhouette] {
90
+ opacity: 1;
91
+ }
92
+
93
+ html[data-dsh-prts] [data-prts-silhouette-layer] {
94
+ transform-box: fill-box;
95
+ transform-origin: left center;
96
+ animation-timing-function: linear;
97
+ animation-iteration-count: infinite;
98
+ animation-play-state: paused;
99
+ will-change: transform;
100
+ transition: opacity 180ms ease;
101
+ }
102
+
103
+ html[data-dsh-prts] [data-prts-silhouette-layer="far"] {
104
+ opacity: var(--prts-silhouette-far-opacity);
105
+ animation-name: prts-silhouette-far-drift;
106
+ animation-duration: 22.4s;
107
+ }
108
+
109
+ html[data-dsh-prts] [data-prts-silhouette-layer="near"] {
110
+ opacity: var(--prts-silhouette-near-opacity);
111
+ animation-name: prts-silhouette-near-drift;
112
+ animation-duration: 6.4s;
113
+ }
114
+
115
+ @media (prefers-reduced-motion: no-preference) {
116
+ html[data-dsh-prts]:not([data-prts-motion="reduced"]) [data-prts-workspace-row]:hover [data-prts-silhouette-layer] {
117
+ animation-play-state: running;
118
+ }
119
+ }
120
+
121
+ @keyframes prts-silhouette-far-drift {
122
+ to { transform: translate3d(-512px, 0, 0); }
123
+ }
124
+
125
+ @keyframes prts-silhouette-near-drift {
126
+ to { transform: translate3d(-512px, 0, 0); }
127
+ }
128
+
129
+ html[data-dsh-prts] [data-prts-facility-texture="pickup"] [data-prts-facility-layer="texture"] {
130
+ opacity: 0;
131
+ }
132
+
133
+ html[data-dsh-prts] [data-prts-session-pickup] {
134
+ color: var(--prts-session-pickup-fill);
135
+ fill: currentColor;
136
+ opacity: 0;
137
+ transform: translate3d(5px, 0, 0);
138
+ transform-box: view-box;
139
+ transform-origin: center;
140
+ transition: opacity 150ms ease, transform 240ms cubic-bezier(.22, 1, .36, 1);
141
+ pointer-events: none;
142
+ }
143
+
144
+ html[data-dsh-prts] [data-prts-session-row]:hover [data-prts-facility-texture="pickup"] [data-prts-session-pickup] {
145
+ opacity: .58;
146
+ transform: translate3d(0, 0, 0);
147
+ }
148
+
149
+ html[data-dsh-prts] [data-prts-session-pickup-baseline] {
150
+ fill: none;
151
+ stroke: currentColor;
152
+ stroke-width: 1;
153
+ opacity: .2;
154
+ vector-effect: non-scaling-stroke;
155
+ }
156
+
157
+ html[data-dsh-prts] [data-prts-session-pickup-indicator] {
158
+ fill: var(--prts-yellow);
159
+ }
160
+
161
+ html[data-dsh-prts] [data-prts-session-pickup-bar] {
162
+ transform-box: fill-box;
163
+ transform-origin: center;
164
+ }
165
+
166
+ html[data-dsh-prts] [data-prts-session-pickup-bar]:nth-of-type(1) { --prts-pickup-duration: 520ms; --prts-pickup-delay: -.12s; }
167
+ html[data-dsh-prts] [data-prts-session-pickup-bar]:nth-of-type(2) { --prts-pickup-duration: 1180ms; --prts-pickup-delay: -.28s; }
168
+ html[data-dsh-prts] [data-prts-session-pickup-bar]:nth-of-type(3) { --prts-pickup-duration: 760ms; --prts-pickup-delay: -.44s; }
169
+ html[data-dsh-prts] [data-prts-session-pickup-bar]:nth-of-type(4) { --prts-pickup-duration: 1420ms; --prts-pickup-delay: -.18s; }
170
+ html[data-dsh-prts] [data-prts-session-pickup-bar]:nth-of-type(5) { --prts-pickup-duration: 640ms; --prts-pickup-delay: -.36s; }
171
+ html[data-dsh-prts] [data-prts-session-pickup-bar]:nth-of-type(6) { --prts-pickup-duration: 980ms; --prts-pickup-delay: -.52s; }
172
+ html[data-dsh-prts] [data-prts-session-pickup-bar]:nth-of-type(7) { --prts-pickup-duration: 480ms; --prts-pickup-delay: -.22s; }
173
+ html[data-dsh-prts] [data-prts-session-pickup-bar]:nth-of-type(8) { --prts-pickup-duration: 1260ms; --prts-pickup-delay: -.46s; }
174
+ html[data-dsh-prts] [data-prts-session-pickup-bar]:nth-of-type(9) { --prts-pickup-duration: 720ms; --prts-pickup-delay: -.14s; }
175
+ html[data-dsh-prts] [data-prts-session-pickup-bar]:nth-of-type(10) { --prts-pickup-duration: 1520ms; --prts-pickup-delay: -.4s; }
176
+ html[data-dsh-prts] [data-prts-session-pickup-bar]:nth-of-type(11) { --prts-pickup-duration: 560ms; --prts-pickup-delay: -.3s; }
177
+
178
+ @media (prefers-reduced-motion: no-preference) {
179
+ html[data-dsh-prts]:not([data-prts-motion="reduced"]) [data-prts-session-row]:hover [data-prts-session-pickup-indicator] {
180
+ animation: prts-session-record-indicator 1.1s ease-in-out infinite;
181
+ }
182
+
183
+ html[data-dsh-prts]:not([data-prts-motion="reduced"]) [data-prts-session-row]:hover [data-prts-session-pickup-bar] {
184
+ animation: prts-session-pickup-sample var(--prts-pickup-duration) ease-in-out var(--prts-pickup-delay) infinite;
185
+ }
186
+ }
187
+
188
+ @keyframes prts-session-record-indicator {
189
+ 0%, 100% { opacity: .45; }
190
+ 50% { opacity: 1; }
191
+ }
192
+
193
+ @keyframes prts-session-pickup-sample {
194
+ 0%, 100% { transform: scaleY(.28); }
195
+ 34% { transform: scaleY(1.08); }
196
+ 57% { transform: scaleY(.46); }
197
+ 78% { transform: scaleY(.86); }
198
+ }
199
+
200
+ html[data-dsh-prts] [data-prts-session-row] {
201
+ --prts-facility-texture-color: var(--prts-muted);
202
+ --prts-session-pickup-fill: #f3f6f7;
203
+ }
204
+
205
+ html[data-dsh-prts][data-prts-scheme="light"] [data-prts-session-row] {
206
+ --prts-session-pickup-fill: #3f4d56;
207
+ }
208
+
209
+ html[data-dsh-prts] [data-prts-session-row][aria-selected="true"] {
210
+ --prts-facility-texture-color: var(--prts-yellow);
211
+ }
212
+
213
+ /* The side spine is a semantic fill, not a bordered miniature card. */
214
+ html[data-dsh-prts] [data-prts-workspace-row] > [data-prts-facility-spine],
215
+ html[data-dsh-prts] [data-prts-session-row] > [data-prts-facility-spine] {
216
+ --prts-facility-surface: var(--prts-line-strong);
217
+ position: absolute !important;
218
+ z-index: 2 !important;
219
+ inset: 0 auto 0 0;
220
+ height: 100% !important;
221
+ isolation: isolate;
222
+ width: var(--prts-spine-width);
223
+ min-width: 0;
224
+ transform: scaleX(var(--prts-spine-rest)) !important;
225
+ transform-origin: left center;
226
+ transition: transform 220ms var(--prts-ease-spring);
227
+ pointer-events: none;
228
+ }
229
+
230
+ html[data-dsh-prts] [data-prts-workspace-row] > [data-prts-facility-spine] {
231
+ --prts-facility-surface: var(--prts-cyan);
232
+ }
233
+
234
+ html[data-dsh-prts] [data-prts-session-row][aria-selected="true"] > [data-prts-facility-spine] {
235
+ --prts-facility-surface: var(--prts-yellow);
236
+ }
237
+
238
+ html[data-dsh-prts] [data-prts-facility-spine] [data-prts-facility-layer="outline"] {
239
+ display: none;
240
+ }
241
+
242
+ html[data-dsh-prts] [data-prts-workspace-row][aria-expanded="true"] > [data-prts-facility-spine],
243
+ html[data-dsh-prts] [data-prts-workspace-row]:is(:hover, :focus-within, [data-prts-row-menu-open]) > [data-prts-facility-spine],
244
+ html[data-dsh-prts] [data-prts-session-row]:is(:hover, :focus-within, [data-prts-row-menu-open]) > [data-prts-facility-spine] {
245
+ transform: scaleX(1) !important;
246
+ }
247
+
248
+ /* Switch each legacy fallback off only after its own valid vector path exists. */
249
+ html[data-dsh-prts] [data-prts-workspace-row][data-prts-spine-vector]::before,
250
+ html[data-dsh-prts] [data-prts-session-row][data-prts-spine-vector]::before {
251
+ content: none !important;
252
+ display: none !important;
253
+ }
254
+
255
+ html[data-dsh-prts] [data-prts-facility-face][data-prts-facility-vector] {
256
+ border: 0 !important;
257
+ background: transparent !important;
258
+ clip-path: none !important;
259
+ }
260
+
261
+ html[data-dsh-prts] [data-prts-facility-face][data-prts-facility-vector]::after {
262
+ content: none !important;
263
+ display: none !important;
264
+ }
265
+
266
+ html[data-dsh-prts] :is(
267
+ [data-prts-workspace-actions],
268
+ [data-prts-session-actions]
269
+ ) button[data-prts-facility-vector] {
270
+ --prts-facility-outline: var(--prts-line);
271
+ --prts-facility-surface: var(--prts-panel-raised);
272
+ overflow: visible;
273
+ border: 0 !important;
274
+ background: transparent !important;
275
+ clip-path: none !important;
276
+ }
277
+
278
+ html[data-dsh-prts] :is(
279
+ [data-prts-workspace-actions],
280
+ [data-prts-session-actions]
281
+ ) button[data-prts-facility-vector]::before {
282
+ content: none !important;
283
+ display: none !important;
284
+ }
285
+
286
+ html[data-dsh-prts] :is(
287
+ [data-prts-workspace-actions],
288
+ [data-prts-session-actions]
289
+ ) button[data-prts-facility-vector]:is(:hover, :focus-visible) {
290
+ --prts-facility-outline: var(--prts-yellow);
291
+ background: transparent !important;
292
+ }