const init = (L) => { (function(window) { console.log(window) let setOptions = function(obj, options) { for (let 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 let magicIconOpts = setOptions(opts, options) // console.log(magicIconOpts) let 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 }