[go_router_builder]update analyzer to 4.4.0 (#2429)
Update the analyzer to 4.4.0 as minimum version and remove the usage of deprecated APIs.
Co-authored-by: stuartmorgan <stuartmorgan@google.com>
diff --git a/packages/go_router_builder/CHANGELOG.md b/packages/go_router_builder/CHANGELOG.md
index f953fc0..fe290f8 100644
--- a/packages/go_router_builder/CHANGELOG.md
+++ b/packages/go_router_builder/CHANGELOG.md
@@ -1,3 +1,8 @@
+## 1.0.8
+
+* Updates `analyzer` to 4.4.0.
+* Removes the usage of deprecated API in `analyzer`.
+
## 1.0.7
* Supports newer versions of `analyzer`.
diff --git a/packages/go_router_builder/lib/src/route_config.dart b/packages/go_router_builder/lib/src/route_config.dart
index 76aa515..47e1b52 100644
--- a/packages/go_router_builder/lib/src/route_config.dart
+++ b/packages/go_router_builder/lib/src/route_config.dart
@@ -44,7 +44,7 @@
/// Creates a new [RouteConfig] represented the annotation data in [reader].
factory RouteConfig.fromAnnotation(
ConstantReader reader,
- ClassElement element,
+ InterfaceElement element,
) {
final RouteConfig definition =
RouteConfig._fromAnnotation(reader, element, null);
@@ -62,7 +62,7 @@
factory RouteConfig._fromAnnotation(
ConstantReader reader,
- ClassElement element,
+ InterfaceElement element,
RouteConfig? parent,
) {
assert(!reader.isNull, 'reader should not be null');
@@ -88,7 +88,7 @@
}
// TODO(kevmoo): validate that this MUST be a subtype of `GoRouteData`
- final ClassElement classElement = typeParamType.element;
+ final InterfaceElement classElement = typeParamType.element2;
final RouteConfig value = RouteConfig._(path, classElement, parent);
@@ -100,7 +100,7 @@
final List<RouteConfig> _children = <RouteConfig>[];
final String _path;
- final ClassElement _routeDataClass;
+ final InterfaceElement _routeDataClass;
final RouteConfig? _parent;
/// Generates all of the members that correspond to `this`.
@@ -363,11 +363,11 @@
String _enumMapConst(InterfaceType type) {
assert(type.isEnum);
- final String enumName = type.element.name;
+ final String enumName = type.element2.name;
final StringBuffer buffer = StringBuffer('const ${enumMapName(type)} = {');
- for (final FieldElement enumField in type.element.fields
+ for (final FieldElement enumField in type.element2.fields
.where((FieldElement element) => !element.isSynthetic)) {
buffer.writeln(
'$enumName.${enumField.name}: ${escapeDartString(enumField.name.kebab)},',
diff --git a/packages/go_router_builder/lib/src/type_helpers.dart b/packages/go_router_builder/lib/src/type_helpers.dart
index 35568e7..8df633d 100644
--- a/packages/go_router_builder/lib/src/type_helpers.dart
+++ b/packages/go_router_builder/lib/src/type_helpers.dart
@@ -79,7 +79,7 @@
}
/// Gets the name of the `const` map generated to help encode [Enum] types.
-String enumMapName(InterfaceType type) => '_\$${type.element.name}EnumMap';
+String enumMapName(InterfaceType type) => '_\$${type.element2.name}EnumMap';
String _stateValueAccess(ParameterElement element) {
if (element.isRequired) {
diff --git a/packages/go_router_builder/pubspec.yaml b/packages/go_router_builder/pubspec.yaml
index 70d8a43..420e0a9 100644
--- a/packages/go_router_builder/pubspec.yaml
+++ b/packages/go_router_builder/pubspec.yaml
@@ -2,7 +2,7 @@
description: >-
A builder that supports generated strongly-typed route helpers for
package:go_router
-version: 1.0.7
+version: 1.0.8
repository: https://github.com/flutter/packages/tree/main/packages/go_router_builder
issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3A%22p%3A+go_router_builder%22
@@ -11,7 +11,7 @@
flutter: ">=3.0.0"
dependencies:
- analyzer: '>=2.7.0 <5.0.0'
+ analyzer: '>=4.4.0 <5.0.0'
async: ^2.8.0
build: ^2.0.0
build_config: ^1.0.0