- refactor ApiControllerTypeBuildingContext
- use string templates with custom tag for urls in generated apis
- Add net8.0 support to cli tool; run tests against net8.0 tfm
- Fix tests to run on Linux
- support type imports
- Update
Microsoft.CodeAnalysis.CSharp.Workspaces
- Use net7.0 in
TypeScript.ContractGenerator.Cli
- Add
ApiControllerTypeBuildingContext
- Update AspNetCoreExample to use latest web api template
- Update dependencies
- Test against net7.0 tfm
- Add
CustomContentMarker
option for custom header text in generated files - Switch to
github-actions
for tests and releases
- Add DateTimeOffset support
- Add Patch method to ApiControllerTypeBuildingContextBase
- Fix attributes data extraction
- Use net6.0 in cli tool
- Update Roslyn dependencies
- treat long type as number in javascript according to serializers' behavior (e.g. JSON.NET & Netwonsoft.JSON)
- Added types in variable and constant definition
- Use net5.0 in cli tool
- Add FrameworkReference to
Microsoft.AspNetCore.App
in cli tool - Update dependencies
- Fix Roslyn custom type generator compilation in net5.0
- Remove deprecated options (See MIGRATION)
- Use abstractions instead of reflection types in public api (See MIGRATION)
- Fix nullability issues with Nullable Reference Types
- Add Roslyn support
- Add dotnet tool
- Fix eslint-ignore comment
- Add public modifier to function definition
- Add EnableExplicitNullability obsoletion warning
- Update deps
- Fix type definition duplicates for custom generic type building context
- Add obsoletion warnings for
JavaScriptTypeChecker.Flow
,EnumGenerationMode.FixedStringsAndDictionary
andTypeScriptGenerationOptions.Pluralize
- Use
EnumGenerationMode.TypeScriptEnum
andLinterDisableMode.EsLint
in default options
- Add nullable reference support, it can be enabled with
NullabilityMode.NullableReference
option
- Use SourceLink to help ReSharper decompiler show actual code.
- Add
RequiredAttribute
support - Check interfaces' nullability
- Custom property resolving setup via fluent configuration
- Correct attributes retrieving for overriden properties
- Add
TypeScriptArrowFunction
to CodeDom - Move
ResolveProperty
toITypeGenerator
- Remove
ContractGeneratorInferValue
attribute - Add
DerivedTypesUnionBuildingContext
- Add
Upload
method to api type building context - Add
virtual GenerateCustomBody
intoApiControllerTypeBuildingContextBase
for request body building customization
- Fix nullability issues in generic types
- Add ItemNotNull/ItemCanBeNull support
- Add
ApiControllerTypeBuildingContextBase
, addApiControllerTypeBuildingContext
example for asp net core - Add CustomGenerator builder, add
RedirectToTypeBuildingContext
- Update dependencies
- Fix cyclic dependency bug when generating code for child types
- Pass
TypeScriptUnit
toResolveProperty
forBuildAndImport
availability - Add
NullabilityMode
option - Add more code generation classes to CodeDom
- Add
ContractGeneratorIgnore
andContractGeneratorInferValue
attributes that can be applied to properties - Add
ResolveProperty
method toICustomTypeGenerator
for property customization
//tslint:disable
is placed before codegen marker- Global rename:
FlowType => TypeScript
- Add support for enum properties with user-defined getter (see
GenerateEnumWithConstGetterTest
for details)
- Correctly generate built-in types
- Add support for
List<T>
andDictionary<TKey, TValue>
- Add GlobalNullable generation option: if
true
, typeNullable<T>
from global namespace will be used - Fixed invalid Nullable generation
- Use
Array<null | T>
instead ofNullable<T>[]
if GlobalNullable option is set tofalse
- TypeScript files generated with '.ts' extension
- Generation options: EnumGenerationMode: FixedStringsAndDictionary | TypeScriptEnum, EnableOptionalProperties, EnableExplicitNullability
- IRootTypes provider interface (preparation to build in executable generator)
- Add internal JetBrains.Annotations
- Typos fixes at ITypeBuildingContext: IDefinitionBuilded -> IsDefinitionBuilt, BuildDefiniion -> BuildDefinition
- Support .NET Standard 2.0.
- Switch to SDK-style project format and dotnet core build tooling.
- Use Nerdbank.GitVersioning to automate generation of assembly and nuget package versions.
- Fix incorrect camelCase property names generation.
- Add tests.