@lingjingai/scriptctl 0.28.4 → 0.30.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.
Files changed (117) hide show
  1. package/changes/0.29.0.md +17 -0
  2. package/dist/cli.js +25 -3
  3. package/dist/cli.js.map +1 -1
  4. package/dist/common.d.ts +1 -0
  5. package/dist/common.js +3 -0
  6. package/dist/common.js.map +1 -1
  7. package/dist/domain/direct/runner.d.ts +23 -0
  8. package/dist/domain/direct/runner.js +72 -0
  9. package/dist/domain/direct/runner.js.map +1 -0
  10. package/dist/domain/direct/stage.d.ts +86 -0
  11. package/dist/domain/direct/stage.js +131 -0
  12. package/dist/domain/direct/stage.js.map +1 -0
  13. package/dist/domain/direct/stages/asset-curation.d.ts +2 -0
  14. package/dist/domain/direct/stages/asset-curation.js +9 -0
  15. package/dist/domain/direct/stages/asset-curation.js.map +1 -0
  16. package/dist/domain/direct/stages/batch-extract.d.ts +2 -0
  17. package/dist/domain/direct/stages/batch-extract.js +12 -0
  18. package/dist/domain/direct/stages/batch-extract.js.map +1 -0
  19. package/dist/domain/direct/stages/batch-plan.d.ts +2 -0
  20. package/dist/domain/direct/stages/batch-plan.js +9 -0
  21. package/dist/domain/direct/stages/batch-plan.js.map +1 -0
  22. package/dist/domain/direct/stages/episode-merge.d.ts +2 -0
  23. package/dist/domain/direct/stages/episode-merge.js +11 -0
  24. package/dist/domain/direct/stages/episode-merge.js.map +1 -0
  25. package/dist/domain/direct/stages/episode-plan.d.ts +2 -0
  26. package/dist/domain/direct/stages/episode-plan.js +9 -0
  27. package/dist/domain/direct/stages/episode-plan.js.map +1 -0
  28. package/dist/domain/direct/stages/episode-synopsis.d.ts +2 -0
  29. package/dist/domain/direct/stages/episode-synopsis.js +12 -0
  30. package/dist/domain/direct/stages/episode-synopsis.js.map +1 -0
  31. package/dist/domain/direct/stages/episode-titles.d.ts +2 -0
  32. package/dist/domain/direct/stages/episode-titles.js +12 -0
  33. package/dist/domain/direct/stages/episode-titles.js.map +1 -0
  34. package/dist/domain/direct/stages/index.d.ts +17 -0
  35. package/dist/domain/direct/stages/index.js +37 -0
  36. package/dist/domain/direct/stages/index.js.map +1 -0
  37. package/dist/domain/direct/stages/metadata.d.ts +2 -0
  38. package/dist/domain/direct/stages/metadata.js +11 -0
  39. package/dist/domain/direct/stages/metadata.js.map +1 -0
  40. package/dist/domain/direct/stages/script-merge.d.ts +2 -0
  41. package/dist/domain/direct/stages/script-merge.js +15 -0
  42. package/dist/domain/direct/stages/script-merge.js.map +1 -0
  43. package/dist/domain/direct/stages/script-synopsis.d.ts +2 -0
  44. package/dist/domain/direct/stages/script-synopsis.js +12 -0
  45. package/dist/domain/direct/stages/script-synopsis.js.map +1 -0
  46. package/dist/domain/direct/stages/source-prepare.d.ts +2 -0
  47. package/dist/domain/direct/stages/source-prepare.js +9 -0
  48. package/dist/domain/direct/stages/source-prepare.js.map +1 -0
  49. package/dist/domain/direct/stages/validate.d.ts +2 -0
  50. package/dist/domain/direct/stages/validate.js +10 -0
  51. package/dist/domain/direct/stages/validate.js.map +1 -0
  52. package/dist/domain/direct-core.js +15 -1
  53. package/dist/domain/direct-core.js.map +1 -1
  54. package/dist/help-text.js +1 -1
  55. package/dist/infra/local-script-output-store.d.ts +2 -1
  56. package/dist/infra/local-script-output-store.js +11 -0
  57. package/dist/infra/local-script-output-store.js.map +1 -1
  58. package/dist/infra/providers.js +13 -4
  59. package/dist/infra/providers.js.map +1 -1
  60. package/dist/infra/script-output-api.d.ts +28 -4
  61. package/dist/infra/script-output-api.js +142 -106
  62. package/dist/infra/script-output-api.js.map +1 -1
  63. package/dist/infra/script-output-store.d.ts +33 -0
  64. package/dist/infra/script-output-store.js +19 -0
  65. package/dist/infra/script-output-store.js.map +1 -1
  66. package/dist/usecases/direct.d.ts +14 -0
  67. package/dist/usecases/direct.js +701 -358
  68. package/dist/usecases/direct.js.map +1 -1
  69. package/dist/usecases/parse.js +5 -3
  70. package/dist/usecases/parse.js.map +1 -1
  71. package/dist/usecases/script/actions.js.map +1 -1
  72. package/dist/usecases/script/actor.js.map +1 -1
  73. package/dist/usecases/script/actors.js.map +1 -1
  74. package/dist/usecases/script/add-actor.js.map +1 -1
  75. package/dist/usecases/script/add-episode.js.map +1 -1
  76. package/dist/usecases/script/add-location.js.map +1 -1
  77. package/dist/usecases/script/add-prop.js.map +1 -1
  78. package/dist/usecases/script/add-speaker.js.map +1 -1
  79. package/dist/usecases/script/alias.js.map +1 -1
  80. package/dist/usecases/script/assets.js.map +1 -1
  81. package/dist/usecases/script/context.js.map +1 -1
  82. package/dist/usecases/script/create.js.map +1 -1
  83. package/dist/usecases/script/delete.js.map +1 -1
  84. package/dist/usecases/script/describe.js.map +1 -1
  85. package/dist/usecases/script/dialogue.js.map +1 -1
  86. package/dist/usecases/script/do.js.map +1 -1
  87. package/dist/usecases/script/episodes.js.map +1 -1
  88. package/dist/usecases/script/export.js.map +1 -1
  89. package/dist/usecases/script/insert.js.map +1 -1
  90. package/dist/usecases/script/issues.js.map +1 -1
  91. package/dist/usecases/script/lib.js.map +1 -1
  92. package/dist/usecases/script/locations.js.map +1 -1
  93. package/dist/usecases/script/merge.js.map +1 -1
  94. package/dist/usecases/script/move.js.map +1 -1
  95. package/dist/usecases/script/overlap.js.map +1 -1
  96. package/dist/usecases/script/props.js.map +1 -1
  97. package/dist/usecases/script/refs.js.map +1 -1
  98. package/dist/usecases/script/rename.js.map +1 -1
  99. package/dist/usecases/script/replace.js.map +1 -1
  100. package/dist/usecases/script/role.js.map +1 -1
  101. package/dist/usecases/script/scenes.js.map +1 -1
  102. package/dist/usecases/script/script-patch.js.map +1 -1
  103. package/dist/usecases/script/script-validate.js.map +1 -1
  104. package/dist/usecases/script/session.d.ts +1 -0
  105. package/dist/usecases/script/session.js +20 -5
  106. package/dist/usecases/script/session.js.map +1 -1
  107. package/dist/usecases/script/speakers.js.map +1 -1
  108. package/dist/usecases/script/split.js.map +1 -1
  109. package/dist/usecases/script/state-add.js.map +1 -1
  110. package/dist/usecases/script/state-change.js.map +1 -1
  111. package/dist/usecases/script/state-delete.js.map +1 -1
  112. package/dist/usecases/script/state-rename.js.map +1 -1
  113. package/dist/usecases/script/summary.js.map +1 -1
  114. package/dist/usecases/script/transition.js.map +1 -1
  115. package/dist/usecases/script/type.js.map +1 -1
  116. package/dist/usecases/script/worldview.js.map +1 -1
  117. package/package.json +2 -1
package/dist/help-text.js CHANGED
@@ -145,7 +145,7 @@ Options
145
145
  - --workspace-path Workspace directory. Default: workspace
146
146
  - --provider LLM provider: anthropic, mock(test only). Default: anthropic
147
147
  - --model Provider model. Default: claude-sonnet-4-6-aihubmix
148
- - --concurrency Parallel episode extraction workers. Default: 30
148
+ - --concurrency Parallel episode extraction workers. Default: 80
149
149
  - --batch-mode Batch planning mode: episode. Default: episode
150
150
  - --batch-target-lines Target non-metadata content lines per batch. Default: 36
151
151
  - --batch-max-chars Soft character cap per batch. Default: 1800
@@ -1,4 +1,4 @@
1
- import { type ReplaceScriptOptions, type SaveValidationOptions, type ScriptOutputStore } from "./script-output-store.js";
1
+ import { type PatchScriptOptions, type ReplaceScriptOptions, type SaveValidationOptions, type ScriptOutputStore } from "./script-output-store.js";
2
2
  /**
3
3
  * Filesystem-backed ScriptOutputStore for local debugging. Layout:
4
4
  *
@@ -38,5 +38,6 @@ export declare class LocalScriptOutputStore implements ScriptOutputStore {
38
38
  getScript(): Promise<Record<string, unknown> | null>;
39
39
  getRevision(): Promise<Record<string, unknown> | null>;
40
40
  replaceScript(opts: ReplaceScriptOptions): Promise<Record<string, unknown>>;
41
+ patchScript(opts: PatchScriptOptions): Promise<Record<string, unknown>>;
41
42
  saveValidationResult(opts: SaveValidationOptions): Promise<Record<string, unknown>>;
42
43
  }
@@ -140,6 +140,17 @@ export class LocalScriptOutputStore {
140
140
  idempotent: false,
141
141
  };
142
142
  }
143
+ // The local store has no incremental endpoint either: an edit re-writes the
144
+ // whole edited document through the same CAS path as replaceScript. Keeps the
145
+ // local debug store behaviourally identical to V1 remote.
146
+ async patchScript(opts) {
147
+ return this.replaceScript({
148
+ requestId: opts.requestId,
149
+ baseRevision: opts.baseRevision,
150
+ script: opts.edited,
151
+ source: opts.source,
152
+ });
153
+ }
143
154
  async saveValidationResult(opts) {
144
155
  fs.mkdirSync(path.join(this.dirPath, "validations"), { recursive: true });
145
156
  writeJson(this.validationPath(opts.revision), {
@@ -1 +1 @@
1
- {"version":3,"file":"local-script-output-store.js","sourceRoot":"","sources":["../../src/infra/local-script-output-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAElC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,EACL,oBAAoB,GAIrB,MAAM,0BAA0B,CAAC;AAElC,MAAM,eAAe,GAAG,GAAG,CAAC;AAc5B;;;;;;;;;;;;;;;GAeG;AACH,MAAM,OAAO,sBAAsB;IACxB,OAAO,CAAS;IAEzB,YAAY,OAAe;QACzB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,uEAAuE;IACvE,0EAA0E;IAC1E,yEAAyE;IACzE,UAAU;IACV,IAAI,cAAc;QAChB,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED;;;;;;;;;;OAUG;IACH,MAAM,CAAC,OAAO,CAAC,aAAsB;QACnC,MAAM,MAAM,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAC/D,MAAM,EAAE,GAAG,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,WAAW,CAAC;QACvD,MAAM,GAAG,GAAG,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;QAC1E,IAAI,CAAC;YACH,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACzC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAChE,MAAM,IAAI,oBAAoB,CAAC,kCAAkC,MAAM,EAAE,EAAE;gBACzE,aAAa,EAAE,QAAQ;aACxB,CAAC,CAAC;QACL,CAAC;QACD,OAAO,IAAI,sBAAsB,CAAC,GAAG,CAAC,CAAC;IACzC,CAAC;IAED,IAAY,UAAU;QACpB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;IAChD,CAAC;IAED,IAAY,YAAY;QACtB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;IAClD,CAAC;IAEO,cAAc,CAAC,GAAW;QAChC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,aAAa,EAAE,IAAI,GAAG,OAAO,CAAC,CAAC;IAChE,CAAC;IAEO,YAAY;QAClB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC;YAAE,OAAO,IAAI,CAAC;QAC5C,OAAO,QAAQ,CAAe,IAAI,CAAC,YAAY,CAAC,CAAC;IACnD,CAAC;IAED,KAAK,CAAC,SAAS;QACb,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC;YAAE,OAAO,IAAI,CAAC;QAC1C,OAAO,QAAQ,CAA0B,IAAI,CAAC,UAAU,CAAC,CAAC;IAC5D,CAAC;IAED,KAAK,CAAC,WAAW;QACf,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAChC,IAAI,GAAG,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QAC9B,OAAO,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,IAA0B;QAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QACpC,MAAM,eAAe,GAAG,OAAO,EAAE,QAAQ,IAAI,CAAC,CAAC;QAE/C,kEAAkE;QAClE,6DAA6D;QAC7D,MAAM,MAAM,GAAG,OAAO,EAAE,WAAW,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACtD,IAAI,MAAM,EAAE,CAAC;YACX,OAAO;gBACL,YAAY,EAAE,MAAM,CAAC,YAAY;gBACjC,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,UAAU,EAAE,IAAI;aACjB,CAAC;QACJ,CAAC;QAED,IAAI,IAAI,CAAC,YAAY,KAAK,eAAe,EAAE,CAAC;YAC1C,MAAM,IAAI,oBAAoB,CAC5B,uBAAuB,IAAI,CAAC,YAAY,oBAAoB,eAAe,EAAE,EAC7E,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,CAC5B,CAAC;QACJ,CAAC;QAED,MAAM,YAAY,GAAG,eAAe,GAAG,CAAC,CAAC;QACzC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC;QACpC,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAE3C,0EAA0E;QAC1E,uEAAuE;QACvE,wEAAwE;QACxE,kEAAkE;QAClE,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAExC,MAAM,WAAW,GAAG,EAAE,GAAG,CAAC,OAAO,EAAE,WAAW,IAAI,EAAE,CAAC,EAAE,CAAC;QACxD,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG;YAC5B,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,QAAQ,EAAE,YAAY;YACtB,MAAM;SACP,CAAC;QACF,0EAA0E;QAC1E,wEAAwE;QACxE,2EAA2E;QAC3E,4EAA4E;QAC5E,MAAM,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACjD,IAAI,eAAe,CAAC,MAAM,GAAG,eAAe,EAAE,CAAC;YAC7C,KAAK,MAAM,KAAK,IAAI,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE,eAAe,CAAC,MAAM,GAAG,eAAe,CAAC,EAAE,CAAC;gBACvF,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC;QAED,SAAS,CAAC,IAAI,CAAC,YAAY,EAAE;YAC3B,QAAQ,EAAE,YAAY;YACtB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,MAAM;YACN,SAAS;YACT,WAAW;SACZ,CAAC,CAAC;QAEH,OAAO;YACL,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,QAAQ,EAAE,YAAY;YACtB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,MAAM;YACN,UAAU,EAAE,KAAK;SAClB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,IAA2B;QACpD,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1E,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;YAC5C,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;YACvC,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;YACzC,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,OAAO,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SAClC,CAAC,CAAC;QACH,wEAAwE;QACxE,6DAA6D;QAC7D,OAAO,EAAE,CAAC;IACZ,CAAC;CACF"}
1
+ {"version":3,"file":"local-script-output-store.js","sourceRoot":"","sources":["../../src/infra/local-script-output-store.ts"],"names":[],"mappings":"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"}
@@ -438,11 +438,20 @@ export class AnthropicProvider {
438
438
  ...locations.map((l) => ({ id: l["location_id"], name: l["location_name"], states: l["states"], examples: l["examples"] })),
439
439
  ...props.map((p) => ({ id: p["prop_id"], name: p["prop_name"], examples: p["examples"] })),
440
440
  ];
441
- const descriptionsById = new Map();
441
+ // Description chunks are independent (each merges into descriptionsById by
442
+ // id), so fan them out concurrently instead of one-await-at-a-time. Chunk
443
+ // count is small (≤ ceil(assets / DEFAULT_METADATA_ASSET_CHUNK)) and every
444
+ // request is already tiny + self-retrying, so a plain Promise.all is the
445
+ // right bound — this is what turns metadata from a serial back-to-back
446
+ // crawl into the same parallel profile as the other LLM stages.
447
+ const chunks = [];
442
448
  for (let i = 0; i < pooled.length; i += DEFAULT_METADATA_ASSET_CHUNK) {
443
- const chunk = pooled.slice(i, i + DEFAULT_METADATA_ASSET_CHUNK);
444
- const raw = await this.runMetadataMarkdown("You write one concise visual description per asset, for downstream art generation.\n" +
445
- "Use only the structured context below. Do not invent plot events outside it.", METADATA_DESC_MD_SPEC, { title: context["title"], assets: chunk });
449
+ chunks.push(pooled.slice(i, i + DEFAULT_METADATA_ASSET_CHUNK));
450
+ }
451
+ const descriptionsById = new Map();
452
+ const rawChunks = await Promise.all(chunks.map((chunk) => this.runMetadataMarkdown("You write one concise visual description per asset, for downstream art generation.\n" +
453
+ "Use only the structured context below. Do not invent plot events outside it.", METADATA_DESC_MD_SPEC, { title: context["title"], assets: chunk })));
454
+ for (const raw of rawChunks) {
446
455
  for (const [id, desc] of parseAssetDescriptionsMd(raw))
447
456
  descriptionsById.set(id, desc);
448
457
  }
@@ -1 +1 @@
1
- {"version":3,"file":"providers.js","sourceRoot":"","sources":["../../src/infra/providers.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,mBAAmB,CAAC;AAE1C,OAAO,EACL,QAAQ,EACR,wBAAwB,EACxB,kBAAkB,EAClB,8BAA8B,EAC9B,uBAAuB,EACvB,+BAA+B,EAC/B,YAAY,EACZ,UAAU,EACV,4BAA4B,EAE5B,0BAA0B,EAC1B,qBAAqB,EACrB,uBAAuB,EACvB,sBAAsB,GACvB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,cAAc,EACd,uBAAuB,EACvB,yBAAyB,EACzB,iBAAiB,EACjB,wBAAwB,EACxB,oBAAoB,EACpB,8BAA8B,EAC9B,2BAA2B,EAC3B,4BAA4B,EAC5B,8BAA8B,EAC9B,iBAAiB,EACjB,wBAAwB,EACxB,wBAAwB,EACxB,qBAAqB,EACrB,kBAAkB,EAClB,gBAAgB,GAEjB,MAAM,0BAA0B,CAAC;AAclC,MAAM,qBAAqB,GAAyC;IAClE,IAAI,EAAE;QACJ,YAAY,EAAE,IAAI;QAClB,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,IAAI;QACpB,eAAe,EAAE,IAAI;QACrB,oBAAoB,EAAE,IAAI;QAC1B,sBAAsB,EAAE,IAAI;QAC5B,qBAAqB,EAAE,IAAI;KAC5B;IACD,SAAS,EAAE;QACT,YAAY,EAAE,IAAI;QAClB,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,IAAI;QACpB,eAAe,EAAE,IAAI;QACrB,oBAAoB,EAAE,IAAI;QAC1B,sBAAsB,EAAE,IAAI;QAC5B,qBAAqB,EAAE,IAAI;KAC5B;IACD,MAAM,EAAE;QACN,YAAY,EAAE,IAAI;QAClB,YAAY,EAAE,KAAK;QACnB,cAAc,EAAE,KAAK;QACrB,eAAe,EAAE,KAAK;QACtB,oBAAoB,EAAE,KAAK;QAC3B,sBAAsB,EAAE,KAAK;QAC7B,qBAAqB,EAAE,KAAK;KAC7B;CACF,CAAC;AAEF,MAAM,UAAU,oBAAoB,CAAC,IAAY;IAC/C,OAAO,qBAAqB,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;AAC7C,CAAC;AAED,SAAS,KAAK,CAAC,CAAU;IACvB,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,SAAS;QAAE,OAAO,EAAE,CAAC;IAC7C,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;AACnB,CAAC;AAED,SAAS,MAAM,CAAC,CAAU;IACxB,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,MAAM,CAAc,CAAU;IACrC,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,CAAS,CAAC,CAAC,CAAC,EAAE,CAAC;AAC5C,CAAC;AAED,SAAS,MAAM,CAAC,CAAU;IACxB,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AAClE,CAAC;AAED,SAAS,OAAO,CAAC,EAAU;IACzB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AAC3D,CAAC;AAED,8EAA8E;AAC9E,gBAAgB;AAChB,8EAA8E;AAE9E,MAAM,OAAO,YAAY;IACd,IAAI,GAAG,MAAM,CAAC;IAEvB,YAAY,CAAC,OAAyC;QACpD,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC9B,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;QAC1B,IAAI,IAAI,GAAG,EAAE,CAAC;QACd,IAAI,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YAC/B,MAAM,IAAI,GAAG,uBAAuB,CAAC,IAAI,CAAC,CAAC;YAC3C,IAAI,GAAG;gBACL,SAAS;gBACT,QAAQ,IAAI,EAAE;gBACd,EAAE;gBACF,SAAS;gBACT,KAAK,IAAI,EAAE;gBACX,EAAE;gBACF,SAAS;gBACT,iBAAiB;gBACjB,EAAE;gBACF,SAAS;gBACT,IAAI;aACL,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACf,CAAC;aAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YACtC,MAAM,IAAI,GAAG,uBAAuB,CAAC,IAAI,CAAC,CAAC;YAC3C,IAAI,GAAG;gBACL,SAAS;gBACT,QAAQ,IAAI,EAAE;gBACd,EAAE;gBACF,SAAS;gBACT,IAAI;gBACJ,EAAE;gBACF,SAAS;gBACT,KAAK,IAAI,EAAE;aACZ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACf,CAAC;aAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YACtC,MAAM,IAAI,GAAG,uBAAuB,CAAC,IAAI,CAAC,CAAC;YAC3C,IAAI,GAAG;gBACL,SAAS;gBACT,QAAQ,IAAI,EAAE;gBACd,EAAE;gBACF,SAAS;gBACT,KAAK,IAAI,EAAE;gBACX,EAAE;gBACF,UAAU;gBACV,IAAI;aACL,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACf,CAAC;aAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YACtC,MAAM,IAAI,GAAG,uBAAuB,CAAC,IAAI,CAAC,CAAC;YAC3C,IAAI,GAAG;gBACL,SAAS;gBACT,QAAQ,IAAI,EAAE;gBACd,EAAE;gBACF,OAAO;gBACP,YAAY;gBACZ,EAAE;gBACF,QAAQ;gBACR,cAAc;gBACd,EAAE;gBACF,OAAO;gBACP,YAAY;gBACZ,EAAE;gBACF,SAAS;gBACT,WAAW;aACZ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACf,CAAC;aAAM,CAAC;YACN,IAAI,GAAG,uBAAuB,CAAC,IAAI,CAAC,CAAC;QACvC,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC;IAC3D,CAAC;IAED,cAAc,CAAC,UAAkB,EAAE,WAAiB;QAClD,OAAO,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IACpD,CAAC;IAED,YAAY,CAAC,UAAkB,EAAE,SAAe;QAC9C,MAAM,MAAM,GAAG,2BAA2B,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;QAClE,MAAM,MAAM,GAAW,EAAE,CAAC;QAC1B,MAAM,SAAS,GAAW,EAAE,CAAC;QAC7B,MAAM,KAAK,GAAW,EAAE,CAAC;QACzB,MAAM,QAAQ,GAAW,EAAE,CAAC;QAC5B,KAAK,MAAM,KAAK,IAAI,MAAM,CAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;YACnD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAS,KAAK,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC;gBACxD,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,CAAC;YACnD,CAAC;YACD,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YACjD,IAAI,GAAG,IAAI,GAAG,KAAK,MAAM;gBAAE,cAAc,CAAC,SAAS,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;YAChE,KAAK,MAAM,IAAI,IAAI,MAAM,CAAS,KAAK,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC;gBACvD,cAAc,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,CAAC;YAClD,CAAC;YACD,KAAK,MAAM,MAAM,IAAI,MAAM,CAAO,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;gBACpD,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBAChD,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBACzD,IAAI,OAAO,IAAI,WAAW,IAAI,WAAW,KAAK,OAAO,EAAE,CAAC;oBACtD,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;gBAChF,CAAC;YACH,CAAC;QACH,CAAC;QACD,MAAM,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC;QAC1B,MAAM,CAAC,WAAW,CAAC,GAAG,SAAS,CAAC;QAChC,MAAM,CAAC,OAAO,CAAC,GAAG,KAAK,CAAC;QACxB,MAAM,CAAC,UAAU,CAAC,GAAG,uBAAuB,CAAC,QAAQ,CAAC,CAAC;QACvD,4EAA4E;QAC5E,sEAAsE;QACtE,MAAM,YAAY,GAAG,MAAM,CAAO,MAAM,CAAC,QAAQ,CAAC,CAAC;aAChD,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAO,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;aAClD,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;aAChD,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC7B,IAAI,YAAY;YAAE,MAAM,CAAC,UAAU,CAAC,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACjE,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,eAAe,CAAC,WAAmB,EAAE,MAAY;QAC/C,OAAO,4BAA4B,CAAC,MAAM,CAAC,CAAC;IAC9C,CAAC;IAED,sBAAsB,CAAC,QAAkB,EAAE,IAAU;QACnD,0EAA0E;QAC1E,yEAAyE;QACzE,mEAAmE;QACnE,OAAO,EAAE,QAAQ,EAAE,UAAU,iBAAiB,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;IACzE,CAAC;IAED,qBAAqB,CAAC,QAAkB,EAAE,IAAU;QAClD,MAAM,MAAM,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACrD,OAAO;YACL,QAAQ,EAAE,MAAM;YAChB,KAAK,EAAE,YAAY;YACnB,OAAO,EAAE,cAAc;YACvB,KAAK,EAAE,YAAY;YACnB,eAAe,EAAE,EAAE;SACpB,CAAC;IACJ,CAAC;IAED,oBAAoB,CAAC,UAAkB,EAAE,WAAiB;QACxD,OAAO;YACL,cAAc,EAAE,8BAA8B,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;gBACvE,OAAO,EAAE,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;gBACnC,KAAK,EAAE,8BAA8B,CAAC,UAAU,EAAE,EAAE,CAAC;aACtD,CAAC,CAAC;SACJ,CAAC;IACJ,CAAC;CACF;AAED,8EAA8E;AAC9E,qBAAqB;AACrB,8EAA8E;AAE9E,MAAM,OAAO,iBAAiB;IACnB,IAAI,GAAG,WAAW,CAAC;IACX,MAAM,CAAY;IAClB,KAAK,CAAS;IAE/B,YAAY,KAAa;QACvB,MAAM,MAAM,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,+BAA+B,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAC1E,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,QAAQ,CAChB,sCAAsC,EACtC,+DAA+D,EAC/D;gBACE,QAAQ,EAAE,YAAY;gBACtB,QAAQ,EAAE,CAAC,iCAAiC,CAAC;gBAC7C,QAAQ,EAAE,CAAC,iCAAiC,CAAC;gBAC7C,SAAS,EAAE,CAAC,2DAA2D,CAAC;gBACxE,SAAS,EAAE,uBAAuB;aACnC,CACF,CAAC;QACJ,CAAC;QACD,MAAM,OAAO,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,gCAAgC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAC5E,MAAM,IAAI,GAAyC,EAAE,MAAM,EAAE,CAAC;QAC9D,IAAI,OAAO;YAAE,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACpC,IAAI,CAAC,MAAM,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC;QAClC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAEO,cAAc,CAAC,MAAc,EAAE,SAAkB;QAMvD,MAAM,YAAY,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QACrE,IAAI,mBAAmB,GAAG,kBAAkB,CAAC;QAC7C,IAAI,YAAY,EAAE,CAAC;YACjB,MAAM,MAAM,GAAG,QAAQ,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;YAC1C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;gBAAE,mBAAmB,GAAG,MAAM,CAAC;QAC1D,CAAC;QACD,IAAI,WAAW,GAAG,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,mBAAmB,CAAC;QAC5E,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,mBAAmB,EAAE,kBAAkB,CAAC,CAAC,CAAC;QAC7F,MAAM,OAAO,GAAoD;YAC/D,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,UAAU,EAAE,WAAW;YACvB,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;SAC9C,CAAC;QACF,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YAClC,MAAM,SAAS,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,gCAAgC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YAC9E,IAAI,MAAM,GAAG,8BAA8B,CAAC;YAC5C,IAAI,SAAS,EAAE,CAAC;gBACd,MAAM,MAAM,GAAG,QAAQ,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;gBACvC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;oBAAE,MAAM,GAAG,MAAM,CAAC;YAC7C,CAAC;YACD,OAAO,CAAC,QAAQ,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC;QAC9G,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,kBAAkB,CAAC,MAAc,EAAE,IAAY,EAAE,SAAkB;QAOzE,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QACrD,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;IAC1D,CAAC;IAEO,KAAK,CAAC,mBAAmB,CAAC,OAAwD;QACxF,sEAAsE;QACtE,6EAA6E;QAC7E,0EAA0E;QAC1E,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC5D,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;IACnE,CAAC;IAED;;;;;;OAMG;IACK,KAAK,CAAC,mBAAmB,CAC/B,OAAgC,EAChC,QAAgB;QAIhB,6EAA6E;QAC7E,4EAA4E;QAC5E,8EAA8E;QAC9E,2EAA2E;QAC3E,wCAAwC;QACxC,MAAM,QAAQ,GAAG,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAkC,CAAC,CAAY,CAAC;QACpG,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,OAAO,IAAI,EAAE,EAAE,QAAQ,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;IAC3F,CAAC;IAED;;;;;;OAMG;IACK,KAAK,CAAC,UAAU,CAAC,IASxB;QACC,MAAM,OAAO,GAA4B,EAAE,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;QACjG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,YAAY,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QACvG,OAAO,CAAC,aAAa,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC/D,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACnF,IAAI,UAAU,KAAK,YAAY,EAAE,CAAC;YAChC,MAAM,IAAI,QAAQ,CAAC,IAAI,CAAC,cAAc,EAAE,GAAG,IAAI,CAAC,cAAc,GAAG,EAAE;gBACjE,QAAQ,EAAE,YAAY;gBACtB,QAAQ,EAAE,CAAC,0CAA0C,CAAC;gBACtD,QAAQ,EAAE,CAAC,gBAAgB,UAAU,EAAE,EAAE,eAAe,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;gBAChF,SAAS,EAAE,IAAI,CAAC,SAAS;aAC1B,CAAC,CAAC;QACL,CAAC;QACD,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,QAAQ,CAAC,IAAI,CAAC,YAAY,EAAE,GAAG,IAAI,CAAC,YAAY,GAAG,EAAE;gBAC7D,QAAQ,EAAE,YAAY;gBACtB,QAAQ,EAAE,CAAC,6BAA6B,IAAI,CAAC,QAAQ,GAAG,CAAC;gBACzD,QAAQ,EAAE,CAAC,gBAAgB,UAAU,IAAI,SAAS,EAAE,EAAE,2BAA2B,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACjG,SAAS,EAAE,IAAI,CAAC,SAAS;aAC1B,CAAC,CAAC;QACL,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,cAAc,CAAC,UAAkB,EAAE,WAAiB;QAClD,OAAO,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IACpD,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,OAAyC;QAC1D,MAAM,GAAG,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,EAAE,wBAAwB,CAAC,CAAC;QAC5F,MAAM,CAAC,GAAG,EAAE,UAAU,CAAC,GAAG,MAAM,IAAI,CAAC,4BAA4B,CAAC,GAAG,CAAC,CAAC;QACvE,IAAI,UAAU,KAAK,YAAY,EAAE,CAAC;YAChC,MAAM,IAAI,QAAQ,CAAC,uCAAuC,EAAE,4BAA4B,EAAE;gBACxF,QAAQ,EAAE,YAAY;gBACtB,QAAQ,EAAE,CAAC,0CAA0C,CAAC;gBACtD,QAAQ,EAAE,CAAC,gBAAgB,UAAU,EAAE,EAAE,eAAe,GAAG,CAAC,UAAU,EAAE,EAAE,cAAc,GAAG,CAAC,MAAM,EAAE,EAAE,SAAS,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,kBAAkB,EAAE,CAAC;gBACvJ,SAAS,EAAE,CAAC,uGAAuG,CAAC;gBACpH,SAAS,EAAE,2BAA2B;aACvC,CAAC,CAAC;QACL,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC;YAChB,MAAM,IAAI,QAAQ,CAAC,0CAA0C,EAAE,sCAAsC,EAAE;gBACrG,QAAQ,EAAE,YAAY;gBACtB,QAAQ,EAAE,CAAC,yBAAyB,CAAC;gBACrC,QAAQ,EAAE,CAAC,gBAAgB,UAAU,IAAI,SAAS,EAAE,EAAE,cAAc,CAAC;gBACrE,SAAS,EAAE,CAAC,uDAAuD,CAAC;gBACpE,SAAS,EAAE,yBAAyB;aACrC,CAAC,CAAC;QACL,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,EAAE,CAAC;IACzD,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,UAAkB,EAAE,SAAe;QACpD,MAAM,OAAO,GAAG,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,IAAI,OAAO,SAAS,CAAC,SAAS,CAAC,KAAK,QAAQ,IAAI,SAAS,CAAC,SAAS,CAAC,KAAK,IAAI;YACvH,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC;YACtB,CAAC,CAAC,EAAE,CAAC;QACP,MAAM,cAAc,GAAG,iBAAiB,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;QAChE,MAAM,MAAM,GACV,wFAAwF;YACxF,IAAI;YACJ,GAAG,0BAA0B,IAAI;YACjC,IAAI;YACJ,eAAe;YACf,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI;YAChC,IAAI;YACJ,sBAAsB;YACtB,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI;YAC9B,IAAI;YACJ,iBAAiB;YACjB,GAAG,cAAc,IAAI,CAAC;QACxB,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,wBAAwB,CAAC,CAAC;QACtE,MAAM,CAAC,GAAG,EAAE,UAAU,CAAC,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;QAClE,IAAI,UAAU,KAAK,YAAY,EAAE,CAAC;YAChC,MAAM,IAAI,QAAQ,CAAC,wCAAwC,EAAE,4BAA4B,EAAE;gBACzF,QAAQ,EAAE,YAAY;gBACtB,QAAQ,EAAE,CAAC,8CAA8C,CAAC;gBAC1D,QAAQ,EAAE;oBACR,gBAAgB,UAAU,EAAE;oBAC5B,eAAe,OAAO,CAAC,UAAU,EAAE;oBACnC,cAAc,GAAG,CAAC,MAAM,EAAE;oBAC1B,SAAS,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,kBAAkB,EAAE;iBACjD;gBACD,SAAS,EAAE,CAAC,oGAAoG,CAAC;gBACjH,SAAS,EAAE,2BAA2B;aACvC,CAAC,CAAC;QACL,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC;YAChB,2EAA2E;YAC3E,yEAAyE;YACzE,2EAA2E;YAC3E,yEAAyE;YACzE,MAAM,IAAI,QAAQ,CAAC,uCAAuC,EAAE,iEAAiE,EAAE;gBAC7H,QAAQ,EAAE,YAAY;gBACtB,QAAQ,EAAE,CAAC,kCAAkC,CAAC;gBAC9C,QAAQ,EAAE,CAAC,gBAAgB,UAAU,IAAI,SAAS,EAAE,EAAE,cAAc,CAAC;gBACrE,SAAS,EAAE;oBACT,+FAA+F;oBAC/F,8HAA8H;iBAC/H;gBACD,SAAS,EAAE,2BAA2B;aACvC,CAAC,CAAC;QACL,CAAC;QACD,MAAM,MAAM,GAAG,kBAAkB,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;QACjD,MAAe,CAAC,eAAe,CAAC,GAAG,GAAG,CAAC;QACxC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,UAAkB,EAAE,WAAiB;QAC9D,MAAM,OAAO,GAAG,wBAAwB,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;QAClE,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,cAAc,EAAE,EAAE,EAAE,CAAC;QACxD,MAAM,MAAM,GACV,uEAAuE;YACvE,8EAA8E;YAC9E,+CAA+C;YAC/C,IAAI;YACJ,iBAAiB;YACjB,8CAA8C;YAC9C,kGAAkG;YAClG,+FAA+F;YAC/F,6FAA6F;YAC7F,IAAI;YACJ,4BAA4B;YAC5B,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC;QACjC,OAAO,IAAI,CAAC,UAAU,CAAC;YACrB,MAAM;YACN,SAAS,EAAE,IAAI;YACf,QAAQ,EAAE,uBAAuB;YACjC,WAAW,EAAE,gEAAgE;YAC7E,MAAM,EAAE,+BAA+B;YACvC,cAAc,EAAE,6CAA6C;YAC7D,YAAY,EAAE,2DAA2D;YACzE,SAAS,EAAE,CAAC,kEAAkE,CAAC;SAChF,CAAC,CAAC;IACL,CAAC;IAED,gFAAgF;IAChF,0EAA0E;IAC1E,kFAAkF;IAClF,iFAAiF;IACjF,+EAA+E;IAC/E,4EAA4E;IAC5E,sCAAsC;IACtC,KAAK,CAAC,eAAe,CAAC,WAAmB,EAAE,MAAY;QACrD,MAAM,OAAO,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,MAAM,GAAG,MAAM,CAAO,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC/C,MAAM,SAAS,GAAG,MAAM,CAAO,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;QACrD,MAAM,KAAK,GAAG,MAAM,CAAO,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;QAE7C,+EAA+E;QAC/E,MAAM,aAAa,GAAG;YACpB,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC;YACvB,iBAAiB,EAAE,OAAO,CAAC,mBAAmB,CAAC;YAC/C,QAAQ,EAAE,OAAO,CAAC,UAAU,CAAC;YAC7B,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,UAAU,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;SACtF,CAAC;QACF,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAC9C,+FAA+F;YAC7F,2EAA2E,EAC7E,uBAAuB,EACvB,aAAa,CACd,CAAC;QACF,MAAM,EAAE,YAAY,EAAE,cAAc,EAAE,GAAG,qBAAqB,CAAC,SAAS,CAAC,CAAC;QAE1E,4EAA4E;QAC5E,gDAAgD;QAChD,MAAM,MAAM,GAAW;YACrB,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;YAClH,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;YAC3H,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,WAAW,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;SAC3F,CAAC;QACF,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAkB,CAAC;QACnD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,4BAA4B,EAAE,CAAC;YACrE,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,4BAA4B,CAAC,CAAC;YAChE,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,mBAAmB,CACxC,sFAAsF;gBACpF,8EAA8E,EAChF,qBAAqB,EACrB,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAC3C,CAAC;YACF,KAAK,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,wBAAwB,CAAC,GAAG,CAAC;gBAAE,gBAAgB,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QACzF,CAAC;QAED,IAAI,gBAAgB,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvF,2EAA2E;YAC3E,mEAAmE;YACnE,MAAM,IAAI,QAAQ,CAAC,iDAAiD,EAAE,sFAAsF,EAAE;gBAC5J,QAAQ,EAAE,YAAY;gBACtB,QAAQ,EAAE,CAAC,kDAAkD,CAAC;gBAC9D,SAAS,EAAE,CAAC,4EAA4E,CAAC;gBACzF,SAAS,EAAE,2BAA2B;aACvC,CAAC,CAAC;QACL,CAAC;QACD,OAAO,yBAAyB,CAAC,MAAM,EAAE,YAAY,EAAE,cAAc,EAAE,gBAAgB,CAAC,CAAC;IAC3F,CAAC;IAED,uEAAuE;IACvE,6EAA6E;IAC7E,2CAA2C;IACnC,KAAK,CAAC,mBAAmB,CAAC,KAAa,EAAE,IAAY,EAAE,OAAgB;QAC7E,MAAM,MAAM,GAAG,GAAG,KAAK,OAAO,IAAI,iBAAiB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC;QAC/E,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,wBAAwB,CAAC,CAAC;QACtE,MAAM,CAAC,GAAG,EAAE,UAAU,CAAC,GAAG,MAAM,IAAI,CAAC,4BAA4B,CAAC,OAAO,CAAC,CAAC;QAC3E,IAAI,UAAU,KAAK,YAAY,EAAE,CAAC;YAChC,MAAM,IAAI,QAAQ,CAAC,wCAAwC,EAAE,4BAA4B,EAAE;gBACzF,QAAQ,EAAE,YAAY;gBACtB,QAAQ,EAAE,CAAC,uDAAuD,CAAC;gBACnE,QAAQ,EAAE,CAAC,gBAAgB,UAAU,EAAE,EAAE,eAAe,OAAO,CAAC,UAAU,EAAE,EAAE,cAAc,GAAG,CAAC,MAAM,EAAE,EAAE,SAAS,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,kBAAkB,EAAE,CAAC;gBAC3J,SAAS,EAAE,CAAC,4EAA4E,CAAC;gBACzF,SAAS,EAAE,2BAA2B;aACvC,CAAC,CAAC;QACL,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAED,0EAA0E;IAC1E,gFAAgF;IAChF,gFAAgF;IAChF,2DAA2D;IACnD,KAAK,CAAC,4BAA4B,CACxC,OAAwD;QAExD,MAAM,QAAQ,GAAG,gBAAgB,EAAE,CAAC;QACpC,IAAI,OAAO,GAAY,IAAI,CAAC;QAC5B,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,QAAQ,EAAE,OAAO,EAAE,EAAE,CAAC;YACrD,IAAI,CAAC;gBACH,OAAO,MAAM,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;YACjD,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,wBAAwB,CAAC,GAAG,CAAC,IAAI,OAAO,GAAG,QAAQ,EAAE,CAAC;oBACxD,OAAO,GAAG,GAAG,CAAC;oBACd,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC;oBAC7C,SAAS;gBACX,CAAC;gBACD,MAAM,GAAG,CAAC;YACZ,CAAC;QACH,CAAC;QACD,MAAM,OAAO,IAAI,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;IACtE,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,QAAkB,EAAE,GAAS;QACxD,MAAM,KAAK,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QAC1C,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,YAAY,CAAC;QACzF,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;QAC1D,MAAM,iBAAiB,GAAG,SAAS;YACjC,CAAC,CAAC,+EAA+E;YACjF,CAAC,CAAC,kGAAkG,CAAC;QACvG,MAAM,MAAM,GACV,6DAA6D;YAC7D,8EAA8E;YAC9E,IAAI,KAAK,uDAAuD;YAChE,IAAI;YACJ,iBAAiB;YACjB,iBAAiB;YACjB,8BAA8B;YAC9B,uFAAuF;YACvF,wDAAwD;YACxD,gDAAgD;YAChD,IAAI;YACJ,yBAAyB;YACzB,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC;QAC/B,OAAO,IAAI,CAAC,UAAU,CAAC;YACrB,MAAM;YACN,SAAS,EAAE,IAAI;YACf,QAAQ,EAAE,yBAAyB;YACnC,WAAW,EAAE,oEAAoE;YACjF,MAAM,EAAE,uBAAuB;YAC/B,cAAc,EAAE,2CAA2C;YAC3D,YAAY,EAAE,yDAAyD;YACvE,SAAS,EAAE,CAAC,yEAAyE,CAAC;SACvF,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,QAAkB,EAAE,GAAS;QACvD,MAAM,eAAe,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QACpD,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACzC,MAAM,MAAM,GACV,kEAAkE;YAClE,iBAAiB,KAAK,IAAI,YAAY,KAAK;YAC3C,kFAAkF;YAClF,+CAA+C;YAC/C,IAAI;YACJ,iBAAiB;YACjB,8JAA8J;YAC9J,0EAA0E;YAC1E,mEAAmE;YACnE,kEAAkE;YAClE,wFAAwF;YACxF,gHAAgH;YAChH,IAAI;YACJ,+BAA+B;YAC/B,GAAG,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,IAAI,CAAC;QACzC,OAAO,IAAI,CAAC,UAAU,CAAC;YACrB,MAAM;YACN,SAAS,EAAE,IAAI;YACf,QAAQ,EAAE,wBAAwB;YAClC,WAAW,EAAE,sFAAsF;YACnG,MAAM,EAAE,sBAAsB;YAC9B,cAAc,EAAE,kDAAkD;YAClE,YAAY,EAAE,gEAAgE;YAC9E,SAAS,EAAE,CAAC,6EAA6E,CAAC;SAC3F,CAAC,CAAC;IACL,CAAC;CACF;AAED,8EAA8E;AAC9E,kCAAkC;AAClC,8EAA8E;AAE9E,MAAM,sBAAsB,GAAG,IAAI,CAAC;AAEpC,MAAM,OAAO,wBAAwB;IAC1B,IAAI,GAAG,QAAQ,CAAC;IACR,MAAM,CAAS;IACf,QAAQ,CAAS;IACjB,KAAK,CAAS;IAE/B,YAAY,KAAa;QACvB,MAAM,MAAM,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,+BAA+B,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAC1E,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,QAAQ,CAChB,sCAAsC,EACtC,+DAA+D,EAC/D;gBACE,QAAQ,EAAE,YAAY;gBACtB,QAAQ,EAAE,CAAC,iCAAiC,CAAC;gBAC7C,QAAQ,EAAE,CAAC,iCAAiC,CAAC;gBAC7C,SAAS,EAAE,CAAC,2DAA2D,CAAC;gBACxE,SAAS,EAAE,uBAAuB;aACnC,CACF,CAAC;QACJ,CAAC;QACD,MAAM,OAAO,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,gCAAgC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAC5E,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,QAAQ,CAChB,sCAAsC,EACtC,2DAA2D,EAC3D;gBACE,QAAQ,EAAE,YAAY;gBACtB,QAAQ,EAAE,CAAC,kCAAkC,CAAC;gBAC9C,QAAQ,EAAE,CAAC,sBAAsB,CAAC;gBAClC,SAAS,EAAE,CAAC,2DAA2D,CAAC;gBACxE,SAAS,EAAE,2BAA2B;aACvC,CACF,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,QAAQ,GAAG,6BAA6B,CAAC,OAAO,CAAC,CAAC;QACvD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,OAA+D;QAChF,MAAM,QAAQ,GAAwD,EAAE,CAAC;QACzE,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACrC,IAAI,MAAM;YAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QAC/D,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QAEvD,MAAM,IAAI,GAAG;YACX,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,QAAQ;YACR,UAAU,EAAE,sBAAsB;SACnC,CAAC;QACF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE;YAC1C,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,eAAe,EAAE,UAAU,IAAI,CAAC,MAAM,EAAE;gBACxC,cAAc,EAAE,kBAAkB;aACnC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;YAC1B,MAAM,EAAE,OAAO,CAAC,MAAM;SACvB,CAAC,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACtC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,QAAQ,CAAC,qCAAqC,EAAE,0BAA0B,EAAE;gBACpF,QAAQ,EAAE,YAAY;gBACtB,QAAQ,EAAE,CAAC,8CAA8C,CAAC;gBAC1D,QAAQ,EAAE,CAAC,WAAW,QAAQ,CAAC,MAAM,EAAE,EAAE,SAAS,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,kBAAkB,EAAE,CAAC;gBAChG,SAAS,EAAE,CAAC,gFAAgF,CAAC;gBAC7F,SAAS,EAAE,yBAAyB;aACrC,CAAC,CAAC;QACL,CAAC;QAED,MAAM,OAAO,GAAG,aAAa,CAAC,OAAO,EAAE,4CAA4C,CAAC,CAAC;QACrF,MAAM,MAAM,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAC1C,MAAM,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzE,MAAM,IAAI,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;QAChD,IAAI,YAAY,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,IAAI,QAAQ,CAAC,uCAAuC,EAAE,4BAA4B,EAAE;gBACxF,QAAQ,EAAE,YAAY;gBACtB,QAAQ,EAAE,CAAC,0CAA0C,CAAC;gBACtD,QAAQ,EAAE,CAAC,kBAAkB,YAAY,EAAE,EAAE,eAAe,sBAAsB,EAAE,EAAE,cAAc,IAAI,CAAC,MAAM,EAAE,EAAE,SAAS,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,kBAAkB,EAAE,CAAC;gBACrK,SAAS,EAAE,CAAC,uGAAuG,CAAC;gBACpH,SAAS,EAAE,2BAA2B;aACvC,CAAC,CAAC;QACL,CAAC;QACD,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,QAAQ,CAAC,0CAA0C,EAAE,sCAAsC,EAAE;gBACrG,QAAQ,EAAE,YAAY;gBACtB,QAAQ,EAAE,CAAC,yBAAyB,CAAC;gBACrC,QAAQ,EAAE,CAAC,kBAAkB,YAAY,IAAI,SAAS,EAAE,EAAE,cAAc,OAAO,CAAC,MAAM,EAAE,CAAC;gBACzF,SAAS,EAAE,CAAC,uDAAuD,CAAC;gBACpE,SAAS,EAAE,yBAAyB;aACrC,CAAC,CAAC;QACL,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,aAAa,EAAE,YAAY,EAAE,EAAE,CAAC;IACxD,CAAC;CACF;AAED,SAAS,gBAAgB,CAAC,QAA8D;IACtF,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,KAAK,IAAI,QAAQ,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;QAC3C,IAAI,KAAK,CAAC,IAAI;YAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACzC,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;AACjC,CAAC;AAED,SAAS,uBAAuB,CAAC,IAAY;IAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC/F,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AAC5F,CAAC;AAED;;;GAGG;AACH,SAAS,gBAAgB,CACvB,OAAyE,EACzE,QAAgB;IAEhB,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,IAAI,KAAK,EAAE,IAAI,KAAK,UAAU,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC1D,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC;YACxB,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;gBAAE,OAAO,GAAW,CAAC;YAC9E,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,6BAA6B,CAAC,OAAe;IACpD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAChD,IAAI,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC;QAAE,OAAO,IAAI,CAAC;IACpD,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,GAAG,IAAI,mBAAmB,CAAC;IAC5D,OAAO,GAAG,IAAI,sBAAsB,CAAC;AACvC,CAAC;AAED,SAAS,aAAa,CAAC,GAAW,EAAE,KAAa;IAC/C,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAY,CAAC;QAC3C,IAAI,MAAM,CAAC,OAAO,CAAC;YAAE,OAAO,OAAO,CAAC;IACtC,CAAC;IAAC,MAAM,CAAC;QACP,uDAAuD;IACzD,CAAC;IACD,MAAM,IAAI,QAAQ,CAAC,KAAK,EAAE,iCAAiC,EAAE;QAC3D,QAAQ,EAAE,YAAY;QACtB,QAAQ,EAAE,CAAC,iCAAiC,CAAC;QAC7C,QAAQ,EAAE,CAAC,SAAS,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,kBAAkB,EAAE,CAAC;QAC9D,SAAS,EAAE,CAAC,0DAA0D,CAAC;QACvE,SAAS,EAAE,uBAAuB;KACnC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,iBAAiB,CAAC,OAAa;IACtC,MAAM,OAAO,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;IACnC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;QAAE,OAAO,IAAI,CAAC;IACzC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,IAAI,MAAM,CAAC,MAAM,CAAC;YAAE,OAAO,MAAM,CAAC;IACpC,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,mBAAmB,CAAC,MAAmB;IAC9C,IAAI,CAAC,MAAM;QAAE,OAAO,EAAE,CAAC;IACvB,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACrE,IAAI,CAAC,OAAO;QAAE,OAAO,EAAE,CAAC;IACxB,MAAM,OAAO,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;IACnC,IAAI,OAAO,OAAO,KAAK,QAAQ;QAAE,OAAO,OAAO,CAAC;IAChD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;QAAE,OAAO,EAAE,CAAC;IACvC,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;QAC3B,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,QAAQ;YAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IACjF,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,8EAA8E;AAC9E,UAAU;AACV,8EAA8E;AAE9E,MAAM,UAAU,YAAY,CAAC,IAAY,EAAE,KAAa;IACtD,IAAI,IAAI,KAAK,MAAM;QAAE,OAAO,IAAI,YAAY,EAAE,CAAC;IAC/C,IAAI,IAAI,KAAK,WAAW;QAAE,OAAO,IAAI,iBAAiB,CAAC,KAAK,CAAC,CAAC;IAC9D,IAAI,IAAI,KAAK,QAAQ;QAAE,OAAO,IAAI,wBAAwB,CAAC,KAAK,CAAC,CAAC;IAClE,MAAM,IAAI,QAAQ,CAAC,mCAAmC,EAAE,uBAAuB,EAAE;QAC/E,QAAQ,EAAE,UAAU;QACpB,QAAQ,EAAE,CAAC,uCAAuC,CAAC;QACnD,QAAQ,EAAE,CAAC,eAAe,IAAI,EAAE,CAAC;QACjC,SAAS,EAAE,CAAC,kEAAkE,CAAC;KAChF,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"providers.js","sourceRoot":"","sources":["../../src/infra/providers.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,23 @@
1
- import { type ReplaceScriptOptions, type SaveValidationOptions, type ScriptOutputStore } from "./script-output-store.js";
2
- export { ScriptOutputApiError, type ScriptOutputApiErrorOptions, type ReplaceScriptOptions, type SaveValidationOptions, type ScriptOutputStore, } from "./script-output-store.js";
1
+ import { type PatchScriptOptions, type ReplaceScriptOptions, type SaveValidationOptions, type ScriptOutputStore } from "./script-output-store.js";
2
+ export { ScriptOutputApiError, type ScriptOutputApiErrorOptions, type PatchScriptOptions, type ReplaceScriptOptions, type SaveValidationOptions, type ScriptOutputStore, } from "./script-output-store.js";
3
3
  export declare function normalizeGatewayBase(value: string): string;
4
4
  export declare function quotePath(value: string): string;
5
- export declare class RemoteScriptOutputStore implements ScriptOutputStore {
5
+ /**
6
+ * V2 script-output store. Same gateway base + X-Access-Key auth as V1, but:
7
+ * - replaceScript is a SINGLE PUT of the whole document (no begin→per-episode
8
+ * →commit), so there is no per-episode body-size split.
9
+ * - patchScript sends an RFC6902 PATCH (the compare() diff of old→edited),
10
+ * which V1 cannot do (it degrades to a whole-document replace).
11
+ *
12
+ * Selected over V1 by the `SCRIPT_OUTPUT_API_VERSION=v2` env (see
13
+ * remoteScriptOutputStoreFromEnv). Endpoints:
14
+ * GET {prefix}/{projectGroupNo}
15
+ * GET {prefix}/{projectGroupNo}/revision
16
+ * PUT {prefix}/{projectGroupNo} { requestId, baseRevision, source, script }
17
+ * PATCH {prefix}/{projectGroupNo} RFC6902 patch array (wrapped with requestId)
18
+ * DELETE {prefix}/{projectGroupNo}
19
+ */
20
+ export declare class ScriptV2OutputStore implements ScriptOutputStore {
6
21
  readonly gatewayBase: string;
7
22
  readonly projectGroupNo: string;
8
23
  readonly accessKey: string;
@@ -13,11 +28,20 @@ export declare class RemoteScriptOutputStore implements ScriptOutputStore {
13
28
  accessKey: string;
14
29
  timeoutMs?: number;
15
30
  });
16
- static fromEnv(projectGroupNo?: string | null): RemoteScriptOutputStore;
31
+ static fromEnv(projectGroupNo?: string | null): ScriptV2OutputStore;
17
32
  private get projectPrefix();
18
33
  getScript(): Promise<Record<string, unknown> | null>;
19
34
  getRevision(): Promise<Record<string, unknown> | null>;
20
35
  replaceScript(opts: ReplaceScriptOptions): Promise<Record<string, unknown>>;
36
+ patchScript(opts: PatchScriptOptions): Promise<Record<string, unknown>>;
21
37
  saveValidationResult(opts: SaveValidationOptions): Promise<Record<string, unknown> | null>;
38
+ updateEpisodeCount(episodeCount: number): Promise<void>;
22
39
  private request;
23
40
  }
41
+ /**
42
+ * Build the remote script-output store. The CLI is V2-only: every write goes to
43
+ * the single-PUT / incremental-PATCH blob store, the same backend the frontend
44
+ * writes to — so the two never split-brain across V1/V2. The legacy begin→commit
45
+ * V1 client was removed; there is no version flag.
46
+ */
47
+ export declare function remoteScriptOutputStoreFromEnv(projectGroupNo?: string | null): ScriptOutputStore;
@@ -1,9 +1,22 @@
1
+ // fast-json-patch ships as CommonJS with no named ESM exports, so under Node's
2
+ // ESM resolver only the default (the module.exports object) is available. Pull
3
+ // `compare` off it rather than importing it by name (which fails at runtime).
4
+ import fastJsonPatch from "fast-json-patch";
5
+ const { compare } = fastJsonPatch;
1
6
  import { ScriptOutputApiError, } from "./script-output-store.js";
2
7
  // Re-export the shared error/types so existing callers that import them from
3
8
  // this module keep compiling. New code should import directly from
4
9
  // ./script-output-store.js — the shared module is the single source of truth.
5
10
  export { ScriptOutputApiError, } from "./script-output-store.js";
6
11
  const SCRIPT_OUTPUT_PREFIX = "/api/anime/workbench/script-output/project-groups";
12
+ // V2 publishes the whole script in one PUT (no begin→per-episode→commit) and
13
+ // supports an RFC6902 PATCH for incremental edits. Same gateway base + the same
14
+ // X-Access-Key auth as V1; only the path prefix and the write shape differ.
15
+ const SCRIPT_V2_PREFIX = "/api/anime/workbench/v2/script/project-groups";
16
+ // Project-group metadata lives on a DIFFERENT controller (not under the
17
+ // script-output prefix). Same gateway base + X-Access-Key auth, same
18
+ // {code,msg,data} envelope. "有值才更新": send only the fields we want changed.
19
+ const PROJECT_GROUP_UPDATE_PATH = "/api/anime/workbench/projectGroup/updateProjectGroupInfo";
7
20
  const IMPORT_BODY_LIMIT_BYTES = 8 * 1024 * 1024;
8
21
  export function normalizeGatewayBase(value) {
9
22
  let base = value.trim().replace(/\/+$/, "");
@@ -40,25 +53,89 @@ function assertImportBodySize(label, body) {
40
53
  const bytes = Buffer.byteLength(JSON.stringify(body), "utf8");
41
54
  if (bytes <= IMPORT_BODY_LIMIT_BYTES)
42
55
  return;
43
- throw new ScriptOutputApiError(label === "root"
44
- ? `script import root/assets too large: ${bytes} bytes`
45
- : `script import episode too large; scene chunk needed: ${label} is ${bytes} bytes`);
56
+ // V2 sends the whole document (root) or an RFC6902 diff (patch) in one body —
57
+ // neither is chunkable by episode/scene, so keep the message generic.
58
+ throw new ScriptOutputApiError(`script ${label} body too large: ${bytes} bytes (limit ${IMPORT_BODY_LIMIT_BYTES})`);
46
59
  }
47
- function scriptEpisodes(script) {
48
- const episodes = script["episodes"];
49
- if (episodes === undefined || episodes === null)
50
- return [];
51
- if (!Array.isArray(episodes)) {
52
- throw new ScriptOutputApiError("script import failed: script.episodes must be an array");
53
- }
54
- return episodes.map((episode, index) => {
55
- if (!episode || typeof episode !== "object" || Array.isArray(episode)) {
56
- throw new ScriptOutputApiError(`script import failed: episodes[${index}] must be an object`);
60
+ // Shared gateway transport for both V1 (RemoteScriptOutputStore) and V2
61
+ // (ScriptV2OutputStore): same X-Access-Key auth, same timeout/abort handling,
62
+ // same `{code,msg,data}` envelope unwrap and `剧本不存在` null (allowMissing)
63
+ // convention. Extracted so the two stores can't drift on error handling.
64
+ async function gatewayRequest(gatewayBase, accessKey, timeoutMs, method, path, opts = {}) {
65
+ const rawBody = opts.body === undefined ? undefined : JSON.stringify(opts.body);
66
+ const headers = {
67
+ Accept: "application/json",
68
+ "X-Access-Key": accessKey,
69
+ };
70
+ if (rawBody !== undefined)
71
+ headers["Content-Type"] = "application/json; charset=utf-8";
72
+ const controller = new AbortController();
73
+ const timer = setTimeout(() => controller.abort(), timeoutMs);
74
+ let status;
75
+ let text;
76
+ try {
77
+ const response = await fetch(`${gatewayBase}${path}`, {
78
+ method,
79
+ headers,
80
+ body: rawBody,
81
+ signal: controller.signal,
82
+ });
83
+ status = response.status;
84
+ text = await response.text();
85
+ }
86
+ catch (err) {
87
+ if (err instanceof Error && err.name === "AbortError") {
88
+ throw new ScriptOutputApiError("Gateway request timed out");
89
+ }
90
+ const reason = err instanceof Error ? err.message : String(err);
91
+ throw new ScriptOutputApiError(`Gateway request failed: ${reason}`);
92
+ }
93
+ finally {
94
+ clearTimeout(timer);
95
+ }
96
+ if (status >= 400)
97
+ throw apiErrorFromText(text, status, path);
98
+ let payload = null;
99
+ if (text) {
100
+ try {
101
+ payload = JSON.parse(text);
102
+ }
103
+ catch {
104
+ throw new ScriptOutputApiError("Gateway response is not valid JSON", { status, payload: text });
57
105
  }
58
- return episode;
59
- });
106
+ }
107
+ if (payload === null)
108
+ return null;
109
+ if (typeof payload !== "object")
110
+ return payload;
111
+ const obj = payload;
112
+ const code = obj.code;
113
+ if (code !== undefined && code !== null && String(code) !== "200") {
114
+ const message = String(obj.msg ?? obj.message ?? "script-output API failed");
115
+ if (opts.allowMissing && typeof message === "string" && message.includes("剧本不存在"))
116
+ return null;
117
+ throw new ScriptOutputApiError(message, { status, code: code, payload: obj });
118
+ }
119
+ if ("data" in obj)
120
+ return obj.data;
121
+ return obj;
60
122
  }
61
- export class RemoteScriptOutputStore {
123
+ /**
124
+ * V2 script-output store. Same gateway base + X-Access-Key auth as V1, but:
125
+ * - replaceScript is a SINGLE PUT of the whole document (no begin→per-episode
126
+ * →commit), so there is no per-episode body-size split.
127
+ * - patchScript sends an RFC6902 PATCH (the compare() diff of old→edited),
128
+ * which V1 cannot do (it degrades to a whole-document replace).
129
+ *
130
+ * Selected over V1 by the `SCRIPT_OUTPUT_API_VERSION=v2` env (see
131
+ * remoteScriptOutputStoreFromEnv). Endpoints:
132
+ * GET {prefix}/{projectGroupNo}
133
+ * GET {prefix}/{projectGroupNo}/revision
134
+ * PUT {prefix}/{projectGroupNo} { requestId, baseRevision, source, script }
135
+ * PATCH {prefix}/{projectGroupNo} RFC6902 patch array (wrapped with requestId)
136
+ * DELETE {prefix}/{projectGroupNo}
137
+ */
138
+ export class ScriptV2OutputStore {
62
139
  gatewayBase;
63
140
  projectGroupNo;
64
141
  accessKey;
@@ -76,20 +153,16 @@ export class RemoteScriptOutputStore {
76
153
  }
77
154
  const gatewayBase = normalizeGatewayBase(process.env.AWB_BASE_URL || "");
78
155
  if (!gatewayBase) {
79
- throw new ScriptOutputApiError("gateway URL missing; set AWB_BASE_URL", {
80
- configMissing: "gateway",
81
- });
156
+ throw new ScriptOutputApiError("gateway URL missing; set AWB_BASE_URL", { configMissing: "gateway" });
82
157
  }
83
158
  const accessKey = (process.env.LINGJING_AWB_ACCESS_KEY || "").trim();
84
159
  if (!accessKey) {
85
- throw new ScriptOutputApiError("access key missing; set LINGJING_AWB_ACCESS_KEY", {
86
- configMissing: "access",
87
- });
160
+ throw new ScriptOutputApiError("access key missing; set LINGJING_AWB_ACCESS_KEY", { configMissing: "access" });
88
161
  }
89
- return new RemoteScriptOutputStore({ gatewayBase, projectGroupNo: resolved, accessKey });
162
+ return new ScriptV2OutputStore({ gatewayBase, projectGroupNo: resolved, accessKey });
90
163
  }
91
164
  get projectPrefix() {
92
- return `${SCRIPT_OUTPUT_PREFIX}/${quotePath(this.projectGroupNo)}`;
165
+ return `${SCRIPT_V2_PREFIX}/${quotePath(this.projectGroupNo)}`;
93
166
  }
94
167
  async getScript() {
95
168
  return (await this.request("GET", this.projectPrefix, { allowMissing: true }));
@@ -98,36 +171,39 @@ export class RemoteScriptOutputStore {
98
171
  return (await this.request("GET", `${this.projectPrefix}/revision`, { allowMissing: true }));
99
172
  }
100
173
  async replaceScript(opts) {
101
- const episodes = scriptEpisodes(opts.script);
102
- const rootScript = { ...opts.script, episodes: [] };
103
- const beginBody = {
174
+ // V2 takes the whole script in one PUT — assert the same body-size limit as
175
+ // V1's begin body so an oversized document fails fast with the same error.
176
+ const body = {
104
177
  requestId: opts.requestId,
105
178
  baseRevision: opts.baseRevision,
106
179
  source: opts.source ?? "ctl",
107
- expectedEpisodeCount: episodes.length,
108
- script: rootScript,
180
+ script: opts.script,
109
181
  };
110
- assertImportBodySize("root", beginBody);
111
- for (let index = 0; index < episodes.length; index++) {
112
- assertImportBodySize(`episode[${index}]`, {
113
- requestId: opts.requestId,
114
- episode: episodes[index],
115
- });
116
- }
117
- await this.request("POST", `${this.projectPrefix}/imports`, { body: beginBody });
118
- for (let index = 0; index < episodes.length; index++) {
119
- const body = {
120
- requestId: opts.requestId,
121
- episode: episodes[index],
122
- };
123
- await this.request("PUT", `${this.projectPrefix}/imports/episodes/${index}`, { body });
124
- }
125
- return (await this.request("POST", `${this.projectPrefix}/imports/commit`, {
126
- body: { requestId: opts.requestId },
127
- }));
182
+ assertImportBodySize("root", body);
183
+ return (await this.request("PUT", this.projectPrefix, { body }));
184
+ }
185
+ // True incremental edit: send the RFC6902 diff of old→edited. An empty diff
186
+ // (no observable change) still goes through so the gateway can bump/no-op the
187
+ // revision consistently with replaceScript's idempotency contract.
188
+ async patchScript(opts) {
189
+ const patch = compare(opts.old, opts.edited);
190
+ const body = {
191
+ requestId: opts.requestId,
192
+ baseRevision: opts.baseRevision,
193
+ source: opts.source ?? "ctl",
194
+ patch,
195
+ };
196
+ // patchScript is now the primary save path — guard the diff body against the
197
+ // same import-size limit replaceScript uses, so an oversized edit fails fast
198
+ // with a clear error instead of an opaque gateway/Spring 413.
199
+ assertImportBodySize("patch", body);
200
+ return (await this.request("PATCH", this.projectPrefix, { body }));
128
201
  }
129
202
  async saveValidationResult(opts) {
130
- return (await this.request("POST", `${this.projectPrefix}/validation-result`, {
203
+ // V2 has its own validation-result endpoint (the script lives in script_v2,
204
+ // not the V1 tables, so the V1 path would 404 "剧本不存在"). Same body shape;
205
+ // the V2 backend persists status/summary on the row and ignores issues.
206
+ return (await this.request("POST", `${SCRIPT_V2_PREFIX}/${quotePath(this.projectGroupNo)}/validation-result`, {
131
207
  body: {
132
208
  revision: opts.revision,
133
209
  validationStatus: opts.validationStatus,
@@ -136,65 +212,25 @@ export class RemoteScriptOutputStore {
136
212
  },
137
213
  }));
138
214
  }
215
+ // Best-effort: set the project group's episode_count. Only episodeCount is
216
+ // sent so the cover key is left untouched ("有值才更新"). Callers wrap this in
217
+ // syncEpisodeCount, which swallows failures — never let it fail a script write.
218
+ async updateEpisodeCount(episodeCount) {
219
+ await this.request("POST", PROJECT_GROUP_UPDATE_PATH, {
220
+ body: { projectGroupNo: this.projectGroupNo, episodeCount },
221
+ });
222
+ }
139
223
  async request(method, path, opts = {}) {
140
- const rawBody = opts.body === undefined ? undefined : JSON.stringify(opts.body);
141
- const headers = {
142
- Accept: "application/json",
143
- "X-Access-Key": this.accessKey,
144
- };
145
- if (rawBody !== undefined)
146
- headers["Content-Type"] = "application/json; charset=utf-8";
147
- const controller = new AbortController();
148
- const timer = setTimeout(() => controller.abort(), this.timeoutMs);
149
- let response;
150
- let text;
151
- let status;
152
- try {
153
- response = await fetch(`${this.gatewayBase}${path}`, {
154
- method,
155
- headers,
156
- body: rawBody,
157
- signal: controller.signal,
158
- });
159
- status = response.status;
160
- text = await response.text();
161
- }
162
- catch (err) {
163
- if (err instanceof Error && err.name === "AbortError") {
164
- throw new ScriptOutputApiError("Gateway request timed out");
165
- }
166
- const reason = err instanceof Error ? err.message : String(err);
167
- throw new ScriptOutputApiError(`Gateway request failed: ${reason}`);
168
- }
169
- finally {
170
- clearTimeout(timer);
171
- }
172
- if (status >= 400)
173
- throw apiErrorFromText(text, status, path);
174
- let payload = null;
175
- if (text) {
176
- try {
177
- payload = JSON.parse(text);
178
- }
179
- catch {
180
- throw new ScriptOutputApiError("Gateway response is not valid JSON", { status, payload: text });
181
- }
182
- }
183
- if (payload === null)
184
- return null;
185
- if (typeof payload !== "object")
186
- return payload;
187
- const obj = payload;
188
- const code = obj.code;
189
- if (code !== undefined && code !== null && String(code) !== "200") {
190
- const message = String(obj.msg ?? obj.message ?? "script-output API failed");
191
- if (opts.allowMissing && typeof message === "string" && message.includes("剧本不存在"))
192
- return null;
193
- throw new ScriptOutputApiError(message, { status, code: code, payload: obj });
194
- }
195
- if ("data" in obj)
196
- return obj.data;
197
- return obj;
224
+ return gatewayRequest(this.gatewayBase, this.accessKey, this.timeoutMs, method, path, opts);
198
225
  }
199
226
  }
227
+ /**
228
+ * Build the remote script-output store. The CLI is V2-only: every write goes to
229
+ * the single-PUT / incremental-PATCH blob store, the same backend the frontend
230
+ * writes to — so the two never split-brain across V1/V2. The legacy begin→commit
231
+ * V1 client was removed; there is no version flag.
232
+ */
233
+ export function remoteScriptOutputStoreFromEnv(projectGroupNo) {
234
+ return ScriptV2OutputStore.fromEnv(projectGroupNo);
235
+ }
200
236
  //# sourceMappingURL=script-output-api.js.map