diff --git a/.github/workflows/flutter_ci.yml b/.github/workflows/flutter_ci.yml index 9ad8ad459..690989156 100644 --- a/.github/workflows/flutter_ci.yml +++ b/.github/workflows/flutter_ci.yml @@ -2,6 +2,11 @@ name: Flutter CI on: [push, pull_request, workflow_dispatch] +# Ensure that new pushes/updates cancel running jobs +concurrency: + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} + cancel-in-progress: true + jobs: format: name: "Check formatting" diff --git a/.github/workflows/pub-platform-interface-publish.yml b/.github/workflows/pub-platform-interface-publish.yml deleted file mode 100644 index 7b6cd81d7..000000000 --- a/.github/workflows/pub-platform-interface-publish.yml +++ /dev/null @@ -1,23 +0,0 @@ -name: Publish maplibre_gl_platform_interface to pub.dev - -on: - push: - tags: - - 'pub-maplibre_gl_platform_interface-[0-9]+.[0-9]+.[0-9]+*' - workflow_dispatch: - -jobs: - publish: - permissions: - id-token: write # Required for authentication using OIDC - runs-on: ubuntu-latest - steps: - # Checkout repository - - uses: actions/checkout@v4 - # Setup Dart SDK with JWT token - - uses: dart-lang/setup-dart@b64355ae6ca0b5d484f0106a033dd1388965d06d - # Publishing... - # skip validation due to https://github.com/dart-lang/setup-dart/issues/68 - - name: Publish to pub.dev - run: dart pub publish -f --skip-validation - working-directory: maplibre_gl_platform_interface diff --git a/.github/workflows/pub-toplevel-publish.yml b/.github/workflows/pub-toplevel-publish.yml deleted file mode 100644 index b5f53e4fb..000000000 --- a/.github/workflows/pub-toplevel-publish.yml +++ /dev/null @@ -1,12 +0,0 @@ -name: Publish top-level plugin to pub.dev - -on: - push: - tags: - - 'pub-maplibre_gl-[0-9]+.[0-9]+.[0-9]+*' - -jobs: - publish: - permissions: - id-token: write # Required for authentication using OIDC - uses: dart-lang/setup-dart/.github/workflows/publish.yml@v1 diff --git a/.github/workflows/publish-single.yml b/.github/workflows/publish-single.yml new file mode 100644 index 000000000..b5f91a6ca --- /dev/null +++ b/.github/workflows/publish-single.yml @@ -0,0 +1,29 @@ +name: Publish a package to pub.dev + +on: + workflow_call: + inputs: + working-directory: + description: Directory of the package to publish + required: true + type: string + +permissions: + id-token: write + +jobs: + publish: + name: 'Publish to pub.dev' + permissions: + id-token: write # This is required for requesting the OIDC + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + # Setup Dart SDK with JWT token + - uses: dart-lang/setup-dart@v1 + - name: Install dependencies + run: dart pub get + # Publishing... + # skip validation due to https://github.com/dart-lang/setup-dart/issues/68 + - name: Publish to pub.dev + run: dart pub publish --force --skip-validation diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml new file mode 100644 index 000000000..8434b2e52 --- /dev/null +++ b/.github/workflows/publish.yml @@ -0,0 +1,25 @@ +name: Publish maplibre_gl packages to pub.dev + +on: + push: + tags: + - 'v[0-9]+.[0-9]+.[0-9]+*' + +permissions: + id-token: write + +jobs: + publish_maplibre_gl_platform_interface: + uses: ./.github/workflows/publish_single.yml + with: + working-directory: maplibre_gl_platform_interface + publish_maplibre_gl_web: + needs: [publish_maplibre_gl_platform_interface] + uses: ./.github/workflows/publish_single.yml + with: + working-directory: maplibre_gl_web + publish_maplibre_gl: + needs: [publish_maplibre_gl_platform_interface, publish_maplibre_gl_web] + uses: ./.github/workflows/publish_single.yml + with: + working-directory: . diff --git a/.gitignore b/.gitignore index b9f4a1e3e..e8237d431 100644 --- a/.gitignore +++ b/.gitignore @@ -113,3 +113,11 @@ app.*.symbols !/packages/flutter_tools/test/data/dart_dependencies_test/**/.packages !/dev/ci/**/Gemfile.lock google-java-format-1.13.0-all-deps.jar + +# Ruby/CocoaPods +Gemfile* +.ruby-version + +# FVM Version Cache +.fvm/ +.fvmrc \ No newline at end of file diff --git a/.pubignore b/.pubignore new file mode 100644 index 000000000..53225997a --- /dev/null +++ b/.pubignore @@ -0,0 +1,4 @@ +scripts +screenshot.png +maplibre_gl_web +maplibre_gl_platform_interface diff --git a/CHANGELOG.md b/CHANGELOG.md index 53926493b..0cf9dc389 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,7 @@ -## UNRELEASED +## 0.19.0 +* Bump min Dart SDK to 3.0.0 (this was already implicitly required by transitive dependencies) +* Publish all packages to pub.dev * Add support for Gradle/AGP namespace configuration * Bump Android `compileSdkVersion` to 34 * Loosen the dependency constraint of [js](https://pub.dev/packages/js) to allow `0.6.x` and `0.7.x`. diff --git a/example/android/app/build.gradle b/example/android/app/build.gradle index d1263a733..2e6ec1b6d 100644 --- a/example/android/app/build.gradle +++ b/example/android/app/build.gradle @@ -36,7 +36,7 @@ android { } kotlinOptions { - jvmTarget = '1.8' + jvmTarget = JavaVersion.VERSION_1_8 } sourceSets { diff --git a/example/ios/Podfile.lock b/example/ios/Podfile.lock index 9888b3670..0e2430f63 100644 --- a/example/ios/Podfile.lock +++ b/example/ios/Podfile.lock @@ -16,7 +16,6 @@ DEPENDENCIES: - device_info_plus (from `.symlinks/plugins/device_info_plus/ios`) - Flutter (from `Flutter`) - location (from `.symlinks/plugins/location/ios`) - - MapLibre - maplibre_gl (from `.symlinks/plugins/maplibre_gl/ios`) - path_provider_foundation (from `.symlinks/plugins/path_provider_foundation/darwin`) @@ -37,13 +36,13 @@ EXTERNAL SOURCES: :path: ".symlinks/plugins/path_provider_foundation/darwin" SPEC CHECKSUMS: - device_info_plus: 7545d84d8d1b896cb16a4ff98c19f07ec4b298ea + device_info_plus: c6fb39579d0f423935b0c9ce7ee2f44b71b9fce6 Flutter: f04841e97a9d0b0a8025694d0796dd46242b2854 - location: 3a2eed4dd2fab25e7b7baf2a9efefe82b512d740 + location: d5cf8598915965547c3f36761ae9cc4f4e87d22e MapLibre: 620fc933c1d6029b33738c905c1490d024e5d4ef - maplibre_gl: 249958f57ed5cca73baf413ad6cbdbc64be69658 - path_provider_foundation: c68054786f1b4f3343858c1e1d0caaded73f0be9 + maplibre_gl: a2efec727dd340e4c65e26d2b03b584f14881fd9 + path_provider_foundation: 3784922295ac71e43754bd15e0653ccfd36a147c -PODFILE CHECKSUM: 00bbce151cce7e3542226c3dbb2422a2cb667d7a +PODFILE CHECKSUM: 76b02dc813a095e7650def38e0c540365f37c732 -COCOAPODS: 1.12.1 +COCOAPODS: 1.15.2 diff --git a/example/pubspec.yaml b/example/pubspec.yaml index f2c3deff7..f1118af08 100644 --- a/example/pubspec.yaml +++ b/example/pubspec.yaml @@ -13,17 +13,8 @@ dependencies: flutter: sdk: flutter - maplibre_gl_platform_interface: - git: - url: https://github.com/maplibre/flutter-maplibre-gl.git - path: maplibre_gl_platform_interface - ref: git-release-0.17.0 - - maplibre_gl: - git: - url: https://github.com/maplibre/flutter-maplibre-gl.git - ref: git-release-0.17.0 - + maplibre_gl: ^0.19.0 + maplibre_gl_platform_interface: ^0.19.0 location: ^5.0.3 path_provider: ^2.0.15 http: ^1.1.0 @@ -32,18 +23,6 @@ dependencies: platform: ^3.1.0 device_info_plus: ^9.0.2 -# The following lines can be useful if you make changes to this plugin (specifically to the two sub-plugins), -# e.g. because you contribute to the project. -# If the following lines are not commented out, your local versions of the sub-plugins will be used, -# instead of the hosted ones. -dependency_overrides: - maplibre_gl_platform_interface: - path: ../maplibre_gl_platform_interface - maplibre_gl_web: - path: ../maplibre_gl_web - maplibre_gl: - path: .. - dev_dependencies: flutter_lints: '>=3.0.0 <5.0.0' flutter_test: diff --git a/example/pubspec_overrides.yaml b/example/pubspec_overrides.yaml new file mode 100644 index 000000000..f24c5d539 --- /dev/null +++ b/example/pubspec_overrides.yaml @@ -0,0 +1,7 @@ +dependency_overrides: + maplibre_gl: + path: .. + maplibre_gl_platform_interface: + path: ../maplibre_gl_platform_interface + maplibre_gl_web: + path: ../maplibre_gl_web diff --git a/flutter_mapbox_gl.iml b/flutter_mapbox_gl.iml deleted file mode 100644 index 73e7ebd0d..000000000 --- a/flutter_mapbox_gl.iml +++ /dev/null @@ -1,19 +0,0 @@ - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/lib/src/annotation_manager.dart b/lib/src/annotation_manager.dart index dfd7cfeaa..ea4d248fa 100644 --- a/lib/src/annotation_manager.dart +++ b/lib/src/annotation_manager.dart @@ -168,12 +168,8 @@ abstract class AnnotationManager { } class LineManager extends AnnotationManager { - LineManager(MaplibreMapController controller, - {void Function(Line)? onTap, bool enableInteraction = true}) + LineManager(super.controller, {super.onTap, super.enableInteraction = true}) : super( - controller, - onTap: onTap, - enableInteraction: enableInteraction, selectLayer: (Line line) => line.options.linePattern == null ? 0 : 1, ); @@ -197,13 +193,10 @@ class LineManager extends AnnotationManager { class FillManager extends AnnotationManager { FillManager( - MaplibreMapController controller, { - void Function(Fill)? onTap, - bool enableInteraction = true, + super.controller, { + super.onTap, + super.enableInteraction = true, }) : super( - controller, - onTap: onTap, - enableInteraction: enableInteraction, selectLayer: (Fill fill) => fill.options.fillPattern == null ? 0 : 1, ); @@ -225,14 +218,10 @@ class FillManager extends AnnotationManager { class CircleManager extends AnnotationManager { CircleManager( - MaplibreMapController controller, { - void Function(Circle)? onTap, - bool enableInteraction = true, - }) : super( - controller, - enableInteraction: enableInteraction, - onTap: onTap, - ); + super.controller, { + super.onTap, + super.enableInteraction = true, + }); @override List get allLayerProperties => const [ @@ -250,22 +239,17 @@ class CircleManager extends AnnotationManager { class SymbolManager extends AnnotationManager { SymbolManager( - MaplibreMapController controller, { - void Function(Symbol)? onTap, + super.controller, { + super.onTap, bool iconAllowOverlap = false, bool textAllowOverlap = false, bool iconIgnorePlacement = false, bool textIgnorePlacement = false, - bool enableInteraction = true, + super.enableInteraction = true, }) : _iconAllowOverlap = iconAllowOverlap, _textAllowOverlap = textAllowOverlap, _iconIgnorePlacement = iconIgnorePlacement, - _textIgnorePlacement = textIgnorePlacement, - super( - controller, - enableInteraction: enableInteraction, - onTap: onTap, - ); + _textIgnorePlacement = textIgnorePlacement; bool _iconAllowOverlap; bool _textAllowOverlap; diff --git a/lib/src/maplibre_map.dart b/lib/src/maplibre_map.dart index 98c94a8fd..71ebd8865 100644 --- a/lib/src/maplibre_map.dart +++ b/lib/src/maplibre_map.dart @@ -12,7 +12,7 @@ typedef MapCreatedCallback = void Function(MaplibreMapController controller); /// Also refer to the documentation of [maplibre_gl] and [MaplibreMapController]. class MaplibreMap extends StatefulWidget { const MaplibreMap({ - Key? key, + super.key, required this.initialCameraPosition, this.styleString = "https://demotiles.maplibre.org/style.json", this.onMapCreated, @@ -63,8 +63,7 @@ class MaplibreMap extends StatefulWidget { "$myLocationRenderMode requires [myLocationEnabled] set to true.", ), assert(annotationOrder.length <= 4), - assert(annotationConsumeTapEvents.length > 0), - super(key: key); + assert(annotationConsumeTapEvents.length > 0); /// Defines the layer order of annotations displayed on map /// diff --git a/maplibre_gl_platform_interface/pubspec.yaml b/maplibre_gl_platform_interface/pubspec.yaml index 0caac9bab..279dbfb7e 100644 --- a/maplibre_gl_platform_interface/pubspec.yaml +++ b/maplibre_gl_platform_interface/pubspec.yaml @@ -1,9 +1,13 @@ name: maplibre_gl_platform_interface description: A common platform interface for the maplibre_gl plugin. -version: 0.18.0 +version: 0.19.0 repository: https://github.com/maplibre/flutter-maplibre-gl issue_tracker: https://github.com/maplibre/flutter-maplibre-gl/issues +environment: + sdk: ">=3.0.0 <4.0.0" + flutter: ">=3.10.0" + dependencies: flutter: sdk: flutter @@ -11,7 +15,3 @@ dependencies: dev_dependencies: flutter_lints: '>=3.0.0 <5.0.0' - -environment: - sdk: '>=2.14.0 <3.0.0' - flutter: '>=2.10.0' diff --git a/maplibre_gl_web/lib/src/geo/geojson.dart b/maplibre_gl_web/lib/src/geo/geojson.dart index fb575e21d..f523c5544 100644 --- a/maplibre_gl_web/lib/src/geo/geojson.dart +++ b/maplibre_gl_web/lib/src/geo/geojson.dart @@ -20,8 +20,7 @@ class FeatureCollection extends JsObjectWrapper { } /// Creates a new FeatureCollection from a [jsObject]. - FeatureCollection.fromJsObject(FeatureCollectionJsImpl jsObject) - : super.fromJsObject(jsObject); + FeatureCollection.fromJsObject(super.jsObject) : super.fromJsObject(); } class Feature extends JsObjectWrapper { @@ -69,7 +68,7 @@ class Feature extends JsObjectWrapper { )); /// Creates a new Feature from a [jsObject]. - Feature.fromJsObject(FeatureJsImpl jsObject) : super.fromJsObject(jsObject); + Feature.fromJsObject(super.jsObject) : super.fromJsObject(); } class Geometry extends JsObjectWrapper { @@ -87,5 +86,5 @@ class Geometry extends JsObjectWrapper { )); /// Creates a new Geometry from a [jsObject]. - Geometry.fromJsObject(GeometryJsImpl jsObject) : super.fromJsObject(jsObject); + Geometry.fromJsObject(super.jsObject) : super.fromJsObject(); } diff --git a/maplibre_gl_web/lib/src/geo/lng_lat.dart b/maplibre_gl_web/lib/src/geo/lng_lat.dart index 57bc89365..62a88c2ae 100644 --- a/maplibre_gl_web/lib/src/geo/lng_lat.dart +++ b/maplibre_gl_web/lib/src/geo/lng_lat.dart @@ -84,5 +84,5 @@ class LngLat extends JsObjectWrapper { LngLat.fromJsObject(LngLatJsImpl.convert(input)); /// Creates a new LngLat from a [jsObject]. - LngLat.fromJsObject(LngLatJsImpl jsObject) : super.fromJsObject(jsObject); + LngLat.fromJsObject(super.jsObject) : super.fromJsObject(); } diff --git a/maplibre_gl_web/lib/src/geo/lng_lat_bounds.dart b/maplibre_gl_web/lib/src/geo/lng_lat_bounds.dart index 1e59cd8a1..a620954e0 100644 --- a/maplibre_gl_web/lib/src/geo/lng_lat_bounds.dart +++ b/maplibre_gl_web/lib/src/geo/lng_lat_bounds.dart @@ -143,6 +143,5 @@ class LngLatBounds extends JsObjectWrapper { LngLatBounds.fromJsObject(LngLatBoundsJsImpl.convert(input)); /// Creates a new LngLatBounds from a [jsObject]. - LngLatBounds.fromJsObject(LngLatBoundsJsImpl jsObject) - : super.fromJsObject(jsObject); + LngLatBounds.fromJsObject(super.jsObject) : super.fromJsObject(); } diff --git a/maplibre_gl_web/lib/src/geo/point.dart b/maplibre_gl_web/lib/src/geo/point.dart index 123999f0f..db631abc8 100644 --- a/maplibre_gl_web/lib/src/geo/point.dart +++ b/maplibre_gl_web/lib/src/geo/point.dart @@ -17,5 +17,5 @@ class Point extends JsObjectWrapper { )); /// Creates a new LngLat from a [jsObject]. - Point.fromJsObject(PointJsImpl jsObject) : super.fromJsObject(jsObject); + Point.fromJsObject(super.jsObject) : super.fromJsObject(); } diff --git a/maplibre_gl_web/lib/src/style/evaluation_parameters.dart b/maplibre_gl_web/lib/src/style/evaluation_parameters.dart index 9e7620394..bacfd9085 100644 --- a/maplibre_gl_web/lib/src/style/evaluation_parameters.dart +++ b/maplibre_gl_web/lib/src/style/evaluation_parameters.dart @@ -20,6 +20,5 @@ class EvaluationParameters extends JsObjectWrapper { dynamic getCrossfadeParameters() => jsObject.getCrossfadeParameters(); /// Creates a new EvaluationParameters from a [jsObject]. - EvaluationParameters.fromJsObject(EvaluationParametersJsImpl jsObject) - : super.fromJsObject(jsObject); + EvaluationParameters.fromJsObject(super.jsObject) : super.fromJsObject(); } diff --git a/maplibre_gl_web/lib/src/style/sources/geojson_source.dart b/maplibre_gl_web/lib/src/style/sources/geojson_source.dart index 0a358931b..0667e4d42 100644 --- a/maplibre_gl_web/lib/src/style/sources/geojson_source.dart +++ b/maplibre_gl_web/lib/src/style/sources/geojson_source.dart @@ -22,8 +22,7 @@ class GeoJsonSource extends Source { GeoJsonSource.fromJsObject(jsObject.setData(featureCollection.jsObject)); /// Creates a new GeoJsonSource from a [jsObject]. - GeoJsonSource.fromJsObject(GeoJsonSourceJsImpl jsObject) - : super.fromJsObject(jsObject); + GeoJsonSource.fromJsObject(super.jsObject) : super.fromJsObject(); @override get dict => { diff --git a/maplibre_gl_web/lib/src/style/sources/vector_source.dart b/maplibre_gl_web/lib/src/style/sources/vector_source.dart index 074cf2769..463b464a4 100644 --- a/maplibre_gl_web/lib/src/style/sources/vector_source.dart +++ b/maplibre_gl_web/lib/src/style/sources/vector_source.dart @@ -28,8 +28,7 @@ class VectorSource extends Source { } /// Creates a new VectorSource from a [jsObject]. - VectorSource.fromJsObject(VectorSourceJsImpl jsObject) - : super.fromJsObject(jsObject); + VectorSource.fromJsObject(super.jsObject) : super.fromJsObject(); @override get dict { diff --git a/maplibre_gl_web/lib/src/style/style.dart b/maplibre_gl_web/lib/src/style/style.dart index a4deb0f35..2805ceaca 100644 --- a/maplibre_gl_web/lib/src/style/style.dart +++ b/maplibre_gl_web/lib/src/style/style.dart @@ -9,8 +9,7 @@ class StyleSetterOptions extends JsObjectWrapper { bool get validate => jsObject.validate; /// Creates a new StyleSetterOptions from a [jsObject]. - StyleSetterOptions.fromJsObject(StyleSetterOptionsJsImpl jsObject) - : super.fromJsObject(jsObject); + StyleSetterOptions.fromJsObject(super.jsObject) : super.fromJsObject(); } class Style extends JsObjectWrapper { @@ -160,7 +159,7 @@ class Style extends JsObjectWrapper { jsObject.getResource(mapId, params.jsObject, callback); /// Creates a new Style from a [jsObject]. - Style.fromJsObject(StyleJsImpl jsObject) : super.fromJsObject(jsObject); + Style.fromJsObject(super.jsObject) : super.fromJsObject(); List get layers => jsObject.layers; } @@ -173,6 +172,5 @@ class StyleFunction extends JsObjectWrapper { StyleFunction.fromJsObject(StyleFunctionJsImpl(base: base, stops: stops)); /// Creates a new StyleFunction from a [jsObject]. - StyleFunction.fromJsObject(StyleFunctionJsImpl jsObject) - : super.fromJsObject(jsObject); + StyleFunction.fromJsObject(super.jsObject) : super.fromJsObject(); } diff --git a/maplibre_gl_web/lib/src/style/style_image.dart b/maplibre_gl_web/lib/src/style/style_image.dart index cf4292456..74977965f 100644 --- a/maplibre_gl_web/lib/src/style/style_image.dart +++ b/maplibre_gl_web/lib/src/style/style_image.dart @@ -12,8 +12,7 @@ class StyleImage extends JsObjectWrapper { StyleImageInterface.fromJsObject(jsObject.userImage); /// Creates a new EvaluationParameters from a [jsObject]. - StyleImage.fromJsObject(StyleImageJsImpl jsObject) - : super.fromJsObject(jsObject); + StyleImage.fromJsObject(super.jsObject) : super.fromJsObject(); } class StyleImageInterface extends JsObjectWrapper { @@ -26,6 +25,5 @@ class StyleImageInterface extends JsObjectWrapper { Function get onRemove => jsObject.onRemove; /// Creates a new EvaluationParameters from a [jsObject]. - StyleImageInterface.fromJsObject(StyleImageInterfaceJsImpl jsObject) - : super.fromJsObject(jsObject); + StyleImageInterface.fromJsObject(super.jsObject) : super.fromJsObject(); } diff --git a/maplibre_gl_web/lib/src/ui/camera.dart b/maplibre_gl_web/lib/src/ui/camera.dart index 622b1c61b..ef72be799 100644 --- a/maplibre_gl_web/lib/src/ui/camera.dart +++ b/maplibre_gl_web/lib/src/ui/camera.dart @@ -47,8 +47,7 @@ class CameraOptions extends JsObjectWrapper { )); /// Creates a new CameraOptions from a [jsObject]. - CameraOptions.fromJsObject(CameraOptionsJsImpl jsObject) - : super.fromJsObject(jsObject); + CameraOptions.fromJsObject(super.jsObject) : super.fromJsObject(); } /// Options common to map movement methods that involve animation, such as {@link MapLibreMap#panBy} and @@ -90,8 +89,7 @@ class AnimationOptions extends JsObjectWrapper { )); /// Creates a new AnimationOptions from a [jsObject]. - AnimationOptions.fromJsObject(AnimationOptionsJsImpl jsObject) - : super.fromJsObject(jsObject); + AnimationOptions.fromJsObject(super.jsObject) : super.fromJsObject(); } /// Options for setting padding on a call to {@link MapLibreMap#fitBounds}. All properties of this object must be @@ -125,8 +123,7 @@ class PaddingOptions extends JsObjectWrapper { )); /// Creates a new PaddingOptions from a [jsObject]. - PaddingOptions.fromJsObject(PaddingOptionsJsImpl jsObject) - : super.fromJsObject(jsObject); + PaddingOptions.fromJsObject(super.jsObject) : super.fromJsObject(); } class Camera extends Evented { diff --git a/maplibre_gl_web/lib/src/ui/control/attribution_control.dart b/maplibre_gl_web/lib/src/ui/control/attribution_control.dart index df04cf9e4..325fcb813 100644 --- a/maplibre_gl_web/lib/src/ui/control/attribution_control.dart +++ b/maplibre_gl_web/lib/src/ui/control/attribution_control.dart @@ -16,9 +16,7 @@ class AttributionControlOptions )); /// Creates a new AttributionControlOptions from a [jsObject]. - AttributionControlOptions.fromJsObject( - AttributionControlOptionsJsImpl jsObject) - : super.fromJsObject(jsObject); + AttributionControlOptions.fromJsObject(super.jsObject) : super.fromJsObject(); } /// A `AttributionControl` control contains zoom buttons and a compass. @@ -44,6 +42,5 @@ class AttributionControl extends JsObjectWrapper { onRemove() => jsObject.onRemove(); /// Creates a new MapOptions from a [jsObject]. - AttributionControl.fromJsObject(AttributionControlJsImpl jsObject) - : super.fromJsObject(jsObject); + AttributionControl.fromJsObject(super.jsObject) : super.fromJsObject(); } diff --git a/maplibre_gl_web/lib/src/ui/control/geolocate_control.dart b/maplibre_gl_web/lib/src/ui/control/geolocate_control.dart index 0c148f663..dc645d2a4 100644 --- a/maplibre_gl_web/lib/src/ui/control/geolocate_control.dart +++ b/maplibre_gl_web/lib/src/ui/control/geolocate_control.dart @@ -29,8 +29,7 @@ class GeolocateControlOptions )); /// Creates a new MapOptions from a [jsObject]. - GeolocateControlOptions.fromJsObject(GeolocateControlOptionsJsImpl jsObject) - : super.fromJsObject(jsObject); + GeolocateControlOptions.fromJsObject(super.jsObject) : super.fromJsObject(); } class PositionOptions extends JsObjectWrapper { @@ -50,8 +49,7 @@ class PositionOptions extends JsObjectWrapper { )); /// Creates a new MapOptions from a [jsObject]. - PositionOptions.fromJsObject(PositionOptionsJsImpl jsObject) - : super.fromJsObject(jsObject); + PositionOptions.fromJsObject(super.jsObject) : super.fromJsObject(); } /// A `GeolocateControl` control provides a button that uses the browser's geolocation diff --git a/maplibre_gl_web/lib/src/ui/control/logo_control.dart b/maplibre_gl_web/lib/src/ui/control/logo_control.dart index 966907018..b0b404ee0 100644 --- a/maplibre_gl_web/lib/src/ui/control/logo_control.dart +++ b/maplibre_gl_web/lib/src/ui/control/logo_control.dart @@ -14,6 +14,5 @@ class LogoControl extends JsObjectWrapper { getDefaultPosition() => jsObject.getDefaultPosition(); /// Creates a new LogoControl from a [jsObject]. - LogoControl.fromJsObject(LogoControlJsImpl jsObject) - : super.fromJsObject(jsObject); + LogoControl.fromJsObject(super.jsObject) : super.fromJsObject(); } diff --git a/maplibre_gl_web/lib/src/ui/control/navigation_control.dart b/maplibre_gl_web/lib/src/ui/control/navigation_control.dart index 703909a74..fa9fb957f 100644 --- a/maplibre_gl_web/lib/src/ui/control/navigation_control.dart +++ b/maplibre_gl_web/lib/src/ui/control/navigation_control.dart @@ -23,8 +23,7 @@ class NavigationControlOptions )); /// Creates a new NavigationControlOptions from a [jsObject]. - NavigationControlOptions.fromJsObject(NavigationControlOptionsJsImpl jsObject) - : super.fromJsObject(jsObject); + NavigationControlOptions.fromJsObject(super.jsObject) : super.fromJsObject(); } /// A `NavigationControl` control contains zoom buttons and a compass. @@ -51,6 +50,5 @@ class NavigationControl extends JsObjectWrapper { onRemove() => jsObject.onRemove(); /// Creates a new MapOptions from a [jsObject]. - NavigationControl.fromJsObject(NavigationControlJsImpl jsObject) - : super.fromJsObject(jsObject); + NavigationControl.fromJsObject(super.jsObject) : super.fromJsObject(); } diff --git a/maplibre_gl_web/lib/src/ui/events.dart b/maplibre_gl_web/lib/src/ui/events.dart index 60c29a96d..621d56ef0 100644 --- a/maplibre_gl_web/lib/src/ui/events.dart +++ b/maplibre_gl_web/lib/src/ui/events.dart @@ -37,8 +37,7 @@ class MapMouseEvent extends JsObjectWrapper { bool get defaultPrevented => jsObject.defaultPrevented; /// Creates a new MapMouseEvent from a [jsObject]. - MapMouseEvent.fromJsObject(MapMouseEventJsImpl jsObject) - : super.fromJsObject(jsObject); + MapMouseEvent.fromJsObject(super.jsObject) : super.fromJsObject(); } class MapTouchEvent extends JsObjectWrapper { @@ -80,6 +79,5 @@ class MapTouchEvent extends JsObjectWrapper { bool get defaultPrevented => jsObject.defaultPrevented; /// Creates a new MapTouchEvent from a [jsObject]. - MapTouchEvent.fromJsObject(MapTouchEventJsImpl jsObject) - : super.fromJsObject(jsObject); + MapTouchEvent.fromJsObject(super.jsObject) : super.fromJsObject(); } diff --git a/maplibre_gl_web/lib/src/ui/handler/box_zoom.dart b/maplibre_gl_web/lib/src/ui/handler/box_zoom.dart index b60574d73..8beaec0be 100644 --- a/maplibre_gl_web/lib/src/ui/handler/box_zoom.dart +++ b/maplibre_gl_web/lib/src/ui/handler/box_zoom.dart @@ -30,6 +30,5 @@ class BoxZoomHandler extends JsObjectWrapper { onMouseDown(MouseEvent e) => jsObject.onMouseDown(e); /// Creates a new BoxZoomHandler from a [jsObject]. - BoxZoomHandler.fromJsObject(BoxZoomHandlerJsImpl jsObject) - : super.fromJsObject(jsObject); + BoxZoomHandler.fromJsObject(super.jsObject) : super.fromJsObject(); } diff --git a/maplibre_gl_web/lib/src/ui/handler/dblclick_zoom.dart b/maplibre_gl_web/lib/src/ui/handler/dblclick_zoom.dart index bb39a71ba..b0e87d239 100644 --- a/maplibre_gl_web/lib/src/ui/handler/dblclick_zoom.dart +++ b/maplibre_gl_web/lib/src/ui/handler/dblclick_zoom.dart @@ -32,6 +32,5 @@ class DoubleClickZoomHandler onDblClick(MapMouseEvent e) => jsObject.onDblClick(e.jsObject); /// Creates a new DoubleClickZoomHandler from a [jsObject]. - DoubleClickZoomHandler.fromJsObject(DoubleClickZoomHandlerJsImpl jsObject) - : super.fromJsObject(jsObject); + DoubleClickZoomHandler.fromJsObject(super.jsObject) : super.fromJsObject(); } diff --git a/maplibre_gl_web/lib/src/ui/handler/drag_pan.dart b/maplibre_gl_web/lib/src/ui/handler/drag_pan.dart index 73d41995e..a67fdeddf 100644 --- a/maplibre_gl_web/lib/src/ui/handler/drag_pan.dart +++ b/maplibre_gl_web/lib/src/ui/handler/drag_pan.dart @@ -32,6 +32,5 @@ class DragPanHandler extends JsObjectWrapper { onTouchStart(TouchEvent e) => jsObject.onTouchStart(e); /// Creates a new DragPanHandler from a [jsObject]. - DragPanHandler.fromJsObject(DragPanHandlerJsImpl jsObject) - : super.fromJsObject(jsObject); + DragPanHandler.fromJsObject(super.jsObject) : super.fromJsObject(); } diff --git a/maplibre_gl_web/lib/src/ui/handler/drag_rotate.dart b/maplibre_gl_web/lib/src/ui/handler/drag_rotate.dart index afc541e3f..c7adac83f 100644 --- a/maplibre_gl_web/lib/src/ui/handler/drag_rotate.dart +++ b/maplibre_gl_web/lib/src/ui/handler/drag_rotate.dart @@ -30,6 +30,5 @@ class DragRotateHandler extends JsObjectWrapper { onMouseDown(MouseEvent e) => jsObject.onMouseDown(e); /// Creates a new DragPanHandler from a [jsObject]. - DragRotateHandler.fromJsObject(DragRotateHandlerJsImpl jsObject) - : super.fromJsObject(jsObject); + DragRotateHandler.fromJsObject(super.jsObject) : super.fromJsObject(); } diff --git a/maplibre_gl_web/lib/src/ui/handler/keyboard.dart b/maplibre_gl_web/lib/src/ui/handler/keyboard.dart index ec976005f..ed4b02eec 100644 --- a/maplibre_gl_web/lib/src/ui/handler/keyboard.dart +++ b/maplibre_gl_web/lib/src/ui/handler/keyboard.dart @@ -21,6 +21,5 @@ class KeyboardHandler extends JsObjectWrapper { bool disable() => jsObject.disable(); /// Creates a new KeyboardHandler from a [jsObject]. - KeyboardHandler.fromJsObject(KeyboardHandlerJsImpl jsObject) - : super.fromJsObject(jsObject); + KeyboardHandler.fromJsObject(super.jsObject) : super.fromJsObject(); } diff --git a/maplibre_gl_web/lib/src/ui/handler/scroll_zoom.dart b/maplibre_gl_web/lib/src/ui/handler/scroll_zoom.dart index 81ac94496..95f2ebb02 100644 --- a/maplibre_gl_web/lib/src/ui/handler/scroll_zoom.dart +++ b/maplibre_gl_web/lib/src/ui/handler/scroll_zoom.dart @@ -46,6 +46,5 @@ class ScrollZoomHandler extends JsObjectWrapper { onWheel(WheelEvent e) => jsObject.onWheel(e); /// Creates a new ScrollZoomHandler from a [jsObject]. - ScrollZoomHandler.fromJsObject(ScrollZoomHandlerJsImpl jsObject) - : super.fromJsObject(jsObject); + ScrollZoomHandler.fromJsObject(super.jsObject) : super.fromJsObject(); } diff --git a/maplibre_gl_web/lib/src/ui/handler/touch_zoom_rotate.dart b/maplibre_gl_web/lib/src/ui/handler/touch_zoom_rotate.dart index 16d75bef4..9ba5a74e1 100644 --- a/maplibre_gl_web/lib/src/ui/handler/touch_zoom_rotate.dart +++ b/maplibre_gl_web/lib/src/ui/handler/touch_zoom_rotate.dart @@ -44,6 +44,5 @@ class TouchZoomRotateHandler onStart(TouchEvent e) => jsObject.onStart(e); /// Creates a new TouchZoomRotateHandler from a [jsObject]. - TouchZoomRotateHandler.fromJsObject(TouchZoomRotateHandlerJsImpl jsObject) - : super.fromJsObject(jsObject); + TouchZoomRotateHandler.fromJsObject(super.jsObject) : super.fromJsObject(); } diff --git a/maplibre_gl_web/lib/src/ui/map.dart b/maplibre_gl_web/lib/src/ui/map.dart index 898b2fc2f..4e462392b 100644 --- a/maplibre_gl_web/lib/src/ui/map.dart +++ b/maplibre_gl_web/lib/src/ui/map.dart @@ -1296,8 +1296,7 @@ class MapOptions extends JsObjectWrapper { )); /// Creates a new MapOptions from a [jsObject]. - MapOptions.fromJsObject(MapOptionsJsImpl jsObject) - : super.fromJsObject(jsObject); + MapOptions.fromJsObject(super.jsObject) : super.fromJsObject(); } class RequestParameters extends JsObjectWrapper { @@ -1327,8 +1326,7 @@ class RequestParameters extends JsObjectWrapper { )); /// Creates a new RequestParameters from a [jsObject]. - RequestParameters.fromJsObject(RequestParametersJsImpl jsObject) - : super.fromJsObject(jsObject); + RequestParameters.fromJsObject(super.jsObject) : super.fromJsObject(); } /// Interface for interactive controls added to the map. This is a @@ -1379,5 +1377,5 @@ class IControl extends JsObjectWrapper { String getDefaultPosition() => jsObject.getDefaultPosition(); /// Creates a new IControl from a [jsObject]. - IControl.fromJsObject(IControlJsImpl jsObject) : super.fromJsObject(jsObject); + IControl.fromJsObject(super.jsObject) : super.fromJsObject(); } diff --git a/maplibre_gl_web/lib/src/ui/marker.dart b/maplibre_gl_web/lib/src/ui/marker.dart index e9251fbf0..57e1b9c28 100644 --- a/maplibre_gl_web/lib/src/ui/marker.dart +++ b/maplibre_gl_web/lib/src/ui/marker.dart @@ -155,6 +155,5 @@ class MarkerOptions extends JsObjectWrapper { )); /// Creates a new MarkerOptions from a [jsObject]. - MarkerOptions.fromJsObject(MarkerOptionsJsImpl jsObject) - : super.fromJsObject(jsObject); + MarkerOptions.fromJsObject(super.jsObject) : super.fromJsObject(); } diff --git a/maplibre_gl_web/lib/src/ui/popup.dart b/maplibre_gl_web/lib/src/ui/popup.dart index 65d31f79e..14f895679 100644 --- a/maplibre_gl_web/lib/src/ui/popup.dart +++ b/maplibre_gl_web/lib/src/ui/popup.dart @@ -215,6 +215,5 @@ class PopupOptions extends JsObjectWrapper { )); /// Creates a new PopupOptions from a [jsObject]. - PopupOptions.fromJsObject(PopupOptionsJsImpl jsObject) - : super.fromJsObject(jsObject); + PopupOptions.fromJsObject(super.jsObject) : super.fromJsObject(); } diff --git a/maplibre_gl_web/lib/src/util/evented.dart b/maplibre_gl_web/lib/src/util/evented.dart index 46b733933..4c7d4f0f2 100644 --- a/maplibre_gl_web/lib/src/util/evented.dart +++ b/maplibre_gl_web/lib/src/util/evented.dart @@ -43,7 +43,7 @@ class Event extends JsObjectWrapper { preventDefault() => jsObject.preventDefault(); /// Creates a new Event from a [jsObject]. - Event.fromJsObject(EventJsImpl jsObject) : super.fromJsObject(jsObject); + Event.fromJsObject(super.jsObject) : super.fromJsObject(); } class Evented extends JsObjectWrapper { @@ -138,5 +138,5 @@ class Evented extends JsObjectWrapper { jsObject.setEventedParent(parent?.jsObject, data); /// Creates a new Evented from a [jsObject]. - Evented.fromJsObject(EventedJsImpl jsObject) : super.fromJsObject(jsObject); + Evented.fromJsObject(super.jsObject) : super.fromJsObject(); } diff --git a/maplibre_gl_web/pubspec.yaml b/maplibre_gl_web/pubspec.yaml index bf64d2a2b..8f02d1743 100644 --- a/maplibre_gl_web/pubspec.yaml +++ b/maplibre_gl_web/pubspec.yaml @@ -1,9 +1,13 @@ name: maplibre_gl_web description: Web platform implementation of maplibre_gl -version: 0.18.0 +version: 0.19.0 repository: https://github.com/maplibre/flutter-maplibre-gl issue_tracker: https://github.com/maplibre/flutter-maplibre-gl/issues +environment: + sdk: ">=3.0.0 <4.0.0" + flutter: ">=3.10.0" + flutter: plugin: platforms: @@ -18,20 +22,11 @@ dependencies: flutter_web_plugins: sdk: flutter meta: ^1.3.0 - maplibre_gl_platform_interface: - git: - url: https://github.com/maplibre/flutter-maplibre-gl.git - path: maplibre_gl_platform_interface - ref: main + maplibre_gl_platform_interface: ^0.19.0 image: ^4.0.17 -dependency_overrides: - maplibre_gl_platform_interface: - path: ../maplibre_gl_platform_interface - dev_dependencies: flutter_lints: '>=3.0.0 <5.0.0' -environment: - sdk: ">=2.12.0 <3.0.0" - flutter: ">=2.0.0" +platforms: + web: diff --git a/maplibre_gl_web/pubspec_overrides.yaml b/maplibre_gl_web/pubspec_overrides.yaml new file mode 100644 index 000000000..e54872cb8 --- /dev/null +++ b/maplibre_gl_web/pubspec_overrides.yaml @@ -0,0 +1,3 @@ +dependency_overrides: + maplibre_gl_platform_interface: + path: ../maplibre_gl_platform_interface diff --git a/pubspec.yaml b/pubspec.yaml index d3b39fc5b..e17f8bdd3 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -1,32 +1,22 @@ name: maplibre_gl description: A Flutter plugin for integrating Maplibre Maps inside a Flutter application on Android, iOS and web platforms. -version: 0.18.0 +version: 0.19.0 repository: https://github.com/maplibre/flutter-maplibre-gl issue_tracker: https://github.com/maplibre/flutter-maplibre-gl/issues +environment: + sdk: ">=3.0.0 <4.0.0" + flutter: ">=3.10.0" + dependencies: flutter: sdk: flutter - maplibre_gl_platform_interface: - git: - url: https://github.com/maplibre/flutter-maplibre-gl.git - path: maplibre_gl_platform_interface - ref: main - maplibre_gl_web: - git: - url: https://github.com/maplibre/flutter-maplibre-gl.git - path: maplibre_gl_web - ref: main + maplibre_gl_platform_interface: ^0.19.0 + maplibre_gl_web: ^0.19.0 dev_dependencies: flutter_lints: '>=3.0.0 <5.0.0' -dependency_overrides: - maplibre_gl_platform_interface: - path: ./maplibre_gl_platform_interface - maplibre_gl_web: - path: ./maplibre_gl_web - flutter: plugin: platforms: @@ -38,8 +28,7 @@ flutter: web: default_package: maplibre_gl_web -environment: - # Flutter 2.15 is the required min to be able to use Enum.name - sdk: '>=2.15.0 <3.0.0' - flutter: ">=2.8.1" - +platforms: + android: + ios: + web: diff --git a/pubspec_overrides.yaml b/pubspec_overrides.yaml new file mode 100644 index 000000000..e8fff836d --- /dev/null +++ b/pubspec_overrides.yaml @@ -0,0 +1,5 @@ +dependency_overrides: + maplibre_gl_platform_interface: + path: ./maplibre_gl_platform_interface + maplibre_gl_web: + path: ./maplibre_gl_web diff --git a/scripts/pubspec.yaml b/scripts/pubspec.yaml index 959e8c67b..be1ee2493 100644 --- a/scripts/pubspec.yaml +++ b/scripts/pubspec.yaml @@ -1,4 +1,4 @@ -name: mapbox_code_gen +name: maplibre_code_gen description: code generation for flutter-mapbox-gl publish_to: 'none'