@edugis-org/webmapx 0.1.0
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.
- package/README.md +149 -0
- package/dist-lib/WMTS-DCN4zX0-.js +1169 -0
- package/dist-lib/alert-GeHlqlN8.js +310 -0
- package/dist-lib/assets/epsg-lookup.worker-J7TVnHDq.js +1 -0
- package/dist-lib/assets/shapefile.worker-kQfZj6G2.js +4 -0
- package/dist-lib/attribution-format-B4f05_u0.js +62 -0
- package/dist-lib/button-DFdGkRPQ.js +741 -0
- package/dist-lib/cesium-adapter-BHXNytkU.js +1488 -0
- package/dist-lib/checkbox-QoR4S8tV.js +284 -0
- package/dist-lib/chunk-HEgqtunE.js +20 -0
- package/dist-lib/chunk.36O46B5H-B6ZL7Sm1.js +77 -0
- package/dist-lib/chunk.3RPBFEDE-BFO1fHVm.js +138 -0
- package/dist-lib/chunk.5JY5FUCG-DTXsslmx.js +1090 -0
- package/dist-lib/chunk.6CTB5ZDJ-DjZrBd6Y.js +99 -0
- package/dist-lib/chunk.AJ3ENQ5C-Ci7Gm2b6.js +175 -0
- package/dist-lib/chunk.LD4M4QGE-CiCfhE8r.js +8 -0
- package/dist-lib/chunk.NYIIDP5N-BikXIStD.js +99 -0
- package/dist-lib/chunk.RWUUFNUL-DFztA4uV.js +43 -0
- package/dist-lib/chunk.SI4ACBFK-CLb9VfMG.js +61 -0
- package/dist-lib/chunk.YHLNUJ7P-D-kanrCf.js +503 -0
- package/dist-lib/core-CMAlSR68.js +22 -0
- package/dist-lib/decorate-CWgUV1hU.js +1139 -0
- package/dist-lib/decorators-B35AgiCU.js +351 -0
- package/dist-lib/deferred-query-service-BJDcngw6.js +386 -0
- package/dist-lib/dist-Dm6b7XCs.js +12318 -0
- package/dist-lib/dist-Ha9LQCut.js +244 -0
- package/dist-lib/dist-c1PlDAd1.js +2359 -0
- package/dist-lib/dist-kKlmcBXq.js +50 -0
- package/dist-lib/divider-CPm675yY.js +41 -0
- package/dist-lib/dropped-config-C_GyVa8o.js +17 -0
- package/dist-lib/dropped-layer-builder-DAaYgUPk.js +396 -0
- package/dist-lib/epsg-definitions-BZLZWa8Q.js +668 -0
- package/dist-lib/esm-CTuscnN5.js +46 -0
- package/dist-lib/file-sniff-Dhxj3KTF.js +251 -0
- package/dist-lib/geo-calculations-DbFJAUoI.js +30 -0
- package/dist-lib/icon-CEOgWlro.js +9 -0
- package/dist-lib/icon-button-Da_nBTy3.js +408 -0
- package/dist-lib/input-CeGntPlT.js +590 -0
- package/dist-lib/layer-discovery-afWzu5hY.js +2825 -0
- package/dist-lib/leaflet-adapter-D9djjrKv.js +1227 -0
- package/dist-lib/lib-CdHVicAE.js +4074 -0
- package/dist-lib/map-layer-registry-2cmkiRDK.js +62 -0
- package/dist-lib/maplibre-adapter-TFc3e0G9.js +1190 -0
- package/dist-lib/maplibre-expression-evaluator-DCWUcpwf.js +7233 -0
- package/dist-lib/marker-utils-DztWXeop.js +12 -0
- package/dist-lib/ol-tilegrid-9VtyxaLG.js +64 -0
- package/dist-lib/openlayers-adapter-DVW1KCRv.js +13307 -0
- package/dist-lib/option-CBxl1mZP.js +1106 -0
- package/dist-lib/papaparse.min-B7v3c0D7.js +501 -0
- package/dist-lib/rbush-C8k41T4z.js +254 -0
- package/dist-lib/shapefile-SawVY6xg.js +207 -0
- package/dist-lib/spinner-DysxdNG9.js +6 -0
- package/dist-lib/src-CL94RDe3.js +111 -0
- package/dist-lib/throttle-BeneRNYK.js +16 -0
- package/dist-lib/toast-Cm28o9U6.js +15 -0
- package/dist-lib/togeojson.es-DAgiTBvg.js +579 -0
- package/dist-lib/tooltip-Cucn1SiD.js +197 -0
- package/dist-lib/webmapx-3d-tool-D4CTD2gB.js +176 -0
- package/dist-lib/webmapx-base-tool-Dm9NAWLD.js +75 -0
- package/dist-lib/webmapx-config-edit-tool-DCTyxqTk.js +389 -0
- package/dist-lib/webmapx-coordinates-tool-jeWohup9.js +648 -0
- package/dist-lib/webmapx-core-bundle-BDImi1RE.js +8203 -0
- package/dist-lib/webmapx-draw-tool-DooAV8cF.js +4336 -0
- package/dist-lib/webmapx-geolocation-tool-Rw3-Iad1.js +788 -0
- package/dist-lib/webmapx-import-layer-tool-DRYviHd5.js +250 -0
- package/dist-lib/webmapx-info-tool-BJA157cy.js +412 -0
- package/dist-lib/webmapx-language-osmvector-M5y_lwOg.js +489 -0
- package/dist-lib/webmapx-measure-tool-BXhMJFC6.js +590 -0
- package/dist-lib/webmapx-modal-tool-eF6Naluv.js +84 -0
- package/dist-lib/webmapx-plugin-tool-D2Hghf9n.js +45 -0
- package/dist-lib/webmapx-print-tool-ob1bOsR5.js +348 -0
- package/dist-lib/webmapx-search-tool-Cv8BrYvY.js +437 -0
- package/dist-lib/webmapx-settings-DDEJ8aoV.js +479 -0
- package/dist-lib/webmapx-truearea-tool-CMB4Orm-.js +615 -0
- package/dist-lib/webmapx-view-mode-tool-CUpLNjOj.js +106 -0
- package/dist-lib/webmapx.css +2 -0
- package/dist-lib/webmapx.js +1321 -0
- package/dist-lib/wms-feature-info-C0RVMEQC.js +145 -0
- package/dist-lib/wms-url-builder-DIJLQ1v2.js +54 -0
- package/dist-lib/zip.js-DVhmtjxZ.js +3615 -0
- package/package.json +107 -0
- package/public/data/country-epsg-codes.json +297 -0
- package/public/data/world-countries-simplified.topojson +1 -0
- package/src/locales/en/core.json +20 -0
package/README.md
ADDED
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
# WebMapX
|
|
2
|
+
|
|
3
|
+
WebMapX is a web mapping UI toolkit for building interactive map apps quickly.
|
|
4
|
+
It supports multiple map engines out of the box: MapLibre, OpenLayers, Leaflet, and Cesium.
|
|
5
|
+
|
|
6
|
+
Live site: https://edugis-org.github.io/webmapx/
|
|
7
|
+
|
|
8
|
+
## Why WebMapX
|
|
9
|
+
|
|
10
|
+
- Build a working map UI fast with reusable components.
|
|
11
|
+
- Switch map engines without rewriting all tools.
|
|
12
|
+
- Use a config-driven setup for layers, backgrounds, and UI behavior.
|
|
13
|
+
- Extend with custom tools when needed.
|
|
14
|
+
|
|
15
|
+
## What You Get
|
|
16
|
+
|
|
17
|
+
- Map container and layout system
|
|
18
|
+
- Toolbar and tool panel
|
|
19
|
+
- Layer tree and layer overview/legend
|
|
20
|
+
- Coordinates, zoom level, scale control, geolocation, search, measure tools
|
|
21
|
+
- Inset map and navigation controls
|
|
22
|
+
|
|
23
|
+
## Prerequisites
|
|
24
|
+
|
|
25
|
+
Before you start, install:
|
|
26
|
+
|
|
27
|
+
- Node.js 20 LTS or newer
|
|
28
|
+
- npm 10 or newer (usually bundled with Node.js)
|
|
29
|
+
- Git
|
|
30
|
+
- A modern browser (Chrome, Edge, Firefox, or Safari)
|
|
31
|
+
|
|
32
|
+
Optional but recommended:
|
|
33
|
+
|
|
34
|
+
- VS Code for editing and debugging
|
|
35
|
+
|
|
36
|
+
Quick version check:
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
node -v
|
|
40
|
+
npm -v
|
|
41
|
+
git --version
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
## Quick Start
|
|
45
|
+
|
|
46
|
+
### 1) Clone the repository
|
|
47
|
+
|
|
48
|
+
```bash
|
|
49
|
+
git clone <your-repo-url>
|
|
50
|
+
cd webmapx
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
### 2) Install dependencies
|
|
54
|
+
|
|
55
|
+
```bash
|
|
56
|
+
npm install
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
### 3) Run locally
|
|
60
|
+
|
|
61
|
+
```bash
|
|
62
|
+
npm run dev
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
Open the printed local URL in your browser.
|
|
66
|
+
|
|
67
|
+
### 4) Build for production
|
|
68
|
+
|
|
69
|
+
```bash
|
|
70
|
+
npm run build
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
### 5) Preview production build
|
|
74
|
+
|
|
75
|
+
```bash
|
|
76
|
+
npm run preview
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
## Screenshots
|
|
80
|
+
|
|
81
|
+
Add UI images here so new users can understand the project in seconds.
|
|
82
|
+
|
|
83
|
+
- Full application view
|
|
84
|
+
- Layer panel open
|
|
85
|
+
- Tool interaction (search/measure/settings)
|
|
86
|
+
|
|
87
|
+
Suggested paths:
|
|
88
|
+
|
|
89
|
+
- `docs/images/webmapx-overview.png`
|
|
90
|
+
- `docs/images/webmapx-layer-panel.png`
|
|
91
|
+
- `docs/images/webmapx-tool-example.png`
|
|
92
|
+
- `docs/images/webmapxlegend.png`
|
|
93
|
+
|
|
94
|
+
When images are available, include them like this:
|
|
95
|
+
|
|
96
|
+
```md
|
|
97
|
+

|
|
98
|
+

|
|
99
|
+

|
|
100
|
+

|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+

|
|
104
|
+
|
|
105
|
+
## Configuration
|
|
106
|
+
|
|
107
|
+
The default demo configuration lives in `config/demo.json`.
|
|
108
|
+
|
|
109
|
+
- `layerData` defines runtime sources and layers.
|
|
110
|
+
- `tools.*.items[]` layer-tree entries define the UI tree (`type: "layerTree"`, `tree: [...]`).
|
|
111
|
+
- `state.activeExclusiveLayers` tracks single-selection groups (for example basemaps).
|
|
112
|
+
- `state.activeLayers` controls visible layers.
|
|
113
|
+
|
|
114
|
+
## Cesium Runtime Assets
|
|
115
|
+
|
|
116
|
+
Cesium requires static runtime files (`Workers`, `Assets`, `Widgets`, `ThirdParty`, and `Cesium.js`) at runtime.
|
|
117
|
+
|
|
118
|
+
In this project, those files are copied automatically from `node_modules/cesium/Build/Cesium` into the build output (`dist/cesium`) during `npm run build`.
|
|
119
|
+
|
|
120
|
+
This keeps local and CI/GitHub Pages deployments reproducible without committing Cesium vendor files. For that reason, `public/cesium` is intentionally gitignored.
|
|
121
|
+
|
|
122
|
+
## Documentation
|
|
123
|
+
|
|
124
|
+
### For users
|
|
125
|
+
|
|
126
|
+
- User guide: [docs/user/README.md](./docs/user/README.md)
|
|
127
|
+
|
|
128
|
+
### For developers
|
|
129
|
+
|
|
130
|
+
- Developer guide: [docs/DEVELOPER_GUIDE.md](./docs/DEVELOPER_GUIDE.md)
|
|
131
|
+
- Developer architecture:
|
|
132
|
+
- Rules: [Architecture Rules](./docs/DEVELOPER_GUIDE.md#i-architecture-rules)
|
|
133
|
+
- Flow: [Data Flow](./docs/DEVELOPER_GUIDE.md#ii-data-flow)
|
|
134
|
+
- Diagram: [Architecture Overview](./docs/DEVELOPER_GUIDE.md#v-architecture-overview)
|
|
135
|
+
- Engine contracts: [docs/developer/engine-interface.md](./docs/developer/engine-interface.md)
|
|
136
|
+
- Engineering rules: [docs/developer/engineering-rules.md](./docs/developer/engineering-rules.md)
|
|
137
|
+
- Changelog: [CHANGELOG.md](./CHANGELOG.md)
|
|
138
|
+
|
|
139
|
+
## Commands
|
|
140
|
+
|
|
141
|
+
- `npm run dev`: start development server
|
|
142
|
+
- `npm run start`: alias for dev server
|
|
143
|
+
- `npm run build`: production build
|
|
144
|
+
- `npm run preview`: preview production build
|
|
145
|
+
- `npm run test`: run test suite
|
|
146
|
+
|
|
147
|
+
## Project Status
|
|
148
|
+
|
|
149
|
+
WebMapX is under active development. The core multi-engine adapter model and tool system are in place, and the project continues to evolve toward a stable, configurable mapping platform.
|