Package dev.hilla.generator.typescript
Class CodeGenerator
- java.lang.Object
-
- io.swagger.codegen.v3.generators.DefaultCodegenConfig
-
- io.swagger.codegen.v3.generators.typescript.AbstractTypeScriptClientCodegen
-
- dev.hilla.generator.typescript.CodeGenerator
-
- All Implemented Interfaces:
io.swagger.codegen.v3.CodegenConfig
public class CodeGenerator extends io.swagger.codegen.v3.generators.typescript.AbstractTypeScriptClientCodegenVaadin JavaScript generator implementation for swagger-codegen. Some parts of the implementation are copied fromJavascriptClientCodegen
-
-
Field Summary
-
Fields inherited from class io.swagger.codegen.v3.generators.typescript.AbstractTypeScriptClientCodegen
languageGenericTypes, modelPropertyNaming, supportsES6
-
Fields inherited from class io.swagger.codegen.v3.generators.DefaultCodegenConfig
additionalProperties, allowUnicodeIdentifiers, apiDocTemplateFiles, apiPackage, apiTemplateFiles, apiTestTemplateFiles, cliOptions, commonTemplateDir, copyFistAllOfProperties, DEFAULT_CONTENT_TYPE, DEFAULT_TEMPLATE_DIR, defaultIncludes, embeddedTemplateDir, ensureUniqueParams, fileSuffix, gitRepoId, gitUserId, hideGenerationTimestamp, httpUserAgent, ignoreFilePathOverride, ignoreImportMapping, importMapping, inputSpec, inputURL, instantiationTypes, languageArguments, languageSpecificPrimitives, library, modelDocTemplateFiles, modelNamePrefix, modelNameSuffix, modelPackage, modelTemplateFiles, modelTestTemplateFiles, openAPI, outputFolder, releaseNote, removeOperationIdPrefix, REQUEST_BODY_NAME, reservedWords, reservedWordsMappings, skipOverwrite, sortParamsByRequiredFlag, specialCharReplacements, supportedLibraries, supportingFiles, supportsInheritance, supportsMixins, templateDir, templateEngine, templateVersion, testPackage, typeAliases, typeMapping, unflattenedOpenAPI, useOas2, vendorExtensions
-
-
Constructor Summary
Constructors Constructor Description CodeGenerator()Create vaadin ts codegen instance.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddHandlebarHelpers(com.github.jknack.handlebars.Handlebars handlebars)voidaddImport(io.swagger.codegen.v3.CodegenModel m, String type)StringapiFileFolder()Location to write api files.StringescapeQuotationMark(String input)StringescapeReservedWord(String name)Escapes a reserved word as defined in the `reservedWords` array.StringescapeUnsafeCharacters(String input)io.swagger.codegen.v3.CodegenModelfromModel(String name, io.swagger.v3.oas.models.media.Schema schema, Map<String,io.swagger.v3.oas.models.media.Schema> allDefinitions)io.swagger.codegen.v3.CodegenOperationfromOperation(String path, String httpMethod, io.swagger.v3.oas.models.Operation operation, Map<String,io.swagger.v3.oas.models.media.Schema> schemas, io.swagger.v3.oas.models.OpenAPI openAPI)io.swagger.codegen.v3.CodegenParameterfromRequestBody(io.swagger.v3.oas.models.parameters.RequestBody body, String name, io.swagger.v3.oas.models.media.Schema schema, Map<String,io.swagger.v3.oas.models.media.Schema> schemas, Set<String> imports)static Set<File>generateFiles(io.swagger.codegen.v3.ClientOptInput input)Performs file generation on the specified input.StringgetDefaultTemplateDir()StringgetHelp()Returns human-friendly help for the generator.StringgetName()Configures a friendly name for the generator.StringgetSchemaType(io.swagger.v3.oas.models.media.Schema schema)io.swagger.codegen.v3.CodegenTypegetTag()Configures the type of generator.protected StringgetTemplateDir()StringgetTypeDeclaration(io.swagger.v3.oas.models.media.Schema schema)StringmodelFileFolder()Location to write model files.Map<String,Object>postProcessAllModels(Map<String,Object> processedModels)Map<String,Object>postProcessOperations(Map<String,Object> objs)voidpreprocessOpenAPI(io.swagger.v3.oas.models.OpenAPI openAPI)StringtoApiName(String name)StringtoEnumVarName(String name, String datatype)StringtoModelFilename(String name)StringtoModelName(String name)-
Methods inherited from class io.swagger.codegen.v3.generators.typescript.AbstractTypeScriptClientCodegen
getModelPropertyNaming, getNameUsingModelPropertyNaming, getSchemaHandler, getSupportsES6, postProcessModels, processOpts, setModelPropertyNaming, setSupportsES6, toDefaultValue, toEnumDefaultValue, toEnumName, toEnumValue, toOperationId, toParamName, toVarName
-
Methods inherited from class io.swagger.codegen.v3.generators.DefaultCodegenConfig
addAdditionPropertiesToCodeGenModel, addCodegenContentParemeters, addConsumesInfo, addHasMore, additionalProperties, addOperationToGroup, addOption, addOption, addParemeters, addParentContainer, addProducesInfo, addProperties, addRegularExpressionDelimiter, addSwitch, apiDocFileFolder, apiDocFilename, apiDocTemplateFiles, apiFilename, apiPackage, apiTemplateFiles, apiTestFileFolder, apiTestFilename, apiTestTemplateFiles, buildLibraryCliOption, camelize, camelize, cliOptions, configureDataForTestTemplate, configuresParameterForMediaType, convertPropertyToBoolean, convertPropertyToBooleanAndWriteBack, dashize, defaultIgnoreImportMappingOption, defaultIncludes, detectParent, embeddedTemplateDir, ensureUniqueParameters, escapeText, fileSuffix, findCommonPrefixOfVars, findMethodResponse, fromModel, fromOperation, fromParameter, fromProperty, fromResponse, fromSecurity, generateExamplePath, getAlias, getArgumentsLocation, getCollectionFormat, getCommonTemplateDir, getConsumesInfo, getContentType, getGitRepoId, getGitUserId, getHideGenerationTimestamp, getHttpUserAgent, getIgnoreFilePathOverride, getIgnoreImportMapping, getInnerEnumAllowableValues, getInputSpec, getInputURL, getLanguageArguments, getLibrary, getOpenAPI, getOptionValue, getOrGenerateOperationId, getOutputDir, getParameterFromRef, getParentName, getProducesInfo, getReleaseNote, getSchemaFromBody, getSchemaFromResponse, getSortParamsByRequiredFlag, getSymbolName, getTemplateEngine, getTemplateVersion, getterAndSetterCapitalize, getTypeDeclaration, hasSchemaProperties, hasTrueAdditionalProperties, importMapping, initialCaps, instantiationTypes, isDataTypeBinary, isDataTypeFile, isObjectSchema, isPropertyInnerMostEnum, isRemoveOperationIdPrefix, isReservedWord, isSkipOverwrite, languageSpecificPrimitives, modelDocFileFolder, modelDocTemplateFiles, modelPackage, modelTemplateFiles, modelTestFileFolder, modelTestTemplateFiles, needsUnflattenedSpec, needToImport, outputFolder, postProcessModelProperty, postProcessModelsEnum, postProcessOperationsWithModels, postProcessParameter, postProcessSupportingFileData, processCompiler, processModelEnums, processOpenAPI, readLanguageArguments, removeNonNameElementToCamelCase, removeNonNameElementToCamelCase, reservedWords, reservedWordsMappings, sanitizeName, sanitizeTag, setAllowUnicodeIdentifiers, setApiPackage, setCommonTemplateDir, setEnsureUniqueParams, setGitRepoId, setGitUserId, setHideGenerationTimestamp, setHttpUserAgent, setIgnoreFilePathOverride, setIgnoreImportMapping, setInputSpec, setInputURL, setLanguageArguments, setLibrary, setModelNamePrefix, setModelNameSuffix, setModelPackage, setNonArrayMapProperty, setOutputDir, setParameterBooleanFlagWithCodegenProperty, setParameterExampleValue, setParameterNullable, setReleaseNote, setRemoveOperationIdPrefix, setReservedWordsLowerCase, setSkipOverwrite, setSortParamsByRequiredFlag, setTemplateDir, setTemplateEngine, setTemplateVersion, setUnflattenedOpenAPI, setUseOas2, shouldOverwrite, snakeCase, supportedLibraries, supportingFiles, templateDir, testPackage, toApiDocFilename, toApiFilename, toApiImport, toApiTestFilename, toApiVarName, toBooleanGetter, toDefaultValueWithParam, toExamples, toExampleValue, toGetter, toInstantiationType, toModelDocFilename, toModelImport, toModelTestFilename, toRegularExpression, toSetter, typeMapping, underscore, updateCodegenPropertyEnum, updateDataTypeWithEnumForArray, updateDataTypeWithEnumForMap, updatePropertyForArray, updatePropertyForMap, vendorExtensions, writeOptional, writePropertyBack
-
-
-
-
Method Detail
-
generateFiles
public static Set<File> generateFiles(io.swagger.codegen.v3.ClientOptInput input)
Performs file generation on the specified input.- Parameters:
input- input options.- Returns:
- a set of generated files.
-
addHandlebarHelpers
public void addHandlebarHelpers(com.github.jknack.handlebars.Handlebars handlebars)
- Specified by:
addHandlebarHelpersin interfaceio.swagger.codegen.v3.CodegenConfig- Overrides:
addHandlebarHelpersin classio.swagger.codegen.v3.generators.DefaultCodegenConfig
-
apiFileFolder
public String apiFileFolder()
Location to write api files. You can use the apiPackage() as defined when the class is instantiated- Specified by:
apiFileFolderin interfaceio.swagger.codegen.v3.CodegenConfig- Overrides:
apiFileFolderin classio.swagger.codegen.v3.generators.typescript.AbstractTypeScriptClientCodegen
-
escapeQuotationMark
public String escapeQuotationMark(String input)
- Specified by:
escapeQuotationMarkin interfaceio.swagger.codegen.v3.CodegenConfig- Overrides:
escapeQuotationMarkin classio.swagger.codegen.v3.generators.typescript.AbstractTypeScriptClientCodegen
-
escapeReservedWord
public String escapeReservedWord(String name)
Escapes a reserved word as defined in the `reservedWords` array. Handle escaping those terms here. This logic is only called if a variable matches the reserved words- Specified by:
escapeReservedWordin interfaceio.swagger.codegen.v3.CodegenConfig- Overrides:
escapeReservedWordin classio.swagger.codegen.v3.generators.typescript.AbstractTypeScriptClientCodegen- Returns:
- the escaped term
-
escapeUnsafeCharacters
public String escapeUnsafeCharacters(String input)
- Specified by:
escapeUnsafeCharactersin interfaceio.swagger.codegen.v3.CodegenConfig- Overrides:
escapeUnsafeCharactersin classio.swagger.codegen.v3.generators.typescript.AbstractTypeScriptClientCodegen
-
fromModel
public io.swagger.codegen.v3.CodegenModel fromModel(String name, io.swagger.v3.oas.models.media.Schema schema, Map<String,io.swagger.v3.oas.models.media.Schema> allDefinitions)
- Specified by:
fromModelin interfaceio.swagger.codegen.v3.CodegenConfig- Overrides:
fromModelin classio.swagger.codegen.v3.generators.DefaultCodegenConfig
-
fromOperation
public io.swagger.codegen.v3.CodegenOperation fromOperation(String path, String httpMethod, io.swagger.v3.oas.models.Operation operation, Map<String,io.swagger.v3.oas.models.media.Schema> schemas, io.swagger.v3.oas.models.OpenAPI openAPI)
- Specified by:
fromOperationin interfaceio.swagger.codegen.v3.CodegenConfig- Overrides:
fromOperationin classio.swagger.codegen.v3.generators.DefaultCodegenConfig
-
fromRequestBody
public io.swagger.codegen.v3.CodegenParameter fromRequestBody(io.swagger.v3.oas.models.parameters.RequestBody body, String name, io.swagger.v3.oas.models.media.Schema schema, Map<String,io.swagger.v3.oas.models.media.Schema> schemas, Set<String> imports)- Overrides:
fromRequestBodyin classio.swagger.codegen.v3.generators.DefaultCodegenConfig
-
getDefaultTemplateDir
public String getDefaultTemplateDir()
- Specified by:
getDefaultTemplateDirin classio.swagger.codegen.v3.generators.DefaultCodegenConfig
-
getHelp
public String getHelp()
Returns human-friendly help for the generator. Provide the consumer with help tips, parameters here- Returns:
- A string value for the help message
-
getName
public String getName()
Configures a friendly name for the generator. This will be used by the generator to select the library with the -l flag.- Returns:
- the friendly name for the generator
-
getSchemaType
public String getSchemaType(io.swagger.v3.oas.models.media.Schema schema)
- Overrides:
getSchemaTypein classio.swagger.codegen.v3.generators.typescript.AbstractTypeScriptClientCodegen
-
getTag
public io.swagger.codegen.v3.CodegenType getTag()
Configures the type of generator.- Specified by:
getTagin interfaceio.swagger.codegen.v3.CodegenConfig- Overrides:
getTagin classio.swagger.codegen.v3.generators.typescript.AbstractTypeScriptClientCodegen- Returns:
- the CodegenType for this generator
- See Also:
CodegenType
-
getTypeDeclaration
public String getTypeDeclaration(io.swagger.v3.oas.models.media.Schema schema)
- Specified by:
getTypeDeclarationin interfaceio.swagger.codegen.v3.CodegenConfig- Overrides:
getTypeDeclarationin classio.swagger.codegen.v3.generators.typescript.AbstractTypeScriptClientCodegen
-
modelFileFolder
public String modelFileFolder()
Location to write model files. You can use the modelPackage() as defined when the class is instantiated- Specified by:
modelFileFolderin interfaceio.swagger.codegen.v3.CodegenConfig- Overrides:
modelFileFolderin classio.swagger.codegen.v3.generators.typescript.AbstractTypeScriptClientCodegen
-
postProcessAllModels
public Map<String,Object> postProcessAllModels(Map<String,Object> processedModels)
- Specified by:
postProcessAllModelsin interfaceio.swagger.codegen.v3.CodegenConfig- Overrides:
postProcessAllModelsin classio.swagger.codegen.v3.generators.DefaultCodegenConfig
-
postProcessOperations
public Map<String,Object> postProcessOperations(Map<String,Object> objs)
- Specified by:
postProcessOperationsin interfaceio.swagger.codegen.v3.CodegenConfig- Overrides:
postProcessOperationsin classio.swagger.codegen.v3.generators.DefaultCodegenConfig
-
preprocessOpenAPI
public void preprocessOpenAPI(io.swagger.v3.oas.models.OpenAPI openAPI)
- Specified by:
preprocessOpenAPIin interfaceio.swagger.codegen.v3.CodegenConfig- Overrides:
preprocessOpenAPIin classio.swagger.codegen.v3.generators.DefaultCodegenConfig
-
toApiName
public String toApiName(String name)
- Specified by:
toApiNamein interfaceio.swagger.codegen.v3.CodegenConfig- Overrides:
toApiNamein classio.swagger.codegen.v3.generators.DefaultCodegenConfig
-
toEnumVarName
public String toEnumVarName(String name, String datatype)
- Overrides:
toEnumVarNamein classio.swagger.codegen.v3.generators.typescript.AbstractTypeScriptClientCodegen
-
toModelFilename
public String toModelFilename(String name)
- Specified by:
toModelFilenamein interfaceio.swagger.codegen.v3.CodegenConfig- Overrides:
toModelFilenamein classio.swagger.codegen.v3.generators.typescript.AbstractTypeScriptClientCodegen
-
toModelName
public String toModelName(String name)
- Specified by:
toModelNamein interfaceio.swagger.codegen.v3.CodegenConfig- Overrides:
toModelNamein classio.swagger.codegen.v3.generators.typescript.AbstractTypeScriptClientCodegen
-
addImport
public void addImport(io.swagger.codegen.v3.CodegenModel m, String type)- Overrides:
addImportin classio.swagger.codegen.v3.generators.typescript.AbstractTypeScriptClientCodegen
-
getTemplateDir
protected String getTemplateDir()
- Overrides:
getTemplateDirin classio.swagger.codegen.v3.generators.DefaultCodegenConfig
-
-