@autorest/typescript 6.0.0-beta.7 → 6.0.0-rc.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/README.md +42 -5
- package/dist/{src/generators/static/README.md.hbs → hlcREADME.md.hbs} +41 -5
- package/dist/hlcSamples.ts.hbs +49 -0
- package/dist/karma.conf.js.hbs +126 -0
- package/dist/paginateHelper.ts.hbs +208 -0
- package/dist/pollingHelper.ts.hbs +72 -0
- package/dist/rlcEnv.ts.hbs +3 -0
- package/dist/rlcREADME.md.hbs +71 -0
- package/dist/rlcRecordedClient.ts.hbs +26 -0
- package/dist/rlcSampleTest.spec.ts.hbs +20 -0
- package/dist/rlcSamples.ts.hbs +28 -0
- package/dist/sampleEnv.hbs +4 -0
- package/dist/sampleTest.ts.hbs +32 -0
- package/dist/samples.ts.hbs +0 -0
- package/dist/src/autorestSession.d.ts +18 -6
- package/dist/src/autorestSession.d.ts.map +1 -1
- package/dist/src/autorestSession.js +3 -9
- package/dist/src/autorestSession.js.map +1 -1
- package/dist/src/conflictResolver.d.ts +3 -0
- package/dist/src/conflictResolver.d.ts.map +1 -0
- package/dist/src/conflictResolver.js +43 -0
- package/dist/src/conflictResolver.js.map +1 -0
- package/dist/src/generators/LROGenerator.d.ts.map +1 -1
- package/dist/src/generators/LROGenerator.js +5 -13
- package/dist/src/generators/LROGenerator.js.map +1 -1
- package/dist/src/generators/clientFileGenerator.d.ts.map +1 -1
- package/dist/src/generators/clientFileGenerator.js +303 -61
- package/dist/src/generators/clientFileGenerator.js.map +1 -1
- package/dist/src/generators/indexGenerator.d.ts +1 -1
- package/dist/src/generators/indexGenerator.d.ts.map +1 -1
- package/dist/src/generators/indexGenerator.js +143 -11
- package/dist/src/generators/indexGenerator.js.map +1 -1
- package/dist/src/generators/mappersGenerator.d.ts.map +1 -1
- package/dist/src/generators/mappersGenerator.js +93 -19
- package/dist/src/generators/mappersGenerator.js.map +1 -1
- package/dist/src/generators/modelsGenerator.d.ts.map +1 -1
- package/dist/src/generators/modelsGenerator.js +81 -82
- package/dist/src/generators/modelsGenerator.js.map +1 -1
- package/dist/src/generators/operationGenerator.d.ts.map +1 -1
- package/dist/src/generators/operationGenerator.js +92 -125
- package/dist/src/generators/operationGenerator.js.map +1 -1
- package/dist/src/generators/operationInterfaceGenerator.js +20 -20
- package/dist/src/generators/operationInterfaceGenerator.js.map +1 -1
- package/dist/src/generators/parametersGenerator.d.ts.map +1 -1
- package/dist/src/generators/parametersGenerator.js +7 -8
- package/dist/src/generators/parametersGenerator.js.map +1 -1
- package/dist/src/generators/samples/hlcSampleGenerator.d.ts +13 -0
- package/dist/src/generators/samples/hlcSampleGenerator.d.ts.map +1 -0
- package/dist/src/generators/samples/hlcSampleGenerator.js +43 -0
- package/dist/src/generators/samples/hlcSampleGenerator.js.map +1 -0
- package/dist/src/generators/samples/hlcSamples.ts.hbs +49 -0
- package/dist/src/generators/samples/rlcSampleGenerator.d.ts +4 -0
- package/dist/src/generators/samples/rlcSampleGenerator.d.ts.map +1 -0
- package/dist/src/generators/samples/rlcSampleGenerator.js +64 -0
- package/dist/src/generators/samples/rlcSampleGenerator.js.map +1 -0
- package/dist/src/generators/samples/rlcSamples.ts.hbs +28 -0
- package/dist/src/generators/samples/sampleEnv.hbs +4 -0
- package/dist/src/generators/samples/sampleEnvGenerator.d.ts +3 -0
- package/dist/src/generators/samples/sampleEnvGenerator.d.ts.map +1 -0
- package/dist/src/generators/samples/sampleEnvGenerator.js +17 -0
- package/dist/src/generators/samples/sampleEnvGenerator.js.map +1 -0
- package/dist/src/generators/static/apiExtractorConfig.js +3 -3
- package/dist/src/generators/static/apiExtractorConfig.js.map +1 -1
- package/dist/src/generators/static/esLintConfigGenerator.d.ts +3 -0
- package/dist/src/generators/static/esLintConfigGenerator.d.ts.map +1 -0
- package/dist/src/generators/static/esLintConfigGenerator.js +26 -0
- package/dist/src/generators/static/esLintConfigGenerator.js.map +1 -0
- package/{src/generators/static/README.md.hbs → dist/src/generators/static/hlcREADME.md.hbs} +41 -5
- package/dist/src/generators/static/karma.conf.js.hbs +126 -0
- package/dist/src/generators/static/karmaConfigFileGenerator.d.ts +3 -0
- package/dist/src/generators/static/karmaConfigFileGenerator.d.ts.map +1 -0
- package/dist/src/generators/static/karmaConfigFileGenerator.js +23 -0
- package/dist/src/generators/static/karmaConfigFileGenerator.js.map +1 -0
- package/dist/src/generators/static/licenseFileGenerator.js +1 -1
- package/dist/src/generators/static/licenseFileGenerator.js.map +1 -1
- package/dist/src/generators/static/packageFileGenerator.d.ts.map +1 -1
- package/dist/src/generators/static/packageFileGenerator.js +267 -79
- package/dist/src/generators/static/packageFileGenerator.js.map +1 -1
- package/dist/src/generators/static/readmeFileGenerator.d.ts +2 -2
- package/dist/src/generators/static/readmeFileGenerator.d.ts.map +1 -1
- package/dist/src/generators/static/readmeFileGenerator.js +54 -26
- package/dist/src/generators/static/readmeFileGenerator.js.map +1 -1
- package/dist/src/generators/static/rlcREADME.md.hbs +71 -0
- package/dist/src/generators/static/rollupConfigFileGenerator.d.ts.map +1 -1
- package/dist/src/generators/static/rollupConfigFileGenerator.js +12 -71
- package/dist/src/generators/static/rollupConfigFileGenerator.js.map +1 -1
- package/dist/src/generators/static/tsConfigFileGenerator.d.ts.map +1 -1
- package/dist/src/generators/static/tsConfigFileGenerator.js +47 -20
- package/dist/src/generators/static/tsConfigFileGenerator.js.map +1 -1
- package/dist/src/generators/test/envBrowserFileGenerator.d.ts +3 -0
- package/dist/src/generators/test/envBrowserFileGenerator.d.ts.map +1 -0
- package/dist/src/generators/test/envBrowserFileGenerator.js +15 -0
- package/dist/src/generators/test/envBrowserFileGenerator.js.map +1 -0
- package/dist/src/generators/test/envFileGenerator.d.ts +3 -0
- package/dist/src/generators/test/envFileGenerator.d.ts.map +1 -0
- package/dist/src/generators/test/envFileGenerator.js +23 -0
- package/dist/src/generators/test/envFileGenerator.js.map +1 -0
- package/dist/src/generators/test/recordedClientFileGenerator.d.ts +3 -0
- package/dist/src/generators/test/recordedClientFileGenerator.d.ts.map +1 -0
- package/dist/src/generators/test/recordedClientFileGenerator.js +23 -0
- package/dist/src/generators/test/recordedClientFileGenerator.js.map +1 -0
- package/dist/src/generators/test/rlcEnv.ts.hbs +3 -0
- package/dist/src/generators/test/rlcRecordedClient.ts.hbs +26 -0
- package/dist/src/generators/test/rlcSampleTest.spec.ts.hbs +20 -0
- package/dist/src/generators/test/sampleTest.ts.hbs +32 -0
- package/dist/src/generators/test/sampleTestGenerator.d.ts +3 -0
- package/dist/src/generators/test/sampleTestGenerator.d.ts.map +1 -0
- package/dist/src/generators/test/sampleTestGenerator.js +34 -0
- package/dist/src/generators/test/sampleTestGenerator.js.map +1 -0
- package/dist/src/generators/tracingFileGenerator.d.ts.map +1 -1
- package/dist/src/generators/tracingFileGenerator.js +7 -21
- package/dist/src/generators/tracingFileGenerator.js.map +1 -1
- package/dist/src/generators/utils/docsUtils.js +2 -2
- package/dist/src/generators/utils/docsUtils.js.map +1 -1
- package/dist/src/generators/utils/operationsUtils.js +1 -1
- package/dist/src/generators/utils/operationsUtils.js.map +1 -1
- package/dist/src/generators/utils/pagingOperations.d.ts +5 -0
- package/dist/src/generators/utils/pagingOperations.d.ts.map +1 -1
- package/dist/src/generators/utils/pagingOperations.js +15 -15
- package/dist/src/generators/utils/pagingOperations.js.map +1 -1
- package/dist/src/generators/utils/parameterUtils.js +9 -9
- package/dist/src/generators/utils/parameterUtils.js.map +1 -1
- package/dist/src/generators/utils/responseTypeUtils.js +2 -2
- package/dist/src/generators/utils/responseTypeUtils.js.map +1 -1
- package/dist/src/generators/utils/tracingUtils.d.ts.map +1 -1
- package/dist/src/generators/utils/tracingUtils.js +2 -6
- package/dist/src/generators/utils/tracingUtils.js.map +1 -1
- package/dist/src/lroImpl.d.ts +16 -0
- package/dist/src/lroImpl.d.ts.map +1 -0
- package/dist/src/lroImpl.js +45 -0
- package/dist/src/lroImpl.js.map +1 -0
- package/dist/src/main.d.ts +2 -2
- package/dist/src/main.d.ts.map +1 -1
- package/dist/src/main.js +8 -8
- package/dist/src/main.js.map +1 -1
- package/dist/src/models/clientDetails.d.ts +10 -1
- package/dist/src/models/clientDetails.d.ts.map +1 -1
- package/dist/src/models/modelDetails.d.ts +2 -2
- package/dist/src/models/modelDetails.d.ts.map +1 -1
- package/dist/src/models/operationDetails.d.ts +1 -0
- package/dist/src/models/operationDetails.d.ts.map +1 -1
- package/dist/src/models/sampleDetails.d.ts +22 -0
- package/dist/src/models/sampleDetails.d.ts.map +1 -0
- package/dist/src/models/sampleDetails.js +3 -0
- package/dist/src/models/sampleDetails.js.map +1 -0
- package/dist/src/restLevelClient/generateClient.d.ts +1 -1
- package/dist/src/restLevelClient/generateClient.d.ts.map +1 -1
- package/dist/src/restLevelClient/generateClient.js +108 -167
- package/dist/src/restLevelClient/generateClient.js.map +1 -1
- package/dist/src/restLevelClient/generateClientDefinition.d.ts +6 -0
- package/dist/src/restLevelClient/generateClientDefinition.d.ts.map +1 -0
- package/dist/src/restLevelClient/generateClientDefinition.js +261 -0
- package/dist/src/restLevelClient/generateClientDefinition.js.map +1 -0
- package/dist/src/restLevelClient/generateIsUnexpectedHelper.d.ts +8 -0
- package/dist/src/restLevelClient/generateIsUnexpectedHelper.d.ts.map +1 -0
- package/dist/src/restLevelClient/generateIsUnexpectedHelper.js +204 -0
- package/dist/src/restLevelClient/generateIsUnexpectedHelper.js.map +1 -0
- package/dist/src/restLevelClient/generateMethodShortcuts.d.ts +8 -0
- package/dist/src/restLevelClient/generateMethodShortcuts.d.ts.map +1 -0
- package/dist/src/restLevelClient/generateMethodShortcuts.js +70 -0
- package/dist/src/restLevelClient/generateMethodShortcuts.js.map +1 -0
- package/dist/src/restLevelClient/generateObjectTypes.d.ts +3 -3
- package/dist/src/restLevelClient/generateObjectTypes.d.ts.map +1 -1
- package/dist/src/restLevelClient/generateObjectTypes.js +43 -31
- package/dist/src/restLevelClient/generateObjectTypes.js.map +1 -1
- package/dist/src/restLevelClient/generatePagingHelper.d.ts +3 -0
- package/dist/src/restLevelClient/generatePagingHelper.d.ts.map +1 -0
- package/dist/src/restLevelClient/generatePagingHelper.js +54 -0
- package/dist/src/restLevelClient/generatePagingHelper.js.map +1 -0
- package/dist/src/restLevelClient/generateParameterTypes.d.ts.map +1 -1
- package/dist/src/restLevelClient/generateParameterTypes.js +247 -43
- package/dist/src/restLevelClient/generateParameterTypes.js.map +1 -1
- package/dist/src/restLevelClient/generatePollingHelper.d.ts +3 -0
- package/dist/src/restLevelClient/generatePollingHelper.d.ts.map +1 -0
- package/dist/src/restLevelClient/generatePollingHelper.js +20 -0
- package/dist/src/restLevelClient/generatePollingHelper.js.map +1 -0
- package/dist/src/restLevelClient/generateResponseTypes.d.ts.map +1 -1
- package/dist/src/restLevelClient/generateResponseTypes.js +45 -29
- package/dist/src/restLevelClient/generateResponseTypes.js.map +1 -1
- package/dist/src/restLevelClient/generateRestLevel.d.ts.map +1 -1
- package/dist/src/restLevelClient/generateRestLevel.js +64 -15
- package/dist/src/restLevelClient/generateRestLevel.js.map +1 -1
- package/dist/src/restLevelClient/generateSchemaTypes.d.ts.map +1 -1
- package/dist/src/restLevelClient/generateSchemaTypes.js +29 -7
- package/dist/src/restLevelClient/generateSchemaTypes.js.map +1 -1
- package/dist/src/restLevelClient/generateTopLevelIndexFile.d.ts +4 -0
- package/dist/src/restLevelClient/generateTopLevelIndexFile.d.ts.map +1 -0
- package/dist/src/restLevelClient/generateTopLevelIndexFile.js +37 -0
- package/dist/src/restLevelClient/generateTopLevelIndexFile.js.map +1 -0
- package/dist/src/restLevelClient/getPropertySignature.d.ts +3 -2
- package/dist/src/restLevelClient/getPropertySignature.d.ts.map +1 -1
- package/dist/src/restLevelClient/getPropertySignature.js +23 -7
- package/dist/src/restLevelClient/getPropertySignature.js.map +1 -1
- package/dist/src/restLevelClient/helpers/hasPollingOperations.d.ts +4 -0
- package/dist/src/restLevelClient/helpers/hasPollingOperations.d.ts.map +1 -0
- package/dist/src/restLevelClient/helpers/hasPollingOperations.js +12 -0
- package/dist/src/restLevelClient/helpers/hasPollingOperations.js.map +1 -0
- package/dist/src/restLevelClient/helpers/modelHelpers.d.ts +4 -0
- package/dist/src/restLevelClient/helpers/modelHelpers.d.ts.map +1 -0
- package/dist/src/restLevelClient/helpers/modelHelpers.js +19 -0
- package/dist/src/restLevelClient/helpers/modelHelpers.js.map +1 -0
- package/dist/src/restLevelClient/helpers/operationHelpers.d.ts +10 -0
- package/dist/src/restLevelClient/helpers/operationHelpers.d.ts.map +1 -0
- package/dist/src/restLevelClient/helpers/operationHelpers.js +64 -0
- package/dist/src/restLevelClient/helpers/operationHelpers.js.map +1 -0
- package/dist/src/restLevelClient/interfaces.d.ts +33 -0
- package/dist/src/restLevelClient/interfaces.d.ts.map +1 -0
- package/dist/src/restLevelClient/interfaces.js +3 -0
- package/dist/src/restLevelClient/interfaces.js.map +1 -0
- package/dist/src/restLevelClient/mutateCodeModel.js +2 -2
- package/dist/src/restLevelClient/mutateCodeModel.js.map +1 -1
- package/dist/src/restLevelClient/operationHelpers.d.ts +4 -0
- package/dist/src/restLevelClient/operationHelpers.d.ts.map +1 -1
- package/dist/src/restLevelClient/operationHelpers.js +21 -10
- package/dist/src/restLevelClient/operationHelpers.js.map +1 -1
- package/dist/src/restLevelClient/paginateHelper.ts.hbs +208 -0
- package/dist/src/restLevelClient/pollingHelper.ts.hbs +72 -0
- package/dist/src/restLevelClient/samples/generateSamples.d.ts +23 -0
- package/dist/src/restLevelClient/samples/generateSamples.d.ts.map +1 -0
- package/dist/src/restLevelClient/samples/generateSamples.js +3 -0
- package/dist/src/restLevelClient/samples/generateSamples.js.map +1 -0
- package/dist/src/restLevelClient/samples/samples.ts.hbs +0 -0
- package/dist/src/restLevelClient/schemaHelpers.d.ts +12 -2
- package/dist/src/restLevelClient/schemaHelpers.d.ts.map +1 -1
- package/dist/src/restLevelClient/schemaHelpers.js +48 -14
- package/dist/src/restLevelClient/schemaHelpers.js.map +1 -1
- package/dist/src/transforms/extensions.js +10 -10
- package/dist/src/transforms/extensions.js.map +1 -1
- package/dist/src/transforms/groupTransforms.js +2 -2
- package/dist/src/transforms/groupTransforms.js.map +1 -1
- package/dist/src/transforms/mapperTransforms.d.ts +1 -1
- package/dist/src/transforms/mapperTransforms.d.ts.map +1 -1
- package/dist/src/transforms/mapperTransforms.js +30 -27
- package/dist/src/transforms/mapperTransforms.js.map +1 -1
- package/dist/src/transforms/objectTransforms.d.ts.map +1 -1
- package/dist/src/transforms/objectTransforms.js +42 -26
- package/dist/src/transforms/objectTransforms.js.map +1 -1
- package/dist/src/transforms/operationTransforms.d.ts.map +1 -1
- package/dist/src/transforms/operationTransforms.js +29 -26
- package/dist/src/transforms/operationTransforms.js.map +1 -1
- package/dist/src/transforms/optionsTransforms.js +1 -1
- package/dist/src/transforms/optionsTransforms.js.map +1 -1
- package/dist/src/transforms/parameterTransforms.d.ts.map +1 -1
- package/dist/src/transforms/parameterTransforms.js +43 -27
- package/dist/src/transforms/parameterTransforms.js.map +1 -1
- package/dist/src/transforms/samplesTransforms.d.ts +7 -0
- package/dist/src/transforms/samplesTransforms.d.ts.map +1 -0
- package/dist/src/transforms/samplesTransforms.js +293 -0
- package/dist/src/transforms/samplesTransforms.js.map +1 -0
- package/dist/src/transforms/transforms.d.ts +1 -2
- package/dist/src/transforms/transforms.d.ts.map +1 -1
- package/dist/src/transforms/transforms.js +26 -24
- package/dist/src/transforms/transforms.js.map +1 -1
- package/dist/src/transforms/urlTransforms.js +3 -3
- package/dist/src/transforms/urlTransforms.js.map +1 -1
- package/dist/src/typescriptGenerator.d.ts +2 -2
- package/dist/src/typescriptGenerator.d.ts.map +1 -1
- package/dist/src/typescriptGenerator.js +46 -40
- package/dist/src/typescriptGenerator.js.map +1 -1
- package/dist/src/utils/autorestOptions.d.ts +2 -2
- package/dist/src/utils/autorestOptions.d.ts.map +1 -1
- package/dist/src/utils/autorestOptions.js +148 -61
- package/dist/src/utils/autorestOptions.js.map +1 -1
- package/dist/src/utils/cloneOperation.js +2 -2
- package/dist/src/utils/cloneOperation.js.map +1 -1
- package/dist/src/utils/copyFiles.d.ts +2 -0
- package/dist/src/utils/copyFiles.d.ts.map +1 -0
- package/dist/src/utils/copyFiles.js +33 -0
- package/dist/src/utils/copyFiles.js.map +1 -0
- package/dist/src/utils/extractHeaders.js +4 -4
- package/dist/src/utils/extractHeaders.js.map +1 -1
- package/dist/src/utils/extractPaginationDetails.d.ts +5 -1
- package/dist/src/utils/extractPaginationDetails.d.ts.map +1 -1
- package/dist/src/utils/extractPaginationDetails.js +23 -10
- package/dist/src/utils/extractPaginationDetails.js.map +1 -1
- package/dist/src/utils/headersToSchema.js +1 -1
- package/dist/src/utils/headersToSchema.js.map +1 -1
- package/dist/src/utils/logger.js +1 -1
- package/dist/src/utils/logger.js.map +1 -1
- package/dist/src/utils/nameUtils.d.ts +6 -2
- package/dist/src/utils/nameUtils.d.ts.map +1 -1
- package/dist/src/utils/nameUtils.js +13 -8
- package/dist/src/utils/nameUtils.js.map +1 -1
- package/dist/src/utils/schemaHelpers.d.ts +6 -1
- package/dist/src/utils/schemaHelpers.d.ts.map +1 -1
- package/dist/src/utils/schemaHelpers.js +50 -7
- package/dist/src/utils/schemaHelpers.js.map +1 -1
- package/dist/src/utils/sortObjectSchemasHierarchically.js +1 -1
- package/dist/src/utils/sortObjectSchemasHierarchically.js.map +1 -1
- package/dist/src/utils/valueHelpers.d.ts.map +1 -1
- package/dist/src/utils/valueHelpers.js +2 -1
- package/dist/src/utils/valueHelpers.js.map +1 -1
- package/package.json +59 -39
- package/src/autorestSession.ts +26 -18
- package/src/conflictResolver.ts +61 -0
- package/src/generators/LROGenerator.ts +2 -16
- package/src/generators/clientFileGenerator.ts +400 -50
- package/src/generators/indexGenerator.ts +166 -14
- package/src/generators/mappersGenerator.ts +108 -8
- package/src/generators/modelsGenerator.ts +101 -98
- package/src/generators/operationGenerator.ts +63 -122
- package/src/generators/parametersGenerator.ts +2 -3
- package/src/generators/samples/hlcSampleGenerator.ts +50 -0
- package/src/generators/samples/hlcSamples.ts.hbs +49 -0
- package/src/generators/samples/rlcSampleGenerator.ts +72 -0
- package/src/generators/samples/rlcSamples.ts.hbs +28 -0
- package/src/generators/samples/sampleEnv.hbs +4 -0
- package/src/generators/samples/sampleEnvGenerator.ts +14 -0
- package/src/generators/static/apiExtractorConfig.ts +3 -3
- package/src/generators/static/esLintConfigGenerator.ts +24 -0
- package/src/generators/static/hlcREADME.md.hbs +144 -0
- package/src/generators/static/karma.conf.js.hbs +126 -0
- package/src/generators/static/karmaConfigFileGenerator.ts +20 -0
- package/src/generators/static/packageFileGenerator.ts +305 -82
- package/src/generators/static/readmeFileGenerator.ts +85 -42
- package/src/generators/static/rlcREADME.md.hbs +71 -0
- package/src/generators/static/rollupConfigFileGenerator.ts +13 -71
- package/src/generators/static/tsConfigFileGenerator.ts +55 -21
- package/src/generators/test/envBrowserFileGenerator.ts +14 -0
- package/src/generators/test/envFileGenerator.ts +22 -0
- package/src/generators/test/recordedClientFileGenerator.ts +22 -0
- package/src/generators/test/rlcEnv.ts.hbs +3 -0
- package/src/generators/test/rlcRecordedClient.ts.hbs +26 -0
- package/src/generators/test/rlcSampleTest.spec.ts.hbs +20 -0
- package/src/generators/test/sampleTest.ts.hbs +32 -0
- package/src/generators/test/sampleTestGenerator.ts +32 -0
- package/src/generators/tracingFileGenerator.ts +6 -24
- package/src/generators/utils/pagingOperations.ts +1 -2
- package/src/generators/utils/tracingUtils.ts +1 -5
- package/src/lroImpl.ts +26 -0
- package/src/main.ts +8 -5
- package/src/models/clientDetails.ts +11 -1
- package/src/models/modelDetails.ts +2 -2
- package/src/models/operationDetails.ts +1 -0
- package/src/models/sampleDetails.ts +22 -0
- package/src/restLevelClient/generateClient.ts +134 -244
- package/src/restLevelClient/generateClientDefinition.ts +386 -0
- package/src/restLevelClient/generateIsUnexpectedHelper.ts +224 -0
- package/src/restLevelClient/generateMethodShortcuts.ts +121 -0
- package/src/restLevelClient/generateObjectTypes.ts +62 -21
- package/src/restLevelClient/generatePagingHelper.ts +69 -0
- package/src/restLevelClient/generateParameterTypes.ts +377 -55
- package/src/restLevelClient/generatePollingHelper.ts +19 -0
- package/src/restLevelClient/generateResponseTypes.ts +53 -22
- package/src/restLevelClient/generateRestLevel.ts +65 -8
- package/src/restLevelClient/generateSchemaTypes.ts +43 -8
- package/src/restLevelClient/generateTopLevelIndexFile.ts +37 -0
- package/src/restLevelClient/getPropertySignature.ts +31 -6
- package/src/restLevelClient/helpers/hasPollingOperations.ts +15 -0
- package/src/restLevelClient/helpers/modelHelpers.ts +15 -0
- package/src/restLevelClient/helpers/operationHelpers.ts +93 -0
- package/src/restLevelClient/interfaces.ts +39 -0
- package/src/restLevelClient/operationHelpers.ts +23 -9
- package/src/restLevelClient/paginateHelper.ts.hbs +208 -0
- package/src/restLevelClient/pollingHelper.ts.hbs +72 -0
- package/src/restLevelClient/samples/generateSamples.ts +23 -0
- package/src/restLevelClient/samples/samples.ts.hbs +0 -0
- package/src/restLevelClient/schemaHelpers.ts +51 -9
- package/src/transforms/mapperTransforms.ts +12 -6
- package/src/transforms/objectTransforms.ts +26 -6
- package/src/transforms/operationTransforms.ts +6 -1
- package/src/transforms/parameterTransforms.ts +26 -7
- package/src/transforms/samplesTransforms.ts +349 -0
- package/src/transforms/transforms.ts +14 -9
- package/src/typescriptGenerator.ts +41 -45
- package/src/utils/autorestOptions.ts +203 -86
- package/src/utils/copyFiles.ts +36 -0
- package/src/utils/extractPaginationDetails.ts +19 -1
- package/src/utils/nameUtils.ts +18 -9
- package/src/utils/schemaHelpers.ts +51 -4
- package/src/utils/valueHelpers.ts +1 -0
- package/CHANGELOG.md +0 -44
- package/dist/src/coreClientLro.d.ts +0 -26
- package/dist/src/coreClientLro.d.ts.map +0 -1
- package/dist/src/coreClientLro.js +0 -207
- package/dist/src/coreClientLro.js.map +0 -1
- package/dist/src/coreHttpLro.d.ts +0 -26
- package/dist/src/coreHttpLro.d.ts.map +0 -1
- package/dist/src/coreHttpLro.js +0 -186
- package/dist/src/coreHttpLro.js.map +0 -1
- package/dist/src/generators/clientContextFileGenerator.d.ts +0 -5
- package/dist/src/generators/clientContextFileGenerator.d.ts.map +0 -1
- package/dist/src/generators/clientContextFileGenerator.js +0 -263
- package/dist/src/generators/clientContextFileGenerator.js.map +0 -1
- package/dist/src/lro/azureAsyncPolling.d.ts +0 -3
- package/dist/src/lro/azureAsyncPolling.d.ts.map +0 -1
- package/dist/src/lro/azureAsyncPolling.js +0 -71
- package/dist/src/lro/azureAsyncPolling.js.map +0 -1
- package/dist/src/lro/bodyPolling.d.ts +0 -8
- package/dist/src/lro/bodyPolling.d.ts.map +0 -1
- package/dist/src/lro/bodyPolling.js +0 -34
- package/dist/src/lro/bodyPolling.js.map +0 -1
- package/dist/src/lro/index.d.ts +0 -4
- package/dist/src/lro/index.d.ts.map +0 -1
- package/dist/src/lro/index.js +0 -10
- package/dist/src/lro/index.js.map +0 -1
- package/dist/src/lro/locationPolling.d.ts +0 -3
- package/dist/src/lro/locationPolling.d.ts.map +0 -1
- package/dist/src/lro/locationPolling.js +0 -18
- package/dist/src/lro/locationPolling.js.map +0 -1
- package/dist/src/lro/lroEngine.d.ts +0 -14
- package/dist/src/lro/lroEngine.d.ts.map +0 -1
- package/dist/src/lro/lroEngine.js +0 -38
- package/dist/src/lro/lroEngine.js.map +0 -1
- package/dist/src/lro/models.d.ts +0 -138
- package/dist/src/lro/models.d.ts.map +0 -1
- package/dist/src/lro/models.js +0 -12
- package/dist/src/lro/models.js.map +0 -1
- package/dist/src/lro/operation.d.ts +0 -36
- package/dist/src/lro/operation.d.ts.map +0 -1
- package/dist/src/lro/operation.js +0 -89
- package/dist/src/lro/operation.js.map +0 -1
- package/dist/src/lro/passthrough.d.ts +0 -3
- package/dist/src/lro/passthrough.d.ts.map +0 -1
- package/dist/src/lro/passthrough.js +0 -14
- package/dist/src/lro/passthrough.js.map +0 -1
- package/dist/src/lro/requestUtils.d.ts +0 -16
- package/dist/src/lro/requestUtils.d.ts.map +0 -1
- package/dist/src/lro/requestUtils.js +0 -76
- package/dist/src/lro/requestUtils.js.map +0 -1
- package/dist/src/lro/stateMachine.d.ts +0 -18
- package/dist/src/lro/stateMachine.d.ts.map +0 -1
- package/dist/src/lro/stateMachine.js +0 -90
- package/dist/src/lro/stateMachine.js.map +0 -1
- package/src/coreClientLro.ts +0 -315
- package/src/coreHttpLro.ts +0 -268
- package/src/generators/clientContextFileGenerator.ts +0 -405
- package/src/lro/azureAsyncPolling.ts +0 -82
- package/src/lro/bodyPolling.ts +0 -34
- package/src/lro/index.ts +0 -18
- package/src/lro/locationPolling.ts +0 -20
- package/src/lro/lroEngine.ts +0 -53
- package/src/lro/models.ts +0 -165
- package/src/lro/operation.ts +0 -112
- package/src/lro/passthrough.ts +0 -15
- package/src/lro/requestUtils.ts +0 -94
- package/src/lro/stateMachine.ts +0 -108
|
@@ -12,26 +12,26 @@ const languageHelpers_1 = require("../utils/languageHelpers");
|
|
|
12
12
|
/**
|
|
13
13
|
* Generates interfaces for ObjectSchemas
|
|
14
14
|
*/
|
|
15
|
-
function buildObjectInterfaces(model, importedModels) {
|
|
15
|
+
function buildObjectInterfaces(model, importedModels, schemaUsage) {
|
|
16
16
|
var _a;
|
|
17
|
-
const objectSchemas = (_a = model.schemas.objects) !== null && _a !== void 0 ? _a : [];
|
|
17
|
+
const objectSchemas = ((_a = model.schemas.objects) !== null && _a !== void 0 ? _a : []).filter(o => { var _a; return (_a = o.usage) === null || _a === void 0 ? void 0 : _a.some(u => schemaUsage.includes(u)); });
|
|
18
18
|
const objectInterfaces = [];
|
|
19
19
|
for (const objectSchema of objectSchemas) {
|
|
20
|
-
const baseName = getObjectBaseName(objectSchema);
|
|
21
|
-
const interfaceDeclaration = getObjectInterfaceDeclaration(baseName, objectSchema, importedModels);
|
|
20
|
+
const baseName = getObjectBaseName(objectSchema, schemaUsage);
|
|
21
|
+
const interfaceDeclaration = getObjectInterfaceDeclaration(baseName, objectSchema, schemaUsage, importedModels);
|
|
22
22
|
objectInterfaces.push(interfaceDeclaration);
|
|
23
23
|
}
|
|
24
24
|
return objectInterfaces;
|
|
25
25
|
}
|
|
26
26
|
exports.buildObjectInterfaces = buildObjectInterfaces;
|
|
27
|
-
function buildPolymorphicAliases(model) {
|
|
27
|
+
function buildPolymorphicAliases(model, schemaUsage) {
|
|
28
28
|
var _a;
|
|
29
29
|
// We'll add aliases for polymorphic objects
|
|
30
30
|
const objectAliases = [];
|
|
31
|
-
const objectSchemas = (_a = model.schemas.objects) !== null && _a !== void 0 ? _a : [];
|
|
31
|
+
const objectSchemas = ((_a = model.schemas.objects) !== null && _a !== void 0 ? _a : []).filter(o => { var _a; return (_a = o.usage) === null || _a === void 0 ? void 0 : _a.some(u => schemaUsage.includes(u)); });
|
|
32
32
|
for (const objectSchema of objectSchemas) {
|
|
33
|
-
const baseName = getObjectBaseName(objectSchema);
|
|
34
|
-
const typeAlias = getPolymorphicTypeAlias(baseName, objectSchema);
|
|
33
|
+
const baseName = getObjectBaseName(objectSchema, schemaUsage);
|
|
34
|
+
const typeAlias = getPolymorphicTypeAlias(baseName, objectSchema, schemaUsage);
|
|
35
35
|
if (typeAlias) {
|
|
36
36
|
objectAliases.push(typeAlias);
|
|
37
37
|
}
|
|
@@ -42,14 +42,16 @@ exports.buildPolymorphicAliases = buildPolymorphicAliases;
|
|
|
42
42
|
/**
|
|
43
43
|
* Gets a base name for an object schema this is tipically used with suffixes when building interface or type names
|
|
44
44
|
*/
|
|
45
|
-
function getObjectBaseName(objectSchema) {
|
|
46
|
-
|
|
45
|
+
function getObjectBaseName(objectSchema, schemaUsage) {
|
|
46
|
+
const nameSuffix = schemaUsage.includes(codemodel_1.SchemaContext.Output) ? "Output" : "";
|
|
47
|
+
const name = (0, nameUtils_1.normalizeName)((0, languageHelpers_1.getLanguageMetadata)(objectSchema.language).name, nameUtils_1.NameType.Interface, true /** guard name */);
|
|
48
|
+
return `${name}${nameSuffix}`;
|
|
47
49
|
}
|
|
48
50
|
/**
|
|
49
51
|
* If the current object is a Polymorphic parent, we need to create
|
|
50
52
|
* a type alias with the union of its children to enable polymorphism
|
|
51
53
|
*/
|
|
52
|
-
function getPolymorphicTypeAlias(baseName, objectSchema) {
|
|
54
|
+
function getPolymorphicTypeAlias(baseName, objectSchema, schemaUsage) {
|
|
53
55
|
var _a, _b;
|
|
54
56
|
if (!isPolymorphicParent(objectSchema)) {
|
|
55
57
|
return undefined;
|
|
@@ -60,8 +62,11 @@ function getPolymorphicTypeAlias(baseName, objectSchema) {
|
|
|
60
62
|
unionTypes.push(`${baseName}Base`);
|
|
61
63
|
}
|
|
62
64
|
for (const child of (_b = (_a = objectSchema.children) === null || _a === void 0 ? void 0 : _a.all) !== null && _b !== void 0 ? _b : []) {
|
|
63
|
-
const
|
|
64
|
-
|
|
65
|
+
const nameSuffix = schemaUsage.includes(codemodel_1.SchemaContext.Output)
|
|
66
|
+
? "Output"
|
|
67
|
+
: "";
|
|
68
|
+
const name = (0, nameUtils_1.normalizeName)((0, languageHelpers_1.getLanguageMetadata)(child.language).name, nameUtils_1.NameType.Interface, true /** shouldGuard */);
|
|
69
|
+
unionTypes.push(`${name}${nameSuffix}`);
|
|
65
70
|
}
|
|
66
71
|
return {
|
|
67
72
|
kind: ts_morph_1.StructureKind.TypeAlias,
|
|
@@ -74,18 +79,18 @@ function getPolymorphicTypeAlias(baseName, objectSchema) {
|
|
|
74
79
|
* Builds the interface for the current object schema. If it is a polymorphic
|
|
75
80
|
* root node it will suffix it with Base.
|
|
76
81
|
*/
|
|
77
|
-
function getObjectInterfaceDeclaration(baseName, objectSchema, importedModels) {
|
|
82
|
+
function getObjectInterfaceDeclaration(baseName, objectSchema, schemaUsage, importedModels) {
|
|
78
83
|
var _a;
|
|
79
|
-
let interfaceName = baseName
|
|
84
|
+
let interfaceName = `${baseName}`;
|
|
80
85
|
if (isPolymorphicParent(objectSchema)) {
|
|
81
86
|
interfaceName = `${baseName}Base`;
|
|
82
87
|
}
|
|
83
88
|
const properties = (_a = objectSchema.properties) !== null && _a !== void 0 ? _a : [];
|
|
84
|
-
let propertySignatures = getPropertySignatures(properties, importedModels);
|
|
89
|
+
let propertySignatures = getPropertySignatures(properties, schemaUsage, importedModels);
|
|
85
90
|
// Add the polymorphic property if exists
|
|
86
91
|
propertySignatures = addDiscriminatorProperty(objectSchema, propertySignatures);
|
|
87
92
|
// Calculate the parents of the current object
|
|
88
|
-
const extendFrom = getImmediateParentsNames(objectSchema);
|
|
93
|
+
const extendFrom = getImmediateParentsNames(objectSchema, schemaUsage);
|
|
89
94
|
return Object.assign({ kind: ts_morph_1.StructureKind.Interface, name: interfaceName, isExported: true, properties: propertySignatures }, (extendFrom && { extends: extendFrom }));
|
|
90
95
|
}
|
|
91
96
|
function isPolymorphicParent(objectSchema) {
|
|
@@ -107,7 +112,7 @@ function addDiscriminatorProperty(objectSchema, properties) {
|
|
|
107
112
|
* Finds the name of the property used as discriminator and the discriminator value.
|
|
108
113
|
*/
|
|
109
114
|
function getDiscriminatorProperty(objectSchema) {
|
|
110
|
-
const { message } = autorestSession_1.getSession();
|
|
115
|
+
const { message } = (0, autorestSession_1.getSession)();
|
|
111
116
|
const discriminatorValue = objectSchema.discriminatorValue;
|
|
112
117
|
if (!discriminatorValue && !objectSchema.discriminator) {
|
|
113
118
|
return undefined;
|
|
@@ -117,7 +122,7 @@ function getDiscriminatorProperty(objectSchema) {
|
|
|
117
122
|
if (discriminators) {
|
|
118
123
|
if (discriminatorPropertyName === undefined) {
|
|
119
124
|
message({
|
|
120
|
-
Text: `getDiscriminatorProperty: Expected object ${languageHelpers_1.getLanguageMetadata(objectSchema.language).name} to have a discriminator in its hierarchy but found none`,
|
|
125
|
+
Text: `getDiscriminatorProperty: Expected object ${(0, languageHelpers_1.getLanguageMetadata)(objectSchema.language).name} to have a discriminator in its hierarchy but found none`,
|
|
121
126
|
Channel: extension_base_1.Channel.Warning
|
|
122
127
|
});
|
|
123
128
|
return;
|
|
@@ -140,7 +145,7 @@ function getDiscriminatorPropertyName(objectSchema) {
|
|
|
140
145
|
}
|
|
141
146
|
const allParents = (_b = (_a = objectSchema.parents) === null || _a === void 0 ? void 0 : _a.all) !== null && _b !== void 0 ? _b : [];
|
|
142
147
|
for (const parent of allParents) {
|
|
143
|
-
if (codemodel_1.isObjectSchema(parent) && parent.discriminator) {
|
|
148
|
+
if ((0, codemodel_1.isObjectSchema)(parent) && parent.discriminator) {
|
|
144
149
|
return parent.discriminator.property.serializedName;
|
|
145
150
|
}
|
|
146
151
|
}
|
|
@@ -150,9 +155,13 @@ function getDiscriminatorPropertyName(objectSchema) {
|
|
|
150
155
|
* Calculates the discriminator values that a given object needs
|
|
151
156
|
*/
|
|
152
157
|
function getDiscriminatorValue(objectSchema) {
|
|
153
|
-
var _a, _b, _c, _d;
|
|
154
|
-
const discriminatorValue = objectSchema.discriminatorValue
|
|
155
|
-
|
|
158
|
+
var _a, _b, _c, _d, _e;
|
|
159
|
+
const discriminatorValue = objectSchema.discriminatorValue
|
|
160
|
+
? objectSchema.discriminatorValue
|
|
161
|
+
: ((_a = objectSchema.discriminator) === null || _a === void 0 ? void 0 : _a.property.isDiscriminator)
|
|
162
|
+
? objectSchema.language.default.name
|
|
163
|
+
: undefined;
|
|
164
|
+
const children = (_c = (_b = objectSchema.children) === null || _b === void 0 ? void 0 : _b.immediate) !== null && _c !== void 0 ? _c : [];
|
|
156
165
|
// If the current object has a discriminatorValue but doesn't have any children
|
|
157
166
|
// it is a leaf node and the only discriminator value needed is itself
|
|
158
167
|
if (discriminatorValue && !children.length) {
|
|
@@ -166,7 +175,7 @@ function getDiscriminatorValue(objectSchema) {
|
|
|
166
175
|
return `"${discriminatorValue}"`;
|
|
167
176
|
}
|
|
168
177
|
// the current object has discriminated children we need to find all the discriminatorValues for each of its children
|
|
169
|
-
const allChildren = (
|
|
178
|
+
const allChildren = (_e = (_d = objectSchema.children) === null || _d === void 0 ? void 0 : _d.all) !== null && _e !== void 0 ? _e : [];
|
|
170
179
|
// Top level parents may not have a discriminator of their own.
|
|
171
180
|
const selfDiscriminator = discriminatorValue
|
|
172
181
|
? [`"${discriminatorValue}"`]
|
|
@@ -182,7 +191,7 @@ function getDiscriminatorValue(objectSchema) {
|
|
|
182
191
|
function getChildDiscriminatorValues(children) {
|
|
183
192
|
const discriminatorValues = new Set();
|
|
184
193
|
for (const child of children) {
|
|
185
|
-
if (codemodel_1.isObjectSchema(child) && child.discriminatorValue) {
|
|
194
|
+
if ((0, codemodel_1.isObjectSchema)(child) && child.discriminatorValue) {
|
|
186
195
|
discriminatorValues.add(child.discriminatorValue);
|
|
187
196
|
}
|
|
188
197
|
}
|
|
@@ -191,7 +200,7 @@ function getChildDiscriminatorValues(children) {
|
|
|
191
200
|
/**
|
|
192
201
|
* Gets a list of types a given object may extend from
|
|
193
202
|
*/
|
|
194
|
-
function getImmediateParentsNames(objectSchema) {
|
|
203
|
+
function getImmediateParentsNames(objectSchema, shcemaUsage) {
|
|
195
204
|
var _a;
|
|
196
205
|
if (!((_a = objectSchema.parents) === null || _a === void 0 ? void 0 : _a.immediate)) {
|
|
197
206
|
return [];
|
|
@@ -204,16 +213,19 @@ function getImmediateParentsNames(objectSchema) {
|
|
|
204
213
|
}
|
|
205
214
|
// Get the rest of the parents excluding any DictionarySchemas
|
|
206
215
|
const parents = objectSchema.parents.immediate
|
|
207
|
-
.filter(p => !schemaHelpers_1.isDictionarySchema(p))
|
|
216
|
+
.filter(p => !(0, schemaHelpers_1.isDictionarySchema)(p))
|
|
208
217
|
.map(parent => {
|
|
209
|
-
const
|
|
210
|
-
|
|
218
|
+
const nameSuffix = shcemaUsage.includes(codemodel_1.SchemaContext.Output)
|
|
219
|
+
? "Output"
|
|
220
|
+
: "";
|
|
221
|
+
const name = `${(0, nameUtils_1.normalizeName)((0, languageHelpers_1.getLanguageMetadata)(parent.language).name, nameUtils_1.NameType.Interface, true /** shouldGuard */)}${nameSuffix}`;
|
|
222
|
+
return (0, codemodel_1.isObjectSchema)(parent) && isPolymorphicParent(parent)
|
|
211
223
|
? `${name}Base`
|
|
212
224
|
: name;
|
|
213
225
|
});
|
|
214
226
|
return [...parents, ...extendFrom];
|
|
215
227
|
}
|
|
216
|
-
function getPropertySignatures(properties, importedModels) {
|
|
217
|
-
return properties.map(p => getPropertySignature_1.getPropertySignature(p, importedModels));
|
|
228
|
+
function getPropertySignatures(properties, schemaUsage, importedModels) {
|
|
229
|
+
return properties.map(p => (0, getPropertySignature_1.getPropertySignature)(p, schemaUsage, importedModels));
|
|
218
230
|
}
|
|
219
231
|
//# sourceMappingURL=generateObjectTypes.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateObjectTypes.js","sourceRoot":"","sources":["../../../src/restLevelClient/generateObjectTypes.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"generateObjectTypes.js","sourceRoot":"","sources":["../../../src/restLevelClient/generateObjectTypes.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generatePagingHelper.d.ts","sourceRoot":"","sources":["../../../src/restLevelClient/generatePagingHelper.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAQnC,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,QA2BpD"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.generatePagingHelper = void 0;
|
|
4
|
+
const fs_1 = require("fs");
|
|
5
|
+
const autorestSession_1 = require("../autorestSession");
|
|
6
|
+
const extractPaginationDetails_1 = require("../utils/extractPaginationDetails");
|
|
7
|
+
const path = require("path");
|
|
8
|
+
const hbs = require("handlebars");
|
|
9
|
+
function generatePagingHelper(project) {
|
|
10
|
+
const pagingInfo = getPagingInfo();
|
|
11
|
+
let file = "";
|
|
12
|
+
file = (0, fs_1.readFileSync)(path.join(__dirname, "paginateHelper.ts.hbs"), {
|
|
13
|
+
encoding: "utf-8"
|
|
14
|
+
});
|
|
15
|
+
hbs.registerHelper("quoteWrap", function (value) {
|
|
16
|
+
if (Array.isArray(value)) {
|
|
17
|
+
return value.map(element => `"${element}"`).join();
|
|
18
|
+
}
|
|
19
|
+
return `"${value}"`;
|
|
20
|
+
});
|
|
21
|
+
const { srcPath } = (0, autorestSession_1.getAutorestOptions)();
|
|
22
|
+
const readmeFileContents = hbs.compile(file, { noEscape: true });
|
|
23
|
+
project.createSourceFile(path.join(srcPath, "paginateHelper.ts"), readmeFileContents(pagingInfo), {
|
|
24
|
+
overwrite: true
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
exports.generatePagingHelper = generatePagingHelper;
|
|
28
|
+
function getPagingInfo() {
|
|
29
|
+
const { model } = (0, autorestSession_1.getSession)();
|
|
30
|
+
const nextLinks = new Set();
|
|
31
|
+
const itemNames = new Set();
|
|
32
|
+
// Add default values
|
|
33
|
+
nextLinks.add("nextLink");
|
|
34
|
+
itemNames.add("value");
|
|
35
|
+
for (let operationGroup of model.operationGroups) {
|
|
36
|
+
for (let operation of operationGroup.operations) {
|
|
37
|
+
const paginationDetails = (0, extractPaginationDetails_1.extractPaginationDetails)(operation);
|
|
38
|
+
if (paginationDetails) {
|
|
39
|
+
const { nextLinkName, itemName } = paginationDetails;
|
|
40
|
+
nextLinkName && nextLinks.add(`${nextLinkName}`);
|
|
41
|
+
itemName && itemNames.add(`${itemName}`);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
// If there are more than one options for nextLink and item names we need to generate a
|
|
46
|
+
// more complex pagination helper.
|
|
47
|
+
const isComplexPaging = nextLinks.size > 1 || itemNames.size > 1;
|
|
48
|
+
return {
|
|
49
|
+
itemNames: [...itemNames],
|
|
50
|
+
nextLinkNames: [...nextLinks],
|
|
51
|
+
isComplexPaging
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=generatePagingHelper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generatePagingHelper.js","sourceRoot":"","sources":["../../../src/restLevelClient/generatePagingHelper.ts"],"names":[],"mappings":";;;AAAA,2BAAkC;AAClC,wDAAoE;AACpE,gFAA6E;AAC7E,6BAA6B;AAC7B,kCAAkC;AASlC,SAAgB,oBAAoB,CAAC,OAAgB;IACnD,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;IACnC,IAAI,IAAI,GAAW,EAAE,CAAC;IAEtB,IAAI,GAAG,IAAA,iBAAY,EAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,uBAAuB,CAAC,EAAE;QACjE,QAAQ,EAAE,OAAO;KAClB,CAAC,CAAC;IAEH,GAAG,CAAC,cAAc,CAAC,WAAW,EAAE,UAC9B,KAA2C;QAE3C,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACxB,OAAO,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,OAAO,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;SACpD;QAED,OAAO,IAAI,KAAK,GAAG,CAAC;IACtB,CAAC,CAAC,CAAC;IAEH,MAAM,EAAE,OAAO,EAAE,GAAG,IAAA,oCAAkB,GAAE,CAAC;IACzC,MAAM,kBAAkB,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;IACjE,OAAO,CAAC,gBAAgB,CACtB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,mBAAmB,CAAC,EACvC,kBAAkB,CAAC,UAAU,CAAC,EAC9B;QACE,SAAS,EAAE,IAAI;KAChB,CACF,CAAC;AACJ,CAAC;AA3BD,oDA2BC;AAED,SAAS,aAAa;IACpB,MAAM,EAAE,KAAK,EAAE,GAAG,IAAA,4BAAU,GAAE,CAAC;IAC/B,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;IACpC,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;IACpC,qBAAqB;IACrB,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAC1B,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACvB,KAAK,IAAI,cAAc,IAAI,KAAK,CAAC,eAAe,EAAE;QAChD,KAAK,IAAI,SAAS,IAAI,cAAc,CAAC,UAAU,EAAE;YAC/C,MAAM,iBAAiB,GAAG,IAAA,mDAAwB,EAAC,SAAS,CAAC,CAAC;YAC9D,IAAI,iBAAiB,EAAE;gBACrB,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAE,GAAG,iBAAiB,CAAC;gBACrD,YAAY,IAAI,SAAS,CAAC,GAAG,CAAC,GAAG,YAAY,EAAE,CAAC,CAAC;gBACjD,QAAQ,IAAI,SAAS,CAAC,GAAG,CAAC,GAAG,QAAQ,EAAE,CAAC,CAAC;aAC1C;SACF;KACF;IAED,uFAAuF;IACvF,kCAAkC;IAClC,MAAM,eAAe,GAAG,SAAS,CAAC,IAAI,GAAG,CAAC,IAAI,SAAS,CAAC,IAAI,GAAG,CAAC,CAAC;IACjE,OAAO;QACL,SAAS,EAAE,CAAC,GAAG,SAAS,CAAC;QACzB,aAAa,EAAE,CAAC,GAAG,SAAS,CAAC;QAC7B,eAAe;KAChB,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateParameterTypes.d.ts","sourceRoot":"","sources":["../../../src/restLevelClient/generateParameterTypes.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"generateParameterTypes.d.ts","sourceRoot":"","sources":["../../../src/restLevelClient/generateParameterTypes.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EAMV,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAEL,OAAO,EAIR,MAAM,UAAU,CAAC;AAUlB;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,SAAS,EAChB,OAAO,EAAE,OAAO,QAiJjB"}
|