diff --git a/.github/workflows/npm-publish.yml b/.github/workflows/npm-publish.yml
index 7cd1538..36824f7 100644
--- a/.github/workflows/npm-publish.yml
+++ b/.github/workflows/npm-publish.yml
@@ -8,13 +8,28 @@ jobs:
build-and-publish:
runs-on: ubuntu-latest
steps:
- - uses: actions/checkout@v3
+ - name: Checkout repo
+ uses: actions/checkout@v4
+ with:
+ ref: ${{ github.event.release.target_commitish }}
+
- uses: actions/setup-node@v4
with:
node-version: 20
registry-url: https://registry.npmjs.org/
- run: npm ci
- run: npm run make
- - run: npm publish --access public
+
+ - name: Publish NPM package (regular)
+ if: !github.event.release.prerelease
+ run: |
+ npm publish
+ env:
+ NODE_AUTH_TOKEN: ${{secrets.npm_token}}
+
+ - name: Publish NPM package (pre-release)
+ if: github.event.release.prerelease
+ run: |
+ npm publish --tag next
env:
- NODE_AUTH_TOKEN: ${{secrets.npm_token}}
\ No newline at end of file
+ NODE_AUTH_TOKEN: ${{secrets.npm_token}}
diff --git a/CHANGELOG.md b/CHANGELOG.md
index b1d3ffd..be7421b 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,9 @@
# MapTiler AR Control Changelog
+## 2.1.3
+### Others
+- Updating with SDK v2.4.0
+
## 2.1.2
### New Features
- Display the attribution on top of the 3D model view (web)
diff --git a/demos/QR.html b/demos/QR.html
index 43ed73b..aaf8ae6 100644
--- a/demos/QR.html
+++ b/demos/QR.html
@@ -3,8 +3,8 @@
MapTiler AR Control
-
-
+
+
diff --git a/demos/activate.html b/demos/activate.html
index dd66646..6001bae 100644
--- a/demos/activate.html
+++ b/demos/activate.html
@@ -7,8 +7,8 @@
-
-
+
+
diff --git a/demos/auto-activate.html b/demos/auto-activate.html
index 67a501e..184d5f2 100644
--- a/demos/auto-activate.html
+++ b/demos/auto-activate.html
@@ -3,8 +3,8 @@
MapTiler AR Control
-
-
+
+
diff --git a/demos/auto-activate2.html b/demos/auto-activate2.html
index 1114e2c..b559d7e 100644
--- a/demos/auto-activate2.html
+++ b/demos/auto-activate2.html
@@ -3,8 +3,8 @@
MapTiler AR Control
-
-
+
+
diff --git a/demos/custom.html b/demos/custom.html
index d2e67cb..596e0be 100644
--- a/demos/custom.html
+++ b/demos/custom.html
@@ -7,8 +7,8 @@
-
-
+
+
diff --git a/demos/globe.html b/demos/globe.html
new file mode 100644
index 0000000..99f24e2
--- /dev/null
+++ b/demos/globe.html
@@ -0,0 +1,121 @@
+
+
+
+ MapTiler AR Control
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/demos/image.html b/demos/image.html
index 25444ad..e077c72 100644
--- a/demos/image.html
+++ b/demos/image.html
@@ -3,8 +3,8 @@
MapTiler AR Control
-
-
+
+
diff --git a/demos/image_overlay.html b/demos/image_overlay.html
index 694012d..4177cf1 100644
--- a/demos/image_overlay.html
+++ b/demos/image_overlay.html
@@ -3,8 +3,8 @@
MapTiler AR Control
-
-
+
+
diff --git a/demos/index.html b/demos/index.html
index f3181df..8573428 100644
--- a/demos/index.html
+++ b/demos/index.html
@@ -3,8 +3,8 @@
MapTiler AR Control
-
-
+
+
diff --git a/demos/no-button.html b/demos/no-button.html
index 64509ff..b50cd1e 100644
--- a/demos/no-button.html
+++ b/demos/no-button.html
@@ -7,8 +7,8 @@
-
-
+
+
diff --git a/package-lock.json b/package-lock.json
index 54a9d1e..34e0ca5 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,19 +1,19 @@
{
"name": "@maptiler/ar-control",
- "version": "2.1.1",
+ "version": "2.2.0",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "@maptiler/ar-control",
- "version": "2.1.1",
+ "version": "2.2.0",
"license": "See LICENSE.md",
"dependencies": {
"@capacitor-community/file-opener": "^1.0.5",
"@capacitor/core": "^5.7.1",
"@capacitor/filesystem": "^5.2.1",
"@google/model-viewer": "^3.5.0",
- "@maptiler/sdk": "^2.1.0",
+ "@maptiler/sdk": "^3.0.0-rc.2",
"events": "^3.3.0",
"three": "^0.163.0"
},
@@ -646,18 +646,17 @@
}
},
"node_modules/@maplibre/maplibre-gl-style-spec": {
- "version": "20.3.0",
- "resolved": "https://registry.npmjs.org/@maplibre/maplibre-gl-style-spec/-/maplibre-gl-style-spec-20.3.0.tgz",
- "integrity": "sha512-eSiQ3E5LUSxAOY9ABXGyfNhout2iEa6mUxKeaQ9nJ8NL1NuaQYU7zKqzx/LEYcXe1neT4uYAgM1wYZj3fTSXtA==",
+ "version": "22.0.1",
+ "resolved": "https://registry.npmjs.org/@maplibre/maplibre-gl-style-spec/-/maplibre-gl-style-spec-22.0.1.tgz",
+ "integrity": "sha512-V7bSw7Ui6+NhpeeuYqGoqamvKuy+3+uCvQ/t4ZJkwN8cx527CAlQQQ2kp+w5R9q+Tw6bUAH+fsq+mPEkicgT8g==",
"dependencies": {
"@mapbox/jsonlint-lines-primitives": "~2.0.2",
"@mapbox/unitbezier": "^0.0.1",
"json-stringify-pretty-compact": "^4.0.0",
"minimist": "^1.2.8",
- "quickselect": "^2.0.0",
+ "quickselect": "^3.0.0",
"rw": "^1.3.3",
- "sort-object": "^3.0.3",
- "tinyqueue": "^2.0.3"
+ "tinyqueue": "^3.0.0"
},
"bin": {
"gl-style-format": "dist/gl-style-format.mjs",
@@ -666,22 +665,23 @@
}
},
"node_modules/@maptiler/client": {
- "version": "1.8.1",
- "resolved": "https://registry.npmjs.org/@maptiler/client/-/client-1.8.1.tgz",
- "integrity": "sha512-G1z2xCBwT5WU1CqeukY3R4g1saSjKzi6tmg24LJWZHP81RQ4quVvwdmsx829BxITlFbFhND+BSphFgrDGmwhcA==",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/@maptiler/client/-/client-2.2.0.tgz",
+ "integrity": "sha512-kV4dSJK2PLfRLnl437CQgDJBboHcf+Z7FWkSoPW3ANca/csoYQQOwz42BPNkda/98OT+CviIueeQdNUyeEL1OQ==",
"dependencies": {
"quick-lru": "^7.0.0"
}
},
"node_modules/@maptiler/sdk": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@maptiler/sdk/-/sdk-2.1.0.tgz",
- "integrity": "sha512-hP9LGAeq3hL0UJob3rrD94xJwRz+pkfoe4yAiP1whjvWBbObcvAion8KazoBzvHLWSQsRF+mmP2xgN9k8J55VQ==",
+ "version": "3.0.0-rc.2",
+ "resolved": "https://registry.npmjs.org/@maptiler/sdk/-/sdk-3.0.0-rc.2.tgz",
+ "integrity": "sha512-eQBX8lpznnS1ujbukNxEUn8g7o7RQO5OJs/qOv7APDssM1eAt4Jis/GNZt/HAC1S2KPZn/tKTZsFflgFl1Y6Zg==",
"dependencies": {
- "@maptiler/client": "^1.8.1",
+ "@maplibre/maplibre-gl-style-spec": "^22.0.0",
+ "@maptiler/client": "^2.2.0",
"events": "^3.3.0",
"js-base64": "^3.7.4",
- "maplibre-gl": "4.4.1",
+ "maplibre-gl": "^5.0.0-pre.7",
"uuid": "^9.0.0"
}
},
@@ -1019,11 +1019,6 @@
"integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==",
"dev": true
},
- "node_modules/@types/junit-report-builder": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/@types/junit-report-builder/-/junit-report-builder-3.0.2.tgz",
- "integrity": "sha512-R5M+SYhMbwBeQcNXYWNCZkl09vkVfAtcPIaCGdzIkkbeaTrVbGQ7HVgi4s+EmM/M1K4ZuWQH0jGcvMvNePfxYA=="
- },
"node_modules/@types/mapbox__point-geometry": {
"version": "0.1.4",
"resolved": "https://registry.npmjs.org/@types/mapbox__point-geometry/-/mapbox__point-geometry-0.1.4.tgz",
@@ -1552,14 +1547,6 @@
"integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
"dev": true
},
- "node_modules/arr-union": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz",
- "integrity": "sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q==",
- "engines": {
- "node": ">=0.10.0"
- }
- },
"node_modules/array-buffer-byte-length": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz",
@@ -1683,14 +1670,6 @@
"url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/assign-symbols": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz",
- "integrity": "sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw==",
- "engines": {
- "node": ">=0.10.0"
- }
- },
"node_modules/available-typed-arrays": {
"version": "1.0.7",
"resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz",
@@ -1733,23 +1712,6 @@
"node": ">=8"
}
},
- "node_modules/bytewise": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/bytewise/-/bytewise-1.1.0.tgz",
- "integrity": "sha512-rHuuseJ9iQ0na6UDhnrRVDh8YnWVlU6xM3VH6q/+yHDeUH2zIhUzP+2/h3LIrhLDBtTqzWpE3p3tP/boefskKQ==",
- "dependencies": {
- "bytewise-core": "^1.2.2",
- "typewise": "^1.0.3"
- }
- },
- "node_modules/bytewise-core": {
- "version": "1.2.3",
- "resolved": "https://registry.npmjs.org/bytewise-core/-/bytewise-core-1.2.3.tgz",
- "integrity": "sha512-nZD//kc78OOxeYtRlVk8/zXqTB4gf/nlguL1ggWA8FuchMyOxcyHR4QPQZMUmA7czC+YnaBrPUCubqAWe50DaA==",
- "dependencies": {
- "typewise-core": "^1.2"
- }
- },
"node_modules/call-bind": {
"version": "1.0.7",
"resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz",
@@ -1987,9 +1949,9 @@
}
},
"node_modules/earcut": {
- "version": "2.2.4",
- "resolved": "https://registry.npmjs.org/earcut/-/earcut-2.2.4.tgz",
- "integrity": "sha512-/pjZsA1b4RPHbeWZQn66SWS8nZZWLQQ23oE3Eam7aroEFGEvwKAsJfZ9ytiEMycfzXWpca4FA9QIOehf7PocBQ=="
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/earcut/-/earcut-3.0.0.tgz",
+ "integrity": "sha512-41Fs7Q/PLq1SDbqjsgcY7GA42T0jvaCNGXgGtsNdvg+Yv8eIu06bxv4/PoREkZ9nMDNwnUSG9OFB9+yv8eKhDg=="
},
"node_modules/enhanced-resolve": {
"version": "5.17.0",
@@ -2570,17 +2532,6 @@
"node": ">=0.8.x"
}
},
- "node_modules/extend-shallow": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
- "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==",
- "dependencies": {
- "is-extendable": "^0.1.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
"node_modules/fast-deep-equal": {
"version": "3.1.3",
"resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
@@ -2782,9 +2733,9 @@
}
},
"node_modules/geojson-vt": {
- "version": "3.2.1",
- "resolved": "https://registry.npmjs.org/geojson-vt/-/geojson-vt-3.2.1.tgz",
- "integrity": "sha512-EvGQQi/zPrDA6zr6BnJD/YhwAkBP8nnJ9emh3EnHQKVMfg/MRVtPbMYdgVy/IaEmn4UfagD2a6fafPDL5hbtwg=="
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/geojson-vt/-/geojson-vt-4.0.2.tgz",
+ "integrity": "sha512-AV9ROqlNqoZEIJGfm1ncNjEXfkz2hdFlZf0qkVfmkwdKa8vj7H16YUOT81rJw1rdFhyEDlN2Tds91p/glzbl5A=="
},
"node_modules/get-intrinsic": {
"version": "1.2.4",
@@ -2845,14 +2796,6 @@
"url": "https://github.com/privatenumber/get-tsconfig?sponsor=1"
}
},
- "node_modules/get-value": {
- "version": "2.0.6",
- "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz",
- "integrity": "sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA==",
- "engines": {
- "node": ">=0.10.0"
- }
- },
"node_modules/gl-matrix": {
"version": "3.4.3",
"resolved": "https://registry.npmjs.org/gl-matrix/-/gl-matrix-3.4.3.tgz",
@@ -2914,27 +2857,38 @@
}
},
"node_modules/global-prefix": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz",
- "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==",
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-4.0.0.tgz",
+ "integrity": "sha512-w0Uf9Y9/nyHinEk5vMJKRie+wa4kR5hmDbEhGGds/kG1PwGLLHKRoNMeJOyCQjjBkANlnScqgzcFwGHgmgLkVA==",
"dependencies": {
- "ini": "^1.3.5",
- "kind-of": "^6.0.2",
- "which": "^1.3.1"
+ "ini": "^4.1.3",
+ "kind-of": "^6.0.3",
+ "which": "^4.0.0"
},
"engines": {
- "node": ">=6"
+ "node": ">=16"
+ }
+ },
+ "node_modules/global-prefix/node_modules/isexe": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz",
+ "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==",
+ "engines": {
+ "node": ">=16"
}
},
"node_modules/global-prefix/node_modules/which": {
- "version": "1.3.1",
- "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
- "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz",
+ "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==",
"dependencies": {
- "isexe": "^2.0.0"
+ "isexe": "^3.1.1"
},
"bin": {
- "which": "bin/which"
+ "node-which": "bin/which.js"
+ },
+ "engines": {
+ "node": "^16.13.0 || >=18.0.0"
}
},
"node_modules/globals": {
@@ -3187,9 +3141,12 @@
"dev": true
},
"node_modules/ini": {
- "version": "1.3.8",
- "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz",
- "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew=="
+ "version": "4.1.3",
+ "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.3.tgz",
+ "integrity": "sha512-X7rqawQBvfdjS10YU1y1YVreA3SsLrW9dX2CewP2EbBJM4ypVNLDkO5y04gejPwKIY9lR+7r9gn3rFPt/kmWFg==",
+ "engines": {
+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ }
},
"node_modules/internal-slot": {
"version": "1.0.7",
@@ -3303,14 +3260,6 @@
"url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/is-extendable": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz",
- "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==",
- "engines": {
- "node": ">=0.10.0"
- }
- },
"node_modules/is-extglob": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
@@ -3377,17 +3326,6 @@
"node": ">=8"
}
},
- "node_modules/is-plain-object": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz",
- "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==",
- "dependencies": {
- "isobject": "^3.0.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
"node_modules/is-promise": {
"version": "2.2.2",
"resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz",
@@ -3490,15 +3428,8 @@
"node_modules/isexe": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
- "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw=="
- },
- "node_modules/isobject": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
- "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==",
- "engines": {
- "node": ">=0.10.0"
- }
+ "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==",
+ "dev": true
},
"node_modules/jju": {
"version": "1.4.0",
@@ -3705,9 +3636,9 @@
}
},
"node_modules/maplibre-gl": {
- "version": "4.4.1",
- "resolved": "https://registry.npmjs.org/maplibre-gl/-/maplibre-gl-4.4.1.tgz",
- "integrity": "sha512-tD+wn8qWSLCGhABKBrbewmgFfyopZDz+fkYXeOM8vdBhnf126DvMPyaYGGoKvoF4QuswCsgikETd2c39wK+OQw==",
+ "version": "5.0.0-pre.8",
+ "resolved": "https://registry.npmjs.org/maplibre-gl/-/maplibre-gl-5.0.0-pre.8.tgz",
+ "integrity": "sha512-xZT1cTTdFgqog8sfGzvZY8vFHodWxBmrsWwr73D5SbKtQFReXNdlyvRnYVGhzWpLnsQsOVLtmow4WO8fRWjGQQ==",
"dependencies": {
"@mapbox/geojson-rewind": "^0.5.2",
"@mapbox/jsonlint-lines-primitives": "^2.0.2",
@@ -3716,25 +3647,24 @@
"@mapbox/unitbezier": "^0.0.1",
"@mapbox/vector-tile": "^1.3.1",
"@mapbox/whoots-js": "^3.1.0",
- "@maplibre/maplibre-gl-style-spec": "^20.3.0",
+ "@maplibre/maplibre-gl-style-spec": "^22.0.0",
"@types/geojson": "^7946.0.14",
"@types/geojson-vt": "3.2.5",
- "@types/junit-report-builder": "^3.0.2",
"@types/mapbox__point-geometry": "^0.1.4",
"@types/mapbox__vector-tile": "^1.3.4",
"@types/pbf": "^3.0.5",
"@types/supercluster": "^7.1.3",
- "earcut": "^2.2.4",
- "geojson-vt": "^3.2.1",
+ "earcut": "^3.0.0",
+ "geojson-vt": "^4.0.2",
"gl-matrix": "^3.4.3",
- "global-prefix": "^3.0.0",
+ "global-prefix": "^4.0.0",
"kdbush": "^4.0.2",
"murmurhash-js": "^1.0.0",
- "pbf": "^3.2.1",
+ "pbf": "^3.3.0",
"potpack": "^2.0.0",
- "quickselect": "^2.0.0",
+ "quickselect": "^3.0.0",
"supercluster": "^8.0.1",
- "tinyqueue": "^2.0.3",
+ "tinyqueue": "^3.0.0",
"vt-pbf": "^3.1.3"
},
"engines": {
@@ -4045,9 +3975,9 @@
}
},
"node_modules/pbf": {
- "version": "3.2.1",
- "resolved": "https://registry.npmjs.org/pbf/-/pbf-3.2.1.tgz",
- "integrity": "sha512-ClrV7pNOn7rtmoQVF4TS1vyU0WhYRnP92fzbfF75jAIwpnzdJXf8iTd4CMEqO4yUenH6NDqLiwjqlh6QgZzgLQ==",
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/pbf/-/pbf-3.3.0.tgz",
+ "integrity": "sha512-XDF38WCH3z5OV/OVa8GKUNtLAyneuzbCisx7QUCF8Q6Nutx0WnJrQe5O+kOtBlLfRNUws98Y58Lblp+NJG5T4Q==",
"dependencies": {
"ieee754": "^1.1.12",
"resolve-protobuf-schema": "^2.1.0"
@@ -4195,9 +4125,9 @@
}
},
"node_modules/quickselect": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/quickselect/-/quickselect-2.0.0.tgz",
- "integrity": "sha512-RKJ22hX8mHe3Y6wH/N3wCM6BWtjaxIyyUIkpHOvfFnxdI4yD4tBXEBKSbriGujF6jnSVkJrffuo6vxACiSSxIw=="
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/quickselect/-/quickselect-3.0.0.tgz",
+ "integrity": "sha512-XdjUArbK4Bm5fLLvlm5KpTFOiOThgfWWI4axAZDWg4E/0mKdZyI9tNEfds27qCi1ze/vwTR16kvmmGhRra3c2g=="
},
"node_modules/regexp.prototype.flags": {
"version": "1.5.2",
@@ -4409,20 +4339,6 @@
"node": ">= 0.4"
}
},
- "node_modules/set-value": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz",
- "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==",
- "dependencies": {
- "extend-shallow": "^2.0.1",
- "is-extendable": "^0.1.1",
- "is-plain-object": "^2.0.3",
- "split-string": "^3.0.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
"node_modules/shebang-command": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
@@ -4471,38 +4387,6 @@
"node": ">=8"
}
},
- "node_modules/sort-asc": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/sort-asc/-/sort-asc-0.2.0.tgz",
- "integrity": "sha512-umMGhjPeHAI6YjABoSTrFp2zaBtXBej1a0yKkuMUyjjqu6FJsTF+JYwCswWDg+zJfk/5npWUUbd33HH/WLzpaA==",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/sort-desc": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/sort-desc/-/sort-desc-0.2.0.tgz",
- "integrity": "sha512-NqZqyvL4VPW+RAxxXnB8gvE1kyikh8+pR+T+CXLksVRN9eiQqkQlPwqWYU0mF9Jm7UnctShlxLyAt1CaBOTL1w==",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/sort-object": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/sort-object/-/sort-object-3.0.3.tgz",
- "integrity": "sha512-nK7WOY8jik6zaG9CRwZTaD5O7ETWDLZYMM12pqY8htll+7dYeqGfEUPcUBHOpSJg2vJOrvFIY2Dl5cX2ih1hAQ==",
- "dependencies": {
- "bytewise": "^1.1.0",
- "get-value": "^2.0.2",
- "is-extendable": "^0.1.1",
- "sort-asc": "^0.2.0",
- "sort-desc": "^0.2.0",
- "union-value": "^1.0.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
"node_modules/source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
@@ -4521,40 +4405,6 @@
"node": ">=0.10.0"
}
},
- "node_modules/split-string": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz",
- "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==",
- "dependencies": {
- "extend-shallow": "^3.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/split-string/node_modules/extend-shallow": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz",
- "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==",
- "dependencies": {
- "assign-symbols": "^1.0.0",
- "is-extendable": "^1.0.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/split-string/node_modules/is-extendable": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
- "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
- "dependencies": {
- "is-plain-object": "^2.0.4"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
"node_modules/sprintf-js": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
@@ -4705,9 +4555,9 @@
"integrity": "sha512-HlMgCb2TF/dTLRtknBnjUTsR8FsDqBY43itYop2+Zg822I+Kd0Ua2vs8CvfBVefXkBdNDrLMoRTGCIIpfCuDew=="
},
"node_modules/tinyqueue": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/tinyqueue/-/tinyqueue-2.0.3.tgz",
- "integrity": "sha512-ppJZNDuKGgxzkHihX8v9v9G5f+18gzaTfrukGrq6ueg0lmH4nqVnA2IPG0AEH3jKEk2GRJCUhDoqpoiw3PHLBA=="
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/tinyqueue/-/tinyqueue-3.0.0.tgz",
+ "integrity": "sha512-gRa9gwYU3ECmQYv3lslts5hxuIa90veaEcxDYuu3QGOIAEM2mOZkVHp48ANJuu1CURtRdHKUBY5Lm1tHV+sD4g=="
},
"node_modules/to-regex-range": {
"version": "5.0.1",
@@ -4881,19 +4731,6 @@
"node": ">=14.17"
}
},
- "node_modules/typewise": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/typewise/-/typewise-1.0.3.tgz",
- "integrity": "sha512-aXofE06xGhaQSPzt8hlTY+/YWQhm9P0jYUp1f2XtmW/3Bk0qzXcyFWAtPoo2uTGQj1ZwbDuSyuxicq+aDo8lCQ==",
- "dependencies": {
- "typewise-core": "^1.2.0"
- }
- },
- "node_modules/typewise-core": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/typewise-core/-/typewise-core-1.2.0.tgz",
- "integrity": "sha512-2SCC/WLzj2SbUwzFOzqMCkz5amXLlxtJqDKTICqg30x+2DZxcfZN2MvQZmGfXWKNWaKK9pBPsvkcwv8bF/gxKg=="
- },
"node_modules/unbox-primitive": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz",
@@ -4915,20 +4752,6 @@
"integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==",
"dev": true
},
- "node_modules/union-value": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz",
- "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==",
- "dependencies": {
- "arr-union": "^3.1.0",
- "get-value": "^2.0.6",
- "is-extendable": "^0.1.1",
- "set-value": "^2.0.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
"node_modules/universalify": {
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz",
diff --git a/package.json b/package.json
index 3841f7e..94ca913 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "@maptiler/ar-control",
- "version": "2.1.2",
+ "version": "2.2.0",
"description": "AR Control for MapTiler SDK",
"type": "module",
"homepage": "https://docs.maptiler.com/sdk-js/modules/ar/",
@@ -58,7 +58,7 @@
"@capacitor/core": "^5.7.1",
"@capacitor/filesystem": "^5.2.1",
"@google/model-viewer": "^3.5.0",
- "@maptiler/sdk": "^2.1.0",
+ "@maptiler/sdk": "^3.0.0-rc.2",
"events": "^3.3.0",
"three": "^0.163.0"
}
diff --git a/src/MaptilerARControl.ts b/src/MaptilerARControl.ts
index ab24a34..56ddbb0 100644
--- a/src/MaptilerARControl.ts
+++ b/src/MaptilerARControl.ts
@@ -1,6 +1,12 @@
// @ts-nocheck
-import { Map, LngLatBounds, LngLat, IControl, math } from "@maptiler/sdk";
+import {
+ type Map as MapSDK,
+ type LngLatBounds,
+ LngLat,
+ type IControl,
+ math,
+} from "@maptiler/sdk";
import { ModelViewerElement } from "@google/model-viewer";
import * as platformConstants from "./platform-constants.ts";
@@ -111,12 +117,12 @@ function injectToContext(
const image = new Image();
image.crossOrigin = "anonymous";
image.src = imageUrl;
- image.onload = function () {
+ image.onload = () => {
context.drawImage(image, topLeftPosition[0], topLeftPosition[1]);
resolve();
};
- image.onerror = function () {
+ image.onerror = () => {
resolve();
};
});
@@ -153,8 +159,8 @@ function cropCanvas(
* @param map
* @returns
*/
-function idleAsync(map: Map) {
- return new Promise(function (myResolve) {
+function idleAsync(map: MapSDK) {
+ return new Promise((myResolve) => {
map.once("idle", () => {
myResolve(true);
});
@@ -307,7 +313,7 @@ const defaultCloseButtonStyle = {
export class MaptilerARControl extends EventEmitter implements IControl {
private controlButton!: HTMLButtonElement;
private controlButtonContainer!: HTMLDivElement;
- private map!: Map;
+ private map!: MapSDK;
private colorData: MapTextureData | null = null;
private landMaskData: MapTextureData | null = null;
private terrainData: MapTextureData | null = null;
@@ -368,7 +374,7 @@ export class MaptilerARControl extends EventEmitter implements IControl {
}
onAdd(map: maplibregl.Map): HTMLElement {
- this.setMap(map as Map);
+ this.setMap(map as MapSDK);
// Creation of the button to show on map
this.controlButtonContainer = window.document.createElement("div");
@@ -463,7 +469,7 @@ export class MaptilerARControl extends EventEmitter implements IControl {
);
}
- setMap(m: Map) {
+ setMap(m: MapSDK) {
this.map = m;
}
@@ -937,7 +943,7 @@ export class MaptilerARControl extends EventEmitter implements IControl {
const h = this.terrainData.height;
// detecting the minimum elevation
- let minEle = +Infinity;
+ let minEle = Number.POSITIVE_INFINITY;
for (let i = 0; i < positionBuf.length / 3; i += 1) {
const r = this.terrainData.pixelData[i * 4];
const g = this.terrainData.pixelData[i * 4 + 1];
@@ -1148,7 +1154,7 @@ export class MaptilerARControl extends EventEmitter implements IControl {
}
private async runMobile() {
- if (!typeof window) return;
+ if (typeof window === "undefined") return;
const container = this.map.getContainer();
const modelBlobGLB = await this.getModelBlobGLB();
@@ -1177,9 +1183,9 @@ export class MaptilerARControl extends EventEmitter implements IControl {
if (this.options.arButtonClassName) {
this.arButton.classList.add(this.options.arButtonClassName);
} else {
- Object.keys(defaultArButtonStyle).forEach((el) => {
+ for (const el of Object.keys(defaultArButtonStyle)) {
this.arButton.style[el] = defaultArButtonStyle[el];
- });
+ }
}
// Adding content to the AR button
@@ -1198,9 +1204,9 @@ export class MaptilerARControl extends EventEmitter implements IControl {
if (this.options.closeButtonClassName) {
this.closeButton.classList.add(this.options.closeButtonClassName);
} else {
- Object.keys(defaultCloseButtonStyle).forEach((el) => {
+ for (const el of Object.keys(defaultCloseButtonStyle)) {
this.closeButton.style[el] = defaultCloseButtonStyle[el];
- });
+ }
}
// Adding content to the close button