dsh-git-worktree 0.9.2 → 0.9.3

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 (57) hide show
  1. package/CHANGELOG.md +405 -386
  2. package/LICENSE +21 -21
  3. package/NOTICE +16 -14
  4. package/README.en.md +169 -169
  5. package/README.md +169 -169
  6. package/cordis.patch.yml +11 -11
  7. package/docs/i18n.md +63 -63
  8. package/lib/adapters/initial-commit.js +3 -3
  9. package/lib/client/actions.d.ts +21 -3
  10. package/lib/client/actions.js +23 -3
  11. package/lib/client/actions.js.map +1 -1
  12. package/lib/client/console-remote/index.js +36 -8
  13. package/lib/client/console-remote/index.js.map +1 -1
  14. package/lib/client/index.js +1 -0
  15. package/lib/client/index.js.map +1 -1
  16. package/lib/client/pre-session/controller.d.ts +1 -1
  17. package/lib/client/pre-session/controller.js +33 -18
  18. package/lib/client/pre-session/controller.js.map +1 -1
  19. package/lib/client/review-console/recovery-continuation.d.ts +1 -1
  20. package/lib/client/review-console/recovery-continuation.js +9 -4
  21. package/lib/client/review-console/recovery-continuation.js.map +1 -1
  22. package/lib/client/review-console/review-console.styles.js +190 -190
  23. package/lib/client/styles.js +146 -140
  24. package/lib/client/styles.js.map +1 -1
  25. package/lib/client/target-console/target-console.styles.js +155 -155
  26. package/lib/client/workspace-sidebar/index.d.ts +11 -2
  27. package/lib/client/workspace-sidebar/index.js +50 -8
  28. package/lib/client/workspace-sidebar/index.js.map +1 -1
  29. package/lib/client.js +7624 -161
  30. package/lib/console-contract.d.ts +2 -0
  31. package/lib/console-contract.js.map +1 -1
  32. package/lib/console-host/service.js +4 -2
  33. package/lib/console-host/service.js.map +1 -1
  34. package/lib/console-remote/descriptors.js +8 -3
  35. package/lib/console-remote/descriptors.js.map +1 -1
  36. package/lib/console-remote/schemas.js +1 -0
  37. package/lib/console-remote/schemas.js.map +1 -1
  38. package/lib/host-compat.d.ts +4 -0
  39. package/lib/host-compat.js +23 -0
  40. package/lib/host-compat.js.map +1 -0
  41. package/lib/i18n/client-messages.d.ts +4 -0
  42. package/lib/i18n/client-messages.js +4 -0
  43. package/lib/i18n/client-messages.js.map +1 -1
  44. package/lib/workspace-provider-lifecycle.d.ts +2 -1
  45. package/lib/workspace-provider-lifecycle.js +6 -1
  46. package/lib/workspace-provider-lifecycle.js.map +1 -1
  47. package/package.json +151 -149
  48. package/scripts/check-publish.mjs +238 -238
  49. package/scripts/check-workspace-sidebar-version.mjs +18 -14
  50. package/scripts/clean-lib.mjs +7 -7
  51. package/scripts/dev-dsh-lib.mjs +547 -509
  52. package/scripts/dev-dsh.mjs +98 -95
  53. package/scripts/dsh-source-runner.mjs +20 -14
  54. package/scripts/workspace-sidebar-upstream-alpha.mjs +102 -0
  55. package/scripts/workspace-sidebar-upstream-next.mjs +134 -0
  56. package/scripts/workspace-sidebar-upstream.d.mts +8 -8
  57. package/scripts/workspace-sidebar-upstream.mjs +162 -162
@@ -1,157 +1,157 @@
1
- export const TARGET_CONSOLE_STYLES = String.raw `
2
- .dsh-wtc-target-chip {
3
- --wtc-state: #728096;
4
- display: inline-flex;
5
- align-items: center;
6
- gap: 6px;
7
- min-height: 24px;
8
- padding: 2px 9px;
9
- border: 1px solid color-mix(in srgb, var(--wtc-state) 35%, transparent);
10
- border-radius: 999px;
11
- background: color-mix(in srgb, var(--wtc-state) 9%, transparent);
12
- color: inherit;
13
- font-size: 12px;
14
- font-weight: 650;
15
- line-height: 1;
16
- white-space: nowrap;
17
- cursor: pointer;
18
- }
19
- .dsh-wtc-target-chip:hover { background: color-mix(in srgb, var(--wtc-state) 15%, transparent); }
20
- .dsh-wtc-target-chip:focus-visible { outline: 2px solid #5b8fe8; outline-offset: 2px; }
21
- .dsh-wtc-target-chevron {
22
- width: 6px;
23
- height: 6px;
24
- margin: -3px 1px 0 2px;
25
- flex: 0 0 auto;
26
- border-right: 1.5px solid currentColor;
27
- border-bottom: 1.5px solid currentColor;
28
- opacity: .58;
29
- transform: rotate(45deg);
30
- }
31
- .dsh-wtc-menu-summary { display: grid; gap: 3px; min-width: 250px; text-align: left; white-space: normal; }
32
- .dsh-wtc-menu-summary strong { font-size: 12px; color: inherit; }
33
- .dsh-wtc-menu-summary span { color: color-mix(in srgb, currentColor 64%, transparent); font-size: 11px; line-height: 1.35; }
34
- .dsh-wtc-menu-summary .dsh-wtc-menu-error { color: #c44747; }
35
- .dsh-wtc-target-dot, .dsh-wtc-state-dot {
36
- width: 7px;
37
- height: 7px;
38
- flex: 0 0 auto;
39
- border-radius: 999px;
40
- background: var(--wtc-state);
41
- box-shadow: 0 0 0 3px color-mix(in srgb, var(--wtc-state) 15%, transparent);
42
- }
43
- .dsh-wtc-target-chip[data-target-state="creating"] { --wtc-state: #c47a1c; }
44
- .dsh-wtc-target-chip[data-target-state="working"] { --wtc-state: #2676dc; }
45
- .dsh-wtc-target-chip[data-target-state="ready_for_review"] { --wtc-state: #25885d; }
46
- .dsh-wtc-target-chip[data-target-state="retained"] { --wtc-state: #6b5bd2; }
47
- .dsh-wtc-target-chip[data-target-state="cleanup_pending"] { --wtc-state: #c47a1c; }
48
- .dsh-wtc-target-chip[data-target-state="recovery_required"],
49
- .dsh-wtc-target-chip[data-target-state="error"] { --wtc-state: #c94747; }
50
- .dsh-wtc-target-chip[data-target-state="delivered"] { opacity: .66; }
51
- .dsh-wtc-target-expiry { color: color-mix(in srgb, currentColor 62%, transparent); font-weight: 520; }
52
-
53
- .dsh-wtc-console {
54
- --wtc-ink: color-mix(in srgb, currentColor 94%, transparent);
55
- --wtc-muted: color-mix(in srgb, currentColor 58%, transparent);
56
- --wtc-line: color-mix(in srgb, currentColor 14%, transparent);
57
- --wtc-panel: color-mix(in srgb, currentColor 4%, transparent);
58
- --wtc-blue: #2f6fd0;
59
- --wtc-red: #c44747;
60
- position: relative;
61
- display: grid;
62
- gap: 14px;
63
- min-width: 0;
64
- width: 100%;
65
- padding: 18px clamp(12px, 3vw, 26px) 28px;
66
- color: var(--wtc-ink);
67
- box-sizing: border-box;
68
- }
69
- .dsh-wtc-console h2, .dsh-wtc-console h3 { margin: 0; letter-spacing: -.025em; }
70
- .dsh-wtc-console h2 { font-size: clamp(20px, 3vw, 28px); font-weight: 720; }
71
- .dsh-wtc-console h3 { font-size: 15px; font-weight: 680; }
72
- .dsh-wtc-console-head, .dsh-wtc-section-head, .dsh-wtc-current,
73
- .dsh-wtc-row, .dsh-wtc-row-title, .dsh-wtc-row-actions, .dsh-wtc-current-actions {
74
- display: flex;
75
- align-items: center;
76
- }
77
- .dsh-wtc-console-head, .dsh-wtc-section-head, .dsh-wtc-current, .dsh-wtc-row { justify-content: space-between; }
78
- .dsh-wtc-console-head { gap: 16px; }
79
- .dsh-wtc-kicker, .dsh-wtc-label {
80
- display: block;
81
- color: var(--wtc-muted);
82
- font-size: 10px;
83
- font-weight: 720;
84
- letter-spacing: .1em;
85
- text-transform: uppercase;
86
- }
87
- .dsh-wtc-kicker { margin-bottom: 3px; }
88
- .dsh-wtc-current, .dsh-wtc-list-section {
89
- min-width: 0;
90
- border: 1px solid var(--wtc-line);
91
- border-radius: 14px;
92
- background: linear-gradient(145deg, color-mix(in srgb, currentColor 3%, transparent), transparent 52%);
93
- }
94
- .dsh-wtc-current { gap: 16px; padding: 14px 16px; }
95
- .dsh-wtc-current > div:first-child { min-width: 0; display: grid; gap: 3px; }
96
- .dsh-wtc-current strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
97
- .dsh-wtc-current-actions, .dsh-wtc-row-actions { gap: 7px; flex-wrap: wrap; justify-content: flex-end; }
98
- .dsh-wtc-list-section { overflow: hidden; }
99
- .dsh-wtc-section-head { padding: 12px 14px; border-bottom: 1px solid var(--wtc-line); }
100
- .dsh-wtc-count { min-width: 26px; padding: 3px 7px; border-radius: 999px; background: var(--wtc-panel); color: var(--wtc-muted); text-align: center; font-size: 11px; }
101
- .dsh-wtc-list { list-style: none; margin: 0; padding: 0; }
102
- .dsh-wtc-row { position: relative; gap: 14px; min-width: 0; padding: 12px 14px; border-bottom: 1px solid var(--wtc-line); }
103
- .dsh-wtc-row:last-child { border-bottom: 0; }
104
- .dsh-wtc-row[data-current-target="true"] { background: color-mix(in srgb, var(--wtc-blue) 6%, transparent); }
105
- .dsh-wtc-row-main { min-width: 0; display: grid; gap: 6px; }
106
- .dsh-wtc-row-title { min-width: 0; gap: 10px; }
107
- .dsh-wtc-row-id { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font: 600 12px ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; }
108
- .dsh-wtc-relation { flex: 0 0 auto; padding: 2px 6px; border-radius: 999px; background: var(--wtc-panel); color: var(--wtc-muted); font-size: 10px; font-weight: 650; }
109
- .dsh-wtc-state { --wtc-state: #728096; display: inline-flex; align-items: center; gap: 6px; flex: 0 0 auto; font-size: 12px; font-weight: 680; }
110
- .dsh-wtc-state[data-target-state="creating"], .dsh-wtc-state[data-target-state="cleanup_pending"] { --wtc-state: #c47a1c; }
111
- .dsh-wtc-state[data-target-state="working"] { --wtc-state: #2676dc; }
112
- .dsh-wtc-state[data-target-state="ready_for_review"] { --wtc-state: #25885d; }
113
- .dsh-wtc-state[data-target-state="retained"] { --wtc-state: #6b5bd2; }
114
- .dsh-wtc-state[data-target-state="recovery_required"] { --wtc-state: #c94747; }
115
- .dsh-wtc-state[data-target-state="delivered"] { opacity: .66; }
116
- .dsh-wtc-facts { display: flex; flex-wrap: wrap; gap: 4px 10px; color: var(--wtc-muted); font-size: 11px; }
117
- .dsh-wtc-recovery-message { color: var(--wtc-red); font-weight: 620; }
118
- .dsh-wtc-revision { color: var(--wtc-muted); font: 11px ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; }
119
- .dsh-wtc-button {
120
- min-height: 30px;
121
- border: 1px solid var(--wtc-line);
122
- border-radius: 8px;
123
- padding: 5px 9px;
124
- background: transparent;
125
- color: inherit;
126
- font: inherit;
127
- font-size: 12px;
128
- font-weight: 650;
129
- cursor: pointer;
130
- }
131
- .dsh-wtc-button:hover:not(:disabled) { background: color-mix(in srgb, currentColor 7%, transparent); border-color: color-mix(in srgb, currentColor 30%, transparent); }
132
- .dsh-wtc-button:focus-visible { outline: 2px solid #5b8fe8; outline-offset: 2px; }
133
- .dsh-wtc-button:disabled { opacity: .5; cursor: wait; }
134
- .dsh-wtc-primary { color: white; border-color: var(--wtc-blue); background: var(--wtc-blue); }
135
- .dsh-wtc-danger { color: var(--wtc-red); }
136
- .dsh-wtc-empty, .dsh-wtc-loading { padding: 24px 14px; color: var(--wtc-muted); text-align: center; }
137
- .dsh-wtc-error { padding: 10px 12px; border: 1px solid color-mix(in srgb, var(--wtc-red) 35%, transparent); border-radius: 10px; background: color-mix(in srgb, var(--wtc-red) 8%, transparent); color: var(--wtc-red); overflow-wrap: anywhere; }
138
- .dsh-wtc-confirm { position: absolute; z-index: 2; inset: 12px; align-self: start; display: grid; gap: 10px; max-width: 520px; margin: 64px auto 0; padding: 18px; border: 1px solid color-mix(in srgb, var(--wtc-red) 35%, var(--wtc-line)); border-radius: 14px; background: Canvas; color: CanvasText; box-shadow: 0 20px 60px rgba(0,0,0,.24); }
139
- .dsh-wtc-confirm p { margin: 0; color: color-mix(in srgb, currentColor 68%, transparent); line-height: 1.5; }
140
- .dsh-wtc-confirm-actions { display: flex; justify-content: flex-end; gap: 8px; flex-wrap: wrap; }
141
- .dsh-wtc-manager-dialog { width: min(960px, calc(100vw - 32px)); max-width: 960px; max-height: min(86vh, 900px); }
142
- .dsh-wtc-manager-content { overflow: auto; min-height: 0; }
143
- .dsh-wtc-manager-content .dsh-wtc-console { padding: 4px 0 8px; }
144
- @media (max-width: 620px) {
145
- .dsh-wtc-current, .dsh-wtc-row { align-items: flex-start; flex-direction: column; }
146
- .dsh-wtc-current-actions, .dsh-wtc-row-actions { width: 100%; justify-content: flex-start; }
147
- }
148
- .dsh-wtc-button, .dsh-wtc-link { display:inline-flex; align-items:center; gap:6px; }
149
- .dsh-wtc-button .dsh-wt-icon, .dsh-wtc-link .dsh-wt-icon { width:16px; height:16px; flex:0 0 16px; }
150
- .dsh-wtc-target-kind { width:14px; height:14px; flex:0 0 14px; }
151
- .dsh-wtc-target-chip .dsh-wtc-target-chevron { width:12px; height:12px; border:0; transform:none; margin:0; }
152
- .dsh-wtc-target-chip[aria-expanded="true"] .dsh-wtc-target-chevron { transform:rotate(180deg); }
153
- .dsh-wtc-console-head[data-embedded] { justify-content:flex-end; }
154
- .dsh-wtc-task-name { min-width:0; overflow-wrap:anywhere; font-weight:500; }
155
- .dsh-wtc-facts .dsh-wtc-checkout-id { font-size:11px; overflow-wrap:anywhere; }
1
+ export const TARGET_CONSOLE_STYLES = String.raw `
2
+ .dsh-wtc-target-chip {
3
+ --wtc-state: #728096;
4
+ display: inline-flex;
5
+ align-items: center;
6
+ gap: 6px;
7
+ min-height: 24px;
8
+ padding: 2px 9px;
9
+ border: 1px solid color-mix(in srgb, var(--wtc-state) 35%, transparent);
10
+ border-radius: 999px;
11
+ background: color-mix(in srgb, var(--wtc-state) 9%, transparent);
12
+ color: inherit;
13
+ font-size: 12px;
14
+ font-weight: 650;
15
+ line-height: 1;
16
+ white-space: nowrap;
17
+ cursor: pointer;
18
+ }
19
+ .dsh-wtc-target-chip:hover { background: color-mix(in srgb, var(--wtc-state) 15%, transparent); }
20
+ .dsh-wtc-target-chip:focus-visible { outline: 2px solid #5b8fe8; outline-offset: 2px; }
21
+ .dsh-wtc-target-chevron {
22
+ width: 6px;
23
+ height: 6px;
24
+ margin: -3px 1px 0 2px;
25
+ flex: 0 0 auto;
26
+ border-right: 1.5px solid currentColor;
27
+ border-bottom: 1.5px solid currentColor;
28
+ opacity: .58;
29
+ transform: rotate(45deg);
30
+ }
31
+ .dsh-wtc-menu-summary { display: grid; gap: 3px; min-width: 250px; text-align: left; white-space: normal; }
32
+ .dsh-wtc-menu-summary strong { font-size: 12px; color: inherit; }
33
+ .dsh-wtc-menu-summary span { color: color-mix(in srgb, currentColor 64%, transparent); font-size: 11px; line-height: 1.35; }
34
+ .dsh-wtc-menu-summary .dsh-wtc-menu-error { color: #c44747; }
35
+ .dsh-wtc-target-dot, .dsh-wtc-state-dot {
36
+ width: 7px;
37
+ height: 7px;
38
+ flex: 0 0 auto;
39
+ border-radius: 999px;
40
+ background: var(--wtc-state);
41
+ box-shadow: 0 0 0 3px color-mix(in srgb, var(--wtc-state) 15%, transparent);
42
+ }
43
+ .dsh-wtc-target-chip[data-target-state="creating"] { --wtc-state: #c47a1c; }
44
+ .dsh-wtc-target-chip[data-target-state="working"] { --wtc-state: #2676dc; }
45
+ .dsh-wtc-target-chip[data-target-state="ready_for_review"] { --wtc-state: #25885d; }
46
+ .dsh-wtc-target-chip[data-target-state="retained"] { --wtc-state: #6b5bd2; }
47
+ .dsh-wtc-target-chip[data-target-state="cleanup_pending"] { --wtc-state: #c47a1c; }
48
+ .dsh-wtc-target-chip[data-target-state="recovery_required"],
49
+ .dsh-wtc-target-chip[data-target-state="error"] { --wtc-state: #c94747; }
50
+ .dsh-wtc-target-chip[data-target-state="delivered"] { opacity: .66; }
51
+ .dsh-wtc-target-expiry { color: color-mix(in srgb, currentColor 62%, transparent); font-weight: 520; }
52
+
53
+ .dsh-wtc-console {
54
+ --wtc-ink: color-mix(in srgb, currentColor 94%, transparent);
55
+ --wtc-muted: color-mix(in srgb, currentColor 58%, transparent);
56
+ --wtc-line: color-mix(in srgb, currentColor 14%, transparent);
57
+ --wtc-panel: color-mix(in srgb, currentColor 4%, transparent);
58
+ --wtc-blue: #2f6fd0;
59
+ --wtc-red: #c44747;
60
+ position: relative;
61
+ display: grid;
62
+ gap: 14px;
63
+ min-width: 0;
64
+ width: 100%;
65
+ padding: 18px clamp(12px, 3vw, 26px) 28px;
66
+ color: var(--wtc-ink);
67
+ box-sizing: border-box;
68
+ }
69
+ .dsh-wtc-console h2, .dsh-wtc-console h3 { margin: 0; letter-spacing: -.025em; }
70
+ .dsh-wtc-console h2 { font-size: clamp(20px, 3vw, 28px); font-weight: 720; }
71
+ .dsh-wtc-console h3 { font-size: 15px; font-weight: 680; }
72
+ .dsh-wtc-console-head, .dsh-wtc-section-head, .dsh-wtc-current,
73
+ .dsh-wtc-row, .dsh-wtc-row-title, .dsh-wtc-row-actions, .dsh-wtc-current-actions {
74
+ display: flex;
75
+ align-items: center;
76
+ }
77
+ .dsh-wtc-console-head, .dsh-wtc-section-head, .dsh-wtc-current, .dsh-wtc-row { justify-content: space-between; }
78
+ .dsh-wtc-console-head { gap: 16px; }
79
+ .dsh-wtc-kicker, .dsh-wtc-label {
80
+ display: block;
81
+ color: var(--wtc-muted);
82
+ font-size: 10px;
83
+ font-weight: 720;
84
+ letter-spacing: .1em;
85
+ text-transform: uppercase;
86
+ }
87
+ .dsh-wtc-kicker { margin-bottom: 3px; }
88
+ .dsh-wtc-current, .dsh-wtc-list-section {
89
+ min-width: 0;
90
+ border: 1px solid var(--wtc-line);
91
+ border-radius: 14px;
92
+ background: linear-gradient(145deg, color-mix(in srgb, currentColor 3%, transparent), transparent 52%);
93
+ }
94
+ .dsh-wtc-current { gap: 16px; padding: 14px 16px; }
95
+ .dsh-wtc-current > div:first-child { min-width: 0; display: grid; gap: 3px; }
96
+ .dsh-wtc-current strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
97
+ .dsh-wtc-current-actions, .dsh-wtc-row-actions { gap: 7px; flex-wrap: wrap; justify-content: flex-end; }
98
+ .dsh-wtc-list-section { overflow: hidden; }
99
+ .dsh-wtc-section-head { padding: 12px 14px; border-bottom: 1px solid var(--wtc-line); }
100
+ .dsh-wtc-count { min-width: 26px; padding: 3px 7px; border-radius: 999px; background: var(--wtc-panel); color: var(--wtc-muted); text-align: center; font-size: 11px; }
101
+ .dsh-wtc-list { list-style: none; margin: 0; padding: 0; }
102
+ .dsh-wtc-row { position: relative; gap: 14px; min-width: 0; padding: 12px 14px; border-bottom: 1px solid var(--wtc-line); }
103
+ .dsh-wtc-row:last-child { border-bottom: 0; }
104
+ .dsh-wtc-row[data-current-target="true"] { background: color-mix(in srgb, var(--wtc-blue) 6%, transparent); }
105
+ .dsh-wtc-row-main { min-width: 0; display: grid; gap: 6px; }
106
+ .dsh-wtc-row-title { min-width: 0; gap: 10px; }
107
+ .dsh-wtc-row-id { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font: 600 12px ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; }
108
+ .dsh-wtc-relation { flex: 0 0 auto; padding: 2px 6px; border-radius: 999px; background: var(--wtc-panel); color: var(--wtc-muted); font-size: 10px; font-weight: 650; }
109
+ .dsh-wtc-state { --wtc-state: #728096; display: inline-flex; align-items: center; gap: 6px; flex: 0 0 auto; font-size: 12px; font-weight: 680; }
110
+ .dsh-wtc-state[data-target-state="creating"], .dsh-wtc-state[data-target-state="cleanup_pending"] { --wtc-state: #c47a1c; }
111
+ .dsh-wtc-state[data-target-state="working"] { --wtc-state: #2676dc; }
112
+ .dsh-wtc-state[data-target-state="ready_for_review"] { --wtc-state: #25885d; }
113
+ .dsh-wtc-state[data-target-state="retained"] { --wtc-state: #6b5bd2; }
114
+ .dsh-wtc-state[data-target-state="recovery_required"] { --wtc-state: #c94747; }
115
+ .dsh-wtc-state[data-target-state="delivered"] { opacity: .66; }
116
+ .dsh-wtc-facts { display: flex; flex-wrap: wrap; gap: 4px 10px; color: var(--wtc-muted); font-size: 11px; }
117
+ .dsh-wtc-recovery-message { color: var(--wtc-red); font-weight: 620; }
118
+ .dsh-wtc-revision { color: var(--wtc-muted); font: 11px ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; }
119
+ .dsh-wtc-button {
120
+ min-height: 30px;
121
+ border: 1px solid var(--wtc-line);
122
+ border-radius: 8px;
123
+ padding: 5px 9px;
124
+ background: transparent;
125
+ color: inherit;
126
+ font: inherit;
127
+ font-size: 12px;
128
+ font-weight: 650;
129
+ cursor: pointer;
130
+ }
131
+ .dsh-wtc-button:hover:not(:disabled) { background: color-mix(in srgb, currentColor 7%, transparent); border-color: color-mix(in srgb, currentColor 30%, transparent); }
132
+ .dsh-wtc-button:focus-visible { outline: 2px solid #5b8fe8; outline-offset: 2px; }
133
+ .dsh-wtc-button:disabled { opacity: .5; cursor: wait; }
134
+ .dsh-wtc-primary { color: white; border-color: var(--wtc-blue); background: var(--wtc-blue); }
135
+ .dsh-wtc-danger { color: var(--wtc-red); }
136
+ .dsh-wtc-empty, .dsh-wtc-loading { padding: 24px 14px; color: var(--wtc-muted); text-align: center; }
137
+ .dsh-wtc-error { padding: 10px 12px; border: 1px solid color-mix(in srgb, var(--wtc-red) 35%, transparent); border-radius: 10px; background: color-mix(in srgb, var(--wtc-red) 8%, transparent); color: var(--wtc-red); overflow-wrap: anywhere; }
138
+ .dsh-wtc-confirm { position: absolute; z-index: 2; inset: 12px; align-self: start; display: grid; gap: 10px; max-width: 520px; margin: 64px auto 0; padding: 18px; border: 1px solid color-mix(in srgb, var(--wtc-red) 35%, var(--wtc-line)); border-radius: 14px; background: Canvas; color: CanvasText; box-shadow: 0 20px 60px rgba(0,0,0,.24); }
139
+ .dsh-wtc-confirm p { margin: 0; color: color-mix(in srgb, currentColor 68%, transparent); line-height: 1.5; }
140
+ .dsh-wtc-confirm-actions { display: flex; justify-content: flex-end; gap: 8px; flex-wrap: wrap; }
141
+ .dsh-wtc-manager-dialog { width: min(960px, calc(100vw - 32px)); max-width: 960px; max-height: min(86vh, 900px); }
142
+ .dsh-wtc-manager-content { overflow: auto; min-height: 0; }
143
+ .dsh-wtc-manager-content .dsh-wtc-console { padding: 4px 0 8px; }
144
+ @media (max-width: 620px) {
145
+ .dsh-wtc-current, .dsh-wtc-row { align-items: flex-start; flex-direction: column; }
146
+ .dsh-wtc-current-actions, .dsh-wtc-row-actions { width: 100%; justify-content: flex-start; }
147
+ }
148
+ .dsh-wtc-button, .dsh-wtc-link { display:inline-flex; align-items:center; gap:6px; }
149
+ .dsh-wtc-button .dsh-wt-icon, .dsh-wtc-link .dsh-wt-icon { width:16px; height:16px; flex:0 0 16px; }
150
+ .dsh-wtc-target-kind { width:14px; height:14px; flex:0 0 14px; }
151
+ .dsh-wtc-target-chip .dsh-wtc-target-chevron { width:12px; height:12px; border:0; transform:none; margin:0; }
152
+ .dsh-wtc-target-chip[aria-expanded="true"] .dsh-wtc-target-chevron { transform:rotate(180deg); }
153
+ .dsh-wtc-console-head[data-embedded] { justify-content:flex-end; }
154
+ .dsh-wtc-task-name { min-width:0; overflow-wrap:anywhere; font-weight:500; }
155
+ .dsh-wtc-facts .dsh-wtc-checkout-id { font-size:11px; overflow-wrap:anywhere; }
156
156
  `;
157
157
  //# sourceMappingURL=target-console.styles.js.map
@@ -1,4 +1,5 @@
1
1
  import { type ComponentType } from 'react';
2
+ import type { Context } from '@deepseek-ai/cordis';
2
3
  import type { WorkspaceBrowserProps } from '@deepseek-ai/dsh-client-ui-workspace/client';
3
4
  import type { WorktreeConsoleAdapter, WorktreeSidebarTopologyResponse } from '../../console-contract.js';
4
5
  /** Ephemeral presentation metadata consumed only by the gated official Browser derivative. */
@@ -8,15 +9,23 @@ export interface ManagedWorktreeSessionDecoration {
8
9
  label: string;
9
10
  originalTitle: string;
10
11
  }
12
+ interface ManagedWorkspaceGuard {
13
+ ready: boolean;
14
+ sessionIds: ReadonlySet<string>;
15
+ workspaceIds: ReadonlySet<string>;
16
+ blockSession(id: string): boolean;
17
+ blockWorkspace(id: string): boolean;
18
+ }
11
19
  interface OfficialWorkspaceBrowserProps extends WorkspaceBrowserProps {
12
20
  adapter: WorktreeConsoleAdapter;
13
21
  OfficialBrowser: ComponentType<WorkspaceBrowserProps>;
22
+ guard?: ManagedWorkspaceGuard;
14
23
  }
15
24
  /**
16
25
  * Preserve the complete official Workspace Browser and change only its data
17
26
  * projection plus mutations that are unsafe for one-to-one Managed owners.
18
27
  */
19
- export declare function ManagedOfficialWorkspaceBrowser({ adapter, OfficialBrowser, ...officialProps }: OfficialWorkspaceBrowserProps): import("react").JSX.Element;
28
+ export declare function ManagedOfficialWorkspaceBrowser({ adapter, OfficialBrowser, guard, ...officialProps }: OfficialWorkspaceBrowserProps): import("react").JSX.Element;
20
29
  interface SidebarRegistrationContext {
21
30
  slots: {
22
31
  inject(name: string, callback: () => unknown): void;
@@ -29,5 +38,5 @@ interface SidebarRegistrationContext {
29
38
  * replacing only its Browser component while preserving its declaration tree,
30
39
  * locale, picker, stores, and directory-flow authorization.
31
40
  */
32
- export declare function registerManagedWorkspaceSidebar(ctx: SidebarRegistrationContext, adapter: WorktreeConsoleAdapter): void;
41
+ export declare function registerManagedWorkspaceSidebar(ctx: SidebarRegistrationContext, adapter: WorktreeConsoleAdapter, applyWorkspace?: (ctx: Context) => void): void;
33
42
  export {};
@@ -1,20 +1,22 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { ClientI18nProvider, useClientTranslator } from '../i18n.js';
3
- import { useEffect, useMemo, useState } from 'react';
3
+ import { useEffect, useLayoutEffect, useMemo, useState } from 'react';
4
4
  import { apply as applyOfficialWorkspace } from 'virtual:dsh-official-workspace-client';
5
5
  import { WORKTREE_REVIEW_REFRESH_EVENT } from '../review-console/status-events.js';
6
+ import { selectedSessionId } from '../actions.js';
6
7
  import { projectManagedWorkspaceSidebar } from './model.js';
7
8
  const EMPTY_TOPOLOGY = { projects: [] };
8
9
  /**
9
10
  * Preserve the complete official Workspace Browser and change only its data
10
11
  * projection plus mutations that are unsafe for one-to-one Managed owners.
11
12
  */
12
- export function ManagedOfficialWorkspaceBrowser({ adapter, OfficialBrowser, ...officialProps }) {
13
+ export function ManagedOfficialWorkspaceBrowser({ adapter, OfficialBrowser, guard, ...officialProps }) {
13
14
  const t = useClientTranslator();
14
15
  const props = officialProps;
15
16
  const workspaceState = props.useWorkspaces((state) => state);
16
17
  const sessionState = props.useSessions((state) => state);
17
18
  const [topology, setTopology] = useState(EMPTY_TOPOLOGY);
19
+ const [topologyVerified, setTopologyVerified] = useState(false);
18
20
  const workspaceKey = workspaceState.items
19
21
  .map(workspace => `${workspace.workspaceId}:${workspace.sessionIds.join(',')}`)
20
22
  .join('|');
@@ -22,29 +24,44 @@ export function ManagedOfficialWorkspaceBrowser({ adapter, OfficialBrowser, ...o
22
24
  useEffect(() => {
23
25
  let active = true;
24
26
  const refresh = () => {
27
+ if (guard)
28
+ guard.ready = false;
25
29
  void adapter.sidebarTopology().then(outcome => {
26
30
  if (!active)
27
31
  return;
28
32
  setTopology(outcome.ok ? outcome.value : EMPTY_TOPOLOGY);
33
+ setTopologyVerified(outcome.ok);
29
34
  }, () => {
30
- if (active)
35
+ if (active) {
31
36
  setTopology(EMPTY_TOPOLOGY);
37
+ setTopologyVerified(false);
38
+ }
32
39
  });
33
40
  };
34
41
  refresh();
35
42
  window.addEventListener(WORKTREE_REVIEW_REFRESH_EVENT, refresh);
36
43
  return () => {
37
44
  active = false;
45
+ if (guard)
46
+ guard.ready = false;
38
47
  window.removeEventListener(WORKTREE_REVIEW_REFRESH_EVENT, refresh);
39
48
  };
40
- }, [adapter, sessionKey, workspaceKey]);
49
+ }, [adapter, guard, sessionKey, workspaceKey]);
41
50
  const projection = useMemo(() => projectManagedWorkspaceSidebar({
42
51
  workspaces: workspaceState.items,
43
52
  sessions: sessionState.byId,
44
53
  topology,
45
54
  archivedSessionIds: workspaceState.archivedSessionIds,
46
- currentSessionId: sessionState.current,
55
+ currentSessionId: selectedSessionId(sessionState),
47
56
  }, t), [sessionState.byId, sessionState.current, topology, workspaceState.items, workspaceState.archivedSessionIds, t]);
57
+ useLayoutEffect(() => {
58
+ if (!guard)
59
+ return;
60
+ guard.sessionIds = projection.protectedSessionIds;
61
+ guard.workspaceIds = projection.protectedWorkspaceIds;
62
+ guard.ready = topologyVerified;
63
+ return () => { guard.ready = false; };
64
+ }, [guard, projection, topologyVerified]);
48
65
  const projectedWorkspaceState = useMemo(() => ({
49
66
  ...workspaceState,
50
67
  items: projection.workspaces.map(workspace => projection.protectedWorkspaceIds.has(workspace.workspaceId)
@@ -99,14 +116,34 @@ export function ManagedOfficialWorkspaceBrowser({ adapter, OfficialBrowser, ...o
99
116
  } });
100
117
  }
101
118
  function officialContextProxy(ctx, adapter) {
119
+ // Service-level guards also cover the newer official shortcut/menu seats,
120
+ // which call uiWorkspace directly rather than invoking Browser props.
121
+ const guard = {
122
+ ready: false,
123
+ sessionIds: new Set(),
124
+ workspaceIds: new Set(),
125
+ blockSession(id) { return !this.ready || this.sessionIds.has(id); },
126
+ blockWorkspace(id) { return !this.ready || this.workspaceIds.has(id); },
127
+ };
102
128
  const proxySlots = new Proxy(ctx.slots, {
103
129
  get(target, key, receiver) {
104
130
  if (key === 'register') {
105
131
  return (descriptor, component) => {
132
+ if ((descriptor.name === 'sidebar.workspaces.session.menu.item'
133
+ || descriptor.name === 'sidebar.workspaces.session.row.action')
134
+ && descriptor.id !== 'pin') {
135
+ // The only owner-safe built-in row action is pin. Third-party actions
136
+ // remain available on ordinary Sessions, but never on a managed owner.
137
+ const Action = component;
138
+ const GuardedAction = (props) => typeof props.sessionId === 'string' && !guard.blockSession(props.sessionId)
139
+ ? _jsx(Action, { ...props })
140
+ : null;
141
+ return target.register(descriptor, GuardedAction);
142
+ }
106
143
  if (descriptor.name !== 'sidebar.workspaces')
107
144
  return target.register(descriptor, component);
108
145
  const OfficialBrowser = component;
109
- const Browser = (props) => _jsx(ClientI18nProvider, { locale: typeof ctx.get === 'function' ? ctx.get('locale') : undefined, children: _jsx(ManagedOfficialWorkspaceBrowser, { ...props, adapter: adapter, OfficialBrowser: OfficialBrowser }) });
146
+ const Browser = (props) => _jsx(ClientI18nProvider, { locale: typeof ctx.get === 'function' ? ctx.get('locale') : undefined, children: _jsx(ManagedOfficialWorkspaceBrowser, { ...props, adapter: adapter, OfficialBrowser: OfficialBrowser, guard: guard }) });
110
147
  return target.register(descriptor, Browser);
111
148
  };
112
149
  }
@@ -117,6 +154,11 @@ function officialContextProxy(ctx, adapter) {
117
154
  get(target, key, receiver) {
118
155
  if (key === 'slots')
119
156
  return proxySlots;
157
+ if (key === 'get' && typeof target.get === 'function') {
158
+ return (name) => name === '__dshGitWorktreeManagedGuard'
159
+ ? guard
160
+ : target.get.call(target, name);
161
+ }
120
162
  return Reflect.get(target, key, receiver);
121
163
  },
122
164
  });
@@ -126,7 +168,7 @@ function officialContextProxy(ctx, adapter) {
126
168
  * replacing only its Browser component while preserving its declaration tree,
127
169
  * locale, picker, stores, and directory-flow authorization.
128
170
  */
129
- export function registerManagedWorkspaceSidebar(ctx, adapter) {
130
- applyOfficialWorkspace(officialContextProxy(ctx, adapter));
171
+ export function registerManagedWorkspaceSidebar(ctx, adapter, applyWorkspace = applyOfficialWorkspace) {
172
+ applyWorkspace(officialContextProxy(ctx, adapter));
131
173
  }
132
174
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/client/workspace-sidebar/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/client/workspace-sidebar/index.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AACpE,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,OAAO,EAAE,QAAQ,EAAsB,MAAM,OAAO,CAAA;AAKzF,OAAO,EAAE,KAAK,IAAI,sBAAsB,EAAE,MAAM,uCAAuC,CAAA;AAGvF,OAAO,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAA;AAClF,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AACjD,OAAO,EAAE,8BAA8B,EAAE,MAAM,YAAY,CAAA;AAE3D,MAAM,cAAc,GAAoC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAA;AAwBxE;;;GAGG;AACH,MAAM,UAAU,+BAA+B,CAAC,EAC9C,OAAO,EACP,eAAe,EACf,KAAK,EACL,GAAG,aAAa,EACc;IAC9B,MAAM,CAAC,GAAG,mBAAmB,EAAE,CAAA;IAC/B,MAAM,KAAK,GAAG,aAAiD,CAAA;IAC/D,MAAM,cAAc,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC,KAAyB,EAAE,EAAE,CAAC,KAAK,CAAuB,CAAA;IACtG,MAAM,YAAY,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,KAAuB,EAAE,EAAE,CAAC,KAAK,CAAqB,CAAA;IAC9F,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAkC,cAAc,CAAC,CAAA;IACzF,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IAC/D,MAAM,YAAY,GAAG,cAAc,CAAC,KAAK;SACtC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,WAAW,IAAI,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;SAC9E,IAAI,CAAC,GAAG,CAAC,CAAA;IACZ,MAAM,UAAU,GAAG,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAE7C,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,MAAM,GAAG,IAAI,CAAA;QACjB,MAAM,OAAO,GAAG,GAAS,EAAE;YACzB,IAAI,KAAK;gBAAE,KAAK,CAAC,KAAK,GAAG,KAAK,CAAA;YAC9B,KAAK,OAAO,CAAC,eAAe,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;gBAC5C,IAAI,CAAC,MAAM;oBAAE,OAAM;gBACnB,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,cAAc,CAAC,CAAA;gBACxD,mBAAmB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;YACjC,CAAC,EAAE,GAAG,EAAE;gBACN,IAAI,MAAM,EAAE,CAAC;oBACX,WAAW,CAAC,cAAc,CAAC,CAAA;oBAC3B,mBAAmB,CAAC,KAAK,CAAC,CAAA;gBAC5B,CAAC;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,CAAA;QACD,OAAO,EAAE,CAAA;QACT,MAAM,CAAC,gBAAgB,CAAC,6BAA6B,EAAE,OAAO,CAAC,CAAA;QAC/D,OAAO,GAAG,EAAE;YACV,MAAM,GAAG,KAAK,CAAA;YACd,IAAI,KAAK;gBAAE,KAAK,CAAC,KAAK,GAAG,KAAK,CAAA;YAC9B,MAAM,CAAC,mBAAmB,CAAC,6BAA6B,EAAE,OAAO,CAAC,CAAA;QACpE,CAAC,CAAA;IACH,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC,CAAA;IAE9C,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,8BAA8B,CAAC;QAC9D,UAAU,EAAE,cAAc,CAAC,KAAK;QAChC,QAAQ,EAAE,YAAY,CAAC,IAAI;QAC3B,QAAQ;QACR,kBAAkB,EAAE,cAAc,CAAC,kBAAkB;QACrD,gBAAgB,EAAE,iBAAiB,CAAC,YAAY,CAAC;KAClD,EAAE,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,YAAY,CAAC,OAAO,EAAE,QAAQ,EAAE,cAAc,CAAC,KAAK,EAAE,cAAc,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC,CAAA;IAEvH,eAAe,CAAC,GAAG,EAAE;QACnB,IAAI,CAAC,KAAK;YAAE,OAAM;QAClB,KAAK,CAAC,UAAU,GAAG,UAAU,CAAC,mBAAmB,CAAA;QACjD,KAAK,CAAC,YAAY,GAAG,UAAU,CAAC,qBAAqB,CAAA;QACrD,KAAK,CAAC,KAAK,GAAG,gBAAgB,CAAA;QAC9B,OAAO,GAAG,EAAE,GAAG,KAAK,CAAC,KAAK,GAAG,KAAK,CAAA,CAAC,CAAC,CAAA;IACtC,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,gBAAgB,CAAC,CAAC,CAAA;IAEzC,MAAM,uBAAuB,GAAG,OAAO,CAAqB,GAAG,EAAE,CAAC,CAAC;QACjE,GAAG,cAAc;QACjB,KAAK,EAAE,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,UAAU,CAAC,qBAAqB,CAAC,GAAG,CAAC,SAAS,CAAC,WAAW,CAAC;YACvG,CAAC,CAAC,EAAE,GAAG,SAAS,EAAE,yBAAyB,EAAE,IAAI,EAAE;YACnD,CAAC,CAAC,SAAS,CAA2C;KACzD,CAAC,EAAE,CAAC,UAAU,CAAC,qBAAqB,EAAE,UAAU,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC,CAAA;IAC9E,MAAM,qBAAqB,GAAG,OAAO,CAAmB,GAAG,EAAE;QAC3D,MAAM,IAAI,GAAG,EAAE,GAAG,YAAY,CAAC,IAAI,EAAE,CAAA;QACrC,KAAK,MAAM,SAAS,IAAI,UAAU,CAAC,oBAAoB;YAAE,OAAO,IAAI,CAAC,SAA8B,CAAC,CAAA;QACpG,KAAK,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,kBAAkB,CAAC,EAAE,CAAC;YAC9E,MAAM,OAAO,GAAG,IAAI,CAAC,SAA8B,CAAC,CAAA;YACpD,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI;gBAAE,SAAQ;YAC/B,IAAI,CAAC,SAA8B,CAAC,GAAG;gBACrC,GAAG,OAAO;gBACV,sEAAsE;gBACtE,mEAAmE;gBACnE,gBAAgB,EAAE;oBAChB,IAAI,EAAE,kBAAkB;oBACxB,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,aAAa,EAAE,OAAO,CAAC,YAAY;iBACO;aAC3B,CAAA;QACrB,CAAC;QACD,OAAO;YACL,GAAG,YAAY;YACf,GAAG,EAAE,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,UAAU,CAAC,oBAAoB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAC1F,IAAI;SACL,CAAA;IACH,CAAC,EAAE,CAAC,UAAU,CAAC,kBAAkB,EAAE,UAAU,CAAC,oBAAoB,EAAE,YAAY,CAAC,CAAC,CAAA;IAElF,MAAM,sBAAsB,GAAG,CAAC,CAAK,QAA0C,EAAK,EAAE,CACpF,QAAQ,CAAC,uBAAuB,CAAC,CAA2C,CAAA;IAC9E,MAAM,oBAAoB,GAAG,CAAC,CAAK,QAAwC,EAAK,EAAE,CAChF,QAAQ,CAAC,qBAAqB,CAAC,CAAyC,CAAA;IAC1E,MAAM,YAAY,GAAG,UAAU,CAAC,mBAAmB,CAAA;IACnD,MAAM,qBAAqB,GAAG,UAAU,CAAC,qBAAqB,CAAA;IAE9D,OAAO,KAAC,eAAe,OACjB,KAAK,EACT,aAAa,EAAE,sBAAsB,EACrC,WAAW,EAAE,oBAAoB,EACjC,YAAY,EAAE,KAAK,EAAE,WAAwB,EAAE,EAAE;YAC/C,IAAI,qBAAqB,CAAC,GAAG,CAAC,WAAW,CAAC;gBAAE,OAAM;YAClD,MAAM,KAAK,CAAC,YAAY,CAAC,WAAW,CAAC,CAAA;QACvC,CAAC,EACD,WAAW,EAAE,CAAC,SAAoB,EAAE,EAAE;YACpC,IAAI,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC;gBAAE,OAAM;YACvC,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,CAAA;QAC9B,CAAC,EACD,mBAAmB,EAAE,KAAK,EAAE,WAAwB,EAAE,SAAoB,EAAE,eAA2B,EAAE,EAAE;YACzG,IACE,qBAAqB,CAAC,GAAG,CAAC,WAAW,CAAC;mBACnC,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC;mBAC3B,UAAU,CAAC,mBAAmB,CAAC,GAAG,CAAC,SAAS,CAAC;mBAC7C,CAAC,eAAe,KAAK,SAAS,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,UAAU,CAAC,mBAAmB,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC;gBAChI,OAAM;YACR,MAAM,KAAK,CAAC,mBAAmB,CAAC,WAAW,EAAE,SAAS,EAAE,eAAe,CAAC,CAAA;QAC1E,CAAC,GACD,CAAA;AACJ,CAAC;AAUD,SAAS,oBAAoB,CAC3B,GAA+B,EAC/B,OAA+B;IAE/B,0EAA0E;IAC1E,sEAAsE;IACtE,MAAM,KAAK,GAA0B;QACnC,KAAK,EAAE,KAAK;QACZ,UAAU,EAAE,IAAI,GAAG,EAAE;QACrB,YAAY,EAAE,IAAI,GAAG,EAAE;QACvB,YAAY,CAAC,EAAE,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA,CAAC,CAAC;QAClE,cAAc,CAAC,EAAE,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA,CAAC,CAAC;KACvE,CAAA;IACD,MAAM,UAAU,GAAG,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE;QACtC,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,QAAQ;YACvB,IAAI,GAAG,KAAK,UAAU,EAAE,CAAC;gBACvB,OAAO,CAAC,UAAmC,EAAE,SAA6B,EAAW,EAAE;oBACrF,IACE,CAAC,UAAU,CAAC,IAAI,KAAK,sCAAsC;2BACtD,UAAU,CAAC,IAAI,KAAK,uCAAuC,CAAC;2BAC9D,UAAU,CAAC,EAAE,KAAK,KAAK,EAC1B,CAAC;wBACD,sEAAsE;wBACtE,uEAAuE;wBACvE,MAAM,MAAM,GAAG,SAAS,CAAA;wBACxB,MAAM,aAAa,GAAG,CAAC,KAA6B,EAAE,EAAE,CACtD,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,SAAS,CAAC;4BACzE,CAAC,CAAC,KAAC,MAAM,OAAK,KAAK,GAAI;4BACvB,CAAC,CAAC,IAAI,CAAA;wBACV,OAAO,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC,CAAA;oBACnD,CAAC;oBACD,IAAI,UAAU,CAAC,IAAI,KAAK,oBAAoB;wBAAE,OAAO,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,SAAS,CAAC,CAAA;oBAC3F,MAAM,eAAe,GAAG,SAAiD,CAAA;oBACzE,MAAM,OAAO,GAAG,CAAC,KAA4B,EAAE,EAAE,CAAC,KAAC,kBAAkB,IAAC,MAAM,EAAE,OAAO,GAAG,CAAC,GAAG,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,YAAE,KAAC,+BAA+B,OACvK,KAAK,EACT,OAAO,EAAE,OAAO,EAChB,eAAe,EAAE,eAAe,EAChC,KAAK,EAAE,KAAK,GACZ,GAAqB,CAAA;oBACvB,OAAO,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;gBAC7C,CAAC,CAAA;YACH,CAAC;YACD,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAA;QAC3C,CAAC;KACF,CAAC,CAAA;IAEF,OAAO,IAAI,KAAK,CAAC,GAAG,EAAE;QACpB,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,QAAQ;YACvB,IAAI,GAAG,KAAK,OAAO;gBAAE,OAAO,UAAU,CAAA;YACtC,IAAI,GAAG,KAAK,KAAK,IAAI,OAAO,MAAM,CAAC,GAAG,KAAK,UAAU,EAAE,CAAC;gBACtD,OAAO,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,KAAK,8BAA8B;oBAC9D,CAAC,CAAC,KAAK;oBACP,CAAC,CAAE,MAAM,CAAC,GAAoC,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;YACrE,CAAC;YACD,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAA;QAC3C,CAAC;KACF,CAAC,CAAA;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,+BAA+B,CAC7C,GAA+B,EAC/B,OAA+B,EAC/B,iBAAyC,sBAAsB;IAE/D,cAAc,CAAC,oBAAoB,CAAC,GAAG,EAAE,OAAO,CAAuB,CAAC,CAAA;AAC1E,CAAC"}