@voxgig/sdkgen 3.4.6 → 3.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (198) hide show
  1. package/bin/voxgig-sdkgen +78 -10
  2. package/dist/action/action.d.ts +5 -2
  3. package/dist/action/action.js +113 -6
  4. package/dist/action/action.js.map +1 -1
  5. package/dist/action/check.d.ts +15 -0
  6. package/dist/action/check.js +347 -0
  7. package/dist/action/check.js.map +1 -0
  8. package/dist/action/dispatch.d.ts +8 -0
  9. package/dist/action/dispatch.js +74 -0
  10. package/dist/action/dispatch.js.map +1 -0
  11. package/dist/action/docs.d.ts +4 -0
  12. package/dist/action/docs.js +236 -0
  13. package/dist/action/docs.js.map +1 -0
  14. package/dist/action/doctor.d.ts +5 -2
  15. package/dist/action/doctor.js +526 -74
  16. package/dist/action/doctor.js.map +1 -1
  17. package/dist/action/feature.js +96 -17
  18. package/dist/action/feature.js.map +1 -1
  19. package/dist/action/kind.d.ts +30 -0
  20. package/dist/action/kind.js +258 -0
  21. package/dist/action/kind.js.map +1 -0
  22. package/dist/action/package.d.ts +25 -0
  23. package/dist/action/package.js +852 -0
  24. package/dist/action/package.js.map +1 -0
  25. package/dist/action/resolve.d.ts +18 -0
  26. package/dist/action/resolve.js +280 -0
  27. package/dist/action/resolve.js.map +1 -0
  28. package/dist/action/target.d.ts +7 -1
  29. package/dist/action/target.js +240 -97
  30. package/dist/action/target.js.map +1 -1
  31. package/dist/cmp/Docs.d.ts +4 -0
  32. package/dist/cmp/Docs.js +98 -0
  33. package/dist/cmp/Docs.js.map +1 -0
  34. package/dist/cmp/ExternalDocs.d.ts +2 -0
  35. package/dist/cmp/ExternalDocs.js +43 -0
  36. package/dist/cmp/ExternalDocs.js.map +1 -0
  37. package/dist/cmp/ReadmeTop.js +5 -1
  38. package/dist/cmp/ReadmeTop.js.map +1 -1
  39. package/dist/helpers/definition.d.ts +5 -0
  40. package/dist/helpers/definition.js +72 -0
  41. package/dist/helpers/definition.js.map +1 -0
  42. package/dist/helpers/featureSource.d.ts +8 -2
  43. package/dist/helpers/featureSource.js +61 -12
  44. package/dist/helpers/featureSource.js.map +1 -1
  45. package/dist/helpers/junk.d.ts +11 -0
  46. package/dist/helpers/junk.js +149 -0
  47. package/dist/helpers/junk.js.map +1 -0
  48. package/dist/helpers/manifest.d.ts +50 -0
  49. package/dist/helpers/manifest.js +328 -0
  50. package/dist/helpers/manifest.js.map +1 -0
  51. package/dist/helpers/modelcheck.d.ts +22 -0
  52. package/dist/helpers/modelcheck.js +203 -0
  53. package/dist/helpers/modelcheck.js.map +1 -0
  54. package/dist/helpers/semver.d.ts +4 -0
  55. package/dist/helpers/semver.js +174 -0
  56. package/dist/helpers/semver.js.map +1 -0
  57. package/dist/helpers/shipped.d.ts +4 -0
  58. package/dist/helpers/shipped.js +36 -0
  59. package/dist/helpers/shipped.js.map +1 -0
  60. package/dist/helpers/stdrep.d.ts +9 -1
  61. package/dist/helpers/stdrep.js +22 -0
  62. package/dist/helpers/stdrep.js.map +1 -1
  63. package/dist/sdkgen.d.ts +15 -3
  64. package/dist/sdkgen.js +233 -67
  65. package/dist/sdkgen.js.map +1 -1
  66. package/dist/tsconfig.tsbuildinfo +1 -1
  67. package/dist/types.d.ts +10 -2
  68. package/dist/utility.js +17 -0
  69. package/dist/utility.js.map +1 -1
  70. package/model/sdkgen.aontu +69 -0
  71. package/package.json +3 -2
  72. package/project/.sdk/model/feature/audit.aontu +1 -0
  73. package/project/.sdk/model/feature/cache.aontu +1 -0
  74. package/project/.sdk/model/feature/clienttrack.aontu +1 -0
  75. package/project/.sdk/model/feature/debug.aontu +1 -0
  76. package/project/.sdk/model/feature/idempotency.aontu +1 -0
  77. package/project/.sdk/model/feature/log.aontu +1 -0
  78. package/project/.sdk/model/feature/metrics.aontu +1 -0
  79. package/project/.sdk/model/feature/netsim.aontu +1 -0
  80. package/project/.sdk/model/feature/paging.aontu +1 -0
  81. package/project/.sdk/model/feature/proxy.aontu +1 -0
  82. package/project/.sdk/model/feature/ratelimit.aontu +1 -0
  83. package/project/.sdk/model/feature/rbac.aontu +1 -0
  84. package/project/.sdk/model/feature/retry.aontu +1 -0
  85. package/project/.sdk/model/feature/streaming.aontu +1 -0
  86. package/project/.sdk/model/feature/telemetry.aontu +1 -0
  87. package/project/.sdk/model/feature/test.aontu +1 -0
  88. package/project/.sdk/model/feature/timeout.aontu +1 -0
  89. package/project/.sdk/model/target/c.aontu +1 -0
  90. package/project/.sdk/model/target/clojure.aontu +1 -0
  91. package/project/.sdk/model/target/cpp.aontu +1 -0
  92. package/project/.sdk/model/target/dart.aontu +1 -0
  93. package/project/.sdk/model/target/elixir.aontu +1 -0
  94. package/project/.sdk/model/target/go-cli.aontu +1 -0
  95. package/project/.sdk/model/target/go-mcp.aontu +1 -0
  96. package/project/.sdk/model/target/go.aontu +1 -0
  97. package/project/.sdk/model/target/haskell.aontu +1 -0
  98. package/project/.sdk/model/target/java.aontu +1 -0
  99. package/project/.sdk/model/target/js.aontu +1 -0
  100. package/project/.sdk/model/target/kotlin.aontu +1 -0
  101. package/project/.sdk/model/target/lean.aontu +1 -0
  102. package/project/.sdk/model/target/lua.aontu +1 -0
  103. package/project/.sdk/model/target/ocaml.aontu +1 -0
  104. package/project/.sdk/model/target/perl.aontu +1 -0
  105. package/project/.sdk/model/target/php.aontu +1 -0
  106. package/project/.sdk/model/target/py-data.aontu +1 -0
  107. package/project/.sdk/model/target/py.aontu +1 -0
  108. package/project/.sdk/model/target/rb.aontu +1 -0
  109. package/project/.sdk/model/target/rust.aontu +1 -0
  110. package/project/.sdk/model/target/scala.aontu +1 -0
  111. package/project/.sdk/model/target/seneca-provider.aontu +1 -0
  112. package/project/.sdk/model/target/zig.aontu +1 -0
  113. package/project/.sdk/src/cmp/c/Config_c.ts +44 -0
  114. package/project/.sdk/src/cmp/c/fragment/Main.fragment.c +3 -1
  115. package/project/.sdk/src/cmp/clojure/Config_clojure.ts +37 -42
  116. package/project/.sdk/src/cmp/clojure/utility_clojure.ts +42 -0
  117. package/project/.sdk/src/cmp/cpp/Config_cpp.ts +18 -0
  118. package/project/.sdk/src/cmp/csharp/Config_csharp.ts +125 -52
  119. package/project/.sdk/src/cmp/csharp/fragment/Main.fragment.cs +3 -1
  120. package/project/.sdk/src/cmp/csharp/utility_csharp.ts +94 -6
  121. package/project/.sdk/src/cmp/dart/Config_dart.ts +56 -3
  122. package/project/.sdk/src/cmp/dart/fragment/Config.data.fragment.dart +74 -0
  123. package/project/.sdk/src/cmp/dart/fragment/Config.fragment.dart +6 -9
  124. package/project/.sdk/src/cmp/dart/fragment/Main.fragment.dart +16 -5
  125. package/project/.sdk/src/cmp/dart/utility_dart.ts +18 -0
  126. package/project/.sdk/src/cmp/elixir/Config_elixir.ts +128 -13
  127. package/project/.sdk/src/cmp/elixir/fragment/Main.fragment.ex +3 -1
  128. package/project/.sdk/src/cmp/elixir/utility_elixir.ts +6 -0
  129. package/project/.sdk/src/cmp/haskell/Config_haskell.ts +35 -52
  130. package/project/.sdk/src/cmp/haskell/Package_haskell.ts +1 -0
  131. package/project/.sdk/src/cmp/haskell/Test_haskell.ts +1 -1
  132. package/project/.sdk/src/cmp/haskell/utility_haskell.ts +15 -5
  133. package/project/.sdk/src/cmp/java/Config_java.ts +21 -0
  134. package/project/.sdk/src/cmp/kotlin/Config_kotlin.ts +15 -0
  135. package/project/.sdk/src/cmp/ocaml/Config_ocaml.ts +42 -39
  136. package/project/.sdk/src/cmp/perl/Config_perl.ts +15 -0
  137. package/project/.sdk/src/cmp/perl/fragment/Main.fragment.pm +3 -1
  138. package/project/.sdk/src/cmp/rust/Config_rust.ts +44 -0
  139. package/project/.sdk/src/cmp/rust/fragment/Main.fragment.rs +4 -2
  140. package/project/.sdk/src/cmp/scala/Config_scala.ts +15 -0
  141. package/project/.sdk/src/cmp/swift/Config_swift.ts +17 -0
  142. package/project/.sdk/src/cmp/swift/fragment/Main.fragment.swift +3 -1
  143. package/project/.sdk/src/cmp/zig/Config_zig.ts +44 -0
  144. package/project/.sdk/src/cmp/zig/TestEntity_zig.ts +9 -2
  145. package/project/.sdk/src/cmp/zig/fragment/Main.fragment.zig +31 -18
  146. package/project/.sdk/tm/c/core/sdk.h +1 -0
  147. package/project/.sdk/tm/c/utility/make_options.c +5 -1
  148. package/project/.sdk/tm/clojure/src/sdk/core.clj +51 -3
  149. package/project/.sdk/tm/cpp/core/types.hpp +4 -1
  150. package/project/.sdk/tm/cpp/utility/pipeline.hpp +5 -1
  151. package/project/.sdk/tm/csharp/test/PipelineTest.cs +15 -0
  152. package/project/.sdk/tm/csharp/utility/MakeOptions.cs +67 -1
  153. package/project/.sdk/tm/dart/lib/utility/MakeOptionsUtility.dart +43 -0
  154. package/project/.sdk/tm/elixir/lib/projectname/utility.ex +58 -2
  155. package/project/.sdk/tm/haskell/{test/TestJson.hs → src/SdkJson.hs} +8 -4
  156. package/project/.sdk/tm/haskell/src/SdkRuntime.hs +55 -2
  157. package/project/.sdk/tm/haskell/test/Runner.hs +1 -1
  158. package/project/.sdk/tm/haskell/test/StructCorpus.hs +1 -1
  159. package/project/.sdk/tm/java/core/SdkClient.java +3 -1
  160. package/project/.sdk/tm/java/utility/MakeOptions.java +5 -1
  161. package/project/.sdk/tm/kotlin/core/SdkClient.kt +3 -1
  162. package/project/.sdk/tm/kotlin/utility/MakeOptions.kt +5 -1
  163. package/project/.sdk/tm/ocaml/Makefile +3 -2
  164. package/project/.sdk/tm/ocaml/sdk_json.ml +106 -0
  165. package/project/.sdk/tm/ocaml/sdk_runtime.ml +56 -0
  166. package/project/.sdk/tm/ocaml/test/struct_corpus.ml +4 -86
  167. package/project/.sdk/tm/perl/utility/make_options.pm +5 -1
  168. package/project/.sdk/tm/rust/utility/make_options.rs +79 -1
  169. package/project/.sdk/tm/scala/core/SdkClient.scala +3 -1
  170. package/project/.sdk/tm/scala/utility/Make.scala +5 -1
  171. package/project/.sdk/tm/swift/Sources/ProjectNameSDK/utility/MakeOptions.swift +5 -1
  172. package/project/.sdk/tm/zig/core/utility.zig +85 -1
  173. package/project/.sdk/tm/zig/test/gotcha_test.zig +8 -8
  174. package/project/sdkgen-package.json +57 -0
  175. package/src/action/action.ts +136 -6
  176. package/src/action/check.ts +495 -0
  177. package/src/action/dispatch.ts +105 -0
  178. package/src/action/docs.ts +310 -0
  179. package/src/action/doctor.ts +692 -81
  180. package/src/action/feature.ts +109 -17
  181. package/src/action/kind.ts +375 -0
  182. package/src/action/package.ts +1173 -0
  183. package/src/action/resolve.ts +362 -0
  184. package/src/action/target.ts +290 -108
  185. package/src/cmp/Docs.ts +125 -0
  186. package/src/cmp/ExternalDocs.ts +54 -0
  187. package/src/cmp/ReadmeTop.ts +6 -1
  188. package/src/helpers/definition.ts +82 -0
  189. package/src/helpers/featureSource.ts +83 -13
  190. package/src/helpers/junk.ts +168 -0
  191. package/src/helpers/manifest.ts +474 -0
  192. package/src/helpers/modelcheck.ts +262 -0
  193. package/src/helpers/semver.ts +211 -0
  194. package/src/helpers/shipped.ts +41 -0
  195. package/src/helpers/stdrep.ts +70 -0
  196. package/src/sdkgen.ts +294 -66
  197. package/src/types.ts +33 -3
  198. package/src/utility.ts +17 -0
package/dist/sdkgen.js CHANGED
@@ -39,12 +39,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
39
39
  Object.defineProperty(exports, "__esModule", { value: true });
40
40
  exports.Jostraca = exports.registerComponent = exports.FeatureHook = exports.ReadmeRef = exports.ReadmeExplanation = exports.ReadmeHowto = exports.ReadmeEntity = exports.ReadmeOptions = exports.ReadmeModel = exports.ReadmeIntro = exports.ReadmeErrors = exports.ReadmeQuick = exports.ReadmeInstall = exports.AgentGuideFeature = exports.AgentGuide = exports.AgentGuideTop = exports.ReadmeTop = exports.Readme = exports.Test = exports.Feature = exports.Entity = exports.Changelog = exports.Security = exports.License = exports.Deploy = exports.Main = exports.List = exports.Slot = exports.Line = exports.Inject = exports.Fragment = exports.Copy = exports.Content = exports.File = exports.Folder = exports.Project = exports.omap = exports.deep = exports.indent = exports.template = exports.getx = exports.get = exports.vmap = exports.cmap = exports.kebabify = exports.camelify = exports.snakify = exports.each = exports.names = exports.cmp = void 0;
41
41
  exports.matchArg = exports.idLiteral = exports.primaryOpCall = exports.liveStrict = exports.hasServerVariables = exports.serverVariables = exports.swiftSafeTypeName = exports.isSwiftSdkType = exports.rbSafeTypeName = exports.isRbCoreConstant = exports.entityCacheField = exports.phpEntityAccessor = exports.exampleVarName = exports.safeVarName = exports.isReservedName = exports.entityCollection = exports.deriveEntityNames = exports.warnEntityTypeCollisions = exports.entityTypeCollisions = exports.entityClassName = exports.pickExampleEntity = exports.entityPrimaryOp = exports.entityOps = exports.entityDataIdField = exports.entityIdField = exports.opRequestShape = exports.entityPath = exports.entityActions = exports.opActions = exports.opParams = exports.opTypeName = exports.OP_SUFFIX = exports.canonKey = exports.canonToDtype = exports.canonToType = exports.collectDeps = exports.getMatchEntries = exports.buildIdNames = exports.SdkGenError = exports.rawStringLiteral = exports.clean = exports.configDefinition = exports.configReprSetting = exports.configRepr = exports.isConfigData = exports.CONFIG_REPR_VALUES = exports.CONFIG_DATA_THRESHOLD = exports.resolveAuthPrefix = exports.isAuthActive = exports.requirePath = void 0;
42
- exports.GENERATOR_URL = exports.SECURITY_EMAIL = exports.PUBLISHER_URL = exports.PUBLISHER = exports.langLabel = exports.apiName = exports.repoInfo = exports.packageVersion = exports.goPackageIdent = exports.goVersion = exports.goModule = exports.envToken = exports.envName = exports.contributorList = exports.authorInfo = exports.keywords = exports.nonAffiliation = exports.pkgDescription = exports.vendorCommand = exports.registryName = exports.isPublished = exports.registryState = exports.installCommand = exports.packageName = exports.jsKey = exports.jsOptProp = exports.jsProp = exports.srcFeatureExcludes = exports.fullsetExcludes = exports.featureExcludes = exports.findFeatureSources = exports.availableFeatures = exports.featureOf = exports.litFor = exports.dataArg = void 0;
42
+ exports.GENERATOR_URL = exports.SECURITY_EMAIL = exports.PUBLISHER_URL = exports.PUBLISHER = exports.langLabel = exports.apiName = exports.repoInfo = exports.packageVersion = exports.goPackageIdent = exports.goVersion = exports.goModule = exports.envToken = exports.envName = exports.contributorList = exports.authorInfo = exports.keywords = exports.nonAffiliation = exports.pkgDescription = exports.vendorCommand = exports.registryName = exports.isPublished = exports.registryState = exports.installCommand = exports.packageName = exports.jsKey = exports.jsOptProp = exports.jsProp = exports.validateManifest = exports.readManifest = exports.manifestPath = exports.MANIFEST = exports.definitionNames = exports.definitionFolder = exports.definitionPath = exports.srcFeatureExcludes = exports.fullsetExcludes = exports.featureExcludes = exports.findFeatureSources = exports.availableFeatures = exports.featureOf = exports.litFor = exports.dataArg = void 0;
43
43
  exports.SdkGen = SdkGen;
44
44
  const node_fs_1 = __importDefault(require("node:fs"));
45
45
  const node_path_1 = __importDefault(require("node:path"));
46
46
  const util_1 = require("@voxgig/util");
47
- const jsonic_1 = require("@tabnas/jsonic");
48
47
  const JostracaModule = __importStar(require("jostraca"));
49
48
  const aontu_1 = require("aontu");
50
49
  const util_2 = require("@voxgig/util");
@@ -64,6 +63,8 @@ Object.defineProperty(exports, "rawStringLiteral", { enumerable: true, get: func
64
63
  const Main_1 = require("./cmp/Main");
65
64
  Object.defineProperty(exports, "Main", { enumerable: true, get: function () { return Main_1.Main; } });
66
65
  const ExternalTarget_1 = require("./cmp/ExternalTarget");
66
+ const Docs_1 = require("./cmp/Docs");
67
+ const ExternalDocs_1 = require("./cmp/ExternalDocs");
67
68
  const apidef_1 = require("@voxgig/apidef");
68
69
  const Deploy_1 = require("./cmp/Deploy");
69
70
  Object.defineProperty(exports, "Deploy", { enumerable: true, get: function () { return Deploy_1.Deploy; } });
@@ -172,6 +173,16 @@ Object.defineProperty(exports, "findFeatureSources", { enumerable: true, get: fu
172
173
  Object.defineProperty(exports, "featureExcludes", { enumerable: true, get: function () { return featureSource_1.featureExcludes; } });
173
174
  Object.defineProperty(exports, "fullsetExcludes", { enumerable: true, get: function () { return featureSource_1.fullsetExcludes; } });
174
175
  Object.defineProperty(exports, "srcFeatureExcludes", { enumerable: true, get: function () { return featureSource_1.srcFeatureExcludes; } });
176
+ const definition_1 = require("./helpers/definition");
177
+ Object.defineProperty(exports, "definitionPath", { enumerable: true, get: function () { return definition_1.definitionPath; } });
178
+ Object.defineProperty(exports, "definitionFolder", { enumerable: true, get: function () { return definition_1.definitionFolder; } });
179
+ Object.defineProperty(exports, "definitionNames", { enumerable: true, get: function () { return definition_1.definitionNames; } });
180
+ const junk_1 = require("./helpers/junk");
181
+ const manifest_1 = require("./helpers/manifest");
182
+ Object.defineProperty(exports, "MANIFEST", { enumerable: true, get: function () { return manifest_1.MANIFEST; } });
183
+ Object.defineProperty(exports, "manifestPath", { enumerable: true, get: function () { return manifest_1.manifestPath; } });
184
+ Object.defineProperty(exports, "readManifest", { enumerable: true, get: function () { return manifest_1.readManifest; } });
185
+ Object.defineProperty(exports, "validateManifest", { enumerable: true, get: function () { return manifest_1.validateManifest; } });
175
186
  const packageMeta_1 = require("./helpers/packageMeta");
176
187
  Object.defineProperty(exports, "packageName", { enumerable: true, get: function () { return packageMeta_1.packageName; } });
177
188
  Object.defineProperty(exports, "installCommand", { enumerable: true, get: function () { return packageMeta_1.installCommand; } });
@@ -200,13 +211,13 @@ Object.defineProperty(exports, "GENERATOR_URL", { enumerable: true, get: functio
200
211
  const target_1 = require("./action/target");
201
212
  const feature_1 = require("./action/feature");
202
213
  const doctor_1 = require("./action/doctor");
214
+ const package_1 = require("./action/package");
215
+ const check_1 = require("./action/check");
216
+ const docs_1 = require("./action/docs");
217
+ // The verbs, built from the kind registry — see action/dispatch.
218
+ const dispatch_1 = require("./action/dispatch");
203
219
  const { Jostraca } = JostracaModule;
204
220
  exports.Jostraca = Jostraca;
205
- const ACTION_MAP = {
206
- target: target_1.action_target,
207
- feature: feature_1.action_feature,
208
- doctor: doctor_1.action_doctor,
209
- };
210
221
  const dlog = (0, util_2.getdlog)('sdkgen', __filename);
211
222
  function SdkGen(opts) {
212
223
  const fs = opts.fs || node_fs_1.default;
@@ -235,7 +246,12 @@ function SdkGen(opts) {
235
246
  write: true,
236
247
  merge: false
237
248
  }
238
- }
249
+ },
250
+ // No copied tree carries a maintainer's `.DS_Store` or `__pycache__` into
251
+ // an SDK. Set here AND per call (see helpers/junk) — the actions run on
252
+ // whatever instance their caller supplies, so neither placement covers
253
+ // every path on its own.
254
+ cmp: (0, junk_1.copyOpts)()
239
255
  };
240
256
  const jostraca = Jostraca(jopts);
241
257
  const pino = (0, util_1.prettyPino)('sdkgen', opts);
@@ -268,6 +284,9 @@ function SdkGen(opts) {
268
284
  control: {
269
285
  dryrun: !!opts.dryrun
270
286
  },
287
+ // Per-call for the same reason as `control` above: an option the
288
+ // instance carries is not reliably the one a generate sees.
289
+ cmp: (0, junk_1.copyOpts)(),
271
290
  };
272
291
  // Targets that write OUTSIDE the SDK repo (`output: path`) are generated
273
292
  // by their own pass, rooted at that path — see cmp/ExternalTarget for why
@@ -278,18 +297,76 @@ function SdkGen(opts) {
278
297
  // so resolve it ONCE: every destination is compared against it, and a
279
298
  // comparison between a relative and an absolute path is meaningless.
280
299
  const root = node_path_1.default.resolve(folder);
281
- const external = externalTargets(model, root);
300
+ const external = externalItems(model, root, ['target', 'docs']);
282
301
  // Before ANY file is written, in-tree included: a destination that turns
283
302
  // out to be wrong must abort the whole generation, not leave half of it
284
303
  // done. See checkExternalFolders.
285
304
  checkExternalFolders(external, root, fs);
286
- const jres = await jostraca.generate(jopts, () => Root({ model: 0 === external.length ? model : withoutTargets(model, external) }));
305
+ const jres = await jostraca.generate(jopts, () => Root({ model: 0 === external.length ? model : withoutExternal(model, external) }));
287
306
  (0, util_2.showChanges)(jopts.log, 'generate-result', jres, node_path_1.default.dirname(process.cwd()));
307
+ // IN-TREE DOCS, in their own pass over the same root.
308
+ //
309
+ // The alternative is one `Kinds()` call in the consumer's `Root.ts` —
310
+ // which create-sdkgen writes once and never revisits, so every project
311
+ // scaffolded before the docs kind existed would have to be hand-edited
312
+ // before `docs add` did anything. A second pass costs one more changes
313
+ // report and makes the kind work in projects that predate it, which is
314
+ // the whole point of putting the destinations in packages.
315
+ //
316
+ // Items with `output: path` are excluded here and generated by the loop
317
+ // below, exactly as out-of-tree targets are.
318
+ const intreedocs = Object.keys(model?.main?.[apidef_1.KIT]?.docs ?? {})
319
+ .filter((name) => {
320
+ const item = model.main[apidef_1.KIT].docs[name];
321
+ const path = item?.output?.path;
322
+ return false !== item?.active && (null == path || '' === path);
323
+ });
324
+ // AN IN-TREE DOCS ITEM AND A TARGET CANNOT SHARE A NAME.
325
+ //
326
+ // `docs` and `target` are separate namespaces — deliberately, so an item
327
+ // of each may be called `api` — and their `.sdk` trees are nested apart
328
+ // (`src/cmp/docs/<n>` vs `src/cmp/<n>`), so installing both is fine.
329
+ //
330
+ // Their GENERATED destinations are not separate. Both render into
331
+ // `<sdk-repo>/<name>/`, the docs pass runs second, and jostraca is
332
+ // last-write-wins — so a docs item named `go` would quietly overwrite the
333
+ // Go SDK's README, and whatever else the two have in common, leaving a
334
+ // corrupt SDK and a green run.
335
+ //
336
+ // Refused rather than reordered, and refused BEFORE the docs pass writes
337
+ // anything: this is the in-tree half of the rule `checkExternalFolders`
338
+ // enforces for out-of-tree destinations, and the fix is the same either
339
+ // way — give one of them `output: path`, or rename it.
340
+ const targets = model?.main?.[apidef_1.KIT]?.target ?? {};
341
+ for (const name of intreedocs) {
342
+ const target = targets[name];
343
+ if (null == target || false === target.active) {
344
+ continue;
345
+ }
346
+ const tpath = target.output?.path;
347
+ if (null != tpath && '' !== tpath) {
348
+ continue;
349
+ }
350
+ throw new utility_1.SdkGenError('Docs item "' + name + '" and target "' + name + '" would both ' +
351
+ 'generate into <sdk-project>/' + name + '/.\n' +
352
+ ' They are separate kinds, so sharing a name is legal — but they ' +
353
+ 'share one output folder, and the docs pass runs second, so it ' +
354
+ 'would overwrite the SDK.\n' +
355
+ ' Give one of them `output: path`, or rename it.');
356
+ }
357
+ if (0 < intreedocs.length) {
358
+ log.info({
359
+ point: 'generate-docs-start', docs: intreedocs,
360
+ note: intreedocs.join(', ')
361
+ });
362
+ const dres = await jostraca.generate(jopts, () => (0, Docs_1.Docs)({ model }));
363
+ (0, util_2.showChanges)(jopts.log, 'generate-docs-result', dres, node_path_1.default.dirname(process.cwd()));
364
+ }
288
365
  for (const ext of external) {
289
366
  // `active: false` is the project's only lever to stop the generator
290
367
  // writing into a repo it does not own, so it has to be honoured HERE —
291
368
  // the consumer Root iterates targets raw and does not check it. The
292
- // target is still removed from the in-tree model above (withoutTargets
369
+ // target is still removed from the in-tree model above (withoutExternal
293
370
  // takes every `output: path` target, active or not), so switching one
294
371
  // off generates it nowhere rather than relocating it into
295
372
  // `<sdk-repo>/<target>/`.
@@ -304,14 +381,19 @@ function SdkGen(opts) {
304
381
  point: 'generate-external', target: ext.name, folder: ext.folder,
305
382
  note: ext.name + ' -> ' + ext.folder
306
383
  });
307
- const eres = await jostraca.generate({ ...jopts, folder: ext.folder }, () => (0, ExternalTarget_1.ExternalTarget)({
308
- model, target: ext.target, cmpfolder: folder,
309
- // How to walk BACK to the SDK project from the destination. A
310
- // target generating out of tree usually sits beside the SDK in a
311
- // known layout, and its own docs, scripts and live tests need to
312
- // name that path.
313
- sdkrelpath: externalSdkRel(ext, root, log),
314
- }));
384
+ const sdkrelpath = externalSdkRel(ext, root, log);
385
+ const eres = 'docs' === ext.kind ?
386
+ await jostraca.generate({ ...jopts, folder: ext.folder }, () => (0, ExternalDocs_1.ExternalDocs)({
387
+ model, item: ext.target, cmpfolder: folder, sdkrelpath,
388
+ })) :
389
+ await jostraca.generate({ ...jopts, folder: ext.folder }, () => (0, ExternalTarget_1.ExternalTarget)({
390
+ model, target: ext.target, cmpfolder: folder,
391
+ // How to walk BACK to the SDK project from the destination. An
392
+ // item generating out of tree usually sits beside the SDK in a
393
+ // known layout, and its own docs, scripts and live tests need to
394
+ // name that path.
395
+ sdkrelpath,
396
+ }));
315
397
  (0, util_2.showChanges)(jopts.log, 'generate-result', eres, node_path_1.default.dirname(process.cwd()));
316
398
  }
317
399
  const dlogs = dlog.log();
@@ -323,19 +405,36 @@ function SdkGen(opts) {
323
405
  log.info({ point: 'generate-end' });
324
406
  return { ok: true, name: 'sdkgen' };
325
407
  }
326
- async function action(args) {
327
- const pargs = args.map(arg => (0, jsonic_1.Jsonic)(arg));
408
+ // Action arguments are PATHS AND NAMES, and they reach the actions as the
409
+ // raw strings the shell gave us.
410
+ //
411
+ // They used to be mapped through `Jsonic(arg)` first, which parses each one
412
+ // as relaxed JSON — so a Windows absolute ref arrived as an OBJECT:
413
+ // `Jsonic('C:\\pkg\\go')` is `{ C: '\\pkg\\go' }`, and every downstream path
414
+ // join then missed. (`ts,py` also became `['ts','py']`, which is why
415
+ // parseAddNames still carries a non-string branch; it splits on commas
416
+ // itself, so nothing is lost by handing it strings.)
417
+ //
418
+ // Nothing here wants structured arguments: every action takes names and
419
+ // refs. Parsing them was pure loss.
420
+ //
421
+ // `flags` is the second parameter because `--only` and `--alias` are
422
+ // arguments to ONE command, not generator configuration: passing them
423
+ // through `SdkGen({…})` like `debug`/`dryrun` would make a later
424
+ // `action()` call on the same instance silently inherit them.
425
+ async function action(args, flags) {
328
426
  const actname = args[0];
329
- const actionFunc = ACTION_MAP[actname];
427
+ const actionFunc = dispatch_1.ACTION_MAP[actname];
330
428
  if (null == actionFunc) {
331
- throw new utility_1.SdkGenError('Unknown action: ' + actname);
429
+ throw new utility_1.SdkGenError('Unknown action: ' + actname +
430
+ ' (expected: ' + (0, dispatch_1.actionNames)().join(', ') + ')');
332
431
  }
333
- const ctx = resolveActionContext();
334
- return await actionFunc(pargs, ctx);
432
+ const ctx = resolveActionContext(flags, (0, dispatch_1.needsModel)(args));
433
+ return await actionFunc(args, ctx);
335
434
  }
336
- function resolveActionContext() {
435
+ function resolveActionContext(flags, wantmodel) {
337
436
  // TODO: use AsyncLocalStorage to avoid reloading model
338
- const { model, url } = resolveModel();
437
+ const { model, url } = resolveModel(false !== wantmodel);
339
438
  const ctx = {
340
439
  fs: () => fs,
341
440
  log,
@@ -344,12 +443,20 @@ function SdkGen(opts) {
344
443
  url,
345
444
  jostraca,
346
445
  opts,
446
+ flags: flags ?? {},
347
447
  };
348
448
  return ctx;
349
449
  }
350
- function resolveModel() {
450
+ function resolveModel(wanted) {
351
451
  const path = './model/sdk.aontu';
352
452
  const errs = [];
453
+ // A verb that does not act on a project (see `needsModel`) is run where
454
+ // there is no project model, so its absence is not an error there. Its
455
+ // PRESENCE still is compiled — an author checking a package from inside a
456
+ // project should get the same model every other verb gets.
457
+ if (!wanted && !fs.existsSync(path)) {
458
+ return { model: { main: {} }, url: path };
459
+ }
353
460
  if (null == aontu) {
354
461
  aontu = new aontu_1.Aontu();
355
462
  }
@@ -386,6 +493,38 @@ function SdkGen(opts) {
386
493
  return (0, feature_1.feature_add)(features, ctx);
387
494
  }
388
495
  };
496
+ // The third kind. sdkgen ships no docs items, so every ref here is a path
497
+ // into a package — see action/docs.
498
+ const docs = {
499
+ add: async (items) => {
500
+ const ctx = resolveActionContext();
501
+ return (0, docs_1.docs_add)(items, ctx);
502
+ }
503
+ };
504
+ // The whole-package verbs. `flags` mirrors the CLI's `--only` / `--alias`,
505
+ // for the same reason they are `action`'s second parameter rather than
506
+ // constructor options: they are arguments to one call.
507
+ const packages = {
508
+ add: async (refs, flags) => {
509
+ const ctx = resolveActionContext(flags);
510
+ return (0, package_1.package_add)(refs, ctx);
511
+ },
512
+ list: async () => {
513
+ const ctx = resolveActionContext();
514
+ return (0, package_1.action_package)(['package', 'list'], ctx);
515
+ },
516
+ update: async (names, flags) => {
517
+ const ctx = resolveActionContext(flags);
518
+ return (0, package_1.package_update)(names, ctx);
519
+ },
520
+ // Validate a package being AUTHORED — see action/check. The only verb
521
+ // here that does not need a project model, because it does not act on a
522
+ // project; `false` says so to `resolveActionContext`.
523
+ check: async (refs) => {
524
+ const ctx = resolveActionContext(undefined, false);
525
+ return (0, check_1.cmd_package_check)(['package', 'check', ...(refs ?? [])], ctx);
526
+ },
527
+ };
389
528
  // Has this project's `.sdk/` drifted from the scaffold? See action/doctor.
390
529
  const check = async () => {
391
530
  const ctx = resolveActionContext();
@@ -396,8 +535,12 @@ function SdkGen(opts) {
396
535
  generate,
397
536
  action,
398
537
  check,
538
+ docs,
399
539
  target,
400
540
  feature,
541
+ // `package` is a reserved word in a strict-mode object shorthand, so the
542
+ // local binding is `packages` and the PUBLIC name matches the CLI verb.
543
+ package: packages,
401
544
  };
402
545
  }
403
546
  SdkGen.makeBuild = async function (opts) {
@@ -431,21 +574,33 @@ SdkGen.makeBuild = async function (opts) {
431
574
  // directory the command happened to be run from.
432
575
  //
433
576
  // An INACTIVE target is still listed: it must be taken out of the in-tree
434
- // model (see withoutTargets) so that switching it off does not silently
577
+ // model (see withoutExternal) so that switching it off does not silently
435
578
  // relocate it into `<sdk-repo>/<target>/`. The generate loop skips it.
436
- function externalTargets(model, folder) {
437
- const targets = model?.main?.[apidef_1.KIT]?.target || {};
438
- return Object.keys(targets).sort()
439
- .map((name) => ({ name, target: targets[name] }))
440
- .filter((t) => {
441
- const path = t.target?.output?.path;
442
- return null != path && '' !== path;
443
- })
444
- .map((t) => ({
445
- ...t,
446
- folder: node_path_1.default.resolve(folder, String(t.target.output.path)),
447
- active: false !== t.target.active,
448
- }));
579
+ // Every item, of every kind, that generates OUTSIDE the SDK repo.
580
+ //
581
+ // Keyed by kind because `docs` needs exactly this and a second copy of it
582
+ // would drift: the out-of-tree rules — a destination must be outside the
583
+ // project, unclaimed, and either empty or previously generated into — are
584
+ // properties of WRITING SOMEWHERE ELSE, not of being a target.
585
+ //
586
+ // The claim map spanning kinds is the load-bearing part: a docs item and a
587
+ // target pointed at the same folder would otherwise silently overwrite each
588
+ // other, in whatever order the passes happen to run.
589
+ function externalItems(model, folder, kinds) {
590
+ return kinds.flatMap((kind) => {
591
+ const items = model?.main?.[apidef_1.KIT]?.[kind] || {};
592
+ return Object.keys(items).sort()
593
+ .map((name) => ({ kind, name, target: items[name] }))
594
+ .filter((t) => {
595
+ const path = t.target?.output?.path;
596
+ return null != path && '' !== path;
597
+ })
598
+ .map((t) => ({
599
+ ...t,
600
+ folder: node_path_1.default.resolve(folder, String(t.target.output.path)),
601
+ active: false !== t.target.active,
602
+ }));
603
+ });
449
604
  }
450
605
  // The `.jostraca` bookkeeping tree (meta log + a duplicate of the last
451
606
  // generated output) that jostraca leaves at an output root. It is the only
@@ -454,9 +609,12 @@ function externalTargets(model, folder) {
454
609
  // has been generated into already, whoever set it up.
455
610
  const EXTERNAL_MARKER = '.jostraca';
456
611
  // Entries that do not count as content when deciding whether a destination
457
- // is empty. A `git init` (or a clone of an empty repo) leaves only `.git`,
458
- // and that is exactly the destination a FIRST generation is aimed at.
459
- const EXTERNAL_EMPTY = ['.git', '.DS_Store'];
612
+ // is empty. A `git init` (or a clone of an empty repo) leaves only `.git`, and
613
+ // that is exactly the destination a FIRST generation is aimed at — as is one
614
+ // the maintainer opened in the Finder on the way to declaring it.
615
+ //
616
+ // `isNoise`, not `isJunk`: a destination holding build output is not empty,
617
+ // whether or not sdkgen would ever copy such a thing. See helpers/junk.
460
618
  // Refuse a destination the project cannot have meant.
461
619
  //
462
620
  // The external pass is the one code path that writes outside the repo it was
@@ -488,31 +646,35 @@ function checkExternalFolders(external, root, fs) {
488
646
  // path valid.
489
647
  if (!ext.active)
490
648
  continue;
491
- const where = 'Target "' + ext.name + '" has output path "' +
649
+ const label = ext.kind.charAt(0).toUpperCase() + ext.kind.slice(1);
650
+ const where = label + ' "' + ext.name + '" has output path "' +
492
651
  ext.target.output.path + '", which resolves to: ' + ext.folder +
493
652
  '\n (SDK project: ' + root + ')';
494
653
  if (ext.folder === root || folderContains(root, ext.folder)) {
495
- throw new utility_1.SdkGenError('External target output path is inside the SDK project.\n ' + where +
496
- '\n A target generating into the SDK project must leave `output: ' +
654
+ throw new utility_1.SdkGenError('External output path is inside the SDK project.\n ' + where +
655
+ '\n An item generating into the SDK project must leave `output: ' +
497
656
  'path` unset — it is then generated in-tree, as <sdk-project>/' +
498
657
  ext.name + '/.');
499
658
  }
500
659
  if (folderContains(ext.folder, root)) {
501
- throw new utility_1.SdkGenError('External target output path contains the SDK project.\n ' + where +
660
+ throw new utility_1.SdkGenError('External output path contains the SDK project.\n ' + where +
502
661
  '\n Generation would write this package over the directory holding ' +
503
662
  'the SDK project itself.');
504
663
  }
664
+ // ACROSS KINDS, not within one: `docs` and `target` are separate
665
+ // namespaces, so an item of each may legitimately be called `api` — and
666
+ // pointing both at one folder is the mistake this catches.
505
667
  if (null != claimed[ext.folder]) {
506
- throw new utility_1.SdkGenError('External target output path is already claimed by target "' +
507
- claimed[ext.folder] + '".\n ' + where +
508
- '\n Two targets generating into the same folder overwrite each ' +
509
- 'other, in target-name order.');
668
+ throw new utility_1.SdkGenError('External output path is already claimed by ' +
669
+ claimed[ext.folder] + '.\n ' + where +
670
+ '\n Two items generating into the same folder overwrite each ' +
671
+ 'other, in whatever order the passes run.');
510
672
  }
511
- claimed[ext.folder] = ext.name;
673
+ claimed[ext.folder] = ext.kind + ' "' + ext.name + '"';
512
674
  if (!fs.existsSync(ext.folder))
513
675
  continue;
514
676
  if (!fs.statSync(ext.folder).isDirectory()) {
515
- throw new utility_1.SdkGenError('External target output path is not a folder.\n ' + where);
677
+ throw new utility_1.SdkGenError('External output path is not a folder.\n ' + where);
516
678
  }
517
679
  if (true === ext.target.output.adopt)
518
680
  continue;
@@ -520,7 +682,7 @@ function checkExternalFolders(external, root, fs) {
520
682
  .map((entry) => String(entry));
521
683
  if (entries.includes(EXTERNAL_MARKER))
522
684
  continue;
523
- const content = entries.filter((entry) => !EXTERNAL_EMPTY.includes(entry));
685
+ const content = entries.filter((entry) => !(0, junk_1.isNoise)(entry));
524
686
  if (0 < content.length) {
525
687
  throw new utility_1.SdkGenError('External target output folder already holds content this generator ' +
526
688
  'did not write.\n ' + where +
@@ -585,21 +747,25 @@ function externalSdkRel(ext, root, log) {
585
747
  // A shallow clone down to `target` only — the model is large, entities and
586
748
  // features are shared with the external pass, and a deep copy would both
587
749
  // cost and quietly break identity comparisons.
588
- function withoutTargets(model, external) {
589
- const drop = new Set(external.map((e) => e.name));
590
- const targets = model?.main?.[apidef_1.KIT]?.target || {};
591
- const kept = {};
592
- for (const name of Object.keys(targets)) {
593
- if (!drop.has(name)) {
594
- kept[name] = targets[name];
750
+ // The model the IN-TREE pass sees: every out-of-tree item removed, whatever
751
+ // its kind. Rendering one in both passes would ALSO write it into
752
+ // `<sdk-repo>/<name>/`, which is the folder the item asked not to use.
753
+ function withoutExternal(model, external) {
754
+ const drop = new Set(external.map((e) => e.kind + ':' + e.name));
755
+ const kit = { ...model.main[apidef_1.KIT] };
756
+ for (const kind of new Set(external.map((e) => e.kind))) {
757
+ const items = model?.main?.[apidef_1.KIT]?.[kind] || {};
758
+ const kept = {};
759
+ for (const name of Object.keys(items)) {
760
+ if (!drop.has(kind + ':' + name)) {
761
+ kept[name] = items[name];
762
+ }
595
763
  }
764
+ kit[kind] = kept;
596
765
  }
597
766
  return {
598
767
  ...model,
599
- main: {
600
- ...model.main,
601
- [apidef_1.KIT]: { ...model.main[apidef_1.KIT], target: kept },
602
- },
768
+ main: { ...model.main, [apidef_1.KIT]: kit },
603
769
  };
604
770
  }
605
771
  // Adapted from https://github.com/sindresorhus/import-fresh - Thanks!
@@ -1 +1 @@
1
- {"version":3,"file":"sdkgen.js","sourceRoot":"","sources":["../src/sdkgen.ts"],"names":[],"mappings":";AAAA,yDAAyD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAuwBvD,MAAM;AArwBR,sDAAwB;AACxB,0DAA4B;AAE5B,uCAA+C;AAE/C,2CAAuC;AACvC,MAAY,cAAc,qCAAgB;AAC1C,iCAA6B;AAE7B,uCAGqB;AAOrB,uCAEiF;4FAFxE,qBAAW;4FAAE,qBAAW;6FAAE,sBAAY;kGAAE,2BAAiB;sGAChE,+BAAqB;mGAAE,4BAAkB;6FAAE,sBAAY;2FAAE,oBAAU;kGACnE,2BAAiB;iGAAE,0BAAgB;sFAAE,eAAK;iGAAE,0BAAgB;AAE9D,qCAAiC;qFAAxB,WAAI;AACb,yDAAqD;AAErD,2CAAoC;AACpC,yCAAqC;uFAA5B,eAAM;AACf,yCAAqC;uFAA5B,eAAM;AACf,2CAAuC;wFAA9B,iBAAO;AAChB,yCAAqC;uFAA5B,eAAM;AACf,+CAA2C;0FAAlC,qBAAS;AAClB,uDAAmD;8FAA1C,6BAAa;AACtB,iDAA6C;2FAApC,uBAAU;AACnB,+DAA2D;kGAAlD,qCAAiB;AAC1B,2CAAuC;wFAA9B,iBAAO;AAChB,6CAAyC;yFAAhC,mBAAQ;AACjB,+CAA2C;0FAAlC,qBAAS;AAClB,qCAAiC;qFAAxB,WAAI;AACb,uDAAmD;8FAA1C,6BAAa;AACtB,mDAA+C;4FAAtC,yBAAW;AACpB,qDAAiD;6FAAxC,2BAAY;AACrB,mDAA+C;4FAAtC,yBAAW;AACpB,mDAA+C;4FAAtC,yBAAW;AACpB,uDAAmD;8FAA1C,6BAAa;AACtB,qDAAiD;6FAAxC,2BAAY;AACrB,mDAA+C;4FAAtC,yBAAW;AACpB,+DAA2D;kGAAlD,qCAAiB;AAC1B,+CAA2C;0FAAlC,qBAAS;AAClB,mDAA+C;4FAAtC,yBAAW;AACpB,iDAAoD;kGAA3C,8BAAiB;AAG1B,yDAAqD;6FAA5C,2BAAY;AACrB,+DAA2D;gGAAlD,iCAAe;AACxB,uDAAmD;4FAA1C,yBAAW;AAEpB,mDAAyE;4FAAhE,uBAAW;6FAAE,wBAAY;yFAAE,oBAAQ;AAC5C,+CAAgT;0FAAvS,mBAAS;2FAAE,oBAAU;yFAAE,kBAAQ;0FAAE,mBAAS;8FAAE,uBAAa;2FAAE,oBAAU;+FAAE,wBAAc;8FAAE,uBAAa;kGAAE,2BAAiB;0FAAE,mBAAS;gGAAE,yBAAe;kGAAE,2BAAiB;gGAAE,yBAAe;qGAAE,8BAAoB;yGAAE,kCAAwB;kGAAE,2BAAiB;iGAAE,0BAAgB;AACrR,6CAAkN;+FAAzM,uBAAc;4FAAE,oBAAW;+FAAE,uBAAc;kGAAE,0BAAiB;iGAAE,yBAAgB;iGAAE,yBAAgB;+FAAE,uBAAc;+FAAE,uBAAc;kGAAE,0BAAiB;uFAAE,eAAM;0FAAE,kBAAS;sFAAE,cAAK;AACxL,qDAA0E;gGAAjE,4BAAe;mGAAE,+BAAkB;AAC5C,mDAAyF;8FAAhF,yBAAa;0FAAE,qBAAS;yFAAE,oBAAQ;wFAAE,mBAAO;uFAAE,kBAAM;AAE5D,qDAAiD;2FAAxC,uBAAU;AACnB,2DAOgC;0FAN9B,yBAAS;kGACT,iCAAiB;mGACjB,kCAAkB;gGAClB,+BAAe;gGACf,+BAAe;mGACf,kCAAkB;AAGpB,uDAyB8B;4FAxB5B,yBAAW;+FACX,4BAAc;8FACd,2BAAa;4FACb,yBAAW;6FACX,0BAAY;8FACZ,2BAAa;+FACb,4BAAc;+FACd,4BAAc;yFACd,sBAAQ;2FACR,wBAAU;gGACV,6BAAe;wFACf,qBAAO;yFACP,sBAAQ;yFACR,sBAAQ;0FACR,uBAAS;+FACT,4BAAc;+FACd,4BAAc;yFACd,sBAAQ;wFACR,qBAAO;0FACP,uBAAS;0FACT,uBAAS;8FACT,2BAAa;+FACb,4BAAc;8FACd,2BAAa;AAIf,4CAGwB;AAExB,8CAGyB;AAEzB,4CAGwB;AAgCxB,MAAM,EAAE,QAAQ,EAAE,GAAG,cAAc,CAAA;QAknBjC,QAAQ;AA/mBV,MAAM,UAAU,GAAQ;IACtB,MAAM,EAAE,sBAAa;IACrB,OAAO,EAAE,wBAAc;IACvB,MAAM,EAAE,sBAAa;CACtB,CAAA;AAGD,MAAM,IAAI,GAAG,IAAA,cAAO,EAAC,QAAQ,EAAE,UAAU,CAAC,CAAA;AAG1C,SAAS,MAAM,CAAC,IAAmB;IACjC,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,iBAAE,CAAA;IACxB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,KAAK,CAAA;IACnC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAA;IAE1C,0EAA0E;IAC1E,uEAAuE;IACvE,IAAI,KAAK,GAAQ,IAAI,CAAA;IAErB,MAAM,KAAK,GAAG;QACZ,GAAG;QACH,OAAO,EAAE;YACP,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB;QACD,wEAAwE;QACxE,6EAA6E;QAC7E,2EAA2E;QAC3E,6EAA6E;QAC7E,wEAAwE;QACxE,uEAAuE;QACvE,2EAA2E;QAC3E,uEAAuE;QACvE,8DAA8D;QAC9D,kDAAkD;QAClD,QAAQ,EAAE;YACR,GAAG,EAAE;gBACH,KAAK,EAAE,IAAI;gBACX,KAAK,EAAE,KAAK;aACb;SACF;KACF,CAAA;IAED,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IAEhC,MAAM,IAAI,GAAG,IAAA,iBAAU,EAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;IACvC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAA;IAGzC,KAAK,UAAU,QAAQ,CAAC,IAAS;QAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QACxB,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;QAE9B,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;QACtF,GAAG,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,CAAA;QAE3C,IAAI,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;QAEpB,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,MAAM,EAAE,IAAI,EAAE,CAAC;YACzC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;YAClB,MAAM,UAAU,GAAQ,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;YAC5C,IAAI,GAAG,UAAU,CAAC,IAAI,CAAA;QACxB,CAAC;QAED,MAAM,KAAK,GAAG;YACZ,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE;YACZ,MAAM;YACN,GAAG,EAAE,GAAG,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC;YACnC,IAAI,EAAE,EAAE,IAAI,EAAE;YACd,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,0EAA0E;YAC1E,yEAAyE;YACzE,wEAAwE;YACxE,gFAAgF;YAChF,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,sEAAsE;YACtE,yDAAyD;YACzD,qEAAqE;YACrE,OAAO,EAAE;gBACP,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM;aACtB;SACF,CAAA;QAED,yEAAyE;QACzE,0EAA0E;QAC1E,uEAAuE;QACvE,sEAAsE;QACtE,EAAE;QACF,yEAAyE;QACzE,sEAAsE;QACtE,qEAAqE;QACrE,MAAM,IAAI,GAAG,mBAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;QACjC,MAAM,QAAQ,GAAG,eAAe,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;QAE7C,yEAAyE;QACzE,wEAAwE;QACxE,kCAAkC;QAClC,oBAAoB,CAAC,QAAQ,EAAE,IAAI,EAAE,EAAE,CAAC,CAAA;QAExC,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAClC,KAAK,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,KAAK,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAA;QAEhG,IAAA,kBAAW,EAAC,KAAK,CAAC,GAAG,EAAE,iBAAiB,EAAE,IAAI,EAAE,mBAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;QAE5E,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;YAC3B,oEAAoE;YACpE,uEAAuE;YACvE,oEAAoE;YACpE,uEAAuE;YACvE,sEAAsE;YACtE,0DAA0D;YAC1D,0BAA0B;YAC1B,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;gBAChB,GAAG,CAAC,IAAI,CAAC;oBACP,KAAK,EAAE,wBAAwB,EAAE,MAAM,EAAE,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM;oBACrE,IAAI,EAAE,GAAG,CAAC,IAAI,GAAG,0BAA0B;iBAC5C,CAAC,CAAA;gBACF,SAAQ;YACV,CAAC;YAED,GAAG,CAAC,IAAI,CAAC;gBACP,KAAK,EAAE,mBAAmB,EAAE,MAAM,EAAE,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM;gBAChE,IAAI,EAAE,GAAG,CAAC,IAAI,GAAG,MAAM,GAAG,GAAG,CAAC,MAAM;aACrC,CAAC,CAAA;YAEF,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAClC,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,EAChC,GAAG,EAAE,CAAC,IAAA,+BAAc,EAAC;gBACnB,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM;gBAC5C,8DAA8D;gBAC9D,iEAAiE;gBACjE,iEAAiE;gBACjE,kBAAkB;gBAClB,UAAU,EAAE,cAAc,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,CAAC;aAC3C,CAAC,CAAC,CAAA;YAEL,IAAA,kBAAW,EAAC,KAAK,CAAC,GAAG,EAAE,iBAAiB,EAAE,IAAI,EAAE,mBAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;QAC9E,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QACxB,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;YACrB,KAAK,IAAI,SAAS,IAAI,KAAK,EAAE,CAAC;gBAC5B,GAAG,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,kBAAkB,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;YAC9E,CAAC;QACH,CAAC;QAED,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,CAAA;QAEnC,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAA;IACrC,CAAC;IAGD,KAAK,UAAU,MAAM,CAAC,IAAc;QAClC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,CAAA;QAE1C,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;QACvB,MAAM,UAAU,GAAG,UAAU,CAAC,OAAO,CAAC,CAAA;QAEtC,IAAI,IAAI,IAAI,UAAU,EAAE,CAAC;YACvB,MAAM,IAAI,qBAAW,CAAC,kBAAkB,GAAG,OAAO,CAAC,CAAA;QACrD,CAAC;QAED,MAAM,GAAG,GAAG,oBAAoB,EAAE,CAAA;QAElC,OAAO,MAAM,UAAU,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;IACrC,CAAC;IAGD,SAAS,oBAAoB;QAE3B,uDAAuD;QACvD,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,YAAY,EAAE,CAAA;QAErC,MAAM,GAAG,GAAkB;YACzB,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE;YACZ,GAAG;YACH,MAAM,EAAE,GAAG,EAAE,yBAAyB;YACtC,KAAK;YACL,GAAG;YACH,QAAQ;YACR,IAAI;SACL,CAAA;QAED,OAAO,GAAG,CAAA;IACZ,CAAC;IAGD,SAAS,YAAY;QACnB,MAAM,IAAI,GAAG,mBAAmB,CAAA;QAChC,MAAM,IAAI,GAAU,EAAE,CAAA;QAEtB,IAAI,IAAI,IAAI,KAAK,EAAE,CAAC;YAClB,KAAK,GAAG,IAAI,aAAK,EAAE,CAAA;QACrB,CAAC;QAED,MAAM,KAAK,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,CAAA;QAC5B,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QAEzC,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;QAExC,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;YACpB,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;YACpB,MAAM,GAAG,GAAQ,IAAI,qBAAW,CAAC,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,CAAA;YAC5D,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAA;YAEnB,IAAI,QAAQ,KAAK,IAAI,CAAC,GAAG,EAAE,CAAC;gBAC1B,GAAG,CAAC,MAAM,GAAG,IAAI,CAAA;YACnB,CAAC;YAED,GAAG,CAAC,SAAS,GAAG,IAAI,CAAA;YACpB,MAAM,GAAG,CAAA;QACX,CAAC;QAED,KAAK,CAAC,KAAK,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAA;QAElC,IAAA,QAAA,KAAK,EAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;QAE9B,KAAK,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;QAE3C,OAAO;YACL,KAAK;YACL,GAAG,EAAE,IAAI;SACV,CAAA;IACH,CAAC;IAGD,MAAM,MAAM,GAAG;QACb,GAAG,EAAE,KAAK,EAAE,OAAiB,EAAyB,EAAE;YACtD,MAAM,GAAG,GAAG,oBAAoB,EAAE,CAAA;YAClC,OAAO,IAAA,mBAAU,EAAC,OAAO,EAAE,GAAG,CAAC,CAAA;QACjC,CAAC;KACF,CAAA;IAED,MAAM,OAAO,GAAG;QACd,GAAG,EAAE,KAAK,EAAE,QAAkB,EAAyB,EAAE;YACvD,MAAM,GAAG,GAAG,oBAAoB,EAAE,CAAA;YAClC,OAAO,IAAA,qBAAW,EAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;QACnC,CAAC;KACF,CAAA;IAED,2EAA2E;IAC3E,MAAM,KAAK,GAAG,KAAK,IAA2B,EAAE;QAC9C,MAAM,GAAG,GAAG,oBAAoB,EAAE,CAAA;QAClC,OAAO,IAAA,eAAM,EAAC,GAAG,CAAC,CAAA;IACpB,CAAC,CAAA;IAID,OAAO;QACL,IAAI,EAAE,IAAW;QACjB,QAAQ;QACR,MAAM;QACN,KAAK;QACL,MAAM;QACN,OAAO;KACR,CAAA;AAEH,CAAC;AAGD,MAAM,CAAC,SAAS,GAAG,KAAK,WAAU,IAAmB;IACnD,IAAI,MAAM,GAAQ,SAAS,CAAA;IAC3B,8BAA8B;IAE9B,MAAM,MAAM,GAAG;QACb,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,GAAG,EAAE,IAAI,CAAC,GAAG,IAAI,QAAQ;QACzB,IAAI,EAAE,WAAW;QACjB,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,UAAU;QACnE,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,EAAE;KACtB,CAAA;IAED,OAAO,KAAK,UAAU,KAAK,CAAC,KAAU,EAAE,KAAU,EAAE,GAAQ;QAC1D,IAAI,IAAI,IAAI,MAAM,EAAE,CAAC;YACnB,MAAM,GAAG,MAAM,CAAC;gBACd,GAAG,IAAI;gBACP,IAAI,EAAE,KAAK,CAAC,GAAG;gBACf,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK;aACxB,CAAC,CAAA;QACJ,CAAC;QAED,kDAAkD;QAClD,OAAO,MAAM,MAAM,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;IACxD,CAAC,CAAA;AACH,CAAC,CAAA;AAYD,0EAA0E;AAC1E,oCAAoC;AACpC,EAAE;AACF,4EAA4E;AAC5E,0EAA0E;AAC1E,wEAAwE;AACxE,iDAAiD;AACjD,EAAE;AACF,0EAA0E;AAC1E,wEAAwE;AACxE,uEAAuE;AACvE,SAAS,eAAe,CAAC,KAAU,EAAE,MAAc;IACjD,MAAM,OAAO,GAAG,KAAK,EAAE,IAAI,EAAE,CAAC,YAAG,CAAC,EAAE,MAAM,IAAI,EAAE,CAAA;IAEhD,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE;SAC/B,GAAG,CAAC,CAAC,IAAY,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;SACxD,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE;QACjB,MAAM,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAA;QACnC,OAAO,IAAI,IAAI,IAAI,IAAI,EAAE,KAAK,IAAI,CAAA;IACpC,CAAC,CAAC;SACD,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC;QAChB,GAAG,CAAC;QACJ,MAAM,EAAE,mBAAI,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC1D,MAAM,EAAE,KAAK,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM;KAClC,CAAC,CAAC,CAAA;AACP,CAAC;AAGD,uEAAuE;AACvE,2EAA2E;AAC3E,sEAAsE;AACtE,4EAA4E;AAC5E,sDAAsD;AACtD,MAAM,eAAe,GAAG,WAAW,CAAA;AAEnC,2EAA2E;AAC3E,2EAA2E;AAC3E,sEAAsE;AACtE,MAAM,cAAc,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;AAG5C,sDAAsD;AACtD,EAAE;AACF,6EAA6E;AAC7E,uEAAuE;AACvE,yEAAyE;AACzE,6EAA6E;AAC7E,6EAA6E;AAC7E,4EAA4E;AAC5E,gDAAgD;AAChD,EAAE;AACF,mCAAmC;AACnC,wEAAwE;AACxE,4EAA4E;AAC5E,0EAA0E;AAC1E,uDAAuD;AACvD,kCAAkC;AAClC,kEAAkE;AAClE,6BAA6B;AAC7B,EAAE;AACF,yEAAyE;AACzE,0EAA0E;AAC1E,2EAA2E;AAC3E,sEAAsE;AACtE,SAAS,oBAAoB,CAAC,QAAwB,EAAE,IAAY,EAAE,EAAO;IAC3E,MAAM,OAAO,GAA2B,EAAE,CAAA;IAE1C,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC3B,0EAA0E;QAC1E,qEAAqE;QACrE,cAAc;QACd,IAAI,CAAC,GAAG,CAAC,MAAM;YAAE,SAAQ;QAEzB,MAAM,KAAK,GAAG,UAAU,GAAG,GAAG,CAAC,IAAI,GAAG,qBAAqB;YACzD,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,GAAG,wBAAwB,GAAG,GAAG,CAAC,MAAM;YAC9D,oBAAoB,GAAG,IAAI,GAAG,GAAG,CAAA;QAEnC,IAAI,GAAG,CAAC,MAAM,KAAK,IAAI,IAAI,cAAc,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YAC5D,MAAM,IAAI,qBAAW,CACnB,4DAA4D,GAAG,KAAK;gBACpE,mEAAmE;gBACnE,+DAA+D;gBAC/D,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,CAAA;QACpB,CAAC;QAED,IAAI,cAAc,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC;YACrC,MAAM,IAAI,qBAAW,CACnB,2DAA2D,GAAG,KAAK;gBACnE,qEAAqE;gBACrE,yBAAyB,CAAC,CAAA;QAC9B,CAAC;QAED,IAAI,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YAChC,MAAM,IAAI,qBAAW,CACnB,4DAA4D;gBAC5D,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,QAAQ,GAAG,KAAK;gBACtC,iEAAiE;gBACjE,8BAA8B,CAAC,CAAA;QACnC,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,IAAI,CAAA;QAE9B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC;YAAE,SAAQ;QAExC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;YAC3C,MAAM,IAAI,qBAAW,CACnB,kDAAkD,GAAG,KAAK,CAAC,CAAA;QAC/D,CAAC;QAED,IAAI,IAAI,KAAK,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK;YAAE,SAAQ;QAE9C,MAAM,OAAO,GAAa,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC;aACjD,GAAG,CAAC,CAAC,KAAU,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;QAErC,IAAI,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC;YAAE,SAAQ;QAE/C,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAA;QAE1E,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;YACvB,MAAM,IAAI,qBAAW,CACnB,qEAAqE;gBACrE,oBAAoB,GAAG,KAAK;gBAC5B,aAAa,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;gBAC9C,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;gBACnC,iEAAiE;gBACjE,qEAAqE;gBACrE,YAAY,GAAG,GAAG,CAAC,IAAI,GAAG,2BAA2B,CAAC,CAAA;QAC1D,CAAC;IACH,CAAC;AACH,CAAC;AAGD,0EAA0E;AAC1E,0EAA0E;AAC1E,2EAA2E;AAC3E,SAAS,cAAc,CAAC,MAAc,EAAE,IAAY;IAClD,MAAM,GAAG,GAAG,mBAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IACvC,OAAO,EAAE,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,GAAG,mBAAI,CAAC,GAAG,CAAC,IAAI,IAAI,KAAK,GAAG;QACnE,CAAC,mBAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;AACzB,CAAC;AAGD,4EAA4E;AAC5E,4EAA4E;AAC5E,sCAAsC;AACtC,EAAE;AACF,wEAAwE;AACxE,yEAAyE;AACzE,2EAA2E;AAC3E,2EAA2E;AAC3E,8EAA8E;AAC9E,8EAA8E;AAC9E,0EAA0E;AAC1E,qEAAqE;AACrE,qEAAqE;AACrE,4EAA4E;AAC5E,iCAAiC;AACjC,EAAE;AACF,0EAA0E;AAC1E,iDAAiD;AACjD,SAAS,cAAc,CAAC,GAAiB,EAAE,IAAY,EAAE,GAAQ;IAC/D,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,IAAI,EAAE,CAAC,CAAA;IACxD,IAAI,EAAE,KAAK,QAAQ;QAAE,OAAO,QAAQ,CAAA;IAEpC,MAAM,OAAO,GAAG,mBAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,mBAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAEzE,0EAA0E;IAC1E,qEAAqE;IACrE,4EAA4E;IAC5E,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,KAAK,GAAG,CAAC,CAAA;IAE9D,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;QACrB,GAAG,CAAC,IAAI,CAAC;YACP,KAAK,EAAE,yBAAyB,EAAE,MAAM,EAAE,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO;YACnE,IAAI,EAAE,GAAG,CAAC,IAAI,GAAG,8CAA8C;gBAC7D,OAAO,GAAG,kBAAkB,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;gBACjD,8DAA8D;gBAC9D,4DAA4D;gBAC5D,oDAAoD;SACvD,CAAC,CAAA;IACJ,CAAC;IAED,OAAO,OAAO,CAAA;AAChB,CAAC;AAGD,uEAAuE;AACvE,qBAAqB;AACrB,EAAE;AACF,2EAA2E;AAC3E,yEAAyE;AACzE,+CAA+C;AAC/C,SAAS,cAAc,CAAC,KAAU,EAAE,QAA4B;IAC9D,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;IACjD,MAAM,OAAO,GAAG,KAAK,EAAE,IAAI,EAAE,CAAC,YAAG,CAAC,EAAE,MAAM,IAAI,EAAE,CAAA;IAEhD,MAAM,IAAI,GAAQ,EAAE,CAAA;IACpB,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QACxC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACpB,IAAI,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;QAC5B,CAAC;IACH,CAAC;IAED,OAAO;QACL,GAAG,KAAK;QACR,IAAI,EAAE;YACJ,GAAG,KAAK,CAAC,IAAI;YACb,CAAC,YAAG,CAAC,EAAE,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,YAAG,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE;SAC5C;KACF,CAAA;AACH,CAAC;AAGD,sEAAsE;AACtE,SAAS,KAAK,CAAC,IAAY;IACzB,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;QACjB,OAAM;IACR,CAAC;IAED,IAAI,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IAEpC,IAAI,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC5B,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;QAExE,2BAA2B;QAC3B,OAAO,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;QAE9B,KAAK,MAAM,EAAE,IAAI,QAAQ,EAAE,CAAC;YAC1B,KAAK,CAAC,EAAE,CAAC,CAAA;QACX,CAAC;IACH,CAAC;IAGD,IAAI,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAC;QAC9D,IAAI,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAA;QAEtD,OAAO,CAAC,EAAE,EAAE,CAAC;YACX,IAAI,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,QAAQ,EAAE,CAAC;gBAC/D,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;YACtD,CAAC;QACH,CAAC;IACH,CAAC;AAEH,CAAC;AA6BD,kBAAkB;AACL,QAAA,GAAG,GAAuC,cAAc,CAAC,GAAG,CAAA;AAC5D,QAAA,KAAK,GAAoD,cAAc,CAAC,KAAK,CAAA;AAC7E,QAAA,IAAI,GAAwC,cAAc,CAAC,IAAI,CAAA;AAC/D,QAAA,OAAO,GAAsC,cAAc,CAAC,OAAO,CAAA;AACnE,QAAA,QAAQ,GAAsC,cAAc,CAAC,QAAQ,CAAA;AACrE,QAAA,QAAQ,GAAsC,cAAc,CAAC,QAAQ,CAAA;AACrE,QAAA,IAAI,GAA4B,cAAc,CAAC,IAAI,CAAA;AACnD,QAAA,IAAI,GAA4B,cAAc,CAAC,IAAI,CAAA;AACnD,QAAA,GAAG,GAAgD,cAAc,CAAC,GAAG,CAAA;AACrE,QAAA,IAAI,GAAgD,cAAc,CAAC,IAAI,CAAA;AACvE,QAAA,QAAQ,GAAgD,cAAc,CAAC,QAAQ,CAAA;AAC/E,QAAA,MAAM,GAA8D,cAAc,CAAC,MAAM,CAAA;AAEzF,QAAA,IAAI,GAA4B,cAAc,CAAC,IAAI,CAAA;AACnD,QAAA,IAAI,GAA4B,cAAc,CAAC,IAAI,CAAA;AAGnD,QAAA,OAAO,GAAc,cAAc,CAAC,OAAO,CAAA;AAC3C,QAAA,MAAM,GAAc,cAAc,CAAC,MAAM,CAAA;AACzC,QAAA,IAAI,GAAc,cAAc,CAAC,IAAI,CAAA;AACrC,QAAA,OAAO,GAAc,cAAc,CAAC,OAAO,CAAA;AAC3C,QAAA,IAAI,GAAc,cAAc,CAAC,IAAI,CAAA;AACrC,QAAA,QAAQ,GAAc,cAAc,CAAC,QAAQ,CAAA;AAC7C,QAAA,MAAM,GAAc,cAAc,CAAC,MAAM,CAAA;AACzC,QAAA,IAAI,GAAc,cAAc,CAAC,IAAI,CAAA;AACrC,QAAA,IAAI,GAAc,cAAc,CAAC,IAAI,CAAA;AACrC,QAAA,IAAI,GAAc,cAAc,CAAC,IAAI,CAAA"}
1
+ {"version":3,"file":"sdkgen.js","sourceRoot":"","sources":["../src/sdkgen.ts"],"names":[],"mappings":"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"}