@autorest/typescript 6.0.0-beta.13 → 6.0.0-beta.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +13 -0
- package/README.md +41 -5
- package/dist/src/autorestSession.d.ts +8 -3
- package/dist/src/autorestSession.d.ts.map +1 -1
- package/dist/src/autorestSession.js +3 -9
- package/dist/src/autorestSession.js.map +1 -1
- package/dist/src/conflictResolver.d.ts +3 -0
- package/dist/src/conflictResolver.d.ts.map +1 -0
- package/dist/src/conflictResolver.js +43 -0
- package/dist/src/conflictResolver.js.map +1 -0
- package/dist/src/generators/clientFileGenerator.d.ts.map +1 -1
- package/dist/src/generators/clientFileGenerator.js +181 -31
- package/dist/src/generators/clientFileGenerator.js.map +1 -1
- package/dist/src/generators/indexGenerator.d.ts.map +1 -1
- package/dist/src/generators/indexGenerator.js +85 -12
- package/dist/src/generators/indexGenerator.js.map +1 -1
- package/dist/src/generators/mappersGenerator.d.ts.map +1 -1
- package/dist/src/generators/mappersGenerator.js +81 -7
- package/dist/src/generators/mappersGenerator.js.map +1 -1
- package/dist/src/generators/modelsGenerator.d.ts.map +1 -1
- package/dist/src/generators/modelsGenerator.js +20 -2
- package/dist/src/generators/modelsGenerator.js.map +1 -1
- package/dist/src/generators/operationGenerator.js +6 -6
- package/dist/src/generators/operationGenerator.js.map +1 -1
- package/dist/src/generators/samples/sampleEnv.hbs +4 -0
- package/dist/src/generators/samples/sampleEnvGenerator.d.ts +3 -0
- package/dist/src/generators/samples/sampleEnvGenerator.d.ts.map +1 -0
- package/dist/src/generators/samples/sampleEnvGenerator.js +17 -0
- package/dist/src/generators/samples/sampleEnvGenerator.js.map +1 -0
- package/dist/src/generators/samples/sampleGenerator.d.ts +13 -0
- package/dist/src/generators/samples/sampleGenerator.d.ts.map +1 -0
- package/dist/src/generators/samples/sampleGenerator.js +43 -0
- package/dist/src/generators/samples/sampleGenerator.js.map +1 -0
- package/dist/src/generators/static/README.md.hbs +23 -0
- package/dist/src/generators/static/karma.conf.js.hbs +141 -0
- package/dist/src/generators/static/karmaConfigFileGenerator.d.ts +3 -0
- package/dist/src/generators/static/karmaConfigFileGenerator.d.ts.map +1 -0
- package/dist/src/generators/static/karmaConfigFileGenerator.js +23 -0
- package/dist/src/generators/static/karmaConfigFileGenerator.js.map +1 -0
- package/dist/src/generators/static/packageFileGenerator.d.ts.map +1 -1
- package/dist/src/generators/static/packageFileGenerator.js +100 -25
- package/dist/src/generators/static/packageFileGenerator.js.map +1 -1
- package/dist/src/generators/static/readmeFileGenerator.d.ts.map +1 -1
- package/dist/src/generators/static/readmeFileGenerator.js +5 -1
- package/dist/src/generators/static/readmeFileGenerator.js.map +1 -1
- package/dist/src/generators/static/rollupConfigFileGenerator.d.ts.map +1 -1
- package/dist/src/generators/static/rollupConfigFileGenerator.js +7 -70
- package/dist/src/generators/static/rollupConfigFileGenerator.js.map +1 -1
- package/dist/src/generators/static/samples.ts.hbs +49 -0
- package/dist/src/generators/static/tsConfigFileGenerator.d.ts.map +1 -1
- package/dist/src/generators/static/tsConfigFileGenerator.js +9 -10
- package/dist/src/generators/static/tsConfigFileGenerator.js.map +1 -1
- package/dist/src/generators/test/envBrowserFileGenerator.d.ts +3 -0
- package/dist/src/generators/test/envBrowserFileGenerator.d.ts.map +1 -0
- package/dist/src/generators/test/envBrowserFileGenerator.js +15 -0
- package/dist/src/generators/test/envBrowserFileGenerator.js.map +1 -0
- package/dist/src/generators/test/envFileGenerator.d.ts +3 -0
- package/dist/src/generators/test/envFileGenerator.d.ts.map +1 -0
- package/dist/src/generators/test/envFileGenerator.js +23 -0
- package/dist/src/generators/test/envFileGenerator.js.map +1 -0
- package/dist/src/generators/test/recordedClientFileGenerator.d.ts +3 -0
- package/dist/src/generators/test/recordedClientFileGenerator.d.ts.map +1 -0
- package/dist/src/generators/test/recordedClientFileGenerator.js +23 -0
- package/dist/src/generators/test/recordedClientFileGenerator.js.map +1 -0
- package/dist/src/generators/test/rlcEnv.ts.hbs +3 -0
- package/dist/src/generators/test/rlcRecordedClient.ts.hbs +35 -0
- package/dist/src/generators/test/rlcSampleTest.spec.ts.hbs +19 -0
- package/dist/src/generators/{static → test}/sampleTest.ts.hbs +0 -0
- package/dist/src/generators/test/sampleTestGenerator.d.ts.map +1 -1
- package/dist/src/generators/test/sampleTestGenerator.js +23 -7
- package/dist/src/generators/test/sampleTestGenerator.js.map +1 -1
- package/dist/src/generators/utils/pagingOperations.d.ts +5 -0
- package/dist/src/generators/utils/pagingOperations.d.ts.map +1 -1
- package/dist/src/generators/utils/pagingOperations.js +2 -1
- package/dist/src/generators/utils/pagingOperations.js.map +1 -1
- package/dist/src/main.d.ts +2 -2
- package/dist/src/main.d.ts.map +1 -1
- package/dist/src/main.js +3 -3
- package/dist/src/main.js.map +1 -1
- package/dist/src/models/clientDetails.d.ts +3 -0
- package/dist/src/models/clientDetails.d.ts.map +1 -1
- package/dist/src/models/modelDetails.d.ts +2 -2
- package/dist/src/models/modelDetails.d.ts.map +1 -1
- package/dist/src/models/operationDetails.d.ts +1 -0
- package/dist/src/models/operationDetails.d.ts.map +1 -1
- package/dist/src/models/sampleDetails.d.ts +22 -0
- package/dist/src/models/sampleDetails.d.ts.map +1 -0
- package/dist/src/models/sampleDetails.js +3 -0
- package/dist/src/models/sampleDetails.js.map +1 -0
- package/dist/src/restLevelClient/generateClient.d.ts +1 -1
- package/dist/src/restLevelClient/generateClient.d.ts.map +1 -1
- package/dist/src/restLevelClient/generateClient.js +48 -159
- package/dist/src/restLevelClient/generateClient.js.map +1 -1
- package/dist/src/restLevelClient/generateClientDefinition.d.ts +6 -0
- package/dist/src/restLevelClient/generateClientDefinition.d.ts.map +1 -0
- package/dist/src/restLevelClient/generateClientDefinition.js +231 -0
- package/dist/src/restLevelClient/generateClientDefinition.js.map +1 -0
- package/dist/src/restLevelClient/generateMethodShortcuts.d.ts +8 -0
- package/dist/src/restLevelClient/generateMethodShortcuts.d.ts.map +1 -0
- package/dist/src/restLevelClient/generateMethodShortcuts.js +70 -0
- package/dist/src/restLevelClient/generateMethodShortcuts.js.map +1 -0
- package/dist/src/restLevelClient/generateObjectTypes.d.ts +3 -3
- package/dist/src/restLevelClient/generateObjectTypes.d.ts.map +1 -1
- package/dist/src/restLevelClient/generateObjectTypes.js +28 -20
- package/dist/src/restLevelClient/generateObjectTypes.js.map +1 -1
- package/dist/src/restLevelClient/generatePagingHelper.d.ts.map +1 -1
- package/dist/src/restLevelClient/generatePagingHelper.js +2 -1
- package/dist/src/restLevelClient/generatePagingHelper.js.map +1 -1
- package/dist/src/restLevelClient/generateParameterTypes.d.ts.map +1 -1
- package/dist/src/restLevelClient/generateParameterTypes.js +246 -36
- package/dist/src/restLevelClient/generateParameterTypes.js.map +1 -1
- package/dist/src/restLevelClient/generatePollingHelper.d.ts.map +1 -1
- package/dist/src/restLevelClient/generatePollingHelper.js +3 -1
- package/dist/src/restLevelClient/generatePollingHelper.js.map +1 -1
- package/dist/src/restLevelClient/generateResponseTypes.d.ts.map +1 -1
- package/dist/src/restLevelClient/generateResponseTypes.js +23 -14
- package/dist/src/restLevelClient/generateResponseTypes.js.map +1 -1
- package/dist/src/restLevelClient/generateRestLevel.d.ts.map +1 -1
- package/dist/src/restLevelClient/generateRestLevel.js +19 -3
- package/dist/src/restLevelClient/generateRestLevel.js.map +1 -1
- package/dist/src/restLevelClient/generateSchemaTypes.d.ts.map +1 -1
- package/dist/src/restLevelClient/generateSchemaTypes.js +29 -7
- package/dist/src/restLevelClient/generateSchemaTypes.js.map +1 -1
- package/dist/src/restLevelClient/generateTopLevelIndexFile.d.ts +4 -0
- package/dist/src/restLevelClient/generateTopLevelIndexFile.d.ts.map +1 -0
- package/dist/src/restLevelClient/generateTopLevelIndexFile.js +41 -0
- package/dist/src/restLevelClient/generateTopLevelIndexFile.js.map +1 -0
- package/dist/src/restLevelClient/getPropertySignature.d.ts +2 -2
- package/dist/src/restLevelClient/getPropertySignature.d.ts.map +1 -1
- package/dist/src/restLevelClient/getPropertySignature.js +2 -2
- package/dist/src/restLevelClient/getPropertySignature.js.map +1 -1
- package/dist/src/restLevelClient/helpers/modelHelpers.d.ts +4 -0
- package/dist/src/restLevelClient/helpers/modelHelpers.d.ts.map +1 -0
- package/dist/src/restLevelClient/helpers/modelHelpers.js +19 -0
- package/dist/src/restLevelClient/helpers/modelHelpers.js.map +1 -0
- package/dist/src/restLevelClient/helpers/operationHelpers.d.ts +10 -0
- package/dist/src/restLevelClient/helpers/operationHelpers.d.ts.map +1 -0
- package/dist/src/restLevelClient/helpers/operationHelpers.js +64 -0
- package/dist/src/restLevelClient/helpers/operationHelpers.js.map +1 -0
- package/dist/src/restLevelClient/interfaces.d.ts +24 -0
- package/dist/src/restLevelClient/interfaces.d.ts.map +1 -0
- package/dist/src/restLevelClient/interfaces.js +3 -0
- package/dist/src/restLevelClient/interfaces.js.map +1 -0
- package/dist/src/restLevelClient/operationHelpers.d.ts.map +1 -1
- package/dist/src/restLevelClient/operationHelpers.js +4 -1
- package/dist/src/restLevelClient/operationHelpers.js.map +1 -1
- package/dist/src/restLevelClient/schemaHelpers.d.ts +8 -2
- package/dist/src/restLevelClient/schemaHelpers.d.ts.map +1 -1
- package/dist/src/restLevelClient/schemaHelpers.js +19 -9
- package/dist/src/restLevelClient/schemaHelpers.js.map +1 -1
- package/dist/src/transforms/operationTransforms.d.ts.map +1 -1
- package/dist/src/transforms/operationTransforms.js +4 -1
- package/dist/src/transforms/operationTransforms.js.map +1 -1
- package/dist/src/transforms/parameterTransforms.d.ts.map +1 -1
- package/dist/src/transforms/parameterTransforms.js +1 -1
- package/dist/src/transforms/parameterTransforms.js.map +1 -1
- package/dist/src/transforms/samplesTransforms.d.ts +7 -0
- package/dist/src/transforms/samplesTransforms.d.ts.map +1 -0
- package/dist/src/transforms/samplesTransforms.js +283 -0
- package/dist/src/transforms/samplesTransforms.js.map +1 -0
- package/dist/src/transforms/transforms.d.ts +1 -2
- package/dist/src/transforms/transforms.d.ts.map +1 -1
- package/dist/src/transforms/transforms.js +4 -3
- package/dist/src/transforms/transforms.js.map +1 -1
- package/dist/src/typescriptGenerator.d.ts +2 -2
- package/dist/src/typescriptGenerator.d.ts.map +1 -1
- package/dist/src/typescriptGenerator.js +20 -29
- package/dist/src/typescriptGenerator.js.map +1 -1
- package/dist/src/utils/autorestOptions.d.ts +2 -2
- package/dist/src/utils/autorestOptions.d.ts.map +1 -1
- package/dist/src/utils/autorestOptions.js +70 -30
- package/dist/src/utils/autorestOptions.js.map +1 -1
- package/dist/src/utils/nameUtils.d.ts +6 -2
- package/dist/src/utils/nameUtils.d.ts.map +1 -1
- package/dist/src/utils/nameUtils.js +11 -6
- package/dist/src/utils/nameUtils.js.map +1 -1
- package/dist/src/utils/schemaHelpers.js +8 -3
- package/dist/src/utils/schemaHelpers.js.map +1 -1
- package/package.json +18 -12
- package/src/autorestSession.ts +16 -15
- package/src/conflictResolver.ts +61 -0
- package/src/generators/clientFileGenerator.ts +262 -33
- package/src/generators/indexGenerator.ts +98 -13
- package/src/generators/mappersGenerator.ts +108 -8
- package/src/generators/modelsGenerator.ts +21 -1
- package/src/generators/operationGenerator.ts +7 -7
- package/src/generators/samples/sampleEnv.hbs +4 -0
- package/src/generators/samples/sampleEnvGenerator.ts +14 -0
- package/src/generators/samples/sampleGenerator.ts +50 -0
- package/src/generators/static/README.md.hbs +23 -0
- package/src/generators/static/karma.conf.js.hbs +141 -0
- package/src/generators/static/karmaConfigFileGenerator.ts +20 -0
- package/src/generators/static/packageFileGenerator.ts +113 -28
- package/src/generators/static/readmeFileGenerator.ts +8 -2
- package/src/generators/static/rollupConfigFileGenerator.ts +7 -70
- package/src/generators/static/samples.ts.hbs +49 -0
- package/src/generators/static/tsConfigFileGenerator.ts +12 -12
- package/src/generators/test/envBrowserFileGenerator.ts +14 -0
- package/src/generators/test/envFileGenerator.ts +22 -0
- package/src/generators/test/recordedClientFileGenerator.ts +22 -0
- package/src/generators/test/rlcEnv.ts.hbs +3 -0
- package/src/generators/test/rlcRecordedClient.ts.hbs +35 -0
- package/src/generators/test/rlcSampleTest.spec.ts.hbs +19 -0
- package/src/generators/{static → test}/sampleTest.ts.hbs +0 -0
- package/src/generators/test/sampleTestGenerator.ts +23 -8
- package/src/generators/utils/pagingOperations.ts +1 -1
- package/src/main.ts +9 -5
- package/src/models/clientDetails.ts +3 -0
- package/src/models/modelDetails.ts +2 -2
- package/src/models/operationDetails.ts +1 -0
- package/src/models/sampleDetails.ts +22 -0
- package/src/restLevelClient/generateClient.ts +55 -243
- package/src/restLevelClient/generateClientDefinition.ts +343 -0
- package/src/restLevelClient/generateMethodShortcuts.ts +121 -0
- package/src/restLevelClient/generateObjectTypes.ts +57 -20
- package/src/restLevelClient/generatePagingHelper.ts +3 -2
- package/src/restLevelClient/generateParameterTypes.ts +377 -48
- package/src/restLevelClient/generatePollingHelper.ts +3 -3
- package/src/restLevelClient/generateResponseTypes.ts +30 -16
- package/src/restLevelClient/generateRestLevel.ts +24 -6
- package/src/restLevelClient/generateSchemaTypes.ts +43 -8
- package/src/restLevelClient/generateTopLevelIndexFile.ts +41 -0
- package/src/restLevelClient/getPropertySignature.ts +3 -2
- package/src/restLevelClient/helpers/modelHelpers.ts +15 -0
- package/src/restLevelClient/helpers/operationHelpers.ts +93 -0
- package/src/restLevelClient/interfaces.ts +26 -0
- package/src/restLevelClient/operationHelpers.ts +8 -2
- package/src/restLevelClient/schemaHelpers.ts +25 -7
- package/src/transforms/operationTransforms.ts +6 -1
- package/src/transforms/parameterTransforms.ts +3 -1
- package/src/transforms/samplesTransforms.ts +300 -0
- package/src/transforms/transforms.ts +6 -6
- package/src/typescriptGenerator.ts +22 -46
- package/src/utils/autorestOptions.ts +121 -58
- package/src/utils/nameUtils.ts +18 -9
- package/src/utils/schemaHelpers.ts +2 -2
- package/dist/src/generators/clientContextFileGenerator.d.ts +0 -5
- package/dist/src/generators/clientContextFileGenerator.d.ts.map +0 -1
- package/dist/src/generators/clientContextFileGenerator.js +0 -263
- package/dist/src/generators/clientContextFileGenerator.js.map +0 -1
- package/dist/src/restLevelClient/helpers/getOperationParameters.d.ts +0 -6
- package/dist/src/restLevelClient/helpers/getOperationParameters.d.ts.map +0 -1
- package/dist/src/restLevelClient/helpers/getOperationParameters.js +0 -29
- package/dist/src/restLevelClient/helpers/getOperationParameters.js.map +0 -1
- package/src/generators/clientContextFileGenerator.ts +0 -405
- package/src/restLevelClient/helpers/getOperationParameters.ts +0 -34
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { ClientDetails } from "../models/clientDetails";
|
|
2
2
|
import { UnionDetails } from "../models/unionDetails";
|
|
3
3
|
import { CodeModel, ChoiceSchema, SealedChoiceSchema } from "@autorest/codemodel";
|
|
4
|
-
import { Host } from "@autorest/extension-base";
|
|
5
4
|
export declare function transformChoices(codeModel: CodeModel): Promise<UnionDetails[]>;
|
|
6
5
|
export declare function transformChoice(choice: ChoiceSchema | SealedChoiceSchema): UnionDetails;
|
|
7
|
-
export declare function transformCodeModel(codeModel: CodeModel
|
|
6
|
+
export declare function transformCodeModel(codeModel: CodeModel): Promise<ClientDetails>;
|
|
8
7
|
//# sourceMappingURL=transforms.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transforms.d.ts","sourceRoot":"","sources":["../../../src/transforms/transforms.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAgB,MAAM,wBAAwB,CAAC;AAEpE,OAAO,EACL,SAAS,EACT,YAAY,EACZ,kBAAkB,EAEnB,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"transforms.d.ts","sourceRoot":"","sources":["../../../src/transforms/transforms.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAgB,MAAM,wBAAwB,CAAC;AAEpE,OAAO,EACL,SAAS,EACT,YAAY,EACZ,kBAAkB,EAEnB,MAAM,qBAAqB,CAAC;AAiB7B,wBAAsB,gBAAgB,CAAC,SAAS,EAAE,SAAS,2BAO1D;AAmBD,wBAAgB,eAAe,CAC7B,MAAM,EAAE,YAAY,GAAG,kBAAkB,GACxC,YAAY,CAuBd;AAED,wBAAsB,kBAAkB,CACtC,SAAS,EAAE,SAAS,GACnB,OAAO,CAAC,aAAa,CAAC,CA2CxB"}
|
|
@@ -68,7 +68,7 @@ function transformChoice(choice) {
|
|
|
68
68
|
};
|
|
69
69
|
}
|
|
70
70
|
exports.transformChoice = transformChoice;
|
|
71
|
-
function transformCodeModel(codeModel
|
|
71
|
+
function transformCodeModel(codeModel) {
|
|
72
72
|
return __awaiter(this, void 0, void 0, function* () {
|
|
73
73
|
const { name: clientName } = languageHelpers_1.getLanguageMetadata(codeModel.language);
|
|
74
74
|
const className = nameUtils_1.normalizeName(clientName, nameUtils_1.NameType.Class, true /** shouldGuard */);
|
|
@@ -84,7 +84,7 @@ function transformCodeModel(codeModel, host) {
|
|
|
84
84
|
groupTransforms_1.transformGroups(codeModel),
|
|
85
85
|
mapperTransforms_1.transformMappers(codeModel, uberParents, options),
|
|
86
86
|
transformChoices(codeModel),
|
|
87
|
-
parameterTransforms_1.transformParameters(codeModel, options)
|
|
87
|
+
parameterTransforms_1.transformParameters(codeModel, options),
|
|
88
88
|
]);
|
|
89
89
|
const baseUrl = urlTransforms_1.transformBaseUrl(codeModel);
|
|
90
90
|
return {
|
|
@@ -98,7 +98,8 @@ function transformCodeModel(codeModel, host) {
|
|
|
98
98
|
operationGroups,
|
|
99
99
|
parameters,
|
|
100
100
|
options,
|
|
101
|
-
endpoint: baseUrl
|
|
101
|
+
endpoint: baseUrl,
|
|
102
|
+
allTypes: []
|
|
102
103
|
};
|
|
103
104
|
});
|
|
104
105
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transforms.js","sourceRoot":"","sources":["../../../src/transforms/transforms.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;AAKlC,mDAK6B;AAC7B,kDAA6D;AAC7D,wDAA0D;AAC1D,8DAA+D;AAC/D,yDAAsD;AACtD,+DAAiE;AACjE,2DAAuD;AACvD,+DAA4D;AAC5D,yDAAuE;AAGvE,mDAAmD;AACnD,6CAA4D;AAC5D,uDAAoD;AACpD,0DAA0D;AAC1D,8FAA2F;AAE3F,SAAsB,gBAAgB,CAAC,SAAoB;;QACzD,MAAM,OAAO,GAAG;YACd,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC;YACpC,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,aAAa,IAAI,EAAE,CAAC;SAC3C,CAAC;QAEF,OAAO,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IACtC,CAAC;CAAA;AAPD,4CAOC;AAED,SAAS,iBAAiB,CACxB,MAAyC;IAEzC,OAAO,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;;QAC5B,MAAM,QAAQ,GAAG,qCAAmB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;QACjD,OAAO;YACL,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,KAAK,EAAE,gCAAiB,CACtB,CAAC,CAAC,KAAK,EACP,MAAA,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,UAAU,0CAAE,IAAI,mCAAI,sBAAU,CAAC,MAAM,EAC7C,KAAK,CACN;YACD,WAAW,EAAE,QAAQ,CAAC,WAAW;SAClC,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAgB,eAAe,CAC7B,MAAyC;IAEzC,MAAM,QAAQ,GAAG,qCAAmB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACtD,IAAI,IAAI,GAAG,yBAAa,CAAC,QAAQ,CAAC,IAAI,EAAE,oBAAQ,CAAC,SAAS,CAAC,CAAC;IAC5D,IAAI,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC;IAC7B,IAAI,QAAQ;IACV,YAAY;IACZ,MAAM,CAAC,UAAU,CAAC,IAAI,KAAK,sBAAU,CAAC,OAAO;QAC7C,YAAY;QACZ,MAAM,CAAC,UAAU,CAAC,IAAI,KAAK,sBAAU,CAAC,MAAM;QAC1C,CAAC,CAAC,sBAAU,CAAC,MAAM;QACnB,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC;IAE7B,OAAO;QACL,IAAI;QACJ,UAAU;QACV,QAAQ;QACR,WAAW,EAAE,sBAAsB,yBAAa,CAC9C,QAAQ,CAAC,IAAI,EACb,oBAAQ,CAAC,SAAS,CACnB,GAAG;QACJ,cAAc,EAAE,QAAQ,CAAC,IAAI;QAC7B,UAAU,EAAE,iBAAiB,CAAC,MAAM,CAAC;KACtC,CAAC;AACJ,CAAC;AAzBD,0CAyBC;AAED,SAAsB,kBAAkB,CACtC,SAAoB
|
|
1
|
+
{"version":3,"file":"transforms.js","sourceRoot":"","sources":["../../../src/transforms/transforms.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { CodeModel } from "@autorest/codemodel";
|
|
2
|
-
import {
|
|
3
|
-
export declare function generateTypeScriptLibrary(codeModel: CodeModel, host:
|
|
2
|
+
import { AutorestExtensionHost } from "@autorest/extension-base";
|
|
3
|
+
export declare function generateTypeScriptLibrary(codeModel: CodeModel, host: AutorestExtensionHost): Promise<void>;
|
|
4
4
|
//# sourceMappingURL=typescriptGenerator.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typescriptGenerator.d.ts","sourceRoot":"","sources":["../../src/typescriptGenerator.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"typescriptGenerator.d.ts","sourceRoot":"","sources":["../../src/typescriptGenerator.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AA0CjE,wBAAsB,yBAAyB,CAC7C,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,qBAAqB,GAC1B,OAAO,CAAC,IAAI,CAAC,CA2Ff"}
|
|
@@ -17,8 +17,8 @@ const fsextra = require("fs-extra");
|
|
|
17
17
|
const path = require("path");
|
|
18
18
|
const ts_morph_1 = require("ts-morph");
|
|
19
19
|
const transforms_1 = require("./transforms/transforms");
|
|
20
|
+
const samplesTransforms_1 = require("./transforms/samplesTransforms");
|
|
20
21
|
const clientFileGenerator_1 = require("./generators/clientFileGenerator");
|
|
21
|
-
const clientContextFileGenerator_1 = require("./generators/clientContextFileGenerator");
|
|
22
22
|
const modelsGenerator_1 = require("./generators/modelsGenerator");
|
|
23
23
|
const mappersGenerator_1 = require("./generators/mappersGenerator");
|
|
24
24
|
const indexGenerator_1 = require("./generators/indexGenerator");
|
|
@@ -31,14 +31,13 @@ const tsConfigFileGenerator_1 = require("./generators/static/tsConfigFileGenerat
|
|
|
31
31
|
const rollupConfigFileGenerator_1 = require("./generators/static/rollupConfigFileGenerator");
|
|
32
32
|
const operationGenerator_1 = require("./generators/operationGenerator");
|
|
33
33
|
const operationInterfaceGenerator_1 = require("./generators/operationInterfaceGenerator");
|
|
34
|
+
const sampleEnvGenerator_1 = require("./generators/samples/sampleEnvGenerator");
|
|
35
|
+
const sampleGenerator_1 = require("./generators/samples/sampleGenerator");
|
|
34
36
|
const parametersGenerator_1 = require("./generators/parametersGenerator");
|
|
35
37
|
const LROGenerator_1 = require("./generators/LROGenerator");
|
|
36
38
|
const tracingFileGenerator_1 = require("./generators/tracingFileGenerator");
|
|
37
39
|
const autorestSession_1 = require("./autorestSession");
|
|
38
|
-
|
|
39
|
-
* ServiceClient members should be reserved
|
|
40
|
-
*/
|
|
41
|
-
const RESERVED_MEMBER_NAMES = ["pipeline"];
|
|
40
|
+
const conflictResolver_1 = require("./conflictResolver");
|
|
42
41
|
const prettierTypeScriptOptions = {
|
|
43
42
|
parser: "typescript",
|
|
44
43
|
arrowParens: "always",
|
|
@@ -56,6 +55,7 @@ const prettierJSONOptions = {
|
|
|
56
55
|
singleQuote: false
|
|
57
56
|
};
|
|
58
57
|
function generateTypeScriptLibrary(codeModel, host) {
|
|
58
|
+
var _a, _b;
|
|
59
59
|
return __awaiter(this, void 0, void 0, function* () {
|
|
60
60
|
const project = new ts_morph_1.Project({
|
|
61
61
|
useInMemoryFileSystem: true,
|
|
@@ -63,15 +63,13 @@ function generateTypeScriptLibrary(codeModel, host) {
|
|
|
63
63
|
indentationText: ts_morph_1.IndentationText.TwoSpaces
|
|
64
64
|
}
|
|
65
65
|
});
|
|
66
|
-
const { packageDetails, licenseHeader: shouldGenerateLicense, generateTest, outputPath, srcPath } = autorestSession_1.getAutorestOptions();
|
|
67
|
-
const clientDetails = yield transforms_1.transformCodeModel(codeModel
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
}
|
|
74
|
-
});
|
|
66
|
+
const { packageDetails, licenseHeader: shouldGenerateLicense, generateTest, generateSample, outputPath, srcPath } = autorestSession_1.getAutorestOptions();
|
|
67
|
+
const clientDetails = yield transforms_1.transformCodeModel(codeModel);
|
|
68
|
+
conflictResolver_1.conflictResolver(clientDetails);
|
|
69
|
+
modelsGenerator_1.generateModels(clientDetails, project);
|
|
70
|
+
if (generateSample) {
|
|
71
|
+
clientDetails.samples = yield samplesTransforms_1.transformSamples(codeModel, clientDetails);
|
|
72
|
+
}
|
|
75
73
|
// Skip metadata generation if `generate-metadata` is explicitly false
|
|
76
74
|
packageFileGenerator_1.generatePackageJson(project, clientDetails);
|
|
77
75
|
licenseFileGenerator_1.generateLicenseFile(project);
|
|
@@ -83,11 +81,13 @@ function generateTypeScriptLibrary(codeModel, host) {
|
|
|
83
81
|
rollupConfigFileGenerator_1.generateRollupConfig(project);
|
|
84
82
|
apiExtractorConfig_1.generateApiExtractorConfig(project);
|
|
85
83
|
clientFileGenerator_1.generateClient(clientDetails, project);
|
|
86
|
-
clientContextFileGenerator_1.generateClientContext(clientDetails, packageDetails, project);
|
|
87
|
-
modelsGenerator_1.generateModels(clientDetails, project);
|
|
88
84
|
mappersGenerator_1.generateMappers(clientDetails, project);
|
|
89
85
|
operationGenerator_1.generateOperations(clientDetails, project);
|
|
90
86
|
operationInterfaceGenerator_1.generateOperationsInterfaces(clientDetails, project);
|
|
87
|
+
if (generateSample && ((_a = clientDetails === null || clientDetails === void 0 ? void 0 : clientDetails.samples) === null || _a === void 0 ? void 0 : _a.length) && ((_b = clientDetails === null || clientDetails === void 0 ? void 0 : clientDetails.samples) === null || _b === void 0 ? void 0 : _b.length) > 0) {
|
|
88
|
+
sampleGenerator_1.generateSamples(clientDetails, project);
|
|
89
|
+
sampleEnvGenerator_1.generateSampleEnv(project);
|
|
90
|
+
}
|
|
91
91
|
parametersGenerator_1.generateParameters(clientDetails, project);
|
|
92
92
|
indexGenerator_1.generateIndexFile(project, clientDetails);
|
|
93
93
|
yield LROGenerator_1.generateLroFiles(clientDetails, project);
|
|
@@ -121,21 +121,12 @@ function generateTypeScriptLibrary(codeModel, host) {
|
|
|
121
121
|
fileContents = prettier.format(fileContents, isJson ? prettierJSONOptions : prettierTypeScriptOptions);
|
|
122
122
|
}
|
|
123
123
|
// Write the file to the AutoRest host
|
|
124
|
-
host.
|
|
125
|
-
|
|
124
|
+
host.writeFile({
|
|
125
|
+
filename: filePath.substr(1),
|
|
126
|
+
content: fileContents
|
|
127
|
+
});
|
|
126
128
|
}
|
|
127
129
|
});
|
|
128
130
|
}
|
|
129
131
|
exports.generateTypeScriptLibrary = generateTypeScriptLibrary;
|
|
130
|
-
function checkForConflictWithDefinitions(operationGroupName, clientDetails) {
|
|
131
|
-
if (RESERVED_MEMBER_NAMES.includes(operationGroupName.toLowerCase())) {
|
|
132
|
-
return true;
|
|
133
|
-
}
|
|
134
|
-
for (const model of clientDetails.objects) {
|
|
135
|
-
if (model.name === operationGroupName) {
|
|
136
|
-
return true;
|
|
137
|
-
}
|
|
138
|
-
}
|
|
139
|
-
return false;
|
|
140
|
-
}
|
|
141
132
|
//# sourceMappingURL=typescriptGenerator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typescriptGenerator.js","sourceRoot":"","sources":["../../src/typescriptGenerator.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;;;AAElC,qCAAqC;AACrC,oCAAoC;AACpC,6BAA6B;AAE7B,uCAAoD;AAEpD,wDAA6D;
|
|
1
|
+
{"version":3,"file":"typescriptGenerator.js","sourceRoot":"","sources":["../../src/typescriptGenerator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { AutorestExtensionHost } from "@autorest/extension-base";
|
|
2
2
|
import { AutorestOptions } from "../autorestSession";
|
|
3
3
|
/**
|
|
4
4
|
* Extracts common autorest options
|
|
5
5
|
*/
|
|
6
6
|
export declare function extractAutorestOptions(): Promise<AutorestOptions>;
|
|
7
|
-
export declare function getCredentialScopes(host:
|
|
7
|
+
export declare function getCredentialScopes(host: AutorestExtensionHost): Promise<string[] | undefined>;
|
|
8
8
|
//# sourceMappingURL=autorestOptions.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"autorestOptions.d.ts","sourceRoot":"","sources":["../../../src/utils/autorestOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,
|
|
1
|
+
{"version":3,"file":"autorestOptions.d.ts","sourceRoot":"","sources":["../../../src/utils/autorestOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAC1E,OAAO,EAAE,eAAe,EAAuB,MAAM,oBAAoB,CAAC;AAK1E;;GAEG;AACH,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,eAAe,CAAC,CA4DvE;AAkLD,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,qBAAqB,GAC1B,OAAO,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,CA8B/B"}
|
|
@@ -21,6 +21,7 @@ function extractAutorestOptions() {
|
|
|
21
21
|
const host = autorestSession_1.getHost();
|
|
22
22
|
const useCoreV2 = yield getUseCoreV2(host);
|
|
23
23
|
const restLevelClient = yield getRestLevelClient(host);
|
|
24
|
+
const rlcShortcut = yield getHasShortcutMethods(host);
|
|
24
25
|
const azureArm = yield getIsAzureArm(host);
|
|
25
26
|
const addCredentials = yield getAddCredentials(host);
|
|
26
27
|
const credentialKeyHeaderName = yield getKeyCredentialHeaderName(host);
|
|
@@ -41,12 +42,17 @@ function extractAutorestOptions() {
|
|
|
41
42
|
const headAsBoolean = yield getHeadAsBoolean(host);
|
|
42
43
|
const isTestPackage = yield getIsTestPackage(host);
|
|
43
44
|
const generateTest = yield getGenerateTest(host);
|
|
45
|
+
const batch = yield getBatch(host);
|
|
46
|
+
const multiClient = yield getMultiClient(host);
|
|
47
|
+
const generateSample = yield getGenerateSample(host);
|
|
48
|
+
const coreHttpCompatMode = yield getCoreHttpCompatMode(host);
|
|
44
49
|
return {
|
|
45
50
|
azureArm,
|
|
46
51
|
addCredentials,
|
|
47
52
|
credentialKeyHeaderName,
|
|
48
53
|
credentialScopes,
|
|
49
54
|
restLevelClient,
|
|
55
|
+
rlcShortcut,
|
|
50
56
|
srcPath,
|
|
51
57
|
outputPath,
|
|
52
58
|
packageDetails,
|
|
@@ -64,90 +70,106 @@ function extractAutorestOptions() {
|
|
|
64
70
|
headAsBoolean,
|
|
65
71
|
isTestPackage,
|
|
66
72
|
generateTest,
|
|
73
|
+
batch,
|
|
74
|
+
multiClient,
|
|
75
|
+
generateSample,
|
|
76
|
+
coreHttpCompatMode
|
|
67
77
|
};
|
|
68
78
|
});
|
|
69
79
|
}
|
|
70
80
|
exports.extractAutorestOptions = extractAutorestOptions;
|
|
81
|
+
function getHasShortcutMethods(host) {
|
|
82
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
83
|
+
const headAsBoolean = yield host.getValue("rlc-shortcut");
|
|
84
|
+
return Boolean(headAsBoolean);
|
|
85
|
+
});
|
|
86
|
+
}
|
|
71
87
|
function getHeadAsBoolean(host) {
|
|
72
88
|
return __awaiter(this, void 0, void 0, function* () {
|
|
73
|
-
const headAsBoolean = yield host.
|
|
89
|
+
const headAsBoolean = yield host.getValue("head-as-boolean");
|
|
74
90
|
return Boolean(headAsBoolean);
|
|
75
91
|
});
|
|
76
92
|
}
|
|
77
93
|
function getIsTestPackage(host) {
|
|
78
94
|
return __awaiter(this, void 0, void 0, function* () {
|
|
79
|
-
const isTestPackage = yield host.
|
|
95
|
+
const isTestPackage = yield host.getValue("is-test-package");
|
|
80
96
|
return isTestPackage === null ? false : Boolean(isTestPackage);
|
|
81
97
|
});
|
|
82
98
|
}
|
|
83
99
|
function getGenerateTest(host) {
|
|
84
100
|
return __awaiter(this, void 0, void 0, function* () {
|
|
85
|
-
const generateTest = yield host.
|
|
101
|
+
const generateTest = yield host.getValue("generate-test");
|
|
86
102
|
return generateTest === null ? false : Boolean(generateTest);
|
|
87
103
|
});
|
|
88
104
|
}
|
|
105
|
+
function getGenerateSample(host) {
|
|
106
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
107
|
+
const generateSample = yield host.getValue("generate-sample");
|
|
108
|
+
return generateSample === null ? false : Boolean(generateSample);
|
|
109
|
+
});
|
|
110
|
+
}
|
|
89
111
|
function getSkipEnumValidation(host) {
|
|
90
112
|
return __awaiter(this, void 0, void 0, function* () {
|
|
91
|
-
const skipEnumValidation = yield host.
|
|
113
|
+
const skipEnumValidation = yield host.getValue("skip-enum-validation");
|
|
92
114
|
return skipEnumValidation === true;
|
|
93
115
|
});
|
|
94
116
|
}
|
|
95
117
|
function getAllowInsecureConnection(host) {
|
|
96
118
|
return __awaiter(this, void 0, void 0, function* () {
|
|
97
|
-
return (yield host.
|
|
119
|
+
return (yield host.getValue("allow-insecure-connection")) || false;
|
|
98
120
|
});
|
|
99
121
|
}
|
|
100
122
|
function getIgnoreNullableOnOptional(host) {
|
|
101
123
|
return __awaiter(this, void 0, void 0, function* () {
|
|
102
124
|
const isAzureArm = yield getIsAzureArm(host);
|
|
103
|
-
return (yield host.
|
|
125
|
+
return (yield host.getValue("ignore-nullable-on-optional"))
|
|
104
126
|
? true
|
|
105
127
|
: isAzureArm;
|
|
106
128
|
});
|
|
107
129
|
}
|
|
108
130
|
function getDisableAsyncOperators(host) {
|
|
109
131
|
return __awaiter(this, void 0, void 0, function* () {
|
|
110
|
-
return (yield host.
|
|
132
|
+
return (yield host.getValue("disable-async-iterators")) === true;
|
|
111
133
|
});
|
|
112
134
|
}
|
|
113
135
|
function getHideClients(host) {
|
|
114
136
|
return __awaiter(this, void 0, void 0, function* () {
|
|
115
|
-
return (yield host.
|
|
137
|
+
return (yield host.getValue("hide-clients")) || false;
|
|
116
138
|
});
|
|
117
139
|
}
|
|
118
140
|
function getGenerateMetadata(host) {
|
|
119
141
|
return __awaiter(this, void 0, void 0, function* () {
|
|
120
|
-
return (yield host.
|
|
142
|
+
return (yield host.getValue("generate-metadata")) !== false;
|
|
121
143
|
});
|
|
122
144
|
}
|
|
123
145
|
function getLicenseHeader(host) {
|
|
124
146
|
return __awaiter(this, void 0, void 0, function* () {
|
|
125
|
-
return (yield host.
|
|
147
|
+
return (yield host.getValue("license-header")) || false;
|
|
126
148
|
});
|
|
127
149
|
}
|
|
128
150
|
function getTitle(host) {
|
|
129
151
|
return __awaiter(this, void 0, void 0, function* () {
|
|
130
|
-
return (yield host.
|
|
152
|
+
return (yield host.getValue("title")) || undefined;
|
|
131
153
|
});
|
|
132
154
|
}
|
|
133
155
|
function getSrcPath(host) {
|
|
134
156
|
return __awaiter(this, void 0, void 0, function* () {
|
|
135
|
-
return (yield host.
|
|
157
|
+
return (yield host.getValue("source-code-folder-path")) || "src";
|
|
136
158
|
});
|
|
137
159
|
}
|
|
138
160
|
function getOutputPath(host) {
|
|
139
161
|
return __awaiter(this, void 0, void 0, function* () {
|
|
140
|
-
return (yield host.
|
|
162
|
+
return (yield host.getValue("output-folder")) || undefined;
|
|
141
163
|
});
|
|
142
164
|
}
|
|
143
165
|
function getKeyCredentialHeaderName(host) {
|
|
144
166
|
return __awaiter(this, void 0, void 0, function* () {
|
|
145
|
-
return (yield host.
|
|
167
|
+
return (yield host.getValue("credential-key-header-name")) || undefined;
|
|
146
168
|
});
|
|
147
169
|
}
|
|
148
170
|
function getAddCredentials(host) {
|
|
149
171
|
return __awaiter(this, void 0, void 0, function* () {
|
|
150
|
-
const addCredentials = yield host.
|
|
172
|
+
const addCredentials = yield host.getValue("add-credentials");
|
|
151
173
|
// Only set addCredentials to false if explicitly set to false
|
|
152
174
|
// otherwise default to true
|
|
153
175
|
if (addCredentials === false) {
|
|
@@ -160,30 +182,30 @@ function getAddCredentials(host) {
|
|
|
160
182
|
}
|
|
161
183
|
function getIsAzureArm(host) {
|
|
162
184
|
return __awaiter(this, void 0, void 0, function* () {
|
|
163
|
-
const flag = (yield host.
|
|
164
|
-
const openapi = (yield host.
|
|
185
|
+
const flag = (yield host.getValue("azure-arm")) === true;
|
|
186
|
+
const openapi = (yield host.getValue("openapi-type")) === "arm";
|
|
165
187
|
return flag || openapi;
|
|
166
188
|
});
|
|
167
189
|
}
|
|
168
190
|
function getRestLevelClient(host) {
|
|
169
191
|
return __awaiter(this, void 0, void 0, function* () {
|
|
170
|
-
return (yield host.
|
|
192
|
+
return (yield host.getValue("rest-level-client")) === true;
|
|
171
193
|
});
|
|
172
194
|
}
|
|
173
195
|
function getUseCoreV2(host) {
|
|
174
196
|
return __awaiter(this, void 0, void 0, function* () {
|
|
175
|
-
const useCoreV2Option = yield host.
|
|
197
|
+
const useCoreV2Option = yield host.getValue("use-core-v2");
|
|
176
198
|
return useCoreV2Option === null ? true : Boolean(useCoreV2Option);
|
|
177
199
|
});
|
|
178
200
|
}
|
|
179
201
|
function getTracingInfo(host) {
|
|
180
202
|
return __awaiter(this, void 0, void 0, function* () {
|
|
181
|
-
const tracing = (yield host.
|
|
203
|
+
const tracing = (yield host.getValue("tracing-info")) || undefined;
|
|
182
204
|
if (tracing && tracing.namespace && tracing.packagePrefix) {
|
|
183
205
|
return tracing;
|
|
184
206
|
}
|
|
185
|
-
const namespace = (yield host.
|
|
186
|
-
const packagePrefix = (yield host.
|
|
207
|
+
const namespace = (yield host.getValue("tracing-info.namespace")) || undefined;
|
|
208
|
+
const packagePrefix = (yield host.getValue("tracing-info.packagePrefix")) || undefined;
|
|
187
209
|
if (packagePrefix && namespace) {
|
|
188
210
|
return {
|
|
189
211
|
namespace,
|
|
@@ -197,13 +219,14 @@ function getTracingInfo(host) {
|
|
|
197
219
|
});
|
|
198
220
|
}
|
|
199
221
|
function getPackageDetails(host) {
|
|
222
|
+
var _a;
|
|
200
223
|
return __awaiter(this, void 0, void 0, function* () {
|
|
201
224
|
const { model } = autorestSession_1.getSession();
|
|
202
225
|
const name = nameUtils_1.normalizeName(model.language.default.name, nameUtils_1.NameType.File);
|
|
203
226
|
// TODO: Look for an existing package.json and
|
|
204
|
-
const packageName = (yield host.
|
|
205
|
-
const packageNameParts = packageName.match(/(^@(.*)\/)?(.*)/);
|
|
206
|
-
const version = (yield host.
|
|
227
|
+
const packageName = (yield host.getValue("package-name")) || name;
|
|
228
|
+
const packageNameParts = (_a = packageName.match(/(^@(.*)\/)?(.*)/)) !== null && _a !== void 0 ? _a : [];
|
|
229
|
+
const version = (yield host.getValue("package-version")) || "1.0.0-beta.1";
|
|
207
230
|
return {
|
|
208
231
|
name: packageName,
|
|
209
232
|
scopeName: packageNameParts[2],
|
|
@@ -215,9 +238,9 @@ function getPackageDetails(host) {
|
|
|
215
238
|
}
|
|
216
239
|
function getCredentialScopes(host) {
|
|
217
240
|
return __awaiter(this, void 0, void 0, function* () {
|
|
218
|
-
const addCredentials = yield host.
|
|
219
|
-
const credentialScopes = yield host.
|
|
220
|
-
const azureArm = yield host.
|
|
241
|
+
const addCredentials = yield host.getValue("add-credentials");
|
|
242
|
+
const credentialScopes = yield host.getValue("credential-scopes");
|
|
243
|
+
const azureArm = yield host.getValue("azure-arm");
|
|
221
244
|
if (credentialScopes && !addCredentials) {
|
|
222
245
|
throw new Error("--credential-scopes must be used with the --add-credentials flag");
|
|
223
246
|
}
|
|
@@ -226,7 +249,7 @@ function getCredentialScopes(host) {
|
|
|
226
249
|
return ["https://management.azure.com/.default"];
|
|
227
250
|
}
|
|
228
251
|
else if (addCredentials) {
|
|
229
|
-
host.
|
|
252
|
+
host.message({
|
|
230
253
|
Channel: extension_base_1.Channel.Warning,
|
|
231
254
|
Text: `You have default credential policy BearerTokenCredentialPolicy
|
|
232
255
|
but not the --credential-scopes flag set while generating non-management plane code.
|
|
@@ -244,11 +267,28 @@ function getCredentialScopes(host) {
|
|
|
244
267
|
exports.getCredentialScopes = getCredentialScopes;
|
|
245
268
|
function getAzureOutputDirectoryPath(host) {
|
|
246
269
|
return __awaiter(this, void 0, void 0, function* () {
|
|
247
|
-
const outputDirectoryPath = yield host.
|
|
270
|
+
const outputDirectoryPath = yield host.getValue("outputFolderUri");
|
|
248
271
|
const outputDirectoryRelativePath = outputDirectoryPath === null || outputDirectoryPath === void 0 ? void 0 : outputDirectoryPath.replace(/\/$/, "").split("/").slice(-3).join("/");
|
|
249
272
|
return (outputDirectoryRelativePath === null || outputDirectoryRelativePath === void 0 ? void 0 : outputDirectoryRelativePath.substr(0, 3)) === "sdk"
|
|
250
273
|
? outputDirectoryRelativePath
|
|
251
274
|
: undefined;
|
|
252
275
|
});
|
|
253
276
|
}
|
|
277
|
+
function getBatch(host) {
|
|
278
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
279
|
+
const batch = yield host.getValue("batch");
|
|
280
|
+
return batch;
|
|
281
|
+
});
|
|
282
|
+
}
|
|
283
|
+
function getMultiClient(host) {
|
|
284
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
285
|
+
const multiClient = (yield host.getValue("multi-client")) || undefined;
|
|
286
|
+
return !!multiClient;
|
|
287
|
+
});
|
|
288
|
+
}
|
|
289
|
+
function getCoreHttpCompatMode(host) {
|
|
290
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
291
|
+
return (yield host.getValue("core-http-compat-mode")) || false;
|
|
292
|
+
});
|
|
293
|
+
}
|
|
254
294
|
//# sourceMappingURL=autorestOptions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"autorestOptions.js","sourceRoot":"","sources":["../../../src/utils/autorestOptions.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"autorestOptions.js","sourceRoot":"","sources":["../../../src/utils/autorestOptions.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
import { Operation, OperationGroup } from "@autorest/codemodel";
|
|
2
2
|
import { TypeDetails } from "../models/modelDetails";
|
|
3
|
+
export interface ReservedName {
|
|
4
|
+
name: string;
|
|
5
|
+
reservedFor: NameType[];
|
|
6
|
+
}
|
|
3
7
|
export declare enum NameType {
|
|
4
8
|
Class = 0,
|
|
5
9
|
File = 1,
|
|
@@ -13,13 +17,13 @@ export declare enum CasingConvention {
|
|
|
13
17
|
Pascal = 0,
|
|
14
18
|
Camel = 1
|
|
15
19
|
}
|
|
16
|
-
export declare function guardReservedNames(name: string, nameType: NameType): string;
|
|
20
|
+
export declare function guardReservedNames(name: string, nameType: NameType, customReservedNames?: ReservedName[]): string;
|
|
17
21
|
/**
|
|
18
22
|
* Returns a normalized Type name, this is, the type name capitalized when needed.
|
|
19
23
|
* Otherwise, return the original typename, for example primitives "string", etc. don't need capitalization.
|
|
20
24
|
*/
|
|
21
25
|
export declare function normalizeTypeName({ kind, typeName }: TypeDetails): string;
|
|
22
|
-
export declare function normalizeName(name: string, nameType: NameType, shouldGuard?: boolean): string;
|
|
26
|
+
export declare function normalizeName(name: string, nameType: NameType, shouldGuard?: boolean, customReservedNames?: ReservedName[], casingOverride?: CasingConvention): string;
|
|
23
27
|
export declare function getModelsName(title: string): string;
|
|
24
28
|
export declare function getMappersName(title: string): string;
|
|
25
29
|
export declare function getOperationFullName(operationGroup: OperationGroup, operation: Operation, clientName: string): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nameUtils.d.ts","sourceRoot":"","sources":["../../../src/utils/nameUtils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAEhE,OAAO,EAAE,WAAW,EAAgB,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"nameUtils.d.ts","sourceRoot":"","sources":["../../../src/utils/nameUtils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAEhE,OAAO,EAAE,WAAW,EAAgB,MAAM,wBAAwB,CAAC;AAEnE,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,QAAQ,EAAE,CAAC;CACzB;AAED,oBAAY,QAAQ;IAClB,KAAK,IAAA;IACL,IAAI,IAAA;IACJ,SAAS,IAAA;IACT,QAAQ,IAAA;IACR,SAAS,IAAA;IACT,SAAS,IAAA;IACT,cAAc,IAAA;CACf;AAuED,oBAAY,gBAAgB;IAC1B,MAAM,IAAA;IACN,KAAK,IAAA;CACN;AAED,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,QAAQ,EAClB,mBAAmB,GAAE,YAAY,EAAO,GACvC,MAAM,CAOR;AAmBD;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,WAAW,UAQhE;AAED,wBAAgB,aAAa,CAC3B,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,QAAQ,EAClB,WAAW,CAAC,EAAE,OAAO,EACrB,mBAAmB,GAAE,YAAY,EAAO,EACxC,cAAc,CAAC,EAAE,gBAAgB,GAChC,MAAM,CAmBR;AAcD,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAGnD;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAGpD;AAwCD,wBAAgB,oBAAoB,CAClC,cAAc,EAAE,cAAc,EAC9B,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,MAAM,UAYnB"}
|
|
@@ -77,16 +77,19 @@ const ReservedModelNames = [
|
|
|
77
77
|
{ name: "void", reservedFor: [NameType.Parameter] },
|
|
78
78
|
{ name: "while", reservedFor: [NameType.Parameter] },
|
|
79
79
|
{ name: "with", reservedFor: [NameType.Parameter] },
|
|
80
|
-
{ name: "yield", reservedFor: [NameType.Parameter] }
|
|
80
|
+
{ name: "yield", reservedFor: [NameType.Parameter] },
|
|
81
|
+
{ name: "arguments", reservedFor: [NameType.Parameter] }
|
|
81
82
|
];
|
|
82
83
|
var CasingConvention;
|
|
83
84
|
(function (CasingConvention) {
|
|
84
85
|
CasingConvention[CasingConvention["Pascal"] = 0] = "Pascal";
|
|
85
86
|
CasingConvention[CasingConvention["Camel"] = 1] = "Camel";
|
|
86
87
|
})(CasingConvention = exports.CasingConvention || (exports.CasingConvention = {}));
|
|
87
|
-
function guardReservedNames(name, nameType) {
|
|
88
|
+
function guardReservedNames(name, nameType, customReservedNames = []) {
|
|
88
89
|
const suffix = getSuffix(nameType);
|
|
89
|
-
return ReservedModelNames
|
|
90
|
+
return [...ReservedModelNames, ...customReservedNames]
|
|
91
|
+
.filter(r => r.reservedFor.includes(nameType))
|
|
92
|
+
.find(r => r.name === name.toLowerCase())
|
|
90
93
|
? `${name}${suffix}`
|
|
91
94
|
: name;
|
|
92
95
|
}
|
|
@@ -120,11 +123,11 @@ function normalizeTypeName({ kind, typeName }) {
|
|
|
120
123
|
return typeName;
|
|
121
124
|
}
|
|
122
125
|
exports.normalizeTypeName = normalizeTypeName;
|
|
123
|
-
function normalizeName(name, nameType, shouldGuard) {
|
|
126
|
+
function normalizeName(name, nameType, shouldGuard, customReservedNames = [], casingOverride) {
|
|
124
127
|
if (name.startsWith("$DO_NOT_NORMALIZE$")) {
|
|
125
128
|
return name.replace("$DO_NOT_NORMALIZE$", "");
|
|
126
129
|
}
|
|
127
|
-
const casingConvention = getCasingConvention(nameType);
|
|
130
|
+
const casingConvention = casingOverride !== null && casingOverride !== void 0 ? casingOverride : getCasingConvention(nameType);
|
|
128
131
|
const sanitizedName = sanitizeName(name);
|
|
129
132
|
const parts = getNameParts(sanitizedName);
|
|
130
133
|
const [firstPart, ...otherParts] = parts;
|
|
@@ -133,7 +136,9 @@ function normalizeName(name, nameType, shouldGuard) {
|
|
|
133
136
|
.map(part => part === "null" ? part : toCasing(part, CasingConvention.Pascal))
|
|
134
137
|
.join("");
|
|
135
138
|
const normalized = checkBeginning(`${normalizedFirstPart}${normalizedParts}`);
|
|
136
|
-
return shouldGuard
|
|
139
|
+
return shouldGuard
|
|
140
|
+
? guardReservedNames(normalized, nameType, customReservedNames)
|
|
141
|
+
: normalized;
|
|
137
142
|
}
|
|
138
143
|
exports.normalizeName = normalizeName;
|
|
139
144
|
function checkBeginning(name) {
|