PHPackages                             wm/map-multi-polygon - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. wm/map-multi-polygon

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

wm/map-multi-polygon
====================

A Laravel Nova field.

v1.0.4(1y ago)03.7k21MITVuePHP ^7.3|^8.0CI passing

Since Sep 8Pushed 1y ago2 watchersCompare

[ Source](https://github.com/webmappsrl/map-multi-polygon)[ Packagist](https://packagist.org/packages/wm/map-multi-polygon)[ RSS](/packages/wm-map-multi-polygon/feed)WikiDiscussions main Synced today

READMEChangelog (6)DependenciesVersions (12)Used By (1)

[![Map Multi Polygon, awesome resource field for Nova](banner.jpg)](banner.jpg)

---

[![Version](https://camo.githubusercontent.com/41c4e001debdbaf1583032ed87fa2d4ecc2b96b783bb0fac39013f7c8e3a10d7/687474703a2f2f706f7365722e707567782e6f72672f776d2f6d61702d6d756c74692d706f6c79676f6e2f76657273696f6e)](https://packagist.org/packages/wm/map-multi-polygon)

- [Requirements](#requirements)
- [Installation](#installation)
- [Develop](#develop)
- [Usage](#usage)
    - [Map Point](#map-point)
- [Configuration](#configuration)

Requirements
------------

[](#requirements)

- `php: ^8`
- `laravel/nova: ^4`

Installation
------------

[](#installation)

You can install the package in to a Laravel app that uses [Nova](https://nova.laravel.com) via composer:

```
composer require wm/map-multi-polygon
```

Develop
-------

[](#develop)

create a`nova-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
-----

[](#usage)

### Map Point

[](#map-point)

[![image](field.png)](field.png)

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' => 'Webmapp contributors',
            ]),
        ];
    }
```

Configuration
-------------

[](#configuration)

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

    Property Type Default Description     center array \[0,0\] The coordinates used to center the view of an empty map.  attribution string '&lt;a href="[https://www.openstreetmap.org/"&gt;OpenStreetMap&lt;/a](https://www.openstreetmap.org/">OpenStreetMapMapbox
