leaflet-html 0.3.4 → 0.3.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. package/package.json +4 -1
  2. package/.github/workflows/master.yml +0 -15
  3. package/.github/workflows/npm-publish.yml +0 -37
  4. package/.prettierignore +0 -2
  5. package/.prettierrc +0 -1
  6. package/docs/config.toml +0 -16
  7. package/docs/content/_index.md +0 -89
  8. package/docs/content/articles/_index.md +0 -5
  9. package/docs/content/articles/basic.md +0 -110
  10. package/docs/content/articles/htmx.md +0 -84
  11. package/docs/content/articles/icons.md +0 -47
  12. package/docs/content/articles/style.md +0 -14
  13. package/docs/public/icons/leaf-green.png +0 -0
  14. package/docs/public/icons/leaf-orange.png +0 -0
  15. package/docs/public/icons/leaf-red.png +0 -0
  16. package/docs/public/icons/leaf-shadow.png +0 -0
  17. package/docs/static/htmx/clicked.html +0 -1
  18. package/docs/static/htmx/marker.html +0 -3
  19. package/docs/static/htmx/tile-esri.html +0 -3
  20. package/docs/static/htmx/tile-osm.html +0 -4
  21. package/docs/static/htmx/tile-voyager.html +0 -4
  22. package/docs/static/icons/leaf-green.png +0 -0
  23. package/docs/static/icons/leaf-orange.png +0 -0
  24. package/docs/static/icons/leaf-red.png +0 -0
  25. package/docs/static/icons/leaf-shadow.png +0 -0
  26. package/docs/static/style.css +0 -48
  27. package/docs/templates/article-page.html +0 -8
  28. package/docs/templates/article.html +0 -12
  29. package/docs/templates/base.html +0 -43
  30. package/docs/templates/index.html +0 -6
  31. package/docs/templates/shortcodes/url.html +0 -1
  32. package/example/geojson/index.html +0 -44
  33. package/example/index.html +0 -113
  34. package/example/overlays/index.html +0 -78
  35. package/src/events.js +0 -3
  36. package/src/index.js +0 -33
  37. package/src/l-base-layers.js +0 -16
  38. package/src/l-control-layers.js +0 -39
  39. package/src/l-geojson.js +0 -27
  40. package/src/l-icon.js +0 -124
  41. package/src/l-image-overlay.js +0 -54
  42. package/src/l-lat-lng-bounds.js +0 -21
  43. package/src/l-layer-group.js +0 -51
  44. package/src/l-layer.js +0 -8
  45. package/src/l-map.js +0 -56
  46. package/src/l-marker.js +0 -95
  47. package/src/l-overlay-layers.js +0 -16
  48. package/src/l-popup.js +0 -22
  49. package/src/l-tile-layer.js +0 -32
  50. package/src/l-video-overlay.js +0 -34
  51. package/vite.config.js +0 -7
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "leaflet-html",
3
3
  "type": "module",
4
- "version": "0.3.4",
4
+ "version": "0.3.5",
5
5
  "description": "Leaflet expressed in HTML",
6
6
  "keywords": [
7
7
  "leaflet",
@@ -14,6 +14,9 @@
14
14
  "main": "./dist/leaflet-html.cjs",
15
15
  "module": "./dist/leaflet-html.js",
16
16
  "author": "andrewgryan",
17
+ "files": [
18
+ "dist"
19
+ ],
17
20
  "repository": {
18
21
  "type": "git",
19
22
  "url": "git+https://github.com/andrewgryan/leaflet-html.git"
@@ -1,15 +0,0 @@
1
- on: push
2
- name: Build and deploy GH Pages
3
- jobs:
4
- build:
5
- runs-on: ubuntu-latest
6
- if: github.ref == 'refs/heads/master'
7
- steps:
8
- - name: checkout
9
- uses: actions/checkout@v4
10
- - name: build_and_deploy
11
- uses: shalzz/zola-deploy-action@v0.17.2
12
- env:
13
- BUILD_DIR: docs
14
- PAGES_BRANCH: gh-pages
15
- TOKEN: ${{ secrets.GITHUB_TOKEN }}
@@ -1,37 +0,0 @@
1
- name: npm-publish
2
- on:
3
- push:
4
- branches:
5
- - master
6
- jobs:
7
- npm-publish:
8
- name: npm-publish
9
- runs-on: ubuntu-latest
10
- steps:
11
- - name: Checkout repository
12
- uses: actions/checkout@v4
13
- - name: Set Node.js
14
- uses: actions/setup-node@v4
15
- with:
16
- node-version: 21
17
- - name: Install
18
- uses: borales/actions-yarn@v4
19
- with:
20
- cmd: install
21
- - name: Build
22
- uses: borales/actions-yarn@v4
23
- with:
24
- cmd: build
25
- - name: Publish if version has been updated
26
- uses: pascalgn/npm-publish-action@1.3.9
27
- with:
28
- tag_name: "v%s"
29
- tag_message: "v%s"
30
- create_tag: "true"
31
- commit_pattern: "^Release (\\S+)"
32
- workspace: "."
33
- publish_command: "yarn"
34
- publish_args: "--non-interactive"
35
- env:
36
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
37
- NPM_AUTH_TOKEN: ${{ secrets.NPM_AUTH_TOKEN }}
package/.prettierignore DELETED
@@ -1,2 +0,0 @@
1
- docs
2
- example
package/.prettierrc DELETED
@@ -1 +0,0 @@
1
- {}
package/docs/config.toml DELETED
@@ -1,16 +0,0 @@
1
- # The URL the site will be built for
2
- base_url = "https://andrewgryan.github.io/leaflet-html"
3
-
4
- # Whether to automatically compile all Sass files in the sass directory
5
- compile_sass = false
6
-
7
- # Whether to build a search index to be used later on by a JavaScript library
8
- build_search_index = false
9
-
10
- [markdown]
11
- # Whether to do syntax highlighting
12
- # Theme can be customised by setting the `highlight_theme` variable to a theme supported by Zola
13
- highlight_code = true
14
-
15
- [extra]
16
- # Put all your custom variables here
@@ -1,89 +0,0 @@
1
- +++
2
- +++
3
- # Leaflet HTML
4
-
5
- [LeafletJS](https://leafletjs.com/) is a library geared towards map based visualisations.
6
- Leaflet HTML expresses that JavaScript API in HTML.
7
-
8
- ## How-to guides
9
-
10
- [Articles](@/articles/_index.md) have been written to make adopting Leaflet HTML simpler.
11
- These articles follow the Leaflet tutorials closely and add a few `leaflet-html` specific
12
- tips and tricks.
13
-
14
- ## Design principles
15
-
16
- Leaflet HTML tries to model Leaflet's API as closely as possible to avoid confusion and to ease onboarding.
17
- Naming conventions are followed where possible.
18
- The hierarchy in the JS API is replicated by nesting HTML elements.
19
-
20
- ## Example
21
-
22
- The following is a live running example of Leaflet HTML.
23
-
24
- <l-map center="[39.61, -105.02]" zoom="10">
25
- <l-control-layers>
26
- <l-base-layers>
27
- <l-tile-layer
28
- name="CartoDB_Voyager"
29
- url-template="https://{s}.basemaps.cartocdn.com/rastertiles/voyager/{z}/{x}/{y}{r}.png"
30
- attribution='&copy; <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors &copy; <a href="https://carto.com/attributions">CARTO</a>'
31
- max-zoom="20"
32
- subdomains="abcd"
33
- show
34
- ></l-tile-layer>
35
- </l-base-layers>
36
- <l-overlay-layers>
37
- <l-layer-group name="Cities">
38
- <l-marker lat-lng="[39.61, -105.02]">
39
- <l-popup content="This is Littleton, CO."></l-popup>
40
- </l-marker>
41
- <l-marker lat-lng="[39.74, -104.99]">
42
- <l-popup content="This is Denver, CO."></l-popup>
43
- </l-marker>
44
- <l-marker lat-lng="[39.73, -104.8]">
45
- <l-popup content="This is Aurora, CO."></l-popup>
46
- </l-marker>
47
- <l-marker lat-lng="[39.77, -105.23]">
48
- <l-popup content="This is Golden, CO."></l-popup>
49
- </l-marker>
50
- </l-layer-group>
51
- </l-overlay-layers>
52
- </l-control-layers>
53
- </l-map>
54
-
55
- The above application is represented in HTML using the following syntax.
56
-
57
- ```html
58
- <l-map center="[39.61, -105.02]" zoom="10">
59
- <l-control-layers>
60
- <l-base-layers>
61
- <l-tile-layer
62
- name="CartoDB_Voyager"
63
- url-template="https://{s}.basemaps.cartocdn.com/rastertiles/voyager/{z}/{x}/{y}{r}.png"
64
- attribution='&copy; <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors &copy; <a href="https://carto.com/attributions">CARTO</a>'
65
- max-zoom="20"
66
- subdomains="abcd"
67
- ></l-tile-layer>
68
- </l-base-layers>
69
- <l-overlay-layers>
70
- <l-layer-group name="Cities">
71
- <l-marker lat-lng="[39.61, -105.02]">
72
- <l-popup content="This is Littleton, CO."></l-popup>
73
- </l-marker>
74
- <l-marker lat-lng="[39.74, -104.99]">
75
- <l-popup content="This is Denver, CO."></l-popup>
76
- </l-marker>
77
- <l-marker lat-lng="[39.73, -104.8]">
78
- <l-popup content="This is Aurora, CO."></l-popup>
79
- </l-marker>
80
- <l-marker lat-lng="[39.77, -105.23]">
81
- <l-popup content="This is Golden, CO."></l-popup>
82
- </l-marker>
83
- </l-layer-group>
84
- </l-overlay-layers>
85
- </l-control-layers>
86
- </l-map>
87
- ```
88
-
89
- The above example is a taste of the syntax and capabilities of wrapping Leaflet in HTML tags.
@@ -1,5 +0,0 @@
1
- +++
2
- title = "Leaflet HTML articles"
3
- template = "article.html"
4
- page_template = "article-page.html"
5
- +++
@@ -1,110 +0,0 @@
1
- +++
2
- title = "Basic usage"
3
- +++
4
-
5
- The minimal `leaflet-html` app is a basemap centered and zoomed on a location.
6
-
7
- ```html
8
- <l-map center="[53, 0]" zoom="4">
9
- <l-tile-layer
10
- url-template="https://{s}.basemaps.cartocdn.com/rastertiles/voyager/{z}/{x}/{y}{r}.png"
11
- ></l-tile-layer>
12
- </l-map>
13
- ```
14
-
15
- <l-map center="[53, 0]" zoom="4">
16
- <l-tile-layer
17
- url-template="https://{s}.basemaps.cartocdn.com/rastertiles/voyager/{z}/{x}/{y}{r}.png"
18
- ></l-tile-layer>
19
- </l-map>
20
-
21
- To add the above widget to a HTML document both JS and CSS tags need to be included in the `<head>` of the page.
22
-
23
- ## Assets
24
-
25
- Basic HTML recommended settings, e.g. `charset`, `lang`, and `viewport` to help with cross device support.
26
- Can be placed in the `<head>` tag, along with CSS and JS assets.
27
-
28
- ```html
29
- <head lang="en">
30
- <meta charset="utf-8" />
31
- <meta name="viewport" content="width=device-width, initial-scale=1" />
32
- </head>
33
- ```
34
-
35
- ### Leaflet
36
-
37
- Leaflet is an external dependency of `leaflet-html`, as such,
38
- the standard Leaflet assets should be included.
39
-
40
- ```html
41
- <head>
42
- ...
43
- <link
44
- rel="stylesheet"
45
- href="https://unpkg.com/leaflet@1.9.4/dist/leaflet.css"
46
- integrity="sha256-p4NxAoJBhIIN+hmNHrzRCf9tD/miZyoHS5obTRR9BMY="
47
- crossorigin=""
48
- />
49
- ...
50
- </head>
51
- ```
52
-
53
- ### Leaflet-HTML
54
-
55
- Leaflet-HTML is available via **npm** and **unpkg**.
56
- To get started quickly, use the CDN version available on **unpkg**.
57
-
58
- ```html
59
- <script type="importmap">
60
- {
61
- "imports": {
62
- "leaflet": "https://unpkg.com/leaflet@1.9.4/dist/leaflet-src.esm.js",
63
- "leaflet-html": "https://unpkg.com/leaflet-html@latest/dist/leaflet-html.js"
64
- }
65
- }
66
- </script>
67
- ```
68
-
69
- ```html
70
- <script type="module">
71
- import "leaflet-html";
72
- </script>
73
- ```
74
-
75
- The `@latest` keyword should keep your site up to date during development.
76
-
77
- ## Minimal style
78
-
79
- By default Custom elements are `display: inline`,
80
- meaning they are unaffected by `height`.
81
- Add the following ruleset to your stylesheet to enable map size.
82
-
83
- ```css
84
- l-map {
85
- display: block;
86
- }
87
- ```
88
-
89
- It's not always necessary to set `block` directly on an `l-map` tag.
90
- For example, a parent with `display: grid`, will size the `l-map` tag appropriately.
91
-
92
- ### Z-index
93
-
94
- Leaflet has fairly strong `z-index` settings that are not easy to override.
95
- The easiest way to get around them is to start a new stacking context using `isolation: isolate`.
96
-
97
- ### Sensible defaults
98
-
99
- Without knowing anything specific about your application the following settings should be a good starting place.
100
-
101
- ```css
102
- l-map {
103
- display: block;
104
- block-size: 40ch;
105
- isolation: isolate;
106
- z-index: 1;
107
- }
108
- ```
109
-
110
- This allows overlaying your own UI elements and gives full control over size and position of each map on the page.
@@ -1,84 +0,0 @@
1
- +++
2
- title = "Working with HTMX"
3
- +++
4
-
5
- To add HTMX to a project.
6
- Add a script tag to pull the library into your page.
7
-
8
- ```html
9
- <script src="https://unpkg.com/htmx.org@1.9.12"></script>
10
- <!-- have a button POST a click via AJAX -->
11
- <button hx-get="/clicked" hx-swap="outerHTML">
12
- Click Me
13
- </button>
14
- ```
15
-
16
- <script src="https://unpkg.com/htmx.org@1.9.12"></script>
17
- <button hx-get={{ url(path="htmx/clicked.html") }} hx-swap="outerHTML">
18
- Click Me
19
- </button>
20
-
21
- ## Use with Leaflet-HTML
22
-
23
- The principles that govern HTMX development also hold for Leaflet-HTML.
24
- A button that requests HTML to replace part of the document should update the map.
25
-
26
- ```html
27
- <!-- Initial map -->
28
- <l-map center="[55,-5]" zoom="4">
29
- <l-tile-layer
30
- url-template="https://{s}.basemaps.cartocdn.com/rastertiles/voyager/{z}/{x}/{y}{r}.png"
31
- ></l-tile-layer>
32
- </l-map>
33
-
34
- <!-- Tiles -->
35
- <button hx-get="/tile-osm.html" hx-target="l-tile-layer" hx-swap="outerHTML">
36
- OSM
37
- </button>
38
- <button hx-get="/tile-voyager.html" hx-target="l-tile-layer" hx-swap="outerHTML">
39
- Voyager
40
- </button>
41
- <button hx-get="/tile-esri.html" hx-target="l-tile-layer" hx-swap="outerHTML">
42
- ESRI
43
- </button>
44
-
45
- <!-- Marker -->
46
- <button hx-get="/marker.html" hx-target="l-map" hx-swap="beforeend">
47
- Add marker
48
- </button>
49
- <button hx-get="/marker.html" hx-target="l-marker" hx-swap="delete">
50
- Delete marker
51
- </button>
52
- ```
53
-
54
- <l-map center="[55,-5]" zoom="4">
55
- <l-tile-layer
56
- url-template="https://{s}.basemaps.cartocdn.com/rastertiles/voyager/{z}/{x}/{y}{r}.png"
57
- ></l-tile-layer>
58
- </l-map>
59
-
60
- <button hx-get={{ url(path='htmx/tile-osm.html') }} hx-target="l-tile-layer" hx-swap="outerHTML">
61
- OSM
62
- </button>
63
- <button hx-get={{ url(path='htmx/tile-voyager.html') }} hx-target="l-tile-layer" hx-swap="outerHTML">
64
- Voyager
65
- </button>
66
- <button hx-get={{ url(path='htmx/tile-esri.html') }} hx-target="l-tile-layer" hx-swap="outerHTML">
67
- ESRI
68
- </button>
69
- <button hx-get={{ url(path='htmx/marker.html') }} hx-target="l-map" hx-swap="beforeend">
70
- Add marker
71
- </button>
72
- <button hx-get={{ url(path='htmx/marker.html')}} hx-target="l-marker" hx-swap="delete">
73
- Delete marker
74
- </button>
75
-
76
- The above approach works by triggering the change handlers in the `<l-tile-layer>` custom element.
77
- The additional HTML tags generated by Leaflet are also inside the `<l-map>` tag.
78
- Care should be taken to not `hx-swap` the tags governed by Leaflet.
79
-
80
- All Leaflet-HTML tags, e.g. `<l-marker>`, `<l-icon>`, etc. can be swapped however you like.
81
- It is just the contents of `<l-map>` that needs careful consideration.
82
-
83
- A more elegant mechanism in the future will make it clear which part of the document is controlled by Leaflet.
84
-
@@ -1,47 +0,0 @@
1
- +++
2
- title = "Custom icons"
3
- +++
4
-
5
- There are two ways to add an icon to a marker.
6
- One is to specify a `icon` attribute containing a JSON string of `L.Icon` options.
7
-
8
- ```html
9
- <l-marker
10
- lat-lng="[51.5, -0.09]"
11
- icon='{"iconUrl": "icons/leaf-green.png"}'
12
- ></l-marker>
13
- ```
14
-
15
- The other way is to create a separate HTML tag to configure the icon.
16
- This is a more HTML centered approach.
17
- The above JSON approach may be suitable in cases where the icon data is available in a data structure.
18
-
19
- ```html
20
- <l-marker lat-lng="[51.5, -0.09]"><l-icon
21
- icon-url="/icons/leaf-green.png"
22
- shadow-url="/icons/leaf-shadow.png"
23
- icon-size="[38, 95]"
24
- shadow-size="[50, 64]"
25
- icon-anchor="[22, 94]"
26
- shadow-anchor="[4, 62]"
27
- popup-anchor="[-3, -76]"
28
- ></l-icon>
29
- ```
30
-
31
- Both are supported, choose whichever is most convenient.
32
-
33
- <l-map center="[51.5, -0.09]" zoom="12">
34
- <l-tile-layer
35
- url-template="https://{s}.basemaps.cartocdn.com/rastertiles/voyager/{z}/{x}/{y}{r}.png"
36
- ></l-tile-layer>
37
- <l-marker lat-lng="[51.5, -0.09]"><l-icon
38
- icon-url={{ url(path='icons/leaf-green.png') }}
39
- shadow-url={{ url(path='icons/leaf-shadow.png') }}
40
- icon-size="[38, 95]"
41
- shadow-size="[50, 64]"
42
- icon-anchor="[22, 94]"
43
- shadow-anchor="[4, 62]"
44
- popup-anchor="[-3, -76]"
45
- ></l-icon>
46
- </l-marker>
47
- </l-map>
@@ -1,14 +0,0 @@
1
- +++
2
- title = "Styling leaflet objects"
3
- +++
4
-
5
- ## Naming convention
6
- Leaflet styles objects using the `style` keyword option.
7
- Leaflet HTML, on the other hand, needs to support inline style and leaflet style.
8
- Therefore, the keyword `l-style` is used to style the underlying leaflet objects.
9
-
10
- ## Example
11
-
12
- ```html
13
- <l-marker l-style='{"color": "hotpink"}'></l-marker>
14
- ```
Binary file
Binary file
Binary file
Binary file
@@ -1 +0,0 @@
1
- <h2>Hello, HTMX!</h2>
@@ -1,3 +0,0 @@
1
- <l-marker lat-lng="[55,-5]">
2
- <l-popup content="I'm from the server"></l-popup>
3
- </l-marker>
@@ -1,3 +0,0 @@
1
- <l-tile-layer
2
- url-template="https://server.arcgisonline.com/ArcGIS/rest/services/Canvas/World_Light_Gray_Base/MapServer/tile/{z}/{y}/{x}"
3
- ></l-tile-layer>
@@ -1,4 +0,0 @@
1
- <l-tile-layer
2
- url-template="https://tile.openstreetmap.org/{z}/{x}/{y}.png"
3
- ></l-tile-layer>
4
-
@@ -1,4 +0,0 @@
1
- <l-tile-layer
2
- url-template="https://{s}.basemaps.cartocdn.com/rastertiles/voyager/{z}/{x}/{y}{r}.png"
3
- ></l-tile-layer>
4
-
Binary file
Binary file
Binary file
Binary file
@@ -1,48 +0,0 @@
1
- @import "https://unpkg.com/open-props";
2
-
3
- l-map {
4
- display: block;
5
- block-size: 40ch;
6
- isolation: isolate;
7
- z-index: 1;
8
- }
9
-
10
- body {
11
- font-family: system-ui;
12
- line-height: 1.6;
13
- margin: 0;
14
- min-height: 100vh;
15
- display: grid;
16
- grid-template-columns: 1fr;
17
- }
18
-
19
- h1, h2, h3 {
20
- font-weight: 100;
21
- }
22
-
23
- pre {
24
- padding-inline: 0.75rem;
25
- padding-block: 0.5rem;
26
- border-radius: 0.2rem;
27
- overflow-x: auto;
28
- }
29
-
30
- main {
31
- inline-size: min(90%, 80ch);
32
- margin-inline: auto;
33
- max-inline-size: 100vw;
34
- }
35
-
36
- footer {
37
- margin-block-start: auto;
38
- min-height: 15ch;
39
- background-color: var(--gray-9);
40
- padding: var(--size-3);
41
-
42
- & .logo {
43
- color: var(--gray-2);
44
- font-size: var(--font-size-0);
45
- letter-spacing: var(--font-letterspacing-5);
46
- }
47
- }
48
-
@@ -1,8 +0,0 @@
1
- {% extends "base.html" %}
2
-
3
- {% block content %}
4
- <main>
5
- <h1>{{ page.title }}</h1>
6
- {{ page.content | safe }}
7
- </main>
8
- {% endblock %}
@@ -1,12 +0,0 @@
1
- {% extends "base.html" %}
2
-
3
- {% block content %}
4
- <main>
5
- <h1>{{section.title}}</h1>
6
- <ul>
7
- {% for page in section.pages %}
8
- <li><a href="{{ page.permalink | safe }}">{{ page.title }}</a></li>
9
- {% endfor %}
10
- </ul>
11
- </main>
12
- {% endblock content %}
@@ -1,43 +0,0 @@
1
- {% if config.base_url == "https://andrewgryan.github.io/leaflet-html" %}
2
- {% set js_url = "https://unpkg.com/leaflet-html@latest/dist/leaflet-html.js" %}
3
- {% else %}
4
- {% set js_url = "/leaflet-html.js" %}
5
- {% endif %}
6
- <!DOCTYPE html>
7
- <html>
8
- <head lang="en">
9
- <meta charset="utf-8" />
10
- <meta name="viewport" content="width=device-width, initial-scale=1" />
11
- <style>
12
- </style>
13
- <link rel="stylesheet" href="/style.css" />
14
- <link rel="stylesheet" href="/leaflet-html/style.css" />
15
- <link
16
- rel="stylesheet"
17
- href="https://unpkg.com/leaflet@1.9.4/dist/leaflet.css"
18
- integrity="sha256-p4NxAoJBhIIN+hmNHrzRCf9tD/miZyoHS5obTRR9BMY="
19
- crossorigin=""
20
- />
21
- <script type="importmap">
22
- {
23
- "imports": {
24
- "leaflet": "https://unpkg.com/leaflet@1.9.4/dist/leaflet-src.esm.js",
25
- "leaflet-html": "{{ js_url | safe }}"
26
- }
27
- }
28
- </script>
29
- <script type="module">
30
- import "leaflet-html";
31
- </script>
32
- </head>
33
- <body>
34
- <nav>
35
- <a href="{{ get_url(path='@/_index.md') }}">Home</a>
36
- <a href="{{ get_url(path='@/articles/_index.md') }}">Articles</a>
37
- </nav>
38
- {% block content %}{% endblock %}
39
- <footer>
40
- <div class="logo">Leaflet-HTML</div>
41
- </footer>
42
- </body>
43
- </html>
@@ -1,6 +0,0 @@
1
- {% extends "base.html" %}
2
- {% block content %}
3
- <main>
4
- {{ section.content | safe }}
5
- </main>
6
- {% endblock %}
@@ -1 +0,0 @@
1
- {{ get_url(path=path) }}
@@ -1,44 +0,0 @@
1
- <!DOCTYPE html>
2
- <html>
3
- <head lang="en">
4
- <meta charset="utf-8" />
5
- <meta name="viewport" content="width=device-width, initial-scale=1" />
6
- <title>GeoJSON</title>
7
- <link
8
- rel="stylesheet"
9
- href="https://unpkg.com/leaflet@1.9.4/dist/leaflet.css"
10
- integrity="sha256-p4NxAoJBhIIN+hmNHrzRCf9tD/miZyoHS5obTRR9BMY="
11
- crossorigin=""
12
- />
13
- <script type="importmap">
14
- {
15
- "imports": {
16
- "leaflet": "https://unpkg.com/leaflet@1.9.4/dist/leaflet-src.esm.js"
17
- }
18
- }
19
- </script>
20
- <script type="module" src="/src/index.js"></script>
21
- <style>
22
- * {
23
- margin: 0;
24
- }
25
- l-map {
26
- display: block;
27
- height: 100vh;
28
- }
29
- </style>
30
- </head>
31
- <body>
32
- <l-map center="[55,0]" zoom="5">
33
- <l-tile-layer
34
- url-template="https://{s}.basemaps.cartocdn.com/rastertiles/voyager/{z}/{x}/{y}{r}.png"
35
- ></l-tile-layer>
36
- <l-geojson id="feature" geojson='{"type":"Feature","properties":{"name":"Coors Field","amenity":"Baseball Stadium","popupContent":"This is where the Rockies play!"},"geometry":{"type":"Point","coordinates":[-104.99404,39.75621]}}'></l-geojson>
37
- </l-map>
38
- <script>
39
- document.getElementById("feature").addEventListener("map:addTo", (ev) => {
40
- console.log({ message: "Hello, World!", ev })
41
- })
42
- </script>
43
- </body>
44
- </html>