diff --git a/lib/src/models/arc_data.dart b/lib/src/models/arc_data.dart index fed08e8..6bbd22a 100644 --- a/lib/src/models/arc_data.dart +++ b/lib/src/models/arc_data.dart @@ -9,16 +9,16 @@ part 'arc_data.g.dart'; @CopyWith() class ArcData { ArcData({ - required this.start, - required this.end, + required this.startingAngle, + required this.endingAngle, required this.innerRadius, }); /// Start of the sweep in radians. - final double start; + final double startingAngle; /// End of the sweep in radians. - final double end; + final double endingAngle; /// Inner radius value between 0 and 1. final double innerRadius; diff --git a/lib/src/models/arc_data.g.dart b/lib/src/models/arc_data.g.dart index 5d21707..52413e9 100644 --- a/lib/src/models/arc_data.g.dart +++ b/lib/src/models/arc_data.g.dart @@ -7,9 +7,9 @@ part of 'arc_data.dart'; // ************************************************************************** abstract class _$ArcDataCWProxy { - ArcData start(double start); + ArcData startingAngle(double startingAngle); - ArcData end(double end); + ArcData endingAngle(double endingAngle); ArcData innerRadius(double innerRadius); @@ -20,8 +20,8 @@ abstract class _$ArcDataCWProxy { /// ArcData(...).copyWith(id: 12, name: "My name") /// ```` ArcData call({ - double? start, - double? end, + double? startingAngle, + double? endingAngle, double? innerRadius, }); } @@ -33,10 +33,11 @@ class _$ArcDataCWProxyImpl implements _$ArcDataCWProxy { final ArcData _value; @override - ArcData start(double start) => this(start: start); + ArcData startingAngle(double startingAngle) => + this(startingAngle: startingAngle); @override - ArcData end(double end) => this(end: end); + ArcData endingAngle(double endingAngle) => this(endingAngle: endingAngle); @override ArcData innerRadius(double innerRadius) => this(innerRadius: innerRadius); @@ -50,19 +51,21 @@ class _$ArcDataCWProxyImpl implements _$ArcDataCWProxy { /// ArcData(...).copyWith(id: 12, name: "My name") /// ```` ArcData call({ - Object? start = const $CopyWithPlaceholder(), - Object? end = const $CopyWithPlaceholder(), + Object? startingAngle = const $CopyWithPlaceholder(), + Object? endingAngle = const $CopyWithPlaceholder(), Object? innerRadius = const $CopyWithPlaceholder(), }) { return ArcData( - start: start == const $CopyWithPlaceholder() || start == null - ? _value.start - // ignore: cast_nullable_to_non_nullable - : start as double, - end: end == const $CopyWithPlaceholder() || end == null - ? _value.end - // ignore: cast_nullable_to_non_nullable - : end as double, + startingAngle: + startingAngle == const $CopyWithPlaceholder() || startingAngle == null + ? _value.startingAngle + // ignore: cast_nullable_to_non_nullable + : startingAngle as double, + endingAngle: + endingAngle == const $CopyWithPlaceholder() || endingAngle == null + ? _value.endingAngle + // ignore: cast_nullable_to_non_nullable + : endingAngle as double, innerRadius: innerRadius == const $CopyWithPlaceholder() || innerRadius == null ? _value.innerRadius @@ -83,13 +86,13 @@ extension $ArcDataCopyWith on ArcData { // ************************************************************************** ArcData _$ArcDataFromJson(Map json) => ArcData( - start: (json['start'] as num).toDouble(), - end: (json['end'] as num).toDouble(), + startingAngle: (json['startingAngle'] as num).toDouble(), + endingAngle: (json['endingAngle'] as num).toDouble(), innerRadius: (json['innerRadius'] as num).toDouble(), ); Map _$ArcDataToJson(ArcData instance) => { - 'start': instance.start, - 'end': instance.end, + 'startingAngle': instance.startingAngle, + 'endingAngle': instance.endingAngle, 'innerRadius': instance.innerRadius, }; diff --git a/lib/src/models/boolean_operation.g.dart b/lib/src/models/boolean_operation.g.dart index 78eb2db..e792a3c 100644 --- a/lib/src/models/boolean_operation.g.dart +++ b/lib/src/models/boolean_operation.g.dart @@ -79,7 +79,7 @@ abstract class _$BooleanOperationCWProxy { BooleanOperation absoluteRenderBounds(SizeRectangle? absoluteRenderBounds); BooleanOperation fillOverrideTable( - Map? fillOverrideTable); + Map? fillOverrideTable); BooleanOperation individualStrokeWeights( StrokeWeights? individualStrokeWeights); @@ -130,7 +130,7 @@ abstract class _$BooleanOperationCWProxy { StrokeAlign? strokeAlign, Map? styles, SizeRectangle? absoluteRenderBounds, - Map? fillOverrideTable, + Map? fillOverrideTable, StrokeWeights? individualStrokeWeights, List? children, Operation? operation, @@ -274,7 +274,7 @@ class _$BooleanOperationCWProxyImpl implements _$BooleanOperationCWProxy { @override BooleanOperation fillOverrideTable( - Map? fillOverrideTable) => + Map? fillOverrideTable) => this(fillOverrideTable: fillOverrideTable); @override @@ -492,7 +492,7 @@ class _$BooleanOperationCWProxyImpl implements _$BooleanOperationCWProxy { fillOverrideTable: fillOverrideTable == const $CopyWithPlaceholder() ? _value.fillOverrideTable // ignore: cast_nullable_to_non_nullable - : fillOverrideTable as Map?, + : fillOverrideTable as Map?, individualStrokeWeights: individualStrokeWeights == const $CopyWithPlaceholder() ? _value.individualStrokeWeights @@ -603,7 +603,10 @@ BooleanOperation _$BooleanOperationFromJson(Map json) => fillOverrideTable: (json['fillOverrideTable'] as Map?)?.map( (k, e) => MapEntry( - int.parse(k), PaintOverride.fromJson(e as Map)), + int.parse(k), + e == null + ? null + : PaintOverride.fromJson(e as Map)), ), individualStrokeWeights: json['individualStrokeWeights'] == null ? null diff --git a/lib/src/models/component_node.dart b/lib/src/models/component_node.dart index dc13c21..b6fc2f5 100644 --- a/lib/src/models/component_node.dart +++ b/lib/src/models/component_node.dart @@ -1,3 +1,4 @@ +import 'package:figma/src/converters/converters.dart'; import 'package:copy_with_extension/copy_with_extension.dart'; import 'package:figma/src/models.dart'; import 'package:json_annotation/json_annotation.dart'; @@ -18,14 +19,10 @@ class ComponentNode extends Frame { required super.exportSettings, required super.children, required super.opacity, - required super.primaryAxisAlignItems, - required super.counterAxisAlignItems, - required super.primaryAxisSizingMode, + required super.layoutPositioning, + required super.itemReverseZIndex, + required super.strokesIncludedInLayout, required super.counterAxisSizingMode, - required super.paddingBottom, - required super.paddingLeft, - required super.paddingRight, - required super.paddingTop, required super.horizontalPadding, required super.verticalPadding, required super.itemSpacing, @@ -34,10 +31,39 @@ class ComponentNode extends Frame { required super.effects, required super.isMask, required super.isMaskOutline, - required super.layoutPositioning, - required super.itemReverseZIndex, - required super.strokesIncludedInLayout, + required super.counterAxisAlignItems, + required super.primaryAxisAlignItems, + required super.primaryAxisSizingMode, + required super.paddingBottom, + required super.paddingLeft, + required super.paddingRight, + required super.paddingTop, + required super.size, required this.componentPropertyDefinitions, + super.styles, + super.componentPropertyReferencesMap, + super.absoluteBoundingBox, + super.absoluteRenderBounds, + super.rotation, + super.name, + super.pluginData, + super.sharedPluginData, + super.type, + super.strokeWeight, + super.strokeAlign, + super.cornerRadius, + super.rectangleCornerRadii, + super.blendMode, + required super.preserveRatio, + required super.layoutGrow, + super.constraints, + super.layoutAlign, + super.transitionNodeID, + super.transitionDuration, + super.relativeTransform, + super.clipsContent, + super.layoutMode, + super.individualStrokeWeights, }); /// A mapping of name to ComponentPropertyDefinition for every component diff --git a/lib/src/models/component_node.g.dart b/lib/src/models/component_node.g.dart index b71a088..72e6539 100644 --- a/lib/src/models/component_node.g.dart +++ b/lib/src/models/component_node.g.dart @@ -19,30 +19,19 @@ abstract class _$ComponentNodeCWProxy { ComponentNode exportSettings(List exportSettings); - ComponentNode children(List children); + ComponentNode children(List? children); ComponentNode opacity(double opacity); - ComponentNode primaryAxisAlignItems( - PrimaryAxisAlignItems primaryAxisAlignItems); + ComponentNode layoutPositioning(LayoutPositioning layoutPositioning); - ComponentNode counterAxisAlignItems( - CounterAxisAlignItems counterAxisAlignItems); + ComponentNode itemReverseZIndex(bool itemReverseZIndex); - ComponentNode primaryAxisSizingMode( - PrimaryAxisSizingMode primaryAxisSizingMode); + ComponentNode strokesIncludedInLayout(bool strokesIncludedInLayout); ComponentNode counterAxisSizingMode( CounterAxisSizingMode counterAxisSizingMode); - ComponentNode paddingBottom(double paddingBottom); - - ComponentNode paddingLeft(double paddingLeft); - - ComponentNode paddingRight(double paddingRight); - - ComponentNode paddingTop(double paddingTop); - ComponentNode horizontalPadding(double horizontalPadding); ComponentNode verticalPadding(double verticalPadding); @@ -59,15 +48,77 @@ abstract class _$ComponentNodeCWProxy { ComponentNode isMaskOutline(bool isMaskOutline); - ComponentNode layoutPositioning(LayoutPositioning layoutPositioning); + ComponentNode counterAxisAlignItems( + CounterAxisAlignItems counterAxisAlignItems); - ComponentNode itemReverseZIndex(bool itemReverseZIndex); + ComponentNode primaryAxisAlignItems( + PrimaryAxisAlignItems primaryAxisAlignItems); - ComponentNode strokesIncludedInLayout(bool strokesIncludedInLayout); + ComponentNode primaryAxisSizingMode( + PrimaryAxisSizingMode primaryAxisSizingMode); + + ComponentNode paddingBottom(double paddingBottom); + + ComponentNode paddingLeft(double paddingLeft); + + ComponentNode paddingRight(double paddingRight); + + ComponentNode paddingTop(double paddingTop); + + ComponentNode size(Vector2D? size); ComponentNode componentPropertyDefinitions( Map componentPropertyDefinitions); + ComponentNode styles(Map? styles); + + ComponentNode componentPropertyReferencesMap( + Map? componentPropertyReferencesMap); + + ComponentNode absoluteBoundingBox(SizeRectangle? absoluteBoundingBox); + + ComponentNode absoluteRenderBounds(SizeRectangle? absoluteRenderBounds); + + ComponentNode rotation(double? rotation); + + ComponentNode name(String? name); + + ComponentNode pluginData(dynamic pluginData); + + ComponentNode sharedPluginData(dynamic sharedPluginData); + + ComponentNode type(String? type); + + ComponentNode strokeWeight(double? strokeWeight); + + ComponentNode strokeAlign(StrokeAlign? strokeAlign); + + ComponentNode cornerRadius(double? cornerRadius); + + ComponentNode rectangleCornerRadii(List? rectangleCornerRadii); + + ComponentNode blendMode(BlendMode? blendMode); + + ComponentNode preserveRatio(bool preserveRatio); + + ComponentNode layoutGrow(double layoutGrow); + + ComponentNode constraints(LayoutConstraint? constraints); + + ComponentNode layoutAlign(LayoutAlign? layoutAlign); + + ComponentNode transitionNodeID(String? transitionNodeID); + + ComponentNode transitionDuration(double? transitionDuration); + + ComponentNode relativeTransform(List>? relativeTransform); + + ComponentNode clipsContent(bool? clipsContent); + + ComponentNode layoutMode(LayoutMode? layoutMode); + + ComponentNode individualStrokeWeights(StrokeWeights? individualStrokeWeights); + /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. You can also use `ComponentNode(...).copyWith.fieldName(...)` to override fields one at a time with nullification support. /// /// Usage @@ -81,16 +132,12 @@ abstract class _$ComponentNodeCWProxy { List? fills, List? strokes, List? exportSettings, - List? children, + List? children, double? opacity, - PrimaryAxisAlignItems? primaryAxisAlignItems, - CounterAxisAlignItems? counterAxisAlignItems, - PrimaryAxisSizingMode? primaryAxisSizingMode, + LayoutPositioning? layoutPositioning, + bool? itemReverseZIndex, + bool? strokesIncludedInLayout, CounterAxisSizingMode? counterAxisSizingMode, - double? paddingBottom, - double? paddingLeft, - double? paddingRight, - double? paddingTop, double? horizontalPadding, double? verticalPadding, double? itemSpacing, @@ -99,10 +146,39 @@ abstract class _$ComponentNodeCWProxy { List? effects, bool? isMask, bool? isMaskOutline, - LayoutPositioning? layoutPositioning, - bool? itemReverseZIndex, - bool? strokesIncludedInLayout, + CounterAxisAlignItems? counterAxisAlignItems, + PrimaryAxisAlignItems? primaryAxisAlignItems, + PrimaryAxisSizingMode? primaryAxisSizingMode, + double? paddingBottom, + double? paddingLeft, + double? paddingRight, + double? paddingTop, + Vector2D? size, Map? componentPropertyDefinitions, + Map? styles, + Map? componentPropertyReferencesMap, + SizeRectangle? absoluteBoundingBox, + SizeRectangle? absoluteRenderBounds, + double? rotation, + String? name, + dynamic pluginData, + dynamic sharedPluginData, + String? type, + double? strokeWeight, + StrokeAlign? strokeAlign, + double? cornerRadius, + List? rectangleCornerRadii, + BlendMode? blendMode, + bool? preserveRatio, + double? layoutGrow, + LayoutConstraint? constraints, + LayoutAlign? layoutAlign, + String? transitionNodeID, + double? transitionDuration, + List>? relativeTransform, + bool? clipsContent, + LayoutMode? layoutMode, + StrokeWeights? individualStrokeWeights, }); } @@ -132,46 +208,28 @@ class _$ComponentNodeCWProxyImpl implements _$ComponentNodeCWProxy { this(exportSettings: exportSettings); @override - ComponentNode children(List children) => this(children: children); + ComponentNode children(List? children) => this(children: children); @override ComponentNode opacity(double opacity) => this(opacity: opacity); @override - ComponentNode primaryAxisAlignItems( - PrimaryAxisAlignItems primaryAxisAlignItems) => - this(primaryAxisAlignItems: primaryAxisAlignItems); + ComponentNode layoutPositioning(LayoutPositioning layoutPositioning) => + this(layoutPositioning: layoutPositioning); @override - ComponentNode counterAxisAlignItems( - CounterAxisAlignItems counterAxisAlignItems) => - this(counterAxisAlignItems: counterAxisAlignItems); + ComponentNode itemReverseZIndex(bool itemReverseZIndex) => + this(itemReverseZIndex: itemReverseZIndex); @override - ComponentNode primaryAxisSizingMode( - PrimaryAxisSizingMode primaryAxisSizingMode) => - this(primaryAxisSizingMode: primaryAxisSizingMode); + ComponentNode strokesIncludedInLayout(bool strokesIncludedInLayout) => + this(strokesIncludedInLayout: strokesIncludedInLayout); @override ComponentNode counterAxisSizingMode( CounterAxisSizingMode counterAxisSizingMode) => this(counterAxisSizingMode: counterAxisSizingMode); - @override - ComponentNode paddingBottom(double paddingBottom) => - this(paddingBottom: paddingBottom); - - @override - ComponentNode paddingLeft(double paddingLeft) => - this(paddingLeft: paddingLeft); - - @override - ComponentNode paddingRight(double paddingRight) => - this(paddingRight: paddingRight); - - @override - ComponentNode paddingTop(double paddingTop) => this(paddingTop: paddingTop); - @override ComponentNode horizontalPadding(double horizontalPadding) => this(horizontalPadding: horizontalPadding); @@ -203,16 +261,37 @@ class _$ComponentNodeCWProxyImpl implements _$ComponentNodeCWProxy { this(isMaskOutline: isMaskOutline); @override - ComponentNode layoutPositioning(LayoutPositioning layoutPositioning) => - this(layoutPositioning: layoutPositioning); + ComponentNode counterAxisAlignItems( + CounterAxisAlignItems counterAxisAlignItems) => + this(counterAxisAlignItems: counterAxisAlignItems); @override - ComponentNode itemReverseZIndex(bool itemReverseZIndex) => - this(itemReverseZIndex: itemReverseZIndex); + ComponentNode primaryAxisAlignItems( + PrimaryAxisAlignItems primaryAxisAlignItems) => + this(primaryAxisAlignItems: primaryAxisAlignItems); @override - ComponentNode strokesIncludedInLayout(bool strokesIncludedInLayout) => - this(strokesIncludedInLayout: strokesIncludedInLayout); + ComponentNode primaryAxisSizingMode( + PrimaryAxisSizingMode primaryAxisSizingMode) => + this(primaryAxisSizingMode: primaryAxisSizingMode); + + @override + ComponentNode paddingBottom(double paddingBottom) => + this(paddingBottom: paddingBottom); + + @override + ComponentNode paddingLeft(double paddingLeft) => + this(paddingLeft: paddingLeft); + + @override + ComponentNode paddingRight(double paddingRight) => + this(paddingRight: paddingRight); + + @override + ComponentNode paddingTop(double paddingTop) => this(paddingTop: paddingTop); + + @override + ComponentNode size(Vector2D? size) => this(size: size); @override ComponentNode componentPropertyDefinitions( @@ -220,6 +299,98 @@ class _$ComponentNodeCWProxyImpl implements _$ComponentNodeCWProxy { componentPropertyDefinitions) => this(componentPropertyDefinitions: componentPropertyDefinitions); + @override + ComponentNode styles(Map? styles) => + this(styles: styles); + + @override + ComponentNode componentPropertyReferencesMap( + Map? componentPropertyReferencesMap) => + this(componentPropertyReferencesMap: componentPropertyReferencesMap); + + @override + ComponentNode absoluteBoundingBox(SizeRectangle? absoluteBoundingBox) => + this(absoluteBoundingBox: absoluteBoundingBox); + + @override + ComponentNode absoluteRenderBounds(SizeRectangle? absoluteRenderBounds) => + this(absoluteRenderBounds: absoluteRenderBounds); + + @override + ComponentNode rotation(double? rotation) => this(rotation: rotation); + + @override + ComponentNode name(String? name) => this(name: name); + + @override + ComponentNode pluginData(dynamic pluginData) => this(pluginData: pluginData); + + @override + ComponentNode sharedPluginData(dynamic sharedPluginData) => + this(sharedPluginData: sharedPluginData); + + @override + ComponentNode type(String? type) => this(type: type); + + @override + ComponentNode strokeWeight(double? strokeWeight) => + this(strokeWeight: strokeWeight); + + @override + ComponentNode strokeAlign(StrokeAlign? strokeAlign) => + this(strokeAlign: strokeAlign); + + @override + ComponentNode cornerRadius(double? cornerRadius) => + this(cornerRadius: cornerRadius); + + @override + ComponentNode rectangleCornerRadii(List? rectangleCornerRadii) => + this(rectangleCornerRadii: rectangleCornerRadii); + + @override + ComponentNode blendMode(BlendMode? blendMode) => this(blendMode: blendMode); + + @override + ComponentNode preserveRatio(bool preserveRatio) => + this(preserveRatio: preserveRatio); + + @override + ComponentNode layoutGrow(double layoutGrow) => this(layoutGrow: layoutGrow); + + @override + ComponentNode constraints(LayoutConstraint? constraints) => + this(constraints: constraints); + + @override + ComponentNode layoutAlign(LayoutAlign? layoutAlign) => + this(layoutAlign: layoutAlign); + + @override + ComponentNode transitionNodeID(String? transitionNodeID) => + this(transitionNodeID: transitionNodeID); + + @override + ComponentNode transitionDuration(double? transitionDuration) => + this(transitionDuration: transitionDuration); + + @override + ComponentNode relativeTransform(List>? relativeTransform) => + this(relativeTransform: relativeTransform); + + @override + ComponentNode clipsContent(bool? clipsContent) => + this(clipsContent: clipsContent); + + @override + ComponentNode layoutMode(LayoutMode? layoutMode) => + this(layoutMode: layoutMode); + + @override + ComponentNode individualStrokeWeights( + StrokeWeights? individualStrokeWeights) => + this(individualStrokeWeights: individualStrokeWeights); + @override /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. You can also use `ComponentNode(...).copyWith.fieldName(...)` to override fields one at a time with nullification support. @@ -237,14 +408,10 @@ class _$ComponentNodeCWProxyImpl implements _$ComponentNodeCWProxy { Object? exportSettings = const $CopyWithPlaceholder(), Object? children = const $CopyWithPlaceholder(), Object? opacity = const $CopyWithPlaceholder(), - Object? primaryAxisAlignItems = const $CopyWithPlaceholder(), - Object? counterAxisAlignItems = const $CopyWithPlaceholder(), - Object? primaryAxisSizingMode = const $CopyWithPlaceholder(), + Object? layoutPositioning = const $CopyWithPlaceholder(), + Object? itemReverseZIndex = const $CopyWithPlaceholder(), + Object? strokesIncludedInLayout = const $CopyWithPlaceholder(), Object? counterAxisSizingMode = const $CopyWithPlaceholder(), - Object? paddingBottom = const $CopyWithPlaceholder(), - Object? paddingLeft = const $CopyWithPlaceholder(), - Object? paddingRight = const $CopyWithPlaceholder(), - Object? paddingTop = const $CopyWithPlaceholder(), Object? horizontalPadding = const $CopyWithPlaceholder(), Object? verticalPadding = const $CopyWithPlaceholder(), Object? itemSpacing = const $CopyWithPlaceholder(), @@ -253,10 +420,39 @@ class _$ComponentNodeCWProxyImpl implements _$ComponentNodeCWProxy { Object? effects = const $CopyWithPlaceholder(), Object? isMask = const $CopyWithPlaceholder(), Object? isMaskOutline = const $CopyWithPlaceholder(), - Object? layoutPositioning = const $CopyWithPlaceholder(), - Object? itemReverseZIndex = const $CopyWithPlaceholder(), - Object? strokesIncludedInLayout = const $CopyWithPlaceholder(), + Object? counterAxisAlignItems = const $CopyWithPlaceholder(), + Object? primaryAxisAlignItems = const $CopyWithPlaceholder(), + Object? primaryAxisSizingMode = const $CopyWithPlaceholder(), + Object? paddingBottom = const $CopyWithPlaceholder(), + Object? paddingLeft = const $CopyWithPlaceholder(), + Object? paddingRight = const $CopyWithPlaceholder(), + Object? paddingTop = const $CopyWithPlaceholder(), + Object? size = const $CopyWithPlaceholder(), Object? componentPropertyDefinitions = const $CopyWithPlaceholder(), + Object? styles = const $CopyWithPlaceholder(), + Object? componentPropertyReferencesMap = const $CopyWithPlaceholder(), + Object? absoluteBoundingBox = const $CopyWithPlaceholder(), + Object? absoluteRenderBounds = const $CopyWithPlaceholder(), + Object? rotation = const $CopyWithPlaceholder(), + Object? name = const $CopyWithPlaceholder(), + Object? pluginData = const $CopyWithPlaceholder(), + Object? sharedPluginData = const $CopyWithPlaceholder(), + Object? type = const $CopyWithPlaceholder(), + Object? strokeWeight = const $CopyWithPlaceholder(), + Object? strokeAlign = const $CopyWithPlaceholder(), + Object? cornerRadius = const $CopyWithPlaceholder(), + Object? rectangleCornerRadii = const $CopyWithPlaceholder(), + Object? blendMode = const $CopyWithPlaceholder(), + Object? preserveRatio = const $CopyWithPlaceholder(), + Object? layoutGrow = const $CopyWithPlaceholder(), + Object? constraints = const $CopyWithPlaceholder(), + Object? layoutAlign = const $CopyWithPlaceholder(), + Object? transitionNodeID = const $CopyWithPlaceholder(), + Object? transitionDuration = const $CopyWithPlaceholder(), + Object? relativeTransform = const $CopyWithPlaceholder(), + Object? clipsContent = const $CopyWithPlaceholder(), + Object? layoutMode = const $CopyWithPlaceholder(), + Object? individualStrokeWeights = const $CopyWithPlaceholder(), }) { return ComponentNode( id: id == const $CopyWithPlaceholder() || id == null @@ -284,58 +480,36 @@ class _$ComponentNodeCWProxyImpl implements _$ComponentNodeCWProxy { ? _value.exportSettings // ignore: cast_nullable_to_non_nullable : exportSettings as List, - children: children == const $CopyWithPlaceholder() || children == null + children: children == const $CopyWithPlaceholder() ? _value.children // ignore: cast_nullable_to_non_nullable - : children as List, + : children as List?, opacity: opacity == const $CopyWithPlaceholder() || opacity == null ? _value.opacity // ignore: cast_nullable_to_non_nullable : opacity as double, - primaryAxisAlignItems: - primaryAxisAlignItems == const $CopyWithPlaceholder() || - primaryAxisAlignItems == null - ? _value.primaryAxisAlignItems - // ignore: cast_nullable_to_non_nullable - : primaryAxisAlignItems as PrimaryAxisAlignItems, - counterAxisAlignItems: - counterAxisAlignItems == const $CopyWithPlaceholder() || - counterAxisAlignItems == null - ? _value.counterAxisAlignItems - // ignore: cast_nullable_to_non_nullable - : counterAxisAlignItems as CounterAxisAlignItems, - primaryAxisSizingMode: - primaryAxisSizingMode == const $CopyWithPlaceholder() || - primaryAxisSizingMode == null - ? _value.primaryAxisSizingMode + layoutPositioning: layoutPositioning == const $CopyWithPlaceholder() || + layoutPositioning == null + ? _value.layoutPositioning + // ignore: cast_nullable_to_non_nullable + : layoutPositioning as LayoutPositioning, + itemReverseZIndex: itemReverseZIndex == const $CopyWithPlaceholder() || + itemReverseZIndex == null + ? _value.itemReverseZIndex + // ignore: cast_nullable_to_non_nullable + : itemReverseZIndex as bool, + strokesIncludedInLayout: + strokesIncludedInLayout == const $CopyWithPlaceholder() || + strokesIncludedInLayout == null + ? _value.strokesIncludedInLayout // ignore: cast_nullable_to_non_nullable - : primaryAxisSizingMode as PrimaryAxisSizingMode, + : strokesIncludedInLayout as bool, counterAxisSizingMode: counterAxisSizingMode == const $CopyWithPlaceholder() || counterAxisSizingMode == null ? _value.counterAxisSizingMode // ignore: cast_nullable_to_non_nullable : counterAxisSizingMode as CounterAxisSizingMode, - paddingBottom: - paddingBottom == const $CopyWithPlaceholder() || paddingBottom == null - ? _value.paddingBottom - // ignore: cast_nullable_to_non_nullable - : paddingBottom as double, - paddingLeft: - paddingLeft == const $CopyWithPlaceholder() || paddingLeft == null - ? _value.paddingLeft - // ignore: cast_nullable_to_non_nullable - : paddingLeft as double, - paddingRight: - paddingRight == const $CopyWithPlaceholder() || paddingRight == null - ? _value.paddingRight - // ignore: cast_nullable_to_non_nullable - : paddingRight as double, - paddingTop: - paddingTop == const $CopyWithPlaceholder() || paddingTop == null - ? _value.paddingTop - // ignore: cast_nullable_to_non_nullable - : paddingTop as double, horizontalPadding: horizontalPadding == const $CopyWithPlaceholder() || horizontalPadding == null ? _value.horizontalPadding @@ -374,22 +548,48 @@ class _$ComponentNodeCWProxyImpl implements _$ComponentNodeCWProxy { ? _value.isMaskOutline // ignore: cast_nullable_to_non_nullable : isMaskOutline as bool, - layoutPositioning: layoutPositioning == const $CopyWithPlaceholder() || - layoutPositioning == null - ? _value.layoutPositioning - // ignore: cast_nullable_to_non_nullable - : layoutPositioning as LayoutPositioning, - itemReverseZIndex: itemReverseZIndex == const $CopyWithPlaceholder() || - itemReverseZIndex == null - ? _value.itemReverseZIndex - // ignore: cast_nullable_to_non_nullable - : itemReverseZIndex as bool, - strokesIncludedInLayout: - strokesIncludedInLayout == const $CopyWithPlaceholder() || - strokesIncludedInLayout == null - ? _value.strokesIncludedInLayout + counterAxisAlignItems: + counterAxisAlignItems == const $CopyWithPlaceholder() || + counterAxisAlignItems == null + ? _value.counterAxisAlignItems // ignore: cast_nullable_to_non_nullable - : strokesIncludedInLayout as bool, + : counterAxisAlignItems as CounterAxisAlignItems, + primaryAxisAlignItems: + primaryAxisAlignItems == const $CopyWithPlaceholder() || + primaryAxisAlignItems == null + ? _value.primaryAxisAlignItems + // ignore: cast_nullable_to_non_nullable + : primaryAxisAlignItems as PrimaryAxisAlignItems, + primaryAxisSizingMode: + primaryAxisSizingMode == const $CopyWithPlaceholder() || + primaryAxisSizingMode == null + ? _value.primaryAxisSizingMode + // ignore: cast_nullable_to_non_nullable + : primaryAxisSizingMode as PrimaryAxisSizingMode, + paddingBottom: + paddingBottom == const $CopyWithPlaceholder() || paddingBottom == null + ? _value.paddingBottom + // ignore: cast_nullable_to_non_nullable + : paddingBottom as double, + paddingLeft: + paddingLeft == const $CopyWithPlaceholder() || paddingLeft == null + ? _value.paddingLeft + // ignore: cast_nullable_to_non_nullable + : paddingLeft as double, + paddingRight: + paddingRight == const $CopyWithPlaceholder() || paddingRight == null + ? _value.paddingRight + // ignore: cast_nullable_to_non_nullable + : paddingRight as double, + paddingTop: + paddingTop == const $CopyWithPlaceholder() || paddingTop == null + ? _value.paddingTop + // ignore: cast_nullable_to_non_nullable + : paddingTop as double, + size: size == const $CopyWithPlaceholder() + ? _value.size + // ignore: cast_nullable_to_non_nullable + : size as Vector2D?, componentPropertyDefinitions: componentPropertyDefinitions == const $CopyWithPlaceholder() || componentPropertyDefinitions == null @@ -397,6 +597,108 @@ class _$ComponentNodeCWProxyImpl implements _$ComponentNodeCWProxy { // ignore: cast_nullable_to_non_nullable : componentPropertyDefinitions as Map, + styles: styles == const $CopyWithPlaceholder() + ? _value.styles + // ignore: cast_nullable_to_non_nullable + : styles as Map?, + componentPropertyReferencesMap: + componentPropertyReferencesMap == const $CopyWithPlaceholder() + ? _value.componentPropertyReferencesMap + // ignore: cast_nullable_to_non_nullable + : componentPropertyReferencesMap as Map?, + absoluteBoundingBox: absoluteBoundingBox == const $CopyWithPlaceholder() + ? _value.absoluteBoundingBox + // ignore: cast_nullable_to_non_nullable + : absoluteBoundingBox as SizeRectangle?, + absoluteRenderBounds: absoluteRenderBounds == const $CopyWithPlaceholder() + ? _value.absoluteRenderBounds + // ignore: cast_nullable_to_non_nullable + : absoluteRenderBounds as SizeRectangle?, + rotation: rotation == const $CopyWithPlaceholder() + ? _value.rotation + // ignore: cast_nullable_to_non_nullable + : rotation as double?, + name: name == const $CopyWithPlaceholder() + ? _value.name + // ignore: cast_nullable_to_non_nullable + : name as String?, + pluginData: + pluginData == const $CopyWithPlaceholder() || pluginData == null + ? _value.pluginData + // ignore: cast_nullable_to_non_nullable + : pluginData as dynamic, + sharedPluginData: sharedPluginData == const $CopyWithPlaceholder() || + sharedPluginData == null + ? _value.sharedPluginData + // ignore: cast_nullable_to_non_nullable + : sharedPluginData as dynamic, + type: type == const $CopyWithPlaceholder() + ? _value.type + // ignore: cast_nullable_to_non_nullable + : type as String?, + strokeWeight: strokeWeight == const $CopyWithPlaceholder() + ? _value.strokeWeight + // ignore: cast_nullable_to_non_nullable + : strokeWeight as double?, + strokeAlign: strokeAlign == const $CopyWithPlaceholder() + ? _value.strokeAlign + // ignore: cast_nullable_to_non_nullable + : strokeAlign as StrokeAlign?, + cornerRadius: cornerRadius == const $CopyWithPlaceholder() + ? _value.cornerRadius + // ignore: cast_nullable_to_non_nullable + : cornerRadius as double?, + rectangleCornerRadii: rectangleCornerRadii == const $CopyWithPlaceholder() + ? _value.rectangleCornerRadii + // ignore: cast_nullable_to_non_nullable + : rectangleCornerRadii as List?, + blendMode: blendMode == const $CopyWithPlaceholder() + ? _value.blendMode + // ignore: cast_nullable_to_non_nullable + : blendMode as BlendMode?, + preserveRatio: + preserveRatio == const $CopyWithPlaceholder() || preserveRatio == null + ? _value.preserveRatio + // ignore: cast_nullable_to_non_nullable + : preserveRatio as bool, + layoutGrow: + layoutGrow == const $CopyWithPlaceholder() || layoutGrow == null + ? _value.layoutGrow + // ignore: cast_nullable_to_non_nullable + : layoutGrow as double, + constraints: constraints == const $CopyWithPlaceholder() + ? _value.constraints + // ignore: cast_nullable_to_non_nullable + : constraints as LayoutConstraint?, + layoutAlign: layoutAlign == const $CopyWithPlaceholder() + ? _value.layoutAlign + // ignore: cast_nullable_to_non_nullable + : layoutAlign as LayoutAlign?, + transitionNodeID: transitionNodeID == const $CopyWithPlaceholder() + ? _value.transitionNodeID + // ignore: cast_nullable_to_non_nullable + : transitionNodeID as String?, + transitionDuration: transitionDuration == const $CopyWithPlaceholder() + ? _value.transitionDuration + // ignore: cast_nullable_to_non_nullable + : transitionDuration as double?, + relativeTransform: relativeTransform == const $CopyWithPlaceholder() + ? _value.relativeTransform + // ignore: cast_nullable_to_non_nullable + : relativeTransform as List>?, + clipsContent: clipsContent == const $CopyWithPlaceholder() + ? _value.clipsContent + // ignore: cast_nullable_to_non_nullable + : clipsContent as bool?, + layoutMode: layoutMode == const $CopyWithPlaceholder() + ? _value.layoutMode + // ignore: cast_nullable_to_non_nullable + : layoutMode as LayoutMode?, + individualStrokeWeights: + individualStrokeWeights == const $CopyWithPlaceholder() + ? _value.individualStrokeWeights + // ignore: cast_nullable_to_non_nullable + : individualStrokeWeights as StrokeWeights?, ); } } @@ -428,26 +730,19 @@ ComponentNode _$ComponentNodeFromJson(Map json) => ?.map((e) => ExportSetting.fromJson(e as Map)) .toList() ?? [], - children: (json['children'] as List) - .map((e) => Node.fromJson(e as Map)) + children: (json['children'] as List?) + ?.map(const NodeJsonConverter().fromJson) .toList(), opacity: (json['opacity'] as num?)?.toDouble() ?? 1.0, - primaryAxisAlignItems: $enumDecodeNullable( - _$PrimaryAxisAlignItemsEnumMap, json['primaryAxisAlignItems']) ?? - PrimaryAxisAlignItems.min, - counterAxisAlignItems: $enumDecodeNullable( - _$CounterAxisAlignItemsEnumMap, json['counterAxisAlignItems']) ?? - CounterAxisAlignItems.min, - primaryAxisSizingMode: $enumDecodeNullable( - _$PrimaryAxisSizingModeEnumMap, json['primaryAxisSizingMode']) ?? - PrimaryAxisSizingMode.auto, + layoutPositioning: $enumDecodeNullable( + _$LayoutPositioningEnumMap, json['layoutPositioning']) ?? + LayoutPositioning.auto, + itemReverseZIndex: json['itemReverseZIndex'] as bool? ?? false, + strokesIncludedInLayout: + json['strokesIncludedInLayout'] as bool? ?? false, counterAxisSizingMode: $enumDecodeNullable( _$CounterAxisSizingModeEnumMap, json['counterAxisSizingMode']) ?? CounterAxisSizingMode.auto, - paddingBottom: (json['paddingBottom'] as num?)?.toDouble() ?? 0.0, - paddingLeft: (json['paddingLeft'] as num?)?.toDouble() ?? 0.0, - paddingRight: (json['paddingRight'] as num?)?.toDouble() ?? 0.0, - paddingTop: (json['paddingTop'] as num?)?.toDouble() ?? 0.0, horizontalPadding: (json['horizontalPadding'] as num?)?.toDouble() ?? 0.0, verticalPadding: (json['verticalPadding'] as num?)?.toDouble() ?? 0.0, itemSpacing: (json['itemSpacing'] as num?)?.toDouble() ?? 0.0, @@ -464,12 +759,22 @@ ComponentNode _$ComponentNodeFromJson(Map json) => [], isMask: json['isMask'] as bool? ?? false, isMaskOutline: json['isMaskOutline'] as bool? ?? false, - layoutPositioning: $enumDecodeNullable( - _$LayoutPositioningEnumMap, json['layoutPositioning']) ?? - LayoutPositioning.auto, - itemReverseZIndex: json['itemReverseZIndex'] as bool? ?? false, - strokesIncludedInLayout: - json['strokesIncludedInLayout'] as bool? ?? false, + counterAxisAlignItems: $enumDecodeNullable( + _$CounterAxisAlignItemsEnumMap, json['counterAxisAlignItems']) ?? + CounterAxisAlignItems.min, + primaryAxisAlignItems: $enumDecodeNullable( + _$PrimaryAxisAlignItemsEnumMap, json['primaryAxisAlignItems']) ?? + PrimaryAxisAlignItems.min, + primaryAxisSizingMode: $enumDecodeNullable( + _$PrimaryAxisSizingModeEnumMap, json['primaryAxisSizingMode']) ?? + PrimaryAxisSizingMode.auto, + paddingBottom: (json['paddingBottom'] as num?)?.toDouble() ?? 0.0, + paddingLeft: (json['paddingLeft'] as num?)?.toDouble() ?? 0.0, + paddingRight: (json['paddingRight'] as num?)?.toDouble() ?? 0.0, + paddingTop: (json['paddingTop'] as num?)?.toDouble() ?? 0.0, + size: json['size'] == null + ? null + : Vector2D.fromJson(json['size'] as Map), componentPropertyDefinitions: (json['componentPropertyDefinitions'] as Map?)?.map( (k, e) => MapEntry( @@ -478,18 +783,94 @@ ComponentNode _$ComponentNodeFromJson(Map json) => e as Map)), ) ?? {}, + styles: (json['styles'] as Map?)?.map( + (k, e) => MapEntry($enumDecode(_$StyleTypeKeyEnumMap, k), e as String), + ), + componentPropertyReferencesMap: + (json['componentPropertyReferencesMap'] as Map?) + ?.map( + (k, e) => MapEntry(k, e as String), + ), + absoluteBoundingBox: json['absoluteBoundingBox'] == null + ? null + : SizeRectangle.fromJson( + json['absoluteBoundingBox'] as Map), + absoluteRenderBounds: json['absoluteRenderBounds'] == null + ? null + : SizeRectangle.fromJson( + json['absoluteRenderBounds'] as Map), + rotation: (json['rotation'] as num?)?.toDouble(), + name: json['name'] as String?, + pluginData: json['pluginData'], + sharedPluginData: json['sharedPluginData'], + type: json['type'] as String?, + strokeWeight: (json['strokeWeight'] as num?)?.toDouble(), + strokeAlign: + $enumDecodeNullable(_$StrokeAlignEnumMap, json['strokeAlign']), + cornerRadius: (json['cornerRadius'] as num?)?.toDouble(), + rectangleCornerRadii: (json['rectangleCornerRadii'] as List?) + ?.map((e) => (e as num).toDouble()) + .toList(), + blendMode: $enumDecodeNullable(_$BlendModeEnumMap, json['blendMode']), + preserveRatio: json['preserveRatio'] as bool? ?? false, + layoutGrow: (json['layoutGrow'] as num?)?.toDouble() ?? 0.0, + constraints: json['constraints'] == null + ? null + : LayoutConstraint.fromJson( + json['constraints'] as Map), + layoutAlign: + $enumDecodeNullable(_$LayoutAlignEnumMap, json['layoutAlign']), + transitionNodeID: json['transitionNodeID'] as String?, + transitionDuration: (json['transitionDuration'] as num?)?.toDouble(), + relativeTransform: (json['relativeTransform'] as List?) + ?.map((e) => + (e as List).map((e) => (e as num).toDouble()).toList()) + .toList(), + clipsContent: json['clipsContent'] as bool?, + layoutMode: + $enumDecodeNullable(_$LayoutModeEnumMap, json['layoutMode']) ?? + LayoutMode.none, + individualStrokeWeights: json['individualStrokeWeights'] == null + ? null + : StrokeWeights.fromJson( + json['individualStrokeWeights'] as Map), ); Map _$ComponentNodeToJson(ComponentNode instance) => { 'id': instance.id, + 'name': instance.name, 'visible': instance.visible, - 'children': instance.children, + 'type': instance.type, + 'pluginData': instance.pluginData, + 'sharedPluginData': instance.sharedPluginData, + 'rotation': instance.rotation, + 'componentPropertyReferencesMap': instance.componentPropertyReferencesMap, + 'children': + instance.children?.map(const NodeJsonConverter().toJson).toList(), 'locked': instance.locked, 'fills': instance.fills, 'strokes': instance.strokes, + 'strokeWeight': instance.strokeWeight, + 'individualStrokeWeights': instance.individualStrokeWeights, + 'strokeAlign': _$StrokeAlignEnumMap[instance.strokeAlign], + 'cornerRadius': instance.cornerRadius, + 'rectangleCornerRadii': instance.rectangleCornerRadii, 'exportSettings': instance.exportSettings, + 'blendMode': _$BlendModeEnumMap[instance.blendMode], + 'preserveRatio': instance.preserveRatio, + 'layoutGrow': instance.layoutGrow, + 'constraints': instance.constraints, + 'layoutAlign': _$LayoutAlignEnumMap[instance.layoutAlign], + 'transitionNodeID': instance.transitionNodeID, + 'transitionDuration': instance.transitionDuration, 'opacity': instance.opacity, + 'absoluteBoundingBox': instance.absoluteBoundingBox, + 'absoluteRenderBounds': instance.absoluteRenderBounds, + 'size': instance.size, + 'relativeTransform': instance.relativeTransform, + 'clipsContent': instance.clipsContent, + 'layoutMode': _$LayoutModeEnumMap[instance.layoutMode], 'counterAxisSizingMode': _$CounterAxisSizingModeEnumMap[instance.counterAxisSizingMode]!, 'primaryAxisSizingMode': @@ -515,14 +896,27 @@ Map _$ComponentNodeToJson(ComponentNode instance) => 'effects': instance.effects, 'isMask': instance.isMask, 'isMaskOutline': instance.isMaskOutline, + 'styles': instance.styles + ?.map((k, e) => MapEntry(_$StyleTypeKeyEnumMap[k]!, e)), 'componentPropertyDefinitions': instance.componentPropertyDefinitions, }; -const _$PrimaryAxisAlignItemsEnumMap = { - PrimaryAxisAlignItems.min: 'MIN', - PrimaryAxisAlignItems.center: 'CENTER', - PrimaryAxisAlignItems.max: 'MAX', - PrimaryAxisAlignItems.spaceBetween: 'SPACE_BETWEEN', +const _$LayoutPositioningEnumMap = { + LayoutPositioning.auto: 'AUTO', + LayoutPositioning.absolute: 'ABSOLUTE', +}; + +const _$CounterAxisSizingModeEnumMap = { + CounterAxisSizingMode.fixed: 'FIXED', + CounterAxisSizingMode.auto: 'AUTO', +}; + +const _$OverflowDirectionEnumMap = { + OverflowDirection.none: 'NONE', + OverflowDirection.horizontalScrolling: 'HORIZONTAL_SCROLLING', + OverflowDirection.verticalScrolling: 'VERTICAL_SCROLLING', + OverflowDirection.horizontalVerticalScrolling: + 'HORIZONTAL_AND_VERICAL_SCROLLING', }; const _$CounterAxisAlignItemsEnumMap = { @@ -531,25 +925,66 @@ const _$CounterAxisAlignItemsEnumMap = { CounterAxisAlignItems.max: 'MAX', }; +const _$PrimaryAxisAlignItemsEnumMap = { + PrimaryAxisAlignItems.min: 'MIN', + PrimaryAxisAlignItems.center: 'CENTER', + PrimaryAxisAlignItems.max: 'MAX', + PrimaryAxisAlignItems.spaceBetween: 'SPACE_BETWEEN', +}; + const _$PrimaryAxisSizingModeEnumMap = { PrimaryAxisSizingMode.fixed: 'FIXED', PrimaryAxisSizingMode.auto: 'AUTO', }; -const _$CounterAxisSizingModeEnumMap = { - CounterAxisSizingMode.fixed: 'FIXED', - CounterAxisSizingMode.auto: 'AUTO', +const _$StyleTypeKeyEnumMap = { + StyleTypeKey.fill: 'fill', + StyleTypeKey.fills: 'fills', + StyleTypeKey.stroke: 'stroke', + StyleTypeKey.strokes: 'strokes', + StyleTypeKey.text: 'text', + StyleTypeKey.effect: 'effect', + StyleTypeKey.grid: 'grid', }; -const _$OverflowDirectionEnumMap = { - OverflowDirection.none: 'NONE', - OverflowDirection.horizontalScrolling: 'HORIZONTAL_SCROLLING', - OverflowDirection.verticalScrolling: 'VERTICAL_SCROLLING', - OverflowDirection.horizontalVerticalScrolling: - 'HORIZONTAL_AND_VERICAL_SCROLLING', +const _$StrokeAlignEnumMap = { + StrokeAlign.inside: 'INSIDE', + StrokeAlign.outside: 'OUTSIDE', + StrokeAlign.center: 'CENTER', }; -const _$LayoutPositioningEnumMap = { - LayoutPositioning.auto: 'AUTO', - LayoutPositioning.absolute: 'ABSOLUTE', +const _$BlendModeEnumMap = { + BlendMode.passThrough: 'PASS_THROUGH', + BlendMode.normal: 'NORMAL', + BlendMode.darken: 'DARKEN', + BlendMode.multiply: 'MULTIPLY', + BlendMode.linearBurn: 'LINEAR_BURN', + BlendMode.colorBurn: 'COLOR_BURN', + BlendMode.lighten: 'LIGHTEN', + BlendMode.screen: 'SCREEN', + BlendMode.linearDodge: 'LINEAR_DODGE', + BlendMode.colorDodge: 'COLOR_DODGE', + BlendMode.overlay: 'OVERLAY', + BlendMode.softLight: 'SOFT_LIGHT', + BlendMode.hardLight: 'HARD_LIGHT', + BlendMode.difference: 'DIFFERENCE', + BlendMode.exclusion: 'EXCLUSION', + BlendMode.hue: 'HUE', + BlendMode.saturation: 'SATURATION', + BlendMode.color: 'COLOR', + BlendMode.luminosity: 'LUMINOSITY', +}; + +const _$LayoutAlignEnumMap = { + LayoutAlign.min: 'MIN', + LayoutAlign.center: 'CENTER', + LayoutAlign.max: 'MAX', + LayoutAlign.stretch: 'STRETCH', + LayoutAlign.inherit: 'INHERIT', +}; + +const _$LayoutModeEnumMap = { + LayoutMode.none: 'NONE', + LayoutMode.horizontal: 'HORIZONTAL', + LayoutMode.vertical: 'VERTICAL', }; diff --git a/lib/src/models/ellipse.g.dart b/lib/src/models/ellipse.g.dart index c193fcb..85859b7 100644 --- a/lib/src/models/ellipse.g.dart +++ b/lib/src/models/ellipse.g.dart @@ -78,7 +78,7 @@ abstract class _$EllipseCWProxy { Ellipse absoluteRenderBounds(SizeRectangle? absoluteRenderBounds); - Ellipse fillOverrideTable(Map? fillOverrideTable); + Ellipse fillOverrideTable(Map? fillOverrideTable); Ellipse individualStrokeWeights(StrokeWeights? individualStrokeWeights); @@ -126,7 +126,7 @@ abstract class _$EllipseCWProxy { StrokeAlign? strokeAlign, Map? styles, SizeRectangle? absoluteRenderBounds, - Map? fillOverrideTable, + Map? fillOverrideTable, StrokeWeights? individualStrokeWeights, ArcData? arcData, }); @@ -263,7 +263,7 @@ class _$EllipseCWProxyImpl implements _$EllipseCWProxy { this(absoluteRenderBounds: absoluteRenderBounds); @override - Ellipse fillOverrideTable(Map? fillOverrideTable) => + Ellipse fillOverrideTable(Map? fillOverrideTable) => this(fillOverrideTable: fillOverrideTable); @override @@ -475,7 +475,7 @@ class _$EllipseCWProxyImpl implements _$EllipseCWProxy { fillOverrideTable: fillOverrideTable == const $CopyWithPlaceholder() ? _value.fillOverrideTable // ignore: cast_nullable_to_non_nullable - : fillOverrideTable as Map?, + : fillOverrideTable as Map?, individualStrokeWeights: individualStrokeWeights == const $CopyWithPlaceholder() ? _value.individualStrokeWeights @@ -581,7 +581,10 @@ Ellipse _$EllipseFromJson(Map json) => Ellipse( fillOverrideTable: (json['fillOverrideTable'] as Map?)?.map( (k, e) => MapEntry( - int.parse(k), PaintOverride.fromJson(e as Map)), + int.parse(k), + e == null + ? null + : PaintOverride.fromJson(e as Map)), ), individualStrokeWeights: json['individualStrokeWeights'] == null ? null diff --git a/lib/src/models/frame.dart b/lib/src/models/frame.dart index 14af0ea..17d7d23 100644 --- a/lib/src/models/frame.dart +++ b/lib/src/models/frame.dart @@ -11,7 +11,7 @@ part 'frame.g.dart'; class Frame extends Node { /// An array of nodes that are direct children of this node. @NodeJsonConverter() - final List children; + final List? children; /// If true, layer is locked and cannot be edited. @JsonKey(defaultValue: false) @@ -50,7 +50,13 @@ class Frame extends Node { /// Keep height and width constrained to same ratio. @JsonKey(defaultValue: false) - final bool? preserveRatio; + final bool preserveRatio; + + /// This property is applicable only for direct children of auto-layout frames, + /// ignored otherwise. Determines whether a layer should stretch along the parent’s + /// primary axis. A `0` corresponds to a fixed size and `1` corresponds to stretch. + @JsonKey(defaultValue: 0.0) + final double layoutGrow; /// Horizontal and vertical layout constraints for node. final LayoutConstraint? constraints; @@ -238,6 +244,8 @@ class Frame extends Node { required this.layoutPositioning, required this.itemReverseZIndex, required this.strokesIncludedInLayout, + required this.preserveRatio, + required this.layoutGrow, this.absoluteBoundingBox, this.absoluteRenderBounds, this.size, @@ -247,7 +255,6 @@ class Frame extends Node { this.cornerRadius, this.rectangleCornerRadii, this.blendMode, - this.preserveRatio, this.constraints, this.layoutAlign, this.transitionNodeID, @@ -273,6 +280,7 @@ class Frame extends Node { exportSettings, blendMode, preserveRatio, + layoutGrow, constraints, layoutAlign, transitionNodeID, diff --git a/lib/src/models/frame.g.dart b/lib/src/models/frame.g.dart index 644434c..bf9cf87 100644 --- a/lib/src/models/frame.g.dart +++ b/lib/src/models/frame.g.dart @@ -32,7 +32,7 @@ abstract class _$FrameCWProxy { Frame exportSettings(List exportSettings); - Frame children(List children); + Frame children(List? children); Frame opacity(double opacity); @@ -74,6 +74,10 @@ abstract class _$FrameCWProxy { Frame strokesIncludedInLayout(bool strokesIncludedInLayout); + Frame preserveRatio(bool preserveRatio); + + Frame layoutGrow(double layoutGrow); + Frame absoluteBoundingBox(SizeRectangle? absoluteBoundingBox); Frame absoluteRenderBounds(SizeRectangle? absoluteRenderBounds); @@ -92,8 +96,6 @@ abstract class _$FrameCWProxy { Frame blendMode(BlendMode? blendMode); - Frame preserveRatio(bool? preserveRatio); - Frame constraints(LayoutConstraint? constraints); Frame layoutAlign(LayoutAlign? layoutAlign); @@ -129,7 +131,7 @@ abstract class _$FrameCWProxy { List? fills, List? strokes, List? exportSettings, - List? children, + List? children, double? opacity, PrimaryAxisAlignItems? primaryAxisAlignItems, CounterAxisAlignItems? counterAxisAlignItems, @@ -150,6 +152,8 @@ abstract class _$FrameCWProxy { LayoutPositioning? layoutPositioning, bool? itemReverseZIndex, bool? strokesIncludedInLayout, + bool? preserveRatio, + double? layoutGrow, SizeRectangle? absoluteBoundingBox, SizeRectangle? absoluteRenderBounds, Vector2D? size, @@ -159,7 +163,6 @@ abstract class _$FrameCWProxy { double? cornerRadius, List? rectangleCornerRadii, BlendMode? blendMode, - bool? preserveRatio, LayoutConstraint? constraints, LayoutAlign? layoutAlign, String? transitionNodeID, @@ -218,7 +221,7 @@ class _$FrameCWProxyImpl implements _$FrameCWProxy { this(exportSettings: exportSettings); @override - Frame children(List children) => this(children: children); + Frame children(List? children) => this(children: children); @override Frame opacity(double opacity) => this(opacity: opacity); @@ -292,6 +295,12 @@ class _$FrameCWProxyImpl implements _$FrameCWProxy { Frame strokesIncludedInLayout(bool strokesIncludedInLayout) => this(strokesIncludedInLayout: strokesIncludedInLayout); + @override + Frame preserveRatio(bool preserveRatio) => this(preserveRatio: preserveRatio); + + @override + Frame layoutGrow(double layoutGrow) => this(layoutGrow: layoutGrow); + @override Frame absoluteBoundingBox(SizeRectangle? absoluteBoundingBox) => this(absoluteBoundingBox: absoluteBoundingBox); @@ -323,10 +332,6 @@ class _$FrameCWProxyImpl implements _$FrameCWProxy { @override Frame blendMode(BlendMode? blendMode) => this(blendMode: blendMode); - @override - Frame preserveRatio(bool? preserveRatio) => - this(preserveRatio: preserveRatio); - @override Frame constraints(LayoutConstraint? constraints) => this(constraints: constraints); @@ -397,6 +402,8 @@ class _$FrameCWProxyImpl implements _$FrameCWProxy { Object? layoutPositioning = const $CopyWithPlaceholder(), Object? itemReverseZIndex = const $CopyWithPlaceholder(), Object? strokesIncludedInLayout = const $CopyWithPlaceholder(), + Object? preserveRatio = const $CopyWithPlaceholder(), + Object? layoutGrow = const $CopyWithPlaceholder(), Object? absoluteBoundingBox = const $CopyWithPlaceholder(), Object? absoluteRenderBounds = const $CopyWithPlaceholder(), Object? size = const $CopyWithPlaceholder(), @@ -406,7 +413,6 @@ class _$FrameCWProxyImpl implements _$FrameCWProxy { Object? cornerRadius = const $CopyWithPlaceholder(), Object? rectangleCornerRadii = const $CopyWithPlaceholder(), Object? blendMode = const $CopyWithPlaceholder(), - Object? preserveRatio = const $CopyWithPlaceholder(), Object? constraints = const $CopyWithPlaceholder(), Object? layoutAlign = const $CopyWithPlaceholder(), Object? transitionNodeID = const $CopyWithPlaceholder(), @@ -469,10 +475,10 @@ class _$FrameCWProxyImpl implements _$FrameCWProxy { ? _value.exportSettings // ignore: cast_nullable_to_non_nullable : exportSettings as List, - children: children == const $CopyWithPlaceholder() || children == null + children: children == const $CopyWithPlaceholder() ? _value.children // ignore: cast_nullable_to_non_nullable - : children as List, + : children as List?, opacity: opacity == const $CopyWithPlaceholder() || opacity == null ? _value.opacity // ignore: cast_nullable_to_non_nullable @@ -575,6 +581,16 @@ class _$FrameCWProxyImpl implements _$FrameCWProxy { ? _value.strokesIncludedInLayout // ignore: cast_nullable_to_non_nullable : strokesIncludedInLayout as bool, + preserveRatio: + preserveRatio == const $CopyWithPlaceholder() || preserveRatio == null + ? _value.preserveRatio + // ignore: cast_nullable_to_non_nullable + : preserveRatio as bool, + layoutGrow: + layoutGrow == const $CopyWithPlaceholder() || layoutGrow == null + ? _value.layoutGrow + // ignore: cast_nullable_to_non_nullable + : layoutGrow as double, absoluteBoundingBox: absoluteBoundingBox == const $CopyWithPlaceholder() ? _value.absoluteBoundingBox // ignore: cast_nullable_to_non_nullable @@ -612,10 +628,6 @@ class _$FrameCWProxyImpl implements _$FrameCWProxy { ? _value.blendMode // ignore: cast_nullable_to_non_nullable : blendMode as BlendMode?, - preserveRatio: preserveRatio == const $CopyWithPlaceholder() - ? _value.preserveRatio - // ignore: cast_nullable_to_non_nullable - : preserveRatio as bool?, constraints: constraints == const $CopyWithPlaceholder() ? _value.constraints // ignore: cast_nullable_to_non_nullable @@ -688,8 +700,8 @@ Frame _$FrameFromJson(Map json) => Frame( ?.map((e) => ExportSetting.fromJson(e as Map)) .toList() ?? [], - children: (json['children'] as List) - .map((e) => Node.fromJson(e as Map)) + children: (json['children'] as List?) + ?.map(const NodeJsonConverter().fromJson) .toList(), opacity: (json['opacity'] as num?)?.toDouble() ?? 1.0, primaryAxisAlignItems: $enumDecodeNullable( @@ -730,6 +742,8 @@ Frame _$FrameFromJson(Map json) => Frame( itemReverseZIndex: json['itemReverseZIndex'] as bool? ?? false, strokesIncludedInLayout: json['strokesIncludedInLayout'] as bool? ?? false, + preserveRatio: json['preserveRatio'] as bool? ?? false, + layoutGrow: (json['layoutGrow'] as num?)?.toDouble() ?? 0.0, absoluteBoundingBox: json['absoluteBoundingBox'] == null ? null : SizeRectangle.fromJson( @@ -753,7 +767,6 @@ Frame _$FrameFromJson(Map json) => Frame( ?.map((e) => (e as num).toDouble()) .toList(), blendMode: $enumDecodeNullable(_$BlendModeEnumMap, json['blendMode']), - preserveRatio: json['preserveRatio'] as bool? ?? false, constraints: json['constraints'] == null ? null : LayoutConstraint.fromJson( @@ -784,7 +797,8 @@ Map _$FrameToJson(Frame instance) => { 'sharedPluginData': instance.sharedPluginData, 'rotation': instance.rotation, 'componentPropertyReferencesMap': instance.componentPropertyReferencesMap, - 'children': instance.children, + 'children': + instance.children?.map(const NodeJsonConverter().toJson).toList(), 'locked': instance.locked, 'fills': instance.fills, 'strokes': instance.strokes, @@ -796,6 +810,7 @@ Map _$FrameToJson(Frame instance) => { 'exportSettings': instance.exportSettings, 'blendMode': _$BlendModeEnumMap[instance.blendMode], 'preserveRatio': instance.preserveRatio, + 'layoutGrow': instance.layoutGrow, 'constraints': instance.constraints, 'layoutAlign': _$LayoutAlignEnumMap[instance.layoutAlign], 'transitionNodeID': instance.transitionNodeID, diff --git a/lib/src/models/group.dart b/lib/src/models/group.dart index 9a54350..26c6bf7 100644 --- a/lib/src/models/group.dart +++ b/lib/src/models/group.dart @@ -1,3 +1,4 @@ +import 'package:figma/src/converters/converters.dart'; import 'package:figma/src/models.dart'; import 'package:json_annotation/json_annotation.dart'; import 'package:copy_with_extension/copy_with_extension.dart'; @@ -36,6 +37,8 @@ class Group extends Frame { required super.paddingRight, required super.paddingTop, required super.size, + required super.preserveRatio, + required super.layoutGrow, super.styles, super.componentPropertyReferencesMap, super.absoluteBoundingBox, @@ -50,7 +53,6 @@ class Group extends Frame { super.cornerRadius, super.rectangleCornerRadii, super.blendMode, - super.preserveRatio, super.constraints, super.layoutAlign, super.transitionNodeID, diff --git a/lib/src/models/group.g.dart b/lib/src/models/group.g.dart index 496e807..60bdf1e 100644 --- a/lib/src/models/group.g.dart +++ b/lib/src/models/group.g.dart @@ -19,7 +19,7 @@ abstract class _$GroupCWProxy { Group exportSettings(List exportSettings); - Group children(List children); + Group children(List? children); Group opacity(double opacity); @@ -63,6 +63,10 @@ abstract class _$GroupCWProxy { Group size(Vector2D? size); + Group preserveRatio(bool preserveRatio); + + Group layoutGrow(double layoutGrow); + Group styles(Map? styles); Group componentPropertyReferencesMap( @@ -92,8 +96,6 @@ abstract class _$GroupCWProxy { Group blendMode(BlendMode? blendMode); - Group preserveRatio(bool? preserveRatio); - Group constraints(LayoutConstraint? constraints); Group layoutAlign(LayoutAlign? layoutAlign); @@ -123,7 +125,7 @@ abstract class _$GroupCWProxy { List? fills, List? strokes, List? exportSettings, - List? children, + List? children, double? opacity, LayoutPositioning? layoutPositioning, bool? itemReverseZIndex, @@ -145,6 +147,8 @@ abstract class _$GroupCWProxy { double? paddingRight, double? paddingTop, Vector2D? size, + bool? preserveRatio, + double? layoutGrow, Map? styles, Map? componentPropertyReferencesMap, SizeRectangle? absoluteBoundingBox, @@ -159,7 +163,6 @@ abstract class _$GroupCWProxy { double? cornerRadius, List? rectangleCornerRadii, BlendMode? blendMode, - bool? preserveRatio, LayoutConstraint? constraints, LayoutAlign? layoutAlign, String? transitionNodeID, @@ -197,7 +200,7 @@ class _$GroupCWProxyImpl implements _$GroupCWProxy { this(exportSettings: exportSettings); @override - Group children(List children) => this(children: children); + Group children(List? children) => this(children: children); @override Group opacity(double opacity) => this(opacity: opacity); @@ -274,6 +277,12 @@ class _$GroupCWProxyImpl implements _$GroupCWProxy { @override Group size(Vector2D? size) => this(size: size); + @override + Group preserveRatio(bool preserveRatio) => this(preserveRatio: preserveRatio); + + @override + Group layoutGrow(double layoutGrow) => this(layoutGrow: layoutGrow); + @override Group styles(Map? styles) => this(styles: styles); @@ -322,10 +331,6 @@ class _$GroupCWProxyImpl implements _$GroupCWProxy { @override Group blendMode(BlendMode? blendMode) => this(blendMode: blendMode); - @override - Group preserveRatio(bool? preserveRatio) => - this(preserveRatio: preserveRatio); - @override Group constraints(LayoutConstraint? constraints) => this(constraints: constraints); @@ -392,6 +397,8 @@ class _$GroupCWProxyImpl implements _$GroupCWProxy { Object? paddingRight = const $CopyWithPlaceholder(), Object? paddingTop = const $CopyWithPlaceholder(), Object? size = const $CopyWithPlaceholder(), + Object? preserveRatio = const $CopyWithPlaceholder(), + Object? layoutGrow = const $CopyWithPlaceholder(), Object? styles = const $CopyWithPlaceholder(), Object? componentPropertyReferencesMap = const $CopyWithPlaceholder(), Object? absoluteBoundingBox = const $CopyWithPlaceholder(), @@ -406,7 +413,6 @@ class _$GroupCWProxyImpl implements _$GroupCWProxy { Object? cornerRadius = const $CopyWithPlaceholder(), Object? rectangleCornerRadii = const $CopyWithPlaceholder(), Object? blendMode = const $CopyWithPlaceholder(), - Object? preserveRatio = const $CopyWithPlaceholder(), Object? constraints = const $CopyWithPlaceholder(), Object? layoutAlign = const $CopyWithPlaceholder(), Object? transitionNodeID = const $CopyWithPlaceholder(), @@ -442,10 +448,10 @@ class _$GroupCWProxyImpl implements _$GroupCWProxy { ? _value.exportSettings // ignore: cast_nullable_to_non_nullable : exportSettings as List, - children: children == const $CopyWithPlaceholder() || children == null + children: children == const $CopyWithPlaceholder() ? _value.children // ignore: cast_nullable_to_non_nullable - : children as List, + : children as List?, opacity: opacity == const $CopyWithPlaceholder() || opacity == null ? _value.opacity // ignore: cast_nullable_to_non_nullable @@ -552,6 +558,16 @@ class _$GroupCWProxyImpl implements _$GroupCWProxy { ? _value.size // ignore: cast_nullable_to_non_nullable : size as Vector2D?, + preserveRatio: + preserveRatio == const $CopyWithPlaceholder() || preserveRatio == null + ? _value.preserveRatio + // ignore: cast_nullable_to_non_nullable + : preserveRatio as bool, + layoutGrow: + layoutGrow == const $CopyWithPlaceholder() || layoutGrow == null + ? _value.layoutGrow + // ignore: cast_nullable_to_non_nullable + : layoutGrow as double, styles: styles == const $CopyWithPlaceholder() ? _value.styles // ignore: cast_nullable_to_non_nullable @@ -611,10 +627,6 @@ class _$GroupCWProxyImpl implements _$GroupCWProxy { ? _value.blendMode // ignore: cast_nullable_to_non_nullable : blendMode as BlendMode?, - preserveRatio: preserveRatio == const $CopyWithPlaceholder() - ? _value.preserveRatio - // ignore: cast_nullable_to_non_nullable - : preserveRatio as bool?, constraints: constraints == const $CopyWithPlaceholder() ? _value.constraints // ignore: cast_nullable_to_non_nullable @@ -678,8 +690,8 @@ Group _$GroupFromJson(Map json) => Group( ?.map((e) => ExportSetting.fromJson(e as Map)) .toList() ?? [], - children: (json['children'] as List) - .map((e) => Node.fromJson(e as Map)) + children: (json['children'] as List?) + ?.map(const NodeJsonConverter().fromJson) .toList(), opacity: (json['opacity'] as num?)?.toDouble() ?? 1.0, layoutPositioning: $enumDecodeNullable( @@ -723,6 +735,8 @@ Group _$GroupFromJson(Map json) => Group( size: json['size'] == null ? null : Vector2D.fromJson(json['size'] as Map), + preserveRatio: json['preserveRatio'] as bool? ?? false, + layoutGrow: (json['layoutGrow'] as num?)?.toDouble() ?? 0.0, styles: (json['styles'] as Map?)?.map( (k, e) => MapEntry($enumDecode(_$StyleTypeKeyEnumMap, k), e as String), ), @@ -752,7 +766,6 @@ Group _$GroupFromJson(Map json) => Group( ?.map((e) => (e as num).toDouble()) .toList(), blendMode: $enumDecodeNullable(_$BlendModeEnumMap, json['blendMode']), - preserveRatio: json['preserveRatio'] as bool? ?? false, constraints: json['constraints'] == null ? null : LayoutConstraint.fromJson( @@ -784,7 +797,8 @@ Map _$GroupToJson(Group instance) => { 'sharedPluginData': instance.sharedPluginData, 'rotation': instance.rotation, 'componentPropertyReferencesMap': instance.componentPropertyReferencesMap, - 'children': instance.children, + 'children': + instance.children?.map(const NodeJsonConverter().toJson).toList(), 'locked': instance.locked, 'fills': instance.fills, 'strokes': instance.strokes, @@ -796,6 +810,7 @@ Map _$GroupToJson(Group instance) => { 'exportSettings': instance.exportSettings, 'blendMode': _$BlendModeEnumMap[instance.blendMode], 'preserveRatio': instance.preserveRatio, + 'layoutGrow': instance.layoutGrow, 'constraints': instance.constraints, 'layoutAlign': _$LayoutAlignEnumMap[instance.layoutAlign], 'transitionNodeID': instance.transitionNodeID, diff --git a/lib/src/models/instance.dart b/lib/src/models/instance.dart index a41b10f..3cc724a 100644 --- a/lib/src/models/instance.dart +++ b/lib/src/models/instance.dart @@ -1,3 +1,4 @@ +import 'package:figma/src/converters/converters.dart'; import 'package:figma/src/models.dart'; import 'package:json_annotation/json_annotation.dart'; import 'package:copy_with_extension/copy_with_extension.dart'; @@ -36,6 +37,8 @@ class Instance extends Frame { required super.paddingRight, required super.paddingTop, required super.size, + required super.preserveRatio, + required super.layoutGrow, super.styles, super.componentPropertyReferencesMap, super.absoluteBoundingBox, @@ -50,7 +53,6 @@ class Instance extends Frame { super.cornerRadius, super.rectangleCornerRadii, super.blendMode, - super.preserveRatio, super.constraints, super.layoutAlign, super.transitionNodeID, diff --git a/lib/src/models/instance.g.dart b/lib/src/models/instance.g.dart index 230ed7e..998e36c 100644 --- a/lib/src/models/instance.g.dart +++ b/lib/src/models/instance.g.dart @@ -19,7 +19,7 @@ abstract class _$InstanceCWProxy { Instance exportSettings(List exportSettings); - Instance children(List children); + Instance children(List? children); Instance opacity(double opacity); @@ -63,6 +63,10 @@ abstract class _$InstanceCWProxy { Instance size(Vector2D? size); + Instance preserveRatio(bool preserveRatio); + + Instance layoutGrow(double layoutGrow); + Instance styles(Map? styles); Instance componentPropertyReferencesMap( @@ -92,8 +96,6 @@ abstract class _$InstanceCWProxy { Instance blendMode(BlendMode? blendMode); - Instance preserveRatio(bool? preserveRatio); - Instance constraints(LayoutConstraint? constraints); Instance layoutAlign(LayoutAlign? layoutAlign); @@ -132,7 +134,7 @@ abstract class _$InstanceCWProxy { List? fills, List? strokes, List? exportSettings, - List? children, + List? children, double? opacity, LayoutPositioning? layoutPositioning, bool? itemReverseZIndex, @@ -154,6 +156,8 @@ abstract class _$InstanceCWProxy { double? paddingRight, double? paddingTop, Vector2D? size, + bool? preserveRatio, + double? layoutGrow, Map? styles, Map? componentPropertyReferencesMap, SizeRectangle? absoluteBoundingBox, @@ -168,7 +172,6 @@ abstract class _$InstanceCWProxy { double? cornerRadius, List? rectangleCornerRadii, BlendMode? blendMode, - bool? preserveRatio, LayoutConstraint? constraints, LayoutAlign? layoutAlign, String? transitionNodeID, @@ -210,7 +213,7 @@ class _$InstanceCWProxyImpl implements _$InstanceCWProxy { this(exportSettings: exportSettings); @override - Instance children(List children) => this(children: children); + Instance children(List? children) => this(children: children); @override Instance opacity(double opacity) => this(opacity: opacity); @@ -289,6 +292,13 @@ class _$InstanceCWProxyImpl implements _$InstanceCWProxy { @override Instance size(Vector2D? size) => this(size: size); + @override + Instance preserveRatio(bool preserveRatio) => + this(preserveRatio: preserveRatio); + + @override + Instance layoutGrow(double layoutGrow) => this(layoutGrow: layoutGrow); + @override Instance styles(Map? styles) => this(styles: styles); @@ -340,10 +350,6 @@ class _$InstanceCWProxyImpl implements _$InstanceCWProxy { @override Instance blendMode(BlendMode? blendMode) => this(blendMode: blendMode); - @override - Instance preserveRatio(bool? preserveRatio) => - this(preserveRatio: preserveRatio); - @override Instance constraints(LayoutConstraint? constraints) => this(constraints: constraints); @@ -427,6 +433,8 @@ class _$InstanceCWProxyImpl implements _$InstanceCWProxy { Object? paddingRight = const $CopyWithPlaceholder(), Object? paddingTop = const $CopyWithPlaceholder(), Object? size = const $CopyWithPlaceholder(), + Object? preserveRatio = const $CopyWithPlaceholder(), + Object? layoutGrow = const $CopyWithPlaceholder(), Object? styles = const $CopyWithPlaceholder(), Object? componentPropertyReferencesMap = const $CopyWithPlaceholder(), Object? absoluteBoundingBox = const $CopyWithPlaceholder(), @@ -441,7 +449,6 @@ class _$InstanceCWProxyImpl implements _$InstanceCWProxy { Object? cornerRadius = const $CopyWithPlaceholder(), Object? rectangleCornerRadii = const $CopyWithPlaceholder(), Object? blendMode = const $CopyWithPlaceholder(), - Object? preserveRatio = const $CopyWithPlaceholder(), Object? constraints = const $CopyWithPlaceholder(), Object? layoutAlign = const $CopyWithPlaceholder(), Object? transitionNodeID = const $CopyWithPlaceholder(), @@ -481,10 +488,10 @@ class _$InstanceCWProxyImpl implements _$InstanceCWProxy { ? _value.exportSettings // ignore: cast_nullable_to_non_nullable : exportSettings as List, - children: children == const $CopyWithPlaceholder() || children == null + children: children == const $CopyWithPlaceholder() ? _value.children // ignore: cast_nullable_to_non_nullable - : children as List, + : children as List?, opacity: opacity == const $CopyWithPlaceholder() || opacity == null ? _value.opacity // ignore: cast_nullable_to_non_nullable @@ -591,6 +598,16 @@ class _$InstanceCWProxyImpl implements _$InstanceCWProxy { ? _value.size // ignore: cast_nullable_to_non_nullable : size as Vector2D?, + preserveRatio: + preserveRatio == const $CopyWithPlaceholder() || preserveRatio == null + ? _value.preserveRatio + // ignore: cast_nullable_to_non_nullable + : preserveRatio as bool, + layoutGrow: + layoutGrow == const $CopyWithPlaceholder() || layoutGrow == null + ? _value.layoutGrow + // ignore: cast_nullable_to_non_nullable + : layoutGrow as double, styles: styles == const $CopyWithPlaceholder() ? _value.styles // ignore: cast_nullable_to_non_nullable @@ -650,10 +667,6 @@ class _$InstanceCWProxyImpl implements _$InstanceCWProxy { ? _value.blendMode // ignore: cast_nullable_to_non_nullable : blendMode as BlendMode?, - preserveRatio: preserveRatio == const $CopyWithPlaceholder() - ? _value.preserveRatio - // ignore: cast_nullable_to_non_nullable - : preserveRatio as bool?, constraints: constraints == const $CopyWithPlaceholder() ? _value.constraints // ignore: cast_nullable_to_non_nullable @@ -737,8 +750,8 @@ Instance _$InstanceFromJson(Map json) => Instance( ?.map((e) => ExportSetting.fromJson(e as Map)) .toList() ?? [], - children: (json['children'] as List) - .map((e) => Node.fromJson(e as Map)) + children: (json['children'] as List?) + ?.map(const NodeJsonConverter().fromJson) .toList(), opacity: (json['opacity'] as num?)?.toDouble() ?? 1.0, layoutPositioning: $enumDecodeNullable( @@ -782,6 +795,8 @@ Instance _$InstanceFromJson(Map json) => Instance( size: json['size'] == null ? null : Vector2D.fromJson(json['size'] as Map), + preserveRatio: json['preserveRatio'] as bool? ?? false, + layoutGrow: (json['layoutGrow'] as num?)?.toDouble() ?? 0.0, styles: (json['styles'] as Map?)?.map( (k, e) => MapEntry($enumDecode(_$StyleTypeKeyEnumMap, k), e as String), ), @@ -811,7 +826,6 @@ Instance _$InstanceFromJson(Map json) => Instance( ?.map((e) => (e as num).toDouble()) .toList(), blendMode: $enumDecodeNullable(_$BlendModeEnumMap, json['blendMode']), - preserveRatio: json['preserveRatio'] as bool? ?? false, constraints: json['constraints'] == null ? null : LayoutConstraint.fromJson( @@ -855,7 +869,8 @@ Map _$InstanceToJson(Instance instance) => { 'sharedPluginData': instance.sharedPluginData, 'rotation': instance.rotation, 'componentPropertyReferencesMap': instance.componentPropertyReferencesMap, - 'children': instance.children, + 'children': + instance.children?.map(const NodeJsonConverter().toJson).toList(), 'locked': instance.locked, 'fills': instance.fills, 'strokes': instance.strokes, @@ -867,6 +882,7 @@ Map _$InstanceToJson(Instance instance) => { 'exportSettings': instance.exportSettings, 'blendMode': _$BlendModeEnumMap[instance.blendMode], 'preserveRatio': instance.preserveRatio, + 'layoutGrow': instance.layoutGrow, 'constraints': instance.constraints, 'layoutAlign': _$LayoutAlignEnumMap[instance.layoutAlign], 'transitionNodeID': instance.transitionNodeID, diff --git a/lib/src/models/line.g.dart b/lib/src/models/line.g.dart index 4164eea..0059813 100644 --- a/lib/src/models/line.g.dart +++ b/lib/src/models/line.g.dart @@ -78,7 +78,7 @@ abstract class _$LineCWProxy { Line absoluteRenderBounds(SizeRectangle? absoluteRenderBounds); - Line fillOverrideTable(Map? fillOverrideTable); + Line fillOverrideTable(Map? fillOverrideTable); Line individualStrokeWeights(StrokeWeights? individualStrokeWeights); @@ -124,7 +124,7 @@ abstract class _$LineCWProxy { StrokeAlign? strokeAlign, Map? styles, SizeRectangle? absoluteRenderBounds, - Map? fillOverrideTable, + Map? fillOverrideTable, StrokeWeights? individualStrokeWeights, }); } @@ -256,7 +256,7 @@ class _$LineCWProxyImpl implements _$LineCWProxy { this(absoluteRenderBounds: absoluteRenderBounds); @override - Line fillOverrideTable(Map? fillOverrideTable) => + Line fillOverrideTable(Map? fillOverrideTable) => this(fillOverrideTable: fillOverrideTable); @override @@ -464,7 +464,7 @@ class _$LineCWProxyImpl implements _$LineCWProxy { fillOverrideTable: fillOverrideTable == const $CopyWithPlaceholder() ? _value.fillOverrideTable // ignore: cast_nullable_to_non_nullable - : fillOverrideTable as Map?, + : fillOverrideTable as Map?, individualStrokeWeights: individualStrokeWeights == const $CopyWithPlaceholder() ? _value.individualStrokeWeights @@ -566,7 +566,10 @@ Line _$LineFromJson(Map json) => Line( fillOverrideTable: (json['fillOverrideTable'] as Map?)?.map( (k, e) => MapEntry( - int.parse(k), PaintOverride.fromJson(e as Map)), + int.parse(k), + e == null + ? null + : PaintOverride.fromJson(e as Map)), ), individualStrokeWeights: json['individualStrokeWeights'] == null ? null diff --git a/lib/src/models/rectangle.g.dart b/lib/src/models/rectangle.g.dart index 2436e64..9bfdb8d 100644 --- a/lib/src/models/rectangle.g.dart +++ b/lib/src/models/rectangle.g.dart @@ -78,7 +78,7 @@ abstract class _$RectangleCWProxy { Rectangle absoluteRenderBounds(SizeRectangle? absoluteRenderBounds); - Rectangle fillOverrideTable(Map? fillOverrideTable); + Rectangle fillOverrideTable(Map? fillOverrideTable); Rectangle individualStrokeWeights(StrokeWeights? individualStrokeWeights); @@ -128,7 +128,7 @@ abstract class _$RectangleCWProxy { StrokeAlign? strokeAlign, Map? styles, SizeRectangle? absoluteRenderBounds, - Map? fillOverrideTable, + Map? fillOverrideTable, StrokeWeights? individualStrokeWeights, double? cornerRadius, List? rectangleCornerRadii, @@ -266,7 +266,7 @@ class _$RectangleCWProxyImpl implements _$RectangleCWProxy { this(absoluteRenderBounds: absoluteRenderBounds); @override - Rectangle fillOverrideTable(Map? fillOverrideTable) => + Rectangle fillOverrideTable(Map? fillOverrideTable) => this(fillOverrideTable: fillOverrideTable); @override @@ -484,7 +484,7 @@ class _$RectangleCWProxyImpl implements _$RectangleCWProxy { fillOverrideTable: fillOverrideTable == const $CopyWithPlaceholder() ? _value.fillOverrideTable // ignore: cast_nullable_to_non_nullable - : fillOverrideTable as Map?, + : fillOverrideTable as Map?, individualStrokeWeights: individualStrokeWeights == const $CopyWithPlaceholder() ? _value.individualStrokeWeights @@ -594,7 +594,10 @@ Rectangle _$RectangleFromJson(Map json) => Rectangle( fillOverrideTable: (json['fillOverrideTable'] as Map?)?.map( (k, e) => MapEntry( - int.parse(k), PaintOverride.fromJson(e as Map)), + int.parse(k), + e == null + ? null + : PaintOverride.fromJson(e as Map)), ), individualStrokeWeights: json['individualStrokeWeights'] == null ? null diff --git a/lib/src/models/regular_polygon.g.dart b/lib/src/models/regular_polygon.g.dart index 6aae6ed..13a3f8f 100644 --- a/lib/src/models/regular_polygon.g.dart +++ b/lib/src/models/regular_polygon.g.dart @@ -78,7 +78,7 @@ abstract class _$RegularPolygonCWProxy { RegularPolygon absoluteRenderBounds(SizeRectangle? absoluteRenderBounds); - RegularPolygon fillOverrideTable(Map? fillOverrideTable); + RegularPolygon fillOverrideTable(Map? fillOverrideTable); RegularPolygon individualStrokeWeights( StrokeWeights? individualStrokeWeights); @@ -125,7 +125,7 @@ abstract class _$RegularPolygonCWProxy { StrokeAlign? strokeAlign, Map? styles, SizeRectangle? absoluteRenderBounds, - Map? fillOverrideTable, + Map? fillOverrideTable, StrokeWeights? individualStrokeWeights, }); } @@ -264,7 +264,7 @@ class _$RegularPolygonCWProxyImpl implements _$RegularPolygonCWProxy { @override RegularPolygon fillOverrideTable( - Map? fillOverrideTable) => + Map? fillOverrideTable) => this(fillOverrideTable: fillOverrideTable); @override @@ -473,7 +473,7 @@ class _$RegularPolygonCWProxyImpl implements _$RegularPolygonCWProxy { fillOverrideTable: fillOverrideTable == const $CopyWithPlaceholder() ? _value.fillOverrideTable // ignore: cast_nullable_to_non_nullable - : fillOverrideTable as Map?, + : fillOverrideTable as Map?, individualStrokeWeights: individualStrokeWeights == const $CopyWithPlaceholder() ? _value.individualStrokeWeights @@ -576,7 +576,10 @@ RegularPolygon _$RegularPolygonFromJson(Map json) => fillOverrideTable: (json['fillOverrideTable'] as Map?)?.map( (k, e) => MapEntry( - int.parse(k), PaintOverride.fromJson(e as Map)), + int.parse(k), + e == null + ? null + : PaintOverride.fromJson(e as Map)), ), individualStrokeWeights: json['individualStrokeWeights'] == null ? null diff --git a/lib/src/models/service/image_response.g.dart b/lib/src/models/service/image_response.g.dart index 882ad0f..296fd8a 100644 --- a/lib/src/models/service/image_response.g.dart +++ b/lib/src/models/service/image_response.g.dart @@ -99,8 +99,10 @@ ImageResponse _$ImageResponseFromJson(Map json) => images: (json['images'] as Map?)?.map( (k, e) => MapEntry(k, e as String), ), - imageFills: (ImageResponse._readValueWithString(json, 'meta'))?.map( - (k, e) => MapEntry(k, e), + imageFills: (ImageResponse._readValueWithString(json, 'meta') + as Map?) + ?.map( + (k, e) => MapEntry(k, e as String), ), status: json['status'] as int?, ); diff --git a/lib/src/models/star.g.dart b/lib/src/models/star.g.dart index 2c38dfa..a7c9bbb 100644 --- a/lib/src/models/star.g.dart +++ b/lib/src/models/star.g.dart @@ -78,7 +78,7 @@ abstract class _$StarCWProxy { Star absoluteRenderBounds(SizeRectangle? absoluteRenderBounds); - Star fillOverrideTable(Map? fillOverrideTable); + Star fillOverrideTable(Map? fillOverrideTable); Star individualStrokeWeights(StrokeWeights? individualStrokeWeights); @@ -124,7 +124,7 @@ abstract class _$StarCWProxy { StrokeAlign? strokeAlign, Map? styles, SizeRectangle? absoluteRenderBounds, - Map? fillOverrideTable, + Map? fillOverrideTable, StrokeWeights? individualStrokeWeights, }); } @@ -256,7 +256,7 @@ class _$StarCWProxyImpl implements _$StarCWProxy { this(absoluteRenderBounds: absoluteRenderBounds); @override - Star fillOverrideTable(Map? fillOverrideTable) => + Star fillOverrideTable(Map? fillOverrideTable) => this(fillOverrideTable: fillOverrideTable); @override @@ -464,7 +464,7 @@ class _$StarCWProxyImpl implements _$StarCWProxy { fillOverrideTable: fillOverrideTable == const $CopyWithPlaceholder() ? _value.fillOverrideTable // ignore: cast_nullable_to_non_nullable - : fillOverrideTable as Map?, + : fillOverrideTable as Map?, individualStrokeWeights: individualStrokeWeights == const $CopyWithPlaceholder() ? _value.individualStrokeWeights @@ -566,7 +566,10 @@ Star _$StarFromJson(Map json) => Star( fillOverrideTable: (json['fillOverrideTable'] as Map?)?.map( (k, e) => MapEntry( - int.parse(k), PaintOverride.fromJson(e as Map)), + int.parse(k), + e == null + ? null + : PaintOverride.fromJson(e as Map)), ), individualStrokeWeights: json['individualStrokeWeights'] == null ? null diff --git a/lib/src/models/text.g.dart b/lib/src/models/text.g.dart index 478cd46..471a7c0 100644 --- a/lib/src/models/text.g.dart +++ b/lib/src/models/text.g.dart @@ -78,7 +78,7 @@ abstract class _$TextCWProxy { Text absoluteRenderBounds(SizeRectangle? absoluteRenderBounds); - Text fillOverrideTable(Map? fillOverrideTable); + Text fillOverrideTable(Map? fillOverrideTable); Text individualStrokeWeights(StrokeWeights? individualStrokeWeights); @@ -136,7 +136,7 @@ abstract class _$TextCWProxy { StrokeAlign? strokeAlign, Map? styles, SizeRectangle? absoluteRenderBounds, - Map? fillOverrideTable, + Map? fillOverrideTable, StrokeWeights? individualStrokeWeights, String? characters, TypeStyle? style, @@ -274,7 +274,7 @@ class _$TextCWProxyImpl implements _$TextCWProxy { this(absoluteRenderBounds: absoluteRenderBounds); @override - Text fillOverrideTable(Map? fillOverrideTable) => + Text fillOverrideTable(Map? fillOverrideTable) => this(fillOverrideTable: fillOverrideTable); @override @@ -509,7 +509,7 @@ class _$TextCWProxyImpl implements _$TextCWProxy { fillOverrideTable: fillOverrideTable == const $CopyWithPlaceholder() ? _value.fillOverrideTable // ignore: cast_nullable_to_non_nullable - : fillOverrideTable as Map?, + : fillOverrideTable as Map?, individualStrokeWeights: individualStrokeWeights == const $CopyWithPlaceholder() ? _value.individualStrokeWeights @@ -636,7 +636,10 @@ Text _$TextFromJson(Map json) => Text( fillOverrideTable: (json['fillOverrideTable'] as Map?)?.map( (k, e) => MapEntry( - int.parse(k), PaintOverride.fromJson(e as Map)), + int.parse(k), + e == null + ? null + : PaintOverride.fromJson(e as Map)), ), individualStrokeWeights: json['individualStrokeWeights'] == null ? null diff --git a/lib/src/models/vector.dart b/lib/src/models/vector.dart index 7a54b81..747e922 100644 --- a/lib/src/models/vector.dart +++ b/lib/src/models/vector.dart @@ -88,7 +88,7 @@ class Vector extends Node { /// Map from ID to PaintOverride for looking up fill overrides. To see which /// regions are overriden, you must use the geometry=paths option. Each path /// returned may have an overrideId which maps to this table. - final Map? fillOverrideTable; + final Map? fillOverrideTable; /// An array of stroke paints applied to the node. @JsonKey(defaultValue: []) diff --git a/lib/src/models/vector.g.dart b/lib/src/models/vector.g.dart index 4fed7fa..4b0848e 100644 --- a/lib/src/models/vector.g.dart +++ b/lib/src/models/vector.g.dart @@ -80,7 +80,7 @@ abstract class _$VectorCWProxy { Vector absoluteRenderBounds(SizeRectangle? absoluteRenderBounds); - Vector fillOverrideTable(Map? fillOverrideTable); + Vector fillOverrideTable(Map? fillOverrideTable); /// This function **does support** nullification of nullable fields. All `null` values passed to `non-nullable` fields will be ignored. You can also use `Vector(...).copyWith.fieldName(...)` to override fields one at a time with nullification support. /// @@ -125,7 +125,7 @@ abstract class _$VectorCWProxy { StrokeAlign? strokeAlign, Map? styles, SizeRectangle? absoluteRenderBounds, - Map? fillOverrideTable, + Map? fillOverrideTable, }); } @@ -263,7 +263,7 @@ class _$VectorCWProxyImpl implements _$VectorCWProxy { this(absoluteRenderBounds: absoluteRenderBounds); @override - Vector fillOverrideTable(Map? fillOverrideTable) => + Vector fillOverrideTable(Map? fillOverrideTable) => this(fillOverrideTable: fillOverrideTable); @override @@ -472,7 +472,7 @@ class _$VectorCWProxyImpl implements _$VectorCWProxy { fillOverrideTable: fillOverrideTable == const $CopyWithPlaceholder() ? _value.fillOverrideTable // ignore: cast_nullable_to_non_nullable - : fillOverrideTable as Map?, + : fillOverrideTable as Map?, ); } } @@ -573,7 +573,10 @@ Vector _$VectorFromJson(Map json) => Vector( fillOverrideTable: (json['fillOverrideTable'] as Map?)?.map( (k, e) => MapEntry( - int.parse(k), PaintOverride.fromJson(e as Map)), + int.parse(k), + e == null + ? null + : PaintOverride.fromJson(e as Map)), ), );