@spuermomonga/vue3-bmapgl 0.0.2 → 0.0.3
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 +35 -0
- package/dist/index.prod.js +1 -1
- package/es/index.d.ts +1 -1
- package/es/index.mjs +1 -0
- package/es/index.mjs.map +1 -1
- package/lib/index.d.ts +1 -1
- package/lib/index.js +2 -0
- package/lib/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -243,10 +243,45 @@
|
|
|
243
243
|
}
|
|
244
244
|
});
|
|
245
245
|
|
|
246
|
+
function create({
|
|
247
|
+
componentPrefix = "B",
|
|
248
|
+
components = []
|
|
249
|
+
} = {}) {
|
|
250
|
+
const installTargets = [];
|
|
251
|
+
function registerComponent(app, name, component) {
|
|
252
|
+
const registered = app.component(componentPrefix + name);
|
|
253
|
+
if (!registered) {
|
|
254
|
+
app.component(
|
|
255
|
+
componentPrefix + name,
|
|
256
|
+
component
|
|
257
|
+
);
|
|
258
|
+
}
|
|
259
|
+
}
|
|
260
|
+
function install(app) {
|
|
261
|
+
if (installTargets.includes(app))
|
|
262
|
+
return;
|
|
263
|
+
installTargets.push(app);
|
|
264
|
+
components.forEach((component) => {
|
|
265
|
+
const { name, alias } = component;
|
|
266
|
+
registerComponent(app, name, component);
|
|
267
|
+
if (alias) {
|
|
268
|
+
alias.forEach((aliasName) => {
|
|
269
|
+
registerComponent(app, aliasName, component);
|
|
270
|
+
});
|
|
271
|
+
}
|
|
272
|
+
});
|
|
273
|
+
}
|
|
274
|
+
return {
|
|
275
|
+
componentPrefix,
|
|
276
|
+
install
|
|
277
|
+
};
|
|
278
|
+
}
|
|
279
|
+
|
|
246
280
|
exports.BConfigProvider = configProvider;
|
|
247
281
|
exports.BMap = map;
|
|
248
282
|
exports.configProviderInjectionKey = configProviderInjectionKey;
|
|
249
283
|
exports.configProviderProps = configProviderProps;
|
|
284
|
+
exports.create = create;
|
|
250
285
|
exports.mapProps = mapProps;
|
|
251
286
|
|
|
252
287
|
}));
|
package/dist/index.prod.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
!function(e,o){"object"==typeof exports&&"undefined"!=typeof module?o(exports,require("vue")):"function"==typeof define&&define.amd?define(["exports","vue"],o):o((e="undefined"!=typeof globalThis?globalThis:e||self).Vue3Bmapgl={},e.vue)}(this,function(e,o){"use strict";let t=!1;function
|
|
1
|
+
!function(e,o){"object"==typeof exports&&"undefined"!=typeof module?o(exports,require("vue")):"function"==typeof define&&define.amd?define(["exports","vue"],o):o((e="undefined"!=typeof globalThis?globalThis:e||self).Vue3Bmapgl={},e.vue)}(this,function(e,o){"use strict";let t=!1;function n(e){return e.some(e=>!o.isVNode(e)||e.type!==Comment&&!(e.type===o.Fragment&&!n(e.children)))?e:null}function a(e,o){return o(e&&n(e())||null)}const r={ak:String,apiUrl:String,plugins:Array,mapConfig:Object},l=Symbol("b-config-provider");var i=o.defineComponent({name:"ConfigProvider",props:r,setup(e,{slots:n}){const a=o.ref("notload"),r=e.apiUrl?"_initBMap_":`_initBMap_${e.ak}`,i=e.apiUrl?`${e.apiUrl.replace(/&$/,"")}&callback=${r}`:`//api.map.baidu.com/api?type=webgl&v=1.0&ak=${e.ak}&callback=${r}`;a.value="pending",function(e){const{key:o,src:n,addCalToWindow:a=!0,timeout:r=1e4}=e;return t||window.BMapGL?Promise.resolve():new Promise((e,l)=>{const i=document.createElement("script");i.src=n,i.type="text/javascript",i.defer=!0;const m=()=>{i.onload=null,i.onerror=null,document.body.contains(i)&&document.body.removeChild(i)},d=setTimeout(()=>{m(),l(new Error(`Script load timeout: ${n}`))},r),c=()=>{clearTimeout(d),t=!0,m(),e()};a?window[o]=c:i.onload=c,i.onerror=()=>{clearTimeout(d),m(),l(new Error(`Failed to load script: ${n}`))},document.body.appendChild(i)})}({key:r,src:i}).then(()=>{a.value="loaded"}).catch(()=>{a.value="failed"});const m=o.computed(()=>{const{mapConfig:o}=e;return o??{}});return o.provide(l,{mergedStatusRef:a,mergedMapSetRef:m}),()=>o.renderSlot(n,"default")}});const m={maxZoom:{type:Number,default:21},minZoom:{type:Number,default:0},center:{type:Object,default:[116.403901,39.915185]},zoom:{type:Number,default:14},class:String,enableScrollWheelZoom:{type:Boolean,default:!1}};var d="map-module_b-map-content__sMaJG",c="map-module_b-map-loading__qc4a8",p="map-module_b-map-failed__-w-tX";!function(e,o){void 0===o&&(o={});var t=o.insertAt;if("undefined"!=typeof document){var n=document.head||document.getElementsByTagName("head")[0],a=document.createElement("style");a.type="text/css","top"===t&&n.firstChild?n.insertBefore(a,n.firstChild):n.appendChild(a),a.styleSheet?a.styleSheet.cssText=e:a.appendChild(document.createTextNode(e))}}(".map-module_b-map-content__sMaJG{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 u=o.defineComponent({name:"Map",props:m,slots:Object,setup(e,{slots:t}){const{mergedMapSetRef:n,mergedStatusRef:r}=function(e={}){const t=o.inject(l,null);return{mergedStatusRef:t?.mergedStatusRef,mergedMapSetRef:o.computed(()=>{const{zoom:o,center:n,minZoom:a,maxZoom:r}=e;return{zoom:o??t?.mergedMapSetRef.value?.zoom,center:n??t?.mergedMapSetRef.value?.center,minZoom:a??t?.mergedMapSetRef.value?.minZoom,maxZoom:r??t?.mergedMapSetRef.value?.maxZoom}})}}(e),i=o.ref();let m=null;const u=e=>{"string"==typeof e?m.centerAndZoom(e,n.value.zoom):Array.isArray(e)?m.centerAndZoom(new BMapGL.Point(e[0],e[1]),n.value.zoom):m.centerAndZoom(new BMapGL.Point(e.lng,e.lat),n.value.zoom)},s=e=>{e?m.enableScrollWheelZoom():m.disableScrollWheelZoom()},f=()=>{const{center:e,maxZoom:o,minZoom:t,enableScrollWheelZoom:a}=n.value;m=new BMapGL.Map(i.value,{maxZoom:o,minZoom:t}),u(e),s(a)};return o.watchEffect(()=>{"loaded"===r?.value&&(o.nextTick(f),o.watch(()=>n.value.center,u,{deep:!0}),o.watch(()=>n.value.enableScrollWheelZoom,s))}),o.onUnmounted(()=>{if(m)try{m.destroy()}catch(e){console.error(`[Vue3 BMapGL]: ${e.message}`)}}),()=>o.createVNode("div",{ref:i,class:[d,e.class]},["pending"===r?.value&&a(t.loading,()=>o.createVNode("div",{class:[c]},[o.createTextVNode("map loading...")])),"failed"===r?.value&&a(t.failed,()=>o.createVNode("div",{class:[p]},[o.createTextVNode("map failed")])),t.default?.()])}});e.BConfigProvider=i,e.BMap=u,e.configProviderInjectionKey=l,e.configProviderProps=r,e.create=function({componentPrefix:e="B",components:o=[]}={}){const t=[];function n(o,t,n){o.component(e+t)||o.component(e+t,n)}return{componentPrefix:e,install:function(e){t.includes(e)||(t.push(e),o.forEach(o=>{const{name:t,alias:a}=o;n(e,t,o),a&&a.forEach(t=>{n(e,t,o)})}))}}},e.mapProps=m});
|
package/es/index.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export * from './components';
|
|
2
|
-
export
|
|
2
|
+
export { default as create } from './create';
|
package/es/index.mjs
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
export { default as create } from './create.mjs';
|
|
1
2
|
export { default as BConfigProvider } from './config-provider/src/config-provider.mjs';
|
|
2
3
|
export { configProviderProps } from './config-provider/src/config-provider-props.mjs';
|
|
3
4
|
export { configProviderInjectionKey } from './config-provider/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/lib/index.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export * from './components';
|
|
2
|
-
export
|
|
2
|
+
export { default as create } from './create';
|
package/lib/index.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
var create = require('./create.js');
|
|
3
4
|
var configProvider = require('./config-provider/src/config-provider.js');
|
|
4
5
|
var configProviderProps = require('./config-provider/src/config-provider-props.js');
|
|
5
6
|
var constants = require('./config-provider/src/constants.js');
|
|
@@ -8,6 +9,7 @@ var mapProps = require('./map/src/map-props.js');
|
|
|
8
9
|
|
|
9
10
|
|
|
10
11
|
|
|
12
|
+
exports.create = create;
|
|
11
13
|
exports.BConfigProvider = configProvider;
|
|
12
14
|
exports.configProviderProps = configProviderProps.configProviderProps;
|
|
13
15
|
exports.configProviderInjectionKey = constants.configProviderInjectionKey;
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;"}
|