Skip to content

Migrated To Null Safety #9

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 1 commit into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions example/ios/Flutter/Debug.xcconfig
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"
#include "Generated.xcconfig"
1 change: 1 addition & 0 deletions example/ios/Flutter/Release.xcconfig
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"
#include "Generated.xcconfig"
41 changes: 41 additions & 0 deletions example/ios/Podfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# Uncomment this line to define a global platform for your project
# platform :ios, '9.0'

# CocoaPods analytics sends network stats synchronously affecting flutter build latency.
ENV['COCOAPODS_DISABLE_STATS'] = 'true'

project 'Runner', {
'Debug' => :debug,
'Profile' => :release,
'Release' => :release,
}

def flutter_root
generated_xcode_build_settings_path = File.expand_path(File.join('..', 'Flutter', 'Generated.xcconfig'), __FILE__)
unless File.exist?(generated_xcode_build_settings_path)
raise "#{generated_xcode_build_settings_path} must exist. If you're running pod install manually, make sure flutter pub get is executed first"
end

File.foreach(generated_xcode_build_settings_path) do |line|
matches = line.match(/FLUTTER_ROOT\=(.*)/)
return matches[1].strip if matches
end
raise "FLUTTER_ROOT not found in #{generated_xcode_build_settings_path}. Try deleting Generated.xcconfig, then run flutter pub get"
end

require File.expand_path(File.join('packages', 'flutter_tools', 'bin', 'podhelper'), flutter_root)

flutter_ios_podfile_setup

target 'Runner' do
use_frameworks!
use_modular_headers!

flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__))
end

post_install do |installer|
installer.pods_project.targets.each do |target|
flutter_additional_ios_build_settings(target)
end
end
97 changes: 38 additions & 59 deletions example/pubspec.lock
Original file line number Diff line number Diff line change
@@ -1,27 +1,13 @@
# Generated by pub
# See https://dart.dev/tools/pub/glossary#lockfile
packages:
archive:
dependency: transitive
description:
name: archive
url: "https://pub.dartlang.org"
source: hosted
version: "2.0.13"
args:
dependency: transitive
description:
name: args
url: "https://pub.dartlang.org"
source: hosted
version: "1.6.0"
async:
dependency: transitive
description:
name: async
url: "https://pub.dartlang.org"
source: hosted
version: "2.4.1"
version: "2.6.1"
blobs:
dependency: "direct main"
description:
Expand All @@ -35,21 +21,35 @@ packages:
name: boolean_selector
url: "https://pub.dartlang.org"
source: hosted
version: "2.0.0"
version: "2.1.0"
characters:
dependency: transitive
description:
name: characters
url: "https://pub.dartlang.org"
source: hosted
version: "1.1.0"
charcode:
dependency: transitive
description:
name: charcode
url: "https://pub.dartlang.org"
source: hosted
version: "1.1.3"
version: "1.2.0"
clock:
dependency: transitive
description:
name: clock
url: "https://pub.dartlang.org"
source: hosted
version: "1.1.0"
collection:
dependency: transitive
description:
name: collection
url: "https://pub.dartlang.org"
source: hosted
version: "1.14.12"
version: "1.15.0"
convert:
dependency: transitive
description:
Expand All @@ -71,6 +71,13 @@ packages:
url: "https://pub.dartlang.org"
source: hosted
version: "0.1.3"
fake_async:
dependency: transitive
description:
name: fake_async
url: "https://pub.dartlang.org"
source: hosted
version: "1.2.0"
flutter:
dependency: "direct main"
description: flutter
Expand Down Expand Up @@ -102,34 +109,27 @@ packages:
url: "https://pub.dartlang.org"
source: hosted
version: "3.1.4"
image:
dependency: transitive
description:
name: image
url: "https://pub.dartlang.org"
source: hosted
version: "2.1.12"
matcher:
dependency: transitive
description:
name: matcher
url: "https://pub.dartlang.org"
source: hosted
version: "0.12.6"
version: "0.12.10"
meta:
dependency: transitive
description:
name: meta
url: "https://pub.dartlang.org"
source: hosted
version: "1.1.8"
version: "1.3.0"
path:
dependency: transitive
description:
name: path
url: "https://pub.dartlang.org"
source: hosted
version: "1.6.4"
version: "1.8.0"
path_provider:
dependency: transitive
description:
Expand Down Expand Up @@ -158,13 +158,6 @@ packages:
url: "https://pub.dartlang.org"
source: hosted
version: "1.9.0"
petitparser:
dependency: transitive
description:
name: petitparser
url: "https://pub.dartlang.org"
source: hosted
version: "2.4.0"
platform:
dependency: transitive
description:
Expand All @@ -179,13 +172,6 @@ packages:
url: "https://pub.dartlang.org"
source: hosted
version: "1.0.2"
quiver:
dependency: transitive
description:
name: quiver
url: "https://pub.dartlang.org"
source: hosted
version: "2.1.3"
sky_engine:
dependency: transitive
description: flutter
Expand All @@ -197,63 +183,56 @@ packages:
name: source_span
url: "https://pub.dartlang.org"
source: hosted
version: "1.7.0"
version: "1.8.1"
stack_trace:
dependency: transitive
description:
name: stack_trace
url: "https://pub.dartlang.org"
source: hosted
version: "1.9.3"
version: "1.10.0"
stream_channel:
dependency: transitive
description:
name: stream_channel
url: "https://pub.dartlang.org"
source: hosted
version: "2.0.0"
version: "2.1.0"
string_scanner:
dependency: transitive
description:
name: string_scanner
url: "https://pub.dartlang.org"
source: hosted
version: "1.0.5"
version: "1.1.0"
term_glyph:
dependency: transitive
description:
name: term_glyph
url: "https://pub.dartlang.org"
source: hosted
version: "1.1.0"
version: "1.2.0"
test_api:
dependency: transitive
description:
name: test_api
url: "https://pub.dartlang.org"
source: hosted
version: "0.2.15"
version: "0.3.0"
typed_data:
dependency: transitive
description:
name: typed_data
url: "https://pub.dartlang.org"
source: hosted
version: "1.1.6"
version: "1.3.0"
vector_math:
dependency: transitive
description:
name: vector_math
url: "https://pub.dartlang.org"
source: hosted
version: "2.0.8"
xml:
dependency: transitive
description:
name: xml
url: "https://pub.dartlang.org"
source: hosted
version: "3.6.1"
version: "2.1.0"
sdks:
dart: ">=2.7.0 <3.0.0"
flutter: ">=1.17.0 <2.0.0"
dart: ">=2.12.0 <3.0.0"
flutter: ">=1.17.0"
8 changes: 4 additions & 4 deletions lib/src/clipper/clipper.dart
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,13 @@ import 'package:blobs/src/services/blob_generator.dart';
import 'package:flutter/material.dart';

class BlobClipper extends CustomClipper<Path> {
final String id;
final String? id;
final int edgesCount;
final int minGrowth;
BlobClipper({
this.id,
this.edgesCount = BlobConfig.edgesCount,
this.minGrowth = BlobConfig.minGrowth,
this.edgesCount = BlobConfig.edgesCount as int,
this.minGrowth = BlobConfig.minGrowth as int,
});

@override
Expand All @@ -21,7 +21,7 @@ class BlobClipper extends CustomClipper<Path> {
minGrowth: minGrowth,
size: size,
).generate();
return connectPoints(blobData.curves);
return connectPoints(blobData.curves!);
}

@override
Expand Down
34 changes: 17 additions & 17 deletions lib/src/models.dart
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
import 'package:flutter/material.dart';

class BlobData {
int growth;
num size;
int edges;
BlobPoints points;
String id;
Path path;
String svgPath;
BlobCurves curves;
int? growth;
num? size;
int? edges;
BlobPoints? points;
String? id;
Path? path;
String? svgPath;
BlobCurves? curves;

BlobData({
this.growth,
Expand All @@ -32,10 +32,10 @@ class BlobCurves {
enum BlobFillType { fill, stroke }

class BlobStyles {
Color color;
Shader gradient;
int strokeWidth;
BlobFillType fillType;
Color? color;
Shader? gradient;
int? strokeWidth;
BlobFillType? fillType;
BlobStyles({
this.color,
this.gradient,
Expand All @@ -45,11 +45,11 @@ class BlobStyles {
}

class BlobPoints {
List<Offset> originPoints;
List<Offset> destPoints;
Offset center;
double innerRad;
String id;
List<Offset>? originPoints;
List<Offset>? destPoints;
Offset? center;
double? innerRad;
String? id;
BlobPoints({
this.originPoints,
this.destPoints,
Expand Down
18 changes: 9 additions & 9 deletions lib/src/painter/painter.dart
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,9 @@ import 'package:blobs/src/painter/tools.dart';
import 'package:flutter/material.dart';

class BlobPainter extends CustomPainter {
final BlobData blobData;
final bool debug;
final BlobStyles styles;
final BlobData? blobData;
final bool? debug;
final BlobStyles? styles;

BlobPainter({
this.blobData,
Expand All @@ -15,15 +15,15 @@ class BlobPainter extends CustomPainter {

@override
void paint(Canvas c, Size s) {
drawBlob(c, blobData.path, styles);
if (debug) {
drawBlob(c, blobData!.path!, styles);
if (debug!) {
circle(c, s, (s.width / 2)); // outer circle
circle(c, s, blobData.points.innerRad); // inner circle
circle(c, s, blobData!.points!.innerRad!); // inner circle
point(c, Offset(s.width / 2, s.height / 2)); // center point
List originPoints = blobData.points.originPoints;
List destPoints = blobData.points.destPoints;
List originPoints = blobData!.points!.originPoints!;
List? destPoints = blobData!.points!.destPoints;
originPoints.asMap().forEach(
(i, p) => drawLines(c, p, destPoints[i]),
(i, p) => drawLines(c, p, destPoints![i]),
); // line from inner circle to blob point
}
}
Expand Down
Loading