openlimiter 2.0.0 → 2.0.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 (49) hide show
  1. package/dist/api-spend.d.ts +29 -0
  2. package/dist/api-spend.d.ts.map +1 -0
  3. package/dist/api-spend.js +113 -0
  4. package/dist/api-spend.js.map +1 -0
  5. package/dist/cli.d.ts +7 -0
  6. package/dist/cli.d.ts.map +1 -1
  7. package/dist/cli.js +85 -16
  8. package/dist/cli.js.map +1 -1
  9. package/dist/codex-device-login.d.ts.map +1 -1
  10. package/dist/codex-device-login.js +4 -1
  11. package/dist/codex-device-login.js.map +1 -1
  12. package/dist/config.d.ts.map +1 -1
  13. package/dist/config.js +2 -1
  14. package/dist/config.js.map +1 -1
  15. package/dist/hub-auth.d.ts +2 -0
  16. package/dist/hub-auth.d.ts.map +1 -1
  17. package/dist/hub-auth.js +18 -1
  18. package/dist/hub-auth.js.map +1 -1
  19. package/dist/hub-sync.d.ts +1 -1
  20. package/dist/hub-sync.js +1 -1
  21. package/dist/ingest.d.ts +24 -0
  22. package/dist/ingest.d.ts.map +1 -1
  23. package/dist/ingest.js +34 -2
  24. package/dist/ingest.js.map +1 -1
  25. package/dist/session.d.ts.map +1 -1
  26. package/dist/session.js +1 -4
  27. package/dist/session.js.map +1 -1
  28. package/dist/statusline-wrapper.d.ts.map +1 -1
  29. package/dist/statusline-wrapper.js +2 -1
  30. package/dist/statusline-wrapper.js.map +1 -1
  31. package/dist/statusline.d.ts +2 -0
  32. package/dist/statusline.d.ts.map +1 -1
  33. package/dist/statusline.js +34 -15
  34. package/dist/statusline.js.map +1 -1
  35. package/dist/terminal-backup.d.ts +85 -1
  36. package/dist/terminal-backup.d.ts.map +1 -1
  37. package/dist/terminal-backup.js +148 -22
  38. package/dist/terminal-backup.js.map +1 -1
  39. package/dist/terminal-fallback.d.ts.map +1 -1
  40. package/dist/terminal-fallback.js +13 -3
  41. package/dist/terminal-fallback.js.map +1 -1
  42. package/dist/terminal-toml.d.ts +8 -0
  43. package/dist/terminal-toml.d.ts.map +1 -1
  44. package/dist/terminal-toml.js +59 -2
  45. package/dist/terminal-toml.js.map +1 -1
  46. package/dist/terminal.d.ts.map +1 -1
  47. package/dist/terminal.js +145 -36
  48. package/dist/terminal.js.map +1 -1
  49. package/package.json +4 -4
@@ -2,6 +2,90 @@ export declare function readOptional(file: string): Promise<string | null>;
2
2
  /** Recover the first configuration, including across reinstalls and state moves. */
3
3
  export declare function originalConfiguration(file: string, current: string | null): Promise<string | null>;
4
4
  export declare function isOwned(file: string, current: string, marker: boolean): Promise<boolean>;
5
+ /** The first configuration when uninstall has to patch rather than restore it, otherwise `undefined`. */
6
+ export declare function driftedOriginal(file: string, current: string | null): Promise<string | null | undefined>;
7
+ /** Result of an ownership check used during install. */
8
+ export type InstallOwnershipResult = {
9
+ kind: "unowned";
10
+ } | {
11
+ kind: "owned";
12
+ original: string | null;
13
+ } | {
14
+ kind: "drifted";
15
+ original: string | null;
16
+ } | {
17
+ kind: "replaced_by_other";
18
+ };
19
+ /**
20
+ * Classify the current ownership state for an install operation on a JSON/TOML
21
+ * config host.
22
+ *
23
+ * - "unowned": no backup and no marker, the file was never touched by us.
24
+ * - "owned": backup present and installed bytes still match, clean reinstall.
25
+ * - "drifted": backup present but host has edited the file since we last wrote
26
+ * it. The caller should update from current content and refresh installed.
27
+ * - "replaced_by_other": marker present but backup is missing or stale, and
28
+ * the current statusLine is not an OpenLimiter command. This is the case
29
+ * where the person replaced our line with their own.
30
+ */
31
+ export declare function classifyInstallOwnership(file: string, current: string | null, marker: boolean, legacyOpenLimiter: boolean): Promise<InstallOwnershipResult>;
32
+ /**
33
+ * Write `installed` to `file`, updating the backup so that:
34
+ *
35
+ * - When no backup exists yet: `original` is saved and never changed again.
36
+ * - When a backup exists and the host has drifted the file: the backup's
37
+ * `original` is preserved untouched, and `installed` is updated to the new
38
+ * content so the next check sees the correct baseline.
39
+ *
40
+ * The concurrency guard re-reads under the lock and refuses if the file
41
+ * changed between the outer read and the write.
42
+ *
43
+ * `priorCurrent` is the content read before the lock was acquired. If the
44
+ * file differs when re-read under the lock, the operation is refused with
45
+ * a "file changed during the operation" error.
46
+ */
5
47
  export declare function writeOwned(file: string, original: string | null, installed: string): Promise<void>;
6
- export declare function restoreOwned(file: string, current: string, marker: boolean): Promise<boolean>;
48
+ /**
49
+ * Write `installed` to `file` when the host has edited it since we last wrote
50
+ * it (drift case). The backup's `original` is preserved; `installed` is updated
51
+ * to the new content.
52
+ *
53
+ * `priorCurrent` is the drifted content read before locking. The concurrency
54
+ * guard inside the lock re-reads and refuses if the file changed again.
55
+ */
56
+ export declare function writeDriftedOwned(file: string, priorCurrent: string | null, installed: string): Promise<void>;
57
+ /**
58
+ * Uninstall result for restoreOwned.
59
+ *
60
+ * - "restored_exact": backup.installed matched current; original bytes restored.
61
+ * - "restored_drifted": host edited the file; statusLine key patched on
62
+ * current content, backup removed.
63
+ * - "not_owned": the file is not ours (no backup, or marker absent).
64
+ * - "concurrent_change": the file changed between the read and the write.
65
+ */
66
+ export type RestoreResult = {
67
+ kind: "restored_exact";
68
+ } | {
69
+ kind: "restored_drifted";
70
+ } | {
71
+ kind: "not_owned";
72
+ } | {
73
+ kind: "concurrent_change";
74
+ path: string;
75
+ };
76
+ /**
77
+ * Restore a file to its pre-installation state.
78
+ *
79
+ * When the installed bytes still match the current file, the exact original
80
+ * bytes are written back (or the file is removed if the original was null).
81
+ *
82
+ * When the host has edited the file since we installed (drift), the caller
83
+ * supplies the patched content via `driftedContent`. That content is written
84
+ * to the file so the person's other edits are preserved, and the backup is
85
+ * then removed.
86
+ *
87
+ * `current` is the content read before the lock. The guard re-reads under the
88
+ * lock and refuses if the file changed in the meantime.
89
+ */
90
+ export declare function restoreOwned(file: string, current: string, marker: boolean, driftedContent?: string): Promise<RestoreResult>;
7
91
  //# sourceMappingURL=terminal-backup.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"terminal-backup.d.ts","sourceRoot":"","sources":["../src/terminal-backup.ts"],"names":[],"mappings":"AAOA,wBAAsB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAGvE;AAUD,oFAAoF;AACpF,wBAAsB,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAIxG;AAgBD,wBAAsB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAG9F;AAED,wBAAsB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAmBxG;AAED,wBAAsB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAanG"}
1
+ {"version":3,"file":"terminal-backup.d.ts","sourceRoot":"","sources":["../src/terminal-backup.ts"],"names":[],"mappings":"AAYA,wBAAsB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAGvE;AAWD,oFAAoF;AACpF,wBAAsB,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAOxG;AAgBD,wBAAsB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAG9F;AASD,yGAAyG;AACzG,wBAAsB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,CAG9G;AAED,wDAAwD;AACxD,MAAM,MAAM,sBAAsB,GAC9B;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,GACnB;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAC1C;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAC5C;IAAE,IAAI,EAAE,mBAAmB,CAAA;CAAE,CAAC;AAElC;;;;;;;;;;;GAWG;AACH,wBAAsB,wBAAwB,CAC5C,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,GAAG,IAAI,EACtB,MAAM,EAAE,OAAO,EACf,iBAAiB,EAAE,OAAO,GACzB,OAAO,CAAC,sBAAsB,CAAC,CAmBjC;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAsBxG;AAGD;;;;;;;GAOG;AACH,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA8BnH;AAED;;;;;;;;GAQG;AACH,MAAM,MAAM,aAAa,GACrB;IAAE,IAAI,EAAE,gBAAgB,CAAA;CAAE,GAC1B;IAAE,IAAI,EAAE,kBAAkB,CAAA;CAAE,GAC5B;IAAE,IAAI,EAAE,WAAW,CAAA;CAAE,GACrB;IAAE,IAAI,EAAE,mBAAmB,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAEhD;;;;;;;;;;;;;GAaG;AACH,wBAAsB,YAAY,CAChC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,OAAO,EACf,cAAc,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,aAAa,CAAC,CA4BxB"}
@@ -17,15 +17,18 @@ async function backup(file) {
17
17
  if (raw === null)
18
18
  return null;
19
19
  const value = JSON.parse(raw);
20
- if (value.version !== 1 || !(value.original === null || typeof value.original === "string") || typeof value.installed !== "string")
20
+ if (value.version !== 1 || !(value.original === null || typeof value.original === "string") || typeof value.installed !== "string" ||
21
+ !(value.drifted === undefined || value.drifted === true))
21
22
  throw new Error("Invalid backup");
22
23
  return value;
23
24
  }
24
25
  /** Recover the first configuration, including across reinstalls and state moves. */
25
26
  export async function originalConfiguration(file, current) {
26
27
  const saved = await backup(file);
27
- if (saved !== null && saved.installed !== current)
28
- throw new Error("Configuration changed");
28
+ // When no backup exists the current content is the original.
29
+ // When a backup exists, always return the preserved original regardless of
30
+ // whether the host has since edited the file — the original field never
31
+ // changes once it is written.
29
32
  return saved === null ? current : saved.original;
30
33
  }
31
34
  async function withFileLock(file, action) {
@@ -50,17 +53,77 @@ export async function isOwned(file, current, marker) {
50
53
  const saved = await backup(file);
51
54
  return marker && saved !== null && saved.installed === current;
52
55
  }
56
+ /**
57
+ * Whether uninstall must patch OpenLimiter's keys instead of restoring the
58
+ * original bytes: the file changed since the last write, or an earlier
59
+ * reinstall absorbed such a change.
60
+ */
61
+ const drifted = (saved, current) => saved.installed !== current || saved.drifted === true;
62
+ /** The first configuration when uninstall has to patch rather than restore it, otherwise `undefined`. */
63
+ export async function driftedOriginal(file, current) {
64
+ const saved = await backup(file);
65
+ return saved !== null && drifted(saved, current) ? saved.original : undefined;
66
+ }
67
+ /**
68
+ * Classify the current ownership state for an install operation on a JSON/TOML
69
+ * config host.
70
+ *
71
+ * - "unowned": no backup and no marker, the file was never touched by us.
72
+ * - "owned": backup present and installed bytes still match, clean reinstall.
73
+ * - "drifted": backup present but host has edited the file since we last wrote
74
+ * it. The caller should update from current content and refresh installed.
75
+ * - "replaced_by_other": marker present but backup is missing or stale, and
76
+ * the current statusLine is not an OpenLimiter command. This is the case
77
+ * where the person replaced our line with their own.
78
+ */
79
+ export async function classifyInstallOwnership(file, current, marker, legacyOpenLimiter) {
80
+ const saved = await backup(file);
81
+ if (saved === null) {
82
+ // No backup at all: either never installed, or the backup was removed.
83
+ return { kind: "unowned" };
84
+ }
85
+ if (saved.installed === current) {
86
+ // Backup matches exactly — clean owned state.
87
+ return { kind: "owned", original: saved.original };
88
+ }
89
+ // Backup exists but differs from current. The host has edited the file.
90
+ if (!marker && !legacyOpenLimiter) {
91
+ // The marker is gone too and the current statusLine is not ours: the
92
+ // person replaced our content entirely with their own.
93
+ return { kind: "replaced_by_other" };
94
+ }
95
+ // Our marker (or a legacy OpenLimiter command) is still present, but the
96
+ // host also added keys around it. Tolerate the drift.
97
+ return { kind: "drifted", original: saved.original };
98
+ }
99
+ /**
100
+ * Write `installed` to `file`, updating the backup so that:
101
+ *
102
+ * - When no backup exists yet: `original` is saved and never changed again.
103
+ * - When a backup exists and the host has drifted the file: the backup's
104
+ * `original` is preserved untouched, and `installed` is updated to the new
105
+ * content so the next check sees the correct baseline.
106
+ *
107
+ * The concurrency guard re-reads under the lock and refuses if the file
108
+ * changed between the outer read and the write.
109
+ *
110
+ * `priorCurrent` is the content read before the lock was acquired. If the
111
+ * file differs when re-read under the lock, the operation is refused with
112
+ * a "file changed during the operation" error.
113
+ */
53
114
  export async function writeOwned(file, original, installed) {
54
115
  await withFileLock(file, async () => {
55
116
  const current = await readOptional(file);
117
+ // Concurrency guard: refuse if the file changed between the read outside
118
+ // the lock and this re-read inside it.
56
119
  if (current !== original)
57
- throw new Error("Configuration changed");
58
- const saved = await backup(file);
59
- if (saved !== null && saved.installed !== current)
60
- throw new Error("Configuration changed");
120
+ throw new Error("File changed during the operation, try again");
121
+ // Nothing to write — file is already what we'd produce.
61
122
  if (current === installed)
62
123
  return;
63
- const next = { version: 1, original: saved === null ? original : saved.original, installed };
124
+ const saved = await backup(file);
125
+ // A reinstall keeps the backup's original and any recorded drift.
126
+ const next = saved === null ? { version: 1, original, installed } : { ...saved, installed };
64
127
  if (saved === null) {
65
128
  // Exclusive creation guarantees that a repeated install cannot replace the
66
129
  // original bytes. A write failure leaves the recoverable backup in place.
@@ -71,27 +134,90 @@ export async function writeOwned(file, original, installed) {
71
134
  }
72
135
  await writeFileAtomically(file, installed);
73
136
  if (await readFile(file, "utf8") !== installed)
74
- throw new Error("Configuration changed");
137
+ throw new Error("File changed during the operation, try again");
75
138
  });
76
139
  }
77
- export async function restoreOwned(file, current, marker) {
140
+ /**
141
+ * Write `installed` to `file` when the host has edited it since we last wrote
142
+ * it (drift case). The backup's `original` is preserved; `installed` is updated
143
+ * to the new content.
144
+ *
145
+ * `priorCurrent` is the drifted content read before locking. The concurrency
146
+ * guard inside the lock re-reads and refuses if the file changed again.
147
+ */
148
+ export async function writeDriftedOwned(file, priorCurrent, installed) {
149
+ await withFileLock(file, async () => {
150
+ const current = await readOptional(file);
151
+ if (current !== priorCurrent)
152
+ throw new Error("File changed during the operation, try again");
153
+ const saved = await backup(file);
154
+ // Preserve the original; update installed to the new content.
155
+ // Record the drift: `original` now predates the person's edits, so a
156
+ // later uninstall must not write those bytes back over them.
157
+ const next = {
158
+ version: 1,
159
+ original: saved !== null ? saved.original : priorCurrent,
160
+ installed,
161
+ drifted: true
162
+ };
163
+ if (current === installed) {
164
+ // File is already correct but backup.installed may still point to the
165
+ // first-install content. Update the backup so future drift detection
166
+ // compares against the current content and correctly sees "owned".
167
+ if (saved === null || saved.installed !== installed || saved.drifted !== true) {
168
+ await writeFileAtomically(backupPath(file), JSON.stringify(next));
169
+ }
170
+ return;
171
+ }
172
+ await writeFileAtomically(backupPath(file), JSON.stringify(next));
173
+ await writeFileAtomically(file, installed);
174
+ if (await readFile(file, "utf8") !== installed)
175
+ throw new Error("File changed during the operation, try again");
176
+ });
177
+ }
178
+ /**
179
+ * Restore a file to its pre-installation state.
180
+ *
181
+ * When the installed bytes still match the current file, the exact original
182
+ * bytes are written back (or the file is removed if the original was null).
183
+ *
184
+ * When the host has edited the file since we installed (drift), the caller
185
+ * supplies the patched content via `driftedContent`. That content is written
186
+ * to the file so the person's other edits are preserved, and the backup is
187
+ * then removed.
188
+ *
189
+ * `current` is the content read before the lock. The guard re-reads under the
190
+ * lock and refuses if the file changed in the meantime.
191
+ */
192
+ export async function restoreOwned(file, current, marker, driftedContent) {
78
193
  return await withFileLock(file, async () => {
79
194
  const latest = await readOptional(file);
80
195
  if (latest !== current)
81
- return false;
196
+ return { kind: "concurrent_change", path: file };
82
197
  const saved = await backup(file);
83
- if (saved !== null && (!marker || saved.installed !== latest))
84
- throw new Error("Configuration changed");
85
198
  if (!(marker && saved !== null))
86
- return false;
87
- if (saved.original === null)
88
- await rm(file);
89
- else
90
- await writeFileAtomically(file, saved.original);
91
- if (await readOptional(file) !== saved.original)
92
- throw new Error("Configuration changed");
93
- await rm(backupPath(file));
94
- return true;
199
+ return { kind: "not_owned" };
200
+ if (!drifted(saved, latest)) {
201
+ // Clean case: nothing ever drifted, restore exact original bytes.
202
+ if (saved.original === null)
203
+ await rm(file);
204
+ else
205
+ await writeFileAtomically(file, saved.original);
206
+ if (await readOptional(file) !== saved.original)
207
+ return { kind: "concurrent_change", path: file };
208
+ await rm(backupPath(file));
209
+ return { kind: "restored_exact" };
210
+ }
211
+ // Drift case: the host edited the file. Apply the patched content the
212
+ // caller built from the current file and remove the backup.
213
+ if (driftedContent !== undefined) {
214
+ await writeFileAtomically(file, driftedContent);
215
+ await rm(backupPath(file));
216
+ return { kind: "restored_drifted" };
217
+ }
218
+ // Drifted but no patch provided: treat as concurrent change (caller
219
+ // should have supplied driftedContent if drift was expected).
220
+ return { kind: "concurrent_change", path: file };
95
221
  });
96
222
  }
97
223
  //# sourceMappingURL=terminal-backup.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"terminal-backup.js","sourceRoot":"","sources":["../src/terminal-backup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"terminal-backup.js","sourceRoot":"","sources":["../src/terminal-backup.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"terminal-fallback.d.ts","sourceRoot":"","sources":["../src/terminal-fallback.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAEvD,eAAO,MAAM,6BAA6B,OAAQ,CAAC;AACnD,MAAM,WAAW,uBAAuB;IACtC,kGAAkG;IAClG,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,kFAAkF;IAClF,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC;AAgJD,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,QAAQ,EACjB,KAAK,EAAE,OAAO,GAAG,KAAK,GAAG,YAAY,EACrC,QAAQ,EAAE,MAAM,GAAG,IAAI,EACvB,OAAO,GAAE,uBAA4B,GACpC,OAAO,CAAC,MAAM,CAAC,CAsBjB"}
1
+ {"version":3,"file":"terminal-fallback.d.ts","sourceRoot":"","sources":["../src/terminal-fallback.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAEvD,eAAO,MAAM,6BAA6B,OAAQ,CAAC;AACnD,MAAM,WAAW,uBAAuB;IACtC,kGAAkG;IAClG,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,kFAAkF;IAClF,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC;AAwJD,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,QAAQ,EACjB,KAAK,EAAE,OAAO,GAAG,KAAK,GAAG,YAAY,EACrC,QAAQ,EAAE,MAAM,GAAG,IAAI,EACvB,OAAO,GAAE,uBAA4B,GACpC,OAAO,CAAC,MAAM,CAAC,CAsBjB"}
@@ -3,14 +3,24 @@ import { createHash } from "node:crypto";
3
3
  import { lstat, mkdir, readFile, writeFile } from "node:fs/promises";
4
4
  import path from "node:path";
5
5
  import { promisify } from "node:util";
6
+ import { windowsPathTool, windowsSystemTool } from "@openlimiter/core";
6
7
  export const LAUNCHER_TIMEOUT_MILLISECONDS = 5_000;
7
8
  const posixQuote = (value) => `'${value.replaceAll("'", "'\\''")}'`;
8
9
  const psQuote = (value) => `'${value.replaceAll("'", "''")}'`;
9
10
  async function detectPosixTimeout() {
10
11
  try {
11
- const { stdout } = await promisify(execFile)(process.platform === "win32" ? "bash" : "/bin/sh", [
12
+ const shell = process.platform === "win32"
13
+ ? await windowsPathTool("bash.exe")
14
+ : "/bin/sh";
15
+ if (shell === null)
16
+ return null;
17
+ const { stdout } = await promisify(execFile)(shell, [
12
18
  "-c", 'if [ -x /usr/bin/timeout ]; then printf /usr/bin/timeout; else command -v timeout; fi'
13
- ], { windowsHide: true, timeout: 5_000 });
19
+ ], {
20
+ windowsHide: true,
21
+ timeout: 5_000,
22
+ ...(process.platform === "win32" ? { cwd: path.win32.dirname(shell) } : {})
23
+ });
14
24
  return stdout.trim() || null;
15
25
  }
16
26
  catch {
@@ -166,7 +176,7 @@ export async function fallbackLauncherCommand(runtime, shell, original, options
166
176
  }
167
177
  if (shell === "posix")
168
178
  return `/bin/sh ${posixQuote(file)}`;
169
- const executable = path.win32.join(process.env["SystemRoot"] ?? "C:\\Windows", "System32", "WindowsPowerShell", "v1.0", "powershell.exe");
179
+ const executable = windowsSystemTool("WindowsPowerShell", "v1.0", "powershell.exe");
170
180
  if (shell === "powershell")
171
181
  return `& ${psQuote(executable)} -NoProfile -NonInteractive -ExecutionPolicy Bypass -File ${psQuote(file)}`;
172
182
  if (/["%\r\n]/.test(file + executable))
@@ -1 +1 @@
1
- {"version":3,"file":"terminal-fallback.js","sourceRoot":"","sources":["../src/terminal-fallback.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACrE,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAGtC,MAAM,CAAC,MAAM,6BAA6B,GAAG,KAAK,CAAC;AAOnD,MAAM,UAAU,GAAG,CAAC,KAAa,EAAU,EAAE,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC;AACpF,MAAM,OAAO,GAAG,CAAC,KAAa,EAAU,EAAE,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC;AAE9E,KAAK,UAAU,kBAAkB;IAC/B,IAAI,CAAC;QACH,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAAE;YAC9F,IAAI,EAAE,uFAAuF;SAC9F,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;QAC1C,OAAO,MAAM,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC;IAC/B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAS,WAAW,CAAC,OAAiB,EAAE,QAAuB,EAAE,OAAe,EAAE,cAA6B;IAC7G,OAAO;;;;;;;;;;;;;;;;;;;;;EAqBP,cAAc,KAAK,IAAI,CAAC,CAAC,CAAC;;;;;;gBAMZ,OAAO,GAAG,IAAI;;;;;;;;;;;;;oBAaV,CAAC,CAAC,CAAC;IACnB,UAAU,CAAC,cAAc,CAAC,IAAI,OAAO,GAAG,IAAI,+CAA+C;;SAEtF,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC;;EAE5D,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;mBACR,UAAU,CAAC,QAAQ,CAAC;iBACtB;;;CAGhB,CAAC;AACF,CAAC;AAED,SAAS,gBAAgB,CAAC,OAAiB,EAAE,QAAuB,EAAE,OAAe;IACnF,gFAAgF;IAChF,8EAA8E;IAC9E,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;4BA2BmB,OAAO;;iEAE8B,OAAO;;;;;;;;;;;;;;;;;;4DAkBZ,OAAO;4DACP,OAAO;;;;;yBAK1C,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,GAAG,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;;IAElF,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC,CAAC;gEACU,OAAO,CAAC,YAAY,GAAG,QAAQ,GAAG,GAAG,CAAC;IAClG;;;;;;;;CAQH,CAAC;AACF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,OAAiB,EACjB,KAAqC,EACrC,QAAuB,EACvB,UAAmC,EAAE;IAErC,MAAM,OAAO,GAAG,OAAO,CAAC,mBAAmB,IAAI,6BAA6B,CAAC;IAC7E,MAAM,cAAc,GAAG,KAAK,KAAK,OAAO;QACtC,CAAC,CAAC,OAAO,CAAC,mBAAmB,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,kBAAkB,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,mBAAmB;QACtG,CAAC,CAAC,IAAI,CAAC;IACT,MAAM,MAAM,GAAG,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC1I,MAAM,EAAE,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC7D,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,oBAAoB,EAAE,EAAE,CAAC,CAAC;IACjG,MAAM,KAAK,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IACzD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC;IAC5F,IAAI,CAAC;QACH,MAAM,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAC7D,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;YAAE,MAAM,KAAK,CAAC;QACpE,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC;QAC/B,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,IAAI,CAAC,cAAc,EAAE,IAAI,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;IAC9H,CAAC;IACD,IAAI,KAAK,KAAK,OAAO;QAAE,OAAO,WAAW,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;IAC5D,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,aAAa,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAC1I,IAAI,KAAK,KAAK,YAAY;QAAE,OAAO,KAAK,OAAO,CAAC,UAAU,CAAC,6DAA6D,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;IACxI,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;IAC5E,OAAO,IAAI,UAAU,+DAA+D,IAAI,GAAG,CAAC;AAC9F,CAAC"}
1
+ {"version":3,"file":"terminal-fallback.js","sourceRoot":"","sources":["../src/terminal-fallback.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,7 @@ interface Entry {
12
12
  }
13
13
  interface Table {
14
14
  keys: string[];
15
+ start: number;
15
16
  insert: number;
16
17
  array: boolean;
17
18
  }
@@ -34,5 +35,12 @@ export declare function parseToml(text: string): Parser;
34
35
  export declare function tomlValue(text: string, keys: string[]): Value | undefined;
35
36
  /** Serialize only changed scalar values, then parse the entire candidate. */
36
37
  export declare function editToml(text: string, table: string[], settings: Record<string, Value>): string;
38
+ /**
39
+ * Uninstall after the person edited the file: put each OpenLimiter key under
40
+ * `table` back to its value in `original` or remove its line, drop the table
41
+ * when OpenLimiter created it and nothing else lives in it, and remove the
42
+ * managed marker. Every other line keeps its bytes.
43
+ */
44
+ export declare function restoreToml(text: string, original: string, table: string[], keys: string[]): string;
37
45
  export {};
38
46
  //# sourceMappingURL=terminal-toml.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"terminal-toml.d.ts","sourceRoot":"","sources":["../src/terminal-toml.ts"],"names":[],"mappings":"AAAA;;gEAEgE;AAChE,KAAK,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,KAAK,EAAE,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,KAAK,CAAA;CAAE,CAAC;AACnF,UAAU,KAAK;IAAG,IAAI,EAAE,MAAM,EAAE,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAE;AAC5E,UAAU,KAAK;IAAG,IAAI,EAAE,MAAM,EAAE,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE;AAGlE,cAAM,MAAM;IAIE,QAAQ,CAAC,IAAI,EAAE,MAAM;IAHjC,CAAC,SAAK;IACN,OAAO,EAAE,KAAK,EAAE,CAAM;IACtB,MAAM,EAAE,KAAK,EAAE,CAAM;gBACA,IAAI,EAAE,MAAM;IACjC,IAAI,IAAI,KAAK;IACb,IAAI,IAAI,MAAM;IACd,MAAM,CAAC,SAAS,UAAQ,GAAG,IAAI;IAO/B,OAAO,IAAI,IAAI;IAGf,MAAM,CAAC,GAAG,UAAQ,GAAG,MAAM;IAwC3B,IAAI,IAAI,MAAM,EAAE;IAiBhB,KAAK,CAAC,KAAK,SAAI,GAAG,KAAK;IA6DvB,KAAK,IAAI,IAAI;CAmDd;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAqC;AACpF,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,KAAK,GAAG,SAAS,CAezE;AA+BD,6EAA6E;AAC7E,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,MAAM,CAuC/F"}
1
+ {"version":3,"file":"terminal-toml.d.ts","sourceRoot":"","sources":["../src/terminal-toml.ts"],"names":[],"mappings":"AAAA;;gEAEgE;AAChE,KAAK,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,KAAK,EAAE,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,KAAK,CAAA;CAAE,CAAC;AACnF,UAAU,KAAK;IAAG,IAAI,EAAE,MAAM,EAAE,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAE;AAC5E,UAAU,KAAK;IAAG,IAAI,EAAE,MAAM,EAAE,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE;AAGjF,cAAM,MAAM;IAIE,QAAQ,CAAC,IAAI,EAAE,MAAM;IAHjC,CAAC,SAAK;IACN,OAAO,EAAE,KAAK,EAAE,CAAM;IACtB,MAAM,EAAE,KAAK,EAAE,CAAM;gBACA,IAAI,EAAE,MAAM;IACjC,IAAI,IAAI,KAAK;IACb,IAAI,IAAI,MAAM;IACd,MAAM,CAAC,SAAS,UAAQ,GAAG,IAAI;IAO/B,OAAO,IAAI,IAAI;IAGf,MAAM,CAAC,GAAG,UAAQ,GAAG,MAAM;IAwC3B,IAAI,IAAI,MAAM,EAAE;IAiBhB,KAAK,CAAC,KAAK,SAAI,GAAG,KAAK;IA6DvB,KAAK,IAAI,IAAI;CAmDd;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAqC;AACpF,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,KAAK,GAAG,SAAS,CAezE;AA+BD,6EAA6E;AAC7E,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,MAAM,CAuC/F;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CA2CnG"}
@@ -192,7 +192,7 @@ class Parser {
192
192
  if (this.i === this.text.length)
193
193
  break;
194
194
  if (this.peek() === "[") {
195
- this.i++;
195
+ const start = this.i++;
196
196
  const array = this.peek() === "[";
197
197
  if (array)
198
198
  this.i++;
@@ -220,7 +220,7 @@ class Parser {
220
220
  if (tables.has(id) || dotted.has(id) || values.some(k => same(scope.slice(0, k.length), k)))
221
221
  this.fail();
222
222
  tables.add(id);
223
- this.tables.push({ keys: section, insert: this.i, array: array || scope.some(k => k.includes("\u0000")) });
223
+ this.tables.push({ keys: section, start, insert: this.i, array: array || scope.some(k => k.includes("\u0000")) });
224
224
  }
225
225
  else {
226
226
  const keys = this.keys();
@@ -354,4 +354,61 @@ export function editToml(text, table, settings) {
354
354
  parseToml(result);
355
355
  return result;
356
356
  }
357
+ /**
358
+ * Uninstall after the person edited the file: put each OpenLimiter key under
359
+ * `table` back to its value in `original` or remove its line, drop the table
360
+ * when OpenLimiter created it and nothing else lives in it, and remove the
361
+ * managed marker. Every other line keeps its bytes.
362
+ */
363
+ export function restoreToml(text, original, table, keys) {
364
+ const parsed = parseToml(text);
365
+ const before = parseToml(original);
366
+ const restored = (key) => tomlValue(original, [...table, key]);
367
+ const line = (start, end) => ({ start: text.lastIndexOf("\n", start - 1) + 1, end: text.indexOf("\n", end) + 1 || text.length, text: "" });
368
+ const under = (keys) => keys.length > table.length && same(keys.slice(0, table.length), table);
369
+ const edits = [];
370
+ const inlineParent = parsed.entries.find(e => same(e.keys, table) && inlineTable(e.value) !== null);
371
+ if (inlineParent !== undefined) {
372
+ const updated = { ...(inlineTable(inlineParent.value) ?? {}) };
373
+ for (const key of keys) {
374
+ const value = restored(key);
375
+ if (value === undefined)
376
+ delete updated[JSON.stringify([key])];
377
+ else
378
+ updated[JSON.stringify([key])] = value;
379
+ }
380
+ edits.push({ start: inlineParent.start, end: inlineParent.end, text: serializeTomlValue(updated) });
381
+ }
382
+ else {
383
+ const removed = new Set();
384
+ for (const key of keys) {
385
+ const entry = parsed.entries.find(e => same(e.keys, [...table, key]));
386
+ if (entry === undefined)
387
+ continue;
388
+ const value = restored(key);
389
+ if (value === undefined)
390
+ removed.add(entry);
391
+ edits.push(value === undefined ? line(entry.start, entry.end) : { start: entry.start, end: entry.end, text: serializeTomlValue(value) });
392
+ }
393
+ const header = parsed.tables.find(t => same(t.keys, table) && !t.array);
394
+ if (header !== undefined && !before.tables.some(t => same(t.keys, table)) &&
395
+ parsed.entries.every(e => removed.has(e) || !under(e.keys)) && !parsed.tables.some(t => under(t.keys))) {
396
+ edits.push(line(header.start, header.start));
397
+ }
398
+ }
399
+ let result = text;
400
+ for (const edit of edits.sort((a, b) => b.start - a.start))
401
+ result = result.slice(0, edit.start) + edit.text + result.slice(edit.end);
402
+ // The marker went in after a blank line, so that line goes with it.
403
+ const lines = result.split("\n");
404
+ for (let n = lines.length - 1; n >= 0; n--) {
405
+ if (lines[n].trim() !== "# openlimiter managed")
406
+ continue;
407
+ const blank = n > 0 && lines[n - 1].trim() === "";
408
+ lines.splice(blank ? n - 1 : n, blank ? 2 : 1);
409
+ }
410
+ result = lines.join("\n");
411
+ parseToml(result);
412
+ return result;
413
+ }
357
414
  //# sourceMappingURL=terminal-toml.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"terminal-toml.js","sourceRoot":"","sources":["../src/terminal-toml.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"terminal-toml.js","sourceRoot":"","sources":["../src/terminal-toml.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"terminal.d.ts","sourceRoot":"","sources":["../src/terminal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"terminal.d.ts","sourceRoot":"","sources":["../src/terminal.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,KAAK,uBAAuB,EAI7B,MAAM,mBAAmB,CAAC;AAsB3B,eAAO,MAAM,mBAAmB,EAAE,SAAS,MAAM,EAMhD,CAAC;AAEF,eAAO,MAAM,4BAA4B,iDACO,CAAC;AAEjD,eAAO,MAAM,YAAY,UAAU,CAAC;AACpC;;;;;;;;GAQG;AACH,eAAO,MAAM,qBAAqB,iDAAiD,CAAC;AACpF,eAAO,MAAM,gBAAgB,cAAc,CAAC;AAC5C,eAAO,MAAM,sBAAsB,qBAAqB,CAAC;AAEzD,MAAM,WAAW,mBAAmB;IAClC,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC;IAC3D,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC;IAC1B,iBAAiB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,6EAA6E;IAC7E,WAAW,CAAC,EAAE,uBAAuB,CAAC;IACtC,gFAAgF;IAChF,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,uBAAuB;IACtC,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;CACjB;AAkFD,MAAM,MAAM,wBAAwB,CAAC,CAAC,IAClC;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,GACnB;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,GACvC;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,CAAC,CAAA;CAAE,CAAC;AAE5B,wBAAsB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,wBAAwB,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAuBjH;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAElD;AAED,wBAAsB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAC,CAkBhG;AAsND,eAAO,MAAM,aAAa,GAAI,SAAS,mBAAmB,KAAG,OAAO,CAAC,uBAAuB,CAA8C,CAAC;AAC3I,eAAO,MAAM,eAAe,GAAI,SAAS,mBAAmB,KAAG,OAAO,CAAC,uBAAuB,CAA+C,CAAC;AAC9I,eAAO,MAAM,kBAAkB,GAAI,SAAS,mBAAmB,KAAG,OAAO,CAAC,uBAAuB,CAAmD,CAAC;AACrJ,eAAO,MAAM,oBAAoB,GAAI,SAAS,mBAAmB,KAAG,OAAO,CAAC,uBAAuB,CAAoD,CAAC;AACxJ,eAAO,MAAM,WAAW,GAAI,SAAS,mBAAmB,KAAG,OAAO,CAAC,uBAAuB,CAA4C,CAAC;AACvI,eAAO,MAAM,aAAa,GAAI,SAAS,mBAAmB,KAAG,OAAO,CAAC,uBAAuB,CAA6C,CAAC;AAC1I,eAAO,MAAM,YAAY,GAAI,SAAS,mBAAmB,KAAG,OAAO,CAAC,uBAAuB,CAA6C,CAAC;AACzI,eAAO,MAAM,cAAc,GAAI,SAAS,mBAAmB,KAAG,OAAO,CAAC,uBAAuB,CAA8C,CAAC;AAsJ5I,wBAAsB,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAwCjG;AAED,wBAAsB,cAAc,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAiBnG;AA8DD;;;;;;;;GAQG;AACH,wBAAsB,UAAU,CAC9B,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,MAAM,CAAC,CA6CjB;AAED;;GAEG;AACH,wBAAsB,WAAW,CAC/B,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,uBAAuB,CAAC,CAWlC;AAED;;GAEG;AACH,wBAAsB,aAAa,CACjC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,uBAAuB,CAAC,CAWlC;AAED;;GAEG;AACH,eAAO,MAAM,wBAAwB;;;;;;;CAO3B,CAAC;AAEX,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,MAAM,CAAC,CAoCjB;AAmDD,eAAO,MAAM,YAAY,GAAI,KAAK,SAAS,MAAM,EAAE,EAAE,SAAS,mBAAmB,KAAG,OAAO,CAAC,uBAAuB,CAC3E,CAAC;AAEzC,eAAO,MAAM,YAAY,GAAI,KAAK,SAAS,MAAM,EAAE,EAAE,SAAS,mBAAmB,KAAG,OAAO,CAAC,uBAAuB,CAC1E,CAAC"}