@nestia/sdk 2.0.0-dev.20230906 → 2.0.0-dev.20230907

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.
@@ -64,17 +64,3 @@ export namespace NestiaSimulator {
64
64
  }
65
65
  };
66
66
  }
67
-
68
- interface IUuid {
69
- /**
70
- * @format uuid
71
- */
72
- value: string | null;
73
- }
74
-
75
- interface IDate {
76
- /**
77
- * @format date
78
- */
79
- value: string | null;
80
- }
@@ -46,12 +46,26 @@ export interface INestiaConfig {
46
46
  * If not configured, you can't run `npx nestia e2e` command.
47
47
  */
48
48
  e2e?: string;
49
+ /**
50
+ * Whether to use propagation mode or not.
51
+ *
52
+ * If being configured, interaction functions of the SDK library would
53
+ * perform the propagation mode. The propagation mode means that never
54
+ * throwing exception even when status code is not 200 (or 201), but just
55
+ * returning the {@link IPropagation} typed instance, which can specify its body
56
+ * type through discriminated union determined by status code.
57
+ *
58
+ * @default false
59
+ */
60
+ propagate?: boolean;
49
61
  /**
50
62
  * Whether to clone DTO structures or not.
51
63
  *
52
64
  * If being configured, all of DTOs used in the backend server would be cloned
53
65
  * into the `structures` directory, and the SDK library would be refer to the
54
66
  * cloned DTOs instead of the original.
67
+ *
68
+ * @default false
55
69
  */
56
70
  clone?: boolean;
57
71
  /**
@@ -82,7 +82,7 @@ var NestiaConfigLoader;
82
82
  try {
83
83
  return (input => {
84
84
  const __is = input => {
85
- const $io0 = input => (undefined === input.swagger || "object" === typeof input.swagger && null !== input.swagger && $io1(input.swagger)) && (null !== input.input && undefined !== input.input && ("string" === typeof input.input || (Array.isArray(input.input) && input.input.every(elem => "string" === typeof elem) || "object" === typeof input.input && null !== input.input && $io17(input.input)))) && (undefined === input.output || "string" === typeof input.output) && (undefined === input.distribute || "string" === typeof input.distribute) && (undefined === input.e2e || "string" === typeof input.e2e) && (undefined === input.clone || "boolean" === typeof input.clone) && (undefined === input.primitive || "boolean" === typeof input.primitive) && (undefined === input.simulate || "boolean" === typeof input.simulate) && (undefined === input.project || "string" === typeof input.project) && (undefined === input.assert || "boolean" === typeof input.assert) && (undefined === input.json || "boolean" === typeof input.json);
85
+ const $io0 = input => (undefined === input.swagger || "object" === typeof input.swagger && null !== input.swagger && $io1(input.swagger)) && (null !== input.input && undefined !== input.input && ("string" === typeof input.input || (Array.isArray(input.input) && input.input.every(elem => "string" === typeof elem) || "object" === typeof input.input && null !== input.input && $io17(input.input)))) && (undefined === input.output || "string" === typeof input.output) && (undefined === input.distribute || "string" === typeof input.distribute) && (undefined === input.e2e || "string" === typeof input.e2e) && (undefined === input.propagate || "boolean" === typeof input.propagate) && (undefined === input.clone || "boolean" === typeof input.clone) && (undefined === input.primitive || "boolean" === typeof input.primitive) && (undefined === input.simulate || "boolean" === typeof input.simulate) && (undefined === input.project || "string" === typeof input.project) && (undefined === input.assert || "boolean" === typeof input.assert) && (undefined === input.json || "boolean" === typeof input.json);
86
86
  const $io1 = input => "string" === typeof input.output && (undefined === input.info || "object" === typeof input.info && null !== input.info && false === Array.isArray(input.info) && $io2(input.info)) && (undefined === input.servers || Array.isArray(input.servers) && input.servers.every(elem => "object" === typeof elem && null !== elem && $io5(elem))) && (undefined === input.security || "object" === typeof input.security && null !== input.security && false === Array.isArray(input.security) && $io6(input.security)) && (undefined === input.decompose || "boolean" === typeof input.decompose);
87
87
  const $io2 = input => (undefined === input.title || "string" === typeof input.title) && (undefined === input.description || "string" === typeof input.description) && (undefined === input.termsOfService || "string" === typeof input.termsOfService && /^[a-zA-Z0-9]+:\/\/(?:www.)?[-a-zA-Z0-9@:%._+~#=]{1,256}.[a-zA-Z0-9()]{1,6}\b(?:[-a-zA-Z0-9()@:%_+.~#?&/=]*)$/.test(input.termsOfService)) && (undefined === input.contact || "object" === typeof input.contact && null !== input.contact && false === Array.isArray(input.contact) && $io3(input.contact)) && (undefined === input.license || "object" === typeof input.license && null !== input.license && $io4(input.license)) && (undefined === input.version || "string" === typeof input.version);
88
88
  const $io3 = input => (undefined === input.name || "string" === typeof input.name) && (undefined === input.url || "string" === typeof input.url && /^[a-zA-Z0-9]+:\/\/(?:www.)?[-a-zA-Z0-9@:%._+~#=]{1,256}.[a-zA-Z0-9()]{1,6}\b(?:[-a-zA-Z0-9()@:%_+.~#?&/=]*)$/.test(input.url)) && (undefined === input.email || "string" === typeof input.email && /^(([^<>()[\]\.,;:\s@\"]+(\.[^<>()[\]\.,;:\s@\"]+)*)|(\".+\"))@(([^<>()[\]\.,;:\s@\"]+\.)+[^<>()[\]\.,;:\s@\"]{2,})$/i.test(input.email));
@@ -174,6 +174,10 @@ var NestiaConfigLoader;
174
174
  path: _path + ".e2e",
175
175
  expected: "(string | undefined)",
176
176
  value: input.e2e
177
+ })) && (undefined === input.propagate || "boolean" === typeof input.propagate || $guard(_exceptionable, {
178
+ path: _path + ".propagate",
179
+ expected: "(boolean | undefined)",
180
+ value: input.propagate
177
181
  })) && (undefined === input.clone || "boolean" === typeof input.clone || $guard(_exceptionable, {
178
182
  path: _path + ".clone",
179
183
  expected: "(boolean | undefined)",
@@ -1 +1 @@
1
- {"version":3,"file":"NestiaConfigLoader.js","sourceRoot":"","sources":["../../../src/executable/internal/NestiaConfigLoader.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4CAAoB;AACpB,gDAAwB;AACxB,6EAA0E;AAC1E,qCAAmC;AACnC,uCAAuC;AACvC,4DAA4B;AAE5B,kDAA0B;AAK1B,IAAiB,kBAAkB,CAqElC;AArED,WAAiB,kBAAkB;IAClB,kCAAe,GAAG,CAC3B,OAAe,EACY,EAAE;QAC7B,MAAM,cAAc,GAAG,oBAAE,CAAC,cAAc,CACpC,OAAO,CAAC,GAAG,EAAE,EACb,oBAAE,CAAC,GAAG,CAAC,UAAU,EACjB,OAAO,CACV,CAAC;QACF,IAAI,CAAC,cAAc;YACf,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;QAE5D,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,IAAA,sBAAW,EAAC,cAAc,CAAC,CAAC;QACvD,MAAM,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAChD,MAAM,EAAE,MAAM,EAAE,GAAG,oBAAE,CAAC,yBAAyB,CAC3C,cAAc,EACd,cAAc,CACjB,CAAC;QACF,MAAM,iBAAiB,GAAG,oBAAE,CAAC,0BAA0B,CACnD,MAAM,EACN,oBAAE,CAAC,GAAG,EACN,cAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAC/B,CAAC;QAEF,MAAM,KACF,iBAAiB,CAAC,GAAG,CAAC,eAAe,EADnC,EAAE,gBAAgB,OACiB,EADZ,MAAM,cAA7B,oBAA+B,CACI,CAAC;QAC1C,OAAO,MAAM,CAAC;IAClB,CAAC,CAAA,CAAC;IAEW,yBAAM,GAAG,CAClB,OAA2B,EACL,EAAE;QACxB,IAAI,YAAE,CAAC,UAAU,CAAC,cAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC,KAAK,KAAK;YACzD,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;QAE/D,IAAA,kBAAQ,EAAC;YACL,IAAI,EAAE,KAAK;YACX,eAAe,EAAE,OAAO;YACxB,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC,SAAS;SACrE,CAAC,CAAC;QAEH,MAAM,MAAM,GACR,yBAAa,cAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,uCAAC,CAAC;QACnD,MAAM,MAAM,GACR,OAAO,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,CAAA,KAAK,QAAQ,IAAI,MAAM,CAAC,OAAO,KAAK,IAAI;YAC1D,CAAC,CAAC,MAAM,CAAC,OAAO;YAChB,CAAC,CAAC,MAAM,CAAC;QAEjB,IAAI;YACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uCAAO,eAAK,CAAC,MAAM;sCAAZ,eAAK,CAAC,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eAAC,MAAM,EAAE;SAC/B;QAAC,OAAO,GAAG,EAAE;YACV;;;eAAmC,GAAG;gBAClC,GAAG,CAAC,OAAO,GAAG,kCAAkC,CAAC;YACrD,MAAM,GAAG,CAAC;SACb;IACL,CAAC,CAAA,CAAC;IAEW,0BAAO,GAAG,GAA0B,EAAE;QAC/C,MAAM,SAAS,GAAG,IAAI,iCAAe,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;QAC7D,MAAM,SAAS,CAAC,OAAO,CACnB,GAAG,SAAS,0BAA0B,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAChE,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,SAAS,EAA8B,CAAC;QACvE,MAAM,OAAO,GAAW,MAAM,MAAM,CAAC,GAAG,EAAE,CAAC;QAC3C,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;QAExB,OAAO,OAAO,CAAC;IACnB,CAAC,CAAA,CAAC;AACN,CAAC,EArEgB,kBAAkB,kCAAlB,kBAAkB,QAqElC"}
1
+ {"version":3,"file":"NestiaConfigLoader.js","sourceRoot":"","sources":["../../../src/executable/internal/NestiaConfigLoader.ts"],"names":[],"mappings":"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"}
@@ -73,22 +73,23 @@ var E2eFileProgrammer;
73
73
  ...(route.output.typeName === "void"
74
74
  ? [` ${output}`]
75
75
  : [
76
- ` const output: ${primitive(config)(importer)(getTypeName(config)(importer)(route.output))} = `,
77
- ` ${output}`,
76
+ ` const output = ${output}`,
78
77
  ` ${SdkImportWizard_1.SdkImportWizard.typia(importer)}.assert(output);`,
79
78
  ]),
80
79
  `};`,
81
80
  ].join("\n");
82
81
  };
83
82
  const parameter = (config) => (importer) => (tab) => (param) => {
84
- const middle = `${SdkImportWizard_1.SdkImportWizard.typia(importer)}.random<${primitive(config)(importer)(getTypeName(config)(importer)(param))}>()`;
83
+ const middle = `${SdkImportWizard_1.SdkImportWizard.typia(importer)}.random<${wrap(config)(importer)(getTypeName(config)(importer)(param), param.category === "body")}>()`;
85
84
  return `${" ".repeat(4 * tab)}${middle},`;
86
85
  };
87
86
  const name = (route) => ["test", "api", ...route.accessors].join("_");
88
87
  const accessor = (route) => ["api", "functional", ...route.accessors].join(".");
89
- const primitive = (config) => (importer) => (name) => config.primitive !== false
90
- ? `${SdkImportWizard_1.SdkImportWizard.Primitive(importer)}<${name}>`
91
- : name;
88
+ const wrap = (config) => (importer) => (name, body) => config.primitive === false
89
+ ? name
90
+ : `${(body
91
+ ? SdkImportWizard_1.SdkImportWizard.Primitive
92
+ : SdkImportWizard_1.SdkImportWizard.Resolved)(importer)}<${name}>`;
92
93
  })(E2eFileProgrammer || (exports.E2eFileProgrammer = E2eFileProgrammer = {}));
93
94
  const getTypeName = (config) => (importer) => (p) => p.metadata
94
95
  ? SdkDtoGenerator_1.SdkDtoGenerator.decode(config)(importer)(p.metadata)
@@ -1 +1 @@
1
- {"version":3,"file":"E2eFileProgrammer.js","sourceRoot":"","sources":["../../../src/generates/internal/E2eFileProgrammer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,4CAAoB;AAIpB,mEAAgE;AAChE,uDAAoD;AACpD,uDAAoD;AAEpD,IAAiB,iBAAiB,CAgHjC;AAhHD,WAAiB,iBAAiB;IACjB,0BAAQ,GACjB,CAAC,MAAqB,EAAE,EAAE,CAC1B,CAAC,KAAuC,EAAE,EAAE,CAC5C,CAAO,KAAa,EAAiB,EAAE;QACnC,MAAM,QAAQ,GAAqB,IAAI,mCAAgB,EAAE,CAAC;QAC1D,IAAI,MAAM,CAAC,KAAK,KAAK,IAAI;YACrB,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,OAAO;gBAC7B,KAAK,MAAM,QAAQ,IAAI,KAAK,CAAC,CAAC,CAAC;oBAC3B,QAAQ,CAAC,QAAQ,CAAC;wBACd,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;wBACd,IAAI,EAAE,IAAI;wBACV,QAAQ;qBACX,CAAC,CAAC;QACf,QAAQ,CAAC,QAAQ,CAAC;YACd,IAAI,EAAE,KAAK;YACX,IAAI,EAAE,KAAK,CAAC,GAAG;YACf,QAAQ,EAAE,IAAI;YACd,IAAI,EAAE,KAAK;SACd,CAAC,CAAC;QAEH,MAAM,IAAI,GAAW,KAAK,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC;QACpD,MAAM,OAAO,GAAW;YACpB,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC;YAChC,EAAE;YACF,IAAI;SACP,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEb,MAAM,YAAE,CAAC,QAAQ,CAAC,SAAS,CACvB,GAAG,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,EACpC,OAAO,EACP,MAAM,CACT,CAAC;IACN,CAAC,CAAA,CAAC;IAEN,MAAM,KAAK,GACP,CAAC,MAAqB,EAAE,EAAE,CAC1B,CAAC,QAA0B,EAAE,EAAE,CAC/B,CAAC,KAAa,EAAU,EAAE;QACtB,MAAM,GAAG,GAAW,KAAK,CAAC,MAAM,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7D,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,IAAI,CACjC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,SAAS,IAAI,CAAC,CAAC,KAAK,KAAK,SAAS,CAC3D,CAAC;QACF,MAAM,MAAM,GAAG;YACX,SAAS,QAAQ,CAAC,KAAK,CAAC,GAAG;YAC3B,OAAO,KAAK,SAAS;gBACjB,CAAC,CAAC;oBACI,GAAG;oBACH,oBAAoB;oBACpB,gBAAgB;oBAChB,wCAAwC;oBACxC,cAAc,iCAAe,CAAC,KAAK,CAC/B,QAAQ,CACX,WAAW,WAAW,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CACrC,OAAO,CACV,MAAM;oBACP,QAAQ;oBACR,IAAI;iBACP;qBACI,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC;qBAC9C,IAAI,CAAC,IAAI,CAAC;gBACjB,CAAC,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,aAAa;YACzC,GAAG,KAAK,CAAC,UAAU;iBACd,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC;iBAC/C,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC;YAC1C,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI;SACnC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACb,OAAO;YACH,gBAAgB,IAAI,CAAC,KAAK,CAAC,YAAY;YACvC,iCAAiC;YACjC,uBAAuB;YACvB,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,KAAK,MAAM;gBAChC,CAAC,CAAC,CAAC,OAAO,MAAM,EAAE,CAAC;gBACnB,CAAC,CAAC;oBACI,qBAAqB,SAAS,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAC5C,WAAW,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAC9C,KAAK;oBACN,WAAW,MAAM,EAAE;oBACnB,OAAO,iCAAe,CAAC,KAAK,CACxB,QAAQ,CACX,kBAAkB;iBACtB,CAAC;YACR,IAAI;SACP,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjB,CAAC,CAAC;IAEN,MAAM,SAAS,GACX,CAAC,MAAqB,EAAE,EAAE,CAC1B,CAAC,QAA0B,EAAE,EAAE,CAC/B,CAAC,GAAW,EAAE,EAAE,CAChB,CAAC,KAAwB,EAAU,EAAE;QACjC,MAAM,MAAM,GAAW,GAAG,iCAAe,CAAC,KAAK,CAC3C,QAAQ,CACX,WAAW,SAAS,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CACnC,WAAW,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CACvC,KAAK,CAAC;QACP,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,MAAM,GAAG,CAAC;IAC9C,CAAC,CAAC;IAEN,MAAM,IAAI,GAAG,CAAC,KAAa,EAAU,EAAE,CACnC,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAElD,MAAM,QAAQ,GAAG,CAAC,KAAa,EAAU,EAAE,CACvC,CAAC,KAAK,EAAE,YAAY,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAExD,MAAM,SAAS,GACX,CAAC,MAAqB,EAAE,EAAE,CAC1B,CAAC,QAA0B,EAAE,EAAE,CAC/B,CAAC,IAAY,EAAU,EAAE,CACrB,MAAM,CAAC,SAAS,KAAK,KAAK;QACtB,CAAC,CAAC,GAAG,iCAAe,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,IAAI,GAAG;QACnD,CAAC,CAAC,IAAI,CAAC;AACvB,CAAC,EAhHgB,iBAAiB,iCAAjB,iBAAiB,QAgHjC;AACD,MAAM,WAAW,GACb,CAAC,MAAqB,EAAE,EAAE,CAC1B,CAAC,QAA0B,EAAE,EAAE,CAC/B,CAAC,CAAqC,EAAE,EAAE,CACtC,CAAC,CAAC,QAAQ;IACN,CAAC,CAAC,iCAAe,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IACtD,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC"}
1
+ {"version":3,"file":"E2eFileProgrammer.js","sourceRoot":"","sources":["../../../src/generates/internal/E2eFileProgrammer.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,7 @@ const Escaper_1 = require("typia/lib/utils/Escaper");
6
6
  const SdkDtoGenerator_1 = require("./SdkDtoGenerator");
7
7
  const SdkImportWizard_1 = require("./SdkImportWizard");
8
8
  const SdkSimulationProgrammer_1 = require("./SdkSimulationProgrammer");
9
+ const SdkTypeDefiner_1 = require("./SdkTypeDefiner");
9
10
  var SdkFunctionProgrammer;
10
11
  (function (SdkFunctionProgrammer) {
11
12
  SdkFunctionProgrammer.generate = (config) => (importer) => (route) => {
@@ -83,7 +84,7 @@ var SdkFunctionProgrammer;
83
84
  .map((line, i) => i === 0 ? line : `${space(10)}${line}`)
84
85
  .join("\n");
85
86
  const fetch = (tab) => [
86
- `${awa ? "await " : ""}${SdkImportWizard_1.SdkImportWizard.Fetcher(encrypted)(importer)}.fetch(`,
87
+ `${awa ? "await " : ""}${SdkImportWizard_1.SdkImportWizard.Fetcher(encrypted)(importer)}.${config.propagate === true ? "propagate" : "fetch"}(`,
87
88
  fetchArguments
88
89
  .map((param) => typeof param === "string"
89
90
  ? `${tab} ${param}`
@@ -203,13 +204,13 @@ var SdkFunctionProgrammer;
203
204
  // LIST UP TYPES
204
205
  const types = [];
205
206
  if (props.headers !== undefined)
206
- types.push(new Pair_1.Pair("Headers", getTypeName(config)(importer)(props.headers)));
207
+ types.push(new Pair_1.Pair("Headers", SdkTypeDefiner_1.SdkTypeDefiner.headers(config)(importer)(props.headers)));
207
208
  if (props.query !== undefined)
208
- types.push(new Pair_1.Pair("Query", getTypeName(config)(importer)(props.query)));
209
+ types.push(new Pair_1.Pair("Query", SdkTypeDefiner_1.SdkTypeDefiner.query(config)(importer)(props.query)));
209
210
  if (props.input !== undefined)
210
- types.push(new Pair_1.Pair("Input", getTypeName(config)(importer)(props.input)));
211
- if (route.output.typeName !== "void")
212
- types.push(new Pair_1.Pair("Output", getTypeName(config)(importer)(route.output)));
211
+ types.push(new Pair_1.Pair("Input", SdkTypeDefiner_1.SdkTypeDefiner.input(config)(importer)(props.input)));
212
+ if (config.propagate !== true && route.output.typeName !== "void")
213
+ types.push(new Pair_1.Pair("Output", SdkTypeDefiner_1.SdkTypeDefiner.output(config)(importer)(route)));
213
214
  // PATH WITH PARAMETERS
214
215
  const parameters = filter_path_parameters(route)(props.query);
215
216
  const path = compute_path({
@@ -220,9 +221,7 @@ var SdkFunctionProgrammer;
220
221
  return (`export namespace ${route.name} {\n` +
221
222
  (types.length !== 0
222
223
  ? types
223
- .map((tuple) => ` export type ${tuple.first} = ${config.primitive !== false
224
- ? `${SdkImportWizard_1.SdkImportWizard.Primitive(importer)}<${tuple.second}>`
225
- : tuple.second};`)
224
+ .map((tuple) => ` export type ${tuple.first} = ${tuple.second};`)
226
225
  .join("\n") + "\n"
227
226
  : "") +
228
227
  "\n" +
@@ -1 +1 @@
1
- {"version":3,"file":"SdkFunctionProgrammer.js","sourceRoot":"","sources":["../../../src/generates/internal/SdkFunctionProgrammer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SdkFunctionProgrammer.js","sourceRoot":"","sources":["../../../src/generates/internal/SdkFunctionProgrammer.ts"],"names":[],"mappings":"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"}
@@ -3,5 +3,6 @@ export declare namespace SdkImportWizard {
3
3
  const Fetcher: (encrypted: boolean) => (importer: ImportDictionary) => string;
4
4
  const IConnection: (importer: ImportDictionary) => string;
5
5
  const Primitive: (importer: ImportDictionary) => string;
6
+ const Resolved: (importer: ImportDictionary) => string;
6
7
  const typia: (importer: ImportDictionary) => string;
7
8
  }
@@ -14,6 +14,11 @@ var SdkImportWizard;
14
14
  library: "@nestia/fetcher",
15
15
  instance: "Primitive",
16
16
  });
17
+ SdkImportWizard.Resolved = (importer) => importer.external({
18
+ type: true,
19
+ library: "@nestia/fetcher",
20
+ instance: "Resolved",
21
+ });
17
22
  SdkImportWizard.typia = (importer) => importer.external({
18
23
  type: false,
19
24
  library: "typia",
@@ -1 +1 @@
1
- {"version":3,"file":"SdkImportWizard.js","sourceRoot":"","sources":["../../../src/generates/internal/SdkImportWizard.ts"],"names":[],"mappings":";;;AAEA,IAAiB,eAAe,CAwB/B;AAxBD,WAAiB,eAAe;IACf,uBAAO,GAAG,CAAC,SAAkB,EAAE,EAAE,CAC1C,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,YAAY,CAAC;IAEnC,2BAAW,GAAG,CAAC,QAA0B,EAAE,EAAE,CACtD,QAAQ,CAAC,QAAQ,CAAC;QACd,IAAI,EAAE,IAAI;QACV,OAAO,EAAE,iBAAiB;QAC1B,QAAQ,EAAE,aAAa;KAC1B,CAAC,CAAC;IAEM,yBAAS,GAAG,CAAC,QAA0B,EAAE,EAAE,CACpD,QAAQ,CAAC,QAAQ,CAAC;QACd,IAAI,EAAE,IAAI;QACV,OAAO,EAAE,iBAAiB;QAC1B,QAAQ,EAAE,WAAW;KACxB,CAAC,CAAC;IAEM,qBAAK,GAAG,CAAC,QAA0B,EAAE,EAAE,CAChD,QAAQ,CAAC,QAAQ,CAAC;QACd,IAAI,EAAE,KAAK;QACX,OAAO,EAAE,OAAO;QAChB,QAAQ,EAAE,IAAI;KACjB,CAAC,CAAC;AACX,CAAC,EAxBgB,eAAe,+BAAf,eAAe,QAwB/B;AAED,MAAM,YAAY,GAAG,CAAC,QAA0B,EAAE,EAAE,CAChD,QAAQ,CAAC,QAAQ,CAAC;IACd,IAAI,EAAE,KAAK;IACX,OAAO,EAAE,kCAAkC;IAC3C,QAAQ,EAAE,cAAc;CAC3B,CAAC,CAAC;AAEP,MAAM,gBAAgB,GAAG,CAAC,QAA0B,EAAE,EAAE,CACpD,QAAQ,CAAC,QAAQ,CAAC;IACd,IAAI,EAAE,KAAK;IACX,OAAO,EAAE,sCAAsC;IAC/C,QAAQ,EAAE,kBAAkB;CAC/B,CAAC,CAAC"}
1
+ {"version":3,"file":"SdkImportWizard.js","sourceRoot":"","sources":["../../../src/generates/internal/SdkImportWizard.ts"],"names":[],"mappings":";;;AAEA,IAAiB,eAAe,CA+B/B;AA/BD,WAAiB,eAAe;IACf,uBAAO,GAAG,CAAC,SAAkB,EAAE,EAAE,CAC1C,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,YAAY,CAAC;IAEnC,2BAAW,GAAG,CAAC,QAA0B,EAAE,EAAE,CACtD,QAAQ,CAAC,QAAQ,CAAC;QACd,IAAI,EAAE,IAAI;QACV,OAAO,EAAE,iBAAiB;QAC1B,QAAQ,EAAE,aAAa;KAC1B,CAAC,CAAC;IAEM,yBAAS,GAAG,CAAC,QAA0B,EAAE,EAAE,CACpD,QAAQ,CAAC,QAAQ,CAAC;QACd,IAAI,EAAE,IAAI;QACV,OAAO,EAAE,iBAAiB;QAC1B,QAAQ,EAAE,WAAW;KACxB,CAAC,CAAC;IAEM,wBAAQ,GAAG,CAAC,QAA0B,EAAE,EAAE,CACnD,QAAQ,CAAC,QAAQ,CAAC;QACd,IAAI,EAAE,IAAI;QACV,OAAO,EAAE,iBAAiB;QAC1B,QAAQ,EAAE,UAAU;KACvB,CAAC,CAAC;IAEM,qBAAK,GAAG,CAAC,QAA0B,EAAE,EAAE,CAChD,QAAQ,CAAC,QAAQ,CAAC;QACd,IAAI,EAAE,KAAK;QACX,OAAO,EAAE,OAAO;QAChB,QAAQ,EAAE,IAAI;KACjB,CAAC,CAAC;AACX,CAAC,EA/BgB,eAAe,+BAAf,eAAe,QA+B/B;AAED,MAAM,YAAY,GAAG,CAAC,QAA0B,EAAE,EAAE,CAChD,QAAQ,CAAC,QAAQ,CAAC;IACd,IAAI,EAAE,KAAK;IACX,OAAO,EAAE,kCAAkC;IAC3C,QAAQ,EAAE,cAAc;CAC3B,CAAC,CAAC;AAEP,MAAM,gBAAgB,GAAG,CAAC,QAA0B,EAAE,EAAE,CACpD,QAAQ,CAAC,QAAQ,CAAC;IACd,IAAI,EAAE,KAAK;IACX,OAAO,EAAE,sCAAsC;IAC/C,QAAQ,EAAE,kBAAkB;CAC/B,CAAC,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { INestiaConfig } from "../../INestiaConfig";
2
+ import { IRoute } from "../../structures/IRoute";
3
+ import { ImportDictionary } from "../../utils/ImportDictionary";
4
+ export declare namespace SdkTypeDefiner {
5
+ const name: (config: INestiaConfig) => (importer: ImportDictionary) => (p: IRoute.IParameter | IRoute.IOutput) => string;
6
+ const headers: (config: INestiaConfig) => (importer: ImportDictionary) => (param: IRoute.IParameter) => string;
7
+ const query: (config: INestiaConfig) => (importer: ImportDictionary) => (param: IRoute.IParameter) => string;
8
+ const input: (config: INestiaConfig) => (importer: ImportDictionary) => (param: IRoute.IParameter) => string;
9
+ const output: (config: INestiaConfig) => (importer: ImportDictionary) => (route: IRoute) => string;
10
+ }
@@ -0,0 +1,92 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SdkTypeDefiner = void 0;
4
+ const SdkDtoGenerator_1 = require("./SdkDtoGenerator");
5
+ var SdkTypeDefiner;
6
+ (function (SdkTypeDefiner) {
7
+ SdkTypeDefiner.name = (config) => (importer) => (p) => p.metadata
8
+ ? SdkDtoGenerator_1.SdkDtoGenerator.decode(config)(importer)(p.metadata)
9
+ : p.typeName;
10
+ SdkTypeDefiner.headers = (config) => (importer) => (param) => {
11
+ const type = SdkTypeDefiner.name(config)(importer)(param);
12
+ if (config.primitive === false)
13
+ return type;
14
+ const resolved = importer.external({
15
+ type: true,
16
+ library: "@nestia/fetcher",
17
+ instance: "Resolved",
18
+ });
19
+ return `${resolved}<${type}>`;
20
+ };
21
+ SdkTypeDefiner.query = (config) => (importer) => (param) => {
22
+ const type = SdkTypeDefiner.name(config)(importer)(param);
23
+ if (config.primitive === false)
24
+ return type;
25
+ const resolved = importer.external({
26
+ type: true,
27
+ library: "@nestia/fetcher",
28
+ instance: "Resolved",
29
+ });
30
+ return `${resolved}<${type}>`;
31
+ };
32
+ SdkTypeDefiner.input = (config) => (importer) => (param) => {
33
+ const type = SdkTypeDefiner.name(config)(importer)(param);
34
+ if (config.primitive === false)
35
+ return type;
36
+ const primitive = importer.external({
37
+ type: true,
38
+ library: "@nestia/fetcher",
39
+ instance: "Primitive",
40
+ });
41
+ return `${primitive}<${type}>`;
42
+ };
43
+ SdkTypeDefiner.output = (config) => (importer) => (route) => {
44
+ if (config.propagate !== true) {
45
+ const type = SdkTypeDefiner.name(config)(importer)(route.output);
46
+ if (type === "void" || config.primitive === false)
47
+ return type;
48
+ const primitive = importer.external({
49
+ type: true,
50
+ library: "@nestia/fetcher",
51
+ instance: "Primitive",
52
+ });
53
+ return `${primitive}<${type}>`;
54
+ }
55
+ const propagation = importer.external({
56
+ type: true,
57
+ library: "@nestia/fetcher",
58
+ instance: "IPropagation",
59
+ });
60
+ const branches = [
61
+ {
62
+ body: SdkTypeDefiner.name(config)(importer)(route.output),
63
+ status: route.status
64
+ ? String(route.status)
65
+ : route.method === "GET" ||
66
+ route.method === "DELETE" ||
67
+ route.method === "HEAD"
68
+ ? "200"
69
+ : "201",
70
+ success: "true",
71
+ },
72
+ ];
73
+ for (const [key, value] of Object.entries(route.exceptions))
74
+ branches.push({
75
+ body: SdkTypeDefiner.name(config)(importer)(value),
76
+ status: key.endsWith("XX")
77
+ ? `${propagation}.StatusRange<${key}>`
78
+ : key,
79
+ success: "false",
80
+ });
81
+ branches.push({
82
+ status: "number",
83
+ body: "any",
84
+ success: "boolean",
85
+ });
86
+ return ("\n" +
87
+ branches
88
+ .map((b) => ` | ${propagation}<${b.status}, ${b.body}, ${b.success}>`)
89
+ .join("\n"));
90
+ };
91
+ })(SdkTypeDefiner || (exports.SdkTypeDefiner = SdkTypeDefiner = {}));
92
+ //# sourceMappingURL=SdkTypeDefiner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SdkTypeDefiner.js","sourceRoot":"","sources":["../../../src/generates/internal/SdkTypeDefiner.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nestia/sdk",
3
- "version": "2.0.0-dev.20230906",
3
+ "version": "2.0.0-dev.20230907",
4
4
  "description": "Nestia SDK and Swagger generator",
5
5
  "main": "lib/index.js",
6
6
  "typings": "lib/index.d.ts",
@@ -35,19 +35,19 @@
35
35
  },
36
36
  "homepage": "https://nestia.io",
37
37
  "dependencies": {
38
- "@nestia/fetcher": "^2.0.0-dev.20230906",
38
+ "@nestia/fetcher": ">=2.0.0-dev.20230907",
39
39
  "cli": "^1.0.1",
40
40
  "glob": "^7.2.0",
41
41
  "path-to-regexp": "^6.2.1",
42
- "reflect-metadata": ">= 0.1.12",
42
+ "reflect-metadata": ">=0.1.12",
43
43
  "tgrid": "^0.8.8",
44
44
  "tsconfck": "^2.0.1",
45
45
  "tsconfig-paths": "^4.1.1",
46
46
  "tstl": "^2.5.13",
47
- "typia": "^5.0.2"
47
+ "typia": ">=5.0.2 <6.0.0"
48
48
  },
49
49
  "peerDependencies": {
50
- "@nestia/fetcher": ">=2.0.0-dev.20230906",
50
+ "@nestia/fetcher": ">=2.0.0-dev.20230907",
51
51
  "@nestjs/common": ">=7.0.1",
52
52
  "@nestjs/core": ">=7.0.1",
53
53
  "reflect-metadata": ">=0.1.12",
@@ -52,12 +52,27 @@ export interface INestiaConfig {
52
52
  */
53
53
  e2e?: string;
54
54
 
55
+ /**
56
+ * Whether to use propagation mode or not.
57
+ *
58
+ * If being configured, interaction functions of the SDK library would
59
+ * perform the propagation mode. The propagation mode means that never
60
+ * throwing exception even when status code is not 200 (or 201), but just
61
+ * returning the {@link IPropagation} typed instance, which can specify its body
62
+ * type through discriminated union determined by status code.
63
+ *
64
+ * @default false
65
+ */
66
+ propagate?: boolean;
67
+
55
68
  /**
56
69
  * Whether to clone DTO structures or not.
57
70
  *
58
71
  * If being configured, all of DTOs used in the backend server would be cloned
59
72
  * into the `structures` directory, and the SDK library would be refer to the
60
73
  * cloned DTOs instead of the original.
74
+ *
75
+ * @default false
61
76
  */
62
77
  clone?: boolean;
63
78
 
@@ -80,10 +80,7 @@ export namespace E2eFileProgrammer {
80
80
  ...(route.output.typeName === "void"
81
81
  ? [` ${output}`]
82
82
  : [
83
- ` const output: ${primitive(config)(importer)(
84
- getTypeName(config)(importer)(route.output),
85
- )} = `,
86
- ` ${output}`,
83
+ ` const output = ${output}`,
87
84
  ` ${SdkImportWizard.typia(
88
85
  importer,
89
86
  )}.assert(output);`,
@@ -99,8 +96,9 @@ export namespace E2eFileProgrammer {
99
96
  (param: IRoute.IParameter): string => {
100
97
  const middle: string = `${SdkImportWizard.typia(
101
98
  importer,
102
- )}.random<${primitive(config)(importer)(
99
+ )}.random<${wrap(config)(importer)(
103
100
  getTypeName(config)(importer)(param),
101
+ param.category === "body",
104
102
  )}>()`;
105
103
  return `${" ".repeat(4 * tab)}${middle},`;
106
104
  };
@@ -111,13 +109,15 @@ export namespace E2eFileProgrammer {
111
109
  const accessor = (route: IRoute): string =>
112
110
  ["api", "functional", ...route.accessors].join(".");
113
111
 
114
- const primitive =
112
+ const wrap =
115
113
  (config: INestiaConfig) =>
116
114
  (importer: ImportDictionary) =>
117
- (name: string): string =>
118
- config.primitive !== false
119
- ? `${SdkImportWizard.Primitive(importer)}<${name}>`
120
- : name;
115
+ (name: string, body: boolean): string =>
116
+ config.primitive === false
117
+ ? name
118
+ : `${(body
119
+ ? SdkImportWizard.Primitive
120
+ : SdkImportWizard.Resolved)(importer)}<${name}>`;
121
121
  }
122
122
  const getTypeName =
123
123
  (config: INestiaConfig) =>
@@ -10,6 +10,7 @@ import { ImportDictionary } from "../../utils/ImportDictionary";
10
10
  import { SdkDtoGenerator } from "./SdkDtoGenerator";
11
11
  import { SdkImportWizard } from "./SdkImportWizard";
12
12
  import { SdkSimulationProgrammer } from "./SdkSimulationProgrammer";
13
+ import { SdkTypeDefiner } from "./SdkTypeDefiner";
13
14
 
14
15
  export namespace SdkFunctionProgrammer {
15
16
  export const generate =
@@ -133,7 +134,9 @@ export namespace SdkFunctionProgrammer {
133
134
  [
134
135
  `${awa ? "await " : ""}${SdkImportWizard.Fetcher(
135
136
  encrypted,
136
- )(importer)}.fetch(`,
137
+ )(importer)}.${
138
+ config.propagate === true ? "propagate" : "fetch"
139
+ }(`,
137
140
  fetchArguments
138
141
  .map((param) =>
139
142
  typeof param === "string"
@@ -325,28 +328,28 @@ export namespace SdkFunctionProgrammer {
325
328
  types.push(
326
329
  new Pair(
327
330
  "Headers",
328
- getTypeName(config)(importer)(props.headers),
331
+ SdkTypeDefiner.headers(config)(importer)(props.headers),
329
332
  ),
330
333
  );
331
334
  if (props.query !== undefined)
332
335
  types.push(
333
336
  new Pair(
334
337
  "Query",
335
- getTypeName(config)(importer)(props.query),
338
+ SdkTypeDefiner.query(config)(importer)(props.query),
336
339
  ),
337
340
  );
338
341
  if (props.input !== undefined)
339
342
  types.push(
340
343
  new Pair(
341
344
  "Input",
342
- getTypeName(config)(importer)(props.input),
345
+ SdkTypeDefiner.input(config)(importer)(props.input),
343
346
  ),
344
347
  );
345
- if (route.output.typeName !== "void")
348
+ if (config.propagate !== true && route.output.typeName !== "void")
346
349
  types.push(
347
350
  new Pair(
348
351
  "Output",
349
- getTypeName(config)(importer)(route.output),
352
+ SdkTypeDefiner.output(config)(importer)(route),
350
353
  ),
351
354
  );
352
355
 
@@ -365,13 +368,7 @@ export namespace SdkFunctionProgrammer {
365
368
  ? types
366
369
  .map(
367
370
  (tuple) =>
368
- ` export type ${tuple.first} = ${
369
- config.primitive !== false
370
- ? `${SdkImportWizard.Primitive(
371
- importer,
372
- )}<${tuple.second}>`
373
- : tuple.second
374
- };`,
371
+ ` export type ${tuple.first} = ${tuple.second};`,
375
372
  )
376
373
  .join("\n") + "\n"
377
374
  : "") +
@@ -18,6 +18,13 @@ export namespace SdkImportWizard {
18
18
  instance: "Primitive",
19
19
  });
20
20
 
21
+ export const Resolved = (importer: ImportDictionary) =>
22
+ importer.external({
23
+ type: true,
24
+ library: "@nestia/fetcher",
25
+ instance: "Resolved",
26
+ });
27
+
21
28
  export const typia = (importer: ImportDictionary) =>
22
29
  importer.external({
23
30
  type: false,
@@ -0,0 +1,123 @@
1
+ import { INestiaConfig } from "../../INestiaConfig";
2
+ import { IRoute } from "../../structures/IRoute";
3
+ import { ImportDictionary } from "../../utils/ImportDictionary";
4
+ import { SdkDtoGenerator } from "./SdkDtoGenerator";
5
+
6
+ export namespace SdkTypeDefiner {
7
+ export const name =
8
+ (config: INestiaConfig) =>
9
+ (importer: ImportDictionary) =>
10
+ (p: IRoute.IParameter | IRoute.IOutput): string =>
11
+ p.metadata
12
+ ? SdkDtoGenerator.decode(config)(importer)(p.metadata)
13
+ : p.typeName;
14
+
15
+ export const headers =
16
+ (config: INestiaConfig) =>
17
+ (importer: ImportDictionary) =>
18
+ (param: IRoute.IParameter): string => {
19
+ const type: string = name(config)(importer)(param);
20
+ if (config.primitive === false) return type;
21
+
22
+ const resolved: string = importer.external({
23
+ type: true,
24
+ library: "@nestia/fetcher",
25
+ instance: "Resolved",
26
+ });
27
+ return `${resolved}<${type}>`;
28
+ };
29
+
30
+ export const query =
31
+ (config: INestiaConfig) =>
32
+ (importer: ImportDictionary) =>
33
+ (param: IRoute.IParameter): string => {
34
+ const type: string = name(config)(importer)(param);
35
+ if (config.primitive === false) return type;
36
+
37
+ const resolved: string = importer.external({
38
+ type: true,
39
+ library: "@nestia/fetcher",
40
+ instance: "Resolved",
41
+ });
42
+ return `${resolved}<${type}>`;
43
+ };
44
+
45
+ export const input =
46
+ (config: INestiaConfig) =>
47
+ (importer: ImportDictionary) =>
48
+ (param: IRoute.IParameter): string => {
49
+ const type: string = name(config)(importer)(param);
50
+ if (config.primitive === false) return type;
51
+
52
+ const primitive: string = importer.external({
53
+ type: true,
54
+ library: "@nestia/fetcher",
55
+ instance: "Primitive",
56
+ });
57
+ return `${primitive}<${type}>`;
58
+ };
59
+
60
+ export const output =
61
+ (config: INestiaConfig) =>
62
+ (importer: ImportDictionary) =>
63
+ (route: IRoute): string => {
64
+ if (config.propagate !== true) {
65
+ const type: string = name(config)(importer)(route.output);
66
+ if (type === "void" || config.primitive === false) return type;
67
+
68
+ const primitive: string = importer.external({
69
+ type: true,
70
+ library: "@nestia/fetcher",
71
+ instance: "Primitive",
72
+ });
73
+ return `${primitive}<${type}>`;
74
+ }
75
+
76
+ const propagation: string = importer.external({
77
+ type: true,
78
+ library: "@nestia/fetcher",
79
+ instance: "IPropagation",
80
+ });
81
+ const branches: IBranch[] = [
82
+ {
83
+ body: name(config)(importer)(route.output),
84
+ status: route.status
85
+ ? String(route.status)
86
+ : route.method === "GET" ||
87
+ route.method === "DELETE" ||
88
+ route.method === "HEAD"
89
+ ? "200"
90
+ : "201",
91
+ success: "true",
92
+ },
93
+ ];
94
+ for (const [key, value] of Object.entries(route.exceptions))
95
+ branches.push({
96
+ body: name(config)(importer)(value),
97
+ status: key.endsWith("XX")
98
+ ? `${propagation}.StatusRange<${key}>`
99
+ : key,
100
+ success: "false",
101
+ });
102
+ branches.push({
103
+ status: "number",
104
+ body: "any",
105
+ success: "boolean",
106
+ });
107
+ return (
108
+ "\n" +
109
+ branches
110
+ .map(
111
+ (b) =>
112
+ ` | ${propagation}<${b.status}, ${b.body}, ${b.success}>`,
113
+ )
114
+ .join("\n")
115
+ );
116
+ };
117
+ }
118
+
119
+ interface IBranch {
120
+ body: string;
121
+ status: string;
122
+ success: string;
123
+ }