Requirements
php: ^8laravel/nova: ^4
Installation
You can install the package in to a Laravel app that uses Nova via composer:
composer require wm/map-pointDevelop
create anova-components folder in the root of the project where you want to develop.
Clone map-point inside.
add in "repositories" array attribute of composer.json
{
"type": "path",
"url": "./nova-components/map-point"
}modify in "requires" object attribute of composer.json
"wm/map-point": "*",launch inside the repository hosting the field
cd vendor/laravel/nova && npm installwe need modify composer.lock launch
composer update wm/map-pointlaunch inside field
npm installUsage
Map Point
You can display and edit a post gist geography(Point,4326) point on map
use Wm\MapPoint\MapPoint;
/**
* 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(),
...
MapPoint::make('geometry')->withMeta([
'center' => [42, 10],
'attribution' => '<a href="https://webmapp.it/">Webmapp</a> contributors',
'tiles' => 'https://api.webmapp.it/tiles/{z}/{x}/{y}.png',
'minZoom' => 8,
'maxZoom' => 17,
'defaultZoom' => 13
]),
];
}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 | '<a href="https://www.openstreetmap.org/">OpenStreetMap</a> contributors, <a href="https://github.com/webmappsrl/map-point/blob/v1.0.3/https://creativecommons.org/licenses/by-sa/2.0/">CC-BY-SA</a>, Imagery (c) <a href="https://www.mapbox.com/">Mapbox</a>' | The HTML content displayed as map attribution. |
| tiles | string | 'https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png' | The tile URL used for the map. |



