@azure-tools/typespec-ts 0.54.0 → 0.55.0-dev.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/CHANGELOG.md +25 -10
- package/README.md +0 -4
- package/dist/src/contextManager.d.ts +5 -5
- package/dist/src/contextManager.d.ts.map +1 -1
- package/dist/src/contextManager.js +3 -3
- 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 +31 -40
- 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 -12
- 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 +17 -31
- 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 +2 -2
- 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 +103 -92
- 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 +60 -74
- 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 +8 -10
- 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 +31 -38
- 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 +5 -6
- 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 +23 -25
- 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 +8 -11
- 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 +12 -13
- 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 +36 -50
- 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 -18
- 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 +4 -4
- 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 +81 -113
- 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 +7 -8
- 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 +69 -77
- 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 +13 -18
- 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 +59 -68
- 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 +31 -54
- 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 +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 +72 -84
- 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 +7 -10
- 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 +204 -288
- 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 +4 -6
- 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 +58 -67
- 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 +65 -75
- 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 +73 -90
- 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 +25 -33
- 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 -2
- 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 +10 -13
- 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 +2 -3
- 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 +5 -11
- 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 +67 -89
- 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 +28 -45
- 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 +59 -60
- 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 +37 -38
- 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 +4 -5
- 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 +4 -4
- 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 +57 -96
- 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 +71 -61
- 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 +9 -10
- 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 +23 -27
- 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 +31 -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 +6 -8
- 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 +32 -37
- 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 +2 -4
- 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 +17 -23
- 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 +16 -31
- package/dist/src/rlc-common/helpers/operationHelpers.js.map +1 -1
- package/dist/src/rlc-common/helpers/packageUtil.js +3 -6
- package/dist/src/rlc-common/helpers/packageUtil.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 +3 -7
- 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 +4 -9
- package/dist/src/rlc-common/helpers/typeUtil.js.map +1 -1
- package/dist/src/rlc-common/helpers/valueGenerationUtil.js +7 -11
- 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 +14 -15
- package/dist/src/rlc-common/metadata/buildApiExtractorConfig.js.map +1 -1
- package/dist/src/rlc-common/metadata/buildChangelogFile.js +2 -3
- package/dist/src/rlc-common/metadata/buildChangelogFile.js.map +1 -1
- package/dist/src/rlc-common/metadata/buildESLintConfig.d.ts.map +1 -1
- package/dist/src/rlc-common/metadata/buildESLintConfig.js +5 -8
- 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 +33 -37
- 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 +31 -39
- 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 +4 -6
- 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 +3 -5
- package/dist/src/rlc-common/metadata/buildSampleEnvFile.js.map +1 -1
- package/dist/src/rlc-common/metadata/buildTestConfig.js +11 -12
- package/dist/src/rlc-common/metadata/buildTestConfig.js.map +1 -1
- package/dist/src/rlc-common/metadata/buildTsConfig.d.ts.map +1 -1
- package/dist/src/rlc-common/metadata/buildTsConfig.js +28 -28
- 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 -5
- 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 +4 -5
- 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 +14 -14
- 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 +24 -29
- 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 +28 -31
- package/dist/src/rlc-common/metadata/packageJson/packageCommon.js.map +1 -1
- package/dist/src/rlc-common/metadata/utils.js +1 -2
- package/dist/src/rlc-common/metadata/utils.js.map +1 -1
- package/dist/src/rlc-common/test/buildKarmaConfig.js +1 -1
- package/dist/src/rlc-common/test/buildRecordedClient.js +4 -5
- package/dist/src/rlc-common/test/buildRecordedClient.js.map +1 -1
- package/dist/src/rlc-common/test/buildSampleTest.d.ts.map +1 -1
- package/dist/src/rlc-common/test/buildSampleTest.js +3 -4
- 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 +7 -10
- 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 +41 -45
- 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 +28 -27
- 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 +12 -14
- 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 +11 -14
- 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 +32 -45
- 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 +19 -23
- 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 +21 -25
- 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 +21 -32
- 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 +28 -39
- 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 +15 -23
- 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 +4 -5
- 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 +11 -15
- 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 +5 -7
- package/dist/src/utils/emitUtil.js.map +1 -1
- package/dist/src/utils/fileSystemUtils.d.ts +2 -0
- package/dist/src/utils/fileSystemUtils.d.ts.map +1 -1
- package/dist/src/utils/fileSystemUtils.js +26 -7
- 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 +3 -6
- 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 +5 -5
- package/dist/src/utils/modelUtils.d.ts.map +1 -1
- package/dist/src/utils/modelUtils.js +168 -257
- 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 +6 -7
- 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 +60 -81
- 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 +26 -33
- 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 +38 -45
- 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 +145 -185
- 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 -160
- 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 +92 -180
- 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 +99 -215
- 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 -22
- 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 +44 -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 +79 -156
- package/src/rlc-common/buildPaginateHelper.ts +9 -12
- package/src/rlc-common/buildParameterTypes.ts +116 -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 +37 -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 -116
- 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 +30 -8
- 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 +175 -384
- 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 +16 -29
- 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-browser.mts +3 -1
- package/static/static-helpers/serialization/get-binary-response.ts +2 -2
- package/static/static-helpers/serialization/get-binary-stream-response-browser.mts +1 -3
- 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 +42 -90
- package/static/static-helpers/simplePollerHelpers.ts +10 -19
- 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,28 +1,28 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { isPagedResultModel, isReadOnly, listAllServiceNamespaces, UsageFlags, } from "@azure-tools/typespec-client-generator-core";
|
|
2
|
+
import { StructureKind, } from "ts-morph";
|
|
2
3
|
import { fixLeadingNumber, NameType, normalizeName } from "../rlc-common/index.js";
|
|
3
|
-
import { UsageFlags, isPagedResultModel, isReadOnly, listAllServiceNamespaces } from "@azure-tools/typespec-client-generator-core";
|
|
4
4
|
// import { isKey } from "@typespec/compiler";
|
|
5
|
-
import { getExternalModel, getModelExpression, getMultipartFileTypeExpression } from "./type-expressions/get-model-expression.js";
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import { buildModelSerializer, buildPropertySerializer } from "./serialization/buildSerializerFunction.js";
|
|
9
|
-
import { buildXmlModelSerializer, buildXmlModelDeserializer, buildXmlObjectModelSerializer, buildXmlObjectModelDeserializer, hasXmlSerialization } from "./serialization/buildXmlSerializerFunction.js";
|
|
5
|
+
import { getExternalModel, getModelExpression, getMultipartFileTypeExpression, } from "./type-expressions/get-model-expression.js";
|
|
6
|
+
import { getNamespaceFullName, NoTarget } from "@typespec/compiler";
|
|
7
|
+
import { isMetadata, isOrExtendsHttpFile, Visibility } from "@typespec/http";
|
|
10
8
|
import path from "path";
|
|
11
|
-
import { refkey } from "../framework/refkey.js";
|
|
12
9
|
import { useContext } from "../contextManager.js";
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
-
import { isExtensibleEnum } from "./type-expressions/get-enum-expression.js";
|
|
17
|
-
import { getAllDiscriminatedValues, getPropertyWithOverrides, isDiscriminatedUnion } from "./serialization/serializeUtils.js";
|
|
10
|
+
import { addDeclaration } from "../framework/declaration.js";
|
|
11
|
+
import { emitQueue, flattenPropertyModelMap, getAllOperationsFromClient, pagedModelsUsedInNonPagingOps, } from "../framework/hooks/sdkTypes.js";
|
|
12
|
+
import { refkey } from "../framework/refkey.js";
|
|
18
13
|
import { reportDiagnostic } from "../lib.js";
|
|
19
|
-
import { getNamespaceFullName, NoTarget } from "@typespec/compiler";
|
|
20
|
-
import { getTypeExpression, normalizeModelPropertyName } from "./type-expressions/get-type-expression.js";
|
|
21
|
-
import { emitQueue, flattenPropertyModelMap, getAllOperationsFromClient, pagedModelsUsedInNonPagingOps } from "../framework/hooks/sdkTypes.js";
|
|
22
|
-
import { getAllAncestors, getAllProperties, buildNonModelResponseTypeDeclaration, checkWrapNonModelReturn } from "./helpers/operationHelpers.js";
|
|
23
|
-
import { getDirectSubtypes } from "./helpers/typeHelpers.js";
|
|
24
14
|
import { getClientHierarchyMap } from "../utils/clientUtils.js";
|
|
15
|
+
import { isAzureCoreErrorType } from "../utils/modelUtils.js";
|
|
25
16
|
import { getMethodHierarchiesMap } from "../utils/operationUtil.js";
|
|
17
|
+
import { getHeaderClientOptions } from "./helpers/clientOptionHelpers.js";
|
|
18
|
+
import { buildNonModelResponseTypeDeclaration, checkWrapNonModelReturn, getAllAncestors, getAllProperties, } from "./helpers/operationHelpers.js";
|
|
19
|
+
import { getDirectSubtypes } from "./helpers/typeHelpers.js";
|
|
20
|
+
import { buildModelDeserializer, buildPropertyDeserializer, } from "./serialization/buildDeserializerFunction.js";
|
|
21
|
+
import { buildModelSerializer, buildPropertySerializer, } from "./serialization/buildSerializerFunction.js";
|
|
22
|
+
import { buildXmlModelDeserializer, buildXmlModelSerializer, buildXmlObjectModelDeserializer, buildXmlObjectModelSerializer, hasXmlSerialization, } from "./serialization/buildXmlSerializerFunction.js";
|
|
23
|
+
import { getAllDiscriminatedValues, getPropertyWithOverrides, isDiscriminatedUnion, } from "./serialization/serializeUtils.js";
|
|
24
|
+
import { isExtensibleEnum } from "./type-expressions/get-enum-expression.js";
|
|
25
|
+
import { getTypeExpression, normalizeModelPropertyName, } from "./type-expressions/get-type-expression.js";
|
|
26
26
|
function isGenerableType(type) {
|
|
27
27
|
return (type.kind === "model" ||
|
|
28
28
|
type.kind === "enum" ||
|
|
@@ -105,7 +105,6 @@ export function emitNonModelResponseTypes(context, { sourceRoot }) {
|
|
|
105
105
|
}
|
|
106
106
|
}
|
|
107
107
|
function emitType(context, type, sourceFile) {
|
|
108
|
-
var _a, _b;
|
|
109
108
|
if (type.kind === "model") {
|
|
110
109
|
if (isAzureCoreErrorType(context.program, type.__raw)) {
|
|
111
110
|
return;
|
|
@@ -127,12 +126,12 @@ function emitType(context, type, sourceFile) {
|
|
|
127
126
|
}
|
|
128
127
|
const modelInterface = buildModelInterface(context, type);
|
|
129
128
|
if (type.discriminatorProperty) {
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
})
|
|
134
|
-
|
|
135
|
-
|
|
129
|
+
modelInterface.properties
|
|
130
|
+
?.filter((p) => {
|
|
131
|
+
return p.name === normalizeModelPropertyName(context, type.discriminatorProperty);
|
|
132
|
+
})
|
|
133
|
+
.map((p) => {
|
|
134
|
+
p.docs?.push(`The discriminator possible values: ${Object.keys(type.discriminatedSubtypes ?? {}).join(", ")}`);
|
|
136
135
|
return p;
|
|
137
136
|
});
|
|
138
137
|
}
|
|
@@ -150,7 +149,7 @@ function emitType(context, type, sourceFile) {
|
|
|
150
149
|
}
|
|
151
150
|
const apiVersionEnumOnly = type.usage === UsageFlags.ApiVersionEnum;
|
|
152
151
|
// Skip known api version enums for multi-service scenarios as users are not allowed to set api versions
|
|
153
|
-
if (apiVersionEnumOnly &&
|
|
152
|
+
if (apiVersionEnumOnly && context.rlcOptions?.isMultiService) {
|
|
154
153
|
return;
|
|
155
154
|
}
|
|
156
155
|
const inputUsage = (type.usage & UsageFlags.Input) === UsageFlags.Input;
|
|
@@ -194,9 +193,8 @@ function emitType(context, type, sourceFile) {
|
|
|
194
193
|
}
|
|
195
194
|
}
|
|
196
195
|
export function getApiVersionEnum(context) {
|
|
197
|
-
var _a;
|
|
198
196
|
// Skip api version enum for multi-service scenarios since each service may have different versions
|
|
199
|
-
if (
|
|
197
|
+
if (context.rlcOptions?.isMultiService) {
|
|
200
198
|
return;
|
|
201
199
|
}
|
|
202
200
|
const apiVersionEnum = context.sdkPackage.enums.find((e) => e.usage === UsageFlags.ApiVersionEnum);
|
|
@@ -210,29 +208,26 @@ export function getModelsPath(sourceRoot, modelNamespace = []) {
|
|
|
210
208
|
sourceRoot,
|
|
211
209
|
"models",
|
|
212
210
|
...modelNamespace.map((n) => normalizeName(n, NameType.File)),
|
|
213
|
-
`models.ts
|
|
211
|
+
`models.ts`,
|
|
214
212
|
]);
|
|
215
213
|
}
|
|
216
214
|
export function getModelNamespaces(context, model) {
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
((_b = model.namespace) !== null && _b !== void 0 ? _b : "").startsWith("Azure.Core") ||
|
|
223
|
-
((_c = model.crossLanguageDefinitionId) !== null && _c !== void 0 ? _c : "").startsWith("TypeSpec.Rest.Resource") ||
|
|
224
|
-
((_d = model.crossLanguageDefinitionId) !== null && _d !== void 0 ? _d : "") === "TypeSpec.Http.File" // filter out the TypeSpec.Http.File model similar like what java does here https://github.com/microsoft/typespec/blob/main/packages/http-client-java/emitter/src/code-model-builder.ts#L2589
|
|
215
|
+
if (model.kind === "model" || model.kind === "enum" || model.kind === "union") {
|
|
216
|
+
if ((model.namespace ?? "").startsWith("Azure.ResourceManager") ||
|
|
217
|
+
(model.namespace ?? "").startsWith("Azure.Core") ||
|
|
218
|
+
(model.crossLanguageDefinitionId ?? "").startsWith("TypeSpec.Rest.Resource") ||
|
|
219
|
+
(model.crossLanguageDefinitionId ?? "") === "TypeSpec.Http.File" // filter out the TypeSpec.Http.File model similar like what java does here https://github.com/microsoft/typespec/blob/main/packages/http-client-java/emitter/src/code-model-builder.ts#L2589
|
|
225
220
|
) {
|
|
226
221
|
return [];
|
|
227
222
|
}
|
|
228
223
|
const segments = model.namespace.split(".");
|
|
229
224
|
// Keep full namespace segments if multiple services are present because there isn't a root namespace to trim
|
|
230
|
-
if (
|
|
225
|
+
if (context.rlcOptions?.isMultiService) {
|
|
231
226
|
return segments;
|
|
232
227
|
}
|
|
233
|
-
const allServiceNamespaces =
|
|
228
|
+
const allServiceNamespaces = context.allServiceNamespaces ?? listAllServiceNamespaces(context);
|
|
234
229
|
const deepestNamespace = getNamespaceFullName(allServiceNamespaces[0]);
|
|
235
|
-
const rootNamespace =
|
|
230
|
+
const rootNamespace = deepestNamespace.split(".") ?? [];
|
|
236
231
|
if (segments.length > rootNamespace.length) {
|
|
237
232
|
while (segments[0] === rootNamespace[0]) {
|
|
238
233
|
segments.shift();
|
|
@@ -297,7 +292,7 @@ function getModelAndAncestorProperties(type) {
|
|
|
297
292
|
function addSerializationFunctions(context, typeOrProperty, sourceFile, skipDiscriminatedUnionSuffix = false) {
|
|
298
293
|
const options = {
|
|
299
294
|
nameOnly: false,
|
|
300
|
-
skipDiscriminatedUnionSuffix
|
|
295
|
+
skipDiscriminatedUnionSuffix,
|
|
301
296
|
};
|
|
302
297
|
// Add JSON serializers
|
|
303
298
|
const serializationFunction = typeOrProperty.kind === "property"
|
|
@@ -355,40 +350,32 @@ function addSerializationFunctions(context, typeOrProperty, sourceFile, skipDisc
|
|
|
355
350
|
}
|
|
356
351
|
}
|
|
357
352
|
function buildUnionType(context, type) {
|
|
358
|
-
var _a;
|
|
359
353
|
const unionDeclaration = {
|
|
360
354
|
kind: StructureKind.TypeAlias,
|
|
361
355
|
name: normalizeModelName(context, type),
|
|
362
356
|
isExported: true,
|
|
363
|
-
type: type.variantTypes
|
|
364
|
-
.map((v) => getTypeExpression(context, v))
|
|
365
|
-
.join(" | ")
|
|
357
|
+
type: type.variantTypes.map((v) => getTypeExpression(context, v)).join(" | "),
|
|
366
358
|
};
|
|
367
|
-
unionDeclaration.docs = [
|
|
359
|
+
unionDeclaration.docs = [type.doc ?? `Alias for ${unionDeclaration.name}`];
|
|
368
360
|
return unionDeclaration;
|
|
369
361
|
}
|
|
370
362
|
function buildNullableType(context, type) {
|
|
371
|
-
var _a;
|
|
372
363
|
const nullableDeclaration = {
|
|
373
364
|
kind: StructureKind.TypeAlias,
|
|
374
365
|
name: normalizeModelName(context, type),
|
|
375
366
|
isExported: true,
|
|
376
|
-
type: getTypeExpression(context, type.type) + " | null"
|
|
367
|
+
type: getTypeExpression(context, type.type) + " | null",
|
|
377
368
|
};
|
|
378
|
-
nullableDeclaration.docs = [
|
|
379
|
-
(_a = type.doc) !== null && _a !== void 0 ? _a : `Alias for ${nullableDeclaration.name}`
|
|
380
|
-
];
|
|
369
|
+
nullableDeclaration.docs = [type.doc ?? `Alias for ${nullableDeclaration.name}`];
|
|
381
370
|
return nullableDeclaration;
|
|
382
371
|
}
|
|
383
|
-
export function buildEnumTypes(context, type, reportMemberNameDiagnostic = false
|
|
384
|
-
) {
|
|
385
|
-
var _a;
|
|
372
|
+
export function buildEnumTypes(context, type, reportMemberNameDiagnostic = false) {
|
|
386
373
|
const rawMembers = type.values.map((value) => emitEnumMember(context, value, reportMemberNameDiagnostic));
|
|
387
374
|
const enumDeclaration = {
|
|
388
375
|
kind: StructureKind.Enum,
|
|
389
376
|
name: `Known${normalizeModelName(context, type)}`,
|
|
390
377
|
isExported: true,
|
|
391
|
-
members: deduplicateEnumMemberNames(rawMembers)
|
|
378
|
+
members: deduplicateEnumMemberNames(rawMembers),
|
|
392
379
|
};
|
|
393
380
|
const enumAsUnion = {
|
|
394
381
|
kind: StructureKind.TypeAlias,
|
|
@@ -396,12 +383,12 @@ export function buildEnumTypes(context, type, reportMemberNameDiagnostic = false
|
|
|
396
383
|
isExported: true,
|
|
397
384
|
type: !isExtensibleEnum(context, type)
|
|
398
385
|
? type.values.map((v) => getTypeExpression(context, v)).join(" | ")
|
|
399
|
-
: getTypeExpression(context, type.valueType)
|
|
386
|
+
: getTypeExpression(context, type.valueType),
|
|
400
387
|
};
|
|
401
388
|
const docs = type.doc ? type.doc : "Type of " + enumAsUnion.name;
|
|
402
389
|
enumAsUnion.docs =
|
|
403
390
|
isExtensibleEnum(context, type) && type.doc
|
|
404
|
-
? [
|
|
391
|
+
? [getExtensibleEnumDescription(context, type) ?? docs]
|
|
405
392
|
: [docs];
|
|
406
393
|
enumDeclaration.docs = type.doc
|
|
407
394
|
? [type.doc]
|
|
@@ -423,7 +410,7 @@ function getExtensibleEnumDescription(context, model) {
|
|
|
423
410
|
`${model.doc} \\`,
|
|
424
411
|
enumLink,
|
|
425
412
|
`### Known values supported by the service`,
|
|
426
|
-
valueDescriptions
|
|
413
|
+
valueDescriptions,
|
|
427
414
|
].join(" \n");
|
|
428
415
|
}
|
|
429
416
|
/**
|
|
@@ -433,30 +420,26 @@ function getExtensibleEnumDescription(context, model) {
|
|
|
433
420
|
* to the same identifier.
|
|
434
421
|
*/
|
|
435
422
|
function deduplicateEnumMemberNames(members) {
|
|
436
|
-
var _a;
|
|
437
423
|
const nameCount = new Map();
|
|
438
424
|
for (const member of members) {
|
|
439
425
|
const name = member.name;
|
|
440
|
-
nameCount.set(name, (
|
|
426
|
+
nameCount.set(name, (nameCount.get(name) ?? 0) + 1);
|
|
441
427
|
}
|
|
442
428
|
const nameCurrentIndex = new Map();
|
|
443
429
|
return members.map((member) => {
|
|
444
|
-
var _a, _b;
|
|
445
430
|
const name = member.name;
|
|
446
|
-
if ((
|
|
447
|
-
const index = (
|
|
431
|
+
if ((nameCount.get(name) ?? 0) > 1) {
|
|
432
|
+
const index = (nameCurrentIndex.get(name) ?? 0) + 1;
|
|
448
433
|
nameCurrentIndex.set(name, index);
|
|
449
434
|
return { ...member, name: `${name}_${index}` };
|
|
450
435
|
}
|
|
451
436
|
return member;
|
|
452
437
|
});
|
|
453
438
|
}
|
|
454
|
-
function emitEnumMember(context, member, reportMemberNameDiagnostic = false
|
|
455
|
-
) {
|
|
456
|
-
var _a;
|
|
439
|
+
function emitEnumMember(context, member, reportMemberNameDiagnostic = false) {
|
|
457
440
|
const shouldNormalizeName = !member.name.startsWith("$DO_NOT_NORMALIZE$");
|
|
458
441
|
const enumTypeName = normalizeName(member.enumType.name, NameType.Interface, true);
|
|
459
|
-
let normalizedMemberName =
|
|
442
|
+
let normalizedMemberName = context.rlcOptions?.ignoreEnumMemberNameNormalize
|
|
460
443
|
? fixLeadingNumber(member.name, NameType.EnumMemberName) // need to fix the leading number also for enum member
|
|
461
444
|
: normalizeName(member.name, NameType.EnumMemberName, true);
|
|
462
445
|
// If the member name starts with _ due to a leading digit (not because the original has _),
|
|
@@ -464,8 +447,7 @@ function emitEnumMember(context, member, reportMemberNameDiagnostic = false // i
|
|
|
464
447
|
if (shouldNormalizeName &&
|
|
465
448
|
normalizedMemberName.toLowerCase().startsWith("_") &&
|
|
466
449
|
!member.name.toLowerCase().startsWith("_")) {
|
|
467
|
-
const isApiVersionEnum = (member.enumType.usage & UsageFlags.ApiVersionEnum) ===
|
|
468
|
-
UsageFlags.ApiVersionEnum;
|
|
450
|
+
const isApiVersionEnum = (member.enumType.usage & UsageFlags.ApiVersionEnum) === UsageFlags.ApiVersionEnum;
|
|
469
451
|
const prefix = isApiVersionEnum ? "V" : enumTypeName;
|
|
470
452
|
normalizedMemberName = prefix + normalizedMemberName.slice(1);
|
|
471
453
|
if (reportMemberNameDiagnostic) {
|
|
@@ -474,16 +456,16 @@ function emitEnumMember(context, member, reportMemberNameDiagnostic = false // i
|
|
|
474
456
|
format: {
|
|
475
457
|
memberName: member.name,
|
|
476
458
|
normalizedName: normalizedMemberName,
|
|
477
|
-
enumTypeName
|
|
459
|
+
enumTypeName,
|
|
478
460
|
},
|
|
479
|
-
target: NoTarget
|
|
461
|
+
target: NoTarget,
|
|
480
462
|
});
|
|
481
463
|
}
|
|
482
464
|
}
|
|
483
465
|
const memberStructure = {
|
|
484
466
|
kind: StructureKind.EnumMember,
|
|
485
467
|
name: normalizedMemberName,
|
|
486
|
-
value: member.value
|
|
468
|
+
value: member.value,
|
|
487
469
|
};
|
|
488
470
|
if (member.doc) {
|
|
489
471
|
memberStructure.docs = [member.doc];
|
|
@@ -495,7 +477,6 @@ function emitEnumMember(context, member, reportMemberNameDiagnostic = false // i
|
|
|
495
477
|
return memberStructure;
|
|
496
478
|
}
|
|
497
479
|
function buildModelInterface(context, type) {
|
|
498
|
-
var _a, _b;
|
|
499
480
|
const flattenPropertySet = new Set();
|
|
500
481
|
// For non-input models (output-only, exception, etc.), filter out metadata
|
|
501
482
|
// properties (@header, @query, @path) since they are deserialized separately.
|
|
@@ -507,7 +488,6 @@ function buildModelInterface(context, type) {
|
|
|
507
488
|
isExported: true,
|
|
508
489
|
properties: type.properties
|
|
509
490
|
.filter((p) => {
|
|
510
|
-
var _a, _b;
|
|
511
491
|
if (!hasInputUsage && p.__raw && isMetadata(context.program, p.__raw)) {
|
|
512
492
|
return false;
|
|
513
493
|
}
|
|
@@ -518,8 +498,8 @@ function buildModelInterface(context, type) {
|
|
|
518
498
|
if (context.arm &&
|
|
519
499
|
p.__raw &&
|
|
520
500
|
isMetadata(context.program, p.__raw) &&
|
|
521
|
-
|
|
522
|
-
|
|
501
|
+
p.visibility?.length === 1 &&
|
|
502
|
+
p.visibility?.includes(Visibility.Read)) {
|
|
523
503
|
return false;
|
|
524
504
|
}
|
|
525
505
|
// filter out the flatten property to be processed later
|
|
@@ -531,16 +511,16 @@ function buildModelInterface(context, type) {
|
|
|
531
511
|
})
|
|
532
512
|
.map((p) => {
|
|
533
513
|
return buildModelProperty(context, p, type);
|
|
534
|
-
})
|
|
514
|
+
}),
|
|
535
515
|
};
|
|
536
516
|
for (const flatten of flattenPropertySet.keys()) {
|
|
537
|
-
const conflictMap =
|
|
517
|
+
const conflictMap = useContext("sdkTypes").flattenProperties.get(flatten)?.conflictMap;
|
|
538
518
|
const allProperties = getAllProperties(context, flatten.type, getAllAncestors(flatten.type));
|
|
539
519
|
interfaceStructure.properties.push(...allProperties.map((p) => {
|
|
540
520
|
// when the flattened property is optional, all its child properties should be optional too
|
|
541
521
|
const property = getPropertyWithOverrides(p, {
|
|
542
522
|
allOptional: flatten.optional,
|
|
543
|
-
propertyRenames: conflictMap
|
|
523
|
+
propertyRenames: conflictMap,
|
|
544
524
|
});
|
|
545
525
|
return buildModelProperty(context, property, type);
|
|
546
526
|
}));
|
|
@@ -555,31 +535,28 @@ function buildModelInterface(context, type) {
|
|
|
555
535
|
kind: StructureKind.PropertySignature,
|
|
556
536
|
name: opt.propertyName,
|
|
557
537
|
type: "string",
|
|
558
|
-
hasQuestionToken: true
|
|
538
|
+
hasQuestionToken: true,
|
|
559
539
|
});
|
|
560
540
|
}
|
|
561
541
|
}
|
|
562
542
|
}
|
|
563
543
|
if (type.baseModel) {
|
|
564
544
|
const parentReference = getModelExpression(context, type.baseModel, {
|
|
565
|
-
skipPolymorphicUnion: true
|
|
545
|
+
skipPolymorphicUnion: true,
|
|
566
546
|
});
|
|
567
547
|
interfaceStructure.extends = [parentReference];
|
|
568
548
|
}
|
|
569
549
|
if (type.additionalProperties) {
|
|
570
550
|
addExtendedDictInfo(context, type, interfaceStructure);
|
|
571
551
|
}
|
|
572
|
-
interfaceStructure.docs = [
|
|
573
|
-
(_b = type.doc) !== null && _b !== void 0 ? _b : "model interface " + interfaceStructure.name
|
|
574
|
-
];
|
|
552
|
+
interfaceStructure.docs = [type.doc ?? "model interface " + interfaceStructure.name];
|
|
575
553
|
return interfaceStructure;
|
|
576
554
|
}
|
|
577
555
|
function addExtendedDictInfo(context, model, modelInterface) {
|
|
578
|
-
var _a;
|
|
579
556
|
const additionalPropertiesType = model.additionalProperties
|
|
580
557
|
? getTypeExpression(context, model.additionalProperties)
|
|
581
558
|
: undefined;
|
|
582
|
-
if (
|
|
559
|
+
if (context.rlcOptions?.compatibilityMode) {
|
|
583
560
|
const ancestors = getAllAncestors(model);
|
|
584
561
|
const properties = getAllProperties(context, model, ancestors);
|
|
585
562
|
let anyType = true;
|
|
@@ -594,7 +571,7 @@ function addExtendedDictInfo(context, model, modelInterface) {
|
|
|
594
571
|
else {
|
|
595
572
|
// case 3: if additionalProperties is defined and model.properties is not empty, we should check if all properties are compatible with additionalProperties type
|
|
596
573
|
anyType = !properties.every((p) => {
|
|
597
|
-
return additionalPropertiesType
|
|
574
|
+
return additionalPropertiesType?.includes(getTypeExpression(context, p.type));
|
|
598
575
|
});
|
|
599
576
|
}
|
|
600
577
|
if (!modelInterface.extends) {
|
|
@@ -612,9 +589,9 @@ function addExtendedDictInfo(context, model, modelInterface) {
|
|
|
612
589
|
reportDiagnostic(context.program, {
|
|
613
590
|
code: "property-name-conflict",
|
|
614
591
|
format: {
|
|
615
|
-
propertyName: "additionalProperties"
|
|
592
|
+
propertyName: "additionalProperties",
|
|
616
593
|
},
|
|
617
|
-
target: NoTarget
|
|
594
|
+
target: NoTarget,
|
|
618
595
|
});
|
|
619
596
|
}
|
|
620
597
|
if (!modelInterface.properties) {
|
|
@@ -625,7 +602,7 @@ function addExtendedDictInfo(context, model, modelInterface) {
|
|
|
625
602
|
docs: ["Additional properties"],
|
|
626
603
|
hasQuestionToken: true,
|
|
627
604
|
isReadonly: false,
|
|
628
|
-
type: `Record<string, ${additionalPropertiesType
|
|
605
|
+
type: `Record<string, ${additionalPropertiesType ?? "any"}>`,
|
|
629
606
|
});
|
|
630
607
|
}
|
|
631
608
|
}
|
|
@@ -636,7 +613,6 @@ export function getAdditionalPropertiesName(context, model) {
|
|
|
636
613
|
return nameConflict ? "additionalPropertiesBag" : "additionalProperties";
|
|
637
614
|
}
|
|
638
615
|
export function normalizeModelName(context, type, nameType = NameType.Interface, skipPolymorphicUnionSuffix = false, rawModelName) {
|
|
639
|
-
var _a;
|
|
640
616
|
if (type.kind === "array") {
|
|
641
617
|
if (rawModelName) {
|
|
642
618
|
return `${normalizeModelName(context, type.valueType, nameType, skipPolymorphicUnionSuffix, rawModelName)}Array`;
|
|
@@ -662,11 +638,8 @@ export function normalizeModelName(context, type, nameType = NameType.Interface,
|
|
|
662
638
|
unionSuffix = "Union";
|
|
663
639
|
}
|
|
664
640
|
}
|
|
665
|
-
const namespacePrefix =
|
|
666
|
-
|
|
667
|
-
: "";
|
|
668
|
-
const internalModelPrefix = (isPagedResultModel(context, type) &&
|
|
669
|
-
!pagedModelsUsedInNonPagingOps.has(type)) ||
|
|
641
|
+
const namespacePrefix = context.rlcOptions?.enableModelNamespace ? segments.join("") : "";
|
|
642
|
+
const internalModelPrefix = (isPagedResultModel(context, type) && !pagedModelsUsedInNonPagingOps.has(type)) ||
|
|
670
643
|
type.isGeneratedName
|
|
671
644
|
? "_"
|
|
672
645
|
: "";
|
|
@@ -689,26 +662,25 @@ function buildModelPolymorphicType(context, type) {
|
|
|
689
662
|
(p.usage & UsageFlags.Input) === UsageFlags.Input));
|
|
690
663
|
})
|
|
691
664
|
.map((t) => getTypeExpression(context, t))
|
|
692
|
-
.join(" | ")
|
|
665
|
+
.join(" | "),
|
|
693
666
|
};
|
|
694
667
|
typeDeclaration.docs = [`Alias for ${typeDeclaration.name}`];
|
|
695
668
|
typeDeclaration.type += ` | ${getModelExpression(context, type, {
|
|
696
|
-
skipPolymorphicUnion: true
|
|
669
|
+
skipPolymorphicUnion: true,
|
|
697
670
|
})}`;
|
|
698
671
|
return typeDeclaration;
|
|
699
672
|
}
|
|
700
673
|
function buildModelProperty(context, property, model) {
|
|
701
|
-
var _a, _b;
|
|
702
674
|
const normalizedPropName = normalizeModelPropertyName(context, property);
|
|
703
|
-
if (!
|
|
675
|
+
if (!context.rlcOptions?.ignorePropertyNameNormalize &&
|
|
704
676
|
normalizedPropName !== `"${property.name}"`) {
|
|
705
677
|
reportDiagnostic(context.program, {
|
|
706
678
|
code: "property-name-normalized",
|
|
707
679
|
format: {
|
|
708
680
|
propertyName: property.name,
|
|
709
|
-
normalizedName: normalizedPropName
|
|
681
|
+
normalizedName: normalizedPropName,
|
|
710
682
|
},
|
|
711
|
-
target: NoTarget
|
|
683
|
+
target: NoTarget,
|
|
712
684
|
});
|
|
713
685
|
}
|
|
714
686
|
let typeExpression;
|
|
@@ -717,17 +689,14 @@ function buildModelProperty(context, property, model) {
|
|
|
717
689
|
// 1. it is discriminated union
|
|
718
690
|
// 2. it has other discriminator values except itself
|
|
719
691
|
if (isDiscriminatedUnion(model) && allDiscriminatorValues.length > 1) {
|
|
720
|
-
typeExpression = allDiscriminatorValues
|
|
721
|
-
.map((value) => `"${value}"`)
|
|
722
|
-
.join(" | ");
|
|
692
|
+
typeExpression = allDiscriminatorValues.map((value) => `"${value}"`).join(" | ");
|
|
723
693
|
}
|
|
724
|
-
else if (property.kind === "property" &&
|
|
725
|
-
((_b = property.serializationOptions.multipart) === null || _b === void 0 ? void 0 : _b.isFilePart)) {
|
|
694
|
+
else if (property.kind === "property" && property.serializationOptions.multipart?.isFilePart) {
|
|
726
695
|
typeExpression = getMultipartFileTypeExpression(context, property);
|
|
727
696
|
}
|
|
728
697
|
else {
|
|
729
698
|
typeExpression = getTypeExpression(context, property.type, {
|
|
730
|
-
isOptional: property.optional
|
|
699
|
+
isOptional: property.optional,
|
|
731
700
|
});
|
|
732
701
|
}
|
|
733
702
|
const propertyStructure = {
|
|
@@ -735,7 +704,7 @@ function buildModelProperty(context, property, model) {
|
|
|
735
704
|
name: normalizedPropName,
|
|
736
705
|
type: typeExpression,
|
|
737
706
|
hasQuestionToken: property.optional,
|
|
738
|
-
isReadonly: isReadOnly(property)
|
|
707
|
+
isReadonly: isReadOnly(property),
|
|
739
708
|
};
|
|
740
709
|
if (property.doc) {
|
|
741
710
|
propertyStructure.docs = [property.doc];
|
|
@@ -784,17 +753,16 @@ function visitClientMethod(context, method) {
|
|
|
784
753
|
reportDiagnostic(context.program, {
|
|
785
754
|
code: "unknown-sdk-method-kind",
|
|
786
755
|
format: {
|
|
787
|
-
methodKind: method.kind
|
|
756
|
+
methodKind: method.kind,
|
|
788
757
|
},
|
|
789
|
-
target: NoTarget
|
|
758
|
+
target: NoTarget,
|
|
790
759
|
});
|
|
791
760
|
return; // Skip processing this method but continue with others
|
|
792
761
|
}
|
|
793
762
|
}
|
|
794
763
|
function visitOperation(context, operation) {
|
|
795
|
-
var _a;
|
|
796
764
|
// Visit the request
|
|
797
|
-
visitType(context,
|
|
765
|
+
visitType(context, operation.bodyParam?.type);
|
|
798
766
|
// Visit the response
|
|
799
767
|
operation.exceptions.forEach((exception) => visitType(context, exception.type));
|
|
800
768
|
operation.parameters.forEach((parameter) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emitModels.js","sourceRoot":"","sources":["../../../src/modular/emitModels.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"emitModels.js","sourceRoot":"","sources":["../../../src/modular/emitModels.ts"],"names":[],"mappings":"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"}
|