Skip to content

Commit ea746e2

Browse files
committed
Removed uglify because of es6 issues when building. Added loaded promise to exports. You can now import { loaded } from the node_module and then do await loaded, to wait until the maps api has loaded.
1 parent 8d6bbac commit ea746e2

File tree

8 files changed

+9989
-10077
lines changed

8 files changed

+9989
-10077
lines changed

config/webpack.production.config.js

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
const path = require('path')
22
const VueLoaderPlugin = require('vue-loader/lib/plugin')
3-
const UglifyJsPlugin = require('uglifyjs-webpack-plugin')
43
const OptimizeCSSAssetsPlugin = require('optimize-css-assets-webpack-plugin')
54

65
const config = {
@@ -9,11 +8,6 @@ const config = {
98
],
109
optimization: {
1110
minimizer: [
12-
new UglifyJsPlugin({
13-
cache: true,
14-
parallel: true,
15-
sourceMap: true
16-
}),
1711
new OptimizeCSSAssetsPlugin({})
1812
]
1913
},

dist/.babelrc

100755100644
File mode changed.

dist/vue-google-maps.js

100755100644
Lines changed: 3257 additions & 1 deletion
Large diffs are not rendered by default.

package-lock.json

Lines changed: 0 additions & 10067 deletions
This file was deleted.

package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,8 @@
2626
},
2727
"homepage": "https://github.com/xkjyeah/vue-google-maps#readme",
2828
"dependencies": {
29-
"marker-clusterer-plus": "^2.1.4"
29+
"marker-clusterer-plus": "^2.1.4",
30+
"terser-webpack-plugin": "^4.1.0"
3031
},
3132
"peerDependencies": {
3233
"vue": "^2.6.10"

src/factories/promise-lazy.js

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,12 @@
11
import lazy from '../utils/lazy-value'
22

3+
let resolveLoaded
4+
let rejectLoaded
5+
export const loaded = new Promise((resolve, reject) => {
6+
resolveLoaded = resolve
7+
rejectLoaded = reject
8+
})
9+
310
export default function (loadGmapApi, GmapApi) {
411
return function promiseLazyCreator (options) {
512
// Things to do once the API is loaded
@@ -21,7 +28,7 @@ export default function (loadGmapApi, GmapApi) {
2128
} catch (err) {
2229
reject(err)
2330
}
24-
}).then(onApiLoaded)
31+
}).then(onApiLoaded).then(resolveLoaded).catch(rejectLoaded)
2532
}
2633
})
2734
} else { // If library should not handle API, provide
@@ -33,7 +40,7 @@ export default function (loadGmapApi, GmapApi) {
3340
return
3441
}
3542
window.vueGoogleMapsInit = resolve
36-
}).then(onApiLoaded)
43+
}).then(onApiLoaded).then(resolveLoaded).catch(rejectLoaded)
3744

3845
return lazy(() => promise)
3946
}

src/main.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@ import MapElementMixin from './mixins/map-element'
1919
import MapElementFactory from './factories/map-element'
2020
import MountableMixin from './mixins/mountable'
2121

22+
export { loaded } from './factories/promise-lazy'
23+
2224
// HACK: Cluster should be loaded conditionally
2325
// However in the web version, it's not possible to write
2426
// `import 'vue2-google-maps/src/components/cluster'`, so we need to

yarn.lock

Lines changed: 6719 additions & 0 deletions
Large diffs are not rendered by default.

0 commit comments

Comments
 (0)