const init = (L) => { (function (window) { console.log(window) const setOptions = function (obj, options) { for (const i in options) { obj[i] = options[i] } return obj } L.Icon.Magic = function (options) { let opts if (options.iconUrl) { opts = { html: "
" // className: 'magicDiv', } } else { opts = { html: "
" + options.html + '
' // className: 'magicDiv', } } delete options.html const magicIconOpts = setOptions(opts, options) // console.log(magicIconOpts) const magicIcon = L.divIcon(magicIconOpts) return magicIcon } L.icon.magic = function (options) { return new L.Icon.Magic(options) } L.Marker.Magic = L.Marker.extend({ initialize: function (latlng, options) { options.icon = L.icon.magic(options) L.Marker.prototype.initialize.call(this, latlng, options) } }) L.marker.magic = function (latlng, options) { return new L.Marker.Magic(latlng, options) } })(window) } export default { init }