@nestia/migrate 10.0.2 → 11.0.0-dev.20260305

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 (162) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +93 -93
  3. package/package.json +32 -46
  4. package/src/NestiaMigrateApplication.ts +161 -159
  5. package/src/analyzers/NestiaMigrateControllerAnalyzer.ts +51 -51
  6. package/src/archivers/NestiaMigrateFileArchiver.ts +28 -28
  7. package/src/bundles/NEST_TEMPLATE.ts +48 -48
  8. package/src/bundles/SDK_TEMPLATE.ts +21 -21
  9. package/src/executable/NestiaMigrateCommander.ts +98 -98
  10. package/src/executable/NestiaMigrateInquirer.ts +106 -106
  11. package/src/executable/bundle.js +125 -125
  12. package/src/executable/migrate.ts +7 -7
  13. package/src/factories/TypeLiteralFactory.ts +57 -57
  14. package/src/index.ts +4 -4
  15. package/src/module.ts +6 -2
  16. package/src/programmers/NestiaMigrateApiFileProgrammer.ts +55 -55
  17. package/src/programmers/NestiaMigrateApiFunctionProgrammer.ts +347 -344
  18. package/src/programmers/NestiaMigrateApiNamespaceProgrammer.ts +517 -514
  19. package/src/programmers/NestiaMigrateApiProgrammer.ts +107 -107
  20. package/src/programmers/NestiaMigrateApiSimulationProgrammer.ts +308 -309
  21. package/src/programmers/NestiaMigrateApiStartProgrammer.ts +197 -198
  22. package/src/programmers/NestiaMigrateDtoProgrammer.ts +98 -98
  23. package/src/programmers/NestiaMigrateE2eFileProgrammer.ts +153 -153
  24. package/src/programmers/NestiaMigrateE2eProgrammer.ts +48 -48
  25. package/src/programmers/NestiaMigrateImportProgrammer.ts +118 -118
  26. package/src/programmers/NestiaMigrateNestControllerProgrammer.ts +69 -69
  27. package/src/programmers/NestiaMigrateNestMethodProgrammer.ts +409 -406
  28. package/src/programmers/NestiaMigrateNestModuleProgrammer.ts +65 -65
  29. package/src/programmers/NestiaMigrateNestProgrammer.ts +88 -88
  30. package/src/programmers/NestiaMigrateSchemaProgrammer.ts +465 -467
  31. package/src/structures/INestiaMigrateConfig.ts +19 -19
  32. package/src/structures/INestiaMigrateContext.ts +9 -9
  33. package/src/structures/INestiaMigrateController.ts +8 -8
  34. package/src/structures/INestiaMigrateDto.ts +8 -8
  35. package/src/structures/INestiaMigrateFile.ts +5 -5
  36. package/src/structures/INestiaMigrateProgram.ts +11 -11
  37. package/src/structures/INestiaMigrateSchema.ts +4 -4
  38. package/src/utils/FilePrinter.ts +49 -49
  39. package/src/utils/MapUtil.ts +13 -13
  40. package/src/utils/SetupWizard.ts +12 -12
  41. package/src/utils/StringUtil.ts +114 -113
  42. package/src/utils/openapi-down-convert/RefVisitor.ts +134 -134
  43. package/src/utils/openapi-down-convert/converter.ts +536 -536
  44. package/lib/NestiaMigrateApplication.d.ts +0 -24
  45. package/lib/NestiaMigrateApplication.js +0 -18757
  46. package/lib/NestiaMigrateApplication.js.map +0 -1
  47. package/lib/analyzers/NestiaMigrateControllerAnalyzer.d.ts +0 -5
  48. package/lib/analyzers/NestiaMigrateControllerAnalyzer.js +0 -46
  49. package/lib/analyzers/NestiaMigrateControllerAnalyzer.js.map +0 -1
  50. package/lib/archivers/NestiaMigrateFileArchiver.d.ts +0 -8
  51. package/lib/archivers/NestiaMigrateFileArchiver.js +0 -36
  52. package/lib/archivers/NestiaMigrateFileArchiver.js.map +0 -1
  53. package/lib/bundles/NEST_TEMPLATE.d.ts +0 -1
  54. package/lib/bundles/NEST_TEMPLATE.js +0 -55
  55. package/lib/bundles/NEST_TEMPLATE.js.map +0 -1
  56. package/lib/bundles/SDK_TEMPLATE.d.ts +0 -1
  57. package/lib/bundles/SDK_TEMPLATE.js +0 -27
  58. package/lib/bundles/SDK_TEMPLATE.js.map +0 -1
  59. package/lib/executable/NestiaMigrateCommander.d.ts +0 -4
  60. package/lib/executable/NestiaMigrateCommander.js +0 -125
  61. package/lib/executable/NestiaMigrateCommander.js.map +0 -1
  62. package/lib/executable/NestiaMigrateInquirer.d.ts +0 -12
  63. package/lib/executable/NestiaMigrateInquirer.js +0 -94
  64. package/lib/executable/NestiaMigrateInquirer.js.map +0 -1
  65. package/lib/executable/migrate.d.ts +0 -2
  66. package/lib/executable/migrate.js +0 -9
  67. package/lib/executable/migrate.js.map +0 -1
  68. package/lib/factories/TypeLiteralFactory.d.ts +0 -4
  69. package/lib/factories/TypeLiteralFactory.js +0 -35
  70. package/lib/factories/TypeLiteralFactory.js.map +0 -1
  71. package/lib/index.d.ts +0 -3
  72. package/lib/index.js +0 -42
  73. package/lib/index.js.map +0 -1
  74. package/lib/index.mjs +0 -19359
  75. package/lib/index.mjs.map +0 -1
  76. package/lib/module.d.ts +0 -2
  77. package/lib/module.js +0 -19
  78. package/lib/module.js.map +0 -1
  79. package/lib/programmers/NestiaMigrateApiFileProgrammer.d.ts +0 -13
  80. package/lib/programmers/NestiaMigrateApiFileProgrammer.js +0 -40
  81. package/lib/programmers/NestiaMigrateApiFileProgrammer.js.map +0 -1
  82. package/lib/programmers/NestiaMigrateApiFunctionProgrammer.d.ts +0 -14
  83. package/lib/programmers/NestiaMigrateApiFunctionProgrammer.js +0 -179
  84. package/lib/programmers/NestiaMigrateApiFunctionProgrammer.js.map +0 -1
  85. package/lib/programmers/NestiaMigrateApiNamespaceProgrammer.d.ts +0 -14
  86. package/lib/programmers/NestiaMigrateApiNamespaceProgrammer.js +0 -226
  87. package/lib/programmers/NestiaMigrateApiNamespaceProgrammer.js.map +0 -1
  88. package/lib/programmers/NestiaMigrateApiProgrammer.d.ts +0 -4
  89. package/lib/programmers/NestiaMigrateApiProgrammer.js +0 -82
  90. package/lib/programmers/NestiaMigrateApiProgrammer.js.map +0 -1
  91. package/lib/programmers/NestiaMigrateApiSimulationProgrammer.d.ts +0 -14
  92. package/lib/programmers/NestiaMigrateApiSimulationProgrammer.js +0 -142
  93. package/lib/programmers/NestiaMigrateApiSimulationProgrammer.js.map +0 -1
  94. package/lib/programmers/NestiaMigrateApiStartProgrammer.d.ts +0 -4
  95. package/lib/programmers/NestiaMigrateApiStartProgrammer.js +0 -80
  96. package/lib/programmers/NestiaMigrateApiStartProgrammer.js.map +0 -1
  97. package/lib/programmers/NestiaMigrateDtoProgrammer.d.ts +0 -15
  98. package/lib/programmers/NestiaMigrateDtoProgrammer.js +0 -65
  99. package/lib/programmers/NestiaMigrateDtoProgrammer.js.map +0 -1
  100. package/lib/programmers/NestiaMigrateE2eFileProgrammer.d.ts +0 -14
  101. package/lib/programmers/NestiaMigrateE2eFileProgrammer.js +0 -81
  102. package/lib/programmers/NestiaMigrateE2eFileProgrammer.js.map +0 -1
  103. package/lib/programmers/NestiaMigrateE2eProgrammer.d.ts +0 -4
  104. package/lib/programmers/NestiaMigrateE2eProgrammer.js +0 -32
  105. package/lib/programmers/NestiaMigrateE2eProgrammer.js.map +0 -1
  106. package/lib/programmers/NestiaMigrateImportProgrammer.d.ts +0 -18
  107. package/lib/programmers/NestiaMigrateImportProgrammer.js +0 -65
  108. package/lib/programmers/NestiaMigrateImportProgrammer.js.map +0 -1
  109. package/lib/programmers/NestiaMigrateNestControllerProgrammer.d.ts +0 -12
  110. package/lib/programmers/NestiaMigrateNestControllerProgrammer.js +0 -46
  111. package/lib/programmers/NestiaMigrateNestControllerProgrammer.js.map +0 -1
  112. package/lib/programmers/NestiaMigrateNestMethodProgrammer.d.ts +0 -15
  113. package/lib/programmers/NestiaMigrateNestMethodProgrammer.js +0 -224
  114. package/lib/programmers/NestiaMigrateNestMethodProgrammer.js.map +0 -1
  115. package/lib/programmers/NestiaMigrateNestModuleProgrammer.d.ts +0 -5
  116. package/lib/programmers/NestiaMigrateNestModuleProgrammer.js +0 -29
  117. package/lib/programmers/NestiaMigrateNestModuleProgrammer.js.map +0 -1
  118. package/lib/programmers/NestiaMigrateNestProgrammer.d.ts +0 -4
  119. package/lib/programmers/NestiaMigrateNestProgrammer.js +0 -65
  120. package/lib/programmers/NestiaMigrateNestProgrammer.js.map +0 -1
  121. package/lib/programmers/NestiaMigrateSchemaProgrammer.d.ts +0 -10
  122. package/lib/programmers/NestiaMigrateSchemaProgrammer.js +0 -341
  123. package/lib/programmers/NestiaMigrateSchemaProgrammer.js.map +0 -1
  124. package/lib/structures/INestiaMigrateConfig.d.ts +0 -15
  125. package/lib/structures/INestiaMigrateConfig.js +0 -3
  126. package/lib/structures/INestiaMigrateConfig.js.map +0 -1
  127. package/lib/structures/INestiaMigrateContext.d.ts +0 -7
  128. package/lib/structures/INestiaMigrateContext.js +0 -3
  129. package/lib/structures/INestiaMigrateContext.js.map +0 -1
  130. package/lib/structures/INestiaMigrateController.d.ts +0 -7
  131. package/lib/structures/INestiaMigrateController.js +0 -3
  132. package/lib/structures/INestiaMigrateController.js.map +0 -1
  133. package/lib/structures/INestiaMigrateDto.d.ts +0 -7
  134. package/lib/structures/INestiaMigrateDto.js +0 -3
  135. package/lib/structures/INestiaMigrateDto.js.map +0 -1
  136. package/lib/structures/INestiaMigrateFile.d.ts +0 -5
  137. package/lib/structures/INestiaMigrateFile.js +0 -3
  138. package/lib/structures/INestiaMigrateFile.js.map +0 -1
  139. package/lib/structures/INestiaMigrateProgram.d.ts +0 -9
  140. package/lib/structures/INestiaMigrateProgram.js +0 -3
  141. package/lib/structures/INestiaMigrateProgram.js.map +0 -1
  142. package/lib/structures/INestiaMigrateSchema.d.ts +0 -4
  143. package/lib/structures/INestiaMigrateSchema.js +0 -3
  144. package/lib/structures/INestiaMigrateSchema.js.map +0 -1
  145. package/lib/utils/FilePrinter.d.ts +0 -9
  146. package/lib/utils/FilePrinter.js +0 -35
  147. package/lib/utils/FilePrinter.js.map +0 -1
  148. package/lib/utils/MapUtil.d.ts +0 -3
  149. package/lib/utils/MapUtil.js +0 -15
  150. package/lib/utils/MapUtil.js.map +0 -1
  151. package/lib/utils/SetupWizard.d.ts +0 -3
  152. package/lib/utils/SetupWizard.js +0 -18
  153. package/lib/utils/SetupWizard.js.map +0 -1
  154. package/lib/utils/StringUtil.d.ts +0 -6
  155. package/lib/utils/StringUtil.js +0 -108
  156. package/lib/utils/StringUtil.js.map +0 -1
  157. package/lib/utils/openapi-down-convert/RefVisitor.d.ts +0 -52
  158. package/lib/utils/openapi-down-convert/RefVisitor.js +0 -102
  159. package/lib/utils/openapi-down-convert/RefVisitor.js.map +0 -1
  160. package/lib/utils/openapi-down-convert/converter.d.ts +0 -146
  161. package/lib/utils/openapi-down-convert/converter.js +0 -441
  162. package/lib/utils/openapi-down-convert/converter.js.map +0 -1
package/lib/index.mjs.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.mjs","sources":["../src/bundles/NEST_TEMPLATE.ts","../src/bundles/SDK_TEMPLATE.ts","../src/utils/FilePrinter.ts","../src/utils/StringUtil.ts","../src/programmers/NestiaMigrateSchemaProgrammer.ts","../src/programmers/NestiaMigrateApiFunctionProgrammer.ts","../src/programmers/NestiaMigrateApiSimulationProgrammer.ts","../src/programmers/NestiaMigrateApiNamespaceProgrammer.ts","../src/factories/TypeLiteralFactory.ts","../src/utils/MapUtil.ts","../src/programmers/NestiaMigrateImportProgrammer.ts","../src/programmers/NestiaMigrateApiFileProgrammer.ts","../src/programmers/NestiaMigrateDtoProgrammer.ts","../src/programmers/NestiaMigrateApiProgrammer.ts","../src/programmers/NestiaMigrateE2eFileProgrammer.ts","../src/programmers/NestiaMigrateApiStartProgrammer.ts","../src/programmers/NestiaMigrateE2eProgrammer.ts","../src/analyzers/NestiaMigrateControllerAnalyzer.ts","../src/programmers/NestiaMigrateNestMethodProgrammer.ts","../src/programmers/NestiaMigrateNestControllerProgrammer.ts","../src/programmers/NestiaMigrateNestModuleProgrammer.ts","../src/programmers/NestiaMigrateNestProgrammer.ts","../src/NestiaMigrateApplication.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["NEST_TEMPLATE","LICENSE","SDK_TEMPLATE","FilePrinter","description","node","comment","length","ts","addSyntheticLeadingComment","SyntaxKind","MultiLineCommentTrivia","split","join","map","str","newLine","factory","createExpressionStatement","createIdentifier","write","props","script","createPrinter","NewLineKind","LineFeed","printFile","createSourceFile","statements","createToken","EndOfFileToken","NodeFlags","None","top","StringUtil","capitalize","toUpperCase","slice","toLowerCase","splitWithNormalization","path","normalize","trim","filter","escapeDuplicate","keep","change","includes","escapeNonVariable","escape","before","after","VARIABLE_REPLACERS","i","toString","RESERVED","has","Set","NestiaMigrateSchemaProgrammer","union","OpenApiTypeChecker","isUnknown","schema","TypeFactory","keyword","type","isConstant","writeConstant","importer","isBoolean","writeBoolean","isInteger","writeInteger","isNumber","writeNumber","isString","writeString","isArray","writeArray","components","isTuple","writeTuple","isObject","writeObject","isReference","writeReference","isOneOf","writeUnion","elements","oneOf","isNull","createNode","push","createUnionTypeNode","createLiteralTypeNode","const","createTrue","createFalse","createPrefixUnaryExpression","MinusToken","createNumericLiteral","createStringLiteral","writeNumeric","tag","intersection","default","undefined","minimum","exclusiveMinimum","maximum","exclusiveMaximum","multipleOf","createIntersectionTypeNode","format","createTypeReferenceNode","minLength","maxLength","pattern","FormatCheatSheet","contentMediaType","createArrayTypeNode","items","minItems","maxItems","uniqueItems","createTupleTypeNode","prefixItems","item","additionalItems","createRestTypeNode","createKeywordTypeNode","AnyKeyword","regular","createTypeLiteralNode","Object","entries","properties","key","value","index","title","writeRegularProperty","required","flat","dynamic","writeDynamicProperty","additionalProperties","valueTypeNode","createPropertySignature","readOnly","ReadonlyKeyword","Escaper","variable","QuestionToken","isUnionTypeNode","types","writeComment","createIndexSignature","createParameterDeclaration","$ref","startsWith","name","dto","text","plugins","deprecated","input","eraseCommentTags","p","String","lines","s","COMMENT_TAGS","every","NestiaMigrateApiFunctionProgrammer","ctx","createFunctionDeclaration","createModifier","ExportKeyword","AsyncKeyword","route","accessor","at","writeParameterDeclarations","success","createBlock","writeBody","writeDescription","config","connectionName","connection","IdentifierFactory","parameter","external","library","headers","isProps","parameters","query","body","operation","requestBody","emendedPath","author","encrypted","contentType","property","access","fetch","createAwaitExpression","createCallExpression","createObjectLiteralExpression","createSpreadAssignment","createPropertyAssignment","getArguments","createNull","simulate","createConditionalExpression","createStrictEquality","getHeaders","createReturnStatement","StatementFactory","constant","createBinaryExpression","QuestionQuestionEqualsToken","h","JSON","stringify","EqualsToken","directives","line","l","parts","substring","NestiaMigrateApiSimulationProgrammer","random","output","createArrowFunction","caller","assert","category","validator","NestiaMigrateApiNamespaceProgrammer","writePathCallExpression","individual","base","tryAndCatch","createTryStatement","createCatchClause","createIfStatement","createLogicalNot","createThrowStatement","createAsExpression","expression","createVariableStatement","createVariableDeclarationList","createVariableDeclaration","Const","writeTypes","createModuleDeclaration","createModuleBlock","writeMetadata","writePathFunction","Namespace","array","declare","createTypeAliasDeclaration","fromEntries","method","getPath","LiteralFactory","empty","out","template","createTemplateExpression","createTemplateHead","arr","createTemplateSpan","find","QuestionQuestionToken","createTemplateMiddle","createTemplateTail","computeName","variables","local","createNewExpression","createForOfStatement","createArrayBindingPattern","createBindingElement","createContinueStatement","createPropertyAccessExpression","ExpressionFactory","number","TypeLiteralFactory","generate","generateBoolean","generateNumber","generatestring","generateNull","Array","generateTuple","generateObject","num","bool","obj","MapUtil","take","dict","generator","oldbie","get","set","NestiaMigrateImportProgrammer","constructor","this","external_","Map","dtos_","size","clause","instances","add","namespace","file","createQualifiedName","arg","instance","toStatements","dtoPath","current","createImportDeclaration","createImportClause","createNamedImports","createImportSpecifier","NestiaMigrateApiFileProgrammer","routes","ref","repeat","children","child","createExportDeclaration","createNamespaceExport","NestiaMigrateDtoProgrammer","compose","schemas","emendedKey","prepare","writeAlias","programmer","accessors","modulo","forEach","acc","indexOf","NestiaMigrateApiProgrammer","HashMap","x","hash","y","application","last","document","_s","partial","files","toJSON","second","mode","writeDtoFile","iterate","internal","values","NestiaMigrateE2eFunctionProgrammer","writeCallExpressionn","NestiaMigrateApiStartProgrammer","context","main","writeMain","pick","writeStarter","writeConnection","servers","url","createPrefixMinus","rand","Math","min","floor","NestiaMigrateE2eProgrammer","r","writeFile","location","content","func","NestiaMigrateControllerAnalyzer","analyze","collection","controllers","col","splitPath","splitLocation","minPath","minLocation","splice","getSplitIndex","n","NestiaMigrateNestMethodProgrammer","createMethodDeclaration","writeMethodDecorators","PublicKeyword","writeParameters","lib","decorators","writeExampleDecorators","media","createDecorator","localPath","controller","router","exceptions","isNaN","Number","response","writeDtoParameter","arguments","example","examples","kind","NestiaMigrateNestControllerProgrammer","$class","createClassDeclaration","controllerMethod","NestiaMigrateNestModuleProgrammer","$import","c","replace","createArrayLiteralExpression","NestiaMigrateNestProgrammer","NestiaMigrateApplication","data_","HttpMigration","OpenApi","convert","_io0","openapi","RegExp","test","elem","_io1","info","_io4","_io7","paths","_io34","webhooks","security","_io46","tags","_io47","_io2","keys","validate","result","data","getData","getErrors","errors","nest","createContext","e2e","package","renameSlug","sdk","slug"],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKO,UALP,GAKOgO;QACnB,IAAIqG,OAAOtR,YAAY,OAAO,OAAOsR;QACrC,OAAO;YACLtR,SAAS;YACTuR,MAAM,IAAIzB,yBAAyBG,QAAQC,QAAQjF;;AAEvD;IAKO,OAAAuG;QACL,OAAOtJ,KAAK6H;AACd;IAGO,SAAA0B;QACL,OAAOvJ,KAAK6H,MAAM2B;AACpB;IAEO,IAAAC,CAAKvR;QACV,MAAM2L,UAAiC6F,cACrC,QACA1J,KAAK6H,OACL3P;QAEF,MAAMgL,QAAgC;eACjCtO,OAAOqI,YACRrI,OAAOC,QAAQvI,eAAe2C,OAC5B,EAAE8F,SACAA,IAAIuB,WAAW,0BAA0B,SACzCvB,IAAIuB,WAAW,0BAA0B,SACzCvB,IAAIuB,WAAW,2BAA2B,SAC1CvB,IAAIuB,WAAW,qBAAqB;eAGvCqR,4BAA4Bja,MAAMmW;eAClCrB,2BAA2B9U,MAAMmW;eAChC3L,OAAOyR,MAAMjF,2BAA2BhX,MAAMmW,WAAW;eACzD3L,OAAO5H,YAAY,QACnB;gBACE,oBAAoBhE,cAAc,oBAAoBmb,QACpD,iBACA;gBAGJ;;QAEN,OAAOvP,OAAO0R,UAAUC,WAAW3R,OAAO0R,SAAS1G,SAASA;AAC9D;IAEO,GAAA4G,CAAI5R;QACT,MAAM2L,UAAiC6F,cACrC,OACA1J,KAAK6H,OACL3P;QAEF,MAAMgL,QAAgC;eACjCtO,OAAOqI,YACRrI,OAAOC,QAAQrI,cAAcyC,OAC3B,EAAE8F,SACAA,IAAIuB,WAAW,sBAAsB,SACrCvB,IAAIuB,WAAW,sBAAsB,SACrCvB,IAAIuB,WAAW,qBAAqB;eAGvCkM,2BAA2B9U,MAAMmW;eACjCD,gCAAgClW,MAAMmW;eACrC3L,OAAOyR,MAAMjF,2BAA2BhX,MAAMmW,WAAW;YAC7D,gBAAgBrJ,KAAKC,UAAUuF,KAAK+C,UAAU,MAAM;;QAEtD,OAAO7K,OAAO0R,UAAUC,WAAW3R,OAAO0R,SAAS1G,SAASA;AAC9D;;;AAUF,MAAMwG,gBAAgB,CACpBrG,MACAR,aACA3K,YAEO;IACLmL;IACAR;IACA3K;;;AAIJ,MAAM2R,aAAa,CACjBE,MACA7G,UAEOtO,OAAOqI,YACZrI,OAAOC,QAAQqO,OAAO9V,IAAI,EAAE2H,KAAKC,WAAW,EAC1CD,KACAC,MAAM9H,MAAM,yBAAyBC,KAAK4c;;;;;;;"}
package/lib/module.d.ts DELETED
@@ -1,2 +0,0 @@
1
- export * from "./NestiaMigrateApplication";
2
- export * from "./structures/INestiaMigrateContext";
package/lib/module.js DELETED
@@ -1,19 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./NestiaMigrateApplication"), exports);
18
- __exportStar(require("./structures/INestiaMigrateContext"), exports);
19
- //# sourceMappingURL=module.js.map
package/lib/module.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"module.js","sourceRoot":"","sources":["../src/module.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6DAA2C;AAC3C,qEAAmD"}
@@ -1,13 +0,0 @@
1
- import { IHttpMigrateRoute, OpenApi } from "@samchon/openapi";
2
- import ts from "typescript";
3
- import { INestiaMigrateConfig } from "../structures/INestiaMigrateConfig";
4
- export declare namespace NestiaMigrateApiFileProgrammer {
5
- interface IProps {
6
- config: INestiaMigrateConfig;
7
- components: OpenApi.IComponents;
8
- namespace: string[];
9
- routes: IHttpMigrateRoute[];
10
- children: Set<string>;
11
- }
12
- const write: (props: IProps) => ts.Statement[];
13
- }
@@ -1,40 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.NestiaMigrateApiFileProgrammer = void 0;
7
- const typescript_1 = __importDefault(require("typescript"));
8
- const FilePrinter_1 = require("../utils/FilePrinter");
9
- const NestiaMigrateApiFunctionProgrammer_1 = require("./NestiaMigrateApiFunctionProgrammer");
10
- const NestiaMigrateApiNamespaceProgrammer_1 = require("./NestiaMigrateApiNamespaceProgrammer");
11
- const NestiaMigrateImportProgrammer_1 = require("./NestiaMigrateImportProgrammer");
12
- var NestiaMigrateApiFileProgrammer;
13
- (function (NestiaMigrateApiFileProgrammer) {
14
- NestiaMigrateApiFileProgrammer.write = (props) => {
15
- const importer = new NestiaMigrateImportProgrammer_1.NestiaMigrateImportProgrammer();
16
- const statements = props.routes
17
- .map((route) => [
18
- FilePrinter_1.FilePrinter.newLine(),
19
- NestiaMigrateApiFunctionProgrammer_1.NestiaMigrateApiFunctionProgrammer.write({
20
- config: props.config,
21
- components: props.components,
22
- importer,
23
- route,
24
- }),
25
- NestiaMigrateApiNamespaceProgrammer_1.NestiaMigrateApiNamespaceProgrammer.write({
26
- config: props.config,
27
- components: props.components,
28
- importer,
29
- route,
30
- }),
31
- ])
32
- .flat();
33
- return [
34
- ...importer.toStatements((ref) => `../${"../".repeat(props.namespace.length)}structures/${ref}`),
35
- ...[...props.children].map((child) => typescript_1.default.factory.createExportDeclaration(undefined, false, typescript_1.default.factory.createNamespaceExport(typescript_1.default.factory.createIdentifier(child)), typescript_1.default.factory.createStringLiteral(`./${child}/index`), undefined)),
36
- ...statements,
37
- ];
38
- };
39
- })(NestiaMigrateApiFileProgrammer || (exports.NestiaMigrateApiFileProgrammer = NestiaMigrateApiFileProgrammer = {}));
40
- //# sourceMappingURL=NestiaMigrateApiFileProgrammer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"NestiaMigrateApiFileProgrammer.js","sourceRoot":"","sources":["../../src/programmers/NestiaMigrateApiFileProgrammer.ts"],"names":[],"mappings":";;;;;;AACA,4DAA4B;AAG5B,sDAAmD;AACnD,6FAA0F;AAC1F,+FAA4F;AAC5F,mFAAgF;AAEhF,IAAiB,8BAA8B,CA6C9C;AA7CD,WAAiB,8BAA8B;IAShC,oCAAK,GAAG,CAAC,KAAa,EAAkB,EAAE;QACrD,MAAM,QAAQ,GACZ,IAAI,6DAA6B,EAAE,CAAC;QACtC,MAAM,UAAU,GAAmB,KAAK,CAAC,MAAM;aAC5C,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC;YACd,yBAAW,CAAC,OAAO,EAAE;YACrB,uEAAkC,CAAC,KAAK,CAAC;gBACvC,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,UAAU,EAAE,KAAK,CAAC,UAAU;gBAC5B,QAAQ;gBACR,KAAK;aACN,CAAC;YACF,yEAAmC,CAAC,KAAK,CAAC;gBACxC,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,UAAU,EAAE,KAAK,CAAC,UAAU;gBAC5B,QAAQ;gBACR,KAAK;aACN,CAAC;SACH,CAAC;aACD,IAAI,EAAE,CAAC;QACV,OAAO;YACL,GAAG,QAAQ,CAAC,YAAY,CACtB,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,cAAc,GAAG,EAAE,CACvE;YACD,GAAG,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CACnC,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAChC,SAAS,EACT,KAAK,EACL,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,EACpE,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,KAAK,KAAK,QAAQ,CAAC,EAClD,SAAS,CACV,CACF;YACD,GAAG,UAAU;SACd,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC,EA7CgB,8BAA8B,8CAA9B,8BAA8B,QA6C9C"}
@@ -1,14 +0,0 @@
1
- import { IHttpMigrateRoute, OpenApi } from "@samchon/openapi";
2
- import ts from "typescript";
3
- import { INestiaMigrateConfig } from "../structures/INestiaMigrateConfig";
4
- import { NestiaMigrateImportProgrammer } from "./NestiaMigrateImportProgrammer";
5
- export declare namespace NestiaMigrateApiFunctionProgrammer {
6
- interface IContext {
7
- config: INestiaMigrateConfig;
8
- components: OpenApi.IComponents;
9
- importer: NestiaMigrateImportProgrammer;
10
- route: IHttpMigrateRoute;
11
- }
12
- const write: (ctx: IContext) => ts.FunctionDeclaration;
13
- const writeParameterDeclarations: (ctx: IContext, connectionName?: string) => ts.ParameterDeclaration[];
14
- }
@@ -1,179 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.NestiaMigrateApiFunctionProgrammer = void 0;
7
- const typescript_1 = __importDefault(require("typescript"));
8
- const IdentifierFactory_1 = require("typia/lib/factories/IdentifierFactory");
9
- const StatementFactory_1 = require("typia/lib/factories/StatementFactory");
10
- const Escaper_1 = require("typia/lib/utils/Escaper");
11
- const FilePrinter_1 = require("../utils/FilePrinter");
12
- const NestiaMigrateSchemaProgrammer_1 = require("./NestiaMigrateSchemaProgrammer");
13
- var NestiaMigrateApiFunctionProgrammer;
14
- (function (NestiaMigrateApiFunctionProgrammer) {
15
- NestiaMigrateApiFunctionProgrammer.write = (ctx) => FilePrinter_1.FilePrinter.description(typescript_1.default.factory.createFunctionDeclaration([
16
- typescript_1.default.factory.createModifier(typescript_1.default.SyntaxKind.ExportKeyword),
17
- typescript_1.default.factory.createModifier(typescript_1.default.SyntaxKind.AsyncKeyword),
18
- ], undefined, ctx.route.accessor.at(-1), undefined, NestiaMigrateApiFunctionProgrammer.writeParameterDeclarations(ctx), typescript_1.default.factory.createTypeReferenceNode("Promise", [
19
- typescript_1.default.factory.createTypeReferenceNode(ctx.route.success === null
20
- ? "void"
21
- : `${ctx.route.accessor.at(-1)}.Response`),
22
- ]), typescript_1.default.factory.createBlock(writeBody(ctx), true)), writeDescription(ctx.config, ctx.route));
23
- NestiaMigrateApiFunctionProgrammer.writeParameterDeclarations = (ctx, connectionName) => {
24
- var _a;
25
- const connection = IdentifierFactory_1.IdentifierFactory.parameter(connectionName !== null && connectionName !== void 0 ? connectionName : "connection", typescript_1.default.factory.createTypeReferenceNode(ctx.importer.external({
26
- type: "instance",
27
- library: "@nestia/fetcher",
28
- name: "IConnection",
29
- }), ctx.route.headers
30
- ? [
31
- typescript_1.default.factory.createTypeReferenceNode(`${ctx.route.accessor.at(-1)}.Headers`),
32
- ]
33
- : undefined));
34
- if (ctx.config.keyword === true) {
35
- const isProps = ctx.route.parameters.length > 0 ||
36
- !!ctx.route.query ||
37
- !!ctx.route.body;
38
- if (isProps === false)
39
- return [connection];
40
- return [
41
- connection,
42
- typescript_1.default.factory.createParameterDeclaration(undefined, undefined, "props", undefined, typescript_1.default.factory.createTypeReferenceNode(`${ctx.route.accessor.at(-1)}.Props`)),
43
- ];
44
- }
45
- return [
46
- connection,
47
- ...ctx.route.parameters.map((p) => IdentifierFactory_1.IdentifierFactory.parameter(p.key, NestiaMigrateSchemaProgrammer_1.NestiaMigrateSchemaProgrammer.write({
48
- components: ctx.components,
49
- importer: ctx.importer,
50
- schema: p.schema,
51
- }))),
52
- ...(ctx.route.query
53
- ? [
54
- IdentifierFactory_1.IdentifierFactory.parameter(ctx.route.query.key, typescript_1.default.factory.createTypeReferenceNode(`${ctx.route.accessor.at(-1)}.Query`)),
55
- ]
56
- : []),
57
- ...(ctx.route.body
58
- ? [
59
- IdentifierFactory_1.IdentifierFactory.parameter(ctx.route.body.key, typescript_1.default.factory.createTypeReferenceNode(`${ctx.route.accessor.at(-1)}.Body`), (ctx.route.body.type === "application/json" ||
60
- ctx.route.body.type === "text/plain") &&
61
- ((_a = ctx.route.operation().requestBody) === null || _a === void 0 ? void 0 : _a.required) === false
62
- ? typescript_1.default.factory.createToken(typescript_1.default.SyntaxKind.QuestionToken)
63
- : undefined),
64
- ]
65
- : []),
66
- ];
67
- };
68
- const writeDescription = (config, route) => {
69
- var _a, _b, _c, _d;
70
- const comment = route.comment();
71
- return [
72
- config.keyword === true
73
- ? comment.split("@param ").join("@param props.")
74
- : comment,
75
- `@path ${route.emendedPath}`,
76
- `@accessor api.functional.${route.accessor.join(".")}`,
77
- `@${(_b = (_a = config.author) === null || _a === void 0 ? void 0 : _a.tag) !== null && _b !== void 0 ? _b : "nestia"} ${(_d = (_c = config.author) === null || _c === void 0 ? void 0 : _c.value) !== null && _d !== void 0 ? _d : "Generated by Nestia - https://github.com/samchon/nestia"}`,
78
- ].join("\n");
79
- };
80
- const writeBody = (ctx) => {
81
- var _a, _b, _c;
82
- const encrypted = !!((_a = ctx.route.success) === null || _a === void 0 ? void 0 : _a["x-nestia-encrypted"]);
83
- const contentType = (_c = (_b = ctx.route.body) === null || _b === void 0 ? void 0 : _b.type) !== null && _c !== void 0 ? _c : "application/json";
84
- const property = (key) => ctx.config.keyword === true
85
- ? IdentifierFactory_1.IdentifierFactory.access(typescript_1.default.factory.createIdentifier("props"), key)
86
- : typescript_1.default.factory.createIdentifier(key);
87
- const fetch = () => typescript_1.default.factory.createAwaitExpression(typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(typescript_1.default.factory.createIdentifier(ctx.importer.external({
88
- type: "instance",
89
- library: `@nestia/fetcher/lib/${encrypted ? "EncryptedFetcher" : "PlainFetcher"}`,
90
- name: encrypted ? "EncryptedFetcher" : "PlainFetcher",
91
- })), "fetch"), undefined, [
92
- contentType && contentType !== "multipart/form-data"
93
- ? typescript_1.default.factory.createObjectLiteralExpression([
94
- typescript_1.default.factory.createSpreadAssignment(typescript_1.default.factory.createIdentifier("connection")),
95
- typescript_1.default.factory.createPropertyAssignment("headers", typescript_1.default.factory.createObjectLiteralExpression([
96
- typescript_1.default.factory.createSpreadAssignment(IdentifierFactory_1.IdentifierFactory.access(typescript_1.default.factory.createIdentifier("connection"), "headers")),
97
- typescript_1.default.factory.createPropertyAssignment(typescript_1.default.factory.createStringLiteral("Content-Type"), typescript_1.default.factory.createStringLiteral(contentType)),
98
- ], true)),
99
- ], true)
100
- : typescript_1.default.factory.createIdentifier("connection"),
101
- typescript_1.default.factory.createObjectLiteralExpression([
102
- typescript_1.default.factory.createSpreadAssignment(IdentifierFactory_1.IdentifierFactory.access(typescript_1.default.factory.createIdentifier(ctx.route.accessor.at(-1)), "METADATA")),
103
- typescript_1.default.factory.createPropertyAssignment("path", typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(typescript_1.default.factory.createIdentifier(ctx.route.accessor.at(-1)), "path"), undefined, getArguments(ctx, false))),
104
- typescript_1.default.factory.createPropertyAssignment("status", typescript_1.default.factory.createNull()),
105
- ], true),
106
- ...(ctx.route.body ? [property(ctx.route.body.key)] : []),
107
- ]));
108
- const value = ctx.config.simulate !== true
109
- ? fetch()
110
- : typescript_1.default.factory.createConditionalExpression(typescript_1.default.factory.createStrictEquality(typescript_1.default.factory.createTrue(), typescript_1.default.factory.createIdentifier("connection.simulate")), undefined, typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(`${ctx.route.accessor.at(-1)}.simulate`), [], [
111
- typescript_1.default.factory.createIdentifier("connection"),
112
- ...getArguments(ctx, true),
113
- ]), undefined, fetch());
114
- const headers = getHeaders(ctx.route.comment());
115
- if (headers.length === 0)
116
- return [typescript_1.default.factory.createReturnStatement(value)];
117
- return [
118
- StatementFactory_1.StatementFactory.constant({
119
- name: "output",
120
- type: typescript_1.default.factory.createTypeReferenceNode(`${ctx.route.accessor.at(-1)}.Response`),
121
- value,
122
- }),
123
- typescript_1.default.factory.createExpressionStatement(typescript_1.default.factory.createBinaryExpression(typescript_1.default.factory.createIdentifier("connection.headers"), typescript_1.default.factory.createToken(typescript_1.default.SyntaxKind.QuestionQuestionEqualsToken), typescript_1.default.factory.createObjectLiteralExpression([]))),
124
- ...headers.map((h) => typescript_1.default.factory.createExpressionStatement(h.type === "assign"
125
- ? typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("Object.assign"), undefined, [
126
- typescript_1.default.factory.createIdentifier("connection.headers"),
127
- typescript_1.default.factory.createIdentifier(`output.${h.accessor}`),
128
- ])
129
- : typescript_1.default.factory.createBinaryExpression(typescript_1.default.factory.createIdentifier(`connection.headers${Escaper_1.Escaper.variable(h.property) ? `.${h.property}` : `[${JSON.stringify(h.property)}]`}`), typescript_1.default.factory.createToken(typescript_1.default.SyntaxKind.EqualsToken), typescript_1.default.factory.createIdentifier(`output.${h.accessor}`)))),
130
- typescript_1.default.factory.createReturnStatement(typescript_1.default.factory.createIdentifier("output")),
131
- ];
132
- };
133
- const getArguments = (ctx, body) => {
134
- if (ctx.route.parameters.length === 0 &&
135
- ctx.route.query === null &&
136
- (body === false || ctx.route.body === null))
137
- return [];
138
- else if (ctx.config.keyword === true)
139
- return [typescript_1.default.factory.createIdentifier("props")];
140
- return [
141
- ...ctx.route.parameters.map((p) => typescript_1.default.factory.createIdentifier(p.key)),
142
- ...(ctx.route.query
143
- ? [typescript_1.default.factory.createIdentifier(ctx.route.query.key)]
144
- : []),
145
- ...(body && ctx.route.body
146
- ? [typescript_1.default.factory.createIdentifier(ctx.route.body.key)]
147
- : []),
148
- ];
149
- };
150
- const getHeaders = (description) => {
151
- const directives = [];
152
- for (const line of description.split("\n").map((l) => l.trim())) {
153
- if (line.startsWith("@setHeader ")) {
154
- const parts = line
155
- .substring("@setHeader ".length)
156
- .trim()
157
- .split(/\s+/);
158
- if (parts.length >= 2)
159
- directives.push({
160
- type: "set",
161
- accessor: parts[0],
162
- property: parts[1],
163
- });
164
- }
165
- else if (line.startsWith("@assignHeaders ")) {
166
- const accessor = line
167
- .substring("@assignHeaders ".length)
168
- .trim();
169
- if (accessor.length !== 0)
170
- directives.push({
171
- type: "assign",
172
- accessor,
173
- });
174
- }
175
- }
176
- return directives;
177
- };
178
- })(NestiaMigrateApiFunctionProgrammer || (exports.NestiaMigrateApiFunctionProgrammer = NestiaMigrateApiFunctionProgrammer = {}));
179
- //# sourceMappingURL=NestiaMigrateApiFunctionProgrammer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"NestiaMigrateApiFunctionProgrammer.js","sourceRoot":"","sources":["../../src/programmers/NestiaMigrateApiFunctionProgrammer.ts"],"names":[],"mappings":"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"}
@@ -1,14 +0,0 @@
1
- import { IHttpMigrateRoute, OpenApi } from "@samchon/openapi";
2
- import ts from "typescript";
3
- import { INestiaMigrateConfig } from "../structures/INestiaMigrateConfig";
4
- import { NestiaMigrateImportProgrammer } from "./NestiaMigrateImportProgrammer";
5
- export declare namespace NestiaMigrateApiNamespaceProgrammer {
6
- interface IContext {
7
- config: INestiaMigrateConfig;
8
- components: OpenApi.IComponents;
9
- importer: NestiaMigrateImportProgrammer;
10
- route: IHttpMigrateRoute;
11
- }
12
- const write: (ctx: IContext) => ts.ModuleDeclaration;
13
- const writePathCallExpression: (config: INestiaMigrateConfig, route: IHttpMigrateRoute) => ts.CallExpression;
14
- }