@azure-tools/typespec-ts 0.54.0-dev.6 → 0.54.0-dev.7
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/dist/src/contextManager.d.ts +5 -5
- package/dist/src/contextManager.d.ts.map +1 -1
- package/dist/src/contextManager.js.map +1 -1
- package/dist/src/framework/declaration.d.ts +1 -1
- package/dist/src/framework/declaration.d.ts.map +1 -1
- package/dist/src/framework/declaration.js +2 -4
- package/dist/src/framework/declaration.js.map +1 -1
- package/dist/src/framework/dependency.d.ts.map +1 -1
- package/dist/src/framework/hooks/binder.d.ts +1 -1
- package/dist/src/framework/hooks/binder.d.ts.map +1 -1
- package/dist/src/framework/hooks/binder.js +12 -20
- package/dist/src/framework/hooks/binder.js.map +1 -1
- package/dist/src/framework/hooks/sdkTypes.d.ts +1 -1
- package/dist/src/framework/hooks/sdkTypes.d.ts.map +1 -1
- package/dist/src/framework/hooks/sdkTypes.js +8 -11
- package/dist/src/framework/hooks/sdkTypes.js.map +1 -1
- package/dist/src/framework/hooks/useDependencies.d.ts.map +1 -1
- package/dist/src/framework/hooks/useDependencies.js +1 -1
- package/dist/src/framework/hooks/useDependencies.js.map +1 -1
- package/dist/src/framework/load-static-helpers.d.ts +1 -1
- package/dist/src/framework/load-static-helpers.d.ts.map +1 -1
- package/dist/src/framework/load-static-helpers.js +12 -25
- package/dist/src/framework/load-static-helpers.js.map +1 -1
- package/dist/src/framework/reference.d.ts.map +1 -1
- package/dist/src/framework/reference.js +1 -1
- package/dist/src/framework/reference.js.map +1 -1
- package/dist/src/framework/sample.js +8 -8
- package/dist/src/framework/sample.js.map +1 -1
- package/dist/src/index.d.ts +1 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +47 -48
- package/dist/src/index.js.map +1 -1
- package/dist/src/lib.d.ts +1 -1
- package/dist/src/lib.d.ts.map +1 -1
- package/dist/src/lib.js +140 -140
- package/dist/src/lib.js.map +1 -1
- package/dist/src/metaTree.d.ts +1 -1
- package/dist/src/metaTree.d.ts.map +1 -1
- package/dist/src/modular/buildClassicalClient.d.ts +1 -1
- package/dist/src/modular/buildClassicalClient.d.ts.map +1 -1
- package/dist/src/modular/buildClassicalClient.js +49 -62
- package/dist/src/modular/buildClassicalClient.js.map +1 -1
- package/dist/src/modular/buildClassicalOperationGroups.d.ts +2 -2
- package/dist/src/modular/buildClassicalOperationGroups.d.ts.map +1 -1
- package/dist/src/modular/buildClassicalOperationGroups.js +4 -7
- package/dist/src/modular/buildClassicalOperationGroups.js.map +1 -1
- package/dist/src/modular/buildClientContext.d.ts +2 -2
- package/dist/src/modular/buildClientContext.d.ts.map +1 -1
- package/dist/src/modular/buildClientContext.js +30 -36
- package/dist/src/modular/buildClientContext.js.map +1 -1
- package/dist/src/modular/buildModularOptions.d.ts +1 -1
- package/dist/src/modular/buildModularOptions.d.ts.map +1 -1
- package/dist/src/modular/buildModularOptions.js +2 -2
- package/dist/src/modular/buildModularOptions.js.map +1 -1
- package/dist/src/modular/buildOperations.d.ts +3 -3
- package/dist/src/modular/buildOperations.d.ts.map +1 -1
- package/dist/src/modular/buildOperations.js +22 -23
- package/dist/src/modular/buildOperations.js.map +1 -1
- package/dist/src/modular/buildProjectFiles.d.ts +1 -1
- package/dist/src/modular/buildProjectFiles.d.ts.map +1 -1
- package/dist/src/modular/buildProjectFiles.js +7 -9
- package/dist/src/modular/buildProjectFiles.js.map +1 -1
- package/dist/src/modular/buildRestorePoller.d.ts +1 -1
- package/dist/src/modular/buildRestorePoller.d.ts.map +1 -1
- package/dist/src/modular/buildRestorePoller.js +11 -11
- package/dist/src/modular/buildRestorePoller.js.map +1 -1
- package/dist/src/modular/buildRootIndex.d.ts +2 -2
- package/dist/src/modular/buildRootIndex.d.ts.map +1 -1
- package/dist/src/modular/buildRootIndex.js +30 -39
- package/dist/src/modular/buildRootIndex.js.map +1 -1
- package/dist/src/modular/buildSubpathIndex.d.ts.map +1 -1
- package/dist/src/modular/buildSubpathIndex.js +9 -17
- package/dist/src/modular/buildSubpathIndex.js.map +1 -1
- package/dist/src/modular/emitLoggerFile.d.ts.map +1 -1
- package/dist/src/modular/emitLoggerFile.js +2 -2
- package/dist/src/modular/emitLoggerFile.js.map +1 -1
- package/dist/src/modular/emitModels.d.ts +1 -1
- package/dist/src/modular/emitModels.d.ts.map +1 -1
- package/dist/src/modular/emitModels.js +54 -72
- package/dist/src/modular/emitModels.js.map +1 -1
- package/dist/src/modular/emitModelsOptions.d.ts +1 -1
- package/dist/src/modular/emitModelsOptions.d.ts.map +1 -1
- package/dist/src/modular/emitModelsOptions.js +6 -7
- package/dist/src/modular/emitModelsOptions.js.map +1 -1
- package/dist/src/modular/emitSamples.d.ts.map +1 -1
- package/dist/src/modular/emitSamples.js +40 -52
- package/dist/src/modular/emitSamples.js.map +1 -1
- package/dist/src/modular/emitTests.d.ts.map +1 -1
- package/dist/src/modular/emitTests.js +9 -12
- package/dist/src/modular/emitTests.js.map +1 -1
- package/dist/src/modular/external-dependencies.js +54 -54
- package/dist/src/modular/helpers/classicalOperationHelpers.d.ts +1 -1
- package/dist/src/modular/helpers/classicalOperationHelpers.d.ts.map +1 -1
- package/dist/src/modular/helpers/classicalOperationHelpers.js +27 -36
- package/dist/src/modular/helpers/classicalOperationHelpers.js.map +1 -1
- package/dist/src/modular/helpers/clientHelpers.d.ts +2 -2
- package/dist/src/modular/helpers/clientHelpers.d.ts.map +1 -1
- package/dist/src/modular/helpers/clientHelpers.js +20 -38
- package/dist/src/modular/helpers/clientHelpers.js.map +1 -1
- package/dist/src/modular/helpers/clientOptionHelpers.d.ts.map +1 -1
- package/dist/src/modular/helpers/clientOptionHelpers.js.map +1 -1
- package/dist/src/modular/helpers/exampleValueHelpers.d.ts +2 -2
- package/dist/src/modular/helpers/exampleValueHelpers.d.ts.map +1 -1
- package/dist/src/modular/helpers/exampleValueHelpers.js +39 -58
- package/dist/src/modular/helpers/exampleValueHelpers.js.map +1 -1
- package/dist/src/modular/helpers/namingHelpers.d.ts +1 -1
- package/dist/src/modular/helpers/namingHelpers.d.ts.map +1 -1
- package/dist/src/modular/helpers/namingHelpers.js +4 -5
- package/dist/src/modular/helpers/namingHelpers.js.map +1 -1
- package/dist/src/modular/helpers/operationHelpers.d.ts +2 -2
- package/dist/src/modular/helpers/operationHelpers.d.ts.map +1 -1
- package/dist/src/modular/helpers/operationHelpers.js +136 -196
- package/dist/src/modular/helpers/operationHelpers.js.map +1 -1
- package/dist/src/modular/helpers/typeHelpers.d.ts +1 -1
- package/dist/src/modular/helpers/typeHelpers.d.ts.map +1 -1
- package/dist/src/modular/helpers/typeHelpers.js +1 -1
- package/dist/src/modular/helpers/typeHelpers.js.map +1 -1
- package/dist/src/modular/serialization/buildDeserializerFunction.d.ts +1 -1
- package/dist/src/modular/serialization/buildDeserializerFunction.d.ts.map +1 -1
- package/dist/src/modular/serialization/buildDeserializerFunction.js +50 -56
- package/dist/src/modular/serialization/buildDeserializerFunction.js.map +1 -1
- package/dist/src/modular/serialization/buildSerializerFunction.d.ts +1 -1
- package/dist/src/modular/serialization/buildSerializerFunction.d.ts.map +1 -1
- package/dist/src/modular/serialization/buildSerializerFunction.js +52 -59
- package/dist/src/modular/serialization/buildSerializerFunction.js.map +1 -1
- package/dist/src/modular/serialization/buildXmlSerializerFunction.d.ts +1 -1
- package/dist/src/modular/serialization/buildXmlSerializerFunction.d.ts.map +1 -1
- package/dist/src/modular/serialization/buildXmlSerializerFunction.js +43 -51
- package/dist/src/modular/serialization/buildXmlSerializerFunction.js.map +1 -1
- package/dist/src/modular/serialization/serializeUtils.d.ts.map +1 -1
- package/dist/src/modular/serialization/serializeUtils.js +4 -11
- package/dist/src/modular/serialization/serializeUtils.js.map +1 -1
- package/dist/src/modular/static-helpers-metadata.js +60 -60
- package/dist/src/modular/type-expressions/get-credential-expression.js +1 -1
- package/dist/src/modular/type-expressions/get-credential-expression.js.map +1 -1
- package/dist/src/modular/type-expressions/get-enum-expression.d.ts +1 -1
- package/dist/src/modular/type-expressions/get-enum-expression.d.ts.map +1 -1
- package/dist/src/modular/type-expressions/get-enum-expression.js +1 -1
- package/dist/src/modular/type-expressions/get-enum-expression.js.map +1 -1
- package/dist/src/modular/type-expressions/get-model-expression.d.ts.map +1 -1
- package/dist/src/modular/type-expressions/get-model-expression.js +7 -9
- package/dist/src/modular/type-expressions/get-model-expression.js.map +1 -1
- package/dist/src/modular/type-expressions/get-nullable-expression.d.ts +1 -1
- package/dist/src/modular/type-expressions/get-nullable-expression.d.ts.map +1 -1
- package/dist/src/modular/type-expressions/get-nullable-expression.js.map +1 -1
- package/dist/src/modular/type-expressions/get-type-expression.d.ts.map +1 -1
- package/dist/src/modular/type-expressions/get-type-expression.js +4 -8
- package/dist/src/modular/type-expressions/get-type-expression.js.map +1 -1
- package/dist/src/modular/type-expressions/get-union-expression.d.ts +1 -1
- package/dist/src/modular/type-expressions/get-union-expression.d.ts.map +1 -1
- package/dist/src/modular/type-expressions/get-union-expression.js.map +1 -1
- package/dist/src/rlc-common/buildClient.d.ts +1 -1
- package/dist/src/rlc-common/buildClient.d.ts.map +1 -1
- package/dist/src/rlc-common/buildClient.js +48 -66
- package/dist/src/rlc-common/buildClient.js.map +1 -1
- package/dist/src/rlc-common/buildClientDefinitions.d.ts.map +1 -1
- package/dist/src/rlc-common/buildClientDefinitions.js +24 -42
- package/dist/src/rlc-common/buildClientDefinitions.js.map +1 -1
- package/dist/src/rlc-common/buildIndexFile.d.ts.map +1 -1
- package/dist/src/rlc-common/buildIndexFile.js +57 -57
- package/dist/src/rlc-common/buildIndexFile.js.map +1 -1
- package/dist/src/rlc-common/buildIsUnexpectedHelper.d.ts.map +1 -1
- package/dist/src/rlc-common/buildIsUnexpectedHelper.js +32 -35
- package/dist/src/rlc-common/buildIsUnexpectedHelper.js.map +1 -1
- package/dist/src/rlc-common/buildLogger.d.ts.map +1 -1
- package/dist/src/rlc-common/buildLogger.js +3 -3
- package/dist/src/rlc-common/buildLogger.js.map +1 -1
- package/dist/src/rlc-common/buildMethodShortcuts.d.ts.map +1 -1
- package/dist/src/rlc-common/buildMethodShortcuts.js +3 -3
- package/dist/src/rlc-common/buildMethodShortcuts.js.map +1 -1
- package/dist/src/rlc-common/buildObjectTypes.d.ts.map +1 -1
- package/dist/src/rlc-common/buildObjectTypes.js +29 -46
- package/dist/src/rlc-common/buildObjectTypes.js.map +1 -1
- package/dist/src/rlc-common/buildPaginateHelper.d.ts.map +1 -1
- package/dist/src/rlc-common/buildPaginateHelper.js +2 -2
- package/dist/src/rlc-common/buildPaginateHelper.js.map +1 -1
- package/dist/src/rlc-common/buildParameterTypes.d.ts.map +1 -1
- package/dist/src/rlc-common/buildParameterTypes.js +42 -50
- package/dist/src/rlc-common/buildParameterTypes.js.map +1 -1
- package/dist/src/rlc-common/buildPollingHelper.d.ts.map +1 -1
- package/dist/src/rlc-common/buildPollingHelper.js +5 -5
- package/dist/src/rlc-common/buildPollingHelper.js.map +1 -1
- package/dist/src/rlc-common/buildResponseTypes.d.ts.map +1 -1
- package/dist/src/rlc-common/buildResponseTypes.js +19 -22
- package/dist/src/rlc-common/buildResponseTypes.js.map +1 -1
- package/dist/src/rlc-common/buildSamples.d.ts +1 -1
- package/dist/src/rlc-common/buildSamples.d.ts.map +1 -1
- package/dist/src/rlc-common/buildSamples.js +2 -2
- package/dist/src/rlc-common/buildSchemaType.d.ts.map +1 -1
- package/dist/src/rlc-common/buildSchemaType.js +9 -13
- package/dist/src/rlc-common/buildSchemaType.js.map +1 -1
- package/dist/src/rlc-common/buildSerializeHelper.d.ts.map +1 -1
- package/dist/src/rlc-common/buildSerializeHelper.js +4 -4
- package/dist/src/rlc-common/buildSerializeHelper.js.map +1 -1
- package/dist/src/rlc-common/buildTopLevelIndexFile.d.ts.map +1 -1
- package/dist/src/rlc-common/buildTopLevelIndexFile.js +9 -13
- package/dist/src/rlc-common/buildTopLevelIndexFile.js.map +1 -1
- package/dist/src/rlc-common/helpers/apiVersionUtil.d.ts.map +1 -1
- package/dist/src/rlc-common/helpers/apiVersionUtil.js +2 -3
- package/dist/src/rlc-common/helpers/apiVersionUtil.js.map +1 -1
- package/dist/src/rlc-common/helpers/importsUtil.d.ts.map +1 -1
- package/dist/src/rlc-common/helpers/importsUtil.js +23 -25
- package/dist/src/rlc-common/helpers/importsUtil.js.map +1 -1
- package/dist/src/rlc-common/helpers/nameConstructors.d.ts.map +1 -1
- package/dist/src/rlc-common/helpers/nameConstructors.js.map +1 -1
- package/dist/src/rlc-common/helpers/nameUtils.d.ts.map +1 -1
- package/dist/src/rlc-common/helpers/nameUtils.js +8 -13
- package/dist/src/rlc-common/helpers/nameUtils.js.map +1 -1
- package/dist/src/rlc-common/helpers/operationHelpers.d.ts.map +1 -1
- package/dist/src/rlc-common/helpers/operationHelpers.js +8 -12
- package/dist/src/rlc-common/helpers/operationHelpers.js.map +1 -1
- package/dist/src/rlc-common/helpers/pathUtils.d.ts.map +1 -1
- package/dist/src/rlc-common/helpers/pathUtils.js +1 -3
- package/dist/src/rlc-common/helpers/pathUtils.js.map +1 -1
- package/dist/src/rlc-common/helpers/schemaHelpers.d.ts.map +1 -1
- package/dist/src/rlc-common/helpers/schemaHelpers.js +1 -1
- package/dist/src/rlc-common/helpers/schemaHelpers.js.map +1 -1
- package/dist/src/rlc-common/helpers/shortcutMethods.d.ts +1 -1
- package/dist/src/rlc-common/helpers/shortcutMethods.d.ts.map +1 -1
- package/dist/src/rlc-common/helpers/shortcutMethods.js +2 -2
- package/dist/src/rlc-common/helpers/shortcutMethods.js.map +1 -1
- package/dist/src/rlc-common/helpers/typeUtil.d.ts.map +1 -1
- package/dist/src/rlc-common/helpers/typeUtil.js +1 -2
- package/dist/src/rlc-common/helpers/typeUtil.js.map +1 -1
- package/dist/src/rlc-common/helpers/valueGenerationUtil.js +3 -4
- package/dist/src/rlc-common/helpers/valueGenerationUtil.js.map +1 -1
- package/dist/src/rlc-common/index.d.ts +28 -28
- package/dist/src/rlc-common/index.d.ts.map +1 -1
- package/dist/src/rlc-common/index.js +28 -28
- package/dist/src/rlc-common/index.js.map +1 -1
- package/dist/src/rlc-common/interfaces.d.ts.map +1 -1
- package/dist/src/rlc-common/interfaces.js.map +1 -1
- package/dist/src/rlc-common/metadata/buildApiExtractorConfig.d.ts.map +1 -1
- package/dist/src/rlc-common/metadata/buildApiExtractorConfig.js +13 -13
- package/dist/src/rlc-common/metadata/buildApiExtractorConfig.js.map +1 -1
- package/dist/src/rlc-common/metadata/buildChangelogFile.js +1 -1
- package/dist/src/rlc-common/metadata/buildESLintConfig.d.ts.map +1 -1
- package/dist/src/rlc-common/metadata/buildESLintConfig.js +3 -5
- package/dist/src/rlc-common/metadata/buildESLintConfig.js.map +1 -1
- package/dist/src/rlc-common/metadata/buildLicenseFile.js +1 -1
- package/dist/src/rlc-common/metadata/buildPackageFile.d.ts.map +1 -1
- package/dist/src/rlc-common/metadata/buildPackageFile.js +16 -16
- package/dist/src/rlc-common/metadata/buildPackageFile.js.map +1 -1
- package/dist/src/rlc-common/metadata/buildReadmeFile.d.ts.map +1 -1
- package/dist/src/rlc-common/metadata/buildReadmeFile.js +10 -18
- package/dist/src/rlc-common/metadata/buildReadmeFile.js.map +1 -1
- package/dist/src/rlc-common/metadata/buildRollupConfig.d.ts.map +1 -1
- package/dist/src/rlc-common/metadata/buildRollupConfig.js +3 -4
- package/dist/src/rlc-common/metadata/buildRollupConfig.js.map +1 -1
- package/dist/src/rlc-common/metadata/buildSampleEnvFile.d.ts.map +1 -1
- package/dist/src/rlc-common/metadata/buildSampleEnvFile.js +2 -3
- package/dist/src/rlc-common/metadata/buildSampleEnvFile.js.map +1 -1
- package/dist/src/rlc-common/metadata/buildTestConfig.js +8 -8
- package/dist/src/rlc-common/metadata/buildTsConfig.d.ts.map +1 -1
- package/dist/src/rlc-common/metadata/buildTsConfig.js +23 -21
- package/dist/src/rlc-common/metadata/buildTsConfig.js.map +1 -1
- package/dist/src/rlc-common/metadata/buildVitestConfig.d.ts.map +1 -1
- package/dist/src/rlc-common/metadata/buildVitestConfig.js +3 -4
- package/dist/src/rlc-common/metadata/buildVitestConfig.js.map +1 -1
- package/dist/src/rlc-common/metadata/buildWarpConfig.d.ts.map +1 -1
- package/dist/src/rlc-common/metadata/buildWarpConfig.js +2 -2
- package/dist/src/rlc-common/metadata/buildWarpConfig.js.map +1 -1
- package/dist/src/rlc-common/metadata/packageJson/azurePackageCommon.d.ts +1 -1
- package/dist/src/rlc-common/metadata/packageJson/azurePackageCommon.d.ts.map +1 -1
- package/dist/src/rlc-common/metadata/packageJson/azurePackageCommon.js +13 -13
- package/dist/src/rlc-common/metadata/packageJson/azurePackageCommon.js.map +1 -1
- package/dist/src/rlc-common/metadata/packageJson/buildAzureMonorepoPackage.d.ts.map +1 -1
- package/dist/src/rlc-common/metadata/packageJson/buildAzureMonorepoPackage.js +22 -26
- package/dist/src/rlc-common/metadata/packageJson/buildAzureMonorepoPackage.js.map +1 -1
- package/dist/src/rlc-common/metadata/packageJson/buildAzureStandalonePackage.d.ts.map +1 -1
- package/dist/src/rlc-common/metadata/packageJson/buildAzureStandalonePackage.js +15 -16
- package/dist/src/rlc-common/metadata/packageJson/buildAzureStandalonePackage.js.map +1 -1
- package/dist/src/rlc-common/metadata/packageJson/buildFlavorlessPackage.js +8 -8
- package/dist/src/rlc-common/metadata/packageJson/buildFlavorlessPackage.js.map +1 -1
- package/dist/src/rlc-common/metadata/packageJson/packageCommon.d.ts.map +1 -1
- package/dist/src/rlc-common/metadata/packageJson/packageCommon.js +26 -29
- package/dist/src/rlc-common/metadata/packageJson/packageCommon.js.map +1 -1
- package/dist/src/rlc-common/test/buildKarmaConfig.js +1 -1
- package/dist/src/rlc-common/test/buildRecordedClient.js +3 -3
- package/dist/src/rlc-common/test/buildSampleTest.d.ts.map +1 -1
- package/dist/src/rlc-common/test/buildSampleTest.js +2 -2
- package/dist/src/rlc-common/test/buildSampleTest.js.map +1 -1
- package/dist/src/rlc-common/test/buildSnippets.d.ts.map +1 -1
- package/dist/src/rlc-common/test/buildSnippets.js +4 -6
- package/dist/src/rlc-common/test/buildSnippets.js.map +1 -1
- package/dist/src/rlc-common/transformSampleGroups.d.ts.map +1 -1
- package/dist/src/rlc-common/transformSampleGroups.js +19 -23
- package/dist/src/rlc-common/transformSampleGroups.js.map +1 -1
- package/dist/src/testing/index.d.ts.map +1 -1
- package/dist/src/testing/index.js +1 -1
- package/dist/src/testing/index.js.map +1 -1
- package/dist/src/transform/transform.d.ts +1 -1
- package/dist/src/transform/transform.d.ts.map +1 -1
- package/dist/src/transform/transform.js +10 -11
- package/dist/src/transform/transform.js.map +1 -1
- package/dist/src/transform/transformApiVersionInfo.d.ts +1 -1
- package/dist/src/transform/transformApiVersionInfo.d.ts.map +1 -1
- package/dist/src/transform/transformApiVersionInfo.js +8 -10
- package/dist/src/transform/transformApiVersionInfo.js.map +1 -1
- package/dist/src/transform/transformHelperFunctionDetails.d.ts +1 -1
- package/dist/src/transform/transformHelperFunctionDetails.d.ts.map +1 -1
- package/dist/src/transform/transformHelperFunctionDetails.js +9 -11
- package/dist/src/transform/transformHelperFunctionDetails.js.map +1 -1
- 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 +22 -28
- package/dist/src/transform/transformParameters.js.map +1 -1
- package/dist/src/transform/transformPaths.d.ts +1 -1
- package/dist/src/transform/transformPaths.d.ts.map +1 -1
- package/dist/src/transform/transformPaths.js +11 -12
- package/dist/src/transform/transformPaths.js.map +1 -1
- package/dist/src/transform/transformResponses.d.ts +1 -1
- package/dist/src/transform/transformResponses.d.ts.map +1 -1
- package/dist/src/transform/transformResponses.js +12 -12
- package/dist/src/transform/transformResponses.js.map +1 -1
- package/dist/src/transform/transformSchemas.d.ts.map +1 -1
- package/dist/src/transform/transformSchemas.js +9 -15
- package/dist/src/transform/transformSchemas.js.map +1 -1
- package/dist/src/transform/transformTelemetryInfo.d.ts +1 -1
- package/dist/src/transform/transformTelemetryInfo.d.ts.map +1 -1
- package/dist/src/transform/transformTelemetryInfo.js +3 -3
- package/dist/src/transform/transformTelemetryInfo.js.map +1 -1
- package/dist/src/transform/transfromRLCOptions.d.ts +1 -1
- package/dist/src/transform/transfromRLCOptions.d.ts.map +1 -1
- package/dist/src/transform/transfromRLCOptions.js +14 -26
- package/dist/src/transform/transfromRLCOptions.js.map +1 -1
- package/dist/src/utils/clientUtils.d.ts +1 -1
- package/dist/src/utils/clientUtils.d.ts.map +1 -1
- package/dist/src/utils/clientUtils.js +11 -14
- package/dist/src/utils/clientUtils.js.map +1 -1
- package/dist/src/utils/credentialUtils.d.ts +1 -1
- package/dist/src/utils/credentialUtils.d.ts.map +1 -1
- package/dist/src/utils/credentialUtils.js +3 -3
- package/dist/src/utils/credentialUtils.js.map +1 -1
- package/dist/src/utils/crossLanguageDef.d.ts.map +1 -1
- package/dist/src/utils/crossLanguageDef.js +8 -12
- package/dist/src/utils/crossLanguageDef.js.map +1 -1
- package/dist/src/utils/emitUtil.d.ts +1 -1
- package/dist/src/utils/emitUtil.d.ts.map +1 -1
- package/dist/src/utils/emitUtil.js +4 -6
- package/dist/src/utils/emitUtil.js.map +1 -1
- package/dist/src/utils/fileSystemUtils.d.ts.map +1 -1
- package/dist/src/utils/fileSystemUtils.js +2 -2
- package/dist/src/utils/fileSystemUtils.js.map +1 -1
- package/dist/src/utils/importHelper.d.ts.map +1 -1
- package/dist/src/utils/importHelper.js +2 -4
- package/dist/src/utils/importHelper.js.map +1 -1
- package/dist/src/utils/interfaces.d.ts +1 -1
- package/dist/src/utils/interfaces.d.ts.map +1 -1
- package/dist/src/utils/mediaTypes.d.ts.map +1 -1
- package/dist/src/utils/mediaTypes.js +7 -19
- package/dist/src/utils/mediaTypes.js.map +1 -1
- package/dist/src/utils/modelUtils.d.ts +2 -2
- package/dist/src/utils/modelUtils.d.ts.map +1 -1
- package/dist/src/utils/modelUtils.js +107 -170
- package/dist/src/utils/modelUtils.js.map +1 -1
- package/dist/src/utils/namespaceUtils.d.ts.map +1 -1
- package/dist/src/utils/namespaceUtils.js +2 -2
- package/dist/src/utils/namespaceUtils.js.map +1 -1
- package/dist/src/utils/operationUtil.d.ts +1 -1
- package/dist/src/utils/operationUtil.d.ts.map +1 -1
- package/dist/src/utils/operationUtil.js +29 -42
- package/dist/src/utils/operationUtil.js.map +1 -1
- package/dist/src/utils/parameterUtils.d.ts +1 -1
- package/dist/src/utils/parameterUtils.d.ts.map +1 -1
- package/dist/src/utils/parameterUtils.js +19 -22
- package/dist/src/utils/parameterUtils.js.map +1 -1
- package/dist/src/utils/resolve-project-root.js +2 -2
- package/dist/src/utils/resolve-project-root.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -3
- package/src/contextManager.ts +6 -9
- package/src/framework/declaration.ts +18 -28
- package/src/framework/dependency.ts +1 -2
- package/src/framework/hooks/binder.ts +47 -120
- package/src/framework/hooks/sdkTypes.ts +27 -54
- package/src/framework/hooks/useDependencies.ts +2 -4
- package/src/framework/load-static-helpers.ts +28 -51
- package/src/framework/reference.ts +2 -5
- package/src/framework/sample.ts +9 -9
- package/src/index.ts +111 -180
- package/src/lib.ts +143 -158
- package/src/metaTree.ts +1 -1
- package/src/modular/buildClassicalClient.ts +83 -160
- package/src/modular/buildClassicalOperationGroups.ts +14 -39
- package/src/modular/buildClientContext.ts +54 -83
- package/src/modular/buildModularOptions.ts +4 -5
- package/src/modular/buildOperations.ts +46 -73
- package/src/modular/buildProjectFiles.ts +18 -47
- package/src/modular/buildRestorePoller.ts +27 -46
- package/src/modular/buildRootIndex.ts +86 -159
- package/src/modular/buildSubpathIndex.ts +35 -58
- package/src/modular/emitLoggerFile.ts +4 -9
- package/src/modular/emitModels.ts +136 -266
- package/src/modular/emitModelsOptions.ts +10 -16
- package/src/modular/emitSamples.ts +91 -177
- package/src/modular/emitTests.ts +28 -61
- package/src/modular/external-dependencies.ts +54 -54
- package/src/modular/helpers/classicalOperationHelpers.ts +73 -126
- package/src/modular/helpers/clientHelpers.ts +41 -88
- package/src/modular/helpers/clientOptionHelpers.ts +4 -11
- package/src/modular/helpers/exampleValueHelpers.ts +97 -209
- package/src/modular/helpers/namingHelpers.ts +12 -28
- package/src/modular/helpers/operationHelpers.ts +430 -757
- package/src/modular/helpers/typeHelpers.ts +11 -22
- package/src/modular/serialization/buildDeserializerFunction.ts +88 -122
- package/src/modular/serialization/buildSerializerFunction.ts +91 -129
- package/src/modular/serialization/buildXmlSerializerFunction.ts +104 -183
- package/src/modular/serialization/serializeUtils.ts +12 -21
- package/src/modular/static/rollup.test.config.js +11 -14
- package/src/modular/static/scripts/renameOutput.mjs +2 -2
- package/src/modular/static-helpers-metadata.ts +60 -60
- package/src/modular/type-expressions/get-credential-expression.ts +1 -1
- package/src/modular/type-expressions/get-enum-expression.ts +5 -10
- package/src/modular/type-expressions/get-model-expression.ts +13 -17
- package/src/modular/type-expressions/get-nullable-expression.ts +4 -5
- package/src/modular/type-expressions/get-type-expression.ts +8 -12
- package/src/modular/type-expressions/get-union-expression.ts +4 -4
- package/src/modular/type-expressions/utils.ts +1 -1
- package/src/rlc-common/buildClient.ts +70 -141
- package/src/rlc-common/buildClientDefinitions.ts +43 -87
- package/src/rlc-common/buildIndexFile.ts +78 -78
- package/src/rlc-common/buildIsUnexpectedHelper.ts +34 -41
- package/src/rlc-common/buildLogger.ts +7 -7
- package/src/rlc-common/buildMethodShortcuts.ts +9 -21
- package/src/rlc-common/buildObjectTypes.ts +78 -155
- package/src/rlc-common/buildPaginateHelper.ts +9 -12
- package/src/rlc-common/buildParameterTypes.ts +92 -137
- package/src/rlc-common/buildPollingHelper.ts +7 -7
- package/src/rlc-common/buildResponseTypes.ts +34 -57
- package/src/rlc-common/buildSamples.ts +3 -3
- package/src/rlc-common/buildSchemaType.ts +12 -29
- package/src/rlc-common/buildSerializeHelper.ts +5 -5
- package/src/rlc-common/buildTopLevelIndexFile.ts +12 -19
- package/src/rlc-common/helpers/apiVersionUtil.ts +5 -10
- package/src/rlc-common/helpers/importsUtil.ts +27 -30
- package/src/rlc-common/helpers/nameConstructors.ts +16 -50
- package/src/rlc-common/helpers/nameUtils.ts +19 -42
- package/src/rlc-common/helpers/operationHelpers.ts +14 -31
- package/src/rlc-common/helpers/pathUtils.ts +2 -7
- package/src/rlc-common/helpers/schemaHelpers.ts +4 -15
- package/src/rlc-common/helpers/shortcutMethods.ts +6 -15
- package/src/rlc-common/helpers/typeUtil.ts +4 -11
- package/src/rlc-common/helpers/valueGenerationUtil.ts +16 -39
- package/src/rlc-common/index.ts +28 -28
- package/src/rlc-common/interfaces.ts +3 -11
- package/src/rlc-common/metadata/buildApiExtractorConfig.ts +17 -24
- package/src/rlc-common/metadata/buildChangelogFile.ts +1 -1
- package/src/rlc-common/metadata/buildESLintConfig.ts +3 -5
- package/src/rlc-common/metadata/buildLicenseFile.ts +1 -1
- package/src/rlc-common/metadata/buildPackageFile.ts +27 -35
- package/src/rlc-common/metadata/buildReadmeFile.ts +16 -29
- package/src/rlc-common/metadata/buildRollupConfig.ts +5 -8
- package/src/rlc-common/metadata/buildSampleEnvFile.ts +2 -3
- package/src/rlc-common/metadata/buildTestConfig.ts +10 -10
- package/src/rlc-common/metadata/buildTsConfig.ts +32 -35
- package/src/rlc-common/metadata/buildVitestConfig.ts +4 -10
- package/src/rlc-common/metadata/buildWarpConfig.ts +3 -6
- package/src/rlc-common/metadata/packageJson/azurePackageCommon.ts +16 -25
- package/src/rlc-common/metadata/packageJson/buildAzureMonorepoPackage.ts +29 -50
- package/src/rlc-common/metadata/packageJson/buildAzureStandalonePackage.ts +20 -31
- package/src/rlc-common/metadata/packageJson/buildFlavorlessPackage.ts +11 -13
- package/src/rlc-common/metadata/packageJson/packageCommon.ts +32 -52
- package/src/rlc-common/test/buildKarmaConfig.ts +1 -1
- package/src/rlc-common/test/buildRecordedClient.ts +3 -3
- package/src/rlc-common/test/buildSampleTest.ts +3 -3
- package/src/rlc-common/test/buildSnippets.ts +6 -12
- package/src/rlc-common/transformSampleGroups.ts +54 -105
- package/src/testing/index.ts +2 -5
- package/src/transform/transform.ts +22 -34
- package/src/transform/transformApiVersionInfo.ts +17 -30
- package/src/transform/transformHelperFunctionDetails.ts +14 -26
- package/src/transform/transformParameters.ts +55 -105
- package/src/transform/transformPaths.ts +26 -43
- package/src/transform/transformResponses.ts +26 -33
- package/src/transform/transformSchemas.ts +15 -33
- package/src/transform/transformTelemetryInfo.ts +8 -14
- package/src/transform/transfromRLCOptions.ts +53 -115
- package/src/utils/clientUtils.ts +22 -41
- package/src/utils/credentialUtils.ts +8 -19
- package/src/utils/crossLanguageDef.ts +15 -34
- package/src/utils/emitUtil.ts +11 -17
- package/src/utils/fileSystemUtils.ts +4 -6
- package/src/utils/importHelper.ts +5 -10
- package/src/utils/interfaces.ts +1 -1
- package/src/utils/mediaTypes.ts +13 -34
- package/src/utils/modelUtils.ts +174 -383
- package/src/utils/namespaceUtils.ts +8 -24
- package/src/utils/operationUtil.ts +98 -190
- package/src/utils/parameterUtils.ts +31 -54
- package/src/utils/resolve-project-root.ts +3 -3
- package/static/static-helpers/cloudSettingHelpers.ts +4 -6
- package/static/static-helpers/multipartHelpers.ts +3 -3
- package/static/static-helpers/pagingHelpers.ts +28 -63
- package/static/static-helpers/pollingHelpers.ts +15 -28
- package/static/static-helpers/serialization/build-multi-collection.ts +1 -4
- package/static/static-helpers/serialization/check-prop-undefined.ts +1 -4
- package/static/static-helpers/serialization/get-binary-response.ts +2 -2
- package/static/static-helpers/serialization/get-binary-stream-response.ts +2 -4
- package/static/static-helpers/serialization/serialize-record.ts +1 -1
- package/static/static-helpers/serialization/serializers.ts +4 -7
- package/static/static-helpers/serialization/xml-helpers.ts +41 -89
- package/static/static-helpers/simplePollerHelpers.ts +9 -18
- package/static/static-helpers/storageCompatResponse.ts +10 -27
- package/static/static-helpers/urlTemplate.ts +4 -7
- package/static/test-helpers/recordedClient.ts +5 -10
|
@@ -1,36 +1,33 @@
|
|
|
1
|
+
import { getHttpOperationWithCache } from "@azure-tools/typespec-client-generator-core";
|
|
2
|
+
import { getDoc, NoTarget, Program } from "@typespec/compiler";
|
|
3
|
+
import { getAuthentication } from "@typespec/http";
|
|
4
|
+
import { EmitterOptions, reportDiagnostic } from "../lib.js";
|
|
5
|
+
import { getClientParameters } from "../modular/helpers/clientHelpers.js";
|
|
1
6
|
import {
|
|
2
|
-
pascalCase,
|
|
3
7
|
NameType,
|
|
4
8
|
normalizeName,
|
|
5
9
|
PackageDetails,
|
|
6
10
|
PackageFlavor,
|
|
11
|
+
pascalCase,
|
|
7
12
|
RLCOptions,
|
|
8
|
-
ServiceInfo
|
|
13
|
+
ServiceInfo,
|
|
9
14
|
} from "../rlc-common/index.js";
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import { getAuthentication } from "@typespec/http";
|
|
13
|
-
import { EmitterOptions, reportDiagnostic } from "../lib.js";
|
|
14
|
-
import {
|
|
15
|
-
getRLCClients,
|
|
16
|
-
listOperationsUnderRLCClient
|
|
17
|
-
} from "../utils/clientUtils.js";
|
|
15
|
+
import { getRLCClients, listOperationsUnderRLCClient } from "../utils/clientUtils.js";
|
|
16
|
+
import { getSupportedHttpAuth } from "../utils/credentialUtils.js";
|
|
18
17
|
import { SdkContext } from "../utils/interfaces.js";
|
|
19
18
|
import { getDefaultService } from "../utils/modelUtils.js";
|
|
20
19
|
import { detectModelConflicts } from "../utils/namespaceUtils.js";
|
|
21
20
|
import { getOperationName } from "../utils/operationUtil.js";
|
|
22
|
-
import { getSupportedHttpAuth } from "../utils/credentialUtils.js";
|
|
23
|
-
import { getClientParameters } from "../modular/helpers/clientHelpers.js";
|
|
24
21
|
|
|
25
22
|
export function transformRLCOptions(
|
|
26
23
|
emitterOptions: EmitterOptions,
|
|
27
|
-
dpgContext: SdkContext
|
|
24
|
+
dpgContext: SdkContext,
|
|
28
25
|
): RLCOptions {
|
|
29
26
|
// Extract the options from emitter option
|
|
30
27
|
const options = extractRLCOptions(
|
|
31
28
|
dpgContext,
|
|
32
29
|
emitterOptions,
|
|
33
|
-
dpgContext.generationPathDetail?.rootDir ?? ""
|
|
30
|
+
dpgContext.generationPathDetail?.rootDir ?? "",
|
|
34
31
|
);
|
|
35
32
|
const batch = getRLCClients(dpgContext, options.isModularLibrary);
|
|
36
33
|
options.batch = batch;
|
|
@@ -39,41 +36,29 @@ export function transformRLCOptions(
|
|
|
39
36
|
function extractRLCOptions(
|
|
40
37
|
dpgContext: SdkContext,
|
|
41
38
|
emitterOptions: EmitterOptions,
|
|
42
|
-
generationRootDir: string
|
|
39
|
+
generationRootDir: string,
|
|
43
40
|
): RLCOptions {
|
|
44
41
|
const program = dpgContext.program;
|
|
45
42
|
// Compute isModularLibrary early - defaults to true unless explicitly set to false
|
|
46
43
|
const isModularLibrary = emitterOptions["is-modular-library"] !== false;
|
|
47
44
|
const includeShortcuts = getIncludeShortcuts(emitterOptions);
|
|
48
|
-
const packageDetails = getPackageDetails(
|
|
49
|
-
program,
|
|
50
|
-
emitterOptions,
|
|
51
|
-
isModularLibrary
|
|
52
|
-
);
|
|
45
|
+
const packageDetails = getPackageDetails(program, emitterOptions, isModularLibrary);
|
|
53
46
|
const flavor = getFlavor(emitterOptions, packageDetails);
|
|
54
47
|
const moduleKind = getModuleKind(emitterOptions);
|
|
55
48
|
const serviceInfo = getServiceInfo(program, isModularLibrary);
|
|
56
|
-
const includeHeadersInResponse =
|
|
57
|
-
emitterOptions["include-headers-in-response"] === true;
|
|
49
|
+
const includeHeadersInResponse = emitterOptions["include-headers-in-response"] === true;
|
|
58
50
|
const azureSdkForJs = getAzureSdkForJs(emitterOptions, flavor);
|
|
59
51
|
const generateMetadata = getGenerateMetadata(emitterOptions);
|
|
60
52
|
const generateTest = getGenerateTest(emitterOptions, flavor);
|
|
61
53
|
const generateSample = getGenerateSample(dpgContext, emitterOptions);
|
|
62
|
-
const credentialInfo = getCredentialInfo(
|
|
63
|
-
program,
|
|
64
|
-
emitterOptions,
|
|
65
|
-
isModularLibrary
|
|
66
|
-
);
|
|
54
|
+
const credentialInfo = getCredentialInfo(program, emitterOptions, isModularLibrary);
|
|
67
55
|
const azureOutputDirectory = getAzureOutputDirectory(generationRootDir);
|
|
68
56
|
const enableOperationGroup = getEnableOperationGroup(
|
|
69
57
|
dpgContext,
|
|
70
58
|
emitterOptions,
|
|
71
|
-
isModularLibrary
|
|
72
|
-
);
|
|
73
|
-
const enableModelNamespace = getEnableModelNamespace(
|
|
74
|
-
dpgContext,
|
|
75
|
-
emitterOptions
|
|
59
|
+
isModularLibrary,
|
|
76
60
|
);
|
|
61
|
+
const enableModelNamespace = getEnableModelNamespace(dpgContext, emitterOptions);
|
|
77
62
|
const hierarchyClient = getHierarchyClient(emitterOptions);
|
|
78
63
|
const clearOutputFolder = getClearOutputFolder(emitterOptions);
|
|
79
64
|
const multiClient = emitterOptions["multi-client"];
|
|
@@ -83,25 +68,16 @@ function extractRLCOptions(
|
|
|
83
68
|
const productDocLink = emitterOptions["product-doc-link"];
|
|
84
69
|
const compatibilityMode = emitterOptions["compatibility-mode"];
|
|
85
70
|
const compatibilityLro = emitterOptions["compatibility-lro"];
|
|
86
|
-
const experimentalExtensibleEnums =
|
|
87
|
-
|
|
88
|
-
const
|
|
89
|
-
|
|
90
|
-
const ignoreEnumMemberNameNormalize =
|
|
91
|
-
emitterOptions["ignore-enum-member-name-normalize"];
|
|
92
|
-
const compatibilityQueryMultiFormat =
|
|
93
|
-
emitterOptions["compatibility-query-multi-format"];
|
|
71
|
+
const experimentalExtensibleEnums = emitterOptions["experimental-extensible-enums"];
|
|
72
|
+
const ignorePropertyNameNormalize = emitterOptions["ignore-property-name-normalize"];
|
|
73
|
+
const ignoreEnumMemberNameNormalize = emitterOptions["ignore-enum-member-name-normalize"];
|
|
74
|
+
const compatibilityQueryMultiFormat = emitterOptions["compatibility-query-multi-format"];
|
|
94
75
|
const enableStorageCompat = emitterOptions["enable-storage-compat"] === true;
|
|
95
|
-
const treatUnknownAsRecord =
|
|
96
|
-
emitterOptions["treat-unknown-as-record"] === true;
|
|
76
|
+
const treatUnknownAsRecord = emitterOptions["treat-unknown-as-record"] === true;
|
|
97
77
|
const typespecTitleMap = emitterOptions["typespec-title-map"];
|
|
98
|
-
const generateReactNativeTarget =
|
|
99
|
-
emitterOptions["generate-react-native-target"] === true;
|
|
78
|
+
const generateReactNativeTarget = emitterOptions["generate-react-native-target"] === true;
|
|
100
79
|
const hasSubscriptionId = getSubscriptionId(dpgContext);
|
|
101
|
-
const ignoreNullableOnOptional = getIgnoreNullableOnOptional(
|
|
102
|
-
emitterOptions,
|
|
103
|
-
flavor
|
|
104
|
-
);
|
|
80
|
+
const ignoreNullableOnOptional = getIgnoreNullableOnOptional(emitterOptions, flavor);
|
|
105
81
|
const wrapNonModelReturn = getWrapNonModelReturn(emitterOptions, flavor);
|
|
106
82
|
const isMultiService = (dpgContext.allServiceNamespaces?.length ?? 0) > 1;
|
|
107
83
|
|
|
@@ -143,7 +119,7 @@ function extractRLCOptions(
|
|
|
143
119
|
isMultiService,
|
|
144
120
|
enableStorageCompat,
|
|
145
121
|
treatUnknownAsRecord,
|
|
146
|
-
generateReactNativeTarget
|
|
122
|
+
generateReactNativeTarget,
|
|
147
123
|
};
|
|
148
124
|
}
|
|
149
125
|
|
|
@@ -163,10 +139,9 @@ function processAuth(program: Program, isModularLibrary: boolean) {
|
|
|
163
139
|
securityInfo.addCredentials = true;
|
|
164
140
|
securityInfo.customHttpAuthHeaderName = "Authorization";
|
|
165
141
|
// If it is basic or bearer auth we should generate it as Basic or Bearer
|
|
166
|
-
securityInfo.customHttpAuthSharedKeyPrefix = [
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
].includes(auth.scheme.toLowerCase())
|
|
142
|
+
securityInfo.customHttpAuthSharedKeyPrefix = ["basic", "bearer"].includes(
|
|
143
|
+
auth.scheme.toLowerCase(),
|
|
144
|
+
)
|
|
170
145
|
? pascalCase(auth.scheme)
|
|
171
146
|
: auth.scheme;
|
|
172
147
|
break;
|
|
@@ -189,7 +164,7 @@ function processAuth(program: Program, isModularLibrary: boolean) {
|
|
|
189
164
|
if (flow.scopes.length === 0) {
|
|
190
165
|
reportDiagnostic(program, {
|
|
191
166
|
code: "no-credential-scopes",
|
|
192
|
-
target: NoTarget
|
|
167
|
+
target: NoTarget,
|
|
193
168
|
});
|
|
194
169
|
}
|
|
195
170
|
// ignore the user_impersonation scope
|
|
@@ -203,7 +178,7 @@ function processAuth(program: Program, isModularLibrary: boolean) {
|
|
|
203
178
|
securityInfo.credentialScopes.push(
|
|
204
179
|
...flow.scopes.map((item) => {
|
|
205
180
|
return item.value;
|
|
206
|
-
})
|
|
181
|
+
}),
|
|
207
182
|
);
|
|
208
183
|
break;
|
|
209
184
|
}
|
|
@@ -217,7 +192,7 @@ function processAuth(program: Program, isModularLibrary: boolean) {
|
|
|
217
192
|
function getEnableOperationGroup(
|
|
218
193
|
dpgContext: SdkContext,
|
|
219
194
|
emitterOptions: EmitterOptions,
|
|
220
|
-
isModularLibrary: boolean
|
|
195
|
+
isModularLibrary: boolean,
|
|
221
196
|
) {
|
|
222
197
|
if (
|
|
223
198
|
emitterOptions["enable-operation-group"] === true ||
|
|
@@ -229,10 +204,7 @@ function getEnableOperationGroup(
|
|
|
229
204
|
return detectIfNameConflicts(dpgContext, isModularLibrary);
|
|
230
205
|
}
|
|
231
206
|
|
|
232
|
-
function getEnableModelNamespace(
|
|
233
|
-
dpgContext: SdkContext,
|
|
234
|
-
emitterOptions: EmitterOptions
|
|
235
|
-
) {
|
|
207
|
+
function getEnableModelNamespace(dpgContext: SdkContext, emitterOptions: EmitterOptions) {
|
|
236
208
|
if (
|
|
237
209
|
emitterOptions["enable-model-namespace"] === true ||
|
|
238
210
|
emitterOptions["enable-model-namespace"] === false
|
|
@@ -244,10 +216,7 @@ function getEnableModelNamespace(
|
|
|
244
216
|
}
|
|
245
217
|
|
|
246
218
|
function getHierarchyClient(emitterOptions: EmitterOptions) {
|
|
247
|
-
if (
|
|
248
|
-
emitterOptions["hierarchy-client"] === true ||
|
|
249
|
-
emitterOptions["hierarchy-client"] === false
|
|
250
|
-
) {
|
|
219
|
+
if (emitterOptions["hierarchy-client"] === true || emitterOptions["hierarchy-client"] === false) {
|
|
251
220
|
return emitterOptions["hierarchy-client"];
|
|
252
221
|
}
|
|
253
222
|
// enable hierarchy client by default if customers didn't set the option explicitly
|
|
@@ -258,10 +227,7 @@ function getClearOutputFolder(emitterOptions: EmitterOptions) {
|
|
|
258
227
|
return emitterOptions["clear-output-folder"] ? true : false;
|
|
259
228
|
}
|
|
260
229
|
|
|
261
|
-
function detectIfNameConflicts(
|
|
262
|
-
dpgContext: SdkContext,
|
|
263
|
-
isModularLibrary: boolean
|
|
264
|
-
) {
|
|
230
|
+
function detectIfNameConflicts(dpgContext: SdkContext, isModularLibrary: boolean) {
|
|
265
231
|
const clients = getRLCClients(dpgContext, isModularLibrary);
|
|
266
232
|
for (const client of clients) {
|
|
267
233
|
// only consider it's conflict when there are conflicts in the same client
|
|
@@ -283,7 +249,7 @@ function detectIfNameConflicts(
|
|
|
283
249
|
|
|
284
250
|
function getIgnoreNullableOnOptional(
|
|
285
251
|
emitterOptions: EmitterOptions,
|
|
286
|
-
flavor: PackageFlavor
|
|
252
|
+
flavor: PackageFlavor,
|
|
287
253
|
): boolean {
|
|
288
254
|
// If explicitly set in options, use that value
|
|
289
255
|
if (emitterOptions["ignore-nullable-on-optional"] !== undefined) {
|
|
@@ -293,10 +259,7 @@ function getIgnoreNullableOnOptional(
|
|
|
293
259
|
return flavor === "azure";
|
|
294
260
|
}
|
|
295
261
|
|
|
296
|
-
function getWrapNonModelReturn(
|
|
297
|
-
emitterOptions: EmitterOptions,
|
|
298
|
-
flavor: PackageFlavor
|
|
299
|
-
): boolean {
|
|
262
|
+
function getWrapNonModelReturn(emitterOptions: EmitterOptions, flavor: PackageFlavor): boolean {
|
|
300
263
|
// If explicitly set in options, use that value
|
|
301
264
|
if (emitterOptions["wrap-non-model-return"] !== undefined) {
|
|
302
265
|
return Boolean(emitterOptions["wrap-non-model-return"]);
|
|
@@ -313,10 +276,7 @@ function getModuleKind(emitterOptions: EmitterOptions) {
|
|
|
313
276
|
return emitterOptions["module-kind"] ?? "esm";
|
|
314
277
|
}
|
|
315
278
|
|
|
316
|
-
function getFlavor(
|
|
317
|
-
emitterOptions: EmitterOptions,
|
|
318
|
-
packageDetails?: PackageDetails
|
|
319
|
-
): PackageFlavor {
|
|
279
|
+
function getFlavor(emitterOptions: EmitterOptions, packageDetails?: PackageDetails): PackageFlavor {
|
|
320
280
|
const flavor = emitterOptions.flavor;
|
|
321
281
|
|
|
322
282
|
if (flavor !== undefined) {
|
|
@@ -345,28 +305,24 @@ function getFlavor(
|
|
|
345
305
|
function buildPackageDetails(
|
|
346
306
|
program: Program,
|
|
347
307
|
emitterOptions: EmitterOptions,
|
|
348
|
-
isModularLibrary: boolean
|
|
308
|
+
isModularLibrary: boolean,
|
|
349
309
|
): PackageDetails {
|
|
350
310
|
const defaultDetail = {
|
|
351
311
|
name: "@msinternal/unamedpackage",
|
|
352
312
|
nameWithoutScope: "unamedpackage",
|
|
353
|
-
version: "1.0.0-beta.1"
|
|
313
|
+
version: "1.0.0-beta.1",
|
|
354
314
|
};
|
|
355
|
-
const isVersionUserProvided = Boolean(
|
|
356
|
-
emitterOptions["package-details"]?.version
|
|
357
|
-
);
|
|
315
|
+
const isVersionUserProvided = Boolean(emitterOptions["package-details"]?.version);
|
|
358
316
|
const packageDetails: PackageDetails = {
|
|
359
317
|
...emitterOptions["package-details"],
|
|
360
318
|
name:
|
|
361
319
|
emitterOptions["package-details"]?.name ??
|
|
362
320
|
normalizeName(
|
|
363
|
-
emitterOptions?.title ??
|
|
364
|
-
|
|
365
|
-
"",
|
|
366
|
-
NameType.Class
|
|
321
|
+
emitterOptions?.title ?? getDefaultService(program, isModularLibrary)?.title ?? "",
|
|
322
|
+
NameType.Class,
|
|
367
323
|
),
|
|
368
324
|
version: emitterOptions["package-details"]?.version ?? "1.0.0-beta.1",
|
|
369
|
-
isVersionUserProvided
|
|
325
|
+
isVersionUserProvided,
|
|
370
326
|
};
|
|
371
327
|
if (emitterOptions["package-details"]?.name) {
|
|
372
328
|
const nameParts = emitterOptions["package-details"]?.name.split("/");
|
|
@@ -381,26 +337,20 @@ function buildPackageDetails(
|
|
|
381
337
|
function getPackageDetails(
|
|
382
338
|
program: Program,
|
|
383
339
|
emitterOptions: EmitterOptions,
|
|
384
|
-
isModularLibrary: boolean
|
|
340
|
+
isModularLibrary: boolean,
|
|
385
341
|
): PackageDetails {
|
|
386
342
|
return buildPackageDetails(program, emitterOptions, isModularLibrary);
|
|
387
343
|
}
|
|
388
344
|
|
|
389
|
-
function getServiceInfo(
|
|
390
|
-
program: Program,
|
|
391
|
-
isModularLibrary: boolean
|
|
392
|
-
): ServiceInfo {
|
|
345
|
+
function getServiceInfo(program: Program, isModularLibrary: boolean): ServiceInfo {
|
|
393
346
|
const defaultService = getDefaultService(program, isModularLibrary);
|
|
394
347
|
return {
|
|
395
348
|
title: defaultService?.title,
|
|
396
|
-
description: defaultService && getDoc(program, defaultService.type)
|
|
349
|
+
description: defaultService && getDoc(program, defaultService.type),
|
|
397
350
|
};
|
|
398
351
|
}
|
|
399
352
|
|
|
400
|
-
function getAzureSdkForJs(
|
|
401
|
-
emitterOptions: EmitterOptions,
|
|
402
|
-
flavor: PackageFlavor
|
|
403
|
-
) {
|
|
353
|
+
function getAzureSdkForJs(emitterOptions: EmitterOptions, flavor: PackageFlavor) {
|
|
404
354
|
return flavor !== "azure"
|
|
405
355
|
? false
|
|
406
356
|
: emitterOptions["azure-sdk-for-js"] === undefined ||
|
|
@@ -424,10 +374,7 @@ function getGenerateMetadata(emitterOptions: EmitterOptions) {
|
|
|
424
374
|
* @param emitterOptions
|
|
425
375
|
* @returns
|
|
426
376
|
*/
|
|
427
|
-
function getGenerateTest(
|
|
428
|
-
emitterOptions: EmitterOptions,
|
|
429
|
-
flavor: PackageFlavor
|
|
430
|
-
) {
|
|
377
|
+
function getGenerateTest(emitterOptions: EmitterOptions, flavor: PackageFlavor) {
|
|
431
378
|
// Disable generateTest if azureSdkForJS is false
|
|
432
379
|
if (!getAzureSdkForJs(emitterOptions, flavor)) {
|
|
433
380
|
return false;
|
|
@@ -440,10 +387,7 @@ function getGenerateTest(
|
|
|
440
387
|
* @param emitterOptions
|
|
441
388
|
* @returns
|
|
442
389
|
*/
|
|
443
|
-
function getGenerateSample(
|
|
444
|
-
dpgContext: SdkContext,
|
|
445
|
-
emitterOptions: EmitterOptions
|
|
446
|
-
) {
|
|
390
|
+
function getGenerateSample(dpgContext: SdkContext, emitterOptions: EmitterOptions) {
|
|
447
391
|
if (dpgContext.arm && emitterOptions["generate-sample"] === undefined) {
|
|
448
392
|
return true;
|
|
449
393
|
}
|
|
@@ -459,7 +403,7 @@ function getGenerateSample(
|
|
|
459
403
|
export function getCredentialInfo(
|
|
460
404
|
program: Program,
|
|
461
405
|
emitterOptions: EmitterOptions,
|
|
462
|
-
isModularLibrary: boolean = true
|
|
406
|
+
isModularLibrary: boolean = true,
|
|
463
407
|
) {
|
|
464
408
|
const securityInfo = processAuth(program, isModularLibrary);
|
|
465
409
|
const addCredentials =
|
|
@@ -489,20 +433,14 @@ export function getCredentialInfo(
|
|
|
489
433
|
credentialScopes,
|
|
490
434
|
credentialKeyHeaderName,
|
|
491
435
|
customHttpAuthHeaderName,
|
|
492
|
-
customHttpAuthSharedKeyPrefix
|
|
436
|
+
customHttpAuthSharedKeyPrefix,
|
|
493
437
|
};
|
|
494
438
|
}
|
|
495
439
|
|
|
496
440
|
function getAzureOutputDirectory(emitterOutputDir: string): string | undefined {
|
|
497
441
|
const sdkFolder = emitterOutputDir;
|
|
498
|
-
const sdkReletivePath = sdkFolder
|
|
499
|
-
|
|
500
|
-
.split("/")
|
|
501
|
-
.slice(-3)
|
|
502
|
-
.join("/");
|
|
503
|
-
return sdkReletivePath?.substring(0, 3) === "sdk"
|
|
504
|
-
? sdkReletivePath
|
|
505
|
-
: undefined;
|
|
442
|
+
const sdkReletivePath = sdkFolder?.replace(/\/$/, "").split("/").slice(-3).join("/");
|
|
443
|
+
return sdkReletivePath?.substring(0, 3) === "sdk" ? sdkReletivePath : undefined;
|
|
506
444
|
}
|
|
507
445
|
|
|
508
446
|
export function getSubscriptionId(dpgContext: SdkContext) {
|
package/src/utils/clientUtils.ts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
2
|
InitializedByFlags,
|
|
3
|
+
listAllServiceNamespaces,
|
|
4
|
+
listClients,
|
|
3
5
|
SdkClient,
|
|
4
6
|
SdkClientType,
|
|
5
7
|
SdkServiceOperation,
|
|
6
|
-
listAllServiceNamespaces,
|
|
7
|
-
listClients
|
|
8
8
|
} from "@azure-tools/typespec-client-generator-core";
|
|
9
9
|
import {
|
|
10
10
|
getNamespaceFullName,
|
|
@@ -12,18 +12,14 @@ import {
|
|
|
12
12
|
isTemplateDeclaration,
|
|
13
13
|
isTemplateDeclarationOrInstance,
|
|
14
14
|
Namespace,
|
|
15
|
-
Operation
|
|
15
|
+
Operation,
|
|
16
16
|
} from "@typespec/compiler";
|
|
17
|
-
import { SdkContext } from "./interfaces.js";
|
|
18
17
|
import { ModularClientOptions } from "../modular/interfaces.js";
|
|
19
18
|
import { NameType, normalizeName } from "../rlc-common/index.js";
|
|
19
|
+
import { SdkContext } from "./interfaces.js";
|
|
20
20
|
|
|
21
|
-
export function getRLCClients(
|
|
22
|
-
dpgContext
|
|
23
|
-
isModularLibrary?: boolean
|
|
24
|
-
): SdkClient[] {
|
|
25
|
-
const modular =
|
|
26
|
-
isModularLibrary ?? dpgContext.rlcOptions?.isModularLibrary ?? false;
|
|
21
|
+
export function getRLCClients(dpgContext: SdkContext, isModularLibrary?: boolean): SdkClient[] {
|
|
22
|
+
const modular = isModularLibrary ?? dpgContext.rlcOptions?.isModularLibrary ?? false;
|
|
27
23
|
const clients = listClients(dpgContext);
|
|
28
24
|
const rawServiceNamespaces =
|
|
29
25
|
dpgContext.allServiceNamespaces ?? listAllServiceNamespaces(dpgContext);
|
|
@@ -35,9 +31,7 @@ export function getRLCClients(
|
|
|
35
31
|
return {
|
|
36
32
|
...client,
|
|
37
33
|
services: services,
|
|
38
|
-
crossLanguageDefinitionId: `${getNamespaceFullName(
|
|
39
|
-
services[0]!
|
|
40
|
-
)}.${client.name}`
|
|
34
|
+
crossLanguageDefinitionId: `${getNamespaceFullName(services[0]!)}.${client.name}`,
|
|
41
35
|
};
|
|
42
36
|
});
|
|
43
37
|
} else {
|
|
@@ -61,10 +55,8 @@ export function getRLCClients(
|
|
|
61
55
|
subClients: [],
|
|
62
56
|
clientPath: clientName,
|
|
63
57
|
arm: Boolean(dpgContext.arm),
|
|
64
|
-
crossLanguageDefinitionId: `${getNamespaceFullName(
|
|
65
|
-
|
|
66
|
-
)}.${clientName}`,
|
|
67
|
-
subOperationGroups: []
|
|
58
|
+
crossLanguageDefinitionId: `${getNamespaceFullName(service)}.${clientName}`,
|
|
59
|
+
subOperationGroups: [],
|
|
68
60
|
};
|
|
69
61
|
});
|
|
70
62
|
}
|
|
@@ -82,10 +74,8 @@ export function getRLCClients(
|
|
|
82
74
|
subClients: [],
|
|
83
75
|
clientPath: clientName,
|
|
84
76
|
arm: Boolean(dpgContext.arm),
|
|
85
|
-
crossLanguageDefinitionId: `${getNamespaceFullName(
|
|
86
|
-
|
|
87
|
-
)}.${clientName}`,
|
|
88
|
-
subOperationGroups: []
|
|
77
|
+
crossLanguageDefinitionId: `${getNamespaceFullName(service)}.${clientName}`,
|
|
78
|
+
subOperationGroups: [],
|
|
89
79
|
};
|
|
90
80
|
});
|
|
91
81
|
}
|
|
@@ -100,8 +90,7 @@ export function listOperationsUnderRLCClient(client: SdkClient): Operation[] {
|
|
|
100
90
|
current.decorators.some(
|
|
101
91
|
(d) =>
|
|
102
92
|
d.definition?.name === "@client" &&
|
|
103
|
-
getNamespaceFullName(d.definition?.namespace) ===
|
|
104
|
-
"Azure.ClientGenerator.Core"
|
|
93
|
+
getNamespaceFullName(d.definition?.namespace) === "Azure.ClientGenerator.Core",
|
|
105
94
|
) &&
|
|
106
95
|
!serviceArray.includes(current as Namespace)
|
|
107
96
|
) {
|
|
@@ -109,15 +98,13 @@ export function listOperationsUnderRLCClient(client: SdkClient): Operation[] {
|
|
|
109
98
|
}
|
|
110
99
|
operations.push(
|
|
111
100
|
...[...current.operations.values()].filter(
|
|
112
|
-
(op) => isTemplateDeclarationOrInstance(op) === false
|
|
113
|
-
)
|
|
101
|
+
(op) => isTemplateDeclarationOrInstance(op) === false,
|
|
102
|
+
),
|
|
114
103
|
);
|
|
115
104
|
if (current.kind === "Namespace") {
|
|
116
105
|
queue.push(...current.namespaces.values());
|
|
117
106
|
queue.push(
|
|
118
|
-
...[...current.interfaces.values()].filter(
|
|
119
|
-
(i) => isTemplateDeclaration(i) === false
|
|
120
|
-
)
|
|
107
|
+
...[...current.interfaces.values()].filter((i) => isTemplateDeclaration(i) === false),
|
|
121
108
|
);
|
|
122
109
|
}
|
|
123
110
|
}
|
|
@@ -128,33 +115,28 @@ export function isRLCMultiEndpoint(dpgContext: SdkContext): boolean {
|
|
|
128
115
|
return getRLCClients(dpgContext).length > 1;
|
|
129
116
|
}
|
|
130
117
|
|
|
131
|
-
export function getModularClientOptions(
|
|
132
|
-
clientMap: [string[], SdkClientType<SdkServiceOperation>]
|
|
133
|
-
) {
|
|
118
|
+
export function getModularClientOptions(clientMap: [string[], SdkClientType<SdkServiceOperation>]) {
|
|
134
119
|
const [hierarchy, client] = clientMap;
|
|
135
120
|
const clientOptions: ModularClientOptions = {
|
|
136
|
-
rlcClientName: `${client.name.replace(/Client$/, "")}Context
|
|
121
|
+
rlcClientName: `${client.name.replace(/Client$/, "")}Context`,
|
|
137
122
|
};
|
|
138
123
|
clientOptions.subfolder = hierarchy.join("/");
|
|
139
124
|
return clientOptions;
|
|
140
125
|
}
|
|
141
126
|
|
|
142
127
|
export function getClientHierarchyMap(
|
|
143
|
-
context: SdkContext
|
|
128
|
+
context: SdkContext,
|
|
144
129
|
): [string[], SdkClientType<SdkServiceOperation>][] {
|
|
145
130
|
const clientMap: [string[], SdkClientType<SdkServiceOperation>][] = [];
|
|
146
131
|
const individualClients = context.sdkPackage.clients.filter((client) => {
|
|
147
|
-
return
|
|
148
|
-
client.clientInitialization.initializedBy &
|
|
149
|
-
InitializedByFlags.Individually
|
|
150
|
-
);
|
|
132
|
+
return client.clientInitialization.initializedBy & InitializedByFlags.Individually;
|
|
151
133
|
});
|
|
152
134
|
const clients = individualClients.map((client) => {
|
|
153
135
|
return [
|
|
154
136
|
context.sdkPackage.clients.length > 1
|
|
155
137
|
? [normalizeName(client.name.replace("Client", ""), NameType.File)]
|
|
156
138
|
: [],
|
|
157
|
-
client
|
|
139
|
+
client,
|
|
158
140
|
];
|
|
159
141
|
}) as [string[], SdkClientType<SdkServiceOperation>][];
|
|
160
142
|
for (let i = 0; i < clients.length; i++) {
|
|
@@ -162,8 +144,7 @@ export function getClientHierarchyMap(
|
|
|
162
144
|
clientMap.push([hierarchy, client]);
|
|
163
145
|
const childClientsToGenerate = client.children?.filter((child) => {
|
|
164
146
|
return (
|
|
165
|
-
child.clientInitialization.initializedBy &
|
|
166
|
-
InitializedByFlags.Individually ||
|
|
147
|
+
child.clientInitialization.initializedBy & InitializedByFlags.Individually ||
|
|
167
148
|
child.clientInitialization.initializedBy & InitializedByFlags.Parent
|
|
168
149
|
);
|
|
169
150
|
});
|
|
@@ -171,7 +152,7 @@ export function getClientHierarchyMap(
|
|
|
171
152
|
childClientsToGenerate.forEach((child) => {
|
|
172
153
|
const childHierarchy = [
|
|
173
154
|
...hierarchy,
|
|
174
|
-
normalizeName(child.name.replace("Client", ""), NameType.File)
|
|
155
|
+
normalizeName(child.name.replace("Client", ""), NameType.File),
|
|
175
156
|
];
|
|
176
157
|
clients.push([childHierarchy, child]);
|
|
177
158
|
});
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
+
import { SdkClientInitializationType } from "@azure-tools/typespec-client-generator-core";
|
|
1
2
|
import { NoTarget, Program } from "@typespec/compiler";
|
|
2
3
|
import { Authentication, HttpAuth } from "@typespec/http";
|
|
3
4
|
import { reportDiagnostic } from "../lib.js";
|
|
4
|
-
import { SdkClientInitializationType } from "@azure-tools/typespec-client-generator-core";
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* Get supported HTTP authentication schemes and filter out unsupported ones.
|
|
@@ -9,10 +9,7 @@ import { SdkClientInitializationType } from "@azure-tools/typespec-client-genera
|
|
|
9
9
|
* @param authorization authentication object
|
|
10
10
|
* @returns supported HTTP authentication schemes
|
|
11
11
|
*/
|
|
12
|
-
export function getSupportedHttpAuth(
|
|
13
|
-
program: Program,
|
|
14
|
-
authorization: Authentication
|
|
15
|
-
): HttpAuth[] {
|
|
12
|
+
export function getSupportedHttpAuth(program: Program, authorization: Authentication): HttpAuth[] {
|
|
16
13
|
const authList = [];
|
|
17
14
|
for (const option of authorization.options) {
|
|
18
15
|
for (const auth of option.schemes) {
|
|
@@ -25,9 +22,9 @@ export function getSupportedHttpAuth(
|
|
|
25
22
|
reportDiagnostic(program, {
|
|
26
23
|
code: "un-supported-credential",
|
|
27
24
|
format: {
|
|
28
|
-
credentialType: `${auth.type} ${auth.in}
|
|
25
|
+
credentialType: `${auth.type} ${auth.in}`,
|
|
29
26
|
},
|
|
30
|
-
target: NoTarget
|
|
27
|
+
target: NoTarget,
|
|
31
28
|
});
|
|
32
29
|
}
|
|
33
30
|
break;
|
|
@@ -42,9 +39,7 @@ export function getSupportedHttpAuth(
|
|
|
42
39
|
}
|
|
43
40
|
|
|
44
41
|
export function isSupportedKeyCredential(auth: HttpAuth): boolean {
|
|
45
|
-
return (
|
|
46
|
-
(auth.type === "apiKey" && auth.in === "header") || auth.type === "http"
|
|
47
|
-
);
|
|
42
|
+
return (auth.type === "apiKey" && auth.in === "header") || auth.type === "http";
|
|
48
43
|
}
|
|
49
44
|
|
|
50
45
|
export function isSupportedTokenCredential(auth: HttpAuth): boolean {
|
|
@@ -56,19 +51,13 @@ export function hasKeyCredential(initialization: SdkClientInitializationType) {
|
|
|
56
51
|
return authScheme.some((auth) => isSupportedKeyCredential(auth));
|
|
57
52
|
}
|
|
58
53
|
|
|
59
|
-
export function hasTokenCredential(
|
|
60
|
-
initialization: SdkClientInitializationType
|
|
61
|
-
) {
|
|
54
|
+
export function hasTokenCredential(initialization: SdkClientInitializationType) {
|
|
62
55
|
const authScheme = getAuthScheme(initialization);
|
|
63
56
|
return authScheme.some((auth) => isSupportedTokenCredential(auth));
|
|
64
57
|
}
|
|
65
58
|
|
|
66
|
-
function getAuthScheme(
|
|
67
|
-
initialization
|
|
68
|
-
): HttpAuth[] {
|
|
69
|
-
const credentialParams = initialization.parameters?.find(
|
|
70
|
-
(param) => param.kind === "credential"
|
|
71
|
-
);
|
|
59
|
+
function getAuthScheme(initialization: SdkClientInitializationType): HttpAuth[] {
|
|
60
|
+
const credentialParams = initialization.parameters?.find((param) => param.kind === "credential");
|
|
72
61
|
if (!credentialParams) {
|
|
73
62
|
return [];
|
|
74
63
|
}
|
|
@@ -1,27 +1,21 @@
|
|
|
1
1
|
// Copyright (c) Microsoft Corporation.
|
|
2
2
|
// Licensed under the MIT License.
|
|
3
3
|
|
|
4
|
-
import {
|
|
4
|
+
import { UsageFlags } from "@azure-tools/typespec-client-generator-core";
|
|
5
5
|
import { transformModularEmitterOptions } from "../modular/buildModularOptions.js";
|
|
6
|
-
import { getMethodHierarchiesMap } from "./operationUtil.js";
|
|
7
6
|
import { NameType, normalizeName } from "../rlc-common/index.js";
|
|
8
|
-
import {
|
|
7
|
+
import { SdkContext } from "./interfaces.js";
|
|
8
|
+
import { getMethodHierarchiesMap } from "./operationUtil.js";
|
|
9
9
|
|
|
10
10
|
export function generateCrossLanguageDefinitionFile(dpgContext: SdkContext): {
|
|
11
11
|
CrossLanguagePackageId: string;
|
|
12
12
|
CrossLanguageDefinitionId: Record<string, string>;
|
|
13
13
|
} {
|
|
14
|
-
const modularSourcesRoot =
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
{
|
|
20
|
-
casing: "camel"
|
|
21
|
-
}
|
|
22
|
-
);
|
|
23
|
-
const packageName =
|
|
24
|
-
emitterOptions.options?.packageDetails?.name ?? "package-name";
|
|
14
|
+
const modularSourcesRoot = dpgContext.generationPathDetail?.modularSourcesDir ?? "src";
|
|
15
|
+
const emitterOptions = transformModularEmitterOptions(dpgContext, modularSourcesRoot, {
|
|
16
|
+
casing: "camel",
|
|
17
|
+
});
|
|
18
|
+
const packageName = emitterOptions.options?.packageDetails?.name ?? "package-name";
|
|
25
19
|
const CrossLanguageDefinitionId: Record<string, string> = {};
|
|
26
20
|
|
|
27
21
|
for (const model of dpgContext.sdkPackage.models) {
|
|
@@ -30,10 +24,7 @@ export function generateCrossLanguageDefinitionFile(dpgContext: SdkContext): {
|
|
|
30
24
|
}
|
|
31
25
|
for (const enm of dpgContext.sdkPackage.enums) {
|
|
32
26
|
// Skip api version enum for multi-service scenarios since each service may have different versions
|
|
33
|
-
if (
|
|
34
|
-
dpgContext.rlcOptions?.isMultiService &&
|
|
35
|
-
enm.usage === UsageFlags.ApiVersionEnum
|
|
36
|
-
) {
|
|
27
|
+
if (dpgContext.rlcOptions?.isMultiService && enm.usage === UsageFlags.ApiVersionEnum) {
|
|
37
28
|
continue;
|
|
38
29
|
}
|
|
39
30
|
CrossLanguageDefinitionId[`${packageName}!Known${enm.name}:enum`] =
|
|
@@ -45,9 +36,7 @@ export function generateCrossLanguageDefinitionFile(dpgContext: SdkContext): {
|
|
|
45
36
|
}
|
|
46
37
|
|
|
47
38
|
for (const subClient of dpgContext.sdkPackage.clients) {
|
|
48
|
-
const clientName =
|
|
49
|
-
emitterOptions.options?.typespecTitleMap?.[subClient.name] ??
|
|
50
|
-
subClient.name;
|
|
39
|
+
const clientName = emitterOptions.options?.typespecTitleMap?.[subClient.name] ?? subClient.name;
|
|
51
40
|
const methodMap = getMethodHierarchiesMap(dpgContext, subClient);
|
|
52
41
|
for (const [prefixKey, operations] of methodMap) {
|
|
53
42
|
const prefixes = prefixKey.split("/");
|
|
@@ -55,24 +44,16 @@ export function generateCrossLanguageDefinitionFile(dpgContext: SdkContext): {
|
|
|
55
44
|
for (const operation of operations) {
|
|
56
45
|
const { name } = operation;
|
|
57
46
|
const operationName = `${packageName}!${clientName}#${name}:member(1)`;
|
|
58
|
-
CrossLanguageDefinitionId[operationName] =
|
|
59
|
-
operation.crossLanguageDefinitionId;
|
|
47
|
+
CrossLanguageDefinitionId[operationName] = operation.crossLanguageDefinitionId;
|
|
60
48
|
}
|
|
61
49
|
} else {
|
|
62
50
|
// e,g., @azure/ai-client!ConnectionsOperations#getConnectionWithSecrets:member": "Azure.AI.Projects.Connections.getConnectionWithSecrets"
|
|
63
|
-
const rawGroupName = normalizeName(
|
|
64
|
-
|
|
65
|
-
NameType.Interface
|
|
66
|
-
);
|
|
67
|
-
const propertyType = `${normalizeName(
|
|
68
|
-
rawGroupName,
|
|
69
|
-
NameType.OperationGroup
|
|
70
|
-
)}Operations`;
|
|
51
|
+
const rawGroupName = normalizeName(prefixes[0] ?? "", NameType.Interface);
|
|
52
|
+
const propertyType = `${normalizeName(rawGroupName, NameType.OperationGroup)}Operations`;
|
|
71
53
|
for (const operation of operations) {
|
|
72
54
|
const { name } = operation;
|
|
73
55
|
const operationName = `${packageName}!${propertyType}#${name}:member`;
|
|
74
|
-
CrossLanguageDefinitionId[operationName] =
|
|
75
|
-
operation.crossLanguageDefinitionId;
|
|
56
|
+
CrossLanguageDefinitionId[operationName] = operation.crossLanguageDefinitionId;
|
|
76
57
|
}
|
|
77
58
|
}
|
|
78
59
|
}
|
|
@@ -80,6 +61,6 @@ export function generateCrossLanguageDefinitionFile(dpgContext: SdkContext): {
|
|
|
80
61
|
|
|
81
62
|
return {
|
|
82
63
|
CrossLanguagePackageId: dpgContext.sdkPackage.crossLanguagePackageId,
|
|
83
|
-
CrossLanguageDefinitionId
|
|
64
|
+
CrossLanguageDefinitionId,
|
|
84
65
|
};
|
|
85
66
|
}
|