From c02c95344c55daae64e17247afb782d525e85c7d Mon Sep 17 00:00:00 2001 From: Tobe O Date: Fri, 30 Mar 2018 00:16:04 -0400 Subject: [PATCH] Nullable ts fields --- angel_serialize_generator/CHANGELOG.md | 3 +++ angel_serialize_generator/lib/typescript.dart | 2 +- angel_serialize_generator/pubspec.yaml | 2 +- .../test/models/author.d.ts | 8 ++++---- .../test/models/book.d.ts | 18 +++++++++--------- 5 files changed, 18 insertions(+), 15 deletions(-) diff --git a/angel_serialize_generator/CHANGELOG.md b/angel_serialize_generator/CHANGELOG.md index 2d130b82..60359d43 100644 --- a/angel_serialize_generator/CHANGELOG.md +++ b/angel_serialize_generator/CHANGELOG.md @@ -1,3 +1,6 @@ +# 2.0.4 +* Fields in TypeScript definitions are now nullable by default. + # 2.0.3 * Added a `TypeScriptDefinitionBuilder`. diff --git a/angel_serialize_generator/lib/typescript.dart b/angel_serialize_generator/lib/typescript.dart index d4cf7372..d598ec64 100644 --- a/angel_serialize_generator/lib/typescript.dart +++ b/angel_serialize_generator/lib/typescript.dart @@ -144,7 +144,7 @@ class TypeScriptDefinitionBuilder implements Builder { field.name, field.type, ext, buildStep); // foo: string; - buf.writeln('$alias: $typeScriptType;'); + buf.writeln('$alias?: $typeScriptType;'); } buf diff --git a/angel_serialize_generator/pubspec.yaml b/angel_serialize_generator/pubspec.yaml index ed9b3270..a5bc5223 100644 --- a/angel_serialize_generator/pubspec.yaml +++ b/angel_serialize_generator/pubspec.yaml @@ -1,5 +1,5 @@ name: angel_serialize_generator -version: 2.0.3 +version: 2.0.4 description: Model serialization generators, designed for use with Angel. Combine with angel_serialize for flexible modeling. author: Tobe O homepage: https://github.com/angel-dart/serialize diff --git a/angel_serialize_generator/test/models/author.d.ts b/angel_serialize_generator/test/models/author.d.ts index 643f1451..118cacaf 100644 --- a/angel_serialize_generator/test/models/author.d.ts +++ b/angel_serialize_generator/test/models/author.d.ts @@ -1,9 +1,9 @@ // GENERATED CODE - DO NOT MODIFY BY HAND interface Library { - id: string; - collection: BookCollection; - created_at: any; - updated_at: any; + id?: string; + collection?: BookCollection; + created_at?: any; + updated_at?: any; } interface BookCollection { [key: string]: Book; diff --git a/angel_serialize_generator/test/models/book.d.ts b/angel_serialize_generator/test/models/book.d.ts index 0d6303d2..65cd8065 100644 --- a/angel_serialize_generator/test/models/book.d.ts +++ b/angel_serialize_generator/test/models/book.d.ts @@ -1,12 +1,12 @@ // GENERATED CODE - DO NOT MODIFY BY HAND interface Book { - id: string; - author: string; - title: string; - description: string; - page_count: number; - not_models: any[]; - camelCase: string; - created_at: any; - updated_at: any; + id?: string; + author?: string; + title?: string; + description?: string; + page_count?: number; + not_models?: any[]; + camelCase?: string; + created_at?: any; + updated_at?: any; }