@azure-tools/typespec-ts 0.11.0 → 0.12.0-alpha.20230501.1
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/.rush/temp/package-deps_build.json +265 -152
- package/.rush/temp/shrinkwrap-deps.json +58 -54
- package/CHANGELOG.md +4 -0
- package/CONTRIBUTING.md +5 -2
- package/README.md +3 -3
- package/dist/src/casingUtils.d.ts +4 -0
- package/dist/src/casingUtils.d.ts.map +1 -0
- package/dist/src/casingUtils.js +39 -0
- package/dist/src/casingUtils.js.map +1 -0
- package/dist/src/emitUtil.js +7 -1
- package/dist/src/emitUtil.js.map +1 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +41 -9
- package/dist/src/index.js.map +1 -1
- package/dist/src/lib.d.ts.map +1 -1
- package/dist/src/lib.js +2 -1
- package/dist/src/lib.js.map +1 -1
- package/dist/src/modelUtils.d.ts +22 -1
- package/dist/src/modelUtils.d.ts.map +1 -1
- package/dist/src/modelUtils.js +105 -13
- package/dist/src/modelUtils.js.map +1 -1
- package/dist/src/modular/buildApiIndex.d.ts +3 -0
- package/dist/src/modular/buildApiIndex.d.ts.map +1 -0
- package/dist/src/modular/buildApiIndex.js +12 -0
- package/dist/src/modular/buildApiIndex.js.map +1 -0
- package/dist/src/modular/buildClassicalClient.d.ts +4 -0
- package/dist/src/modular/buildClassicalClient.d.ts.map +1 -0
- package/dist/src/modular/buildClassicalClient.js +112 -0
- package/dist/src/modular/buildClassicalClient.js.map +1 -0
- package/dist/src/modular/buildClientContext.d.ts +7 -0
- package/dist/src/modular/buildClientContext.d.ts.map +1 -0
- package/dist/src/modular/buildClientContext.js +72 -0
- package/dist/src/modular/buildClientContext.js.map +1 -0
- package/dist/src/modular/buildCodeModel.d.ts +14 -0
- package/dist/src/modular/buildCodeModel.d.ts.map +1 -0
- package/dist/src/modular/buildCodeModel.js +1110 -0
- package/dist/src/modular/buildCodeModel.js.map +1 -0
- package/dist/src/modular/buildOperations.d.ts +13 -0
- package/dist/src/modular/buildOperations.d.ts.map +1 -0
- package/dist/src/modular/buildOperations.js +70 -0
- package/dist/src/modular/buildOperations.js.map +1 -0
- package/dist/src/modular/buildProjectFiles.d.ts +5 -0
- package/dist/src/modular/buildProjectFiles.d.ts.map +1 -0
- package/dist/src/modular/buildProjectFiles.js +182 -0
- package/dist/src/modular/buildProjectFiles.js.map +1 -0
- package/dist/src/modular/buildRootIndex.d.ts +4 -0
- package/dist/src/modular/buildRootIndex.d.ts.map +1 -0
- package/dist/src/modular/buildRootIndex.js +66 -0
- package/dist/src/modular/buildRootIndex.js.map +1 -0
- package/dist/src/modular/buildSharedTypes.d.ts +6 -0
- package/dist/src/modular/buildSharedTypes.d.ts.map +1 -0
- package/dist/src/modular/buildSharedTypes.js +33 -0
- package/dist/src/modular/buildSharedTypes.js.map +1 -0
- package/dist/src/modular/emitModels.d.ts +7 -0
- package/dist/src/modular/emitModels.d.ts.map +1 -0
- package/dist/src/modular/emitModels.js +63 -0
- package/dist/src/modular/emitModels.js.map +1 -0
- package/dist/src/modular/helpers/clientHelpers.d.ts +4 -0
- package/dist/src/modular/helpers/clientHelpers.d.ts.map +1 -0
- package/dist/src/modular/helpers/clientHelpers.js +31 -0
- package/dist/src/modular/helpers/clientHelpers.js.map +1 -0
- package/dist/src/modular/helpers/credentialHelpers.d.ts +7 -0
- package/dist/src/modular/helpers/credentialHelpers.d.ts.map +1 -0
- package/dist/src/modular/helpers/credentialHelpers.js +32 -0
- package/dist/src/modular/helpers/credentialHelpers.js.map +1 -0
- package/dist/src/modular/helpers/namingHelpers.d.ts +3 -0
- package/dist/src/modular/helpers/namingHelpers.d.ts.map +1 -0
- package/dist/src/modular/helpers/namingHelpers.js +4 -0
- package/dist/src/modular/helpers/namingHelpers.js.map +1 -0
- package/dist/src/modular/helpers/operationHelpers.d.ts +8 -0
- package/dist/src/modular/helpers/operationHelpers.d.ts.map +1 -0
- package/dist/src/modular/helpers/operationHelpers.js +274 -0
- package/dist/src/modular/helpers/operationHelpers.js.map +1 -0
- package/dist/src/modular/helpers/parameterHelpers.d.ts +3 -0
- package/dist/src/modular/helpers/parameterHelpers.d.ts.map +1 -0
- package/dist/src/modular/helpers/parameterHelpers.js +16 -0
- package/dist/src/modular/helpers/parameterHelpers.js.map +1 -0
- package/dist/src/modular/helpers/typeHelpers.d.ts +16 -0
- package/dist/src/modular/helpers/typeHelpers.d.ts.map +1 -0
- package/dist/src/modular/helpers/typeHelpers.js +92 -0
- package/dist/src/modular/helpers/typeHelpers.js.map +1 -0
- package/dist/src/modular/interfaces.d.ts +10 -0
- package/dist/src/modular/interfaces.d.ts.map +1 -0
- package/dist/src/modular/interfaces.js +2 -0
- package/dist/src/modular/interfaces.js.map +1 -0
- package/dist/src/modular/modularCodeModel.d.ts +121 -0
- package/dist/src/modular/modularCodeModel.d.ts.map +1 -0
- package/dist/src/modular/modularCodeModel.js +2 -0
- package/dist/src/modular/modularCodeModel.js.map +1 -0
- package/dist/src/operationUtil.d.ts +30 -4
- package/dist/src/operationUtil.d.ts.map +1 -1
- package/dist/src/operationUtil.js +77 -18
- package/dist/src/operationUtil.js.map +1 -1
- package/dist/src/transform/transform.d.ts +4 -6
- package/dist/src/transform/transform.d.ts.map +1 -1
- package/dist/src/transform/transform.js +17 -58
- package/dist/src/transform/transform.js.map +1 -1
- package/dist/src/transform/transformApiVersionInfo.d.ts +5 -0
- package/dist/src/transform/transformApiVersionInfo.d.ts.map +1 -0
- package/dist/src/transform/transformApiVersionInfo.js +64 -0
- package/dist/src/transform/transformApiVersionInfo.js.map +1 -0
- package/dist/src/transform/transformHelperFunctionDetails.d.ts +6 -0
- package/dist/src/transform/transformHelperFunctionDetails.d.ts.map +1 -0
- package/dist/src/transform/{transformAnnotationDetails.js → transformHelperFunctionDetails.js} +2 -2
- package/dist/src/transform/transformHelperFunctionDetails.js.map +1 -0
- package/dist/src/transform/transformParameters.d.ts +2 -2
- package/dist/src/transform/transformParameters.d.ts.map +1 -1
- package/dist/src/transform/transformParameters.js +20 -7
- package/dist/src/transform/transformParameters.js.map +1 -1
- package/dist/src/transform/transformPaths.d.ts +2 -2
- package/dist/src/transform/transformPaths.d.ts.map +1 -1
- package/dist/src/transform/transformPaths.js +15 -7
- package/dist/src/transform/transformPaths.js.map +1 -1
- package/dist/src/transform/transformResponses.d.ts +2 -2
- package/dist/src/transform/transformResponses.d.ts.map +1 -1
- package/dist/src/transform/transformResponses.js +23 -2
- package/dist/src/transform/transformResponses.js.map +1 -1
- package/dist/src/transform/transformSchemas.d.ts +2 -2
- package/dist/src/transform/transformSchemas.d.ts.map +1 -1
- package/dist/src/transform/transformSchemas.js +10 -22
- package/dist/src/transform/transformSchemas.js.map +1 -1
- package/dist/src/transform/transfromRLCOptions.d.ts +2 -2
- package/dist/src/transform/transfromRLCOptions.js +1 -1
- package/dist/src/transform/transfromRLCOptions.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +27 -19
- package/src/casingUtils.ts +48 -0
- package/src/emitUtil.ts +9 -4
- package/src/index.ts +53 -10
- package/src/lib.ts +2 -1
- package/src/modelUtils.ts +137 -14
- package/src/modular/buildApiIndex.ts +13 -0
- package/src/modular/buildClassicalClient.ts +147 -0
- package/src/modular/buildClientContext.ts +104 -0
- package/src/modular/buildCodeModel.ts +1449 -0
- package/src/modular/buildOperations.ts +95 -0
- package/src/modular/buildProjectFiles.ts +219 -0
- package/src/modular/buildRootIndex.ts +94 -0
- package/src/modular/buildSharedTypes.ts +40 -0
- package/src/modular/emitModels.ts +72 -0
- package/src/modular/helpers/clientHelpers.ts +38 -0
- package/src/modular/helpers/credentialHelpers.ts +40 -0
- package/src/modular/helpers/namingHelpers.ts +5 -0
- package/src/modular/helpers/operationHelpers.ts +418 -0
- package/src/modular/helpers/parameterHelpers.ts +17 -0
- package/src/modular/helpers/typeHelpers.ts +106 -0
- package/src/modular/interfaces.ts +10 -0
- package/src/modular/modularCodeModel.ts +151 -0
- package/src/modular/static/karma.conf.cjs +120 -0
- package/src/modular/static/rollup.test.config.js +67 -0
- package/src/modular/static/scripts/renameOutput.mjs +17 -0
- package/src/operationUtil.ts +119 -31
- package/src/transform/transform.ts +33 -96
- package/src/transform/transformApiVersionInfo.ts +108 -0
- package/src/transform/{transformAnnotationDetails.ts → transformHelperFunctionDetails.ts} +11 -11
- package/src/transform/transformParameters.ts +30 -14
- package/src/transform/transformPaths.ts +29 -19
- package/src/transform/transformResponses.ts +50 -8
- package/src/transform/transformSchemas.ts +20 -28
- package/src/transform/transfromRLCOptions.ts +3 -3
- package/test/commands/cadl-ranch-list.ts +53 -20
- package/test/commands/gen-cadl-ranch.ts +6 -2
- package/test/commands/run.ts +3 -13
- package/test/integration/arrayItemTypes.spec.ts +6 -3
- package/test/integration/azurecore.spec.ts +130 -0
- package/test/integration/collectionFormat.spec.ts +118 -0
- package/test/integration/dictionary.spec.ts +6 -2
- package/test/integration/extensibleEnums.spec.ts +8 -8
- package/test/integration/fixedEnums.spec.ts +7 -7
- package/test/integration/generated/arrays/itemTypes/src/clientDefinitions.ts +33 -18
- package/test/integration/generated/arrays/itemTypes/src/parameters.ts +8 -0
- package/test/integration/generated/arrays/itemTypes/src/responses.ts +11 -0
- package/test/integration/generated/arrays/itemTypes/tspconfig.yaml +5 -2
- package/test/integration/generated/authentication/apiKey/package.json +2 -2
- package/test/integration/generated/authentication/apiKey/tspconfig.yaml +5 -2
- package/test/integration/generated/authentication/oauth2/tspconfig.yaml +5 -2
- package/test/integration/generated/authentication/union/tspconfig.yaml +5 -2
- package/test/integration/generated/{resiliency/devDriven → azure/core}/README.md +7 -7
- package/test/integration/generated/{lro/lroBasic → azure/core}/api-extractor.json +1 -1
- package/test/integration/generated/{resiliency/devDriven → azure/core}/package.json +6 -6
- package/test/integration/generated/azure/core/src/azureCoreClient.ts +31 -0
- package/test/integration/generated/azure/core/src/clientDefinitions.ts +108 -0
- package/test/integration/generated/{resiliency/devDriven → azure/core}/src/index.ts +4 -3
- package/test/integration/generated/azure/core/src/isUnexpected.ts +178 -0
- package/test/integration/generated/azure/core/src/models.ts +18 -0
- package/test/integration/generated/azure/core/src/outputModels.ts +32 -0
- package/test/integration/generated/{resiliency/devDriven → azure/core}/src/paginateHelper.ts +55 -5
- package/test/integration/generated/azure/core/src/parameters.ts +68 -0
- package/test/integration/generated/azure/core/src/responses.ts +158 -0
- package/test/integration/generated/azure/core/src/serializeHelper.ts +16 -0
- package/test/integration/generated/azure/core/tspconfig.yaml +15 -0
- package/test/integration/generated/azure/core-traits/README.md +56 -0
- package/test/integration/generated/azure/core-traits/api-extractor.json +18 -0
- package/test/integration/generated/azure/core-traits/package.json +80 -0
- package/test/integration/generated/azure/core-traits/src/azureCoreTraitsClient.ts +31 -0
- package/test/integration/generated/azure/core-traits/src/clientDefinitions.ts +22 -0
- package/test/integration/generated/azure/core-traits/src/index.ts +13 -0
- package/test/integration/generated/{resiliency/devDriven → azure/core-traits}/src/isUnexpected.ts +6 -26
- package/test/integration/generated/azure/core-traits/src/outputModels.ts +10 -0
- package/test/integration/generated/azure/core-traits/src/parameters.ts +26 -0
- package/test/integration/generated/azure/core-traits/src/responses.ts +32 -0
- package/test/integration/generated/azure/core-traits/tspconfig.yaml +15 -0
- package/test/integration/generated/dictionary/package.json +2 -2
- package/test/integration/generated/dictionary/src/clientDefinitions.ts +35 -20
- package/test/integration/generated/dictionary/src/parameters.ts +8 -0
- package/test/integration/generated/dictionary/src/responses.ts +11 -0
- package/test/integration/generated/dictionary/tspconfig.yaml +5 -2
- package/test/integration/generated/enums/extensible/README.md +3 -3
- package/test/integration/generated/enums/extensible/package.json +2 -2
- package/test/integration/generated/enums/extensible/src/clientDefinitions.ts +5 -5
- package/test/integration/generated/enums/extensible/src/index.ts +3 -3
- package/test/integration/generated/enums/extensible/src/{enumsExtensible.ts → typeEnumExtensible.ts} +4 -4
- package/test/integration/generated/enums/extensible/tspconfig.yaml +5 -2
- package/test/integration/generated/enums/fixed/README.md +3 -3
- package/test/integration/generated/enums/fixed/package.json +2 -2
- package/test/integration/generated/enums/fixed/src/clientDefinitions.ts +5 -5
- package/test/integration/generated/enums/fixed/src/index.ts +3 -3
- package/test/integration/generated/enums/fixed/src/{enumsFixed.ts → typeEnumFixed.ts} +4 -4
- package/test/integration/generated/enums/fixed/tspconfig.yaml +5 -2
- package/test/integration/generated/hello/package.json +2 -2
- package/test/integration/generated/hello/tspconfig.yaml +5 -2
- package/test/integration/generated/internal/src/clientDefinitions.ts +27 -0
- package/test/integration/generated/internal/src/index.ts +13 -0
- package/test/integration/generated/{lro/lroBasic/src/azureLro.ts → internal/src/internalClient.ts} +5 -5
- package/test/integration/generated/internal/src/models.ts +8 -0
- package/test/integration/generated/internal/src/outputModels.ts +13 -0
- package/test/integration/generated/internal/src/parameters.ts +21 -0
- package/test/integration/generated/internal/src/responses.ts +20 -0
- package/test/integration/generated/internal/tspconfig.yaml +14 -0
- package/test/integration/generated/lro/lroCore/.eslintrc.json +11 -0
- package/test/integration/generated/lro/lroCore/README.md +56 -0
- package/test/integration/generated/{resiliency/devDriven → lro/lroCore}/api-extractor.json +1 -1
- package/test/integration/generated/lro/{lroBasic → lroCore}/package.json +6 -6
- package/test/integration/generated/lro/lroCore/rollup.config.js +118 -0
- package/test/integration/generated/lro/lroCore/src/clientDefinitions.ts +54 -0
- package/test/integration/generated/lro/lroCore/src/index.ts +15 -0
- package/test/integration/generated/lro/lroCore/src/isUnexpected.ts +135 -0
- package/test/integration/generated/lro/lroCore/src/models.ts +8 -0
- package/test/integration/generated/lro/lroCore/src/outputModels.ts +50 -0
- package/test/integration/generated/lro/lroCore/src/parameters.ts +25 -0
- package/test/integration/generated/lro/{lroBasic → lroCore}/src/pollingHelper.ts +38 -0
- package/test/integration/generated/lro/lroCore/src/responses.ts +109 -0
- package/test/integration/generated/lro/lroCore/src/specsAzureCoreLroStandard.ts +31 -0
- package/test/integration/generated/lro/lroCore/tsconfig.json +25 -0
- package/test/integration/generated/lro/lroCore/tspconfig.yaml +14 -0
- package/test/integration/generated/lro/lroRPC/.eslintrc.json +11 -0
- package/test/integration/generated/lro/{lroBasic → lroRPC}/README.md +7 -7
- package/test/integration/generated/lro/lroRPC/api-extractor.json +18 -0
- package/test/integration/generated/lro/lroRPC/package.json +82 -0
- package/test/integration/generated/lro/lroRPC/rollup.config.js +118 -0
- package/test/integration/generated/lro/lroRPC/src/clientDefinitions.ts +79 -0
- package/test/integration/generated/lro/lroRPC/src/index.ts +15 -0
- package/test/integration/generated/lro/lroRPC/src/isUnexpected.ts +153 -0
- package/test/integration/generated/lro/lroRPC/src/models.ts +8 -0
- package/test/integration/generated/lro/lroRPC/src/outputModels.ts +40 -0
- package/test/integration/generated/lro/lroRPC/src/parameters.ts +20 -0
- package/test/integration/generated/lro/lroRPC/src/pollingHelper.ts +127 -0
- package/test/integration/generated/lro/lroRPC/src/responses.ts +124 -0
- package/test/integration/generated/lro/lroRPC/src/specsAzureCoreLroRpc.ts +31 -0
- package/test/integration/generated/lro/lroRPC/tsconfig.json +25 -0
- package/test/integration/generated/lro/lroRPC/tspconfig.yaml +14 -0
- package/test/integration/generated/models/inheritance/README.md +3 -3
- package/test/integration/generated/models/inheritance/package.json +2 -2
- package/test/integration/generated/models/inheritance/src/clientDefinitions.ts +13 -11
- package/test/integration/generated/models/inheritance/src/index.ts +3 -3
- package/test/integration/generated/models/inheritance/src/{modelsInheritance.ts → typeModelInheritance.ts} +4 -4
- package/test/integration/generated/models/inheritance/tspconfig.yaml +5 -2
- package/test/integration/generated/models/propertyNullable/.eslintrc.json +11 -0
- package/test/integration/generated/models/propertyNullable/README.md +56 -0
- package/test/integration/generated/models/propertyNullable/api-extractor.json +18 -0
- package/test/integration/generated/models/propertyNullable/package.json +80 -0
- package/test/integration/generated/models/propertyNullable/rollup.config.js +118 -0
- package/test/integration/generated/models/propertyNullable/src/clientDefinitions.ts +227 -0
- package/test/integration/generated/models/propertyNullable/src/index.ts +13 -0
- package/test/integration/generated/models/propertyNullable/src/models.ts +56 -0
- package/test/integration/generated/models/propertyNullable/src/outputModels.ts +56 -0
- package/test/integration/generated/models/propertyNullable/src/parameters.ts +197 -0
- package/test/integration/generated/models/propertyNullable/src/responses.ts +144 -0
- package/test/integration/generated/{resiliency/devDriven/src/resiliencyDevDriven.ts → models/propertyNullable/src/typePropertyNullable.ts} +5 -5
- package/test/integration/generated/models/propertyNullable/tsconfig.json +25 -0
- package/test/integration/generated/models/propertyNullable/tspconfig.yaml +14 -0
- package/test/integration/generated/models/propertyOptional/README.md +3 -3
- package/test/integration/generated/models/propertyOptional/package.json +2 -2
- package/test/integration/generated/models/propertyOptional/src/clientDefinitions.ts +47 -47
- package/test/integration/generated/models/propertyOptional/src/index.ts +3 -3
- package/test/integration/generated/models/propertyOptional/src/parameters.ts +7 -6
- package/test/integration/generated/models/propertyOptional/src/responses.ts +4 -4
- package/test/integration/generated/models/propertyOptional/src/{modelsPropertyOptional.ts → typePropertyOptional.ts} +4 -4
- package/test/integration/generated/models/propertyOptional/tspconfig.yaml +5 -2
- package/test/integration/generated/models/propertyTypes/README.md +3 -3
- package/test/integration/generated/models/propertyTypes/package.json +2 -2
- package/test/integration/generated/models/propertyTypes/src/clientDefinitions.ts +55 -47
- package/test/integration/generated/models/propertyTypes/src/index.ts +3 -3
- package/test/integration/generated/models/propertyTypes/src/parameters.ts +8 -6
- package/test/integration/generated/models/propertyTypes/src/responses.ts +4 -4
- package/test/integration/generated/models/propertyTypes/src/{modelsPropertyTypes.ts → typePropertyValueTypes.ts} +4 -4
- package/test/integration/generated/models/propertyTypes/tspconfig.yaml +5 -2
- package/test/integration/generated/models/usage/README.md +3 -3
- package/test/integration/generated/models/usage/package.json +2 -2
- package/test/integration/generated/models/usage/src/clientDefinitions.ts +7 -7
- package/test/integration/generated/models/usage/src/index.ts +3 -3
- package/test/integration/generated/models/usage/src/{modelsUsage.ts → typeModelUsage.ts} +4 -4
- package/test/integration/generated/models/usage/tspconfig.yaml +5 -2
- package/test/integration/generated/models/visibility/README.md +3 -3
- package/test/integration/generated/models/visibility/package.json +2 -2
- package/test/integration/generated/models/visibility/src/clientDefinitions.ts +3 -3
- package/test/integration/generated/models/visibility/src/index.ts +3 -3
- package/test/integration/generated/models/visibility/src/{modelsVisibilityAutomatic.ts → typeModelVisibility.ts} +4 -4
- package/test/integration/generated/models/visibility/tspconfig.yaml +5 -2
- package/test/integration/generated/parameters/collection-format/src/clientDefinitions.ts +63 -0
- package/test/integration/generated/parameters/collection-format/src/collectionFormatClient.ts +31 -0
- package/test/integration/generated/parameters/collection-format/src/index.ts +12 -0
- package/test/integration/generated/parameters/collection-format/src/parameters.ts +71 -0
- package/test/integration/generated/parameters/collection-format/src/responses.ts +34 -0
- package/test/integration/generated/parameters/collection-format/src/serializeHelper.ts +28 -0
- package/test/integration/generated/parameters/collection-format/tspconfig.yaml +14 -0
- package/test/integration/generated/parameters/spread/src/clientDefinitions.ts +61 -0
- package/test/integration/generated/{lro/lroBasic → parameters/spread}/src/index.ts +4 -4
- package/test/integration/generated/parameters/spread/src/models.ts +7 -0
- package/test/integration/generated/parameters/spread/src/parameters.ts +61 -0
- package/test/integration/generated/parameters/spread/src/parametersSpread.ts +31 -0
- package/test/integration/generated/parameters/spread/src/responses.ts +25 -0
- package/test/integration/generated/parameters/spread/tspconfig.yaml +12 -0
- package/test/integration/generated/projection/src/clientDefinitions.ts +71 -0
- package/test/integration/generated/projection/src/index.ts +12 -0
- package/test/integration/generated/projection/src/models.ts +22 -0
- package/test/integration/generated/projection/src/parameters.ts +48 -0
- package/test/integration/generated/projection/src/projectionClient.ts +31 -0
- package/test/integration/generated/projection/src/responses.ts +34 -0
- package/test/integration/generated/projection/tspconfig.yaml +14 -0
- package/test/integration/generated/resiliency/srvDriven1/README.md +4 -4
- package/test/integration/generated/resiliency/srvDriven1/package.json +2 -2
- package/test/integration/generated/resiliency/srvDriven1/src/clientDefinitions.ts +25 -49
- package/test/integration/generated/resiliency/srvDriven1/src/index.ts +3 -5
- package/test/integration/generated/resiliency/srvDriven1/src/parameters.ts +11 -32
- package/test/integration/generated/resiliency/srvDriven1/src/responses.ts +9 -24
- package/test/integration/generated/resiliency/srvDriven1/src/serviceDrivenOldClient.ts +39 -0
- package/test/integration/generated/resiliency/srvDriven1/tspconfig.yaml +6 -2
- package/test/integration/generated/resiliency/srvDriven2/README.md +13 -4
- package/test/integration/generated/resiliency/srvDriven2/package.json +2 -2
- package/test/integration/generated/resiliency/srvDriven2/src/clientDefinitions.ts +32 -68
- package/test/integration/generated/resiliency/srvDriven2/src/index.ts +3 -5
- package/test/integration/generated/resiliency/srvDriven2/src/parameters.ts +19 -42
- package/test/integration/generated/resiliency/srvDriven2/src/responses.ts +10 -31
- package/test/integration/generated/resiliency/srvDriven2/src/serviceDrivenNewClient.ts +39 -0
- package/test/integration/generated/resiliency/srvDriven2/tspconfig.yaml +6 -2
- package/test/integration/generated/server/path/multiple/src/clientDefinitions.ts +35 -0
- package/test/integration/generated/server/path/multiple/src/index.ts +11 -0
- package/test/integration/generated/server/path/multiple/src/multipleParamInServerPathClient.ts +39 -0
- package/test/integration/generated/server/path/multiple/src/parameters.ts +7 -0
- package/test/integration/generated/server/path/multiple/src/responses.ts +14 -0
- package/test/integration/generated/server/path/multiple/tspconfig.yaml +14 -0
- package/test/integration/generated/server/path/single/src/clientDefinitions.ts +19 -0
- package/test/integration/generated/server/path/single/src/index.ts +11 -0
- package/test/integration/generated/server/path/single/src/parameters.ts +6 -0
- package/test/integration/generated/server/path/single/src/responses.ts +9 -0
- package/test/integration/generated/server/path/single/src/singleParamInServerPathClient.ts +34 -0
- package/test/integration/generated/server/path/single/tspconfig.yaml +14 -0
- package/test/integration/generated/specialWords/tspconfig.yaml +5 -2
- package/test/integration/generated/unions/src/clientDefinitions.ts +8 -8
- package/test/integration/generated/unions/tspconfig.yaml +5 -2
- package/test/integration/internal.spec.ts +43 -0
- package/test/integration/lroCore.spec.ts +89 -0
- package/test/integration/modelInheritance.spec.ts +13 -13
- package/test/integration/modelPropertyNullable.spec.ts +115 -0
- package/test/integration/modelPropertyOptional.spec.ts +32 -32
- package/test/integration/modelPropertyType.spec.ts +6 -6
- package/test/integration/modelUsage.spec.ts +7 -7
- package/test/integration/projection.spec.ts +102 -0
- package/test/integration/resiliencyDpgCustomization.spec.ts +69 -35
- package/test/integration/server.spec.ts +59 -0
- package/test/integration/spreadParameters.spec.ts +82 -0
- package/test/integration/unions.spec.ts +4 -4
- package/test/unit/apiVersion.spec.ts +388 -0
- package/test/unit/clientFactoryGenerator.spec.ts +0 -131
- package/test/unit/modelsGenerator.spec.ts +2 -2
- package/test/unit/parametersGenerator.spec.ts +1 -1
- package/test/unit/responsesGenerator.spec.ts +1 -1
- package/test/unit/util/emitUtil.ts +6 -5
- package/test/unit/util/testUtil.ts +3 -3
- package/dist/src/transform/transformAnnotationDetails.d.ts +0 -6
- package/dist/src/transform/transformAnnotationDetails.d.ts.map +0 -1
- package/dist/src/transform/transformAnnotationDetails.js.map +0 -1
- package/dist/src/transform/transformApiVersionParam.d.ts +0 -5
- package/dist/src/transform/transformApiVersionParam.d.ts.map +0 -1
- package/dist/src/transform/transformApiVersionParam.js +0 -76
- package/dist/src/transform/transformApiVersionParam.js.map +0 -1
- package/src/transform/transformApiVersionParam.ts +0 -104
- package/test/integration/generated/lro/lroBasic/src/clientDefinitions.ts +0 -37
- package/test/integration/generated/lro/lroBasic/src/parameters.ts +0 -8
- package/test/integration/generated/lro/lroBasic/src/responses.ts +0 -22
- package/test/integration/generated/lro/lroBasic/tspconfig.yaml +0 -11
- package/test/integration/generated/resiliency/devDriven/src/clientDefinitions.ts +0 -75
- package/test/integration/generated/resiliency/devDriven/src/models.ts +0 -8
- package/test/integration/generated/resiliency/devDriven/src/outputModels.ts +0 -25
- package/test/integration/generated/resiliency/devDriven/src/parameters.ts +0 -17
- package/test/integration/generated/resiliency/devDriven/src/responses.ts +0 -62
- package/test/integration/generated/resiliency/devDriven/tspconfig.yaml +0 -11
- package/test/integration/generated/resiliency/srvDriven1/src/models.ts +0 -6
- package/test/integration/generated/resiliency/srvDriven1/src/outputModels.ts +0 -6
- package/test/integration/generated/resiliency/srvDriven1/src/resiliencyServiceDriven1.ts +0 -31
- package/test/integration/generated/resiliency/srvDriven2/src/models.ts +0 -6
- package/test/integration/generated/resiliency/srvDriven2/src/outputModels.ts +0 -6
- package/test/integration/generated/resiliency/srvDriven2/src/resiliencyServiceDriven2.ts +0 -31
- package/test/integration/helloWorld.spec.ts +0 -20
- package/test/integration/lroBasic.spec.ts +0 -25
- /package/test/integration/generated/{resiliency/devDriven → azure/core}/.eslintrc.json +0 -0
- /package/test/integration/generated/{resiliency/devDriven → azure/core}/rollup.config.js +0 -0
- /package/test/integration/generated/{resiliency/devDriven → azure/core}/tsconfig.json +0 -0
- /package/test/integration/generated/{lro/lroBasic → azure/core-traits}/.eslintrc.json +0 -0
- /package/test/integration/generated/{lro/lroBasic → azure/core-traits}/rollup.config.js +0 -0
- /package/test/integration/generated/{lro/lroBasic → azure/core-traits}/tsconfig.json +0 -0
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
// Copyright (c) Microsoft Corporation.
|
|
2
|
+
// Licensed under the MIT license.
|
|
3
|
+
|
|
4
|
+
import { RawHttpHeadersInput } from "@azure/core-rest-pipeline";
|
|
5
|
+
import { RequestParameters } from "@azure-rest/core-client";
|
|
6
|
+
|
|
7
|
+
export interface QueryMultiQueryParamProperties {
|
|
8
|
+
/** Possible values for colors are [blue,red,green] This parameter needs to be formatted as multi collection, we provide buildMultiCollection from serializeHelper.ts to help, you will probably need to set skipUrlEncoding as true when sending the request */
|
|
9
|
+
colors: string;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export interface QueryMultiQueryParam {
|
|
13
|
+
queryParameters: QueryMultiQueryParamProperties;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export type QueryMultiParameters = QueryMultiQueryParam & RequestParameters;
|
|
17
|
+
|
|
18
|
+
export interface QuerySsvQueryParamProperties {
|
|
19
|
+
/** Possible values for colors are [blue,red,green] This parameter needs to be formatted as ssv collection, we provide buildSsvCollection from serializeHelper.ts to help */
|
|
20
|
+
colors: string;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export interface QuerySsvQueryParam {
|
|
24
|
+
queryParameters: QuerySsvQueryParamProperties;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
export type QuerySsvParameters = QuerySsvQueryParam & RequestParameters;
|
|
28
|
+
|
|
29
|
+
export interface QueryTsvQueryParamProperties {
|
|
30
|
+
/** Possible values for colors are [blue,red,green] This parameter needs to be formatted as tsv collection, we provide buildTsvCollection from serializeHelper.ts to help */
|
|
31
|
+
colors: string;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
export interface QueryTsvQueryParam {
|
|
35
|
+
queryParameters: QueryTsvQueryParamProperties;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
export type QueryTsvParameters = QueryTsvQueryParam & RequestParameters;
|
|
39
|
+
|
|
40
|
+
export interface QueryPipesQueryParamProperties {
|
|
41
|
+
/** Possible values for colors are [blue,red,green] This parameter needs to be formatted as pipe collection, we provide buildPipeCollection from serializeHelper.ts to help */
|
|
42
|
+
colors: string;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
export interface QueryPipesQueryParam {
|
|
46
|
+
queryParameters: QueryPipesQueryParamProperties;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
export type QueryPipesParameters = QueryPipesQueryParam & RequestParameters;
|
|
50
|
+
|
|
51
|
+
export interface QueryCsvQueryParamProperties {
|
|
52
|
+
/** Possible values for colors are [blue,red,green] */
|
|
53
|
+
colors: string[];
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
export interface QueryCsvQueryParam {
|
|
57
|
+
queryParameters: QueryCsvQueryParamProperties;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
export type QueryCsvParameters = QueryCsvQueryParam & RequestParameters;
|
|
61
|
+
|
|
62
|
+
export interface HeaderCsvHeaders {
|
|
63
|
+
/** Possible values for colors are [blue,red,green] */
|
|
64
|
+
colors: string[];
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
export interface HeaderCsvHeaderParam {
|
|
68
|
+
headers: RawHttpHeadersInput & HeaderCsvHeaders;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
export type HeaderCsvParameters = HeaderCsvHeaderParam & RequestParameters;
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
// Copyright (c) Microsoft Corporation.
|
|
2
|
+
// Licensed under the MIT license.
|
|
3
|
+
|
|
4
|
+
import { HttpResponse } from "@azure-rest/core-client";
|
|
5
|
+
|
|
6
|
+
/** There is no content to send for this request, but the headers may be useful. */
|
|
7
|
+
export interface QueryMulti204Response extends HttpResponse {
|
|
8
|
+
status: "204";
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
/** There is no content to send for this request, but the headers may be useful. */
|
|
12
|
+
export interface QuerySsv204Response extends HttpResponse {
|
|
13
|
+
status: "204";
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
/** There is no content to send for this request, but the headers may be useful. */
|
|
17
|
+
export interface QueryTsv204Response extends HttpResponse {
|
|
18
|
+
status: "204";
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
/** There is no content to send for this request, but the headers may be useful. */
|
|
22
|
+
export interface QueryPipes204Response extends HttpResponse {
|
|
23
|
+
status: "204";
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
/** There is no content to send for this request, but the headers may be useful. */
|
|
27
|
+
export interface QueryCsv204Response extends HttpResponse {
|
|
28
|
+
status: "204";
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
/** There is no content to send for this request, but the headers may be useful. */
|
|
32
|
+
export interface HeaderCsv204Response extends HttpResponse {
|
|
33
|
+
status: "204";
|
|
34
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
// Copyright (c) Microsoft Corporation.
|
|
2
|
+
// Licensed under the MIT license.
|
|
3
|
+
|
|
4
|
+
export function buildMultiCollection(
|
|
5
|
+
queryParameters: string[],
|
|
6
|
+
parameterName: string
|
|
7
|
+
) {
|
|
8
|
+
return queryParameters
|
|
9
|
+
.map((item, index) => {
|
|
10
|
+
if (index === 0) {
|
|
11
|
+
return item;
|
|
12
|
+
}
|
|
13
|
+
return `${parameterName}=${item}`;
|
|
14
|
+
})
|
|
15
|
+
.join("&");
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export function buildPipeCollection(queryParameters: string[]): string {
|
|
19
|
+
return queryParameters.join("|");
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
export function buildSsvCollection(queryParameters: string[]): string {
|
|
23
|
+
return queryParameters.join(" ");
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export function buildTsvCollection(queryParameters: string[]) {
|
|
27
|
+
return queryParameters.join("\t");
|
|
28
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
emit:
|
|
2
|
+
- "@azure-tools/typespec-ts"
|
|
3
|
+
options:
|
|
4
|
+
"@azure-tools/typespec-ts":
|
|
5
|
+
"emitter-output-dir": "{project-root}"
|
|
6
|
+
generateMetadata: false
|
|
7
|
+
generateTest: false
|
|
8
|
+
addCredentials: false
|
|
9
|
+
azureSdkForJs: false
|
|
10
|
+
isCadlTest: true
|
|
11
|
+
title: CollectionFormatClient
|
|
12
|
+
packageDetails:
|
|
13
|
+
name: "@msinternal/collectionFormat"
|
|
14
|
+
description: "CollectionFormat Test Service"
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
// Copyright (c) Microsoft Corporation.
|
|
2
|
+
// Licensed under the MIT license.
|
|
3
|
+
|
|
4
|
+
import {
|
|
5
|
+
ModelSpreadAsRequestBodyParameters,
|
|
6
|
+
AliasSpreadAsRequestBodyParameters,
|
|
7
|
+
AliasSpreadAsRequestParameterParameters,
|
|
8
|
+
AliasSpreadWithMultipleParametersParameters,
|
|
9
|
+
} from "./parameters";
|
|
10
|
+
import {
|
|
11
|
+
ModelSpreadAsRequestBody204Response,
|
|
12
|
+
AliasSpreadAsRequestBody204Response,
|
|
13
|
+
AliasSpreadAsRequestParameter204Response,
|
|
14
|
+
AliasSpreadWithMultipleParameters204Response,
|
|
15
|
+
} from "./responses";
|
|
16
|
+
import { Client, StreamableMethod } from "@azure-rest/core-client";
|
|
17
|
+
|
|
18
|
+
export interface ModelSpreadAsRequestBody {
|
|
19
|
+
put(
|
|
20
|
+
options?: ModelSpreadAsRequestBodyParameters
|
|
21
|
+
): StreamableMethod<ModelSpreadAsRequestBody204Response>;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
export interface AliasSpreadAsRequestBody {
|
|
25
|
+
put(
|
|
26
|
+
options?: AliasSpreadAsRequestBodyParameters
|
|
27
|
+
): StreamableMethod<AliasSpreadAsRequestBody204Response>;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
export interface AliasSpreadAsRequestParameter {
|
|
31
|
+
put(
|
|
32
|
+
options: AliasSpreadAsRequestParameterParameters
|
|
33
|
+
): StreamableMethod<AliasSpreadAsRequestParameter204Response>;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
export interface AliasSpreadWithMultipleParameters {
|
|
37
|
+
put(
|
|
38
|
+
options: AliasSpreadWithMultipleParametersParameters
|
|
39
|
+
): StreamableMethod<AliasSpreadWithMultipleParameters204Response>;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
export interface Routes {
|
|
43
|
+
/** Resource for '/parameters/spread/model/request-body' has methods for the following verbs: put */
|
|
44
|
+
(path: "/parameters/spread/model/request-body"): ModelSpreadAsRequestBody;
|
|
45
|
+
/** Resource for '/parameters/spread/alias/request-body' has methods for the following verbs: put */
|
|
46
|
+
(path: "/parameters/spread/alias/request-body"): AliasSpreadAsRequestBody;
|
|
47
|
+
/** Resource for '/parameters/spread/alias/request-parameter/\{id\}' has methods for the following verbs: put */
|
|
48
|
+
(
|
|
49
|
+
path: "/parameters/spread/alias/request-parameter/{id}",
|
|
50
|
+
id: string
|
|
51
|
+
): AliasSpreadAsRequestParameter;
|
|
52
|
+
/** Resource for '/parameters/spread/alias/multiple-parameters/\{id\}' has methods for the following verbs: put */
|
|
53
|
+
(
|
|
54
|
+
path: "/parameters/spread/alias/multiple-parameters/{id}",
|
|
55
|
+
id: string
|
|
56
|
+
): AliasSpreadWithMultipleParameters;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
export type ParametersSpreadClient = Client & {
|
|
60
|
+
path: Routes;
|
|
61
|
+
};
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
// Copyright (c) Microsoft Corporation.
|
|
2
2
|
// Licensed under the MIT license.
|
|
3
3
|
|
|
4
|
-
import
|
|
4
|
+
import ParametersSpread from "./parametersSpread";
|
|
5
5
|
|
|
6
|
-
export * from "./
|
|
6
|
+
export * from "./parametersSpread";
|
|
7
7
|
export * from "./parameters";
|
|
8
8
|
export * from "./responses";
|
|
9
9
|
export * from "./clientDefinitions";
|
|
10
|
-
export * from "./
|
|
10
|
+
export * from "./models";
|
|
11
11
|
|
|
12
|
-
export default
|
|
12
|
+
export default ParametersSpread;
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
// Copyright (c) Microsoft Corporation.
|
|
2
|
+
// Licensed under the MIT license.
|
|
3
|
+
|
|
4
|
+
import { RawHttpHeadersInput } from "@azure/core-rest-pipeline";
|
|
5
|
+
import { RequestParameters } from "@azure-rest/core-client";
|
|
6
|
+
import { BodyParameter } from "./models";
|
|
7
|
+
|
|
8
|
+
export interface ModelSpreadAsRequestBodyBodyParam {
|
|
9
|
+
body?: BodyParameter;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export type ModelSpreadAsRequestBodyParameters =
|
|
13
|
+
ModelSpreadAsRequestBodyBodyParam & RequestParameters;
|
|
14
|
+
|
|
15
|
+
export interface AliasSpreadAsRequestBodyBodyParam {
|
|
16
|
+
body?: { name: string };
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export type AliasSpreadAsRequestBodyParameters =
|
|
20
|
+
AliasSpreadAsRequestBodyBodyParam & RequestParameters;
|
|
21
|
+
|
|
22
|
+
export interface AliasSpreadAsRequestParameterHeaders {
|
|
23
|
+
"x-ms-test-header": string;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export interface AliasSpreadAsRequestParameterBodyParam {
|
|
27
|
+
body?: { name: string };
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
export interface AliasSpreadAsRequestParameterHeaderParam {
|
|
31
|
+
headers: RawHttpHeadersInput & AliasSpreadAsRequestParameterHeaders;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
export type AliasSpreadAsRequestParameterParameters =
|
|
35
|
+
AliasSpreadAsRequestParameterHeaderParam &
|
|
36
|
+
AliasSpreadAsRequestParameterBodyParam &
|
|
37
|
+
RequestParameters;
|
|
38
|
+
|
|
39
|
+
export interface AliasSpreadWithMultipleParametersHeaders {
|
|
40
|
+
"x-ms-test-header": string;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
export interface AliasSpreadWithMultipleParametersBodyParam {
|
|
44
|
+
body?: {
|
|
45
|
+
prop1: string;
|
|
46
|
+
prop2: string;
|
|
47
|
+
prop3: string;
|
|
48
|
+
prop4: string;
|
|
49
|
+
prop5: string;
|
|
50
|
+
prop6: string;
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
export interface AliasSpreadWithMultipleParametersHeaderParam {
|
|
55
|
+
headers: RawHttpHeadersInput & AliasSpreadWithMultipleParametersHeaders;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
export type AliasSpreadWithMultipleParametersParameters =
|
|
59
|
+
AliasSpreadWithMultipleParametersHeaderParam &
|
|
60
|
+
AliasSpreadWithMultipleParametersBodyParam &
|
|
61
|
+
RequestParameters;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
// Copyright (c) Microsoft Corporation.
|
|
2
|
+
// Licensed under the MIT license.
|
|
3
|
+
|
|
4
|
+
import { getClient, ClientOptions } from "@azure-rest/core-client";
|
|
5
|
+
import { ParametersSpreadClient } from "./clientDefinitions";
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Initialize a new instance of `ParametersSpreadClient`
|
|
9
|
+
* @param options type: ClientOptions, the parameter for all optional parameters
|
|
10
|
+
*/
|
|
11
|
+
export default function createClient(
|
|
12
|
+
options: ClientOptions = {}
|
|
13
|
+
): ParametersSpreadClient {
|
|
14
|
+
const baseUrl = options.baseUrl ?? `http://localhost:3000`;
|
|
15
|
+
options.apiVersion = options.apiVersion ?? "1.0.0";
|
|
16
|
+
const userAgentInfo = `azsdk-js-parameterSpread-rest/1.0.0-beta.1`;
|
|
17
|
+
const userAgentPrefix =
|
|
18
|
+
options.userAgentOptions && options.userAgentOptions.userAgentPrefix
|
|
19
|
+
? `${options.userAgentOptions.userAgentPrefix} ${userAgentInfo}`
|
|
20
|
+
: `${userAgentInfo}`;
|
|
21
|
+
options = {
|
|
22
|
+
...options,
|
|
23
|
+
userAgentOptions: {
|
|
24
|
+
userAgentPrefix,
|
|
25
|
+
},
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
const client = getClient(baseUrl, options) as ParametersSpreadClient;
|
|
29
|
+
|
|
30
|
+
return client;
|
|
31
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
// Copyright (c) Microsoft Corporation.
|
|
2
|
+
// Licensed under the MIT license.
|
|
3
|
+
|
|
4
|
+
import { HttpResponse } from "@azure-rest/core-client";
|
|
5
|
+
|
|
6
|
+
/** There is no content to send for this request, but the headers may be useful. */
|
|
7
|
+
export interface ModelSpreadAsRequestBody204Response extends HttpResponse {
|
|
8
|
+
status: "204";
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
/** There is no content to send for this request, but the headers may be useful. */
|
|
12
|
+
export interface AliasSpreadAsRequestBody204Response extends HttpResponse {
|
|
13
|
+
status: "204";
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
/** There is no content to send for this request, but the headers may be useful. */
|
|
17
|
+
export interface AliasSpreadAsRequestParameter204Response extends HttpResponse {
|
|
18
|
+
status: "204";
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
/** There is no content to send for this request, but the headers may be useful. */
|
|
22
|
+
export interface AliasSpreadWithMultipleParameters204Response
|
|
23
|
+
extends HttpResponse {
|
|
24
|
+
status: "204";
|
|
25
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
emit:
|
|
2
|
+
- "@azure-tools/typespec-ts"
|
|
3
|
+
options:
|
|
4
|
+
"@azure-tools/typespec-ts":
|
|
5
|
+
"emitter-output-dir": "{project-root}"
|
|
6
|
+
generateMetadata: false
|
|
7
|
+
generateTest: false
|
|
8
|
+
addCredentials: false
|
|
9
|
+
azureSdkForJs: false
|
|
10
|
+
isCadlTest: true
|
|
11
|
+
packageDetails:
|
|
12
|
+
name: "@msinternal/parameterSpread"
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
// Copyright (c) Microsoft Corporation.
|
|
2
|
+
// Licensed under the MIT license.
|
|
3
|
+
|
|
4
|
+
import {
|
|
5
|
+
PropertyJsonParameters,
|
|
6
|
+
PropertyClientParameters,
|
|
7
|
+
PropertyLanguageParameters,
|
|
8
|
+
PropertyJsonAndClientParameters,
|
|
9
|
+
OperationParameters,
|
|
10
|
+
ParameterParameters,
|
|
11
|
+
} from "./parameters";
|
|
12
|
+
import {
|
|
13
|
+
PropertyJson204Response,
|
|
14
|
+
PropertyClient204Response,
|
|
15
|
+
PropertyLanguage204Response,
|
|
16
|
+
PropertyJsonAndClient204Response,
|
|
17
|
+
Operation204Response,
|
|
18
|
+
Parameter204Response,
|
|
19
|
+
} from "./responses";
|
|
20
|
+
import { Client, StreamableMethod } from "@azure-rest/core-client";
|
|
21
|
+
|
|
22
|
+
export interface Json {
|
|
23
|
+
post(
|
|
24
|
+
options?: PropertyJsonParameters
|
|
25
|
+
): StreamableMethod<PropertyJson204Response>;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export interface _client {
|
|
29
|
+
post(
|
|
30
|
+
options?: PropertyClientParameters
|
|
31
|
+
): StreamableMethod<PropertyClient204Response>;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
export interface Language {
|
|
35
|
+
post(
|
|
36
|
+
options?: PropertyLanguageParameters
|
|
37
|
+
): StreamableMethod<PropertyLanguage204Response>;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
export interface JsonAndClient {
|
|
41
|
+
post(
|
|
42
|
+
options?: PropertyJsonAndClientParameters
|
|
43
|
+
): StreamableMethod<PropertyJsonAndClient204Response>;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
export interface Operation {
|
|
47
|
+
post(options?: OperationParameters): StreamableMethod<Operation204Response>;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
export interface Parameter {
|
|
51
|
+
post(options: ParameterParameters): StreamableMethod<Parameter204Response>;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
export interface Routes {
|
|
55
|
+
/** Resource for '/projection/projected-name/property/json' has methods for the following verbs: post */
|
|
56
|
+
(path: "/projection/projected-name/property/json"): Json;
|
|
57
|
+
/** Resource for '/projection/projected-name/property/client' has methods for the following verbs: post */
|
|
58
|
+
(path: "/projection/projected-name/property/client"): _client;
|
|
59
|
+
/** Resource for '/projection/projected-name/property/language' has methods for the following verbs: post */
|
|
60
|
+
(path: "/projection/projected-name/property/language"): Language;
|
|
61
|
+
/** Resource for '/projection/projected-name/property/json-and-client' has methods for the following verbs: post */
|
|
62
|
+
(path: "/projection/projected-name/property/json-and-client"): JsonAndClient;
|
|
63
|
+
/** Resource for '/projection/projected-name/operation' has methods for the following verbs: post */
|
|
64
|
+
(path: "/projection/projected-name/operation"): Operation;
|
|
65
|
+
/** Resource for '/projection/projected-name/parameter' has methods for the following verbs: post */
|
|
66
|
+
(path: "/projection/projected-name/parameter"): Parameter;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
export type ProjectionClient = Client & {
|
|
70
|
+
path: Routes;
|
|
71
|
+
};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
// Copyright (c) Microsoft Corporation.
|
|
2
|
+
// Licensed under the MIT license.
|
|
3
|
+
|
|
4
|
+
import ProjectionClient from "./projectionClient";
|
|
5
|
+
|
|
6
|
+
export * from "./projectionClient";
|
|
7
|
+
export * from "./parameters";
|
|
8
|
+
export * from "./responses";
|
|
9
|
+
export * from "./clientDefinitions";
|
|
10
|
+
export * from "./models";
|
|
11
|
+
|
|
12
|
+
export default ProjectionClient;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
// Copyright (c) Microsoft Corporation.
|
|
2
|
+
// Licensed under the MIT license.
|
|
3
|
+
|
|
4
|
+
export interface JsonProjectedNameModel {
|
|
5
|
+
/** Pass in true */
|
|
6
|
+
wireName: boolean;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
export interface ClientProjectedNameModel {
|
|
10
|
+
/** Pass in true */
|
|
11
|
+
defaultName: boolean;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export interface LanguageProjectedNameModel {
|
|
15
|
+
/** Pass in true */
|
|
16
|
+
defaultName: boolean;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export interface JsonAndClientProjectedNameModel {
|
|
20
|
+
/** Pass in true */
|
|
21
|
+
wireName: boolean;
|
|
22
|
+
}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
// Copyright (c) Microsoft Corporation.
|
|
2
|
+
// Licensed under the MIT license.
|
|
3
|
+
|
|
4
|
+
import { RequestParameters } from "@azure-rest/core-client";
|
|
5
|
+
import {
|
|
6
|
+
JsonProjectedNameModel,
|
|
7
|
+
ClientProjectedNameModel,
|
|
8
|
+
LanguageProjectedNameModel,
|
|
9
|
+
JsonAndClientProjectedNameModel,
|
|
10
|
+
} from "./models";
|
|
11
|
+
|
|
12
|
+
export interface PropertyJsonBodyParam {
|
|
13
|
+
body?: JsonProjectedNameModel;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export type PropertyJsonParameters = PropertyJsonBodyParam & RequestParameters;
|
|
17
|
+
|
|
18
|
+
export interface PropertyClientBodyParam {
|
|
19
|
+
body?: ClientProjectedNameModel;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
export type PropertyClientParameters = PropertyClientBodyParam &
|
|
23
|
+
RequestParameters;
|
|
24
|
+
|
|
25
|
+
export interface PropertyLanguageBodyParam {
|
|
26
|
+
body?: LanguageProjectedNameModel;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
export type PropertyLanguageParameters = PropertyLanguageBodyParam &
|
|
30
|
+
RequestParameters;
|
|
31
|
+
|
|
32
|
+
export interface PropertyJsonAndClientBodyParam {
|
|
33
|
+
body?: JsonAndClientProjectedNameModel;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
export type PropertyJsonAndClientParameters = PropertyJsonAndClientBodyParam &
|
|
37
|
+
RequestParameters;
|
|
38
|
+
export type OperationParameters = RequestParameters;
|
|
39
|
+
|
|
40
|
+
export interface ParameterQueryParamProperties {
|
|
41
|
+
"default-name": string;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
export interface ParameterQueryParam {
|
|
45
|
+
queryParameters: ParameterQueryParamProperties;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
export type ParameterParameters = ParameterQueryParam & RequestParameters;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
// Copyright (c) Microsoft Corporation.
|
|
2
|
+
// Licensed under the MIT license.
|
|
3
|
+
|
|
4
|
+
import { getClient, ClientOptions } from "@azure-rest/core-client";
|
|
5
|
+
import { ProjectionClient } from "./clientDefinitions";
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Initialize a new instance of `ProjectionClient`
|
|
9
|
+
* @param options type: ClientOptions, the parameter for all optional parameters
|
|
10
|
+
*/
|
|
11
|
+
export default function createClient(
|
|
12
|
+
options: ClientOptions = {}
|
|
13
|
+
): ProjectionClient {
|
|
14
|
+
const baseUrl = options.baseUrl ?? `http://localhost:3000`;
|
|
15
|
+
options.apiVersion = options.apiVersion ?? "1.0.0";
|
|
16
|
+
const userAgentInfo = `azsdk-js-projection-rest/1.0.0-beta.1`;
|
|
17
|
+
const userAgentPrefix =
|
|
18
|
+
options.userAgentOptions && options.userAgentOptions.userAgentPrefix
|
|
19
|
+
? `${options.userAgentOptions.userAgentPrefix} ${userAgentInfo}`
|
|
20
|
+
: `${userAgentInfo}`;
|
|
21
|
+
options = {
|
|
22
|
+
...options,
|
|
23
|
+
userAgentOptions: {
|
|
24
|
+
userAgentPrefix,
|
|
25
|
+
},
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
const client = getClient(baseUrl, options) as ProjectionClient;
|
|
29
|
+
|
|
30
|
+
return client;
|
|
31
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
// Copyright (c) Microsoft Corporation.
|
|
2
|
+
// Licensed under the MIT license.
|
|
3
|
+
|
|
4
|
+
import { HttpResponse } from "@azure-rest/core-client";
|
|
5
|
+
|
|
6
|
+
/** There is no content to send for this request, but the headers may be useful. */
|
|
7
|
+
export interface PropertyJson204Response extends HttpResponse {
|
|
8
|
+
status: "204";
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
/** There is no content to send for this request, but the headers may be useful. */
|
|
12
|
+
export interface PropertyClient204Response extends HttpResponse {
|
|
13
|
+
status: "204";
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
/** There is no content to send for this request, but the headers may be useful. */
|
|
17
|
+
export interface PropertyLanguage204Response extends HttpResponse {
|
|
18
|
+
status: "204";
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
/** There is no content to send for this request, but the headers may be useful. */
|
|
22
|
+
export interface PropertyJsonAndClient204Response extends HttpResponse {
|
|
23
|
+
status: "204";
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
/** There is no content to send for this request, but the headers may be useful. */
|
|
27
|
+
export interface Operation204Response extends HttpResponse {
|
|
28
|
+
status: "204";
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
/** There is no content to send for this request, but the headers may be useful. */
|
|
32
|
+
export interface Parameter204Response extends HttpResponse {
|
|
33
|
+
status: "204";
|
|
34
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
emit:
|
|
2
|
+
- "@azure-tools/typespec-ts"
|
|
3
|
+
options:
|
|
4
|
+
"@azure-tools/typespec-ts":
|
|
5
|
+
"emitter-output-dir": "{project-root}"
|
|
6
|
+
generateMetadata: false
|
|
7
|
+
generateTest: false
|
|
8
|
+
addCredentials: false
|
|
9
|
+
azureSdkForJs: false
|
|
10
|
+
isCadlTest: true
|
|
11
|
+
title: ProjectionClient
|
|
12
|
+
packageDetails:
|
|
13
|
+
name: "@msinternal/projection"
|
|
14
|
+
description: "Projection Test Service"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
#
|
|
1
|
+
# ServiceDrivenOld REST client library for JavaScript
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Test that we can grow up a service spec and service deployment into a multi-versioned service with full client support.
|
|
4
4
|
|
|
5
5
|
**Please rely heavily on our [REST client docs](https://github.com/Azure/azure-sdk-for-js/blob/main/documentation/rest-clients.md) to use this library**
|
|
6
6
|
|
|
@@ -20,13 +20,13 @@ Key links:
|
|
|
20
20
|
|
|
21
21
|
### Install the `@msinternal/srv-driven-1` package
|
|
22
22
|
|
|
23
|
-
Install the
|
|
23
|
+
Install the ServiceDrivenOld REST client REST client library for JavaScript with `npm`:
|
|
24
24
|
|
|
25
25
|
```bash
|
|
26
26
|
npm install @msinternal/srv-driven-1
|
|
27
27
|
```
|
|
28
28
|
|
|
29
|
-
### Create and authenticate a `
|
|
29
|
+
### Create and authenticate a `ServiceDrivenOldClient`
|
|
30
30
|
|
|
31
31
|
To use an [Azure Active Directory (AAD) token credential](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/samples/AzureIdentityExamples.md#authenticating-with-a-pre-fetched-access-token),
|
|
32
32
|
provide an instance of the desired credential type obtained from the
|
|
@@ -52,7 +52,7 @@
|
|
|
52
52
|
"autoPublish": false,
|
|
53
53
|
"dependencies": {
|
|
54
54
|
"@azure/core-auth": "^1.3.0",
|
|
55
|
-
"@azure-rest/core-client": "^1.1.
|
|
55
|
+
"@azure-rest/core-client": "^1.1.2",
|
|
56
56
|
"@azure/core-rest-pipeline": "^1.8.0",
|
|
57
57
|
"@azure/logger": "^1.0.0",
|
|
58
58
|
"tslib": "^2.2.0"
|
|
@@ -67,7 +67,7 @@
|
|
|
67
67
|
"prettier": "^2.5.1",
|
|
68
68
|
"rimraf": "^3.0.0",
|
|
69
69
|
"source-map-support": "^0.5.9",
|
|
70
|
-
"typescript": "~
|
|
70
|
+
"typescript": "~5.0.0",
|
|
71
71
|
"@rollup/plugin-commonjs": "^24.0.0",
|
|
72
72
|
"@rollup/plugin-json": "^6.0.0",
|
|
73
73
|
"@rollup/plugin-multi-entry": "^6.0.0",
|