diff --git a/.gitignore b/.gitignore
index 1947834..ea93a4f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -9,3 +9,5 @@ ios/.generated/
ios/Flutter/Generated.xcconfig
ios/Runner/GeneratedPluginRegistrant.*
*.log
+.idea
+*.iml
diff --git a/.idea/codeStyles/Project.xml b/.idea/codeStyles/Project.xml
deleted file mode 100644
index 30aa626..0000000
--- a/.idea/codeStyles/Project.xml
+++ /dev/null
@@ -1,29 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/.idea/libraries/Dart_Packages.xml b/.idea/libraries/Dart_Packages.xml
deleted file mode 100644
index 6cd3499..0000000
--- a/.idea/libraries/Dart_Packages.xml
+++ /dev/null
@@ -1,460 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/.idea/libraries/Dart_SDK.xml b/.idea/libraries/Dart_SDK.xml
deleted file mode 100644
index 198919e..0000000
--- a/.idea/libraries/Dart_SDK.xml
+++ /dev/null
@@ -1,19 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/.idea/libraries/Flutter_Plugins.xml b/.idea/libraries/Flutter_Plugins.xml
deleted file mode 100644
index b0f6971..0000000
--- a/.idea/libraries/Flutter_Plugins.xml
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
deleted file mode 100644
index 3268472..0000000
--- a/.idea/misc.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/.idea/modules.xml b/.idea/modules.xml
deleted file mode 100644
index ebb33c4..0000000
--- a/.idea/modules.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-
-
-
-
-
-
diff --git a/.idea/vcs.xml b/.idea/vcs.xml
deleted file mode 100644
index 94a25f7..0000000
--- a/.idea/vcs.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
-
-
-
\ No newline at end of file
diff --git a/.idea/workspace.xml b/.idea/workspace.xml
deleted file mode 100644
index 6e66e44..0000000
--- a/.idea/workspace.xml
+++ /dev/null
@@ -1,612 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- border
- decoration
- shadowColor
- blendMode
- 0.5
- size
- transformer_page_view
- scale
- none
-
-
- flutter_page_indicator
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 1536663887639
-
-
- 1536663887639
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- No facets are configured
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 1.8
-
-
-
-
-
-
-
-
-
-
-
- flutter_page_indicator
-
-
-
-
-
-
-
-
-
-
-
-
- Dart Packages
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 7c70a41..e81f901 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,6 @@
+## [1.0.0]
+ * Migrate to null-safety
+
## [0.0.3]
* Fix bugs
* Support loop mode for layout: PageIndicatorLayout.COLOR & PageIndicatorLayout.COLOR.
diff --git a/example/android/app/src/debug/AndroidManifest.xml b/example/android/app/src/debug/AndroidManifest.xml
new file mode 100644
index 0000000..c208884
--- /dev/null
+++ b/example/android/app/src/debug/AndroidManifest.xml
@@ -0,0 +1,7 @@
+
+
+
+
diff --git a/example/android/app/src/main/kotlin/com/example/example/MainActivity.kt b/example/android/app/src/main/kotlin/com/example/example/MainActivity.kt
new file mode 100644
index 0000000..e793a00
--- /dev/null
+++ b/example/android/app/src/main/kotlin/com/example/example/MainActivity.kt
@@ -0,0 +1,6 @@
+package com.example.example
+
+import io.flutter.embedding.android.FlutterActivity
+
+class MainActivity: FlutterActivity() {
+}
diff --git a/example/android/app/src/main/res/drawable-v21/launch_background.xml b/example/android/app/src/main/res/drawable-v21/launch_background.xml
new file mode 100644
index 0000000..f74085f
--- /dev/null
+++ b/example/android/app/src/main/res/drawable-v21/launch_background.xml
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
diff --git a/example/android/app/src/main/res/values-night/styles.xml b/example/android/app/src/main/res/values-night/styles.xml
new file mode 100644
index 0000000..449a9f9
--- /dev/null
+++ b/example/android/app/src/main/res/values-night/styles.xml
@@ -0,0 +1,18 @@
+
+
+
+
+
+
+
diff --git a/example/android/app/src/profile/AndroidManifest.xml b/example/android/app/src/profile/AndroidManifest.xml
new file mode 100644
index 0000000..c208884
--- /dev/null
+++ b/example/android/app/src/profile/AndroidManifest.xml
@@ -0,0 +1,7 @@
+
+
+
+
diff --git a/example/ios/Flutter/flutter_export_environment.sh b/example/ios/Flutter/flutter_export_environment.sh
new file mode 100755
index 0000000..c640307
--- /dev/null
+++ b/example/ios/Flutter/flutter_export_environment.sh
@@ -0,0 +1,14 @@
+#!/bin/sh
+# This is a generated file; do not edit or check into version control.
+export "FLUTTER_ROOT=/Users/p0z00vu/Programs/flutter"
+export "FLUTTER_APPLICATION_PATH=/Users/p0z00vu/Projects/flutter/flutter_page_indicator/example"
+export "FLUTTER_TARGET=/Users/p0z00vu/Projects/flutter/flutter_page_indicator/example/lib/main.dart"
+export "FLUTTER_BUILD_DIR=build"
+export "SYMROOT=${SOURCE_ROOT}/../build/ios"
+export "FLUTTER_BUILD_NAME=1.0.0"
+export "FLUTTER_BUILD_NUMBER=1"
+export "DART_DEFINES=flutter.inspector.structuredErrors%3Dtrue"
+export "DART_OBFUSCATION=false"
+export "TRACK_WIDGET_CREATION=true"
+export "TREE_SHAKE_ICONS=false"
+export "PACKAGE_CONFIG=/Users/p0z00vu/Projects/flutter/flutter_page_indicator/example/.dart_tool/package_config.json"
diff --git a/example/ios/Runner.xcodeproj/project.pbxproj b/example/ios/Runner.xcodeproj/project.pbxproj
index bdbe25e..629f42e 100644
--- a/example/ios/Runner.xcodeproj/project.pbxproj
+++ b/example/ios/Runner.xcodeproj/project.pbxproj
@@ -8,12 +8,7 @@
/* Begin PBXBuildFile section */
1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; };
- 2D5378261FAA1A9400D5DBA9 /* flutter_assets in Resources */ = {isa = PBXBuildFile; fileRef = 2D5378251FAA1A9400D5DBA9 /* flutter_assets */; };
3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; };
- 3B80C3941E831B6300D905FE /* App.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3B80C3931E831B6300D905FE /* App.framework */; };
- 3B80C3951E831B6300D905FE /* App.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 3B80C3931E831B6300D905FE /* App.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
- 9705A1C61CF904A100538489 /* Flutter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9740EEBA1CF902C7004384FC /* Flutter.framework */; };
- 9705A1C71CF904A300538489 /* Flutter.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 9740EEBA1CF902C7004384FC /* Flutter.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
9740EEB41CF90195004384FC /* Debug.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = 9740EEB21CF90195004384FC /* Debug.xcconfig */; };
978B8F6F1D3862AE00F588F7 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 7AFFD8EE1D35381100E5BB4D /* AppDelegate.m */; };
97C146F31CF9000F007C117D /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 97C146F21CF9000F007C117D /* main.m */; };
@@ -29,8 +24,6 @@
dstPath = "";
dstSubfolderSpec = 10;
files = (
- 3B80C3951E831B6300D905FE /* App.framework in Embed Frameworks */,
- 9705A1C71CF904A300538489 /* Flutter.framework in Embed Frameworks */,
);
name = "Embed Frameworks";
runOnlyForDeploymentPostprocessing = 0;
@@ -40,15 +33,12 @@
/* Begin PBXFileReference section */
1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = ""; };
1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = ""; };
- 2D5378251FAA1A9400D5DBA9 /* flutter_assets */ = {isa = PBXFileReference; lastKnownFileType = folder; name = flutter_assets; path = Flutter/flutter_assets; sourceTree = SOURCE_ROOT; };
3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = ""; };
- 3B80C3931E831B6300D905FE /* App.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = App.framework; path = Flutter/App.framework; sourceTree = ""; };
7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = ""; };
7AFFD8ED1D35381100E5BB4D /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = ""; };
7AFFD8EE1D35381100E5BB4D /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = ""; };
9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = ""; };
9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = ""; };
- 9740EEBA1CF902C7004384FC /* Flutter.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Flutter.framework; path = Flutter/Flutter.framework; sourceTree = ""; };
97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; };
97C146F21CF9000F007C117D /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; };
97C146FB1CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; };
@@ -62,8 +52,6 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
- 9705A1C61CF904A100538489 /* Flutter.framework in Frameworks */,
- 3B80C3941E831B6300D905FE /* App.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -73,10 +61,7 @@
9740EEB11CF90186004384FC /* Flutter */ = {
isa = PBXGroup;
children = (
- 2D5378251FAA1A9400D5DBA9 /* flutter_assets */,
- 3B80C3931E831B6300D905FE /* App.framework */,
3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */,
- 9740EEBA1CF902C7004384FC /* Flutter.framework */,
9740EEB21CF90195004384FC /* Debug.xcconfig */,
7AFA3C8E1D35360C0083082E /* Release.xcconfig */,
9740EEB31CF90195004384FC /* Generated.xcconfig */,
@@ -190,7 +175,6 @@
3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */,
9740EEB41CF90195004384FC /* Debug.xcconfig in Resources */,
97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */,
- 2D5378261FAA1A9400D5DBA9 /* flutter_assets in Resources */,
97C146FC1CF9000F007C117D /* Main.storyboard in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
@@ -210,7 +194,7 @@
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
- shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" thin";
+ shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin";
};
9740EEB61CF901F6004384FC /* Run Script */ = {
isa = PBXShellScriptBuildPhase;
@@ -263,7 +247,6 @@
/* Begin XCBuildConfiguration section */
97C147031CF9000F007C117D /* Debug */ = {
isa = XCBuildConfiguration;
- baseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_ANALYZER_NONNULL = YES;
@@ -317,7 +300,6 @@
};
97C147041CF9000F007C117D /* Release */ = {
isa = XCBuildConfiguration;
- baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_ANALYZER_NONNULL = YES;
diff --git a/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata
index 1d526a1..919434a 100644
--- a/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata
+++ b/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata
@@ -2,6 +2,6 @@
+ location = "self:">
diff --git a/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
new file mode 100644
index 0000000..18d9810
--- /dev/null
+++ b/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
@@ -0,0 +1,8 @@
+
+
+
+
+ IDEDidComputeMac32BitWarning
+
+
+
diff --git a/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings
new file mode 100644
index 0000000..f9b0d7c
--- /dev/null
+++ b/example/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings
@@ -0,0 +1,8 @@
+
+
+
+
+ PreviewsEnabled
+
+
+
diff --git a/example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
new file mode 100644
index 0000000..18d9810
--- /dev/null
+++ b/example/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
@@ -0,0 +1,8 @@
+
+
+
+
+ IDEDidComputeMac32BitWarning
+
+
+
diff --git a/example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings
new file mode 100644
index 0000000..f9b0d7c
--- /dev/null
+++ b/example/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings
@@ -0,0 +1,8 @@
+
+
+
+
+ PreviewsEnabled
+
+
+
diff --git a/example/ios/Runner/AppDelegate.swift b/example/ios/Runner/AppDelegate.swift
new file mode 100644
index 0000000..70693e4
--- /dev/null
+++ b/example/ios/Runner/AppDelegate.swift
@@ -0,0 +1,13 @@
+import UIKit
+import Flutter
+
+@UIApplicationMain
+@objc class AppDelegate: FlutterAppDelegate {
+ override func application(
+ _ application: UIApplication,
+ didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
+ ) -> Bool {
+ GeneratedPluginRegistrant.register(with: self)
+ return super.application(application, didFinishLaunchingWithOptions: launchOptions)
+ }
+}
diff --git a/example/ios/Runner/Runner-Bridging-Header.h b/example/ios/Runner/Runner-Bridging-Header.h
new file mode 100644
index 0000000..308a2a5
--- /dev/null
+++ b/example/ios/Runner/Runner-Bridging-Header.h
@@ -0,0 +1 @@
+#import "GeneratedPluginRegistrant.h"
diff --git a/example/lib/main.dart b/example/lib/main.dart
index 9e47897..0678d83 100644
--- a/example/lib/main.dart
+++ b/example/lib/main.dart
@@ -1,8 +1,6 @@
import 'package:flutter/material.dart';
-
import 'package:flutter_page_indicator/flutter_page_indicator.dart';
-
-import "package:transformer_page_view/transformer_page_view.dart";
+import 'package:another_transformer_page_view/another_transformer_page_view.dart';
void main() => runApp(new MyApp());
@@ -13,14 +11,6 @@ class MyApp extends StatelessWidget {
return new MaterialApp(
title: 'Flutter Demo',
theme: new ThemeData(
- // This is the theme of your application.
- //
- // Try running your application with "flutter run". You'll see the
- // application has a blue toolbar. Then, without quitting the app, try
- // changing the primarySwatch below to Colors.green and then invoke
- // "hot reload" (press "r" in the console where you ran "flutter run",
- // or press Run > Flutter Hot Reload in IntelliJ). Notice that the
- // counter didn't reset back to zero; the application is not restarted.
primarySwatch: Colors.blue,
),
home: new MyHomePage(title: 'Flutter Demo Home Page'),
@@ -29,30 +19,24 @@ class MyApp extends StatelessWidget {
}
class MyHomePage extends StatefulWidget {
- MyHomePage({Key key, this.title}) : super(key: key);
-
- // This widget is the home page of your application. It is stateful, meaning
- // that it has a State object (defined below) that contains fields that affect
- // how it looks.
-
- // This class is the configuration for the state. It holds the values (in this
- // case the title) provided by the parent (in this case the App widget) and
- // used by the build method of the State. Fields in a Widget subclass are
- // always marked "final".
+ MyHomePage({Key? key, this.title}) : super(key: key);
- final String title;
+ final String? title;
@override
_MyHomePageState createState() => new _MyHomePageState();
}
class RadioGroup extends StatefulWidget {
- final List titles;
+ final List? titles;
final ValueChanged onIndexChanged;
- const RadioGroup({Key key, this.titles, this.onIndexChanged})
- : super(key: key);
+ const RadioGroup({
+ Key? key,
+ this.titles,
+ required this.onIndexChanged,
+ }) : super(key: key);
@override
State createState() {
@@ -66,7 +50,7 @@ class _RadioGroupState extends State {
@override
Widget build(BuildContext context) {
List list = [];
- for (int i = 0; i < widget.titles.length; ++i) {
+ for (int i = 0; i < widget.titles!.length; ++i) {
list.add(((String title, int index) {
return new Row(
mainAxisSize: MainAxisSize.min,
@@ -74,16 +58,16 @@ class _RadioGroupState extends State {
new Radio(
value: index,
groupValue: _index,
- onChanged: (int index) {
+ onChanged: (int? index) {
setState(() {
- _index = index;
+ _index = index!;
widget.onIndexChanged(_index);
});
}),
new Text(title)
],
);
- })(widget.titles[i], i));
+ })(widget.titles![i], i));
}
return new Wrap(
@@ -98,13 +82,13 @@ class _MyHomePageState extends State {
double size = 20.0;
double activeSize = 30.0;
- PageController controller;
+ PageController? controller;
PageIndicatorLayout layout = PageIndicatorLayout.SLIDE;
List layouts = PageIndicatorLayout.values;
- bool loop = false;
+ bool? loop = false;
@override
void initState() {
@@ -135,30 +119,10 @@ class _MyHomePageState extends State {
];
return new Scaffold(
appBar: new AppBar(
- title: new Text(widget.title),
+ title: new Text(widget.title!),
),
body: new Column(
children: [
- new Row(
- children: [
- new Checkbox(
- value: loop,
- onChanged: (bool value) {
- setState(() {
- if (value) {
- controller = new TransformerPageController(
- itemCount: 4, loop: true);
- } else {
- controller = new PageController(
- initialPage: 0,
- );
- }
- loop = value;
- });
- }),
- new Text("loop"),
- ],
- ),
new RadioGroup(
titles: layouts.map((s) {
var str = s.toString();
@@ -174,10 +138,11 @@ class _MyHomePageState extends State {
new Expanded(
child: new Stack(
children: [
- loop
+ loop!
? new TransformerPageView.children(
children: children,
- pageController: controller,
+ pageController:
+ controller as TransformerPageController?,
)
: new PageView(
controller: controller,
@@ -191,7 +156,7 @@ class _MyHomePageState extends State {
layout: layout,
size: size,
activeSize: activeSize,
- controller: controller,
+ controller: controller!,
space: 5.0,
count: 4,
),
diff --git a/example/pubspec.lock b/example/pubspec.lock
index 92859fa..ec8db36 100644
--- a/example/pubspec.lock
+++ b/example/pubspec.lock
@@ -1,76 +1,69 @@
# Generated by pub
-# See https://www.dartlang.org/tools/pub/glossary#lockfile
+# See https://dart.dev/tools/pub/glossary#lockfile
packages:
- analyzer:
- dependency: transitive
- description:
- name: analyzer
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "0.32.4"
- args:
- dependency: transitive
+ another_transformer_page_view:
+ dependency: "direct main"
description:
- name: args
- url: "https://pub.flutter-io.cn"
+ name: another_transformer_page_view
+ url: "https://pub.dartlang.org"
source: hosted
- version: "1.5.0"
+ version: "1.0.0"
async:
dependency: transitive
description:
name: async
- url: "https://pub.flutter-io.cn"
+ url: "https://pub.dartlang.org"
source: hosted
- version: "2.0.8"
+ version: "2.5.0"
boolean_selector:
dependency: transitive
description:
name: boolean_selector
- url: "https://pub.flutter-io.cn"
+ url: "https://pub.dartlang.org"
source: hosted
- version: "1.0.4"
- charcode:
+ version: "2.1.0"
+ characters:
dependency: transitive
description:
- name: charcode
- url: "https://pub.flutter-io.cn"
+ name: characters
+ url: "https://pub.dartlang.org"
source: hosted
- version: "1.1.2"
- collection:
- dependency: transitive
- description:
- name: collection
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "1.14.11"
- convert:
+ version: "1.1.0"
+ charcode:
dependency: transitive
description:
- name: convert
- url: "https://pub.flutter-io.cn"
+ name: charcode
+ url: "https://pub.dartlang.org"
source: hosted
- version: "2.0.2"
- crypto:
+ version: "1.2.0"
+ clock:
dependency: transitive
description:
- name: crypto
- url: "https://pub.flutter-io.cn"
+ name: clock
+ url: "https://pub.dartlang.org"
source: hosted
- version: "2.0.6"
- csslib:
+ version: "1.1.0"
+ collection:
dependency: transitive
description:
- name: csslib
- url: "https://pub.flutter-io.cn"
+ name: collection
+ url: "https://pub.dartlang.org"
source: hosted
- version: "0.14.5"
+ version: "1.15.0"
cupertino_icons:
dependency: "direct main"
description:
name: cupertino_icons
- url: "https://pub.flutter-io.cn"
+ 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: "0.1.2"
+ version: "1.2.0"
flutter:
dependency: "direct main"
description: flutter
@@ -82,318 +75,100 @@ packages:
path: ".."
relative: true
source: path
- version: "0.0.3"
+ version: "1.0.0"
flutter_test:
dependency: "direct dev"
description: flutter
source: sdk
version: "0.0.0"
- front_end:
- dependency: transitive
- description:
- name: front_end
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "0.1.4"
- glob:
- dependency: transitive
- description:
- name: glob
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "1.1.7"
- html:
- dependency: transitive
- description:
- name: html
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "0.13.3+3"
- http:
- dependency: transitive
- description:
- name: http
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "0.11.3+17"
- http_multi_server:
- dependency: transitive
- description:
- name: http_multi_server
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "2.0.5"
- http_parser:
- dependency: transitive
- description:
- name: http_parser
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "3.1.3"
- io:
- dependency: transitive
- description:
- name: io
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "0.3.3"
- js:
- dependency: transitive
- description:
- name: js
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "0.6.1+1"
- json_rpc_2:
- dependency: transitive
- description:
- name: json_rpc_2
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "2.0.9"
- kernel:
- dependency: transitive
- description:
- name: kernel
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "0.3.4"
- logging:
- dependency: transitive
- description:
- name: logging
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "0.11.3+2"
matcher:
dependency: transitive
description:
name: matcher
- url: "https://pub.flutter-io.cn"
+ url: "https://pub.dartlang.org"
source: hosted
- version: "0.12.3+1"
+ version: "0.12.10"
meta:
dependency: transitive
description:
name: meta
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "1.1.6"
- mime:
- dependency: transitive
- description:
- name: mime
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "0.9.6+2"
- multi_server_socket:
- dependency: transitive
- description:
- name: multi_server_socket
- url: "https://pub.flutter-io.cn"
+ url: "https://pub.dartlang.org"
source: hosted
- version: "1.0.2"
- node_preamble:
- dependency: transitive
- description:
- name: node_preamble
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "1.4.4"
- package_config:
- dependency: transitive
- description:
- name: package_config
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "1.0.5"
- package_resolver:
- dependency: transitive
- description:
- name: package_resolver
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "1.0.4"
+ version: "1.3.0"
path:
dependency: transitive
description:
name: path
- url: "https://pub.flutter-io.cn"
+ url: "https://pub.dartlang.org"
source: hosted
- version: "1.6.2"
- plugin:
+ version: "1.8.0"
+ pedantic:
dependency: transitive
description:
- name: plugin
- url: "https://pub.flutter-io.cn"
+ name: pedantic
+ url: "https://pub.dartlang.org"
source: hosted
- version: "0.2.0+3"
- pool:
- dependency: transitive
- description:
- name: pool
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "1.3.6"
- pub_semver:
- dependency: transitive
- description:
- name: pub_semver
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "1.4.2"
- quiver:
- dependency: transitive
- description:
- name: quiver
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "2.0.0+1"
- shelf:
- dependency: transitive
- description:
- name: shelf
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "0.7.3+3"
- shelf_packages_handler:
- dependency: transitive
- description:
- name: shelf_packages_handler
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "1.0.4"
- shelf_static:
- dependency: transitive
- description:
- name: shelf_static
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "0.2.8"
- shelf_web_socket:
- dependency: transitive
- description:
- name: shelf_web_socket
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "0.2.2+4"
+ version: "1.11.0"
sky_engine:
dependency: transitive
description: flutter
source: sdk
version: "0.0.99"
- source_map_stack_trace:
- dependency: transitive
- description:
- name: source_map_stack_trace
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "1.1.5"
- source_maps:
- dependency: transitive
- description:
- name: source_maps
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "0.10.7"
source_span:
dependency: transitive
description:
name: source_span
- url: "https://pub.flutter-io.cn"
+ url: "https://pub.dartlang.org"
source: hosted
- version: "1.4.1"
+ version: "1.8.0"
stack_trace:
dependency: transitive
description:
name: stack_trace
- url: "https://pub.flutter-io.cn"
+ 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.flutter-io.cn"
+ url: "https://pub.dartlang.org"
source: hosted
- version: "1.6.8"
+ version: "2.1.0"
string_scanner:
dependency: transitive
description:
name: string_scanner
- url: "https://pub.flutter-io.cn"
+ url: "https://pub.dartlang.org"
source: hosted
- version: "1.0.4"
+ version: "1.1.0"
term_glyph:
dependency: transitive
description:
name: term_glyph
- url: "https://pub.flutter-io.cn"
+ url: "https://pub.dartlang.org"
source: hosted
- version: "1.0.1"
- test:
+ version: "1.2.0"
+ test_api:
dependency: transitive
description:
- name: test
- url: "https://pub.flutter-io.cn"
+ name: test_api
+ url: "https://pub.dartlang.org"
source: hosted
- version: "1.3.0"
- transformer_page_view:
- dependency: "direct main"
- description:
- path: "/Users/jzoom/SourceCode/transformer_page_view"
- relative: false
- source: path
- version: "0.1.0"
+ version: "0.2.19"
typed_data:
dependency: transitive
description:
name: typed_data
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "1.1.6"
- utf:
- dependency: transitive
- description:
- name: utf
- url: "https://pub.flutter-io.cn"
+ url: "https://pub.dartlang.org"
source: hosted
- version: "0.9.0+5"
+ version: "1.3.0"
vector_math:
dependency: transitive
description:
name: vector_math
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "2.0.8"
- vm_service_client:
- dependency: transitive
- description:
- name: vm_service_client
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "0.2.6"
- watcher:
- dependency: transitive
- description:
- name: watcher
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "0.9.7+10"
- web_socket_channel:
- dependency: transitive
- description:
- name: web_socket_channel
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "1.0.9"
- yaml:
- dependency: transitive
- description:
- name: yaml
- url: "https://pub.flutter-io.cn"
+ url: "https://pub.dartlang.org"
source: hosted
- version: "2.1.15"
+ version: "2.1.0"
sdks:
- dart: ">=2.0.0-dev.68.0 <3.0.0"
- flutter: ">=0.1.4 <3.0.0"
+ dart: ">=2.12.0 <3.0.0"
diff --git a/example/pubspec.yaml b/example/pubspec.yaml
index 59144dc..98a65cc 100644
--- a/example/pubspec.yaml
+++ b/example/pubspec.yaml
@@ -10,7 +10,7 @@ description: A new Flutter project.
version: 1.0.0+1
environment:
- sdk: ">=2.0.0-dev.68.0 <3.0.0"
+ sdk: '>=2.12.0 <3.0.0'
dependencies:
flutter:
@@ -23,8 +23,7 @@ dependencies:
flutter_page_indicator:
path: ../
- transformer_page_view:
- path: /Users/jzoom/SourceCode/transformer_page_view
+ another_transformer_page_view: ^1.0.0
dev_dependencies:
flutter_test:
diff --git a/example/web/favicon.png b/example/web/favicon.png
new file mode 100644
index 0000000..8aaa46a
Binary files /dev/null and b/example/web/favicon.png differ
diff --git a/example/web/icons/Icon-192.png b/example/web/icons/Icon-192.png
new file mode 100644
index 0000000..b749bfe
Binary files /dev/null and b/example/web/icons/Icon-192.png differ
diff --git a/example/web/icons/Icon-512.png b/example/web/icons/Icon-512.png
new file mode 100644
index 0000000..88cfd48
Binary files /dev/null and b/example/web/icons/Icon-512.png differ
diff --git a/example/web/index.html b/example/web/index.html
new file mode 100644
index 0000000..1460b5e
--- /dev/null
+++ b/example/web/index.html
@@ -0,0 +1,45 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ example
+
+
+
+
+
+
+
+
diff --git a/example/web/manifest.json b/example/web/manifest.json
new file mode 100644
index 0000000..8c01291
--- /dev/null
+++ b/example/web/manifest.json
@@ -0,0 +1,23 @@
+{
+ "name": "example",
+ "short_name": "example",
+ "start_url": ".",
+ "display": "standalone",
+ "background_color": "#0175C2",
+ "theme_color": "#0175C2",
+ "description": "A new Flutter project.",
+ "orientation": "portrait-primary",
+ "prefer_related_applications": false,
+ "icons": [
+ {
+ "src": "icons/Icon-192.png",
+ "sizes": "192x192",
+ "type": "image/png"
+ },
+ {
+ "src": "icons/Icon-512.png",
+ "sizes": "512x512",
+ "type": "image/png"
+ }
+ ]
+}
diff --git a/flutter_page_indicator.iml b/flutter_page_indicator.iml
deleted file mode 100644
index 75456de..0000000
--- a/flutter_page_indicator.iml
+++ /dev/null
@@ -1,23 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/lib/flutter_page_indicator.dart b/lib/flutter_page_indicator.dart
index 1ab652c..78550dd 100644
--- a/lib/flutter_page_indicator.dart
+++ b/lib/flutter_page_indicator.dart
@@ -123,12 +123,12 @@ class ScalePainter extends BasePainter {
: radius + ((index + 1) * (size + space));
double progress = page - index;
- _paint.color = Color.lerp(widget.activeColor, widget.color, progress);
+ _paint.color = Color.lerp(widget.activeColor, widget.color, progress)!;
//last
canvas.drawCircle(new Offset(radius + (index * (size + space)), radius),
lerp(radius, radius * widget.scale, progress), _paint);
//first
- _paint.color = Color.lerp(widget.color, widget.activeColor, progress);
+ _paint.color = Color.lerp(widget.color, widget.activeColor, progress)!;
canvas.drawCircle(new Offset(secondOffset, radius),
lerp(radius * widget.scale, radius, progress), _paint);
}
@@ -154,12 +154,12 @@ class ColorPainter extends BasePainter {
? radius
: radius + ((index + 1) * (size + space));
- _paint.color = Color.lerp(widget.activeColor, widget.color, progress);
+ _paint.color = Color.lerp(widget.activeColor, widget.color, progress)!;
//left
canvas.drawCircle(
new Offset(radius + (index * (size + space)), radius), radius, _paint);
//right
- _paint.color = Color.lerp(widget.color, widget.activeColor, progress);
+ _paint.color = Color.lerp(widget.color, widget.activeColor, progress)!;
canvas.drawCircle(new Offset(secondOffset, radius), radius, _paint);
}
}
@@ -181,6 +181,7 @@ abstract class BasePainter extends CustomPainter {
bool _shouldSkip(int index) {
return false;
}
+
//double secondOffset = index == widget.count-1 ? radius : radius + ((index + 1) * (size + space));
@override
@@ -330,12 +331,12 @@ class PageIndicator extends StatefulWidget {
final double activeSize;
PageIndicator(
- {Key key,
+ {Key? key,
this.size: 20.0,
this.space: 5.0,
- this.count,
+ required this.count,
this.activeSize: 20.0,
- this.controller,
+ required this.controller,
this.color: Colors.white30,
this.layout: PageIndicatorLayout.SLIDE,
this.activeColor: Colors.white,
diff --git a/pubspec.lock b/pubspec.lock
index 8c0490c..49a0ce6 100644
--- a/pubspec.lock
+++ b/pubspec.lock
@@ -1,69 +1,55 @@
# Generated by pub
-# See https://www.dartlang.org/tools/pub/glossary#lockfile
+# See https://dart.dev/tools/pub/glossary#lockfile
packages:
- analyzer:
- dependency: transitive
- description:
- name: analyzer
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "0.32.4"
- args:
- dependency: transitive
- description:
- name: args
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "1.5.0"
async:
dependency: transitive
description:
name: async
- url: "https://pub.flutter-io.cn"
+ url: "https://pub.dartlang.org"
source: hosted
- version: "2.0.8"
+ version: "2.5.0"
boolean_selector:
dependency: transitive
description:
name: boolean_selector
- url: "https://pub.flutter-io.cn"
+ url: "https://pub.dartlang.org"
source: hosted
- version: "1.0.4"
- charcode:
+ version: "2.1.0"
+ characters:
dependency: transitive
description:
- name: charcode
- url: "https://pub.flutter-io.cn"
+ name: characters
+ url: "https://pub.dartlang.org"
source: hosted
- version: "1.1.2"
- collection:
+ version: "1.1.0"
+ charcode:
dependency: transitive
description:
- name: collection
- url: "https://pub.flutter-io.cn"
+ name: charcode
+ url: "https://pub.dartlang.org"
source: hosted
- version: "1.14.11"
- convert:
+ version: "1.2.0"
+ clock:
dependency: transitive
description:
- name: convert
- url: "https://pub.flutter-io.cn"
+ name: clock
+ url: "https://pub.dartlang.org"
source: hosted
- version: "2.0.2"
- crypto:
+ version: "1.1.0"
+ collection:
dependency: transitive
description:
- name: crypto
- url: "https://pub.flutter-io.cn"
+ name: collection
+ url: "https://pub.dartlang.org"
source: hosted
- version: "2.0.6"
- csslib:
+ version: "1.15.0"
+ fake_async:
dependency: transitive
description:
- name: csslib
- url: "https://pub.flutter-io.cn"
+ name: fake_async
+ url: "https://pub.dartlang.org"
source: hosted
- version: "0.14.5"
+ version: "1.2.0"
flutter:
dependency: "direct main"
description: flutter
@@ -74,305 +60,87 @@ packages:
description: flutter
source: sdk
version: "0.0.0"
- front_end:
- dependency: transitive
- description:
- name: front_end
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "0.1.4"
- glob:
- dependency: transitive
- description:
- name: glob
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "1.1.7"
- html:
- dependency: transitive
- description:
- name: html
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "0.13.3+3"
- http:
- dependency: transitive
- description:
- name: http
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "0.11.3+17"
- http_multi_server:
- dependency: transitive
- description:
- name: http_multi_server
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "2.0.5"
- http_parser:
- dependency: transitive
- description:
- name: http_parser
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "3.1.3"
- io:
- dependency: transitive
- description:
- name: io
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "0.3.3"
- js:
- dependency: transitive
- description:
- name: js
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "0.6.1+1"
- json_rpc_2:
- dependency: transitive
- description:
- name: json_rpc_2
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "2.0.9"
- kernel:
- dependency: transitive
- description:
- name: kernel
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "0.3.4"
- logging:
- dependency: transitive
- description:
- name: logging
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "0.11.3+2"
matcher:
dependency: transitive
description:
name: matcher
- url: "https://pub.flutter-io.cn"
+ url: "https://pub.dartlang.org"
source: hosted
- version: "0.12.3+1"
+ version: "0.12.10"
meta:
dependency: transitive
description:
name: meta
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "1.1.6"
- mime:
- dependency: transitive
- description:
- name: mime
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "0.9.6+2"
- multi_server_socket:
- dependency: transitive
- description:
- name: multi_server_socket
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "1.0.2"
- node_preamble:
- dependency: transitive
- description:
- name: node_preamble
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "1.4.4"
- package_config:
- dependency: transitive
- description:
- name: package_config
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "1.0.5"
- package_resolver:
- dependency: transitive
- description:
- name: package_resolver
- url: "https://pub.flutter-io.cn"
+ url: "https://pub.dartlang.org"
source: hosted
- version: "1.0.4"
+ version: "1.3.0"
path:
dependency: transitive
description:
name: path
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "1.6.2"
- plugin:
- dependency: transitive
- description:
- name: plugin
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "0.2.0+3"
- pool:
- dependency: transitive
- description:
- name: pool
- url: "https://pub.flutter-io.cn"
+ url: "https://pub.dartlang.org"
source: hosted
- version: "1.3.6"
- pub_semver:
- dependency: transitive
- description:
- name: pub_semver
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "1.4.2"
- quiver:
- dependency: transitive
- description:
- name: quiver
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "2.0.0+1"
- shelf:
- dependency: transitive
- description:
- name: shelf
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "0.7.3+3"
- shelf_packages_handler:
- dependency: transitive
- description:
- name: shelf_packages_handler
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "1.0.4"
- shelf_static:
- dependency: transitive
- description:
- name: shelf_static
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "0.2.8"
- shelf_web_socket:
- dependency: transitive
- description:
- name: shelf_web_socket
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "0.2.2+4"
+ version: "1.8.0"
sky_engine:
dependency: transitive
description: flutter
source: sdk
version: "0.0.99"
- source_map_stack_trace:
- dependency: transitive
- description:
- name: source_map_stack_trace
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "1.1.5"
- source_maps:
- dependency: transitive
- description:
- name: source_maps
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "0.10.7"
source_span:
dependency: transitive
description:
name: source_span
- url: "https://pub.flutter-io.cn"
+ url: "https://pub.dartlang.org"
source: hosted
- version: "1.4.1"
+ version: "1.8.0"
stack_trace:
dependency: transitive
description:
name: stack_trace
- url: "https://pub.flutter-io.cn"
+ 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.flutter-io.cn"
+ url: "https://pub.dartlang.org"
source: hosted
- version: "1.6.8"
+ version: "2.1.0"
string_scanner:
dependency: transitive
description:
name: string_scanner
- url: "https://pub.flutter-io.cn"
+ url: "https://pub.dartlang.org"
source: hosted
- version: "1.0.4"
+ version: "1.1.0"
term_glyph:
dependency: transitive
description:
name: term_glyph
- url: "https://pub.flutter-io.cn"
+ url: "https://pub.dartlang.org"
source: hosted
- version: "1.0.1"
- test:
+ version: "1.2.0"
+ test_api:
dependency: transitive
description:
- name: test
- url: "https://pub.flutter-io.cn"
+ name: test_api
+ url: "https://pub.dartlang.org"
source: hosted
- version: "1.3.0"
+ version: "0.2.19"
typed_data:
dependency: transitive
description:
name: typed_data
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "1.1.6"
- utf:
- dependency: transitive
- description:
- name: utf
- url: "https://pub.flutter-io.cn"
+ url: "https://pub.dartlang.org"
source: hosted
- version: "0.9.0+5"
+ version: "1.3.0"
vector_math:
dependency: transitive
description:
name: vector_math
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "2.0.8"
- vm_service_client:
- dependency: transitive
- description:
- name: vm_service_client
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "0.2.6"
- watcher:
- dependency: transitive
- description:
- name: watcher
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "0.9.7+10"
- web_socket_channel:
- dependency: transitive
- description:
- name: web_socket_channel
- url: "https://pub.flutter-io.cn"
- source: hosted
- version: "1.0.9"
- yaml:
- dependency: transitive
- description:
- name: yaml
- url: "https://pub.flutter-io.cn"
+ url: "https://pub.dartlang.org"
source: hosted
- version: "2.1.15"
+ version: "2.1.0"
sdks:
- dart: ">=2.0.0-dev.68.0 <3.0.0"
- flutter: ">=0.1.4 <3.0.0"
+ dart: ">=2.12.0 <3.0.0"
diff --git a/pubspec.yaml b/pubspec.yaml
index d4dfab8..d09e9b8 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -1,7 +1,6 @@
name: flutter_page_indicator
description: Page indicator for flutter, with multiple build-in layouts.
-version: 0.0.3
-author: JZoom
+version: 1.0.0
homepage: https://github.com/jzoom/flutter_page_indicator
dependencies:
@@ -9,9 +8,7 @@ dependencies:
sdk: flutter
environment:
- sdk: ">=2.0.0-dev.48.0 <3.0.0"
- flutter: ">=0.1.4 <3.0.0"
-
+ sdk: '>=2.12.0 <3.0.0'
dev_dependencies:
flutter_test:
diff --git a/test/flutter_page_indicator_test.dart b/test/flutter_page_indicator_test.dart
index dd83cf8..0da434d 100644
--- a/test/flutter_page_indicator_test.dart
+++ b/test/flutter_page_indicator_test.dart
@@ -1,6 +1,4 @@
-import 'package:test/test.dart';
-
-import 'package:flutter_page_indicator/flutter_page_indicator.dart';
+import 'package:flutter_test/flutter_test.dart';
void main() {
test('adds one to input values', () {});