[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"package:filament-leaflet-map-picker":3},{"type":4,"package":5,"activeDoc":11,"seo":142,"alternates":144,"editable":147},"package",{"id":6,"title":7,"slug":8,"url":9,"excerpt":10,"formatted_price":11,"type":12,"github_url":15,"external_url":11,"plumb":16,"category":24,"tags":28,"cover":11,"blocks":38,"toc":85,"docs":141},5,"Leaflet Map Picker","filament-leaflet-map-picker","\u002Ftr\u002Fpaketler\u002Ffilament-leaflet-map-picker","Select and store geographical coordinates with an interactive Leaflet map field for Filament.",null,{"value":13,"label":14},"free","Free","https:\u002F\u002Fgithub.com\u002Fafsakar\u002Ffilament-leaflet-map-picker",{"version":17,"security":18,"abandoned":19,"composite":20,"ecosystem":21,"checked_at":22,"maintenance":21,"url":23},"v3.0.0",67.57,false,82.16,100,"2026-08-15T21:10:11+00:00","https:\u002F\u002Fplumbphp.dev\u002Fafsakar\u002Ffilament-leaflet-map-picker",{"id":25,"title":26,"slug":27},3,"FilamentPHP","filamentphp",[29,32,35],{"id":30,"title":31,"slug":31},15,"v3",{"id":33,"title":34,"slug":34},13,"v4",{"id":36,"title":37,"slug":37},14,"v5",[39,43,46,49,52,55,58,61,64,67,70,73,76,79,82],{"type":40,"data":41},"general.rich-text",{"content":42},"\u003Cp>A Filament Forms component that provides an interactive Leaflet map for selecting and storing geographical coordinates.\u003C\u002Fp>\n\u003Cp>\u003Cimg src=\"https:\u002F\u002Fraw.githubusercontent.com\u002Fafsakar\u002Ffilament-leaflet-map-picker\u002Fmain\u002Fart\u002Fleaflet-js-banner.png\" alt=\"Banner\" title=\"Banner\" \u002F>\u003C\u002Fp>",{"type":40,"data":44},{"content":45},"\u003Ch2 id=\"features\">Features\u003C\u002Fh2>\n\u003Cul>\n\u003Cli>Interactive map for location selection\u003C\u002Fli>\n\u003Cli>Canonical \u003Ccode>{ lat, lng }\u003C\u002Fcode> state with legacy \u003Ccode>[lat, lng]\u003C\u002Fcode> and JSON string input support\u003C\u002Fli>\n\u003Cli>Adjustable zoom level and map height\u003C\u002Fli>\n\u003Cli>Draggable and clickable markers\u003C\u002Fli>\n\u003Cli>&quot;My Location&quot; button for quick navigation to the user's current position\u003C\u002Fli>\n\u003Cli>Search modal backed by an explicit-submit geocoder request\u003C\u002Fli>\n\u003Cli>OpenStreetMap and Esri tile presets plus custom HTTPS tile layers\u003C\u002Fli>\n\u003Cli>Custom marker configuration\u003C\u002Fli>\n\u003Cli>Read-only display mode and Infolist entry support\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cimg src=\"https:\u002F\u002Fraw.githubusercontent.com\u002Fafsakar\u002Ffilament-leaflet-map-picker\u002Fmain\u002Fart\u002Fsc-default.png\" alt=\"Screenshot\" title=\"Default\" \u002F>\u003C\u002Fp>",{"type":40,"data":47},{"content":48},"\u003Ch2 id=\"compatibility\">Compatibility\u003C\u002Fh2>\n\u003Ctable>\n\u003Cthead>\n\u003Ctr>\n\u003Cth>Package line\u003C\u002Fth>\n\u003Cth>Filament\u003C\u002Fth>\n\u003Cth>Laravel\u003C\u002Fth>\n\u003Cth>PHP\u003C\u002Fth>\n\u003Cth>Notes\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\n\u003Ctr>\n\u003Ctd>v3.0.0 target\u003C\u002Ftd>\n\u003Ctd>4.x\u003C\u002Ftd>\n\u003Ctd>12.x\u003C\u002Ftd>\n\u003Ctd>8.2+\u003C\u002Ftd>\n\u003Ctd>Supported in this line\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>v3.0.0 target\u003C\u002Ftd>\n\u003Ctd>4.x\u003C\u002Ftd>\n\u003Ctd>13.x\u003C\u002Ftd>\n\u003Ctd>8.3+\u003C\u002Ftd>\n\u003Ctd>Supported in this line\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>v3.0.0 target\u003C\u002Ftd>\n\u003Ctd>5.x\u003C\u002Ftd>\n\u003Ctd>12.x\u003C\u002Ftd>\n\u003Ctd>8.2+\u003C\u002Ftd>\n\u003Ctd>Host app must provide Livewire 4 and Tailwind CSS 4\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>v3.0.0 target\u003C\u002Ftd>\n\u003Ctd>5.x\u003C\u002Ftd>\n\u003Ctd>13.x\u003C\u002Ftd>\n\u003Ctd>8.3+\u003C\u002Ftd>\n\u003Ctd>Host app must provide Livewire 4 and Tailwind CSS 4\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>v2.x\u003C\u002Ftd>\n\u003Ctd>3.x\u003C\u002Ftd>\n\u003Ctd>Existing v2 support matrix\u003C\u002Ftd>\n\u003Ctd>See v2 docs\u003C\u002Ftd>\n\u003Ctd>Filament 3 stays on the v2 line\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\n\u003C\u002Ftable>\n\u003Cp>Filament 3 support is intentionally not part of the v3.0.0 package line. If you are staying on Filament 3, keep using the v2 releases.\u003C\u002Fp>",{"type":40,"data":50},{"content":51},"\u003Ch2 id=\"installation\">Installation\u003C\u002Fh2>\n\u003Cp>Install the PHP package in your Filament app:\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-bash\">composer require afsakar\u002Ffilament-leaflet-map-picker\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>The package auto-discovers its service provider. Filament assets are registered with \u003Ccode>FilamentAsset\u003C\u002Fcode> and loaded on demand through the component views' \u003Ccode>x-load\u003C\u002Fcode>, \u003Ccode>x-load-src\u003C\u002Fcode>, and \u003Ccode>x-load-css\u003C\u002Fcode> attributes, so you do not need to copy the compiled JS\u002FCSS into your app for normal usage.\u003C\u002Fp>\n\u003Cp>If you want Leaflet's image assets published locally, you can still publish them:\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-bash\">php artisan vendor:publish --tag=&quot;filament-leaflet-map-picker-assets&quot;\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>You can publish translations with:\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-bash\">php artisan vendor:publish --tag=&quot;filament-leaflet-map-picker-translations&quot;\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Optionally, you can publish the views with:\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-bash\">php artisan vendor:publish --tag=&quot;filament-leaflet-map-picker-views&quot;\n\u003C\u002Fcode>\u003C\u002Fpre>",{"type":40,"data":53},{"content":54},"\u003Ch2 id=\"database-and-model-setup\">Database and model setup\u003C\u002Fh2>\n\u003Cp>Store the coordinates in a \u003Ccode>json\u003C\u002Fcode> or \u003Ccode>text\u003C\u002Fcode> column:\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-php\">Schema::create('properties', function (Blueprint $table) {\n    $table-&gt;id();\n    $table-&gt;json('location')-&gt;nullable();\n    $table-&gt;timestamps();\n});\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Cast the attribute to \u003Ccode>array\u003C\u002Fcode> in your model:\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-php\">namespace App\\Models;\n\nuse Illuminate\\Database\\Eloquent\\Model;\n\nclass Property extends Model\n{\n    protected $fillable = [\n        'location',\n    ];\n\n    protected $casts = [\n        'location' =&gt; 'array',\n    ];\n}\n\u003C\u002Fcode>\u003C\u002Fpre>",{"type":40,"data":56},{"content":57},"\u003Ch2 id=\"canonical-state-format-and-migration-notes\">Canonical state format and migration notes\u003C\u002Fh2>\n\u003Cp>The canonical saved state for v3 is:\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-json\">{ &quot;lat&quot;: 41.0082, &quot;lng&quot;: 28.9784 }\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>The package still reads these legacy inputs while you migrate existing data:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>legacy arrays like \u003Ccode>[41.0082, 28.9784]\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>JSON strings like \u003Ccode>&quot;{\\&quot;lat\\&quot;:41.0082,\\&quot;lng\\&quot;:28.9784}&quot;\u003C\u002Fcode>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>New writes should use the canonical object shape. If you already cast the column to \u003Ccode>array\u003C\u002Fcode>, Laravel will persist the object-shaped array cleanly in a \u003Ccode>json\u003C\u002Fcode> column.\u003C\u002Fp>",{"type":40,"data":59},{"content":60},"\u003Ch2 id=\"usage\">Usage\u003C\u002Fh2>\n\u003Ch3 id=\"form\">Form\u003C\u002Fh3>\n\u003Cpre>\u003Ccode class=\"language-php\">use Afsakar\\LeafletMapPicker\\LeafletMapPicker;\n\nLeafletMapPicker::make('location')\n    -&gt;label('Property Location')\n    -&gt;height('500px')\n    -&gt;defaultLocation(['lat' =&gt; 41.0082, 'lng' =&gt; 28.9784])\n    -&gt;defaultZoom(15)\n    -&gt;draggable()\n    -&gt;clickable()\n    -&gt;myLocationButtonLabel('Go to My Location')\n    -&gt;geocoderEndpoint('https:\u002F\u002Fnominatim.openstreetmap.org\u002Fsearch')\n    -&gt;geolocationTimeout(10000)\n    -&gt;geolocationHighAccuracy()\n    -&gt;hideTileControl()\n    -&gt;readOnly()\n    -&gt;tileProvider('openstreetmap')\n    -&gt;customTiles([\n        'mapbox' =&gt; [\n            'url' =&gt; 'https:\u002F\u002Fapi.mapbox.com\u002Fstyles\u002Fv1\u002F{id}\u002Ftiles\u002F{z}\u002F{x}\u002F{y}?access_token={accessToken}',\n            'options' =&gt; [\n                'attribution' =&gt; '&amp;copy; &lt;a href=&quot;https:\u002F\u002Fwww.mapbox.com\u002F&quot;&gt;Mapbox&lt;\u002Fa&gt;',\n                'id' =&gt; 'mapbox\u002Fstreets-v11',\n                'maxZoom' =&gt; 19,\n                'accessToken' =&gt; 'YOUR_MAPBOX_TOKEN',\n            ],\n        ],\n    ])\n    -&gt;customMarker([\n        'iconUrl' =&gt; asset('pin-2.png'),\n        'iconSize' =&gt; [38, 38],\n        'iconAnchor' =&gt; [19, 38],\n        'popupAnchor' =&gt; [0, -38],\n    ]);\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>To show editable latitude and longitude inputs inside the picker, enable them on the picker and do not add separate sibling inputs for the same \u003Ccode>location\u003C\u002Fcode> state path:\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-php\">LeafletMapPicker::make('location')\n    -&gt;showCoordinateInputs();\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>When enabled, the selected-location summary is hidden. The default is \u003Ccode>false\u003C\u002Fcode>, which keeps the summary visible.\u003C\u002Fp>\n\u003Cp>The simplest canonical default location example is:\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-php\">LeafletMapPicker::make('location')\n    -&gt;defaultLocation(['lat' =&gt; 41.0082, 'lng' =&gt; 28.9784]);\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch3 id=\"state-synchronization-behavior\">State synchronization behavior\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Clicking the map writes \u003Ccode>{ lat, lng }\u003C\u002Fcode> into the field state.\u003C\u002Fli>\n\u003Cli>Dragging the marker writes \u003Ccode>{ lat, lng }\u003C\u002Fcode> into the field state.\u003C\u002Fli>\n\u003Cli>Search result selection writes \u003Ccode>{ lat, lng }\u003C\u002Fcode> into the field state.\u003C\u002Fli>\n\u003Cli>Geolocation writes \u003Ccode>{ lat, lng }\u003C\u002Fcode> into the field state.\u003C\u002Fli>\n\u003Cli>When \u003Ccode>showCoordinateInputs()\u003C\u002Fcode> is enabled, editing either coordinate updates the map and the canonical field state after the input changes.\u003C\u002Fli>\n\u003Cli>If the Livewire\u002FAlpine state is changed manually to a valid coordinate object, legacy array, or supported JSON string, the marker and map recenter to match it.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3 id=\"table-column\">Table column\u003C\u002Fh3>\n\u003Cpre>\u003Ccode class=\"language-php\">use Afsakar\\LeafletMapPicker\\LeafletMapPickerColumn;\n\npublic function table(Table $table): Table\n{\n    return $table-&gt;columns([\n        LeafletMapPickerColumn::make('location')\n            -&gt;label('Location')\n            -&gt;height('240px'),\n    ]);\n}\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>The column renders a compact thumbnail: it marks the location with a small dot instead of a pin and hides the attribution control, which would otherwise cover most of the tile. The default height is \u003Ccode>50px\u003C\u002Fcode>.\u003C\u002Fp>\n\u003Cp>The column is read-only. It accepts the canonical \u003Ccode>{ lat, lng }\u003C\u002Fcode> object and legacy arrays or JSON strings. Null and invalid values use the configured default only for visual map placement; they are not shown as a selected record location and never change the row state.\u003C\u002Fp>\n\u003Ch3 id=\"infolist\">Infolist\u003C\u002Fh3>\n\u003Cpre>\u003Ccode class=\"language-php\">use Afsakar\\LeafletMapPicker\\LeafletMapPickerEntry;\n\nLeafletMapPickerEntry::make('location')\n    -&gt;label('Property Location')\n    -&gt;height('500px')\n    -&gt;defaultLocation(['lat' =&gt; 41.0082, 'lng' =&gt; 28.9784])\n    -&gt;tileProvider('openstreetmap')\n    -&gt;hideTileControl()\n    -&gt;customTiles([\n        'mapbox' =&gt; [\n            'url' =&gt; 'https:\u002F\u002Fapi.mapbox.com\u002Fstyles\u002Fv1\u002F{id}\u002Ftiles\u002F{z}\u002F{x}\u002F{y}?access_token={accessToken}',\n            'options' =&gt; [\n                'attribution' =&gt; '&amp;copy; &lt;a href=&quot;https:\u002F\u002Fwww.mapbox.com\u002F&quot;&gt;Mapbox&lt;\u002Fa&gt;',\n                'id' =&gt; 'mapbox\u002Fstreets-v11',\n                'maxZoom' =&gt; 19,\n                'accessToken' =&gt; 'YOUR_MAPBOX_TOKEN',\n            ],\n        ],\n    ])\n    -&gt;customMarker([\n        'iconUrl' =&gt; asset('pin-2.png'),\n        'iconSize' =&gt; [38, 38],\n        'iconAnchor' =&gt; [19, 38],\n        'popupAnchor' =&gt; [0, -38],\n    ]);\n\u003C\u002Fcode>\u003C\u002Fpre>",{"type":40,"data":62},{"content":63},"\u003Ch2 id=\"search-tile-and-geolocation-policy\">Search, tile, and geolocation policy\u003C\u002Fh2>\n\u003Cul>\n\u003Cli>Built-in tile presets are limited to \u003Ccode>openstreetmap\u003C\u002Fcode> and \u003Ccode>esri\u003C\u002Fcode>.\u003C\u002Fli>\n\u003Cli>OpenStreetMap tile usage must stay on HTTPS and keep the provider's attribution visible.\u003C\u002Fli>\n\u003Cli>The default browser geocoder endpoint is \u003Ccode>https:\u002F\u002Fnominatim.openstreetmap.org\u002Fsearch\u003C\u002Fcode>.\u003C\u002Fli>\n\u003Cli>Public Nominatim usage here is explicit-submit only. The package does not support autocomplete against the public endpoint.\u003C\u002Fli>\n\u003Cli>Keep public Nominatim traffic to roughly 1 request per second.\u003C\u002Fli>\n\u003Cli>Your application is responsible for any required \u003Ccode>Referer\u003C\u002Fcode>, \u003Ccode>User-Agent\u003C\u002Fcode>, API key, custom tile contract, attribution, or provider-specific compliance.\u003C\u002Fli>\n\u003Cli>The browser-side package does not spoof a \u003Ccode>User-Agent\u003C\u002Fcode>, and browser control over \u003Ccode>Referer\u003C\u002Fcode> is limited by the host app and browser policy.\u003C\u002Fli>\n\u003Cli>If you need higher traffic, backend credentials, bulk\u002Foffline tiles, or policy-controlled geocoding, use your own backend proxy or a commercial\u002Fprovider-managed geocoder instead of the public endpoint.\u003C\u002Fli>\n\u003Cli>Offline\u002Fbulk tile distribution is outside this package; if you need it, bring your own compliant tile infrastructure.\u003C\u002Fli>\n\u003C\u002Ful>",{"type":40,"data":65},{"content":66},"\u003Ch2 id=\"development-checks\">Development checks\u003C\u002Fh2>\n\u003Cp>Run the package checks from the repository root:\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-bash\">composer install\nnpm install\nnpm run build\ncomposer validate --no-check-publish\ncomposer lint\ncomposer phpstan\ncomposer test\nnpm run test:js\n\u003C\u002Fcode>\u003C\u002Fpre>",{"type":40,"data":68},{"content":69},"\u003Ch2 id=\"screenshots\">Screenshots\u003C\u002Fh2>\n\u003Cp>Default:\n\u003Cimg src=\"https:\u002F\u002Fraw.githubusercontent.com\u002Fafsakar\u002Ffilament-leaflet-map-picker\u002Fmain\u002Fart\u002Fsc-default.png\" alt=\"Screenshot\" title=\"Default\" \u002F>\u003C\u002Fp>\n\u003Cp>Custom Marker:\n\u003Cimg src=\"https:\u002F\u002Fraw.githubusercontent.com\u002Fafsakar\u002Ffilament-leaflet-map-picker\u002Fmain\u002Fart\u002Fsc-custom-marker.png\" alt=\"Screenshot\" title=\"Custom Marker\" \u002F>\u003C\u002Fp>\n\u003Cp>Custom Tile:\n\u003Cimg src=\"https:\u002F\u002Fraw.githubusercontent.com\u002Fafsakar\u002Ffilament-leaflet-map-picker\u002Fmain\u002Fart\u002Fsc-custom-tile.png\" alt=\"Screenshot\" title=\"Custom Tile\" \u002F>\u003C\u002Fp>",{"type":40,"data":71},{"content":72},"\u003Ch2 id=\"changelog\">Changelog\u003C\u002Fh2>\n\u003Cp>Please see \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fafsakar\u002Ffilament-leaflet-map-picker\u002Fblob\u002Fmain\u002FCHANGELOG.md\">CHANGELOG\u003C\u002Fa> for more information on what has changed recently.\u003C\u002Fp>",{"type":40,"data":74},{"content":75},"\u003Ch2 id=\"contributing\">Contributing\u003C\u002Fh2>\n\u003Cp>Please see \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fafsakar\u002Ffilament-leaflet-map-picker\u002Fblob\u002Fmain\u002F.github\u002FCONTRIBUTING.md\">CONTRIBUTING\u003C\u002Fa> for details.\u003C\u002Fp>",{"type":40,"data":77},{"content":78},"\u003Ch2 id=\"security-vulnerabilities\">Security Vulnerabilities\u003C\u002Fh2>\n\u003Cp>Please review \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fafsakar\u002Ffilament-leaflet-map-picker\u002Fblob\u002Fmain\u002F..\u002F..\u002Fsecurity\u002Fpolicy\">our security policy\u003C\u002Fa> on how to report security vulnerabilities.\u003C\u002Fp>",{"type":40,"data":80},{"content":81},"\u003Ch2 id=\"credits\">Credits\u003C\u002Fh2>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fafsakar\">Azad Furkan ŞAKAR\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fafsakar\u002Ffilament-leaflet-map-picker\u002Fblob\u002Fmain\u002F..\u002F..\u002Fcontributors\">All Contributors\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>",{"type":40,"data":83},{"content":84},"\u003Ch2 id=\"license\">License\u003C\u002Fh2>\n\u003Cp>The MIT License (MIT). Please see \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fafsakar\u002Ffilament-leaflet-map-picker\u002Fblob\u002Fmain\u002FLICENSE.md\">License File\u003C\u002Fa> for more information.\u003C\u002Fp>",[86,90,93,96,99,102,105,108,111,114,117,120,123,126,129,132,135,138],{"id":87,"label":88,"level":89},"features","Features",2,{"id":91,"label":92,"level":89},"compatibility","Compatibility",{"id":94,"label":95,"level":89},"installation","Installation",{"id":97,"label":98,"level":89},"database-and-model-setup","Database and model setup",{"id":100,"label":101,"level":89},"canonical-state-format-and-migration-notes","Canonical state format and migration notes",{"id":103,"label":104,"level":89},"usage","Usage",{"id":106,"label":107,"level":25},"form","Form",{"id":109,"label":110,"level":25},"state-synchronization-behavior","State synchronization behavior",{"id":112,"label":113,"level":25},"table-column","Table column",{"id":115,"label":116,"level":25},"infolist","Infolist",{"id":118,"label":119,"level":89},"search-tile-and-geolocation-policy","Search, tile, and geolocation policy",{"id":121,"label":122,"level":89},"development-checks","Development checks",{"id":124,"label":125,"level":89},"screenshots","Screenshots",{"id":127,"label":128,"level":89},"changelog","Changelog",{"id":130,"label":131,"level":89},"contributing","Contributing",{"id":133,"label":134,"level":89},"security-vulnerabilities","Security Vulnerabilities",{"id":136,"label":137,"level":89},"credits","Credits",{"id":139,"label":140,"level":89},"license","License",[],{"html":143},"\u003Ctitle>FilamentPHP LeafletJS Map Picker Plugin - Azad Furkan Şakar\u003C\u002Ftitle>\n\u003Cmeta name=\"description\" content=\"Filament için etkileşimli bir Leaflet harita alanı kullanarak coğrafi koordinatları seçin ve kaydedin.\">\n\u003Cmeta name=\"keywords\" content=\"laravel, backend, developer, php\">\n\u003Clink rel=\"canonical\" href=\"https:\u002F\u002Fafsakar.dev\u002Ftr\u002Fpaketler\u002Ffilament-leaflet-map-picker\">\n\u003Clink rel=\"alternate\" hreflang=\"en\" href=\"https:\u002F\u002Fafsakar.dev\u002Fpackages\u002Ffilament-leaflet-map-picker\">\n\u003Clink rel=\"alternate\" hreflang=\"tr\" href=\"https:\u002F\u002Fafsakar.dev\u002Ftr\u002Fpaketler\u002Ffilament-leaflet-map-picker\">\n\u003Clink rel=\"alternate\" hreflang=\"x-default\" href=\"https:\u002F\u002Fafsakar.dev\u002Fpackages\u002Ffilament-leaflet-map-picker\">\n\u003Cmeta name=\"robots\" content=\"index, follow\">\n\u003Cmeta property=\"og:title\" content=\"FilamentPHP LeafletJS Map Picker Plugin\">\n\u003Cmeta property=\"og:description\" content=\"Filament için etkileşimli bir Leaflet harita alanı kullanarak coğrafi koordinatları seçin ve kaydedin.\">\n\u003Cmeta property=\"og:type\" content=\"website\">\n\u003Cmeta property=\"og:site_name\" content=\"Azad Furkan Şakar\">\n\u003Cmeta property=\"og:url\" content=\"https:\u002F\u002Fafsakar.dev\u002Ftr\u002Fpaketler\u002Ffilament-leaflet-map-picker\">\n\u003Cmeta property=\"og:image\" content=\"https:\u002F\u002Fafsakar.dev\u002Fstorage\u002Fog-images\u002Fpackages\u002F5-tr.png\">\n\n\u003Cmeta name=\"twitter:site\" content=\"afsakar\">\n\u003Cmeta name=\"twitter:card\" content=\"summary_large_image\">\n\u003Cmeta name=\"twitter:image\" content=\"https:\u002F\u002Fafsakar.dev\u002Fstorage\u002Fog-images\u002Fpackages\u002F5-tr.png\">\n\u003Cmeta name=\"twitter:title\" content=\"FilamentPHP LeafletJS Map Picker Plugin\">\n\u003Cmeta name=\"twitter:description\" content=\"Filament için etkileşimli bir Leaflet harita alanı kullanarak coğrafi koordinatları seçin ve kaydedin.\">\n\u003Cmeta name=\"twitter:url\" content=\"https:\u002F\u002Fafsakar.dev\u002Ftr\u002Fpaketler\u002Ffilament-leaflet-map-picker\">\n\u003Cscript type=\"application\u002Fld+json\">{\"@context\":\"https:\u002F\u002Fschema.org\",\"@type\":\"WebPage\",\"name\":\"FilamentPHP LeafletJS Map Picker Plugin\",\"description\":\"Filament için etkileşimli bir Leaflet harita alanı kullanarak coğrafi koordinatları seçin ve kaydedin.\",\"url\":\"https:\u002F\u002Fafsakar.dev\u002Ftr\u002Fpaketler\u002Ffilament-leaflet-map-picker\",\"image\":\"https:\u002F\u002Fafsakar.dev\u002Fstorage\u002Fog-images\u002Fpackages\u002F5-tr.png\",\"mainEntityOfPage\":{\"@type\":\"WebPage\",\"@id\":\"https:\u002F\u002Fafsakar.dev\u002Ftr\u002Fpaketler\u002Ffilament-leaflet-map-picker\"}}\u003C\u002Fscript>\u003Cscript type=\"application\u002Fld+json\">{\"@context\":\"https:\u002F\u002Fschema.org\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Ana sayfa\",\"item\":\"https:\u002F\u002Fafsakar.dev\u002Ftr\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Paketler\",\"item\":\"https:\u002F\u002Fafsakar.dev\u002Ftr\u002Fpaketler\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Leaflet Map Picker\",\"item\":\"https:\u002F\u002Fafsakar.dev\u002Ftr\u002Fpaketler\u002Ffilament-leaflet-map-picker\"}]}\u003C\u002Fscript>\u003Cscript type=\"application\u002Fld+json\">{\"@context\":\"https:\u002F\u002Fschema.org\",\"@type\":\"Person\",\"name\":\"Azad Furkan Şakar\",\"url\":\"https:\u002F\u002Fafsakar.dev\",\"@id\":\"https:\u002F\u002Fafsakar.dev\u002F#person\",\"jobTitle\":\"Backend Developer\",\"image\":\"https:\u002F\u002Fafsakar.dev\u002Fstorage\u002Fsettings\u002Fseo\u002F01KZB42F3FQQSDTQRYYX861RAA.jpeg\",\"sameAs\":[\"https:\u002F\u002Fx.com\u002Fafsakar\",\"https:\u002F\u002Flinkedin.com\u002Fin\u002Fafsakar\",\"https:\u002F\u002Fgithub.com\u002Fafsakar\"]}\u003C\u002Fscript>",{"en":145,"tr":146},"https:\u002F\u002Fafsakar.dev\u002Fpackages\u002Ffilament-leaflet-map-picker","https:\u002F\u002Fafsakar.dev\u002Ftr\u002Fpaketler\u002Ffilament-leaflet-map-picker",{"type":4,"id":6}]