wm/map-multi-polygon

A Laravel Nova field.

v0.0.4 2024-08-20 12:53 UTC

This package is auto-updated.

Last update: 2024-11-20 14:29:22 UTC


README

Map Multi Polygon, awesome resource field for Nova

Version

Requirements

  • php: ^8
  • laravel/nova: ^4

Installation

You can install the package in to a Laravel app that uses Nova via composer:

composer require wm/map-multi-polygon

Develop

create anova-components folder in the root of the project where you want to develop. Clone map-multi-polygon inside. add in "repositories" array attribute of composer.json

        {
            "type": "path",
            "url": "./nova-components/map-multi-polygon"
        }

modify in "requires" object attribute of composer.json

    "wm/map-multi-polygon": "*",

in the first time

launch inside the repository hosting the field

    cd vendor/laravel/nova && npm install

we need modify composer.lock launch

    composer update wm/map-multi-polygon

launch inside field

    npm install

Usage

Map Point

image

You can display a post gist geography(MultiPolygon,4326) area on the map and change it by uploading a new MultiPolygon file (.GPX, .KML, .GEOJSON)

    use Wm\MapMultiPolygon\MapMultiPolygon;
    /**
     * Get the fields displayed by the resource.
     *
     * @param  \Laravel\Nova\Http\Requests\NovaRequest  $request
     * @return array
     */
    public function fields(NovaRequest $request)
    {
        return [
            ID::make()->sortable(),
                ...
            MapMultiPolygon::make('geometry')->withMeta([
                'center' => ['42.795977075', '10.326813853'],
                'attribution' => '<a href="https://webmapp.it/">Webmapp</a> contributors',
            ]),
        ];
    }

Configuration

As of v1.4.0 it's possible to use a Tab class instead of an array to represent your tabs.