@styx-api/core 0.5.2 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -3782,7 +3782,8 @@ function emitMetadata$1(ctx, metaConst, cb) {
3782
3782
  cb.line(`name=${pyStr(name)},`);
3783
3783
  cb.line(`package=${pyStr(pkg)},`);
3784
3784
  if (ctx.app?.doc?.literature?.length) cb.line(`citations=[${ctx.app.doc.literature.map(pyStr).join(", ")}],`);
3785
- if (ctx.app?.container?.image) cb.line(`container_image_tag=${pyStr(ctx.app.container.image)},`);
3785
+ const containerImage = ctx.package?.docker ?? ctx.app?.container?.image;
3786
+ if (containerImage) cb.line(`container_image_tag=${pyStr(containerImage)},`);
3786
3787
  });
3787
3788
  cb.line(")");
3788
3789
  }
@@ -5400,7 +5401,29 @@ function buildEmitModel(ctx, scope = new Scope(PY_RESERVED)) {
5400
5401
  names.params = (rootType.kind === "struct" ? namedTypes.get(structKey(rootType)) : void 0) ?? (rootType.kind === "union" ? namedTypes.get(unionKey(rootType)) : void 0) ?? names.params;
5401
5402
  const rootTypeTag = appId && pkg ? `${pkg}/${appId}` : void 0;
5402
5403
  const paramsType = rootType.kind === "struct" || rootType.kind === "union" ? names.params : mapType$1(rootType, resolveTypeName(namedTypes));
5404
+ const hostName = (childScope, wireKey) => childScope.add(pyScrubIdent(snakeCase(wireKey), PY_RESERVED));
5405
+ const resolve = resolveTypeName(namedTypes);
5403
5406
  const sigScope = scope.child(["params", "runner"]);
5407
+ const sigEntries = rootIsStruct && rootType.kind === "struct" ? buildSigEntries(rootType, collectFieldInfo(ctx, rootType), (wireKey) => hostName(sigScope, wireKey), pySigOptions(resolve)) : [];
5408
+ const rootStructKey = rootIsStruct && rootType.kind === "struct" ? structKey(rootType) : void 0;
5409
+ const nestedFactories = [];
5410
+ for (const decl of typeDecls) {
5411
+ if (decl.type.kind !== "struct") continue;
5412
+ const sKey = structKey(decl.type);
5413
+ if (sKey === rootStructKey) continue;
5414
+ const funcName = scope.add(pyScrubIdent(snakeCase(decl.name) + "_params", PY_RESERVED));
5415
+ const atType = decl.type.fields["@type"];
5416
+ const typeTag = atType && atType.kind === "literal" && typeof atType.value === "string" ? atType.value : void 0;
5417
+ const factoryScope = scope.child(["params"]);
5418
+ const factorySig = buildSigEntries(decl.type, collectFieldInfo(ctx, decl.type), (wireKey) => hostName(factoryScope, wireKey), pySigOptions(resolve));
5419
+ nestedFactories.push({
5420
+ typeName: decl.name,
5421
+ structKey: sKey,
5422
+ funcName,
5423
+ typeTag,
5424
+ sigEntries: factorySig
5425
+ });
5426
+ }
5404
5427
  return {
5405
5428
  appId,
5406
5429
  pkg,
@@ -5411,13 +5434,14 @@ function buildEmitModel(ctx, scope = new Scope(PY_RESERVED)) {
5411
5434
  typeDecls,
5412
5435
  rootTypeTag,
5413
5436
  paramsType,
5414
- sigEntries: rootIsStruct && rootType.kind === "struct" ? buildSigEntries(rootType, collectFieldInfo(ctx, rootType), (wireKey) => sigScope.add(pyScrubIdent(wireKey, PY_RESERVED)), pySigOptions(resolveTypeName(namedTypes))) : []
5437
+ sigEntries,
5438
+ nestedFactories
5415
5439
  };
5416
5440
  }
5417
5441
  function generatePython(ctx, packageScope) {
5418
5442
  const cb = new CodeBuilder(" ");
5419
5443
  const scope = packageScope ?? new Scope(PY_RESERVED);
5420
- const { names, rootType, rootIsStruct, namedTypes, typeDecls, rootTypeTag, paramsType, sigEntries } = buildEmitModel(ctx, scope);
5444
+ const { names, rootType, rootIsStruct, namedTypes, typeDecls, rootTypeTag, paramsType, sigEntries, nestedFactories } = buildEmitModel(ctx, scope);
5421
5445
  cb.comment("This file was auto generated by Styx.", "# ");
5422
5446
  cb.comment("Do not edit this file directly.", "# ");
5423
5447
  cb.blank();
@@ -5436,6 +5460,10 @@ function generatePython(ctx, packageScope) {
5436
5460
  emitParamsFactory$1(sigEntries, names.paramsFn, paramsType, rootTypeTag, cb);
5437
5461
  cb.blank();
5438
5462
  }
5463
+ for (const nf of nestedFactories) {
5464
+ emitParamsFactory$1(nf.sigEntries, nf.funcName, nf.typeName, nf.typeTag, cb);
5465
+ cb.blank();
5466
+ }
5439
5467
  emitValidate$1(ctx, rootType, ctx.expr, paramsType, names.validate, resolveTypeName(namedTypes), scope, cb);
5440
5468
  cb.blank();
5441
5469
  emitBuildCargs$1(ctx, rootType, paramsType, names.cargs, cb);
@@ -5455,6 +5483,7 @@ function generatePython(ctx, packageScope) {
5455
5483
  names.cargs,
5456
5484
  ...[names.outputsFn],
5457
5485
  ...rootIsStruct ? [names.paramsFn, names.execute] : [],
5486
+ ...nestedFactories.map((nf) => nf.funcName),
5458
5487
  names.validate,
5459
5488
  names.wrapper
5460
5489
  ];
@@ -5622,9 +5651,13 @@ function structAtType(type) {
5622
5651
  }
5623
5652
  /**
5624
5653
  * Render a struct config as a host object literal (Python dict / TS object).
5625
- * Keys are the Boutiques wire names (the generated TypedDict / interface keys) -
5626
- * nested structs have no constructor function in the generated code, so callers
5627
- * build them as plain object literals.
5654
+ * Keys are the Boutiques wire names (the generated TypedDict / interface keys).
5655
+ *
5656
+ * When the dialect supplies `structConstructor` (Python, which generates a
5657
+ * per-struct `_params` builder), the struct is rendered as that factory call
5658
+ * instead - e.g. `tool_corrected_output_params(file="...")`. Backends without
5659
+ * per-struct builders (TypeScript) leave the hook unset and build the plain
5660
+ * object literal below.
5628
5661
  *
5629
5662
  * `@type` is emitted from the struct's literal discriminator field when present
5630
5663
  * (union variants carry a required, load-bearing `@type`); for the root call the
@@ -5634,6 +5667,10 @@ function structAtType(type) {
5634
5667
  */
5635
5668
  function renderStructLiteral(value, type, indent, d, injectAtType) {
5636
5669
  const obj = isRecord(value) ? value : {};
5670
+ if (injectAtType === void 0 && d.structConstructor) {
5671
+ const call = d.structConstructor(type, obj, indent, d);
5672
+ if (call !== void 0) return call;
5673
+ }
5637
5674
  const inner = indent + d.indentUnit;
5638
5675
  const lines = [];
5639
5676
  const atType = structAtType(type) ?? injectAtType;
@@ -5709,6 +5746,41 @@ const pyDialect = {
5709
5746
  objKey: (k) => pyStr(k)
5710
5747
  };
5711
5748
  /**
5749
+ * Build a Python dialect that renders nested structs as `_params` factory calls
5750
+ * (matching the generated code's per-struct builders) rather than plain dicts.
5751
+ * Each factory is looked up by the struct's structural key; field values use the
5752
+ * factory's scrubbed host kwarg names (from the same `buildSigEntries` the
5753
+ * generated factory is built from), and the function name is package-qualified
5754
+ * so the call resolves through `from <root> import <pkg>`. A struct with no
5755
+ * registered factory (shouldn't happen for well-formed nested types) falls back
5756
+ * to the plain dict literal.
5757
+ */
5758
+ function pyDialectWithFactories(model, pkg) {
5759
+ const byKey = /* @__PURE__ */ new Map();
5760
+ for (const f of model.nestedFactories) byKey.set(f.structKey, {
5761
+ call: pkg ? `${pkg}.${f.funcName}` : f.funcName,
5762
+ nameByWire: new Map(f.sigEntries.map((e) => [e.wireKey, e.name]))
5763
+ });
5764
+ return {
5765
+ ...pyDialect,
5766
+ structConstructor(type, value, indent, d) {
5767
+ const entry = byKey.get(structKey(type));
5768
+ if (!entry) return void 0;
5769
+ const inner = indent + d.indentUnit;
5770
+ const lines = [];
5771
+ for (const [wireKey, fieldType] of Object.entries(type.fields)) {
5772
+ if (wireKey === "@type") continue;
5773
+ if (fieldType.kind === "literal") continue;
5774
+ if (!(wireKey in value)) continue;
5775
+ const name = entry.nameByWire.get(wireKey) ?? wireKey;
5776
+ lines.push(`${inner}${name}=${renderValue(value[wireKey], fieldType, inner, d)},`);
5777
+ }
5778
+ if (lines.length === 0) return `${entry.call}()`;
5779
+ return `${entry.call}(\n${lines.join("\n")}\n${indent})`;
5780
+ }
5781
+ };
5782
+ }
5783
+ /**
5712
5784
  * Render a Python call snippet for one tool from a config object (the params
5713
5785
  * dict the form produces, keyed by Boutiques wire names).
5714
5786
  *
@@ -5717,8 +5789,9 @@ const pyDialect = {
5717
5789
  * *scrubbed host* identifiers (`float` -> `float_`), not the wire keys; the
5718
5790
  * per-field mapping comes from the same `buildSigEntries` the generated wrapper
5719
5791
  * is built from, so the snippet matches the real signature. Nested structs /
5720
- * union variants / lists-of-structs have no constructor in the generated code,
5721
- * so they render as plain dict literals keyed by wire names.
5792
+ * union variants / lists-of-structs render as calls to their generated
5793
+ * `_params` factory (`fsl.bet_x_params(...)`), matching the per-struct builders
5794
+ * the Python backend emits.
5722
5795
  *
5723
5796
  * Union- (or otherwise non-struct-) rooted tools have no kwarg wrapper; the
5724
5797
  * single dict-style `<tool>` entry is called with one object-literal argument.
@@ -5739,21 +5812,22 @@ function renderPythonCall(ctx, config, opts = {}) {
5739
5812
  const model = buildEmitModel(ctx);
5740
5813
  const pkg = ctx.package?.name;
5741
5814
  const callee = pkg ? `${pkg}.${model.names.wrapper}` : model.names.wrapper;
5742
- const call = model.rootIsStruct && model.rootType.kind === "struct" ? renderKwargCall(callee, model.sigEntries, model.rootType, config) : `${callee}(${renderValue(config, model.rootType, "", pyDialect)})`;
5815
+ const dialect = pyDialectWithFactories(model, pkg);
5816
+ const call = model.rootIsStruct && model.rootType.kind === "struct" ? renderKwargCall(callee, model.sigEntries, model.rootType, config, dialect) : `${callee}(${renderValue(config, model.rootType, "", dialect)})`;
5743
5817
  if (opts.includeImport === false || !pkg) return call;
5744
5818
  const root = opts.packageRoot ?? ctx.project?.name;
5745
5819
  return `${root ? `from ${root} import ${pkg}` : `import ${pkg}`}\n\n${call}`;
5746
5820
  }
5747
5821
  /** Render `callee(name=value, ...)` for a struct root using scrubbed kwarg names. */
5748
- function renderKwargCall(callee, sigEntries, rootType, config) {
5822
+ function renderKwargCall(callee, sigEntries, rootType, config, dialect) {
5749
5823
  const nameFor = new Map(sigEntries.map((e) => [e.wireKey, e.name]));
5750
- const indent = pyDialect.indentUnit;
5824
+ const indent = dialect.indentUnit;
5751
5825
  const lines = [];
5752
5826
  for (const [wireKey, fieldType] of Object.entries(rootType.fields)) {
5753
5827
  if (fieldType.kind === "literal") continue;
5754
5828
  if (!(wireKey in config)) continue;
5755
5829
  const name = nameFor.get(wireKey) ?? wireKey;
5756
- lines.push(`${indent}${name}=${renderValue(config[wireKey], fieldType, indent, pyDialect)},`);
5830
+ lines.push(`${indent}${name}=${renderValue(config[wireKey], fieldType, indent, dialect)},`);
5757
5831
  }
5758
5832
  if (lines.length === 0) return `${callee}()`;
5759
5833
  return `${callee}(\n${lines.join("\n")}\n)`;
@@ -6897,7 +6971,8 @@ function emitMetadata(ctx, metaConst, cb) {
6897
6971
  cb.line(`name: ${JSON.stringify(name)},`);
6898
6972
  cb.line(`package: ${JSON.stringify(pkg)},`);
6899
6973
  if (ctx.app?.doc?.literature?.length) cb.line(`citations: ${JSON.stringify(ctx.app.doc.literature)},`);
6900
- if (ctx.app?.container?.image) cb.line(`container_image_tag: ${JSON.stringify(ctx.app.container.image)},`);
6974
+ const containerImage = ctx.package?.docker ?? ctx.app?.container?.image;
6975
+ if (containerImage) cb.line(`container_image_tag: ${JSON.stringify(containerImage)},`);
6901
6976
  });
6902
6977
  cb.line("};");
6903
6978
  }
package/dist/index.d.cts CHANGED
@@ -1114,6 +1114,27 @@ declare function unionKey(type: Extract<BoundType, {
1114
1114
  }>): string;
1115
1115
  //#endregion
1116
1116
  //#region src/backend/python/python.d.ts
1117
+ /**
1118
+ * A kwarg `_params` builder for one nested (non-root) struct - a union variant
1119
+ * or a plain nested sub-struct. Lets callers write
1120
+ * `output=tool_corrected_output_params(...)` instead of hand-authoring a
1121
+ * `{"@type": ...}` dict. The root struct's factory is `names.paramsFn`; this
1122
+ * covers everything below it.
1123
+ */
1124
+ interface NestedFactory {
1125
+ /** The struct's TypedDict name (factory return + `params` annotation type). */
1126
+ typeName: string;
1127
+ /** Structural identity key of the struct - used by the snippet renderer to
1128
+ * route a nested struct value to its factory. */
1129
+ structKey: string;
1130
+ /** Registered factory function name (e.g. `tool_corrected_output_params`). */
1131
+ funcName: string;
1132
+ /** The struct's `@type` discriminator, injected by the factory; undefined for
1133
+ * a plain sub-struct that carries no discriminator. */
1134
+ typeTag: string | undefined;
1135
+ /** Per-field signature entries (shared with the snippet renderer). */
1136
+ sigEntries: SigEntry[];
1137
+ }
1117
1138
  /**
1118
1139
  * The fully-derived naming/typing model for one tool's Python emission. Computed
1119
1140
  * once by `buildEmitModel` so the file emitter and the call-site snippet renderer
@@ -1141,6 +1162,7 @@ interface PyEmitModel {
1141
1162
  rootTypeTag: string | undefined;
1142
1163
  paramsType: string;
1143
1164
  sigEntries: SigEntry[];
1165
+ nestedFactories: NestedFactory[];
1144
1166
  }
1145
1167
  /**
1146
1168
  * Derive the public names, named-type declarations, root typing, and per-field
@@ -1179,6 +1201,21 @@ interface SnippetDialect {
1179
1201
  null: string;
1180
1202
  /** Render an object-literal key from a wire key, quoting when not a bare identifier. */
1181
1203
  objKey(wireKey: string): string;
1204
+ /**
1205
+ * Optional: render a nested struct as a constructor/factory call instead of a
1206
+ * plain object literal. A backend that generates per-struct builders (Python's
1207
+ * `tool_x_params(...)`) supplies this; one that doesn't (TypeScript) leaves it
1208
+ * unset and gets the object-literal form. Return `undefined` to fall back to
1209
+ * the object literal for this particular struct (e.g. no matching factory).
1210
+ *
1211
+ * The Python/TypeScript divergence is deliberate: nested object literals are
1212
+ * idiomatic in TypeScript, whereas Python's niwrap audience expects the
1213
+ * factory-builder pattern (`tool_sub_params(...)`) it has used since v1. See
1214
+ * the nested-factory block in `python.ts` for the full rationale.
1215
+ */
1216
+ structConstructor?(type: Extract<BoundType, {
1217
+ kind: "struct";
1218
+ }>, value: Record<string, unknown>, indent: string, d: SnippetDialect): string | undefined;
1182
1219
  }
1183
1220
  /** Options shared by both language renderers. */
1184
1221
  interface SnippetOptions {
@@ -1193,9 +1230,13 @@ interface SnippetOptions {
1193
1230
  }
1194
1231
  /**
1195
1232
  * Render a struct config as a host object literal (Python dict / TS object).
1196
- * Keys are the Boutiques wire names (the generated TypedDict / interface keys) -
1197
- * nested structs have no constructor function in the generated code, so callers
1198
- * build them as plain object literals.
1233
+ * Keys are the Boutiques wire names (the generated TypedDict / interface keys).
1234
+ *
1235
+ * When the dialect supplies `structConstructor` (Python, which generates a
1236
+ * per-struct `_params` builder), the struct is rendered as that factory call
1237
+ * instead - e.g. `tool_corrected_output_params(file="...")`. Backends without
1238
+ * per-struct builders (TypeScript) leave the hook unset and build the plain
1239
+ * object literal below.
1199
1240
  *
1200
1241
  * `@type` is emitted from the struct's literal discriminator field when present
1201
1242
  * (union variants carry a required, load-bearing `@type`); for the root call the
@@ -1227,8 +1268,9 @@ declare function renderValue(value: unknown, type: BoundType, indent: string, d:
1227
1268
  * *scrubbed host* identifiers (`float` -> `float_`), not the wire keys; the
1228
1269
  * per-field mapping comes from the same `buildSigEntries` the generated wrapper
1229
1270
  * is built from, so the snippet matches the real signature. Nested structs /
1230
- * union variants / lists-of-structs have no constructor in the generated code,
1231
- * so they render as plain dict literals keyed by wire names.
1271
+ * union variants / lists-of-structs render as calls to their generated
1272
+ * `_params` factory (`fsl.bet_x_params(...)`), matching the per-struct builders
1273
+ * the Python backend emits.
1232
1274
  *
1233
1275
  * Union- (or otherwise non-struct-) rooted tools have no kwarg wrapper; the
1234
1276
  * single dict-style `<tool>` entry is called with one object-literal argument.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.cts","names":[],"sources":["../src/frontend/detect-format.ts","../src/ir/types.ts","../src/ir/meta.ts","../src/ir/node.ts","../src/ir/builders.ts","../src/ir/format.ts","../src/ir/passes/pass.ts","../src/ir/passes/canonicalize.ts","../src/ir/passes/flatten.ts","../src/ir/passes/pipeline.ts","../src/ir/passes/simplify.ts","../src/ir/passes/remove-empty.ts","../src/frontend/frontend.ts","../src/bindings/resolved-output.ts","../src/bindings/types.ts","../src/bindings/binding.ts","../src/bindings/output-gate.ts","../src/bindings/format.ts","../src/solver/resolve-outputs.ts","../src/solver/solver.ts","../src/manifest/types.ts","../src/manifest/context.ts","../src/backend/scope.ts","../src/backend/backend.ts","../src/backend/boutiques/boutiques.ts","../src/backend/code-builder.ts","../src/backend/collect-field-info.ts","../src/backend/collect-named-types.ts","../src/backend/find-doc.ts","../src/backend/find-struct-node.ts","../src/backend/collect-output-fields.ts","../src/backend/typed-spec.ts","../src/backend/nipype/emit.ts","../src/backend/nipype/nipype.ts","../src/backend/pydra/emit.ts","../src/backend/pydra/pydra.ts","../src/backend/resolve-field-binding.ts","../src/backend/resolve-output-tokens.ts","../src/backend/sig-entries.ts","../src/backend/type-keys.ts","../src/backend/python/python.ts","../src/backend/snippet-core.ts","../src/backend/python/snippet.ts","../src/backend/schema/jsonschema.ts","../src/backend/string-case.ts","../src/backend/styxdefs-compat.ts","../src/backend/typescript/typescript.ts","../src/backend/typescript/snippet.ts","../src/index.ts"],"mappings":";KAAY,UAAA;AAAZ;;;;AAAA,iBAMgB,YAAA,CAAa,MAAA,WAAiB,UAAA;;;;KCLlC,UAAA;;KAGA,mBAAA;;UAGK,aAAA;EACf,KAAA;EACA,WAAA;EACA,OAAA;EACA,UAAA;EACA,IAAA;EACA,OAAA;AAAA;;;ADbF;;;;;AAMA;;AANA,UESiB,OAAA;EACf,IAAA;EACA,IAAA;AAAA;;iBAIc,OAAA,CAAQ,IAAA,WAAe,OAAA;ADdvC;AAAA,KCmBY,WAAA;EACN,IAAA;EAAiB,KAAA;AAAA;EAEjB,IAAA;EACA,MAAA,EAAQ,OAAA;EACR,eAAA;EACA,QAAA;AAAA;ADnBN;;;;;;AAAA,UC4BiB,MAAA;EACf,IAAA;EACA,GAAA,GAAM,aAAA;EACN,MAAA,EAAQ,WAAA;EACR,UAAA,GAAa,mBAAA;AAAA;;UAIE,QAAA;;EAEf,IAAA;EApCsB;;;;AAMxB;;;;;AAKA;;EAqCE,UAAA;EACA,GAAA,GAAM,aAAA;EACN,YAAA;EAtCqB;EAwCrB,OAAA,GAAU,MAAA;AAAA;;UAIK,OAAA;EACf,EAAA;EACA,OAAA;EACA,GAAA,GAAM,aAAA;EACN,SAAA;IACE,KAAA;IACA,IAAA;EAAA;EAEF,MAAA,GAAS,YAAA;EACT,MAAA,GAAS,YAAA;AAAA;AAAA,UAGM,YAAA;EACf,IAAA;EACA,GAAA,GAAM,aAAA;AAAA;;;;;;;iBASQ,mBAAA,CAAoB,MAAA,EAAQ,MAAA,EAAQ,KAAA;;;;UCpF1C,QAAA;EACR,IAAA,EAAM,CAAA;EACN,IAAA,GAAO,QAAA;EACP,KAAA,EAAO,KAAA;AAAA;AAAA,KAKG,OAAA,GAAU,QAAA;EAGlB,GAAA;AAAA;AAAA,KAIQ,QAAA,GAAW,QAAA;EAGnB,KAAA,EAAO,IAAA;EACP,IAAA;AAAA;AAAA,KAIQ,QAAA,GAAW,QAAA;EAGnB,IAAA,EAAM,IAAA;AAAA;AAAA,KAIE,WAAA,GAAc,QAAA;EAGtB,IAAA,EAAM,IAAA;AAAA;AAAA,KAIE,MAAA,GAAS,QAAA;EAGjB,IAAA,EAAM,IAAA;EACN,IAAA;EACA,QAAA;EACA,QAAA;AAAA;AAAA,KAMQ,GAAA,GAAM,QAAA;EAGd,QAAA;EACA,QAAA;AAAA;AAAA,KAIQ,KAAA,GAAQ,QAAA;EAGhB,QAAA;EACA,QAAA;AAAA;AAAA,KAIQ,GAAA,GAAM,QAAA,QAAgB,MAAA;AAAA,KAEtB,IAAA,GAAO,QAAA;EAGf,aAAA;EACA,OAAA;EACA,UAAA,GAAa,mBAAA;AAAA;AAAA,KAML,cAAA,GAAiB,QAAA,GAAW,QAAA,GAAW,WAAA,GAAc,MAAA;AAAA,KACrD,QAAA,GAAW,OAAA,GAAU,GAAA,GAAM,KAAA,GAAQ,GAAA,GAAM,IAAA;AAAA,KACzC,IAAA,GAAO,cAAA,GAAiB,QAAA;AAAA,iBAIpB,UAAA,CAAW,IAAA,EAAM,IAAA,GAAO,IAAA,IAAQ,QAAA;AAAA,iBAIhC,YAAA,CAAa,IAAA,EAAM,IAAA,GAAO,IAAA,IAAQ,cAAA;;;iBC5ElC,GAAA,CAAI,GAAA,WAAc,OAAA;AAAA,iBAIlB,GAAA,CAAI,IAAA,GAAO,QAAA,YAAoB,GAAA;AAAA,iBAI/B,GAAA,CAAI,IAAA,GAAO,QAAA,YAAoB,GAAA;AAAA,iBAI/B,KAAA,CAAM,IAAA,GAAO,QAAA,YAAoB,KAAA;AAAA,iBAIjC,IAAA,CAAK,IAAA,GAAO,QAAA,YAAoB,IAAA;AAAA,iBAMhC,GAAA,CAAA,GAAO,KAAA,EAAO,IAAA,KAAS,QAAA;AAAA,iBAIvB,OAAA,CAAQ,IAAA,aAAiB,KAAA,EAAO,IAAA,KAAS,QAAA;AAAA,iBAIzC,GAAA,CAAI,IAAA,EAAM,IAAA,EAAM,IAAA,GAAO,QAAA,YAAoB,QAAA;AAAA,iBAI3C,GAAA,CAAI,IAAA,EAAM,IAAA,EAAM,IAAA,GAAO,QAAA,YAAoB,MAAA;AAAA,iBAI3C,OAAA,CAAQ,IAAA,UAAc,IAAA,EAAM,IAAA,EAAM,IAAA,GAAO,QAAA,YAAoB,MAAA;AAAA,iBAI7D,GAAA,CAAA,GAAO,IAAA,EAAM,IAAA,KAAS,WAAA;;;iBCvDtB,MAAA,CAAO,IAAA,EAAM,IAAA,EAAM,IAAA,GAAO,OAAA;;;aCD9B,UAAA;EACV,SAAA;EACA,OAAA;EACA,iBAAA;AAAA;AAAA,UAGe,UAAA;EACf,IAAA,EAAM,IAAA;EACN,MAAA,EAAQ,UAAA;EACR,QAAA;AAAA;AAAA,UAGe,IAAA;EAAA,SACN,IAAA;EACT,KAAA,CAAM,IAAA,EAAM,IAAA,GAAO,UAAA;AAAA;AAAA,iBAGL,OAAA,CAAA,GAAW,MAAA,EAAQ,IAAA,KAAS,IAAA;AAAA,iBA6B5B,QAAA,CAAS,IAAA,EAAM,IAAA,EAAM,aAAA,YAAqB,IAAA;;;ANhD1D;;;;;AAAA,cOQa,YAAA,EAAc,IAAA;;;APR3B;;;;;AAAA,cQQa,OAAA,EAAS,IAAA;;;cCDT,eAAA,EAAiB,IAAA;AAAA,iBAId,cAAA,CACd,MAAA,EAAQ,IAAA,IACR,OAAA;EAAY,QAAA;EAAoB,aAAA;AAAA,IAC/B,IAAA;;;ATdH;;;;;AAMA;;;;;;AANA,cU2Da,QAAA,EAAU,IAAA;;;AV3DvB;;;;;AAMA;;AANA,cWUa,WAAA,EAAa,IAAA;;;UCPT,WAAA;EACf,IAAA,GAAO,OAAA;EACP,IAAA,EAAM,IAAA;EACN,MAAA,EAAQ,UAAA;EACR,QAAA,EAAU,YAAA;AAAA;AAAA,UAGK,UAAA;EACf,OAAA;EACA,QAAA,GAAW,cAAA;AAAA;AAAA,UAGI,YAAA;EACf,OAAA;EACA,QAAA,GAAW,cAAA;AAAA;AAAA,UAGI,cAAA;EACf,IAAA;EACA,IAAA;EACA,MAAA;AAAA;AAAA,UAGe,QAAA;EAAA,SACN,IAAA;EAAA,SACA,UAAA;EACT,KAAA,CAAM,MAAA,UAAgB,QAAA,YAAoB,WAAA;AAAA;;;;;;;KCtBhC,aAAA;EACN,IAAA;EAAiB,KAAA;AAAA;EAEjB,IAAA;EACA,OAAA,EAAS,SAAA;EACT,eAAA;EACA,QAAA;AAAA;;;;;AZTN;;;;;AAGA;;;KYqBY,QAAA;EACN,IAAA;EAAiB,OAAA,EAAS,SAAA;AAAA;EAC1B,IAAA;EAAiB,OAAA,EAAS,SAAA;EAAW,OAAA;AAAA;EACrC,IAAA;EAAc,OAAA,EAAS,SAAA;AAAA;;AXtB7B;;;;UW6BiB,cAAA;EACf,IAAA;EACA,GAAA,GAAM,aAAA;EACN,MAAA,EAAQ,aAAA;EACR,UAAA,GAAa,mBAAA;AAAA;AXtBf;;;;;;;AAAA,UWgCiB,WAAA;EACf,KAAA,EAAO,SAAA;EACP,OAAA,EAAS,cAAA;AAAA;;;KCpDC,SAAA;EACN,IAAA;EAAgB,MAAA,EAAQ,UAAA;AAAA;EACxB,IAAA;AAAA;EACA,IAAA;AAAA;EACA,IAAA;EAAiB,KAAA;AAAA;EACjB,IAAA;EAAkB,KAAA,EAAO,SAAA;AAAA;EACzB,IAAA;EAAc,IAAA,EAAM,SAAA;AAAA;EACpB,IAAA;EAAgB,MAAA,EAAQ,MAAA,SAAe,SAAA;AAAA;EACvC,IAAA;EAAe,QAAA,EAAU,YAAA;AAAA;AAAA,UAEd,YAAA;EACf,IAAA;EACA,IAAA,EAAM,SAAA;AAAA;;;KCVI,SAAA;;;AfEZ;;;;;;;;ACLA;;;;;AAGA;;KcmBY,aAAA;EAAkB,IAAA;EAAe,IAAA;AAAA;EAAmB,IAAA;EAAc,OAAA,EAAS,SAAA;AAAA;;;;;;;KAQ3E,UAAA,GAAa,aAAA;AAAA,UAER,OAAA;EACf,EAAA,EAAI,SAAA;EACJ,IAAA,EAAM,IAAA;EACN,IAAA;EACA,IAAA,EAAM,SAAA;Eb5BgB;;;;AAMxB;;Ea6BE,IAAA,EAAM,QAAA;Eb7BgB;;AAKxB;;;;Ea+BE,MAAA,EAAQ,UAAA;AAAA;AAAA,KAGE,eAAA,GAAkB,GAAA,CAAI,SAAA,EAAW,OAAA;AAAA,KAEjC,qBAAA;AAAA,UAEK,gBAAA;EACf,MAAA;EACA,OAAA;EACA,KAAA,EAAO,qBAAA;AAAA;AAAA,UAGQ,sBAAA;EACf,MAAA,EAAQ,gBAAA;EACR,QAAA,EAAU,gBAAA;AAAA;AAAA,UAGK,WAAA;EACf,QAAA,EAAU,eAAA;EACV,OAAA,GAAU,IAAA,EAAM,IAAA,KAAS,OAAA;AAAA;AAAA,iBAGX,cAAA,CAAA,GAAkB,eAAA;;;;;;;AfpElC;;;;;;;;ACLA;;iBegBgB,UAAA,CACd,SAAA,EAAW,QAAA,IACX,MAAA,EAAQ,cAAA,EACR,QAAA,EAAU,eAAA,GACT,QAAA;AAAA,iBAyBa,OAAA,CAAQ,IAAA,EAAM,QAAA;;;UCvCb,YAAA;EACf,MAAA,GAAS,WAAA;EACT,WAAA,GAAc,sBAAA;AAAA;AAAA,iBAGA,iBAAA,CAAkB,MAAA,EAAQ,WAAA,EAAa,IAAA,EAAM,IAAA,EAAM,MAAA,GAAS,YAAA;;;UCE3D,gBAAA;EACf,MAAA,EAAQ,WAAA;EACR,WAAA,EAAa,sBAAA;AAAA;AlBVf;;;;;;;AAAA,iBkBwLgB,cAAA,CAAe,IAAA,EAAM,IAAA,EAAM,MAAA,EAAQ,WAAA,GAAc,gBAAA;;;UCzLhD,YAAA;EACf,cAAA,GAAiB,cAAA;AAAA;AAAA,UAGF,cAAA;EACf,OAAA,GAAU,IAAA,EAAM,IAAA,EAAM,IAAA;EACtB,UAAA,QAAkB,SAAA;AAAA;AAAA,iBAqBJ,qBAAA,CAAA,GAAyB,cAAA;AAAA,iBA+DzB,KAAA,CAAM,IAAA,EAAM,IAAA,EAAM,OAAA,GAAU,YAAA,GAAe,WAAA;;;UC7F1C,WAAA;EACf,IAAA;EACA,OAAA;EACA,GAAA,GAAM,aAAA;EACN,OAAA,GAAU,aAAA;AAAA;AAAA,UAGK,WAAA;EACf,IAAA;EACA,OAAA;EACA,MAAA;EACA,GAAA,GAAM,aAAA;AAAA;;;UCHS,cAAA;EACf,IAAA,EAAM,IAAA;EACN,QAAA,EAAU,eAAA;EACV,OAAA,EAAS,WAAA;EACT,YAAA,EAAc,WAAA;EACd,iBAAA,EAAmB,sBAAA;EACnB,GAAA,GAAM,OAAA;EACN,OAAA,GAAU,WAAA;EACV,OAAA,GAAU,WAAA;AAAA;AAAA,iBAGI,aAAA,CACd,IAAA,EAAM,IAAA,EACN,WAAA,EAAa,WAAA,EACb,OAAA,EAAS,gBAAA,EACT,IAAA;EAAS,GAAA,GAAM,OAAA;EAAS,OAAA,GAAU,WAAA;EAAa,OAAA,GAAU,WAAA;AAAA,IACxD,cAAA;;;;cCzBU,KAAA;EAAA,iBACM,QAAA;EAAA,iBACA,IAAA;EAAA,iBACA,MAAA;cAEL,QAAA,GAAU,QAAA,UAAuB,MAAA,GAAS,KAAA;EtBAxC;EsBOd,GAAA,CAAI,MAAA;;;;;;;ArBZN;;;;;EqB6BE,GAAA,CAAI,SAAA,UAAmB,MAAA,IAAS,CAAA;ErB1BH;EqB0C7B,KAAA,CAAM,QAAA,GAAU,QAAA,WAAwB,KAAA;AAAA;;;UCzCzB,UAAA;EACf,KAAA,EAAO,GAAA;EACP,MAAA,EAAQ,SAAA;EACR,QAAA,EAAU,WAAA;AAAA;AAAA,UAGK,SAAA;EACf,OAAA;AAAA;AAAA,UAGe,WAAA;EACf,OAAA;AAAA;;;;;UAOe,aAAA;EtBnBc;EsBqB7B,IAAA;EtBrB6B;;AAG/B;;EsBuBE,SAAA;AAAA;AAAA,UAGe,UAAA,SAAmB,UAAA;EAClC,IAAA,GAAO,OAAA;EtBxBP;;;;;EsB8BA,UAAA,GAAa,aAAA;AAAA;AAAA,UAGE,cAAA,SAAuB,UAAA;EACtC,IAAA,GAAO,WAAA;AAAA;;;;;ArB7BT;;;;;AAKA;;UqBsCiB,OAAA;EAAA,SACN,IAAA;EAAA,SACA,MAAA;ErBvCY;;;;;;;;EqBgDrB,OAAA,CAAQ,GAAA,EAAK,cAAA,EAAgB,KAAA,GAAQ,KAAA,GAAQ,UAAA;ErBlCxB;;;;;EqBwCrB,eAAA,KAAoB,KAAA;ErBpCY;;;;;;EqB2ChC,WAAA,EAAa,GAAA,EAAK,WAAA,EAAa,IAAA,EAAM,UAAA,KAAe,cAAA;ErB3CvC;;;AAIf;;EqB6CE,WAAA,EAAa,IAAA,EAAM,WAAA,EAAa,QAAA,EAAU,cAAA,KAAmB,UAAA;AAAA;AAAA,UAG9C,OAAA;EACf,GAAA,CAAI,IAAA,EAAM,SAAA;EACV,OAAA,CAAQ,IAAA,EAAM,SAAA;AAAA;;;UCtEN,YAAA;EACR,IAAA;EACA,EAAA;EACA,WAAA;EACA,gBAAA;EACA,cAAA;EACA,MAAA;EACA,GAAA;EACA,iBAAA;IAAsB,KAAA;IAAe,IAAA;EAAA;EACrC,cAAA;EACA,MAAA,GAAS,OAAA;EACT,eAAA;IAAoB,EAAA;IAAY,IAAA;IAAe,WAAA;EAAA;EAC/C,eAAA;IAAoB,EAAA;IAAY,IAAA;IAAe,WAAA;EAAA;EAC/C,cAAA,GAAiB,YAAA;AAAA;AAAA,UAGT,YAAA;EACR,EAAA;EACA,IAAA;EACA,WAAA;EACA,eAAA;EACA,QAAA;EACA,IAAA;EACA,mCAAA;AAAA;AAAA,UAGQ,OAAA;EACR,EAAA;EACA,IAAA;EACA,WAAA;EACA,IAAA,WAAe,YAAA,GAAe,YAAA;EAC9B,WAAA;EACA,QAAA;EACA,IAAA;EACA,gBAAA;EACA,kBAAA;EACA,kBAAA;EACA,mBAAA;EACA,6BAAA;EACA,eAAA;EACA,eAAA;EACA,OAAA;EACA,OAAA;EACA,OAAA;EACA,gBAAA;EACA,OAAA;AAAA;AAAA,iBA+7Bc,iBAAA,CAAkB,GAAA,EAAK,cAAA;EACrC,UAAA,EAAY,YAAA;EACZ,QAAA,EAAU,WAAA;AAAA;AAAA,cAKC,gBAAA,YAA4B,OAAA;EAAA,SAC9B,IAAA;EAAA,SACA,MAAA;EAET,OAAA,CAAQ,GAAA,EAAK,cAAA,GAAiB,UAAA;AAAA;;;;cC7gCnB,WAAA;EAAA,iBACM,KAAA;EAAA,QACT,KAAA;EAAA,iBACS,SAAA;cAEL,MAAA;EzBAE;EyBKd,IAAA,CAAK,IAAA;;EAML,KAAA,CAAA;EzBXsD;EyBiBtD,OAAA,CAAQ,IAAA,UAAc,MAAA;;EAKtB,MAAA,CAAO,EAAA;ExB3BG;EwBmCV,MAAA,CAAO,KAAA,EAAO,WAAA;;EASd,QAAA,CAAA;AAAA;;;;;;;AzBvCF;;U0BMiB,SAAA;EACf,GAAA;EACA,YAAA;AAAA;;;AzBbF;;;;;AAGA;iByBqBgB,gBAAA,CACd,GAAA,EAAK,cAAA,EACL,UAAA,EAAY,OAAA,CAAQ,SAAA;EAAa,IAAA;AAAA,KAChC,GAAA,SAAY,SAAA;;;;UCvBE,SAAA;EACf,IAAA;EACA,IAAA,EAAM,SAAA;AAAA;;;;;;;;A1BNR;;;;;AAGA;;;;;AAGA;iB0BqBgB,iBAAA,CACd,QAAA,EAAU,SAAA,EACV,QAAA,UACA,KAAA,EAAO,KAAA,EACP,aAAA,GAAgB,IAAA,qBAChB,YAAA;EACG,UAAA,EAAY,GAAA;EAAqB,SAAA,EAAW,SAAA;AAAA;;;;;iBA4DjC,eAAA,CACd,UAAA,EAAY,GAAA,oBACV,IAAA,EAAM,SAAA;;;;;;;A3B1FV;;;;;;;;ACLA;;iB2BgBgB,OAAA,CAAQ,IAAA,EAAM,IAAA,EAAM,SAAA,EAAW,SAAA;;;;;;A5BX/C;;;;;;;;ACLA;;;;;iB4BoBgB,cAAA,CACd,IAAA,EAAM,IAAA,EACN,GAAA,EAAK,cAAA,EACL,UAAA,EAAY,OAAA,CAAQ,SAAA;EAAa,IAAA;AAAA,KAChC,OAAA,CAAQ,IAAA;EAAQ,IAAA;AAAA;;;;;;;;;A3BhBnB;;;K4BgDY,WAAA;EAAgB,IAAA;EAAgB,QAAA;AAAA;EAAwB,IAAA;AAAA;;UAoBnD,WAAA;E5BrDH;E4BuDZ,EAAA;E5BrDI;E4BuDJ,IAAA;EACA,KAAA,EAAO,WAAA;EACP,GAAA;AAAA;;UAiDe,WAAA;E5B7FiB;E4B+FhC,IAAA;E5B3FuB;E4B6FvB,EAAA;EACA,GAAA;AAAA;;;;;;A9BnIF;;;;;;;;ACLA;;;;K8BwBY,cAAA;A9BrBZ;AAAA,U8BkCiB,cAAA;EACf,IAAA,EAAM,cAAA;EACN,UAAA,GAAa,UAAA;EACb,OAAA;EACA,UAAA;AAAA;;UAIe,UAAA;E9BtCf;E8BwCA,QAAA;E9BtCA;E8BwCA,OAAA;EACA,IAAA,EAAM,cAAA;EACN,UAAA,GAAa,UAAA;E9BvCN;E8ByCP,QAAA;;EAEA,UAAA;;EAEA,SAAA;EACA,OAAA;EACA,GAAA;E7BlDA;E6BoDA,KAAA;IAAU,GAAA;IAAc,GAAA;EAAA;E7B/CF;E6BiDtB,UAAA;IAAe,GAAA;IAAc,GAAA;EAAA;E7BxCV;E6B0CnB,OAAA;E7B7CqB;E6B+CrB,UAAA;E7B5CI;E6B8CJ,QAAA,GAAW,cAAA;AAAA;;UAII,gBAAA;E7BhDH;E6BkDZ,UAAA;E7BzCqB;E6B2CrB,SAAA;E7BzCM;E6B2CN,YAAA;AAAA;;UAIe,SAAA;E7BhDf;;;;E6BqDA,YAAA;EACA,MAAA,EAAQ,UAAA;EACR,OAAA,EAAS,WAAA;EACT,OAAA,EAAS,WAAA;EACT,UAAA,EAAY,gBAAA;AAAA;;iBAIE,cAAA,CAAe,GAAA,EAAK,cAAA,GAAiB,SAAA;;;;UCzFpC,WAAA;EhCRK;EgCUpB,QAAA;EhCJc;EgCMd,SAAA;;EAEA,GAAA;EhCRsD;EgCUtD,SAAA;;EAEA,UAAA;AAAA;;;;iBCTc,WAAA,CAAY,GAAA,EAAK,cAAA,GAAiB,WAAA;AjCHlD;AAAA,iBiCoBgB,cAAA,CAAe,GAAA,EAAK,cAAA;;;;;;;AhCzBpC;;;;cgCuCa,aAAA,YAAyB,OAAA;EAAA,SAC3B,IAAA;EAAA,SACA,MAAA;EAMT,OAAA,CAAQ,GAAA,EAAK,cAAA,EAAgB,MAAA,GAAS,KAAA,GAAQ,UAAA;AAAA;;;;UCxC/B,UAAA;ElCRK;EkCUpB,QAAA;ElCJc;EkCMd,SAAA;;EAEA,GAAA;AAAA;;;;iBCLc,UAAA,CAAW,GAAA,EAAK,cAAA,GAAiB,UAAA;AnCHjD;AAAA,iBmCiBgB,aAAA,CAAc,GAAA,EAAK,cAAA;;;;;;;AlCtBnC;;;;;ckCqCa,YAAA,YAAwB,OAAA;EAAA,SAC1B,IAAA;EAAA,SACA,MAAA;EAKT,OAAA,CAAQ,GAAA,EAAK,cAAA,EAAgB,MAAA,GAAS,KAAA,GAAQ,UAAA;AAAA;;;;;;AnCvChD;;;;;;;;ACLA;;iBmCgBgB,mBAAA,CACd,IAAA,EAAM,IAAA,EACN,GAAA,EAAK,cAAA,EACL,UAAA,EAAY,OAAA,CAAQ,SAAA;EAAa,IAAA;AAAA,IACjC,SAAA,GAAY,IAAA;EACT,OAAA,EAAS,OAAA;EAAS,WAAA,EAAa,IAAA;AAAA;;;;;;ApChBpC;;iBqCWgB,aAAA,CAAc,MAAA,EAAQ,aAAA,KAAkB,aAAA;;;;;;UAkBvC,cAAA;EACf,IAAA;EACA,IAAA,EAAM,QAAA;EACN,MAAA,EAAQ,aAAA;EACR,QAAA,EAAU,cAAA;AAAA;AAAA,iBAGI,UAAA,CACd,SAAA,EAAW,QAAA,IACX,MAAA,EAAQ,cAAA,EACR,QAAA,EAAU,eAAA,GACT,cAAA;;;;ApCvCH;;iBoCqDgB,OAAA,CAAQ,IAAA,EAAM,cAAA;;iBAKd,UAAA,CAAW,IAAA,EAAM,cAAA;;;;;iBAQjB,SAAA,CACd,KAAA,EAAO,WAAA,EACP,SAAA,EAAW,QAAA,IACX,QAAA,EAAU,eAAA,GACT,cAAA;;;;;;;ArCvEH;;;;;;;;ACLA;;;;;UqCmBiB,QAAA;ErChBc;EqCkB7B,IAAA;ErClB6B;EqCoB7B,OAAA;EACA,OAAA;ErClB4B;EqCoB5B,UAAA;ErCpB4B;EqCsB5B,UAAA;ErCpBA;EqCsBA,kBAAA;EACA,GAAA;AAAA;;UAIe,UAAA;ErCvBR;EqCyBP,UAAA,GAAa,CAAA,EAAG,SAAA;;EAEhB,cAAA;EpC/Be;EoCiCf,eAAA;;EAEA,aAAA,GAAgB,CAAA;AAAA;ApC7BlB;;;;;AAKA;;;;;;;AALA,iBoC4CgB,eAAA,CACd,QAAA,EAAU,OAAA,CAAQ,SAAA;EAAa,IAAA;AAAA,IAC/B,SAAA,EAAW,GAAA,SAAY,SAAA,GACvB,aAAA,GAAgB,OAAA,qBAChB,IAAA,EAAM,UAAA,GACL,QAAA;;;AtChEH;;;;;AAMA;;;;;;;;ACLA;;ADDA,iBuCiBgB,OAAA,CAAQ,IAAA,EAAM,SAAA;;iBAuBd,SAAA,CAAU,IAAA,EAAM,OAAA,CAAQ,SAAA;EAAa,IAAA;AAAA;;iBAQrC,QAAA,CAAS,IAAA,EAAM,OAAA,CAAQ,SAAA;EAAa,IAAA;AAAA;;;AtCzCpD;;;;;;AAAA,UuCsKiB,WAAA;EACf,KAAA;EACA,GAAA;EACA,KAAA;IACE,MAAA;IACA,OAAA;IACA,QAAA;IACA,KAAA;IACA,SAAA;IACA,QAAA;IACA,OAAA;IACA,QAAA;IACA,OAAA;EAAA;EAEF,QAAA,EAAU,SAAA;EACV,YAAA;EACA,UAAA,EAAY,GAAA;EACZ,SAAA,EAAW,SAAA;EACX,WAAA;EACA,UAAA;EACA,UAAA,EAAY,QAAA;AAAA;;;;;;;iBASE,cAAA,CACd,GAAA,EAAK,cAAA,EACL,KAAA,GAAO,KAAA,GACN,WAAA;AAAA,iBAqFa,cAAA,CAAe,GAAA,EAAK,cAAA,EAAgB,YAAA,GAAe,KAAA;AAAA,cA4NtD,aAAA,YAAyB,OAAA;EAAA,SAC3B,IAAA;EAAA,SACA,MAAA;EAET,OAAA,CAAQ,GAAA,EAAK,cAAA,EAAgB,KAAA,GAAQ,KAAA,GAAQ,UAAA;EAY7C,eAAA,CAAA,GAAmB,KAAA;EAInB,WAAA,CAAY,GAAA,EAAK,WAAA,EAAa,IAAA,EAAM,UAAA,KAAe,cAAA;EAanD,WAAA,CAAY,IAAA,EAAM,WAAA,EAAa,QAAA,EAAU,cAAA,KAAmB,UAAA;AAAA;;;AxC/hB9D;;;;;AAMA;AANA,UyCQiB,cAAA;;EAEf,UAAA;EzCJsD;EyCMtD,MAAA,CAAO,KAAA;;EAEP,OAAA,CAAQ,KAAA;ExCbE;EwCeV,MAAA,CAAO,KAAA;;EAEP,IAAA;ExCjBoB;EwCmBpB,MAAA,CAAO,OAAA;AAAA;;UAIQ,cAAA;ExCpBc;AAG/B;;;;EwCuBE,WAAA;ExCrBA;EwCuBA,aAAA;AAAA;;;;;;;;AvCvBF;;;;;iBuCsEgB,mBAAA,CACd,KAAA,WACA,IAAA,EAAM,OAAA,CAAQ,SAAA;EAAa,IAAA;AAAA,IAC3B,MAAA,UACA,CAAA,EAAG,cAAA,EACH,YAAA;;;AvChEF;;;;;;;iBuC6IgB,WAAA,CACd,KAAA,WACA,IAAA,EAAM,SAAA,EACN,MAAA,UACA,CAAA,EAAG,cAAA;;;;;;;AzC/JL;;;;;;;;ACLA;;;;;AAGA;;;;;AAGA;;;;;iByCsCgB,gBAAA,CACd,GAAA,EAAK,cAAA,EACL,MAAA,EAAQ,MAAA,mBACR,IAAA,GAAM,cAAA;;;UCpCS,UAAA;EACf,IAAA;EACA,KAAA,GAAQ,UAAA;EACR,UAAA,GAAa,MAAA,SAAe,UAAA;EAC5B,QAAA;EACA,KAAA,GAAQ,UAAA;EACR,IAAA;EACA,KAAA;EAAA,CACC,GAAA;AAAA;AAAA,iBAgMa,cAAA,CAAe,GAAA,EAAK,cAAA,GAAiB,UAAA;A1CnNrD;;;;;AAGA;;;;;AAGA;;;;;;;;;;AANA,iB0C6PgB,qBAAA,CAAsB,GAAA,EAAK,cAAA,GAAiB,UAAA;AAAA,cAiD/C,iBAAA,YAA6B,OAAA;EAAA,SAC/B,IAAA;EAAA,SACA,MAAA;;EAGT,eAAA,CAAA,GAAmB,KAAA;EAInB,OAAA,CAAQ,GAAA,EAAK,cAAA,EAAgB,KAAA,GAAQ,KAAA,GAAQ,UAAA;AAAA;;;iBC5S/B,SAAA,CAAU,CAAA;AAAA,iBAIV,kBAAA,CAAmB,CAAA;AAAA,iBAInB,UAAA,CAAW,CAAA;AAAA,iBAMX,SAAA,CAAU,CAAA;;;;A5C1B1B;;;;;AAMA;;c6CEa,eAAA;E7CFgB,oE6COnB,MAAA;WAAA,GAAA;AAAA;A5CZV;;;;;AAGA;;AAHA,c4CqBa,kBAAA;;;iBC2OG,kBAAA,CAAmB,GAAA,EAAK,cAAA,EAAgB,YAAA,GAAe,KAAA;;;;;;iBA8HvD,aAAA,CAAc,GAAA,EAAK,cAAA,GAAiB,aAAA;AAAA,cAmFvC,iBAAA,YAA6B,OAAA;EAAA,SAC/B,IAAA;EAAA,SACA,MAAA;EAET,OAAA,CAAQ,GAAA,EAAK,cAAA,EAAgB,KAAA,GAAQ,KAAA,GAAQ,UAAA;EAY7C,eAAA,CAAA,GAAmB,KAAA;EAInB,WAAA,CAAY,GAAA,EAAK,WAAA,EAAa,IAAA,EAAM,UAAA,KAAe,cAAA;EASnD,WAAA,CAAY,IAAA,EAAM,WAAA,EAAa,QAAA,EAAU,cAAA,KAAmB,UAAA;AAAA;;;;;;;A9Cze9D;;;;;;;;ACLA;;;;;AAGA;;;;;AAGA;;iB8CiCgB,oBAAA,CACd,GAAA,EAAK,cAAA,EACL,MAAA,EAAQ,MAAA,mBACR,IAAA,GAAM,cAAA;;;iBC5BQ,OAAA,CACd,MAAA,UACA,iBAAA;EAA+B,MAAA,GAAS,UAAA;EAAY,QAAA;AAAA,IACnD,WAAA"}
1
+ {"version":3,"file":"index.d.cts","names":[],"sources":["../src/frontend/detect-format.ts","../src/ir/types.ts","../src/ir/meta.ts","../src/ir/node.ts","../src/ir/builders.ts","../src/ir/format.ts","../src/ir/passes/pass.ts","../src/ir/passes/canonicalize.ts","../src/ir/passes/flatten.ts","../src/ir/passes/pipeline.ts","../src/ir/passes/simplify.ts","../src/ir/passes/remove-empty.ts","../src/frontend/frontend.ts","../src/bindings/resolved-output.ts","../src/bindings/types.ts","../src/bindings/binding.ts","../src/bindings/output-gate.ts","../src/bindings/format.ts","../src/solver/resolve-outputs.ts","../src/solver/solver.ts","../src/manifest/types.ts","../src/manifest/context.ts","../src/backend/scope.ts","../src/backend/backend.ts","../src/backend/boutiques/boutiques.ts","../src/backend/code-builder.ts","../src/backend/collect-field-info.ts","../src/backend/collect-named-types.ts","../src/backend/find-doc.ts","../src/backend/find-struct-node.ts","../src/backend/collect-output-fields.ts","../src/backend/typed-spec.ts","../src/backend/nipype/emit.ts","../src/backend/nipype/nipype.ts","../src/backend/pydra/emit.ts","../src/backend/pydra/pydra.ts","../src/backend/resolve-field-binding.ts","../src/backend/resolve-output-tokens.ts","../src/backend/sig-entries.ts","../src/backend/type-keys.ts","../src/backend/python/python.ts","../src/backend/snippet-core.ts","../src/backend/python/snippet.ts","../src/backend/schema/jsonschema.ts","../src/backend/string-case.ts","../src/backend/styxdefs-compat.ts","../src/backend/typescript/typescript.ts","../src/backend/typescript/snippet.ts","../src/index.ts"],"mappings":"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"}
package/dist/index.d.mts CHANGED
@@ -1114,6 +1114,27 @@ declare function unionKey(type: Extract<BoundType, {
1114
1114
  }>): string;
1115
1115
  //#endregion
1116
1116
  //#region src/backend/python/python.d.ts
1117
+ /**
1118
+ * A kwarg `_params` builder for one nested (non-root) struct - a union variant
1119
+ * or a plain nested sub-struct. Lets callers write
1120
+ * `output=tool_corrected_output_params(...)` instead of hand-authoring a
1121
+ * `{"@type": ...}` dict. The root struct's factory is `names.paramsFn`; this
1122
+ * covers everything below it.
1123
+ */
1124
+ interface NestedFactory {
1125
+ /** The struct's TypedDict name (factory return + `params` annotation type). */
1126
+ typeName: string;
1127
+ /** Structural identity key of the struct - used by the snippet renderer to
1128
+ * route a nested struct value to its factory. */
1129
+ structKey: string;
1130
+ /** Registered factory function name (e.g. `tool_corrected_output_params`). */
1131
+ funcName: string;
1132
+ /** The struct's `@type` discriminator, injected by the factory; undefined for
1133
+ * a plain sub-struct that carries no discriminator. */
1134
+ typeTag: string | undefined;
1135
+ /** Per-field signature entries (shared with the snippet renderer). */
1136
+ sigEntries: SigEntry[];
1137
+ }
1117
1138
  /**
1118
1139
  * The fully-derived naming/typing model for one tool's Python emission. Computed
1119
1140
  * once by `buildEmitModel` so the file emitter and the call-site snippet renderer
@@ -1141,6 +1162,7 @@ interface PyEmitModel {
1141
1162
  rootTypeTag: string | undefined;
1142
1163
  paramsType: string;
1143
1164
  sigEntries: SigEntry[];
1165
+ nestedFactories: NestedFactory[];
1144
1166
  }
1145
1167
  /**
1146
1168
  * Derive the public names, named-type declarations, root typing, and per-field
@@ -1179,6 +1201,21 @@ interface SnippetDialect {
1179
1201
  null: string;
1180
1202
  /** Render an object-literal key from a wire key, quoting when not a bare identifier. */
1181
1203
  objKey(wireKey: string): string;
1204
+ /**
1205
+ * Optional: render a nested struct as a constructor/factory call instead of a
1206
+ * plain object literal. A backend that generates per-struct builders (Python's
1207
+ * `tool_x_params(...)`) supplies this; one that doesn't (TypeScript) leaves it
1208
+ * unset and gets the object-literal form. Return `undefined` to fall back to
1209
+ * the object literal for this particular struct (e.g. no matching factory).
1210
+ *
1211
+ * The Python/TypeScript divergence is deliberate: nested object literals are
1212
+ * idiomatic in TypeScript, whereas Python's niwrap audience expects the
1213
+ * factory-builder pattern (`tool_sub_params(...)`) it has used since v1. See
1214
+ * the nested-factory block in `python.ts` for the full rationale.
1215
+ */
1216
+ structConstructor?(type: Extract<BoundType, {
1217
+ kind: "struct";
1218
+ }>, value: Record<string, unknown>, indent: string, d: SnippetDialect): string | undefined;
1182
1219
  }
1183
1220
  /** Options shared by both language renderers. */
1184
1221
  interface SnippetOptions {
@@ -1193,9 +1230,13 @@ interface SnippetOptions {
1193
1230
  }
1194
1231
  /**
1195
1232
  * Render a struct config as a host object literal (Python dict / TS object).
1196
- * Keys are the Boutiques wire names (the generated TypedDict / interface keys) -
1197
- * nested structs have no constructor function in the generated code, so callers
1198
- * build them as plain object literals.
1233
+ * Keys are the Boutiques wire names (the generated TypedDict / interface keys).
1234
+ *
1235
+ * When the dialect supplies `structConstructor` (Python, which generates a
1236
+ * per-struct `_params` builder), the struct is rendered as that factory call
1237
+ * instead - e.g. `tool_corrected_output_params(file="...")`. Backends without
1238
+ * per-struct builders (TypeScript) leave the hook unset and build the plain
1239
+ * object literal below.
1199
1240
  *
1200
1241
  * `@type` is emitted from the struct's literal discriminator field when present
1201
1242
  * (union variants carry a required, load-bearing `@type`); for the root call the
@@ -1227,8 +1268,9 @@ declare function renderValue(value: unknown, type: BoundType, indent: string, d:
1227
1268
  * *scrubbed host* identifiers (`float` -> `float_`), not the wire keys; the
1228
1269
  * per-field mapping comes from the same `buildSigEntries` the generated wrapper
1229
1270
  * is built from, so the snippet matches the real signature. Nested structs /
1230
- * union variants / lists-of-structs have no constructor in the generated code,
1231
- * so they render as plain dict literals keyed by wire names.
1271
+ * union variants / lists-of-structs render as calls to their generated
1272
+ * `_params` factory (`fsl.bet_x_params(...)`), matching the per-struct builders
1273
+ * the Python backend emits.
1232
1274
  *
1233
1275
  * Union- (or otherwise non-struct-) rooted tools have no kwarg wrapper; the
1234
1276
  * single dict-style `<tool>` entry is called with one object-literal argument.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","names":[],"sources":["../src/frontend/detect-format.ts","../src/ir/types.ts","../src/ir/meta.ts","../src/ir/node.ts","../src/ir/builders.ts","../src/ir/format.ts","../src/ir/passes/pass.ts","../src/ir/passes/canonicalize.ts","../src/ir/passes/flatten.ts","../src/ir/passes/pipeline.ts","../src/ir/passes/simplify.ts","../src/ir/passes/remove-empty.ts","../src/frontend/frontend.ts","../src/bindings/resolved-output.ts","../src/bindings/types.ts","../src/bindings/binding.ts","../src/bindings/output-gate.ts","../src/bindings/format.ts","../src/solver/resolve-outputs.ts","../src/solver/solver.ts","../src/manifest/types.ts","../src/manifest/context.ts","../src/backend/scope.ts","../src/backend/backend.ts","../src/backend/boutiques/boutiques.ts","../src/backend/code-builder.ts","../src/backend/collect-field-info.ts","../src/backend/collect-named-types.ts","../src/backend/find-doc.ts","../src/backend/find-struct-node.ts","../src/backend/collect-output-fields.ts","../src/backend/typed-spec.ts","../src/backend/nipype/emit.ts","../src/backend/nipype/nipype.ts","../src/backend/pydra/emit.ts","../src/backend/pydra/pydra.ts","../src/backend/resolve-field-binding.ts","../src/backend/resolve-output-tokens.ts","../src/backend/sig-entries.ts","../src/backend/type-keys.ts","../src/backend/python/python.ts","../src/backend/snippet-core.ts","../src/backend/python/snippet.ts","../src/backend/schema/jsonschema.ts","../src/backend/string-case.ts","../src/backend/styxdefs-compat.ts","../src/backend/typescript/typescript.ts","../src/backend/typescript/snippet.ts","../src/index.ts"],"mappings":"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"}
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../src/frontend/detect-format.ts","../src/ir/types.ts","../src/ir/meta.ts","../src/ir/node.ts","../src/ir/builders.ts","../src/ir/format.ts","../src/ir/passes/pass.ts","../src/ir/passes/canonicalize.ts","../src/ir/passes/flatten.ts","../src/ir/passes/pipeline.ts","../src/ir/passes/simplify.ts","../src/ir/passes/remove-empty.ts","../src/frontend/frontend.ts","../src/bindings/resolved-output.ts","../src/bindings/types.ts","../src/bindings/binding.ts","../src/bindings/output-gate.ts","../src/bindings/format.ts","../src/solver/resolve-outputs.ts","../src/solver/solver.ts","../src/manifest/types.ts","../src/manifest/context.ts","../src/backend/scope.ts","../src/backend/backend.ts","../src/backend/boutiques/boutiques.ts","../src/backend/code-builder.ts","../src/backend/collect-field-info.ts","../src/backend/collect-named-types.ts","../src/backend/find-doc.ts","../src/backend/find-struct-node.ts","../src/backend/collect-output-fields.ts","../src/backend/typed-spec.ts","../src/backend/nipype/emit.ts","../src/backend/nipype/nipype.ts","../src/backend/pydra/emit.ts","../src/backend/pydra/pydra.ts","../src/backend/resolve-field-binding.ts","../src/backend/resolve-output-tokens.ts","../src/backend/sig-entries.ts","../src/backend/type-keys.ts","../src/backend/python/python.ts","../src/backend/snippet-core.ts","../src/backend/python/snippet.ts","../src/backend/schema/jsonschema.ts","../src/backend/string-case.ts","../src/backend/styxdefs-compat.ts","../src/backend/typescript/typescript.ts","../src/backend/typescript/snippet.ts","../src/index.ts"],"mappings":"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"}