@octonodes/sdk 0.2.16 → 0.2.38

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 (141) hide show
  1. package/PLUGINS.md +7 -1
  2. package/README.md +41 -0
  3. package/dist/data-tables/table.d.ts +90 -0
  4. package/dist/data-tables/table.d.ts.map +1 -0
  5. package/dist/data-tables/table.js +44 -0
  6. package/dist/data-tables/table.js.map +1 -0
  7. package/dist/data-tables/types.d.ts +24 -0
  8. package/dist/data-tables/types.d.ts.map +1 -0
  9. package/dist/data-tables/types.js +3 -0
  10. package/dist/data-tables/types.js.map +1 -0
  11. package/dist/gen/index.d.ts +1 -1
  12. package/dist/gen/index.d.ts.map +1 -1
  13. package/dist/gen/sdk.gen.d.ts +9 -1
  14. package/dist/gen/sdk.gen.d.ts.map +1 -1
  15. package/dist/gen/sdk.gen.js +30 -0
  16. package/dist/gen/sdk.gen.js.map +1 -1
  17. package/dist/gen/types.gen.d.ts +264 -2
  18. package/dist/gen/types.gen.d.ts.map +1 -1
  19. package/dist/index.d.ts +1 -0
  20. package/dist/index.d.ts.map +1 -1
  21. package/dist/octonode-client.d.ts +87 -0
  22. package/dist/octonode-client.d.ts.map +1 -1
  23. package/dist/octonode-client.js +4 -0
  24. package/dist/octonode-client.js.map +1 -1
  25. package/dist/plugins/schema/app/contributions.d.ts +355 -0
  26. package/dist/plugins/schema/app/contributions.d.ts.map +1 -0
  27. package/dist/plugins/schema/app/contributions.js +179 -0
  28. package/dist/plugins/schema/app/contributions.js.map +1 -0
  29. package/dist/plugins/schema/app-contributions.d.ts +355 -0
  30. package/dist/plugins/schema/app-contributions.d.ts.map +1 -0
  31. package/dist/plugins/schema/app-contributions.js +179 -0
  32. package/dist/plugins/schema/app-contributions.js.map +1 -0
  33. package/dist/plugins/schema/app.d.ts +532 -27
  34. package/dist/plugins/schema/app.d.ts.map +1 -1
  35. package/dist/plugins/schema/app.js +59 -5
  36. package/dist/plugins/schema/app.js.map +1 -1
  37. package/dist/plugins/schema/constants.d.ts +21 -2
  38. package/dist/plugins/schema/constants.d.ts.map +1 -1
  39. package/dist/plugins/schema/constants.js +56 -1
  40. package/dist/plugins/schema/constants.js.map +1 -1
  41. package/dist/plugins/schema/icons.d.ts +4 -0
  42. package/dist/plugins/schema/icons.d.ts.map +1 -1
  43. package/dist/plugins/schema/icons.js +20 -1
  44. package/dist/plugins/schema/icons.js.map +1 -1
  45. package/dist/plugins/schema/ipc/envelope.d.ts +923 -0
  46. package/dist/plugins/schema/ipc/envelope.d.ts.map +1 -0
  47. package/dist/plugins/schema/ipc/envelope.js +210 -0
  48. package/dist/plugins/schema/ipc/envelope.js.map +1 -0
  49. package/dist/plugins/schema/ipc-envelope.d.ts +65 -65
  50. package/dist/plugins/schema/ipc-envelope.js +1 -1
  51. package/dist/plugins/schema/ipc-envelope.js.map +1 -1
  52. package/dist/plugins/schema/personal/layout.d.ts +52 -0
  53. package/dist/plugins/schema/personal/layout.d.ts.map +1 -0
  54. package/dist/plugins/schema/personal/layout.js +26 -0
  55. package/dist/plugins/schema/personal/layout.js.map +1 -0
  56. package/dist/plugins/schema/personal-layout.d.ts +52 -0
  57. package/dist/plugins/schema/personal-layout.d.ts.map +1 -0
  58. package/dist/plugins/schema/personal-layout.js +26 -0
  59. package/dist/plugins/schema/personal-layout.js.map +1 -0
  60. package/dist/plugins/schema/plugin/execution.d.ts +854 -55
  61. package/dist/plugins/schema/plugin/execution.d.ts.map +1 -1
  62. package/dist/plugins/schema/plugin/execution.js +2 -2
  63. package/dist/plugins/schema/plugin/execution.js.map +1 -1
  64. package/dist/plugins/schema/plugin/plugin.d.ts +808 -45
  65. package/dist/plugins/schema/plugin/plugin.d.ts.map +1 -1
  66. package/dist/plugins/schema/plugin/plugin.js +82 -6
  67. package/dist/plugins/schema/plugin/plugin.js.map +1 -1
  68. package/dist/plugins/schema/plugin/publishing.d.ts +234 -122
  69. package/dist/plugins/schema/plugin/publishing.d.ts.map +1 -1
  70. package/dist/plugins/schema/plugin/publishing.js +20 -1
  71. package/dist/plugins/schema/plugin/publishing.js.map +1 -1
  72. package/dist/plugins/schema/plugin-publishing.d.ts +122 -122
  73. package/dist/plugins/schema/plugin-sdk/index.d.ts +2 -1
  74. package/dist/plugins/schema/plugin-sdk/index.d.ts.map +1 -1
  75. package/dist/plugins/schema/plugin-sdk/index.js +2 -1
  76. package/dist/plugins/schema/plugin-sdk/index.js.map +1 -1
  77. package/dist/plugins/schema/plugin.d.ts +22 -22
  78. package/dist/plugins/sdk/constants.d.ts +5 -0
  79. package/dist/plugins/sdk/constants.d.ts.map +1 -0
  80. package/dist/plugins/sdk/constants.js +9 -0
  81. package/dist/plugins/sdk/constants.js.map +1 -0
  82. package/dist/plugins/sdk/define/node.d.ts +15 -0
  83. package/dist/plugins/sdk/define/node.d.ts.map +1 -0
  84. package/dist/plugins/sdk/define/node.js +58 -0
  85. package/dist/plugins/sdk/define/node.js.map +1 -0
  86. package/dist/plugins/sdk/define-node.d.ts +5 -0
  87. package/dist/plugins/sdk/define-node.d.ts.map +1 -1
  88. package/dist/plugins/sdk/define-node.js +1 -1
  89. package/dist/plugins/sdk/define-node.js.map +1 -1
  90. package/dist/plugins/sdk/definitions/clients/output.d.ts +3 -0
  91. package/dist/plugins/sdk/definitions/clients/output.d.ts.map +1 -0
  92. package/dist/plugins/sdk/definitions/clients/output.js +47 -0
  93. package/dist/plugins/sdk/definitions/clients/output.js.map +1 -0
  94. package/dist/plugins/sdk/definitions/compiler/catalog.d.ts.map +1 -1
  95. package/dist/plugins/sdk/definitions/compiler/catalog.js +9 -0
  96. package/dist/plugins/sdk/definitions/compiler/catalog.js.map +1 -1
  97. package/dist/plugins/sdk/definitions/compiler/index.d.ts.map +1 -1
  98. package/dist/plugins/sdk/definitions/compiler/index.js +59 -2
  99. package/dist/plugins/sdk/definitions/compiler/index.js.map +1 -1
  100. package/dist/plugins/sdk/definitions/npm/emit/js.d.ts.map +1 -1
  101. package/dist/plugins/sdk/definitions/npm/emit/js.js +7 -3
  102. package/dist/plugins/sdk/definitions/npm/emit/js.js.map +1 -1
  103. package/dist/plugins/sdk/definitions/npm/types.d.ts +39 -3
  104. package/dist/plugins/sdk/definitions/npm/types.d.ts.map +1 -1
  105. package/dist/plugins/sdk/definitions/types.d.ts +10 -3
  106. package/dist/plugins/sdk/definitions/types.d.ts.map +1 -1
  107. package/dist/plugins/sdk/json/schema.d.ts +13 -0
  108. package/dist/plugins/sdk/json/schema.d.ts.map +1 -0
  109. package/dist/plugins/sdk/json/schema.js +113 -0
  110. package/dist/plugins/sdk/json/schema.js.map +1 -0
  111. package/dist/plugins/sdk/json-schema.js +13 -0
  112. package/dist/plugins/sdk/json-schema.js.map +1 -1
  113. package/dist/plugins/sdk/nodes/index.d.ts +3 -1
  114. package/dist/plugins/sdk/nodes/index.d.ts.map +1 -1
  115. package/dist/plugins/sdk/nodes/index.js +5 -0
  116. package/dist/plugins/sdk/nodes/index.js.map +1 -1
  117. package/dist/plugins/sdk/plugin/index.d.ts +1 -0
  118. package/dist/plugins/sdk/plugin/index.d.ts.map +1 -1
  119. package/dist/plugins/sdk/plugin.d.ts +1 -1
  120. package/dist/plugins/sdk/plugin.d.ts.map +1 -1
  121. package/dist/plugins/sdk/plugin.js +2 -2
  122. package/dist/plugins/sdk/plugin.js.map +1 -1
  123. package/dist/plugins/sdk/plugins/define/node.d.ts +29 -0
  124. package/dist/plugins/sdk/plugins/define/node.d.ts.map +1 -0
  125. package/dist/plugins/sdk/plugins/define/node.js +16 -0
  126. package/dist/plugins/sdk/plugins/define/node.js.map +1 -0
  127. package/dist/plugins/sdk/plugins/index.d.ts +6 -4
  128. package/dist/plugins/sdk/plugins/index.d.ts.map +1 -1
  129. package/dist/plugins/sdk/plugins/index.js +24 -15
  130. package/dist/plugins/sdk/plugins/index.js.map +1 -1
  131. package/dist/plugins/sdk/plugins/types.d.ts +1 -1
  132. package/dist/plugins/sdk/plugins/types.d.ts.map +1 -1
  133. package/dist/plugins/sdk/runner.d.ts +3 -7
  134. package/dist/plugins/sdk/runner.d.ts.map +1 -1
  135. package/dist/plugins/sdk/runner.js +61 -18
  136. package/dist/plugins/sdk/runner.js.map +1 -1
  137. package/dist/plugins/sdk/types.d.ts +115 -0
  138. package/dist/plugins/sdk/types.d.ts.map +1 -0
  139. package/dist/plugins/sdk/types.js +3 -0
  140. package/dist/plugins/sdk/types.js.map +1 -0
  141. package/package.json +5 -2
@@ -277,7 +277,11 @@ function compileDefinition(root, extraFiles = [], kind = "project") {
277
277
  exportName: npm.descriptor.exportName,
278
278
  symbol: npm.descriptor.id,
279
279
  parameters: [],
280
- customization: { description: npm.descriptor.description, ...customization },
280
+ customization: {
281
+ description: npm.descriptor.description,
282
+ ...(npm.descriptor.client ? { client: npm.descriptor.exportName } : {}),
283
+ ...customization,
284
+ },
281
285
  inputs,
282
286
  outputs: npm.descriptor.outputsSchema,
283
287
  npm,
@@ -375,10 +379,52 @@ function compileDefinition(root, extraFiles = [], kind = "project") {
375
379
  }
376
380
  nodes.push(node);
377
381
  }
378
- const metadata = Object.fromEntries([...fields].filter(([key]) => key !== "nodes").map(([key, value]) => [key, (0, literals_1.literal)(value)]));
382
+ const clientMetadata = fields.get("clients");
383
+ const declaredClients = clientMetadata
384
+ ? Object.fromEntries((0, literals_1.properties)(clientMetadata).map(([key, expression]) => {
385
+ const values = new Map((0, literals_1.properties)(expression));
386
+ const handle = values.get("handle");
387
+ if (!handle)
388
+ return [key, plugin_sdk_1.NpmClientDefinition.parse((0, literals_1.literal)(expression))];
389
+ if (!ts.isPropertyAccessExpression(handle) || !ts.isIdentifier(handle.expression))
390
+ throw new Error("Client handles must use clients.name from octonode.nodes.ts");
391
+ const imported = imports.get(handle.expression.text);
392
+ if (imported?.name !== "clients" ||
393
+ (0, node_path_1.resolve)(root, ts.resolveModuleName(imported.module, entry, options, ts.sys).resolvedModule?.resolvedFileName ?? "") !== (0, node_path_1.resolve)(root, constants_1.NODES_FILENAME))
394
+ throw new Error("Import clients directly from octonode.nodes.ts");
395
+ const declaration = checker
396
+ .getTypeAtLocation(handle.expression)
397
+ .getProperty(handle.name.text)?.valueDeclaration;
398
+ if (!declaration || !ts.isPropertyAssignment(declaration))
399
+ throw new Error("Unknown generated client handle");
400
+ const overrides = Object.fromEntries([...values].filter(([name]) => name !== "handle").map(([name, value]) => [name, (0, literals_1.literal)(value)]));
401
+ if (Object.keys(overrides).some((name) => !["label", "fields"].includes(name)))
402
+ throw new Error("Client overrides support label and fields only");
403
+ return [
404
+ key,
405
+ plugin_sdk_1.NpmClientDefinition.parse({ ...plugin_sdk_1.NpmClientDefinition.parse((0, literals_1.literal)(declaration.initializer)), ...overrides }),
406
+ ];
407
+ }))
408
+ : {};
409
+ for (const node of nodes)
410
+ if (node.npm?.descriptor.client) {
411
+ const name = node.customization.client ?? node.exportName;
412
+ const original = plugin_sdk_1.NpmClientDefinition.parse(node.npm.descriptor.client);
413
+ const declared = declaredClients[name];
414
+ if (declared) {
415
+ const { label: _label, fields: _fields, ...identity } = declared;
416
+ if (JSON.stringify(identity) !== JSON.stringify(original))
417
+ throw new Error("Client definition must match the generated inventory");
418
+ }
419
+ else
420
+ declaredClients[name] = original;
421
+ }
422
+ const metadata = Object.fromEntries([...fields].filter(([key]) => key !== "nodes" && key !== "clients").map(([key, value]) => [key, (0, literals_1.literal)(value)]));
379
423
  if (kind === "project" && Object.keys(metadata).length)
380
424
  throw new Error("defineProject accepts only nodes");
381
425
  const { assets = [], library, ...pluginMetadata } = metadata;
426
+ if (Object.keys(declaredClients).length)
427
+ pluginMetadata.clients = declaredClients;
382
428
  const npm = nodes.find((node) => node.npm)?.npm;
383
429
  const npmOnly = nodes.length > 0 &&
384
430
  nodes.every((node) => node.npm && node.npm.packageName === npm?.packageName && node.npm.packageVersion === npm.packageVersion);
@@ -423,6 +469,11 @@ function compileDefinition(root, extraFiles = [], kind = "project") {
423
469
  npmDependencies: unique,
424
470
  };
425
471
  }
472
+ if (nodes.some((node) => node.npm?.descriptor.client)) {
473
+ const permissions = (pluginMetadata.permissions ?? []);
474
+ if (!permissions.some((permission) => permission.resource === "project_data"))
475
+ pluginMetadata.permissions = [...permissions, { resource: "project_data", access: "read" }];
476
+ }
426
477
  let libraryEntry;
427
478
  if (library !== undefined) {
428
479
  if (!library ||
@@ -475,7 +526,13 @@ function compileDefinition(root, extraFiles = [], kind = "project") {
475
526
  module: node.npm.descriptor.moduleSpecifier ?? node.npm.packageName,
476
527
  export: node.exportName,
477
528
  ...(node.npm.descriptor.methodPath ? { methodPath: node.npm.descriptor.methodPath } : {}),
529
+ ...(node.npm.descriptor.outputStreams
530
+ ? { outputStreams: node.npm.descriptor.outputStreams }
531
+ : {}),
478
532
  parameters: node.npm.descriptor.params.map((param) => param.name),
533
+ ...(node.npm.descriptor.params.some((param) => param.rest)
534
+ ? { rest: node.npm.descriptor.params.find((param) => param.rest).name }
535
+ : {}),
479
536
  }
480
537
  : { module: node.path, export: node.exportName, parameters: node.parameters },
481
538
  inputs: node.inputs,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/plugins/sdk/definitions/compiler/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/plugins/sdk/definitions/compiler/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuBA,8CAoiBC;AA3jBD,oHAAoH;AACpH,+CAAiC;AACjC,qCAAmD;AACnD,yCAAmE;AACnE,2DAA6F;AAC7F,2CAMqB;AACrB,yCAAiD;AACjD,uCAAsC;AAGtC,uCAAgD;AAEhD,yCAAqG;AAA5F,gHAAA,mBAAmB,OAAA;AAAE,4GAAA,eAAe,OAAA;AAAE,2GAAA,cAAc,OAAA;AAAE,6GAAA,gBAAgB,OAAA;AAC/E,qCAAgD;AAAvC,8GAAA,mBAAmB,OAAA;AAG5B,gGAAgG;AAChG,SAAgB,iBAAiB,CAC/B,IAAY,EACZ,aAAgC,EAAE,EAClC,OAA6B,SAAS;IAEtC,IAAI,GAAG,IAAA,sBAAY,EAAC,IAAI,CAAC,CAAC;IAC1B,MAAM,QAAQ,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,+BAAmB,CAAC,CAAC,CAAC,2BAAe,CAAC;IAC5E,MAAM,KAAK,GAAG,IAAA,mBAAO,EAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IACtC,MAAM,UAAU,GAAG,IAAA,oBAAU,EAAC,IAAA,mBAAO,EAAC,IAAI,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,IAAA,mBAAO,EAAC,IAAI,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC3G,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,UAAU,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IAC5F,IAAI,MAAM,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,EAAE,CAAC,4BAA4B,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC;IACnG,MAAM,MAAM,GAAG,EAAE,CAAC,0BAA0B,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC,CAAC,IAAA,mBAAO,EAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAC7G,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC;IAClF,IAAI,WAAW;QAAE,MAAM,IAAI,KAAK,CAAC,EAAE,CAAC,4BAA4B,CAAC,WAAW,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC;IACjG,MAAM,OAAO,GAAuB;QAClC,GAAG,MAAM,CAAC,OAAO;QACjB,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC,YAAY,CAAC,MAAM;QACvD,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM;QACrD,gBAAgB,EAAE,MAAM,CAAC,OAAO,CAAC,gBAAgB,IAAI,EAAE,CAAC,oBAAoB,CAAC,MAAM;QACnF,MAAM,EAAE,IAAI;QACZ,MAAM,EAAE,IAAI;QACZ,YAAY,EAAE,IAAI;QAClB,SAAS,EAAE,KAAK;QAChB,WAAW,EAAE,KAAK;QAClB,OAAO,EAAE,IAAI;KACd,CAAC;IACF,MAAM,KAAK,GAAG;QACZ,GAAG,IAAI,GAAG,CAAC;YACT,GAAG,MAAM,CAAC,SAAS;YACnB,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,mBAAO,EAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAChD,GAAG,CAAC,IAAA,oBAAU,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;SACtC,CAAC;KACH,CAAC;IACF,IAAI,CAAC,IAAA,oBAAU,EAAC,KAAK,CAAC,EAAE,CAAC;QACvB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,IAAI,GAAG,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACnC,IACE,CAAC,4BAAgB,CAAC,QAAQ,CAAC,IAAA,oBAAQ,EAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBAChD,IAAI;gBACJ,EAAE,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,8BAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAE5G,MAAM,IAAI,KAAK,CAAC,GAAG,IAAA,oBAAQ,EAAC,IAAI,EAAE,IAAI,CAAC,+DAA+D,CAAC,CAAC;QAC5G,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACjD,MAAM,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC,IAAA,mBAAO,EAAC,IAAI,EAAE,0BAAc,CAAC,CAAC,CAAC;IACrE,IAAI,OAAO;QAAE,IAAA,6BAAmB,EAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IACpD,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC;QAC5C,IAAI,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,gBAAgB,CAAC;YAAE,SAAS;QACjF,IACE,CAAC,4BAAgB,CAAC,QAAQ,CAAC,IAAA,oBAAQ,EAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;YACzD,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,8BAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAEjH,MAAM,IAAI,KAAK,CAAC,GAAG,IAAA,oBAAQ,EAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,+DAA+D,CAAC,CAAC;IACrH,CAAC;IACD,IAAI,IAAA,sBAAY,EAAC,KAAK,CAAC,KAAK,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,GAAG,+BAAmB,wBAAwB,CAAC,CAAC;IACnG,MAAM,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,KAAK,CAAE,CAAC;IAC7C,MAAM,OAAO,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IACzC,MAAM,GAAG,GAAG,IAAI,GAAG,EAAkB,CAAC;IACtC,MAAM,OAAO,GAAG,IAAI,GAAG,EAA4C,CAAC;IACpE,IAAI,UAA2C,CAAC;IAChD,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;QAC1C,IAAI,EAAE,CAAC,mBAAmB,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,eAAe,CAAC,SAAS,CAAC,eAAe,CAAC,EAAE,CAAC;YACvF,MAAM,MAAM,GAAG,SAAS,CAAC,eAAe,CAAC,IAAI,CAAC;YAC9C,MAAM,MAAM,GAAG,SAAS,CAAC,YAAY,CAAC;YACtC,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,UAAU;gBAAE,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;YACpG,IAAI,MAAM,CAAC,IAAI;gBAAE,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;YAC5E,IAAI,MAAM,CAAC,aAAa,EAAE,CAAC;gBACzB,IAAI,CAAC,EAAE,CAAC,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC;oBAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,QAAQ,EAAE,CAAC,CAAC;gBAClG,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;oBACjD,IAAI,IAAI,CAAC,UAAU;wBAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;oBAC7E,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC;oBACnD,IAAI,8BAAkB,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;wBACxC,IAAI,CAAC,CAAC,YAAY,EAAE,eAAe,EAAE,cAAc,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;4BACjE,MAAM,IAAI,KAAK,CAAC,8BAA8B,IAAI,EAAE,CAAC,CAAC;wBACxD,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;oBAChC,CAAC;;wBAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;gBACvD,CAAC;YACH,CAAC;QACH,CAAC;aAAM,IAAI,EAAE,CAAC,kBAAkB,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,cAAc,IAAI,CAAC,UAAU;YAAE,UAAU,GAAG,SAAS,CAAC;;YAE9G,MAAM,IAAI,KAAK,CAAC,GAAG,+BAAmB,yEAAyE,CAAC,CAAC;IACrH,CAAC;IACD,MAAM,IAAI,GAAG,UAAU,EAAE,UAAU,CAAC;IACpC,IAAI,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC;QACzG,MAAM,IAAI,KAAK,CAAC,kBAAkB,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,cAAc,gBAAgB,QAAQ,EAAE,CAAC,CAAC;IACrH,MAAM,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAC9C,IAAI,OAAO,KAAK,eAAe,IAAI,OAAO,KAAK,cAAc;QAC3D,MAAM,IAAI,KAAK,CAAC,0EAA0E,CAAC,CAAC;IAC9F,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,cAAc,CAAC;QACrE,MAAM,IAAI,KAAK,CACb,GAAG,QAAQ,wBAAwB,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,cAAc,uBAAuB,2BAAe,EAAE,CACjI,CAAC;IACJ,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,IAAA,qBAAU,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACtD,MAAM,eAAe,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC5C,IAAI,eAAe,IAAI,CAAC,EAAE,CAAC,wBAAwB,CAAC,eAAe,CAAC;QAClE,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;IACvE,MAAM,KAAK,GAAmB,EAAE,CAAC;IACjC,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAC;IACrC,KAAK,MAAM,IAAI,IAAI,eAAe,CAAC,CAAC,CAAE,eAA6C,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QAClG,IACE,CAAC,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC;YAC1B,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC;YACjC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,YAAY;YAC9C,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC;YACzB,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC;YAEzB,MAAM,IAAI,KAAK,CAAC,mEAAmE,CAAC,CAAC;QACvF,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QACjC,IACE,CAAC,CAAC,EAAE,CAAC,0BAA0B,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAC;YACjF,CAAC,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,UAAU,CAAC;YAEnC,MAAM,IAAI,KAAK,CAAC,yDAAyD,0BAAc,EAAE,CAAC,CAAC;QAC7F,MAAM,UAAU,GAAG,EAAE,CAAC,0BAA0B,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,kBAAkB,CAAC;QACnG,IACE,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;YACjE,CAAC,EAAE,CAAC,yBAAyB,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;YAEzE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACzD,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC1D,MAAM,WAAW,GACf,aAAa;YACb,EAAE,CAAC,iBAAiB,CAAC,aAAa,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,cAAc,EAAE,gBAAgB,CAAC;QACtG,IAAI,CAAC,WAAW,IAAI,IAAA,mBAAO,EAAC,WAAW,CAAC,KAAK,IAAA,mBAAO,EAAC,IAAI,EAAE,0BAAc,CAAC,IAAI,aAAa,EAAE,IAAI,KAAK,OAAO;YAC3G,MAAM,IAAI,KAAK,CAAC,gCAAgC,0BAAc,EAAE,CAAC,CAAC;QACpE,IAAI,IAAA,sBAAY,EAAC,WAAW,CAAC,KAAK,IAAA,mBAAO,EAAC,WAAW,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,GAAG,0BAAc,wBAAwB,CAAC,CAAC;QACnH,MAAM,QAAQ,GAAG,OAAO,CAAC,iBAAiB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,gBAAgB,CAAC;QAC7G,IAAI,CAAC,QAAQ,IAAI,CAAC,EAAE,CAAC,oBAAoB,CAAC,QAAQ,CAAC;YACjD,MAAM,IAAI,KAAK,CAAC,2BAA2B,UAAU,CAAC,IAAI,gBAAgB,0BAAc,EAAE,CAAC,CAAC;QAC9F,IAAI,EAAE,CAAC,gBAAgB,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;YAC9C,IAAI,IAAI,KAAK,QAAQ;gBAAE,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;YAC7G,MAAM,IAAI,GAAG,QAAQ,CAAC,WAAW,CAAC;YAClC,IAAI,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,KAAK,cAAc,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC/G,MAAM,QAAQ,GAAG;oBACf,IAAI,EAAE,UAAU;oBAChB,GAAI,IAAA,kBAAO,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAsC;iBAC9C,CAAC;gBACxB,MAAM,QAAQ,GAAG,uBAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;gBACvD,IACE,OAAO,QAAQ,CAAC,GAAG,KAAK,QAAQ;oBAChC,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;oBACpC,CAAC,QAAQ,CAAC,KAAK;oBACf,CAAC,QAAQ,CAAC,YAAY;oBAEtB,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;gBAC3E,IAAI,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC;oBAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC;gBACzF,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;gBAC7B,MAAM,aAAa,GAAG,uBAAU,CAAC,IAAI,CAAC;oBACpC,OAAO,EAAE,IAAI;oBACb,QAAQ,EAAE,IAAI;oBACd,MAAM,EAAE,IAAI;oBACZ,OAAO,EAAE,IAAI;oBACb,cAAc,EAAE,IAAI;iBACrB,CAAC;qBACC,OAAO,EAAE;qBACT,MAAM,EAAE;qBACR,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAA,kBAAO,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBAC9D,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,QAAQ,EAAE,GAAG,QAAQ,CAAC;gBAC5E,IAAI,aAAa,CAAC,QAAQ;oBAAE,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;gBACvF,KAAK,CAAC,IAAI,CAAC;oBACT,IAAI,EAAE,0BAAc;oBACpB,UAAU,EAAE,QAAQ,CAAC,GAAG;oBACxB,MAAM,EAAE,QAAQ,CAAC,EAAE;oBACnB,UAAU,EAAE,EAAE;oBACd,aAAa,EAAE,EAAE,GAAG,QAAQ,EAAE,GAAG,aAAa,EAAE;oBAChD,MAAM;oBACN,OAAO;oBACP,QAAQ;iBACT,CAAC,CAAC;gBACH,SAAS;YACX,CAAC;YACD,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC;gBACxG,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;YAChD,MAAM,GAAG,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,GAAI,IAAA,kBAAO,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAiC,EAAmB,CAAC;YAC7G,IAAI,CAAC,GAAG,CAAC,WAAW,IAAI,CAAC,GAAG,CAAC,cAAc,IAAI,CAAC,GAAG,CAAC,UAAU,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC;gBACrG,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;YACxE,MAAM,eAAe,GAAG,GAAG,CAAC,UAAU,CAAC,eAAe,IAAI,GAAG,CAAC,WAAW,CAAC;YAC1E,IACE,CAAC,eAAe,KAAK,GAAG,CAAC,WAAW,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,GAAG,GAAG,CAAC,WAAW,GAAG,CAAC,CAAC;gBAC3F,eAAe,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,IAAI,CAAC;gBACxE,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC;gBAE9B,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;YACpE,IACE,GAAG,CAAC,UAAU,CAAC,UAAU;gBACzB,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC;oBACxC,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC;oBACpC,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC;oBACpC,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAC5B,CAAC,OAAO,EAAE,EAAE,CACV,OAAO,OAAO,KAAK,QAAQ;wBAC3B,CAAC,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC;wBACnC,CAAC,WAAW,EAAE,WAAW,EAAE,aAAa,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAC9D,CAAC;gBAEJ,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;YACpD,MAAM,QAAQ,GAAG,GAAG,eAAe,IAAI,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,EAAE,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACzJ,IAAI,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC;gBAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,QAAQ,EAAE,CAAC,CAAC;YACtF,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACzB,MAAM,aAAa,GAAG,uBAAU,CAAC,IAAI,CAAC;gBACpC,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,IAAI;gBACd,MAAM,EAAE,IAAI;gBACZ,OAAO,EAAE,IAAI;gBACb,cAAc,EAAE,IAAI;aACrB,CAAC;iBACC,OAAO,EAAE;iBACT,MAAM,EAAE;iBACR,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAA,kBAAO,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAC9D,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC;YACjE,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,IACE,GAAG,CAAC,UAAU,CAAC,OAAO;oBACtB,GAAG,CAAC,UAAU,CAAC,UAAU;oBACzB,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;oBAE1E,MAAM,IAAI,KAAK,CAAC,wDAAwD,IAAI,EAAE,CAAC,CAAC;gBAClF,IAAI,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,IAAI,EAAE,EAAE,IAAI,CAAC;oBACnD,MAAM,IAAI,KAAK,CAAC,qDAAqD,IAAI,EAAE,CAAC,CAAC;YACjF,CAAC;YACD,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI;gBACvB,CAAC,CAAC;oBACE,GAAG,GAAG,CAAC,UAAU,CAAC,YAAY;oBAC9B,UAAU,EAAE,MAAM,CAAC,WAAW,CAC5B,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,YAAY,CAAC,UAAU,IAAI,EAAE,CAA4B,CAAC,CAAC,MAAM,CAC9F,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAC7B,CACF;oBACD,QAAQ,EAAG,CAAC,GAAG,CAAC,UAAU,CAAC,YAAY,CAAC,QAAQ,IAAI,EAAE,CAAc,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;oBACvG,oBAAoB,EAAE,KAAK;iBAC5B;gBACH,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,YAAY,CAAC;YAChC,KAAK,CAAC,IAAI,CAAC;gBACT,IAAI,EAAE,0BAAc;gBACpB,UAAU,EAAE,GAAG,CAAC,UAAU,CAAC,UAAU;gBACrC,MAAM,EAAE,GAAG,CAAC,UAAU,CAAC,EAAE;gBACzB,UAAU,EAAE,EAAE;gBACd,aAAa,EAAE;oBACb,WAAW,EAAE,GAAG,CAAC,UAAU,CAAC,WAAW;oBACvC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACvE,GAAG,aAAa;iBACjB;gBACD,MAAM;gBACN,OAAO,EAAE,GAAG,CAAC,UAAU,CAAC,aAAa;gBACrC,GAAG;aACJ,CAAC,CAAC;YACH,SAAS;QACX,CAAC;QACD,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,WAAW,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;QACjH,MAAM,SAAS,GAAG,QAAQ,CAAC,WAAW,CAAC;QACvC,MAAM,OAAO,GAAG,OAAO,CAAC,mBAAmB,CAAC,SAAS,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC;QAC1E,IAAI,CAAC,OAAO,IAAI,CAAC,EAAE,CAAC,iBAAiB,CAAC,OAAO,CAAC;YAC5C,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;QACvE,MAAM,iBAAiB,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC;QACvD,IAAI,CAAC,EAAE,CAAC,mBAAmB,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC,eAAe,CAAC,iBAAiB,CAAC,eAAe,CAAC;YACtG,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACnD,MAAM,QAAQ,GAAG;YACf,MAAM,EAAE,iBAAiB,CAAC,eAAe,CAAC,IAAI;YAC9C,IAAI,EAAE,CAAC,OAAO,CAAC,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI;SAClD,CAAC;QACF,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC;YAC/C,MAAM,IAAI,KAAK,CAAC,UAAU,SAAS,CAAC,IAAI,mCAAmC,CAAC,CAAC;QAC/E,MAAM,KAAK,GAAG,OAAO,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;QACrD,MAAM,MAAM,GAAG,KAAK,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACvG,MAAM,WAAW,GAAG,MAAM,EAAE,gBAAgB,CAAC;QAC7C,IAAI,CAAC,MAAM,IAAI,CAAC,WAAW;YAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;QAC1F,MAAM,IAAI,GAAG,IAAA,sBAAY,EAAC,WAAW,CAAC,aAAa,EAAE,CAAC,QAAQ,CAAC,CAAC;QAChE,MAAM,IAAI,GAAG,IAAA,oBAAQ,EAAC,IAAI,EAAE,IAAI,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QACxD,IACE,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;YACtB,IAAA,sBAAU,EAAC,IAAI,CAAC;YAChB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC;YACxC,WAAW,CAAC,aAAa,EAAE,CAAC,iBAAiB;YAC7C,IAAI,KAAK,+BAAmB;YAC5B,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC;YAExB,MAAM,IAAI,KAAK,CAAC,qEAAqE,IAAI,EAAE,CAAC,CAAC;QAC/F,MAAM,UAAU,GACd,CAAC,EAAE,CAAC,qBAAqB,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAAC;YAChF,WAAW,CAAC,IAAI;YAChB,EAAE,CAAC,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC;YAC/B,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI;YACvB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;QAClB,MAAM,QAAQ,GAAG,GAAG,IAAI,IAAI,UAAU,EAAE,CAAC;QACzC,IAAI,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,QAAQ,EAAE,CAAC,CAAC;QACtF,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACzB,MAAM,UAAU,GAAG,OAAO,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC,iBAAiB,EAAE,CAAC;QAC5E,IAAI,CAAC,UAAU,CAAC,MAAM,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;YAChH,MAAM,IAAI,KAAK,CAAC,QAAQ,SAAS,CAAC,IAAI,2CAA2C,CAAC,CAAC;QACrF,MAAM,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QAChC,MAAM,MAAM,GAAG,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAClE,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE;YAC1C,MAAM,WAAW,GAAG,SAAS,CAAC,gBAAgB,CAAC;YAC/C,IACE,CAAC,WAAW;gBACZ,CAAC,EAAE,CAAC,WAAW,CAAC,WAAW,CAAC;gBAC5B,CAAC,EAAE,CAAC,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC;gBAClC,WAAW,CAAC,cAAc;gBAE1B,MAAM,IAAI,KAAK,CACb,QAAQ,SAAS,CAAC,IAAI,8EAA8E,CACrG,CAAC;YACJ,OAAO,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC;QAC/B,CAAC,CAAC,CAAC;QACH,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAA,kBAAO,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACtE,MAAM,aAAa,GAAG,uBAAU,CAAC,IAAI,CAAC;YACpC,OAAO,EAAE,IAAI;YACb,QAAQ,EAAE,IAAI;YACd,MAAM,EAAE,IAAI;YACZ,OAAO,EAAE,IAAI;YACb,cAAc,EAAE,IAAI;SACrB,CAAC;aACC,OAAO,EAAE;aACT,MAAM,EAAE;aACR,KAAK,CAAC,SAAS,CAAC,CAAC;QACpB,IACE,IAAI,KAAK,SAAS;YAClB,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YAEnG,MAAM,IAAI,KAAK,CACb,qHAAqH,CACtH,CAAC;QACJ,MAAM,IAAI,GAAiB,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC;QAC9G,IAAI,aAAa,CAAC,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;QACvF,0FAA0F;QAC1F,MAAM,cAAc,GAAG,EAAE,CAAC,iBAAiB,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,cAAc,CAAC;QACpG,IAAI,CAAC,cAAc;YAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QAC1E,IAAI,IAAA,mBAAO,EAAC,cAAc,CAAC,gBAAgB,CAAC,KAAK,IAAI;YACnD,MAAM,IAAI,KAAK,CAAC,uFAAuF,CAAC,CAAC;QAC3G,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;YACtB,MAAM,QAAQ,GAAa,EAAE,CAAC;YAC9B,MAAM,eAAe,GAAG,MAAM,CAAC,WAAW,CACxC,MAAM,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE;gBAC9B,MAAM,WAAW,GAAG,SAAS,CAAC,gBAA2C,CAAC;gBAC1E,MAAM,IAAI,GAAG,OAAO,CAAC,yBAAyB,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;gBACvE,MAAM,QAAQ,GAAG,CAAC,CAAC,WAAW,CAAC,aAAa,IAAI,CAAC,CAAC,WAAW,CAAC,WAAW,CAAC;gBAC1E,IAAI,CAAC,QAAQ;oBAAE,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;gBAChD,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,IAAA,mBAAS,EAAC,OAAO,EAAE,IAAI,EAAE,IAAI,GAAG,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAC;YAC5E,CAAC,CAAC,CACH,CAAC;YACF,IAAI,CAAC,MAAM,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,eAAe,EAAE,QAAQ,EAAE,CAAC;YACxE,MAAM,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC,IAAI,SAAS,CAAC,aAAa,EAAE,CAAC;YAC9F,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,KAAK,GAAG,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,IAAA,mBAAS,EAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAClG,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IACD,MAAM,cAAc,GAAG,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC7C,MAAM,eAAe,GAAG,cAAc;QACpC,CAAC,CAAC,MAAM,CAAC,WAAW,CAChB,IAAA,qBAAU,EAAC,cAAc,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,UAAU,CAAC,EAAE,EAAE;YACnD,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,IAAA,qBAAU,EAAC,UAAU,CAAC,CAAC,CAAC;YAC/C,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACpC,IAAI,CAAC,MAAM;gBAAE,OAAO,CAAC,GAAG,EAAE,gCAAmB,CAAC,KAAK,CAAC,IAAA,kBAAO,EAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YAC1E,IAAI,CAAC,EAAE,CAAC,0BAA0B,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,UAAU,CAAC;gBAC/E,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;YACjF,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YACrD,IACE,QAAQ,EAAE,IAAI,KAAK,SAAS;gBAC5B,IAAA,mBAAO,EACL,IAAI,EACJ,EAAE,CAAC,iBAAiB,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,cAAc,EAAE,gBAAgB,IAAI,EAAE,CACrG,KAAK,IAAA,mBAAO,EAAC,IAAI,EAAE,0BAAc,CAAC;gBAEnC,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;YACpE,MAAM,WAAW,GAAG,OAAO;iBACxB,iBAAiB,CAAC,MAAM,CAAC,UAAU,CAAC;iBACpC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,gBAAgB,CAAC;YACnD,IAAI,CAAC,WAAW,IAAI,CAAC,EAAE,CAAC,oBAAoB,CAAC,WAAW,CAAC;gBAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;YAC9G,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,CAClC,CAAC,GAAG,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,IAAA,kBAAO,EAAC,KAAK,CAAC,CAAC,CAAC,CACjG,CAAC;YACF,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAC5E,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;YACpE,OAAO;gBACL,GAAG;gBACH,gCAAmB,CAAC,KAAK,CAAC,EAAE,GAAG,gCAAmB,CAAC,KAAK,CAAC,IAAA,kBAAO,EAAC,WAAW,CAAC,WAAW,CAAC,CAAC,EAAE,GAAG,SAAS,EAAE,CAAC;aAC5G,CAAC;QACJ,CAAC,CAAC,CACH;QACH,CAAC,CAAC,EAAE,CAAC;IACP,KAAK,MAAM,IAAI,IAAI,KAAK;QACtB,IAAI,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC;YAChC,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,CAAC;YAC1D,MAAM,QAAQ,GAAG,gCAAmB,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YACvE,MAAM,QAAQ,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;YACvC,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,QAAQ,EAAE,GAAG,QAAQ,CAAC;gBACjE,IAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;oBACvD,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;YAC5E,CAAC;;gBAAM,eAAe,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC;QAC1C,CAAC;IACH,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,CACjC,CAAC,GAAG,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,KAAK,OAAO,IAAI,GAAG,KAAK,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,IAAA,kBAAO,EAAC,KAAK,CAAC,CAAC,CAAC,CACjH,CAAC;IACF,IAAI,IAAI,KAAK,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;IAC5G,MAAM,EAAE,MAAM,GAAG,EAAE,EAAE,OAAO,EAAE,GAAG,cAAc,EAAE,GAAG,QAAQ,CAAC;IAC7D,IAAI,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,MAAM;QAAE,cAAc,CAAC,OAAO,GAAG,eAAe,CAAC;IAClF,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC;IAChD,MAAM,OAAO,GACX,KAAK,CAAC,MAAM,GAAG,CAAC;QAChB,KAAK,CAAC,KAAK,CACT,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,KAAK,GAAG,EAAE,WAAW,IAAI,IAAI,CAAC,GAAG,CAAC,cAAc,KAAK,GAAG,CAAC,cAAc,CAClH,CAAC;IACJ,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QACtB,MAAM,MAAM,GAAG,2BAAc,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QACpF,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,IAAI,MAAM,CAAC;YACtD,IACE,SAAS;gBACT,CAAC,SAAS,CAAC,IAAI,KAAK,KAAK;oBACvB,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,SAAS,CAAC,OAAO,KAAK,IAAI,CAAC,GAAG,CAAC,WAAW,IAAI,SAAS,CAAC,OAAO,KAAK,IAAI,CAAC,GAAG,CAAC,cAAc;oBAC1G,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;gBAEf,MAAM,IAAI,KAAK,CAAC,iEAAiE,CAAC,CAAC;YACrF,IAAI,CAAC,aAAa,GAAG;gBACnB,GAAG,IAAI,CAAC,aAAa;gBACrB,MAAM,EAAE,IAAI,CAAC,GAAG;oBACd,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE;oBAClF,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE;aACvB,CAAC;QACJ,CAAC;QACD,cAAc,CAAC,MAAM;YACnB,MAAM;gBACN,CAAC,OAAO,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,CAAC,WAAW,EAAE,OAAO,EAAE,GAAG,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;IACnH,CAAC;IACD,IAAI,GAAG,EAAE,CAAC;QACR,MAAM,WAAW,GACf,cAAc,CAAC,WAAW,IAAI,OAAO,cAAc,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;QACjH,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAC1C,IAAI,CAAC,GAAG;YACN,CAAC,CAAC;gBACE;oBACE,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,WAAW;oBAC7B,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,cAAc;oBAChC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,WAAW,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,IAAI,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE;iBACnF;aACF;YACH,CAAC,CAAC,EAAE,CACP,CAAC;QACF,MAAM,MAAM,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;QACzG,IACE,YAAY,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE,CAC/B,MAAM,CAAC,IAAI,CACT,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,CAAC,OAAO,KAAK,UAAU,CAAC,OAAO;YACpC,CAAC,KAAK,CAAC,OAAO,KAAK,UAAU,CAAC,OAAO,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC,IAAI,CAAC,CAC3E,CACF;YAED,MAAM,IAAI,KAAK,CAAC,yEAAyE,CAAC,CAAC;QAC7F,cAAc,CAAC,WAAW,GAAG;YAC3B,GAAG,WAAW;YACd,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC;YACvE,eAAe,EAAE,MAAM;SACxB,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QACtD,MAAM,WAAW,GAAG,CAAC,cAAc,CAAC,WAAW,IAAI,EAAE,CAAgD,CAAC;QACtG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,QAAQ,KAAK,cAAc,CAAC;YAC3E,cAAc,CAAC,WAAW,GAAG,CAAC,GAAG,WAAW,EAAE,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IAChG,CAAC;IACD,IAAI,YAA2C,CAAC;IAChD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,IACE,CAAC,OAAO;YACR,OAAO,OAAO,KAAK,QAAQ;YAC3B,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;YACtB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,OAAO;YACvC,OAAQ,OAA+B,CAAC,KAAK,KAAK,QAAQ;YAE1D,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;QACjE,MAAM,IAAI,GAAI,OAA6B,CAAC,KAAK,CAAC;QAClD,IACE,CAAC,6BAA6B,CAAC,IAAI,CAAC,IAAI,CAAC;YACzC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;YACpB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,cAAc,CAAC;YAEjF,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;QAC/E,MAAM,QAAQ,GAAG,IAAA,mBAAO,EAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACrC,IAAI,IAAA,sBAAY,EAAC,QAAQ,CAAC,KAAK,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;QACpG,MAAM,cAAc,GAAG,EAAE,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,CAAC;QAC7D,MAAM,cAAc,GAAG,cAAc,CAAC,cAAc,EAAE,CAAC;QACvD,MAAM,MAAM,GAAG,cAAc,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QACtD,MAAM,MAAM,GAAG,MAAM,IAAI,cAAc,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;QACpE,MAAM,OAAO,GAAG,MAAM;YACpB,CAAC,CAAC,cAAc;iBACX,kBAAkB,CAAC,MAAM,CAAC;iBAC1B,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;gBACf,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,cAAc,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;gBAC/F,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;YAChD,CAAC,CAAC;iBACD,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;iBACxB,IAAI,EAAE;YACX,CAAC,CAAC,EAAE,CAAC;QACP,IAAI,CAAC,OAAO,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;QACtF,IAAI,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,uFAAuF,CAAC,CAAC;QAC3G,cAAc,CAAC,OAAO,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,kBAAkB,EAAE,KAAK,EAAE,oBAAoB,EAAE,OAAO,EAAE,CAAC;QACxG,YAAY,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IACjC,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC;QAC7E,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;IACvD,MAAM,QAAQ,GACZ,IAAI,KAAK,QAAQ;QACf,CAAC,CAAC,2BAAc,CAAC,KAAK,CAClB,2BAAc,CAAC,SAAS,EAAE;aACvB,MAAM,EAAE;aACR,KAAK,CAAC;YACL,GAAG,cAAc;YACjB,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBAC1B,EAAE,EAAE,IAAI,CAAC,aAAa,CAAC,EAAE,IAAI,IAAI,CAAC,MAAM;gBACxC,GAAG,IAAI,CAAC,aAAa;gBACrB,cAAc,EAAE,IAAI,CAAC,GAAG;oBACtB,CAAC,CAAC;wBACE,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,eAAe,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW;wBACnE,MAAM,EAAE,IAAI,CAAC,UAAU;wBACvB,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBACzF,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,aAAa;4BACnC,CAAC,CAAC,EAAE,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,aAAa,EAAE;4BACtD,CAAC,CAAC,EAAE,CAAC;wBACP,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC;wBACjE,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC;4BACxD,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAE,CAAC,IAAI,EAAE;4BACxE,CAAC,CAAC,EAAE,CAAC;qBACR;oBACH,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE;gBAC/E,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,QAAQ,EAAE,YAAY;gBACtB,OAAO,EAAE,QAAQ,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,qCAAqC,CAAC,CAAC,CAAC,EAAE,iBAAiB,IAAI,CAAC,aAAa,CAAC,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE;aAC9H,CAAC,CAAC;SACJ,CAAC,CACL;QACH,CAAC,CAAC,SAAS,CAAC;IAChB,MAAM,WAAW,GAAG,EAAE;SACnB,qBAAqB,CAAC,OAAO,CAAC;SAC9B,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,QAAQ,KAAK,EAAE,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;IAC/E,IAAI,WAAW,CAAC,MAAM;QACpB,MAAM,IAAI,KAAK,CACb,EAAE,CAAC,iBAAiB,CAAC,WAAW,EAAE;YAChC,oBAAoB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI;YACpC,mBAAmB,EAAE,GAAG,EAAE,CAAC,IAAI;YAC/B,UAAU,EAAE,GAAG,EAAE,CAAC,IAAI;SACvB,CAAC,CACH,CAAC;IACJ,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAkB,EAAE,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;AACnH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"js.d.ts","sourceRoot":"","sources":["../../../../../../src/plugins/sdk/definitions/npm/emit/js.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAqB,MAAM,UAAU,CAAC;AAqMrE,wFAAwF;AACxF,wBAAgB,cAAc,CAAC,IAAI,EAAE,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAK9E"}
1
+ {"version":3,"file":"js.d.ts","sourceRoot":"","sources":["../../../../../../src/plugins/sdk/definitions/npm/emit/js.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAqB,MAAM,UAAU,CAAC;AAyMrE,wFAAwF;AACxF,wBAAgB,cAAc,CAAC,IAAI,EAAE,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAK9E"}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.emitNpmJsFiles = emitNpmJsFiles;
4
+ const output_1 = require("../../clients/output");
4
5
  /** Render the single IPC adapter used by every node extracted from a package. */
5
6
  function runner(plan) {
6
7
  const descriptors = Object.fromEntries(plan.nodes.map((node) => [node.id, node]));
@@ -39,6 +40,7 @@ function toJson(value) {
39
40
  throw new NodeError("npm export returned a value that is not JSON-serializable", "VALIDATION_ERROR");
40
41
  }
41
42
  }
43
+ ${plan.nodes.some((node) => node.outputStreams?.length) ? (0, output_1.clientOutputSource)("javascript") : ""}
42
44
  const NODES = ${JSON.stringify(descriptors, null, 2)};
43
45
  const node = NODES[process.argv[2]];
44
46
  if (require.main === module && !node) throw new Error('unknown generated npm node "' + process.argv[2] + '"');
@@ -169,7 +171,7 @@ function nodeBody(node) {
169
171
  const argsLines = node.permissive
170
172
  ? ` const args = Array.isArray(inputs.args) ? inputs.args : [];`
171
173
  : ` const args = ${JSON.stringify(positional)}.map((n) => Object.hasOwn(bound, n) ? bound[n] : inputs[n]);
172
- while (args.length && args[args.length - 1] === undefined) args.pop();${rest
174
+ ${rest ? `if (!inputs[${JSON.stringify(rest.name)}]?.length) ` : ""}while (args.length && args[args.length - 1] === undefined) args.pop();${rest
173
175
  ? `
174
176
  if (Array.isArray(inputs[${JSON.stringify(rest.name)}])) args.push(...inputs[${JSON.stringify(rest.name)}]);`
175
177
  : ""}`;
@@ -177,7 +179,8 @@ function nodeBody(node) {
177
179
  let fn = resolveExport(pkg, ${JSON.stringify(node.exportName)});
178
180
  if (node.methodPath) {
179
181
  if (typeof fn !== "function") throw new NodeError("SDK client factory is unavailable", "VALIDATION_ERROR");
180
- receiver = await fn();
182
+ if (node.client?.parameters.some(parameter => parameter.required)) throw new NodeError("Configure or attach a client in the node form before running", "VALIDATION_ERROR");
183
+ receiver = node.client?.construction === "new" ? new fn() : await fn();
181
184
  for (const segment of node.methodPath.slice(0, -1)) {
182
185
  receiver = receiver && receiver[segment];
183
186
  if (receiver == null) throw new NodeError("SDK client method is unavailable", "VALIDATION_ERROR");
@@ -188,7 +191,8 @@ function nodeBody(node) {
188
191
  throw new NodeError('export ${node.exportName} is not a function', "VALIDATION_ERROR");
189
192
  }
190
193
  ${argsLines}
191
- return { result: toJson(await (node.methodPath ? fn.apply(receiver, args) : fn(...args))), dryRun: false };`;
194
+ const result = await (node.methodPath ? fn.apply(receiver, args) : fn(...args));
195
+ return { result: toJson(${node.outputStreams?.length ? `await __collectClientOutput(result, ${JSON.stringify(node.outputStreams)})` : "result"}), dryRun: false };`;
192
196
  }
193
197
  /** Render every generated file for the plugin (paths relative to the plugin folder). */
194
198
  function emitNpmJsFiles(plan) {
@@ -1 +1 @@
1
- {"version":3,"file":"js.js","sourceRoot":"","sources":["../../../../../../src/plugins/sdk/definitions/npm/emit/js.ts"],"names":[],"mappings":";;AAwMA,wCAKC;AAzMD,iFAAiF;AACjF,SAAS,MAAM,CAAC,IAAuB;IACrC,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IAClF,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,YAAY,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtH,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gBAkCO,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;;;;;;;;;;;;;;;;qCAgBf,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sDAoDf,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC;;EAEpF,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwCN,CAAC;AACF,CAAC;AAED,SAAS,QAAQ,CAAC,IAAuB;IACvC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,OAAO;;;;;;;;;mEASwD,CAAC;IAClE,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACzE,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAC7C,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU;QAC/B,CAAC,CAAC,+DAA+D;QACjE,CAAC,CAAC,kBAAkB,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;0EAE9C,IAAI;YACF,CAAC,CAAC;6BACqB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,2BAA2B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK;YACzG,CAAC,CAAC,EACN,EAAE,CAAC;IAEH,OAAO;gCACuB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC;;;;;;;;;;;kCAW7B,IAAI,CAAC,UAAU;;EAE/C,SAAS;8GACmG,CAAC;AAC/G,CAAC;AAED,wFAAwF;AACxF,SAAgB,cAAc,CAAC,IAAuB;IACpD,OAAO;QACL,eAAe,EAAE,MAAM,CAAC,IAAI,CAAC;QAC7B,uBAAuB,EAAE,sFAAsF;KAChH,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"js.js","sourceRoot":"","sources":["../../../../../../src/plugins/sdk/definitions/npm/emit/js.ts"],"names":[],"mappings":";;AA4MA,wCAKC;AA9MD,iDAA0D;AAE1D,iFAAiF;AACjF,SAAS,MAAM,CAAC,IAAuB;IACrC,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IAClF,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,YAAY,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtH,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkCP,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,IAAA,2BAAkB,EAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE;gBAC/E,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;;;;;;;;;;;;;;;;qCAgBf,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sDAoDf,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC;;EAEpF,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwCN,CAAC;AACF,CAAC;AAED,SAAS,QAAQ,CAAC,IAAuB;IACvC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,OAAO;;;;;;;;;mEASwD,CAAC;IAClE,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACzE,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAC7C,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU;QAC/B,CAAC,CAAC,+DAA+D;QACjE,CAAC,CAAC,kBAAkB,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;IAC9C,IAAI,CAAC,CAAC,CAAC,eAAe,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,yEACjE,IAAI;YACF,CAAC,CAAC;6BACqB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,2BAA2B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK;YACzG,CAAC,CAAC,EACN,EAAE,CAAC;IAEH,OAAO;gCACuB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC;;;;;;;;;;;;kCAY7B,IAAI,CAAC,UAAU;;EAE/C,SAAS;;4BAEiB,IAAI,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC,uCAAuC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,qBAAqB,CAAC;AACtK,CAAC;AAED,wFAAwF;AACxF,SAAgB,cAAc,CAAC,IAAuB;IACpD,OAAO;QACL,eAAe,EAAE,MAAM,CAAC,IAAI,CAAC;QAC7B,uBAAuB,EAAE,sFAAsF;KAChH,CAAC;AACJ,CAAC"}
@@ -1,4 +1,5 @@
1
- import type { NpmClientBinding } from "../../../schema/plugin-sdk";
1
+ import type { NpmClientBinding, NpmClientDefinition, NpmSdkExport } from "../../../schema/plugin-sdk";
2
+ import type ts from "typescript";
2
3
  export interface NpmPackageMeta {
3
4
  /** Real npm package name (e.g. "@scope/pkg"). */
4
5
  name: string;
@@ -7,7 +8,11 @@ export interface NpmPackageMeta {
7
8
  /** Resolved, pinned version. */
8
9
  version: string;
9
10
  description?: string;
10
- /** Entry type-declaration file, or null when the package ships no types. */
11
+ author?: string;
12
+ license?: string;
13
+ homepage?: string;
14
+ repository?: string;
15
+ /** Entry declaration or explicitly requested JavaScript source for static SDK inspection. */
11
16
  dtsPath: string | null;
12
17
  /** Fallback export names discovered at runtime when dtsPath is null. */
13
18
  runtimeExports?: string[];
@@ -23,8 +28,11 @@ export interface NpmParam {
23
28
  export interface NpmNodeDescriptor {
24
29
  id: string;
25
30
  moduleSpecifier?: string;
26
- /** Static properties on a zero-argument factory result, ending at the method to invoke. */
31
+ /** Static properties on a constructor/factory result, ending at the method to invoke. */
27
32
  methodPath?: string[];
33
+ client?: NpmClientDefinition;
34
+ /** Async iterable output locations collected into bounded JSON arrays. */
35
+ outputStreams?: string[][];
28
36
  bindings?: Record<string, NpmClientBinding>;
29
37
  /** Export name on the package; "default" for the default export; "" for the generic call node. */
30
38
  exportName: string;
@@ -38,6 +46,13 @@ export interface NpmNodeDescriptor {
38
46
  /** True when params are unknown (untyped fallback): inputs are `{ args: any[] }`. */
39
47
  permissive?: boolean;
40
48
  }
49
+ export interface NpmOutputStreams {
50
+ paths: string[][];
51
+ path: string[];
52
+ }
53
+ export interface NpmSchemaBudget {
54
+ remaining: number;
55
+ }
41
56
  export interface CompiledNpmPlugin {
42
57
  /** A valid octonode.plugin.json object. */
43
58
  manifest: Record<string, unknown>;
@@ -46,6 +61,8 @@ export interface CompiledNpmPlugin {
46
61
  packageVersion: string;
47
62
  nodes: NpmNodeDescriptor[];
48
63
  warnings: string[];
64
+ clients?: Record<string, NpmClientDefinition>;
65
+ sdkExports?: NpmSdkExport[];
49
66
  }
50
67
  export interface NpmGenerateOptions {
51
68
  cacheRoot?: string;
@@ -58,8 +75,27 @@ export interface NpmGenerateOptions {
58
75
  description?: string;
59
76
  version?: string;
60
77
  include?: string[];
78
+ /** Discover public typed client methods without executing upstream code. */
79
+ discoverClients?: boolean;
80
+ /** Zero-based overload per exported function or client constructor/factory name. */
81
+ overloads?: Record<string, number>;
61
82
  exclude?: string[];
62
83
  dir?: string;
63
84
  force?: boolean;
64
85
  }
86
+ /** An exported symbol paired with the name it should be exposed under. */
87
+ export interface ModuleExport {
88
+ symbol: ts.Symbol;
89
+ name: string;
90
+ }
91
+ export interface NpmGenerateResult {
92
+ dir: string;
93
+ files: string[];
94
+ warnings: string[];
95
+ nodeCount: number;
96
+ }
97
+ export interface LoadedNpmPackage extends NpmPackageMeta {
98
+ /** Temp dir holding the installed package tree. Caller must rmSync it. */
99
+ tmpDir: string;
100
+ }
65
101
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/plugins/sdk/definitions/npm/types.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAEnE,MAAM,WAAW,cAAc;IAC7B,iDAAiD;IACjD,IAAI,EAAE,MAAM,CAAC;IACb,mEAAmE;IACnE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gCAAgC;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,4EAA4E;IAC5E,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,wEAAwE;IACxE,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,4EAA4E;IAC5E,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,2FAA2F;IAC3F,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAC5C,kGAAkG;IAClG,UAAU,EAAE,MAAM,CAAC;IACnB,sGAAsG;IACtG,MAAM,EAAE,QAAQ,EAAE,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACvC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,qDAAqD;IACrD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,qFAAqF;IACrF,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,2CAA2C;IAC3C,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,EAAE,iBAAiB,EAAE,CAAC;IAC3B,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oFAAoF;IACpF,GAAG,EAAE,MAAM,CAAC;IACZ,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/plugins/sdk/definitions/npm/types.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import type { PluginManifestInput, PluginNode } from "../../schema/plugin-sdk";
2
- export type NodeCustomization = Partial<Pick<PluginNode, "id" | "label" | "symbol" | "icon" | "description" | "defaults" | "connections" | "env" | "trigger" | "ui" | "bindings" | "source" | "libraryExport">>;
1
+ import type { PluginManifestInput, PluginNode, NpmClientDefinition } from "../../schema/plugin-sdk";
2
+ export type NodeCustomization = Partial<Pick<PluginNode, "id" | "label" | "symbol" | "icon" | "description" | "defaults" | "connections" | "env" | "trigger" | "ui" | "bindings" | "client" | "source" | "libraryExport">>;
3
3
  export interface NodeReference {
4
4
  readonly implementation: ((...args: never[]) => unknown) | NpmNodeHandle | WorkflowNodeHandle;
5
5
  readonly customization: NodeCustomization;
@@ -14,6 +14,8 @@ export interface NpmNodeHandle {
14
14
  exportName: string;
15
15
  moduleSpecifier?: string;
16
16
  methodPath?: string[];
17
+ client?: NpmClientDefinition;
18
+ outputStreams?: string[][];
17
19
  params: {
18
20
  name: string;
19
21
  required: boolean;
@@ -37,7 +39,12 @@ export interface WorkflowNodeHandle {
37
39
  export interface ProjectDefinition {
38
40
  readonly nodes?: readonly NodeReference[];
39
41
  }
40
- export type PluginDefinition = Omit<PluginManifestInput, "nodes" | "library"> & {
42
+ export type PluginDefinition = Omit<PluginManifestInput, "nodes" | "library" | "clients"> & {
43
+ readonly clients?: Readonly<Record<string, NpmClientDefinition | {
44
+ handle: NpmClientDefinition;
45
+ label?: string;
46
+ fields?: NpmClientDefinition["fields"];
47
+ }>>;
41
48
  readonly nodes: readonly NodeReference[];
42
49
  readonly assets?: readonly string[];
43
50
  readonly library?: {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/plugins/sdk/definitions/types.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAE/E,MAAM,MAAM,iBAAiB,GAAG,OAAO,CACrC,IAAI,CACF,UAAU,EACR,IAAI,GACJ,OAAO,GACP,QAAQ,GACR,MAAM,GACN,aAAa,GACb,UAAU,GACV,aAAa,GACb,KAAK,GACL,SAAS,GACT,IAAI,GACJ,UAAU,GACV,QAAQ,GACR,eAAe,CAClB,CACF,CAAC;AAEF,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,cAAc,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,OAAO,CAAC,GAAG,aAAa,GAAG,kBAAkB,CAAC;IAC9F,QAAQ,CAAC,aAAa,EAAE,iBAAiB,CAAC;CAC3C;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC;IACrB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,UAAU,EAAE;QACnB,EAAE,EAAE,MAAM,CAAC;QACX,UAAU,EAAE,MAAM,CAAC;QACnB,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;QACtB,MAAM,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,OAAO,CAAC;YAAC,IAAI,EAAE,OAAO,CAAC;YAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;SAAE,EAAE,CAAC;QAC9F,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACtC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACvC,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,UAAU,CAAC,EAAE,OAAO,CAAC;KACtB,CAAC;CACH;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAChC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC/C;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,aAAa,EAAE,CAAC;CAC3C;AAED,MAAM,MAAM,gBAAgB,GAAG,IAAI,CAAC,mBAAmB,EAAE,OAAO,GAAG,SAAS,CAAC,GAAG;IAC9E,QAAQ,CAAC,KAAK,EAAE,SAAS,aAAa,EAAE,CAAC;IACzC,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,QAAQ,CAAC,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CAC/C,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/plugins/sdk/definitions/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import type { JsonSchema, ValidationError } from "../types";
2
+ /**
3
+ * A deliberately tiny JSON Schema validator covering the common subset Octonode
4
+ * nodes use to describe their I/O, including positional tuple items and bounds.
5
+ * It is intentionally NOT a full JSON Schema implementation — the
6
+ * point is that every language SDK can carry an equivalent ~80-line validator
7
+ * with zero dependencies, so the contract is enforced identically everywhere.
8
+ *
9
+ * Unknown/unsupported keywords are ignored (treated as "no constraint"), so a
10
+ * richer schema still validates its supported parts rather than failing hard.
11
+ */
12
+ export declare function validate(schema: JsonSchema | undefined, data: unknown): ValidationError[];
13
+ //# sourceMappingURL=schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../../src/plugins/sdk/json/schema.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAE5D;;;;;;;;;GASG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE,UAAU,GAAG,SAAS,EAAE,IAAI,EAAE,OAAO,GAAG,eAAe,EAAE,CAKzF"}
@@ -0,0 +1,113 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.validate = validate;
4
+ /**
5
+ * A deliberately tiny JSON Schema validator covering the common subset Octonode
6
+ * nodes use to describe their I/O, including positional tuple items and bounds.
7
+ * It is intentionally NOT a full JSON Schema implementation — the
8
+ * point is that every language SDK can carry an equivalent ~80-line validator
9
+ * with zero dependencies, so the contract is enforced identically everywhere.
10
+ *
11
+ * Unknown/unsupported keywords are ignored (treated as "no constraint"), so a
12
+ * richer schema still validates its supported parts rather than failing hard.
13
+ */
14
+ function validate(schema, data) {
15
+ if (!schema)
16
+ return [];
17
+ const errors = [];
18
+ walk(schema, data, "$", errors);
19
+ return errors;
20
+ }
21
+ function walk(schema, data, path, errors) {
22
+ if (Array.isArray(schema.anyOf) &&
23
+ !schema.anyOf.some((branch) => isPlainObject(branch) && validate(branch, data).length === 0)) {
24
+ errors.push({ path, message: "value does not match any allowed shape" });
25
+ return;
26
+ }
27
+ const allowed = normalizeTypes(schema.type);
28
+ if (allowed.length > 0 && !allowed.some((t) => matchesType(t, data))) {
29
+ errors.push({ path, message: `expected type ${allowed.join("|")}, got ${jsonType(data)}` });
30
+ return; // type is wrong; nested checks would be noise
31
+ }
32
+ if (Array.isArray(schema.enum) && !schema.enum.some((v) => deepEqual(v, data))) {
33
+ errors.push({ path, message: `value is not one of the allowed enum values` });
34
+ }
35
+ if (isPlainObject(data)) {
36
+ const required = Array.isArray(schema.required) ? schema.required : [];
37
+ for (const key of required) {
38
+ if (!(key in data))
39
+ errors.push({ path: `${path}.${key}`, message: `missing required property` });
40
+ }
41
+ const props = isPlainObject(schema.properties) ? schema.properties : undefined;
42
+ if (props) {
43
+ for (const [key, sub] of Object.entries(props)) {
44
+ if (key in data && isPlainObject(sub)) {
45
+ walk(sub, data[key], `${path}.${key}`, errors);
46
+ }
47
+ }
48
+ }
49
+ for (const [key, value] of Object.entries(data)) {
50
+ if (props && Object.hasOwn(props, key))
51
+ continue;
52
+ if (schema.additionalProperties === false)
53
+ errors.push({ path: `${path}.${key}`, message: "unexpected property" });
54
+ else if (isPlainObject(schema.additionalProperties))
55
+ walk(schema.additionalProperties, value, `${path}.${key}`, errors);
56
+ }
57
+ }
58
+ if (Array.isArray(data)) {
59
+ if (typeof schema.minItems === "number" && data.length < schema.minItems)
60
+ errors.push({ path, message: `expected at least ${schema.minItems} items` });
61
+ if (typeof schema.maxItems === "number" && data.length > schema.maxItems)
62
+ errors.push({ path, message: `expected at most ${schema.maxItems} items` });
63
+ const prefix = Array.isArray(schema.prefixItems) ? schema.prefixItems : [];
64
+ data.forEach((item, i) => {
65
+ const itemSchema = i < prefix.length ? prefix[i] : schema.items;
66
+ if (itemSchema === false)
67
+ errors.push({ path: `${path}[${i}]`, message: "unexpected item" });
68
+ else if (isPlainObject(itemSchema))
69
+ walk(itemSchema, item, `${path}[${i}]`, errors);
70
+ });
71
+ }
72
+ }
73
+ function normalizeTypes(type) {
74
+ if (typeof type === "string")
75
+ return [type];
76
+ if (Array.isArray(type))
77
+ return type.filter((t) => typeof t === "string");
78
+ return [];
79
+ }
80
+ function matchesType(type, data) {
81
+ switch (type) {
82
+ case "object":
83
+ return isPlainObject(data);
84
+ case "array":
85
+ return Array.isArray(data);
86
+ case "string":
87
+ return typeof data === "string";
88
+ case "number":
89
+ return typeof data === "number" && Number.isFinite(data);
90
+ case "integer":
91
+ return typeof data === "number" && Number.isInteger(data);
92
+ case "boolean":
93
+ return typeof data === "boolean";
94
+ case "null":
95
+ return data === null;
96
+ default:
97
+ return true; // unknown declared type → don't constrain
98
+ }
99
+ }
100
+ function jsonType(data) {
101
+ if (data === null)
102
+ return "null";
103
+ if (Array.isArray(data))
104
+ return "array";
105
+ return typeof data;
106
+ }
107
+ function isPlainObject(v) {
108
+ return typeof v === "object" && v !== null && !Array.isArray(v);
109
+ }
110
+ function deepEqual(a, b) {
111
+ return JSON.stringify(a) === JSON.stringify(b);
112
+ }
113
+ //# sourceMappingURL=schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../src/plugins/sdk/json/schema.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,11 @@ function validate(schema, data) {
9
9
  return errors;
10
10
  }
11
11
  function walk(schema, data, path, errors) {
12
+ if (Array.isArray(schema.anyOf) &&
13
+ !schema.anyOf.some((branch) => isPlainObject(branch) && validate(branch, data).length === 0)) {
14
+ errors.push({ path, message: "value does not match any allowed shape" });
15
+ return;
16
+ }
12
17
  const allowed = normalizeTypes(schema.type);
13
18
  if (allowed.length > 0 && !allowed.some((t) => matchesType(t, data))) {
14
19
  errors.push({ path, message: `expected type ${allowed.join("|")}, got ${jsonType(data)}` });
@@ -31,6 +36,14 @@ function walk(schema, data, path, errors) {
31
36
  }
32
37
  }
33
38
  }
39
+ for (const [key, value] of Object.entries(data)) {
40
+ if (props && Object.hasOwn(props, key))
41
+ continue;
42
+ if (schema.additionalProperties === false)
43
+ errors.push({ path: `${path}.${key}`, message: "unexpected property" });
44
+ else if (isPlainObject(schema.additionalProperties))
45
+ walk(schema.additionalProperties, value, `${path}.${key}`, errors);
46
+ }
34
47
  }
35
48
  if (Array.isArray(data) && isPlainObject(schema.items)) {
36
49
  data.forEach((item, i) => walk(schema.items, item, `${path}[${i}]`, errors));
@@ -1 +1 @@
1
- {"version":3,"file":"json-schema.js","sourceRoot":"","sources":["../../../src/plugins/sdk/json-schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"json-schema.js","sourceRoot":"","sources":["../../../src/plugins/sdk/json-schema.ts"],"names":[],"mappings":";;AAkBA,4BAKC;AALD,SAAgB,QAAQ,CAAC,MAA8B,EAAE,IAAa;IACpE,IAAI,CAAC,MAAM;QAAE,OAAO,EAAE,CAAC;IACvB,MAAM,MAAM,GAAsB,EAAE,CAAC;IACrC,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;IAChC,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,IAAI,CAAC,MAAkB,EAAE,IAAa,EAAE,IAAY,EAAE,MAAyB;IACtF,IACE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;QAC3B,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,EAC5F,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,wCAAwC,EAAE,CAAC,CAAC;QACzE,OAAO;IACT,CAAC;IACD,MAAM,OAAO,GAAG,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC5C,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC;QACrE,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,iBAAiB,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QAC5F,OAAO,CAAC,8CAA8C;IACxD,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC;QAC/E,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,6CAA6C,EAAE,CAAC,CAAC;IAChF,CAAC;IAED,IAAI,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;QACxB,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAE,MAAM,CAAC,QAAqB,CAAC,CAAC,CAAC,EAAE,CAAC;QACrF,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;YAC3B,IAAI,CAAC,CAAC,GAAG,IAAI,IAAI,CAAC;gBAAE,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,IAAI,IAAI,GAAG,EAAE,EAAE,OAAO,EAAE,2BAA2B,EAAE,CAAC,CAAC;QACpG,CAAC;QACD,MAAM,KAAK,GAAG,aAAa,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;QAC/E,IAAI,KAAK,EAAE,CAAC;YACV,KAAK,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC/C,IAAI,GAAG,IAAI,IAAI,IAAI,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC;oBACtC,IAAI,CAAC,GAAiB,EAAG,IAAgC,CAAC,GAAG,CAAC,EAAE,GAAG,IAAI,IAAI,GAAG,EAAE,EAAE,MAAM,CAAC,CAAC;gBAC5F,CAAC;YACH,CAAC;QACH,CAAC;QACD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YAChD,IAAI,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC;gBAAE,SAAS;YACjD,IAAI,MAAM,CAAC,oBAAoB,KAAK,KAAK;gBACvC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,IAAI,IAAI,GAAG,EAAE,EAAE,OAAO,EAAE,qBAAqB,EAAE,CAAC,CAAC;iBACrE,IAAI,aAAa,CAAC,MAAM,CAAC,oBAAoB,CAAC;gBACjD,IAAI,CAAC,MAAM,CAAC,oBAAoB,EAAE,KAAK,EAAE,GAAG,IAAI,IAAI,GAAG,EAAE,EAAE,MAAM,CAAC,CAAC;QACvE,CAAC;IACH,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;QACvD,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAmB,EAAE,IAAI,EAAE,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC;IAC7F,CAAC;AACH,CAAC;AAED,SAAS,cAAc,CAAC,IAAa;IACnC,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC;IACvF,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,WAAW,CAAC,IAAY,EAAE,IAAa;IAC9C,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,QAAQ;YACX,OAAO,aAAa,CAAC,IAAI,CAAC,CAAC;QAC7B,KAAK,OAAO;YACV,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC7B,KAAK,QAAQ;YACX,OAAO,OAAO,IAAI,KAAK,QAAQ,CAAC;QAClC,KAAK,QAAQ;YACX,OAAO,OAAO,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC3D,KAAK,SAAS;YACZ,OAAO,OAAO,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC5D,KAAK,SAAS;YACZ,OAAO,OAAO,IAAI,KAAK,SAAS,CAAC;QACnC,KAAK,MAAM;YACT,OAAO,IAAI,KAAK,IAAI,CAAC;QACvB;YACE,OAAO,IAAI,CAAC,CAAC,0CAA0C;IAC3D,CAAC;AACH,CAAC;AAED,SAAS,QAAQ,CAAC,IAAa;IAC7B,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,MAAM,CAAC;IACjC,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;QAAE,OAAO,OAAO,CAAC;IACxC,OAAO,OAAO,IAAI,CAAC;AACrB,CAAC;AAED,SAAS,aAAa,CAAC,CAAU;IAC/B,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AAClE,CAAC;AAED,SAAS,SAAS,CAAC,CAAU,EAAE,CAAU;IACvC,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;AACjD,CAAC"}
@@ -1,4 +1,6 @@
1
- import type { NpmNodeHandle, WorkflowNodeHandle } from "../definitions/types";
1
+ import type { NpmNodeHandle, WorkflowNodeHandle } from "../definitions/types.js";
2
+ export { defineService, defineClass, defineConst } from "../define/node.js";
3
+ export type { DefineExplicitServiceArgs, ServiceDefinition, ServiceMethodSpec } from "../types.js";
2
4
  /** Generated inventory declaration; the compiler reads its literal argument. */
3
5
  export declare function npmNode(handle: Omit<NpmNodeHandle, "kind">): NpmNodeHandle;
4
6
  export declare function workflowNode(handle: Omit<WorkflowNodeHandle, "kind">): WorkflowNodeHandle;