@spuermomonga/vue3-bmapgl 0.0.8 → 0.0.10
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/dist/index.js +212 -15
- package/dist/index.prod.js +1 -1
- package/es/components.mjs +1 -0
- package/es/components.mjs.map +1 -1
- package/es/index.mjs +1 -0
- package/es/index.mjs.map +1 -1
- package/es/layer/tile/index.d.ts +2 -0
- package/es/layer/tile/index.mjs +1 -0
- package/es/layer/tile/index.mjs.map +1 -1
- package/es/layer/tile/src/tile-props.d.ts +60 -0
- package/es/layer/tile/src/tile-props.mjs +52 -0
- package/es/layer/tile/src/tile-props.mjs.map +1 -0
- package/es/layer/tile/src/tile.d.ts +117 -1
- package/es/layer/tile/src/tile.mjs +125 -3
- package/es/layer/tile/src/tile.mjs.map +1 -1
- package/es/layer/xyz/src/xyz-props.d.ts +7 -1
- package/es/layer/xyz/src/xyz-props.mjs.map +1 -1
- package/es/layer/xyz/src/xyz.d.ts +3 -3
- package/es/layer/xyz/src/xyz.mjs +6 -1
- package/es/layer/xyz/src/xyz.mjs.map +1 -1
- package/es/map/src/map-props.d.ts +28 -7
- package/es/map/src/map-props.mjs +28 -7
- package/es/map/src/map-props.mjs.map +1 -1
- package/es/map/src/map.d.ts +56 -14
- package/lib/components.js +2 -0
- package/lib/components.js.map +1 -1
- package/lib/index.js +2 -0
- package/lib/index.js.map +1 -1
- package/lib/layer/tile/index.d.ts +2 -0
- package/lib/layer/tile/index.js +2 -0
- package/lib/layer/tile/index.js.map +1 -1
- package/lib/layer/tile/src/tile-props.d.ts +60 -0
- package/lib/layer/tile/src/tile-props.js +54 -0
- package/lib/layer/tile/src/tile-props.js.map +1 -0
- package/lib/layer/tile/src/tile.d.ts +117 -1
- package/lib/layer/tile/src/tile.js +124 -2
- package/lib/layer/tile/src/tile.js.map +1 -1
- package/lib/layer/xyz/src/xyz-props.d.ts +7 -1
- package/lib/layer/xyz/src/xyz-props.js.map +1 -1
- package/lib/layer/xyz/src/xyz.d.ts +3 -3
- package/lib/layer/xyz/src/xyz.js +6 -1
- package/lib/layer/xyz/src/xyz.js.map +1 -1
- package/lib/map/src/map-props.d.ts +28 -7
- package/lib/map/src/map-props.js +28 -7
- package/lib/map/src/map-props.js.map +1 -1
- package/lib/map/src/map.d.ts +56 -14
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -114,13 +114,6 @@
|
|
|
114
114
|
}
|
|
115
115
|
});
|
|
116
116
|
|
|
117
|
-
var tile = /* @__PURE__ */ vue.defineComponent({
|
|
118
|
-
name: "TileLayer",
|
|
119
|
-
setup() {
|
|
120
|
-
return () => vue.createVNode("div", null, [vue.createTextVNode("Tile")]);
|
|
121
|
-
}
|
|
122
|
-
});
|
|
123
|
-
|
|
124
117
|
function useConfig(props = {}) {
|
|
125
118
|
const BConfigProvider = vue.inject(configProviderInjectionKey, null);
|
|
126
119
|
return {
|
|
@@ -158,15 +151,36 @@
|
|
|
158
151
|
zoom: Number,
|
|
159
152
|
class: String,
|
|
160
153
|
contentClass: String,
|
|
161
|
-
enableScrollWheelZoom:
|
|
162
|
-
|
|
154
|
+
enableScrollWheelZoom: {
|
|
155
|
+
type: Boolean,
|
|
156
|
+
default: void 0
|
|
157
|
+
},
|
|
158
|
+
enableDragging: {
|
|
159
|
+
type: Boolean,
|
|
160
|
+
default: void 0
|
|
161
|
+
},
|
|
163
162
|
tilt: Number,
|
|
164
|
-
enableTilt:
|
|
163
|
+
enableTilt: {
|
|
164
|
+
type: Boolean,
|
|
165
|
+
default: void 0
|
|
166
|
+
},
|
|
165
167
|
mapType: String,
|
|
166
|
-
enableAutoResize:
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
168
|
+
enableAutoResize: {
|
|
169
|
+
type: Boolean,
|
|
170
|
+
default: void 0
|
|
171
|
+
},
|
|
172
|
+
enableTiltGestures: {
|
|
173
|
+
type: Boolean,
|
|
174
|
+
default: void 0
|
|
175
|
+
},
|
|
176
|
+
enableRotate: {
|
|
177
|
+
type: Boolean,
|
|
178
|
+
default: void 0
|
|
179
|
+
},
|
|
180
|
+
enableRotateGestures: {
|
|
181
|
+
type: Boolean,
|
|
182
|
+
default: void 0
|
|
183
|
+
},
|
|
170
184
|
displayOptions: Object,
|
|
171
185
|
onInitd: Function
|
|
172
186
|
};
|
|
@@ -338,6 +352,183 @@
|
|
|
338
352
|
return BMap.mapInstance;
|
|
339
353
|
}
|
|
340
354
|
|
|
355
|
+
const tileLayerProps = {
|
|
356
|
+
visible: {
|
|
357
|
+
type: Boolean,
|
|
358
|
+
default: true
|
|
359
|
+
},
|
|
360
|
+
transform: Object,
|
|
361
|
+
png8: Boolean,
|
|
362
|
+
height: Number,
|
|
363
|
+
retry: {
|
|
364
|
+
type: Boolean,
|
|
365
|
+
default: void 0
|
|
366
|
+
},
|
|
367
|
+
retryTime: Number,
|
|
368
|
+
transparentPng: {
|
|
369
|
+
type: Boolean,
|
|
370
|
+
default: true
|
|
371
|
+
},
|
|
372
|
+
dataType: Number,
|
|
373
|
+
spanLevel: {
|
|
374
|
+
type: Number,
|
|
375
|
+
default: 0
|
|
376
|
+
},
|
|
377
|
+
tileTypeName: String,
|
|
378
|
+
cacheSize: {
|
|
379
|
+
type: Number,
|
|
380
|
+
default: 256
|
|
381
|
+
},
|
|
382
|
+
customLayer: {
|
|
383
|
+
type: Boolean,
|
|
384
|
+
default: void 0
|
|
385
|
+
},
|
|
386
|
+
clipTile: {
|
|
387
|
+
type: Boolean,
|
|
388
|
+
default: void 0
|
|
389
|
+
},
|
|
390
|
+
isTop: Boolean,
|
|
391
|
+
opacity: {
|
|
392
|
+
type: Number,
|
|
393
|
+
default: 1
|
|
394
|
+
},
|
|
395
|
+
isLowText: Boolean,
|
|
396
|
+
boundary: Array,
|
|
397
|
+
showRegion: String,
|
|
398
|
+
useThumbData: Boolean,
|
|
399
|
+
zIndex: Number,
|
|
400
|
+
zIndexTop: Boolean,
|
|
401
|
+
tileUrlTemplate: String,
|
|
402
|
+
getTilesUrl: Function
|
|
403
|
+
};
|
|
404
|
+
|
|
405
|
+
var tile = /* @__PURE__ */ vue.defineComponent({
|
|
406
|
+
name: "TileLayer",
|
|
407
|
+
props: tileLayerProps,
|
|
408
|
+
setup(props) {
|
|
409
|
+
const mapInstance = useMapInstance();
|
|
410
|
+
let layer = null;
|
|
411
|
+
const setZIndex = (zIndex) => {
|
|
412
|
+
layer?.setZIndex(zIndex);
|
|
413
|
+
};
|
|
414
|
+
const setBoundary = (boundary) => {
|
|
415
|
+
boundary ? layer?.addBoundary(boundary) : layer?.clearBoundary();
|
|
416
|
+
};
|
|
417
|
+
const setZIndexTop = (zIndexTop) => {
|
|
418
|
+
layer?.setTop(zIndexTop);
|
|
419
|
+
};
|
|
420
|
+
const addTileLayer = () => {
|
|
421
|
+
const {
|
|
422
|
+
getTilesUrl
|
|
423
|
+
} = props;
|
|
424
|
+
if (!layer) return;
|
|
425
|
+
if (getTilesUrl) {
|
|
426
|
+
mapInstance().addTileLayer(layer);
|
|
427
|
+
layer.loadRasterTileData = function(tileInfo, callback) {
|
|
428
|
+
const key = this.getTileKey(tileInfo);
|
|
429
|
+
const handleImageLoad = (image) => {
|
|
430
|
+
image.tileInfo = tileInfo;
|
|
431
|
+
callback && callback(image, key);
|
|
432
|
+
};
|
|
433
|
+
const handleError = () => callback && callback(null, key);
|
|
434
|
+
const box = BMapGL.Projection.tileToBoundRange({
|
|
435
|
+
col: tileInfo.col,
|
|
436
|
+
row: tileInfo.row,
|
|
437
|
+
baseTileSize: tileInfo.baseTileSize,
|
|
438
|
+
zoom: tileInfo.zoom
|
|
439
|
+
});
|
|
440
|
+
getTilesUrl({
|
|
441
|
+
x: tileInfo.col,
|
|
442
|
+
y: tileInfo.row,
|
|
443
|
+
z: tileInfo.zoom
|
|
444
|
+
}, box, (img) => {
|
|
445
|
+
if (typeof img === "string" || img instanceof HTMLCanvasElement) {
|
|
446
|
+
const image = new Image();
|
|
447
|
+
image.crossOrigin = "anonymous";
|
|
448
|
+
image.onload = () => handleImageLoad(image);
|
|
449
|
+
image.onerror = handleError;
|
|
450
|
+
image.src = typeof img === "string" ? img : img.toDataURL();
|
|
451
|
+
} else if (img instanceof HTMLImageElement) {
|
|
452
|
+
handleImageLoad(img);
|
|
453
|
+
} else {
|
|
454
|
+
handleError();
|
|
455
|
+
}
|
|
456
|
+
});
|
|
457
|
+
};
|
|
458
|
+
} else {
|
|
459
|
+
mapInstance().addTileLayer(layer);
|
|
460
|
+
}
|
|
461
|
+
};
|
|
462
|
+
const initLayerOptions = () => {
|
|
463
|
+
const {
|
|
464
|
+
zIndex,
|
|
465
|
+
boundary
|
|
466
|
+
} = props;
|
|
467
|
+
setBoundary(boundary);
|
|
468
|
+
setZIndex(zIndex);
|
|
469
|
+
};
|
|
470
|
+
const startWatchProps = () => {
|
|
471
|
+
vue.watch(() => props.zIndex, setZIndex);
|
|
472
|
+
vue.watch(() => props.boundary, setBoundary);
|
|
473
|
+
vue.watch(() => props.zIndexTop, setZIndexTop);
|
|
474
|
+
vue.watch(() => props.visible, (n) => n ? addTileLayer() : mapInstance().removeTileLayer(layer));
|
|
475
|
+
};
|
|
476
|
+
const init = () => {
|
|
477
|
+
const {
|
|
478
|
+
visible,
|
|
479
|
+
transform,
|
|
480
|
+
png8,
|
|
481
|
+
height,
|
|
482
|
+
retry,
|
|
483
|
+
retryTime,
|
|
484
|
+
transparentPng,
|
|
485
|
+
dataType,
|
|
486
|
+
spanLevel,
|
|
487
|
+
tileTypeName,
|
|
488
|
+
cacheSize,
|
|
489
|
+
customLayer,
|
|
490
|
+
clipTile,
|
|
491
|
+
isTop,
|
|
492
|
+
opacity,
|
|
493
|
+
isLowText,
|
|
494
|
+
showRegion,
|
|
495
|
+
useThumbData,
|
|
496
|
+
tileUrlTemplate
|
|
497
|
+
} = props;
|
|
498
|
+
layer = new BMapGL.TileLayer({
|
|
499
|
+
transform,
|
|
500
|
+
png8,
|
|
501
|
+
height,
|
|
502
|
+
retry,
|
|
503
|
+
retryTime,
|
|
504
|
+
transparentPng,
|
|
505
|
+
dataType,
|
|
506
|
+
spanLevel,
|
|
507
|
+
tileTypeName,
|
|
508
|
+
cacheSize,
|
|
509
|
+
customLayer,
|
|
510
|
+
clipTile,
|
|
511
|
+
isTop,
|
|
512
|
+
opacity,
|
|
513
|
+
isLowText,
|
|
514
|
+
showRegion,
|
|
515
|
+
useThumbData,
|
|
516
|
+
tileUrlTemplate
|
|
517
|
+
});
|
|
518
|
+
initLayerOptions();
|
|
519
|
+
visible && addTileLayer();
|
|
520
|
+
startWatchProps();
|
|
521
|
+
};
|
|
522
|
+
init();
|
|
523
|
+
vue.onUnmounted(() => {
|
|
524
|
+
if (layer) {
|
|
525
|
+
mapInstance().removeTileLayer(layer);
|
|
526
|
+
}
|
|
527
|
+
});
|
|
528
|
+
return () => vue.createVNode(vue.Fragment, null, null);
|
|
529
|
+
}
|
|
530
|
+
});
|
|
531
|
+
|
|
341
532
|
const xyzLayerProps = {
|
|
342
533
|
visible: {
|
|
343
534
|
type: Boolean,
|
|
@@ -461,7 +652,12 @@
|
|
|
461
652
|
callback && callback(image, key);
|
|
462
653
|
};
|
|
463
654
|
const handleError = () => callback && callback(null, key);
|
|
464
|
-
|
|
655
|
+
const box = BMapGL.XYZProjection.getTileRangeExtent([tileInfo.zoom, tileInfo.col, tileInfo.row]);
|
|
656
|
+
getTile({
|
|
657
|
+
x: tileInfo.col,
|
|
658
|
+
y: tileInfo.row,
|
|
659
|
+
z: tileInfo.zoom
|
|
660
|
+
}, box, (img) => {
|
|
465
661
|
if (typeof img === "string" || img instanceof HTMLCanvasElement) {
|
|
466
662
|
const image = new Image();
|
|
467
663
|
image.crossOrigin = "anonymous";
|
|
@@ -649,6 +845,7 @@
|
|
|
649
845
|
exports.mapInjectionKey = mapInjectionKey;
|
|
650
846
|
exports.mapProps = mapProps;
|
|
651
847
|
exports.polygonProps = polygonProps;
|
|
848
|
+
exports.tileLayerProps = tileLayerProps;
|
|
652
849
|
exports.xyzLayerProps = xyzLayerProps;
|
|
653
850
|
|
|
654
851
|
}));
|
package/dist/index.prod.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("vue")):"function"==typeof define&&define.amd?define(["exports","vue"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).Vue3Bmapgl={},e.vue)}(this,function(e,t){"use strict";let a=!1;function o(e){return e.some(e=>!t.isVNode(e)||e.type!==Comment&&!(e.type===t.Fragment&&!o(e.children)))?e:null}function n(e,t){return t(e&&o(e())||null)}const l={ak:String,apiUrl:String,plugins:Array,mapConfig:Object},r=Symbol("b-config-provider");var i=t.defineComponent({name:"ConfigProvider",props:l,setup(e,{slots:o}){const n=t.ref("notload"),l=e.apiUrl?"_initBMap_":`_initBMap_${e.ak}`,i=e.apiUrl?`${e.apiUrl.replace(/&$/,"")}&callback=${l}`:`//api.map.baidu.com/api?type=webgl&v=1.0&ak=${e.ak}&callback=${l}`;n.value="pending",function(e){const{key:t,src:o,addCalToWindow:n=!0,timeout:l=1e4}=e;return a&&window.BMapGL?Promise.resolve():new Promise((e,r)=>{const i=document.createElement("script");i.src=o,i.type="text/javascript",i.defer=!0;const s=()=>{i.onload=null,i.onerror=null,document.body.contains(i)&&document.body.removeChild(i)},p=setTimeout(()=>{s(),r(new Error(`Script load timeout: ${o}`))},l),m=()=>{clearTimeout(p),a=!0,s(),e()};n?window[t]=m:i.onload=m,i.onerror=()=>{clearTimeout(p),s(),r(new Error(`Failed to load script: ${o}`))},document.body.appendChild(i)})}({key:l,src:i}).then(()=>{n.value="loaded"}).catch(()=>{n.value="failed"});const s=t.computed(()=>{const{mapConfig:t}=e;return t??{}});return t.provide(r,{mergedStatusRef:n,mergedMapSetRef:s}),()=>t.renderSlot(o,"default")}}),s=t.defineComponent({name:"TileLayer",setup:()=>()=>t.createVNode("div",null,[t.createTextVNode("Tile")])});const p=Symbol("b-map"),m={maxZoom:Number,minZoom:Number,heading:Number,center:Object,zoom:Number,class:String,contentClass:String,enableScrollWheelZoom:Boolean,enableDragging:Boolean,tilt:Number,enableTilt:Boolean,mapType:String,enableAutoResize:Boolean,enableTiltGestures:Boolean,enableRotate:Boolean,enableRotateGestures:Boolean,displayOptions:Object,onInitd:Function};var d="map-module_b-map__29r3m",u="map-module_b-map-content__sMaJG",c="map-module_b-map-loading__qc4a8",f="map-module_b-map-failed__-w-tX";!function(e,t){void 0===t&&(t={});var a=t.insertAt;if("undefined"!=typeof document){var o=document.head||document.getElementsByTagName("head")[0],n=document.createElement("style");n.type="text/css","top"===a&&o.firstChild?o.insertBefore(n,o.firstChild):o.appendChild(n),n.styleSheet?n.styleSheet.cssText=e:n.appendChild(document.createTextNode(e))}}(".map-module_b-map-content__sMaJG,.map-module_b-map__29r3m{height:100%;overflow:hidden;position:relative;width:100%}.map-module_b-map-failed__-w-tX,.map-module_b-map-loading__qc4a8{color:#999;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}");var y=t.defineComponent({name:"Map",props:m,slots:Object,setup(e,{slots:a}){const{mergedMapSetRef:o,mergedStatusRef:l}=function(e={}){const a=t.inject(r,null);return{mergedStatusRef:a?.mergedStatusRef,mergedMapSetRef:t.computed(()=>{const{zoom:t,center:o,heading:n,minZoom:l,maxZoom:r,enableScrollWheelZoom:i,enableDragging:s,tilt:p,enableTilt:m,mapType:d,enableAutoResize:u,enableTiltGestures:c,enableRotate:f,enableRotateGestures:y,displayOptions:g}=e;return{zoom:t??a?.mergedMapSetRef.value?.zoom??14,center:o??a?.mergedMapSetRef.value?.center??[116.403901,39.915185],heading:n??a?.mergedMapSetRef.value?.heading??0,minZoom:l??a?.mergedMapSetRef.value?.minZoom??0,maxZoom:r??a?.mergedMapSetRef.value?.maxZoom??21,enableScrollWheelZoom:i??a?.mergedMapSetRef.value?.enableScrollWheelZoom??!1,enableDragging:s??a?.mergedMapSetRef.value?.enableDragging??!0,tilt:p??a?.mergedMapSetRef.value?.tilt??0,enableTilt:m??a?.mergedMapSetRef.value?.enableTilt??!1,mapType:d??a?.mergedMapSetRef.value?.mapType??"BMAP_NORMAL_MAP",enableAutoResize:u??a?.mergedMapSetRef.value?.enableAutoResize??!0,enableTiltGestures:c??a?.mergedMapSetRef.value?.enableTiltGestures??!1,enableRotate:f??a?.mergedMapSetRef.value?.enableRotate??!1,enableRotateGestures:y??a?.mergedMapSetRef.value?.enableRotateGestures??!1,displayOptions:g??a?.mergedMapSetRef.value?.displayOptions}})}}(e),i=t.ref();let s=null;const m=t.ref(!1);t.provide(p,{mapInstance:()=>s});const y=e=>{"string"==typeof e?s?.centerAndZoom(e,o.value.zoom):Array.isArray(e)?s?.centerAndZoom(new BMapGL.Point(e[0],e[1]),o.value.zoom):s?.centerAndZoom(e,o.value.zoom)},g=e=>{e?s.enableScrollWheelZoom():s.disableScrollWheelZoom()},b=e=>{s?.setDisplayOptions(e||{})},v=e=>{s?.setTilt(e??0)},T=e=>{s?.setHeading(e??0)},h=e=>{e?s.enableDragging():s.disableDragging()},S=e=>{void 0!==window[e]&&s.setMapType(window[e])},R=()=>{const{maxZoom:a,minZoom:n,enableTilt:l,mapType:r,enableAutoResize:p,enableTiltGestures:d,enableRotate:u,enableRotateGestures:c,displayOptions:f}=o.value;s=new BMapGL.Map(i.value,{maxZoom:a,minZoom:n,enableTilt:l,mapType:window[r],enableAutoResize:p,enableTiltGestures:d,enableRotate:u,enableRotateGestures:c,displayOptions:f});const{onInitd:R}=e;(()=>{const{center:e,heading:t,enableScrollWheelZoom:a,tilt:n,enableDragging:l}=o.value;T(t),y(e),g(a),v(n),h(l)})(),t.watch(()=>o.value.center,y,{deep:!0}),t.watch(()=>o.value.enableScrollWheelZoom,g),t.watch(()=>o.value.displayOptions,b),t.watch(()=>o.value.tilt,v),t.watch(()=>o.value.heading,T),t.watch(()=>o.value.enableDragging,h),t.watch(()=>o.value.mapType,S),R?.({map:s}),m.value=!0};return t.onMounted(()=>{t.watchEffect(()=>{"loaded"!==l?.value||m.value||t.nextTick(R)})}),t.onUnmounted(()=>{if(s)try{s?.destroy()}catch(e){console.error(`[Vue3 BMapGL]: ${e.message}`)}}),()=>t.createVNode("div",{class:[[d],e.class]},[t.createVNode("div",{ref:i,class:[u,e.contentClass]},["pending"===l?.value&&n(a.loading,()=>t.createVNode("div",{class:[c]},[t.createTextVNode("map loading...")])),"failed"===l?.value&&n(a.failed,()=>t.createVNode("div",{class:[f]},[t.createTextVNode("map failed")]))]),m.value&&a.default?.()])}});function g(){return t.inject(p,null).mapInstance}const b={visible:{type:Boolean,default:!0},getTile:{type:Function},useThumbData:{type:Boolean,default:!1},xTemplate:{type:Function},yTemplate:{type:Function},zTemplate:{type:Function},bTemplate:{type:Function},minZoom:{type:Number,default:3},maxZoom:{type:Number,default:23},extent:{type:Array},extentCRSIsWGS84:{type:Boolean,default:!1},boundary:{type:Array},zIndex:{type:Number,default:1},zIndexTop:{type:Boolean,default:!1},tms:{type:Boolean,default:!1}};var v=t.defineComponent({name:"XyzLayer",props:b,setup(e){const a=g();let o=null;const n=e=>{o?.setZIndex(e)},l=e=>{e&&!e.length?o?.addBoundary(e):o?.clearBoundary()},r=()=>{const{zIndex:t,zIndexTop:a}=e;n(t),(e=>{e&&o?.setZIndexTop()})(a)};return(()=>{const{visible:i,getTile:s,xTemplate:p,yTemplate:m,zTemplate:d,bTemplate:u,minZoom:c,maxZoom:f,extent:y,extentCRSIsWGS84:g,boundary:b,useThumbData:v,tms:T}=e;o=new BMapGL.XYZLayer({xTemplate:p,yTemplate:m,zTemplate:d,bTemplate:u,minZoom:c,maxZoom:f,extent:y,extentCRSIsWGS84:g,boundary:b,useThumbData:v,tms:T}),r(),i&&(s?(a().addTileLayer(o),o.loadRasterTileData=function(e,t){const a=this.getTileKey(e),o=o=>{o.tileInfo=e,t&&t(o,a)},n=()=>t&&t(null,a);s(e,e=>{if("string"==typeof e||e instanceof HTMLCanvasElement){const t=new Image;t.crossOrigin="anonymous",t.onload=()=>o(t),t.onerror=n,t.src="string"==typeof e?e:e.toDataURL()}else e instanceof HTMLImageElement?o(e):n()})}):a().addTileLayer(o)),t.watch(()=>e.zIndex,n),t.watch(()=>e.boundary,l)})(),t.onUnmounted(()=>{o&&a().removeTileLayer(o)}),()=>t.createVNode(t.Fragment,null,null)}});const T={visible:{type:Boolean,default:!0},points:{type:Array},strokeColor:{type:String,default:"#000"},fillColor:{type:String,default:"#fff"},strokeWeight:{type:Number,default:2},strokeOpacity:{type:Number,default:1},fillOpacity:{type:Number,default:.3},strokeStyle:{type:String,default:"solid"},enableMassClear:{type:Boolean,default:!0},enableEditing:{type:Boolean,default:!1},isBoundary:{type:Boolean},enableClicking:{type:Boolean,default:!0}};var h=t.defineComponent({name:"Polygon",props:T,setup:e=>{const a=g();let o=null;const n=e=>{o&&o.setStrokeColor(e)};return(()=>{const{points:l,visible:r,strokeColor:i,fillColor:s,strokeWeight:p,strokeOpacity:m,fillOpacity:d,strokeStyle:u,enableMassClear:c,enableEditing:f,enableClicking:y}=e;l&&l.length&&(o=new BMapGL.Polygon(function(e){if(!e||0===e.length)return[];const t=e[0];return Array.isArray(t)?e.map(([e,t])=>new BMapGL.Point(e,t)):e}(l),{strokeColor:i,fillColor:s,strokeWeight:p,strokeOpacity:m,fillOpacity:d,strokeStyle:u,enableMassClear:c,enableEditing:f,enableClicking:y}),r&&a().addOverlay(o),t.watch(()=>e.strokeColor,n),t.watch(()=>e.visible,e=>{a()[e?"addOverlay":"removeOverlay"](o)}))})(),t.onUnmounted(()=>{o&&a().removeOverlay(o)}),()=>t.createVNode(t.Fragment,null,null)}}),S=t.defineComponent({name:"Sector",setup:()=>()=>t.createVNode(t.Fragment,null,null)});e.BConfigProvider=i,e.BMap=y,e.BPolygon=h,e.BSector=S,e.BTileLayer=s,e.BXyzLayer=v,e.configProviderInjectionKey=r,e.configProviderProps=l,e.create=function({componentPrefix:e="B",components:t=[]}={}){const a=[];function o(t,a,o){t.component(e+a)||t.component(e+a,o)}return{componentPrefix:e,install:function(e){a.includes(e)||(a.push(e),t.forEach(t=>{const{name:a,alias:n}=t;o(e,a,t),n&&n.forEach(a=>{o(e,a,t)})}))}}},e.mapInjectionKey=p,e.mapProps=m,e.polygonProps=T,e.xyzLayerProps=b});
|
|
1
|
+
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("vue")):"function"==typeof define&&define.amd?define(["exports","vue"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).Vue3Bmapgl={},e.vue)}(this,function(e,t){"use strict";let o=!1;function a(e){return e.some(e=>!t.isVNode(e)||e.type!==Comment&&!(e.type===t.Fragment&&!a(e.children)))?e:null}function n(e,t){return t(e&&a(e())||null)}const l={ak:String,apiUrl:String,plugins:Array,mapConfig:Object},r=Symbol("b-config-provider");var i=t.defineComponent({name:"ConfigProvider",props:l,setup(e,{slots:a}){const n=t.ref("notload"),l=e.apiUrl?"_initBMap_":`_initBMap_${e.ak}`,i=e.apiUrl?`${e.apiUrl.replace(/&$/,"")}&callback=${l}`:`//api.map.baidu.com/api?type=webgl&v=1.0&ak=${e.ak}&callback=${l}`;n.value="pending",function(e){const{key:t,src:a,addCalToWindow:n=!0,timeout:l=1e4}=e;return o&&window.BMapGL?Promise.resolve():new Promise((e,r)=>{const i=document.createElement("script");i.src=a,i.type="text/javascript",i.defer=!0;const s=()=>{i.onload=null,i.onerror=null,document.body.contains(i)&&document.body.removeChild(i)},p=setTimeout(()=>{s(),r(new Error(`Script load timeout: ${a}`))},l),d=()=>{clearTimeout(p),o=!0,s(),e()};n?window[t]=d:i.onload=d,i.onerror=()=>{clearTimeout(p),s(),r(new Error(`Failed to load script: ${a}`))},document.body.appendChild(i)})}({key:l,src:i}).then(()=>{n.value="loaded"}).catch(()=>{n.value="failed"});const s=t.computed(()=>{const{mapConfig:t}=e;return t??{}});return t.provide(r,{mergedStatusRef:n,mergedMapSetRef:s}),()=>t.renderSlot(a,"default")}});const s=Symbol("b-map"),p={maxZoom:Number,minZoom:Number,heading:Number,center:Object,zoom:Number,class:String,contentClass:String,enableScrollWheelZoom:{type:Boolean,default:void 0},enableDragging:{type:Boolean,default:void 0},tilt:Number,enableTilt:{type:Boolean,default:void 0},mapType:String,enableAutoResize:{type:Boolean,default:void 0},enableTiltGestures:{type:Boolean,default:void 0},enableRotate:{type:Boolean,default:void 0},enableRotateGestures:{type:Boolean,default:void 0},displayOptions:Object,onInitd:Function};var d="map-module_b-map__29r3m",m="map-module_b-map-content__sMaJG",u="map-module_b-map-loading__qc4a8",c="map-module_b-map-failed__-w-tX";!function(e,t){void 0===t&&(t={});var o=t.insertAt;if("undefined"!=typeof document){var a=document.head||document.getElementsByTagName("head")[0],n=document.createElement("style");n.type="text/css","top"===o&&a.firstChild?a.insertBefore(n,a.firstChild):a.appendChild(n),n.styleSheet?n.styleSheet.cssText=e:n.appendChild(document.createTextNode(e))}}(".map-module_b-map-content__sMaJG,.map-module_b-map__29r3m{height:100%;overflow:hidden;position:relative;width:100%}.map-module_b-map-failed__-w-tX,.map-module_b-map-loading__qc4a8{color:#999;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}");var y=t.defineComponent({name:"Map",props:p,slots:Object,setup(e,{slots:o}){const{mergedMapSetRef:a,mergedStatusRef:l}=function(e={}){const o=t.inject(r,null);return{mergedStatusRef:o?.mergedStatusRef,mergedMapSetRef:t.computed(()=>{const{zoom:t,center:a,heading:n,minZoom:l,maxZoom:r,enableScrollWheelZoom:i,enableDragging:s,tilt:p,enableTilt:d,mapType:m,enableAutoResize:u,enableTiltGestures:c,enableRotate:y,enableRotateGestures:f,displayOptions:g}=e;return{zoom:t??o?.mergedMapSetRef.value?.zoom??14,center:a??o?.mergedMapSetRef.value?.center??[116.403901,39.915185],heading:n??o?.mergedMapSetRef.value?.heading??0,minZoom:l??o?.mergedMapSetRef.value?.minZoom??0,maxZoom:r??o?.mergedMapSetRef.value?.maxZoom??21,enableScrollWheelZoom:i??o?.mergedMapSetRef.value?.enableScrollWheelZoom??!1,enableDragging:s??o?.mergedMapSetRef.value?.enableDragging??!0,tilt:p??o?.mergedMapSetRef.value?.tilt??0,enableTilt:d??o?.mergedMapSetRef.value?.enableTilt??!1,mapType:m??o?.mergedMapSetRef.value?.mapType??"BMAP_NORMAL_MAP",enableAutoResize:u??o?.mergedMapSetRef.value?.enableAutoResize??!0,enableTiltGestures:c??o?.mergedMapSetRef.value?.enableTiltGestures??!1,enableRotate:y??o?.mergedMapSetRef.value?.enableRotate??!1,enableRotateGestures:f??o?.mergedMapSetRef.value?.enableRotateGestures??!1,displayOptions:g??o?.mergedMapSetRef.value?.displayOptions}})}}(e),i=t.ref();let p=null;const y=t.ref(!1);t.provide(s,{mapInstance:()=>p});const f=e=>{"string"==typeof e?p?.centerAndZoom(e,a.value.zoom):Array.isArray(e)?p?.centerAndZoom(new BMapGL.Point(e[0],e[1]),a.value.zoom):p?.centerAndZoom(e,a.value.zoom)},g=e=>{e?p.enableScrollWheelZoom():p.disableScrollWheelZoom()},b=e=>{p?.setDisplayOptions(e||{})},T=e=>{p?.setTilt(e??0)},v=e=>{p?.setHeading(e??0)},h=e=>{e?p.enableDragging():p.disableDragging()},S=e=>{void 0!==window[e]&&p.setMapType(window[e])},B=()=>{const{maxZoom:o,minZoom:n,enableTilt:l,mapType:r,enableAutoResize:s,enableTiltGestures:d,enableRotate:m,enableRotateGestures:u,displayOptions:c}=a.value;p=new BMapGL.Map(i.value,{maxZoom:o,minZoom:n,enableTilt:l,mapType:window[r],enableAutoResize:s,enableTiltGestures:d,enableRotate:m,enableRotateGestures:u,displayOptions:c});const{onInitd:B}=e;(()=>{const{center:e,heading:t,enableScrollWheelZoom:o,tilt:n,enableDragging:l}=a.value;v(t),f(e),g(o),T(n),h(l)})(),t.watch(()=>a.value.center,f,{deep:!0}),t.watch(()=>a.value.enableScrollWheelZoom,g),t.watch(()=>a.value.displayOptions,b),t.watch(()=>a.value.tilt,T),t.watch(()=>a.value.heading,v),t.watch(()=>a.value.enableDragging,h),t.watch(()=>a.value.mapType,S),B?.({map:p}),y.value=!0};return t.onMounted(()=>{t.watchEffect(()=>{"loaded"!==l?.value||y.value||t.nextTick(B)})}),t.onUnmounted(()=>{if(p)try{p?.destroy()}catch(e){console.error(`[Vue3 BMapGL]: ${e.message}`)}}),()=>t.createVNode("div",{class:[[d],e.class]},[t.createVNode("div",{ref:i,class:[m,e.contentClass]},["pending"===l?.value&&n(o.loading,()=>t.createVNode("div",{class:[u]},[t.createTextVNode("map loading...")])),"failed"===l?.value&&n(o.failed,()=>t.createVNode("div",{class:[c]},[t.createTextVNode("map failed")]))]),y.value&&o.default?.()])}});function f(){return t.inject(s,null).mapInstance}const g={visible:{type:Boolean,default:!0},transform:Object,png8:Boolean,height:Number,retry:{type:Boolean,default:void 0},retryTime:Number,transparentPng:{type:Boolean,default:!0},dataType:Number,spanLevel:{type:Number,default:0},tileTypeName:String,cacheSize:{type:Number,default:256},customLayer:{type:Boolean,default:void 0},clipTile:{type:Boolean,default:void 0},isTop:Boolean,opacity:{type:Number,default:1},isLowText:Boolean,boundary:Array,showRegion:String,useThumbData:Boolean,zIndex:Number,zIndexTop:Boolean,tileUrlTemplate:String,getTilesUrl:Function};var b=t.defineComponent({name:"TileLayer",props:g,setup(e){const o=f();let a=null;const n=e=>{a?.setZIndex(e)},l=e=>{e?a?.addBoundary(e):a?.clearBoundary()},r=e=>{a?.setTop(e)},i=()=>{const{getTilesUrl:t}=e;a&&(t?(o().addTileLayer(a),a.loadRasterTileData=function(e,o){const a=this.getTileKey(e),n=t=>{t.tileInfo=e,o&&o(t,a)},l=()=>o&&o(null,a),r=BMapGL.Projection.tileToBoundRange({col:e.col,row:e.row,baseTileSize:e.baseTileSize,zoom:e.zoom});t({x:e.col,y:e.row,z:e.zoom},r,e=>{if("string"==typeof e||e instanceof HTMLCanvasElement){const t=new Image;t.crossOrigin="anonymous",t.onload=()=>n(t),t.onerror=l,t.src="string"==typeof e?e:e.toDataURL()}else e instanceof HTMLImageElement?n(e):l()})}):o().addTileLayer(a))};return(()=>{const{visible:s,transform:p,png8:d,height:m,retry:u,retryTime:c,transparentPng:y,dataType:f,spanLevel:g,tileTypeName:b,cacheSize:T,customLayer:v,clipTile:h,isTop:S,opacity:B,isLowText:w,showRegion:R,useThumbData:x,tileUrlTemplate:M}=e;a=new BMapGL.TileLayer({transform:p,png8:d,height:m,retry:u,retryTime:c,transparentPng:y,dataType:f,spanLevel:g,tileTypeName:b,cacheSize:T,customLayer:v,clipTile:h,isTop:S,opacity:B,isLowText:w,showRegion:R,useThumbData:x,tileUrlTemplate:M}),(()=>{const{zIndex:t,boundary:o}=e;l(o),n(t)})(),s&&i(),t.watch(()=>e.zIndex,n),t.watch(()=>e.boundary,l),t.watch(()=>e.zIndexTop,r),t.watch(()=>e.visible,e=>e?i():o().removeTileLayer(a))})(),t.onUnmounted(()=>{a&&o().removeTileLayer(a)}),()=>t.createVNode(t.Fragment,null,null)}});const T={visible:{type:Boolean,default:!0},getTile:{type:Function},useThumbData:{type:Boolean,default:!1},xTemplate:{type:Function},yTemplate:{type:Function},zTemplate:{type:Function},bTemplate:{type:Function},minZoom:{type:Number,default:3},maxZoom:{type:Number,default:23},extent:{type:Array},extentCRSIsWGS84:{type:Boolean,default:!1},boundary:{type:Array},zIndex:{type:Number,default:1},zIndexTop:{type:Boolean,default:!1},tms:{type:Boolean,default:!1}};var v=t.defineComponent({name:"XyzLayer",props:T,setup(e){const o=f();let a=null;const n=e=>{a?.setZIndex(e)},l=e=>{e&&!e.length?a?.addBoundary(e):a?.clearBoundary()},r=()=>{const{zIndex:t,zIndexTop:o}=e;n(t),(e=>{e&&a?.setZIndexTop()})(o)};return(()=>{const{visible:i,getTile:s,xTemplate:p,yTemplate:d,zTemplate:m,bTemplate:u,minZoom:c,maxZoom:y,extent:f,extentCRSIsWGS84:g,boundary:b,useThumbData:T,tms:v}=e;a=new BMapGL.XYZLayer({xTemplate:p,yTemplate:d,zTemplate:m,bTemplate:u,minZoom:c,maxZoom:y,extent:f,extentCRSIsWGS84:g,boundary:b,useThumbData:T,tms:v}),r(),i&&(s?(o().addTileLayer(a),a.loadRasterTileData=function(e,t){const o=this.getTileKey(e),a=a=>{a.tileInfo=e,t&&t(a,o)},n=()=>t&&t(null,o),l=BMapGL.XYZProjection.getTileRangeExtent([e.zoom,e.col,e.row]);s({x:e.col,y:e.row,z:e.zoom},l,e=>{if("string"==typeof e||e instanceof HTMLCanvasElement){const t=new Image;t.crossOrigin="anonymous",t.onload=()=>a(t),t.onerror=n,t.src="string"==typeof e?e:e.toDataURL()}else e instanceof HTMLImageElement?a(e):n()})}):o().addTileLayer(a)),t.watch(()=>e.zIndex,n),t.watch(()=>e.boundary,l)})(),t.onUnmounted(()=>{a&&o().removeTileLayer(a)}),()=>t.createVNode(t.Fragment,null,null)}});const h={visible:{type:Boolean,default:!0},points:{type:Array},strokeColor:{type:String,default:"#000"},fillColor:{type:String,default:"#fff"},strokeWeight:{type:Number,default:2},strokeOpacity:{type:Number,default:1},fillOpacity:{type:Number,default:.3},strokeStyle:{type:String,default:"solid"},enableMassClear:{type:Boolean,default:!0},enableEditing:{type:Boolean,default:!1},isBoundary:{type:Boolean},enableClicking:{type:Boolean,default:!0}};var S=t.defineComponent({name:"Polygon",props:h,setup:e=>{const o=f();let a=null;const n=e=>{a&&a.setStrokeColor(e)};return(()=>{const{points:l,visible:r,strokeColor:i,fillColor:s,strokeWeight:p,strokeOpacity:d,fillOpacity:m,strokeStyle:u,enableMassClear:c,enableEditing:y,enableClicking:f}=e;l&&l.length&&(a=new BMapGL.Polygon(function(e){if(!e||0===e.length)return[];const t=e[0];return Array.isArray(t)?e.map(([e,t])=>new BMapGL.Point(e,t)):e}(l),{strokeColor:i,fillColor:s,strokeWeight:p,strokeOpacity:d,fillOpacity:m,strokeStyle:u,enableMassClear:c,enableEditing:y,enableClicking:f}),r&&o().addOverlay(a),t.watch(()=>e.strokeColor,n),t.watch(()=>e.visible,e=>{o()[e?"addOverlay":"removeOverlay"](a)}))})(),t.onUnmounted(()=>{a&&o().removeOverlay(a)}),()=>t.createVNode(t.Fragment,null,null)}}),B=t.defineComponent({name:"Sector",setup:()=>()=>t.createVNode(t.Fragment,null,null)});e.BConfigProvider=i,e.BMap=y,e.BPolygon=S,e.BSector=B,e.BTileLayer=b,e.BXyzLayer=v,e.configProviderInjectionKey=r,e.configProviderProps=l,e.create=function({componentPrefix:e="B",components:t=[]}={}){const o=[];function a(t,o,a){t.component(e+o)||t.component(e+o,a)}return{componentPrefix:e,install:function(e){o.includes(e)||(o.push(e),t.forEach(t=>{const{name:o,alias:n}=t;a(e,o,t),n&&n.forEach(o=>{a(e,o,t)})}))}}},e.mapInjectionKey=s,e.mapProps=p,e.polygonProps=h,e.tileLayerProps=g,e.xyzLayerProps=T});
|
package/es/components.mjs
CHANGED
|
@@ -2,6 +2,7 @@ export { default as BConfigProvider } from './config-provider/src/config-provide
|
|
|
2
2
|
export { configProviderProps } from './config-provider/src/config-provider-props.mjs';
|
|
3
3
|
export { configProviderInjectionKey } from './config-provider/src/constants.mjs';
|
|
4
4
|
export { default as BTileLayer } from './layer/tile/src/tile.mjs';
|
|
5
|
+
export { tileLayerProps } from './layer/tile/src/tile-props.mjs';
|
|
5
6
|
export { default as BXyzLayer } from './layer/xyz/src/xyz.mjs';
|
|
6
7
|
export { xyzLayerProps } from './layer/xyz/src/xyz-props.mjs';
|
|
7
8
|
export { mapInjectionKey } from './map/src/constants.mjs';
|
package/es/components.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"components.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;"}
|
package/es/index.mjs
CHANGED
|
@@ -3,6 +3,7 @@ export { default as BConfigProvider } from './config-provider/src/config-provide
|
|
|
3
3
|
export { configProviderProps } from './config-provider/src/config-provider-props.mjs';
|
|
4
4
|
export { configProviderInjectionKey } from './config-provider/src/constants.mjs';
|
|
5
5
|
export { default as BTileLayer } from './layer/tile/src/tile.mjs';
|
|
6
|
+
export { tileLayerProps } from './layer/tile/src/tile-props.mjs';
|
|
6
7
|
export { default as BXyzLayer } from './layer/xyz/src/xyz.mjs';
|
|
7
8
|
export { xyzLayerProps } from './layer/xyz/src/xyz-props.mjs';
|
|
8
9
|
export { mapInjectionKey } from './map/src/constants.mjs';
|
package/es/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;"}
|
package/es/layer/tile/index.d.ts
CHANGED
package/es/layer/tile/index.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import type { PropType } from 'vue';
|
|
2
|
+
import type { ExtractPublicPropTypes } from '../../../_utils';
|
|
3
|
+
export type GetTilesUrlFn = (tile: {
|
|
4
|
+
x: number;
|
|
5
|
+
y: number;
|
|
6
|
+
z: number;
|
|
7
|
+
}, boundRange: any, cb: (image: string | HTMLImageElement | HTMLCanvasElement) => void) => void;
|
|
8
|
+
export declare const tileLayerProps: {
|
|
9
|
+
readonly visible: {
|
|
10
|
+
readonly type: BooleanConstructor;
|
|
11
|
+
readonly default: true;
|
|
12
|
+
};
|
|
13
|
+
readonly transform: PropType<{
|
|
14
|
+
source: string;
|
|
15
|
+
target: string;
|
|
16
|
+
}>;
|
|
17
|
+
readonly png8: BooleanConstructor;
|
|
18
|
+
readonly height: NumberConstructor;
|
|
19
|
+
readonly retry: {
|
|
20
|
+
readonly type: BooleanConstructor;
|
|
21
|
+
readonly default: undefined;
|
|
22
|
+
};
|
|
23
|
+
readonly retryTime: NumberConstructor;
|
|
24
|
+
readonly transparentPng: {
|
|
25
|
+
readonly type: BooleanConstructor;
|
|
26
|
+
readonly default: true;
|
|
27
|
+
};
|
|
28
|
+
readonly dataType: NumberConstructor;
|
|
29
|
+
readonly spanLevel: {
|
|
30
|
+
readonly type: NumberConstructor;
|
|
31
|
+
readonly default: 0;
|
|
32
|
+
};
|
|
33
|
+
readonly tileTypeName: StringConstructor;
|
|
34
|
+
readonly cacheSize: {
|
|
35
|
+
readonly type: NumberConstructor;
|
|
36
|
+
readonly default: 256;
|
|
37
|
+
};
|
|
38
|
+
readonly customLayer: {
|
|
39
|
+
readonly type: BooleanConstructor;
|
|
40
|
+
readonly default: undefined;
|
|
41
|
+
};
|
|
42
|
+
readonly clipTile: {
|
|
43
|
+
readonly type: BooleanConstructor;
|
|
44
|
+
readonly default: undefined;
|
|
45
|
+
};
|
|
46
|
+
readonly isTop: BooleanConstructor;
|
|
47
|
+
readonly opacity: {
|
|
48
|
+
readonly type: NumberConstructor;
|
|
49
|
+
readonly default: 1;
|
|
50
|
+
};
|
|
51
|
+
readonly isLowText: BooleanConstructor;
|
|
52
|
+
readonly boundary: PropType<string[] | string>;
|
|
53
|
+
readonly showRegion: StringConstructor;
|
|
54
|
+
readonly useThumbData: BooleanConstructor;
|
|
55
|
+
readonly zIndex: NumberConstructor;
|
|
56
|
+
readonly zIndexTop: BooleanConstructor;
|
|
57
|
+
readonly tileUrlTemplate: StringConstructor;
|
|
58
|
+
readonly getTilesUrl: PropType<GetTilesUrlFn>;
|
|
59
|
+
};
|
|
60
|
+
export type TileLayerProps = ExtractPublicPropTypes<typeof tileLayerProps>;
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
const tileLayerProps = {
|
|
2
|
+
visible: {
|
|
3
|
+
type: Boolean,
|
|
4
|
+
default: true
|
|
5
|
+
},
|
|
6
|
+
transform: Object,
|
|
7
|
+
png8: Boolean,
|
|
8
|
+
height: Number,
|
|
9
|
+
retry: {
|
|
10
|
+
type: Boolean,
|
|
11
|
+
default: void 0
|
|
12
|
+
},
|
|
13
|
+
retryTime: Number,
|
|
14
|
+
transparentPng: {
|
|
15
|
+
type: Boolean,
|
|
16
|
+
default: true
|
|
17
|
+
},
|
|
18
|
+
dataType: Number,
|
|
19
|
+
spanLevel: {
|
|
20
|
+
type: Number,
|
|
21
|
+
default: 0
|
|
22
|
+
},
|
|
23
|
+
tileTypeName: String,
|
|
24
|
+
cacheSize: {
|
|
25
|
+
type: Number,
|
|
26
|
+
default: 256
|
|
27
|
+
},
|
|
28
|
+
customLayer: {
|
|
29
|
+
type: Boolean,
|
|
30
|
+
default: void 0
|
|
31
|
+
},
|
|
32
|
+
clipTile: {
|
|
33
|
+
type: Boolean,
|
|
34
|
+
default: void 0
|
|
35
|
+
},
|
|
36
|
+
isTop: Boolean,
|
|
37
|
+
opacity: {
|
|
38
|
+
type: Number,
|
|
39
|
+
default: 1
|
|
40
|
+
},
|
|
41
|
+
isLowText: Boolean,
|
|
42
|
+
boundary: Array,
|
|
43
|
+
showRegion: String,
|
|
44
|
+
useThumbData: Boolean,
|
|
45
|
+
zIndex: Number,
|
|
46
|
+
zIndexTop: Boolean,
|
|
47
|
+
tileUrlTemplate: String,
|
|
48
|
+
getTilesUrl: Function
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
export { tileLayerProps };
|
|
52
|
+
//# sourceMappingURL=tile-props.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tile-props.mjs","sources":["../../../../src/layer/tile/src/file:/D:/workspaces/personal-project/vue3-bmapgl/packages/vue3-bmapgl/src/layer/tile/src/tile-props.ts"],"sourcesContent":["import type { PropType } from 'vue'\r\nimport type { ExtractPublicPropTypes } from '../../../_utils'\r\n\r\nexport type GetTilesUrlFn = (tile: { x: number, y: number, z: number }, boundRange: any, cb: (image: string | HTMLImageElement | HTMLCanvasElement) => void) => void\r\n\r\nexport const tileLayerProps = {\r\n visible: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n transform: Object as PropType<{ source: string, target: string }>,\r\n png8: Boolean,\r\n height: Number,\r\n retry: {\r\n type: Boolean,\r\n default: undefined,\r\n },\r\n retryTime: Number,\r\n transparentPng: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n dataType: Number,\r\n spanLevel: {\r\n type: Number,\r\n default: 0,\r\n },\r\n tileTypeName: String,\r\n cacheSize: {\r\n type: Number,\r\n default: 256,\r\n },\r\n customLayer: {\r\n type: Boolean,\r\n default: undefined,\r\n },\r\n clipTile: {\r\n type: Boolean,\r\n default: undefined,\r\n },\r\n isTop: Boolean,\r\n opacity: {\r\n type: Number,\r\n default: 1,\r\n },\r\n isLowText: Boolean,\r\n boundary: Array as PropType<string[] | string>,\r\n showRegion: String,\r\n useThumbData: Boolean,\r\n zIndex: Number,\r\n zIndexTop: Boolean,\r\n tileUrlTemplate: String,\r\n getTilesUrl: Function as PropType<GetTilesUrlFn>,\r\n} as const\r\n\r\nexport type TileLayerProps = ExtractPublicPropTypes<typeof tileLayerProps>\r\n"],"names":[],"mappings":"AAKO,MAAM,cAAA,GAAiB;AAAA,EAC5B,OAAA,EAAS;AAAA,IACP,IAAA,EAAM,OAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACV;AAAA,EACD,SAAA,EAAW,MAAA;AAAA,EACX,IAAA,EAAM,OAAA;AAAA,EACN,MAAA,EAAQ,MAAA;AAAA,EACR,KAAA,EAAO;AAAA,IACL,IAAA,EAAM,OAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACV;AAAA,EACD,SAAA,EAAW,MAAA;AAAA,EACX,cAAA,EAAgB;AAAA,IACd,IAAA,EAAM,OAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACV;AAAA,EACD,QAAA,EAAU,MAAA;AAAA,EACV,SAAA,EAAW;AAAA,IACT,IAAA,EAAM,MAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACV;AAAA,EACD,YAAA,EAAc,MAAA;AAAA,EACd,SAAA,EAAW;AAAA,IACT,IAAA,EAAM,MAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACV;AAAA,EACD,WAAA,EAAa;AAAA,IACX,IAAA,EAAM,OAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACV;AAAA,EACD,QAAA,EAAU;AAAA,IACR,IAAA,EAAM,OAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACV;AAAA,EACD,KAAA,EAAO,OAAA;AAAA,EACP,OAAA,EAAS;AAAA,IACP,IAAA,EAAM,MAAA;AAAA,IACN,OAAA,EAAS;AAAA,GACV;AAAA,EACD,SAAA,EAAW,OAAA;AAAA,EACX,QAAA,EAAU,KAAA;AAAA,EACV,UAAA,EAAY,MAAA;AAAA,EACZ,YAAA,EAAc,OAAA;AAAA,EACd,MAAA,EAAQ,MAAA;AAAA,EACR,SAAA,EAAW,OAAA;AAAA,EACX,eAAA,EAAiB,MAAA;AAAA,EACjB,WAAA,EAAa;;;;;"}
|
|
@@ -1,2 +1,118 @@
|
|
|
1
|
-
declare const _default: import("vue").DefineComponent<
|
|
1
|
+
declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
2
|
+
readonly visible: {
|
|
3
|
+
readonly type: BooleanConstructor;
|
|
4
|
+
readonly default: true;
|
|
5
|
+
};
|
|
6
|
+
readonly transform: import("vue").PropType<{
|
|
7
|
+
source: string;
|
|
8
|
+
target: string;
|
|
9
|
+
}>;
|
|
10
|
+
readonly png8: BooleanConstructor;
|
|
11
|
+
readonly height: NumberConstructor;
|
|
12
|
+
readonly retry: {
|
|
13
|
+
readonly type: BooleanConstructor;
|
|
14
|
+
readonly default: undefined;
|
|
15
|
+
};
|
|
16
|
+
readonly retryTime: NumberConstructor;
|
|
17
|
+
readonly transparentPng: {
|
|
18
|
+
readonly type: BooleanConstructor;
|
|
19
|
+
readonly default: true;
|
|
20
|
+
};
|
|
21
|
+
readonly dataType: NumberConstructor;
|
|
22
|
+
readonly spanLevel: {
|
|
23
|
+
readonly type: NumberConstructor;
|
|
24
|
+
readonly default: 0;
|
|
25
|
+
};
|
|
26
|
+
readonly tileTypeName: StringConstructor;
|
|
27
|
+
readonly cacheSize: {
|
|
28
|
+
readonly type: NumberConstructor;
|
|
29
|
+
readonly default: 256;
|
|
30
|
+
};
|
|
31
|
+
readonly customLayer: {
|
|
32
|
+
readonly type: BooleanConstructor;
|
|
33
|
+
readonly default: undefined;
|
|
34
|
+
};
|
|
35
|
+
readonly clipTile: {
|
|
36
|
+
readonly type: BooleanConstructor;
|
|
37
|
+
readonly default: undefined;
|
|
38
|
+
};
|
|
39
|
+
readonly isTop: BooleanConstructor;
|
|
40
|
+
readonly opacity: {
|
|
41
|
+
readonly type: NumberConstructor;
|
|
42
|
+
readonly default: 1;
|
|
43
|
+
};
|
|
44
|
+
readonly isLowText: BooleanConstructor;
|
|
45
|
+
readonly boundary: import("vue").PropType<string[] | string>;
|
|
46
|
+
readonly showRegion: StringConstructor;
|
|
47
|
+
readonly useThumbData: BooleanConstructor;
|
|
48
|
+
readonly zIndex: NumberConstructor;
|
|
49
|
+
readonly zIndexTop: BooleanConstructor;
|
|
50
|
+
readonly tileUrlTemplate: StringConstructor;
|
|
51
|
+
readonly getTilesUrl: import("vue").PropType<import("./tile-props").GetTilesUrlFn>;
|
|
52
|
+
}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
53
|
+
readonly visible: {
|
|
54
|
+
readonly type: BooleanConstructor;
|
|
55
|
+
readonly default: true;
|
|
56
|
+
};
|
|
57
|
+
readonly transform: import("vue").PropType<{
|
|
58
|
+
source: string;
|
|
59
|
+
target: string;
|
|
60
|
+
}>;
|
|
61
|
+
readonly png8: BooleanConstructor;
|
|
62
|
+
readonly height: NumberConstructor;
|
|
63
|
+
readonly retry: {
|
|
64
|
+
readonly type: BooleanConstructor;
|
|
65
|
+
readonly default: undefined;
|
|
66
|
+
};
|
|
67
|
+
readonly retryTime: NumberConstructor;
|
|
68
|
+
readonly transparentPng: {
|
|
69
|
+
readonly type: BooleanConstructor;
|
|
70
|
+
readonly default: true;
|
|
71
|
+
};
|
|
72
|
+
readonly dataType: NumberConstructor;
|
|
73
|
+
readonly spanLevel: {
|
|
74
|
+
readonly type: NumberConstructor;
|
|
75
|
+
readonly default: 0;
|
|
76
|
+
};
|
|
77
|
+
readonly tileTypeName: StringConstructor;
|
|
78
|
+
readonly cacheSize: {
|
|
79
|
+
readonly type: NumberConstructor;
|
|
80
|
+
readonly default: 256;
|
|
81
|
+
};
|
|
82
|
+
readonly customLayer: {
|
|
83
|
+
readonly type: BooleanConstructor;
|
|
84
|
+
readonly default: undefined;
|
|
85
|
+
};
|
|
86
|
+
readonly clipTile: {
|
|
87
|
+
readonly type: BooleanConstructor;
|
|
88
|
+
readonly default: undefined;
|
|
89
|
+
};
|
|
90
|
+
readonly isTop: BooleanConstructor;
|
|
91
|
+
readonly opacity: {
|
|
92
|
+
readonly type: NumberConstructor;
|
|
93
|
+
readonly default: 1;
|
|
94
|
+
};
|
|
95
|
+
readonly isLowText: BooleanConstructor;
|
|
96
|
+
readonly boundary: import("vue").PropType<string[] | string>;
|
|
97
|
+
readonly showRegion: StringConstructor;
|
|
98
|
+
readonly useThumbData: BooleanConstructor;
|
|
99
|
+
readonly zIndex: NumberConstructor;
|
|
100
|
+
readonly zIndexTop: BooleanConstructor;
|
|
101
|
+
readonly tileUrlTemplate: StringConstructor;
|
|
102
|
+
readonly getTilesUrl: import("vue").PropType<import("./tile-props").GetTilesUrlFn>;
|
|
103
|
+
}>> & Readonly<{}>, {
|
|
104
|
+
readonly visible: boolean;
|
|
105
|
+
readonly png8: boolean;
|
|
106
|
+
readonly retry: boolean;
|
|
107
|
+
readonly transparentPng: boolean;
|
|
108
|
+
readonly spanLevel: number;
|
|
109
|
+
readonly cacheSize: number;
|
|
110
|
+
readonly customLayer: boolean;
|
|
111
|
+
readonly clipTile: boolean;
|
|
112
|
+
readonly isTop: boolean;
|
|
113
|
+
readonly opacity: number;
|
|
114
|
+
readonly isLowText: boolean;
|
|
115
|
+
readonly useThumbData: boolean;
|
|
116
|
+
readonly zIndexTop: boolean;
|
|
117
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
2
118
|
export default _default;
|