summaryrefslogtreecommitdiff
path: root/www/wiki/extensions/Maps/resources/lib/leaflet.StyleEditor
diff options
context:
space:
mode:
Diffstat (limited to 'www/wiki/extensions/Maps/resources/lib/leaflet.StyleEditor')
-rw-r--r--www/wiki/extensions/Maps/resources/lib/leaflet.StyleEditor/css/Leaflet.StyleEditor.min.css306
-rw-r--r--www/wiki/extensions/Maps/resources/lib/leaflet.StyleEditor/img/control.svg114
-rw-r--r--www/wiki/extensions/Maps/resources/lib/leaflet.StyleEditor/img/icon.pngbin0 -> 4546 bytes
-rw-r--r--www/wiki/extensions/Maps/resources/lib/leaflet.StyleEditor/javascript/Leaflet.StyleEditor.min.js2
4 files changed, 422 insertions, 0 deletions
diff --git a/www/wiki/extensions/Maps/resources/lib/leaflet.StyleEditor/css/Leaflet.StyleEditor.min.css b/www/wiki/extensions/Maps/resources/lib/leaflet.StyleEditor/css/Leaflet.StyleEditor.min.css
new file mode 100644
index 00000000..c4397c93
--- /dev/null
+++ b/www/wiki/extensions/Maps/resources/lib/leaflet.StyleEditor/css/Leaflet.StyleEditor.min.css
@@ -0,0 +1,306 @@
+.leaflet-control-styleeditor .leaflet-control-styleeditor-interior {
+ background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjwhLS0gQ3JlYXRlZCB3aXRoIElua3NjYXBlIChodHRwOi8vd3d3Lmlua3NjYXBlLm9yZy8pIC0tPgoKPHN2ZwogICB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iCiAgIHhtbG5zOmNjPSJodHRwOi8vY3JlYXRpdmVjb21tb25zLm9yZy9ucyMiCiAgIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyIKICAgeG1sbnM6c3ZnPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogICB4bWxuczpzb2RpcG9kaT0iaHR0cDovL3NvZGlwb2RpLnNvdXJjZWZvcmdlLm5ldC9EVEQvc29kaXBvZGktMC5kdGQiCiAgIHhtbG5zOmlua3NjYXBlPSJodHRwOi8vd3d3Lmlua3NjYXBlLm9yZy9uYW1lc3BhY2VzL2lua3NjYXBlIgogICB3aWR0aD0iNS4wOTczOTY0bW0iCiAgIGhlaWdodD0iNS4yMDk0MzM2bW0iCiAgIHZpZXdCb3g9IjAgMCA1LjA5NzM5NjQgNS4yMDk0MzM2IgogICB2ZXJzaW9uPSIxLjEiCiAgIGlkPSJzdmczODUxIgogICBpbmtzY2FwZTp2ZXJzaW9uPSIwLjkyLjIgNWMzZTgwZCwgMjAxNy0wOC0wNiIKICAgc29kaXBvZGk6ZG9jbmFtZT0iY29udHJvbC5zdmciPgogIDxkZWZzCiAgICAgaWQ9ImRlZnMzODQ1IiAvPgogIDxzb2RpcG9kaTpuYW1lZHZpZXcKICAgICBpZD0iYmFzZSIKICAgICBwYWdlY29sb3I9IiNmZmZmZmYiCiAgICAgYm9yZGVyY29sb3I9IiM2NjY2NjYiCiAgICAgYm9yZGVyb3BhY2l0eT0iMS4wIgogICAgIGlua3NjYXBlOnBhZ2VvcGFjaXR5PSIwLjAiCiAgICAgaW5rc2NhcGU6cGFnZXNoYWRvdz0iMiIKICAgICBpbmtzY2FwZTp6b29tPSIxMC4yNCIKICAgICBpbmtzY2FwZTpjeD0iNC4zNTY3NzM4IgogICAgIGlua3NjYXBlOmN5PSIxMS40MDg0MTIiCiAgICAgaW5rc2NhcGU6ZG9jdW1lbnQtdW5pdHM9Im1tIgogICAgIGlua3NjYXBlOmN1cnJlbnQtbGF5ZXI9ImxheWVyMSIKICAgICBzaG93Z3JpZD0iZmFsc2UiCiAgICAgaW5rc2NhcGU6d2luZG93LXdpZHRoPSIxMzY2IgogICAgIGlua3NjYXBlOndpbmRvdy1oZWlnaHQ9Ijc2OCIKICAgICBpbmtzY2FwZTp3aW5kb3cteD0iMCIKICAgICBpbmtzY2FwZTp3aW5kb3cteT0iMCIKICAgICBpbmtzY2FwZTp3aW5kb3ctbWF4aW1pemVkPSIwIgogICAgIGZpdC1tYXJnaW4tdG9wPSIwIgogICAgIGZpdC1tYXJnaW4tbGVmdD0iMCIKICAgICBmaXQtbWFyZ2luLXJpZ2h0PSIwIgogICAgIGZpdC1tYXJnaW4tYm90dG9tPSIwIiAvPgogIDxtZXRhZGF0YQogICAgIGlkPSJtZXRhZGF0YTM4NDgiPgogICAgPHJkZjpSREY+CiAgICAgIDxjYzpXb3JrCiAgICAgICAgIHJkZjphYm91dD0iIj4KICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3N2Zyt4bWw8L2RjOmZvcm1hdD4KICAgICAgICA8ZGM6dHlwZQogICAgICAgICAgIHJkZjpyZXNvdXJjZT0iaHR0cDovL3B1cmwub3JnL2RjL2RjbWl0eXBlL1N0aWxsSW1hZ2UiIC8+CiAgICAgICAgPGRjOnRpdGxlPjwvZGM6dGl0bGU+CiAgICAgIDwvY2M6V29yaz4KICAgIDwvcmRmOlJERj4KICA8L21ldGFkYXRhPgogIDxnCiAgICAgaW5rc2NhcGU6bGFiZWw9IkViZW5lIDEiCiAgICAgaW5rc2NhcGU6Z3JvdXBtb2RlPSJsYXllciIKICAgICBpZD0ibGF5ZXIxIgogICAgIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0wLjAzNTExNzE0LC0yOTEuODE4MykiPgogICAgPGcKICAgICAgIGlkPSJnMzg3NSIKICAgICAgIGlua3NjYXBlOmV4cG9ydC1maWxlbmFtZT0iRDpcQ29kaW5nXGxlYWZsZXQtZWRpdFN0eWxlXGltZ1xpY29uLnBuZyIKICAgICAgIGlua3NjYXBlOmV4cG9ydC14ZHBpPSI5MCIKICAgICAgIGlua3NjYXBlOmV4cG9ydC15ZHBpPSI5MCIKICAgICAgIHRyYW5zZm9ybT0ibWF0cml4KC0wLjI0ODMwODk3LDAsMCwwLjI0ODMwODk3LDE1Ni42ODQxOCwxNjQuODIxMzYpIj4KICAgICAgPHBvbHlnb24KICAgICAgICAgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMjg4LDQ5OC44OTc5KSIKICAgICAgICAgc3R5bGU9ImZpbGw6IzQ2NDY0NiIKICAgICAgICAgcG9pbnRzPSIzMjcsMzMuNTI5IDMyNywzMC42OTkgMzM1Ljg5MSwyMS44MDkgMzM4LjcxOSwyNC42MzcgMzI5LjgyOCwzMy41MjkgIgogICAgICAgICBpZD0icG9seWdvbjMwMDYiIC8+CiAgICAgIDxyZWN0CiAgICAgICAgIHN0eWxlPSJmaWxsOiM0NjQ2NDYiCiAgICAgICAgIHg9Ii04MTMuNzQ2MjgiCiAgICAgICAgIHk9Ijc0LjUzMzQwOSIKICAgICAgICAgdHJhbnNmb3JtPSJyb3RhdGUoLTEzNC45OTE5KSIKICAgICAgICAgd2lkdGg9IjMuOTk5OTYxNiIKICAgICAgICAgaGVpZ2h0PSIzLjk5OTk2MTYiCiAgICAgICAgIGlkPSJyZWN0MzAwOCIgLz4KICAgICAgPHBhdGgKICAgICAgICAgdHJhbnNmb3JtPSJtYXRyaXgoMC43ODQwMjM2MywwLDAsMC43ODQwMjM2MywyMjIuNjgwNjksMTQ4LjY4MTY4KSIKICAgICAgICAgaW5rc2NhcGU6dHJhbnNmb3JtLWNlbnRlci15PSItMC4yOTkyNDA1MiIKICAgICAgICAgaW5rc2NhcGU6dHJhbnNmb3JtLWNlbnRlci14PSIwLjI5OTI0MTE0IgogICAgICAgICBkPSJtIDUwOC41NzE0Miw0NzYuODI2NDggYyAtMC43ODI2NSwwLjc4MjY1IC00LjE0NzgxLC0xLjk1MDQyIC01LjI0MTAyLC0xLjc3NzI4IC0xLjA5MzIsMC4xNzMxNSAtMy40NDkwOSwzLjgxMjM1IC00LjQzNTI5LDMuMzA5ODYgLTAuOTg2MTksLTAuNTAyNDkgMC41NzMyMiwtNC41NDc1MiAwLjA3MDcsLTUuNTMzNzEgLTAuNTAyNDksLTAuOTg2MiAtNC42OTE1OCwtMi4xMDIyMSAtNC41MTg0NCwtMy4xOTU0MSAwLjE3MzE1LC0xLjA5MzIxIDQuNTAyMDgsLTAuODYwMSA1LjI4NDczLC0xLjY0Mjc0IDAuNzgyNjUsLTAuNzgyNjUgMC41NDk1NCwtNS4xMTE1OCAxLjY0Mjc0LC01LjI4NDczIDEuMDkzMjEsLTAuMTczMTUgMi4yMDkyMiw0LjAxNTk1IDMuMTk1NDEsNC41MTg0NCAwLjk4NjIsMC41MDI0OSA1LjAzMTIyLC0xLjA1NjkzIDUuNTMzNzEsLTAuMDcwNyAwLjUwMjQ5LDAuOTg2MTkgLTMuMTM2NzEsMy4zNDIwOCAtMy4zMDk4NSw0LjQzNTI5IC0wLjE3MzE1LDEuMDkzMiAyLjU1OTkyLDQuNDU4MzYgMS43NzcyOCw1LjI0MTAxIHoiCiAgICAgICAgIGlua3NjYXBlOnJhbmRvbWl6ZWQ9IjAiCiAgICAgICAgIGlua3NjYXBlOnJvdW5kZWQ9IjAuMiIKICAgICAgICAgaW5rc2NhcGU6ZmxhdHNpZGVkPSJmYWxzZSIKICAgICAgICAgc29kaXBvZGk6YXJnMj0iMS40MTM3MTY3IgogICAgICAgICBzb2RpcG9kaTphcmcxPSIwLjc4NTM5ODE2IgogICAgICAgICBzb2RpcG9kaTpyMj0iNC4xNjY4NzkyIgogICAgICAgICBzb2RpcG9kaTpyMT0iOC4zMzM3NTg0IgogICAgICAgICBzb2RpcG9kaTpjeT0iNDcwLjkzMzYyIgogICAgICAgICBzb2RpcG9kaTpjeD0iNTAyLjY3ODU2IgogICAgICAgICBzb2RpcG9kaTpzaWRlcz0iNSIKICAgICAgICAgaWQ9InBhdGgzMDk5IgogICAgICAgICBzdHlsZT0iZmlsbDojNDY0NjQ2O2ZpbGwtb3BhY2l0eToxO3N0cm9rZTojNDY0NjQ2O3N0cm9rZS13aWR0aDowO3N0cm9rZS1saW5lam9pbjpyb3VuZDtzdHJva2UtbWl0ZXJsaW1pdDo0O3N0cm9rZS1kYXNoYXJyYXk6bm9uZTtzdHJva2Utb3BhY2l0eToxIgogICAgICAgICBzb2RpcG9kaTp0eXBlPSJzdGFyIiAvPgogICAgPC9nPgogICAgPHBhdGgKICAgICAgIHN0eWxlPSJvcGFjaXR5OjE7dmVjdG9yLWVmZmVjdDpub25lO2ZpbGw6IzQ2NDY0NjtmaWxsLW9wYWNpdHk6MTtzdHJva2Utd2lkdGg6MC4wNDcyNDcwMztzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2UtbWl0ZXJsaW1pdDo0O3N0cm9rZS1kYXNoYXJyYXk6bm9uZTtzdHJva2UtZGFzaG9mZnNldDowO3N0cm9rZS1vcGFjaXR5OjEiCiAgICAgICBkPSJtIDQuMjk4MzY0NSwyOTQuNjcwMzQgYyAwLC0wLjA5OTIgLTAuMDIyODYsLTAuMzAzOTcgLTAuMDUwNzk3LC0wLjQ1NTExIC0wLjA3NDY4OSwtMC40MDQwMiAtMC4wNDIxMzUsLTAuNDc0MTkgMC4yOTk2ODAzLC0wLjY0NTk4IDAuMzgwMDg5OCwtMC4xOTEwMiAwLjU1NDMxOCwtMC4zMTU0NSAwLjU1NDMxOCwtMC4zOTU5IDAsLTAuMDc4OSAtMC4wNjcxMTQsLTAuMTAxMTMgLTAuNTcxODgzNywtMC4xODk2MyAtMC4yMzIyNzc3LC0wLjA0MDcgLTAuNDE4NzAzLC0wLjA5OTQgLTAuNDQ5ODE1NCwtMC4xNDE2NyAtMC4wMjkyMjMsLTAuMDM5NyAtMC4wODY1NjYsLTAuMjU0MjEgLTAuMTI3NDMxMywtMC40NzY3NiAtMC4xMjE5NTk3LC0wLjY2NDIgLTAuMTkyMjQ2MiwtMC42NzE3MyAtMC41MTMxNDYxLC0wLjA1NDkgLTAuMTA3NDkyMywwLjIwNjYyIC0wLjIyNzkxNDcsMC4zODgxMyAtMC4yNjc2MDIyLDAuNDAzMzYgLTAuMDM5Njg4LDAuMDE1MiAtMC4yNzQyNTkyLDAuMDAyIC0wLjUyMTI2ODksLTAuMDI5IC0wLjM4MTI2NzIsLTAuMDQ4MiAtMC40NTkzNjE2LC0wLjA0NjUgLTAuNTE3MDA2NCwwLjAxMTIgLTAuMDU5MDM2LDAuMDU5IC0wLjAyMzkxOCwwLjExNDM3IDAuMjY4OTUxNiwwLjQyMzc5IDAuMTg1MjY2NSwwLjE5NTc0IDAuMzM2ODQ5LDAuMzk3NDggMC4zMzY4NDksMC40NDgzMSAwLDAuMDUwOCAtMC4wODcwODUsMC4yNzM5MiAtMC4xOTM1MjE2LDAuNDk1NzQgLTAuMjc0ODAxNSwwLjU3MjcgLTAuMjI2NTI4MywwLjYxMTc5IDAuMzg4MzA3OCwwLjMxNDQ3IDAuMjE0OTQyMiwtMC4xMDM5NSAwLjQxOTYxNiwtMC4xODg5OSAwLjQ1NDgyNjcsLTAuMTg4OTkgMC4wMzUyMTMsMCAwLjIyMTI2MzEsMC4xNDg4MyAwLjQxMzQ0NTksMC4zMzA3MyAwLjQwNjM0NywwLjM4NDYxIDAuNDk2MDkzNywwLjQxMTgyIDAuNDk2MDkzNywwLjE1MDQyIHoiCiAgICAgICBpZD0icGF0aDM4ODUiCiAgICAgICBpbmtzY2FwZTpjb25uZWN0b3ItY3VydmF0dXJlPSIwIiAvPgogICAgPHBhdGgKICAgICAgIHN0eWxlPSJvcGFjaXR5OjE7dmVjdG9yLWVmZmVjdDpub25lO2ZpbGw6IzQ2NDY0NjtmaWxsLW9wYWNpdHk6MTtzdHJva2Utd2lkdGg6MC4wNDcyNDcwMztzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2UtbWl0ZXJsaW1pdDo0O3N0cm9rZS1kYXNoYXJyYXk6bm9uZTtzdHJva2UtZGFzaG9mZnNldDowO3N0cm9rZS1vcGFjaXR5OjEiCiAgICAgICBkPSJtIDMuOTY3NjM1MywyOTYuNjgxMDkgdiAtMC4zNDI5MSBsIC0xLjA5OTI2OTYsLTEuMDk4NTMgLTEuMDk5MjcyMywtMS4wOTg1MiAtMC4zNDEzOTcyLDAuMzQzNjkgLTAuMzQxMzk3MSwwLjM0MzY5IDEuMDk4NDk3LDEuMDk3NzUgMS4wOTg0OTcxLDEuMDk3NzUgSCAzLjYyNTQ2MyAzLjk2NzYzNTMgWiIKICAgICAgIGlkPSJwYXRoMzg4NyIKICAgICAgIGlua3NjYXBlOmNvbm5lY3Rvci1jdXJ2YXR1cmU9IjAiIC8+CiAgICA8cGF0aAogICAgICAgc3R5bGU9Im9wYWNpdHk6MTt2ZWN0b3ItZWZmZWN0Om5vbmU7ZmlsbDojNDY0NjQ2O2ZpbGwtb3BhY2l0eToxO3N0cm9rZS13aWR0aDowLjA0NzI0NzAzO3N0cm9rZS1saW5lY2FwOmJ1dHQ7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZS1taXRlcmxpbWl0OjQ7c3Ryb2tlLWRhc2hhcnJheTpub25lO3N0cm9rZS1kYXNob2Zmc2V0OjA7c3Ryb2tlLW9wYWNpdHk6MSIKICAgICAgIGQ9Im0gMS4wNzQ2MzA5LDI5NC4yNzEwNyAwLjM0MTgyMDUsLTAuMzQ0MTIgLTAuMzMxMjM3MSwtMC4zMjg3IC0wLjMzMTIzOTc3LC0wLjMyODcgLTAuMzQxNzAxNSwwLjM0MTcgLTAuMzQxNzAxNCwwLjM0MTcgMC4zMzExMTgxLDAuMzMxMTIgMC4zMzExMTgxLDAuMzMxMTIgeiIKICAgICAgIGlkPSJwYXRoMzg4OSIKICAgICAgIGlua3NjYXBlOmNvbm5lY3Rvci1jdXJ2YXR1cmU9IjAiIC8+CiAgPC9nPgo8L3N2Zz4K);
+ background-position: 50% 50%;
+ background-size: 50%;
+}
+.leaflet-control-styleeditor-interior:hover {
+ background-color: #07C217;
+}
+.leaflet-control-styleeditor .leaflet-control-styleeditor-cancel {
+ position: absolute;
+ top: 0;
+ left: 100%;
+ background-color: #919187;
+ -webkit-border-radius: 0 4px 4px 0;
+ border-radius: 0 4px 4px 0;
+ font-size: 12px;
+ line-height: 30px;
+ height: 30px;
+ color: white;
+ text-decoration: none;
+ padding-left: 10px;
+ padding-right: 10px;
+}
+.leaflet-control-styleeditor .leaflet-control-styleeditor-cancel:hover {
+ background-color: #a0a098;
+ cursor: pointer;
+}
+.enabled {
+ background-color: #b0de5c;
+}
+.enabled:hover {
+ background-color: #07C217;
+}
+.leaflet-styleeditor {
+ box-shadow: 0 1px 7px rgba(0, 0, 0, 0.65);
+ height: 100%;
+ right: 0;
+ background-color: white;
+ width: 0;
+ position: absolute;
+ margin: 0px;
+ overflow: hidden;
+ -webkit-transition-property: -webkit-transform, width;
+ transition-property: transform, width;
+ -webkit-transition-duration: 100ms;
+ transition-duration: 100ms;
+ -webkit-transition-timing-function: ease-in;
+ transition-timing-function: ease-in;
+ -ms-transform: translatex(0);
+ -webkit-transform: translatex(0);
+ transform: translatex(0);
+ z-index: 1000;
+}
+.editor-enabled {
+ width: 200px;
+}
+.leaflet-styleeditor-hidden {
+ display: none;
+}
+.leaflet-styleeditor-fill-horizontal{
+ display: flex;
+}
+.leaflet-styleeditor-fill-vertical{
+ flex-direction: column;
+ display: flex;
+}
+.leaflet-styleeditor-fill {
+ flex: 1;
+ min-width: 1px;
+ min-height: 1px;
+}
+.leaflet-styleeditor-header {
+ position: relative;
+ height: 40px;
+ background-color: #b0de5c;
+ -webkit-box-sizing: border-box;
+ -moz-box-sizing: border-box;
+ box-sizing: border-box;
+}
+.leaflet-styleeditor-interior {
+ padding: 20px;
+ overflow: auto;
+ position: relative;
+ right: 0px;
+ height: calc(100% - 40px);
+ -webkit-box-sizing: border-box;
+ /* Safari/Chrome, other WebKit */
+ -moz-box-sizing: border-box;
+ /* Firefox, other Gecko */
+ box-sizing: border-box;
+}
+.leaflet-styleeditor-interior-geometry {
+ margin-bottom: 24px;
+}
+.leaflet-styleeditor-label {
+ width: 100px;
+ display: block;
+ font-size: medium;
+}
+.leaflet-styleeditor-input-span {
+ width: 100%;
+ display: inline-block;
+ text-align: center;
+ font-size: 0.8em;
+}
+input.leaflet-styleeditor-input {
+ height: 30px;
+ background: #fff;
+ margin: 0;
+ padding: 0;
+ border: 0;
+ outline: none;
+ width: 150px;
+}
+textarea.leaflet-styleeditor-input {
+ width: 100%;
+}
+.leaflet-styleeditor-select {
+ position: relative;
+ height: 32px;
+ margin-bottom: 5px;
+ padding-left: 10px;
+ background: #fff;
+ border: 1px solid rgba(0, 0, 0, 0.1);
+ outline: none;
+ width: 150px;
+ overflow: hidden;
+ padding: 0;
+}
+.leaflet-styleeditor-select-option-wrapper {
+ position: absolute;
+ list-style: none;
+ padding: 0;
+ overflow-y: scroll;
+ overflow-x: hidden;
+ border: 1px solid rgba(0, 0, 0, 0.1);
+ background: white;
+ top: 80px;
+ bottom: 20px;
+}
+.leaflet-styleeditor-select-option {
+ display: inline-block;
+ height: 30px;
+ width: 28px;
+ padding: 4px;
+ cursor: pointer;
+ position: relative;
+}
+.leaflet-styleeditor-select-image-wrapper {
+ position: absolute;
+ top: 50%;
+ left: 50%;
+ overflow: visible;
+ width: 100%;
+ height: 100%;
+}
+.leaflet-styleeditor-select-image-defaultmarker {
+ top: 11px;
+}
+.leaflet-styleeditor-select-image {
+ position: relative;
+ padding: 0;
+ margin: 0;
+}
+.leaflet-styleeditor-button {
+ border: 0px;
+ display: inline-block;
+ padding: 10px 20px;
+ background: #b0de5c;
+ height: 40px;
+ margin-left: 0px;
+ -moz-transition: background-color .25s ease-in-out;
+ -webkit-transition: background-color .25s ease-in-out;
+ -o-transition: background-color .25s ease-in-out;
+ -ms-transition: background-color .25s ease-in-out;
+ transition: background-color .25s ease-in-out;
+ letter-spacing: 2px;
+ text-decoration: none;
+ text-transform: uppercase;
+ font-size: 15px;
+ font-weight: 600;
+ color: #FFFFFF;
+ cursor: pointer;
+}
+.styleeditor-nextBtn {
+ float: right;
+ margin-right: 0px;
+ background-image: url(data:image/png;base64,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);
+ background-position: 10px -31px;
+}
+.leaflet-styleeditor-button:hover {
+ background-color: #00ad87;
+}
+.leaflet-styleeditor-button:active {
+ background-color: #20e1b6;
+}
+.leaflet-styleeditor-colorpicker {
+ width: 160px;
+ display: inline-block;
+}
+.leaflet-styleeditor-color {
+ height: 35px;
+ width: 30px;
+ float: left;
+ border: 1px solid white;
+ cursor: pointer;
+}
+.leaflet-styleeditor-color:hover {
+ border:1px solid black;
+}
+.leaflet-styleeditor-sizeicon {
+ background-image: url('https://unpkg.com/leaflet@0.7.7/dist/images/marker-icon-2x.png');
+ background-repeat: no-repeat;
+ float: left;
+ margin-right: 15px;
+ border: 1px solid white;
+ cursor: pointer;
+}
+.leaflet-styleeditor-sizeicon:hover {
+ border: 1px solid black;
+}
+.sizeicon-small {
+ background-size: 20px 33px;
+ width: 22px;
+ height: 33px;
+}
+.sizeicon-medium {
+ background-size: 25px 41px;
+ width:28px;
+ height:41px;
+}
+.sizeicon-large {
+ background-size: 30px 49px;
+ width:32px;
+ height: 49px;
+}
+.leaflet-styleeditor-tooltip-wrapper {
+ position: absolute;
+ text-align: center;
+ bottom: 10%;
+ width: 100%;
+ z-index: 1000;
+}
+.leaflet-styleeditor-tooltip {
+ background-color: rgba(68, 68, 68, 0.2);
+ border: 3px solid rgba(68, 68, 68, 0.7);
+ border-radius: 5px;
+ display: inline-block;
+ font: 20px/1"Helvetica Neue", Arial, Helvetica, sans-serif;
+ padding: 10px;
+ position: relative;
+ whitespace: no-wrap;
+}
+.leaflet-styleeditor-stroke {
+ height: 20px;
+ width: 150px;
+ background-repeat: no-repeat;
+ border: 1px solid white;
+ background-image: url(data:image/png;base64,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);
+ cursor: pointer;
+}
+.leaflet-styleeditor-stroke:hover {
+ border: 1px solid black;
+}
+
+.leaflet-styleeditor-marker-s {
+ padding-top: 3px;
+ font-size: 8px;
+ height: 50px;
+ width: 20px;
+}
+.leaflet-styleeditor-marker-m {
+ padding-top: 5px;
+ font-size: 12px;
+ height: 70px;
+ width: 30px;
+}
+.leaflet-styleeditor-marker-l {
+ padding-top: 9px;
+ font-size: 16px;
+ height: 90px;
+ width: 35px;
+}
+
+.leaflet-styleeditor-marker {
+ text-align: center;
+ color: white;
+ display: flex;
+ background-repeat: no-repeat;
+}
+
+.leaflet-styleeditor-maki-marker-icon {
+ width: 100%;
+ height: 25%;
+}
+.leaflet-styleeditor-marker-selected {
+ background-clip: padding-box;
+ background-color: rgba(254,87,161,0.1);
+ border: 4px dashed rgba(254,87,161,0.6);
+ -webkit-border-radius: 4px;
+ border-radius: 4px;
+ box-sizing: content-box;
+ left: -4px;
+ top: -4px;
+}
+
diff --git a/www/wiki/extensions/Maps/resources/lib/leaflet.StyleEditor/img/control.svg b/www/wiki/extensions/Maps/resources/lib/leaflet.StyleEditor/img/control.svg
new file mode 100644
index 00000000..54c69ee2
--- /dev/null
+++ b/www/wiki/extensions/Maps/resources/lib/leaflet.StyleEditor/img/control.svg
@@ -0,0 +1,114 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="5.0973964mm"
+ height="5.2094336mm"
+ viewBox="0 0 5.0973964 5.2094336"
+ version="1.1"
+ id="svg3851"
+ inkscape:version="0.92.2 5c3e80d, 2017-08-06"
+ sodipodi:docname="control.svg">
+ <defs
+ id="defs3845" />
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="10.24"
+ inkscape:cx="4.3567738"
+ inkscape:cy="11.408412"
+ inkscape:document-units="mm"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ inkscape:window-width="1366"
+ inkscape:window-height="768"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
+ inkscape:window-maximized="0"
+ fit-margin-top="0"
+ fit-margin-left="0"
+ fit-margin-right="0"
+ fit-margin-bottom="0" />
+ <metadata
+ id="metadata3848">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:label="Ebene 1"
+ inkscape:groupmode="layer"
+ id="layer1"
+ transform="translate(-0.03511714,-291.8183)">
+ <g
+ id="g3875"
+ inkscape:export-filename="D:\Coding\leaflet-editStyle\img\icon.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90"
+ transform="matrix(-0.24830897,0,0,0.24830897,156.68418,164.82136)">
+ <polygon
+ transform="translate(288,498.8979)"
+ style="fill:#464646"
+ points="327,33.529 327,30.699 335.891,21.809 338.719,24.637 329.828,33.529 "
+ id="polygon3006" />
+ <rect
+ style="fill:#464646"
+ x="-813.74628"
+ y="74.533409"
+ transform="rotate(-134.9919)"
+ width="3.9999616"
+ height="3.9999616"
+ id="rect3008" />
+ <path
+ transform="matrix(0.78402363,0,0,0.78402363,222.68069,148.68168)"
+ inkscape:transform-center-y="-0.29924052"
+ inkscape:transform-center-x="0.29924114"
+ d="m 508.57142,476.82648 c -0.78265,0.78265 -4.14781,-1.95042 -5.24102,-1.77728 -1.0932,0.17315 -3.44909,3.81235 -4.43529,3.30986 -0.98619,-0.50249 0.57322,-4.54752 0.0707,-5.53371 -0.50249,-0.9862 -4.69158,-2.10221 -4.51844,-3.19541 0.17315,-1.09321 4.50208,-0.8601 5.28473,-1.64274 0.78265,-0.78265 0.54954,-5.11158 1.64274,-5.28473 1.09321,-0.17315 2.20922,4.01595 3.19541,4.51844 0.9862,0.50249 5.03122,-1.05693 5.53371,-0.0707 0.50249,0.98619 -3.13671,3.34208 -3.30985,4.43529 -0.17315,1.0932 2.55992,4.45836 1.77728,5.24101 z"
+ inkscape:randomized="0"
+ inkscape:rounded="0.2"
+ inkscape:flatsided="false"
+ sodipodi:arg2="1.4137167"
+ sodipodi:arg1="0.78539816"
+ sodipodi:r2="4.1668792"
+ sodipodi:r1="8.3337584"
+ sodipodi:cy="470.93362"
+ sodipodi:cx="502.67856"
+ sodipodi:sides="5"
+ id="path3099"
+ style="fill:#464646;fill-opacity:1;stroke:#000000;stroke-width:0;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ sodipodi:type="star" />
+ </g>
+ <path
+ style="opacity:1;vector-effect:none;fill:#000000;fill-opacity:1;stroke-width:0.04724703;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ d="m 4.2983645,294.67034 c 0,-0.0992 -0.02286,-0.30397 -0.050797,-0.45511 -0.074689,-0.40402 -0.042135,-0.47419 0.2996803,-0.64598 0.3800898,-0.19102 0.554318,-0.31545 0.554318,-0.3959 0,-0.0789 -0.067114,-0.10113 -0.5718837,-0.18963 -0.2322777,-0.0407 -0.418703,-0.0994 -0.4498154,-0.14167 -0.029223,-0.0397 -0.086566,-0.25421 -0.1274313,-0.47676 -0.1219597,-0.6642 -0.1922462,-0.67173 -0.5131461,-0.0549 -0.1074923,0.20662 -0.2279147,0.38813 -0.2676022,0.40336 -0.039688,0.0152 -0.2742592,0.002 -0.5212689,-0.029 -0.3812672,-0.0482 -0.4593616,-0.0465 -0.5170064,0.0112 -0.059036,0.059 -0.023918,0.11437 0.2689516,0.42379 0.1852665,0.19574 0.336849,0.39748 0.336849,0.44831 0,0.0508 -0.087085,0.27392 -0.1935216,0.49574 -0.2748015,0.5727 -0.2265283,0.61179 0.3883078,0.31447 0.2149422,-0.10395 0.419616,-0.18899 0.4548267,-0.18899 0.035213,0 0.2212631,0.14883 0.4134459,0.33073 0.406347,0.38461 0.4960937,0.41182 0.4960937,0.15042 z"
+ id="path3885"
+ inkscape:connector-curvature="0" />
+ <path
+ style="opacity:1;vector-effect:none;fill:#000000;fill-opacity:1;stroke-width:0.04724703;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ d="m 3.9676353,296.68109 v -0.34291 l -1.0992696,-1.09853 -1.0992723,-1.09852 -0.3413972,0.34369 -0.3413971,0.34369 1.098497,1.09775 1.0984971,1.09775 H 3.625463 3.9676353 Z"
+ id="path3887"
+ inkscape:connector-curvature="0" />
+ <path
+ style="opacity:1;vector-effect:none;fill:#000000;fill-opacity:1;stroke-width:0.04724703;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+ d="m 1.0746309,294.27107 0.3418205,-0.34412 -0.3312371,-0.3287 -0.33123977,-0.3287 -0.3417015,0.3417 -0.3417014,0.3417 0.3311181,0.33112 0.3311181,0.33112 z"
+ id="path3889"
+ inkscape:connector-curvature="0" />
+ </g>
+</svg>
diff --git a/www/wiki/extensions/Maps/resources/lib/leaflet.StyleEditor/img/icon.png b/www/wiki/extensions/Maps/resources/lib/leaflet.StyleEditor/img/icon.png
new file mode 100644
index 00000000..7691615c
--- /dev/null
+++ b/www/wiki/extensions/Maps/resources/lib/leaflet.StyleEditor/img/icon.png
Binary files differ
diff --git a/www/wiki/extensions/Maps/resources/lib/leaflet.StyleEditor/javascript/Leaflet.StyleEditor.min.js b/www/wiki/extensions/Maps/resources/lib/leaflet.StyleEditor/javascript/Leaflet.StyleEditor.min.js
new file mode 100644
index 00000000..596bd64f
--- /dev/null
+++ b/www/wiki/extensions/Maps/resources/lib/leaflet.StyleEditor/javascript/Leaflet.StyleEditor.min.js
@@ -0,0 +1,2 @@
+// 0.1.14 8054a4ff462ef0126582a3789e5c7688aa2e18ab
+var leafletstyleeditor=function(t){var e={};function o(i){if(e[i])return e[i].exports;var n=e[i]={i:i,l:!1,exports:{}};return t[i].call(n.exports,n,n.exports,o),n.l=!0,n.exports}return o.m=t,o.c=e,o.d=function(t,e,i){o.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:i})},o.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},o.t=function(t,e){if(1&e&&(t=o(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var i=Object.create(null);if(o.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var n in t)o.d(i,n,function(e){return t[e]}.bind(null,n));return i},o.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return o.d(e,"a",e),e},o.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},o.p="",o(o.s=2)}([function(t,e){t.exports=void 0},function(t,e,o){},function(t,e,o){"use strict";o.r(e);o(0);o(1),L.StyleEditor={marker:{},forms:{},formElements:{}},L.StyleEditor.Util=L.Class.extend({initialize:function(t){t&&L.setOptions(this,t)},fireEvent:function(t,e){this.options.styleEditorOptions.map.fireEvent(this.options.styleEditorOptions.styleEditorEventPrefix+t,e)},fireChangeEvent:function(t){this.fireEvent("changed",t)},hideElement:function(t){t&&L.DomUtil.addClass(t,"leaflet-styleeditor-hidden")},rgbToHex:function(t,e){if(t||0!==(t=this.options.styleEditorOptions.defaultColor).indexOf("#")&&(t="#"+t),0===t.indexOf("#"))return e&&t.replace("#",""),t;if(t.indexOf("(")<0)return"#"+t;var o=t.substring(4).replace(")","").split(","),i=this._componentToHex(parseInt(o[0],10))+this._componentToHex(parseInt(o[1],10))+this._componentToHex(parseInt(o[2],10));return e?i:"#"+i},getCurrentElement:function(){return this.options.styleEditorOptions.currentElement?void 0!==this.options.styleEditorOptions.currentElement.target?this.options.styleEditorOptions.currentElement.target:this.options.styleEditorOptions.currentElement:null},setCurrentElement:function(t){this.options.styleEditorOptions.currentElement.target=t},fillCurrentElement:function(){return this.getCurrentElement().options.fill},getStyle:function(t){var e=this.getCurrentElement().options[t];return e||null},setStyle:function(t,e){var o=this.getCurrentElement();if(o instanceof L.Marker)this.options.styleEditorOptions.markerType.setStyle(t,e);else{var i={};i[t]=e,o.setStyle(i)}this.fireChangeEvent(o)},showElement:function(t){t&&L.DomUtil.removeClass(t,"leaflet-styleeditor-hidden")},_componentToHex:function(t){var e=t.toString(16);return 1===e.length?"0"+e:e},getMarkersForColor:function(t){t=this.rgbToHex(t);var e=this.options.styleEditorOptions.markerType.options.markers,o=this.options.styleEditorOptions.markers;if(Array.isArray(e)||(e=Object.keys(e).includes(t)?e[t]:e.default),null!==o){if(!Array.isArray(o)){var i=Object.keys(o);o=i.includes(t)?o[t]:i.includes("default")?o.default:e}return e.filter((function(t){return o.includes(t)}))}return e},getDefaultMarkerForColor:function(t){t=this.rgbToHex(t);var e=this.getMarkersForColor(t),o=[],i=this.options.styleEditorOptions.defaultMarkerIcon;return null!==i&&("string"==typeof i&&o.push(i),Object.keys(i).includes(t)&&o.push(i[t])),void 0!==(i=this.options.styleEditorOptions.markerType.options.defaultMarkerIcon)&&("string"==typeof i&&o.push(i),Object.keys(i).includes(t)&&o.push(i[t])),o.filter((function(t){return e.includes(t)})),o.length>0?o[0]:e[0]}}),L.StyleEditor.formElements.FormElement=L.Class.extend({initialize:function(t){t&&L.setOptions(this,t),!this.options.title&&this.options.styleOption&&(this.options.title=this.options.styleOption.charAt(0).toUpperCase()+this.options.styleOption.slice(1))},create:function(t){this.options.uiElement=L.DomUtil.create("div","leaflet-styleeditor-uiElement",t),this.createTitle(),this.createContent()},createTitle:function(){L.DomUtil.create("label","leaflet-styleeditor-label",this.options.uiElement).innerHTML=this.options.title+":"},createContent:function(){},show:function(){this.style(),this.showForm()},showForm:function(){this.options.styleEditorOptions.util.showElement(this.options.uiElement)},hide:function(){this.options.styleEditorOptions.util.hideElement(this.options.uiElement)},style:function(){},lostFocus:function(){},setStyle:function(t){var e=this.options.styleEditorOptions.util.getCurrentElement(),o=[e];e instanceof L.LayerGroup&&(o=Object.values(e._layers));for(var i=0;i<o.length;i++){var n=o[i];if(n instanceof L.Marker)this.options.styleEditorOptions.markerType.setStyle(this.options.styleOption,t);else{var s={};s[this.options.styleOption]=t,n.setStyle(s),n.options[this.options.styleOption]=t}this.options.styleEditorOptions.util.fireChangeEvent(n)}this.options.parentForm.style()}}),L.StyleEditor.formElements.ColorElement=L.StyleEditor.formElements.FormElement.extend({createContent:function(){this.options.colorPickerDiv=L.DomUtil.create("div","leaflet-styleeditor-colorpicker",this.options.uiElement),this._getColorRamp().forEach(this._setSelectCallback,this)},_getColorRamp:function(){return this.options.colorRamp||(this.options.parentForm instanceof L.StyleEditor.forms.MarkerForm&&this.options.styleEditorOptions.markerType.options.colorRamp?this.options.colorRamp=this.options.styleEditorOptions.markerType.options.colorRamp:this.options.colorRamp=this.options.styleEditorOptions.colorRamp),this.options.colorRamp},_setSelectCallback:function(t){var e=L.DomUtil.create("div","leaflet-styleeditor-color",this.options.colorPickerDiv);e.style.backgroundColor=t,L.DomEvent.addListener(e,"click",this._selectColor,this)},_selectColor:function(t){t.stopPropagation(),this.setStyle(this.options.styleEditorOptions.util.rgbToHex(t.target.style.backgroundColor)),this.options.styleEditorOptions.currentElement.target instanceof L.Marker&&this.options.styleEditorOptions.markerType.setNewMarker()}}),L.StyleEditor.formElements.DashElement=L.StyleEditor.formElements.FormElement.extend({createContent:function(){var t=this.options.uiElement,e=L.DomUtil.create("div","leaflet-styleeditor-stroke",t);e.style.backgroundPosition="0px -75px",L.DomEvent.addListener(e,"click",(function(){this.setStyle("1")}),this),(e=L.DomUtil.create("div","leaflet-styleeditor-stroke",t)).style.backgroundPosition="0px -95px",L.DomEvent.addListener(e,"click",(function(){this.setStyle("10, 10")}),this),(e=L.DomUtil.create("div","leaflet-styleeditor-stroke",t)).style.backgroundPosition="0px -115px",L.DomEvent.addListener(e,"click",(function(){this.setStyle("15, 10, 1, 10")}),this)}}),L.StyleEditor.formElements.IconElement=L.StyleEditor.formElements.FormElement.extend({_selectOptionWrapperClasses:"leaflet-styleeditor-select-option-wrapper leaflet-styleeditor-hidden",_selectOptionClasses:"leaflet-styleeditor-select-option",createContent:function(){var t=this.options.uiElement,e=L.DomUtil.create("div","leaflet-styleeditor-select",t);this.options.selectBoxImage=this._createSelectInputImage(e),L.DomEvent.addListener(e,"click",this._toggleSelectInput,this)},style:function(){var t=this.options.styleEditorOptions.markerType.getIconOptions();this._styleSelectInputImage(this.options.selectBoxImage,t.icon,t.iconColor),this._createColorSelect(this.options.styleEditorOptions.markerType.options.iconOptions.iconColor),this._hideSelectOptions()},lostFocus:function(){this._hideSelectOptions()},_createSelectInputImage:function(t){var e=L.DomUtil.create("div","leaflet-styleeditor-select-image-wrapper",t);return L.DomUtil.create("div","leaflet-styleeditor-select-image",e)},_styleSelectInputImage:function(t,e,o){if(e||(e=t.getAttribute("value"))){var i=this.options.styleEditorOptions.markerType.getIconOptions();o&&(i.iconColor=o),t.innerHTML="",this.options.styleEditorOptions.markerType.createSelectHTML(t,i,e),t.setAttribute("value",e)}},_createColorSelect:function(t){if(this.options.selectOptions||(this.options.selectOptions={}),!(t in this.options.selectOptions)){var e=this.options.uiElement,o=L.DomUtil.create("ul",this._selectOptionWrapperClasses,e);this.options.styleEditorOptions.util.getMarkersForColor(t).forEach((function(e){var i=L.DomUtil.create("li",this._selectOptionClasses,o),n=this._createSelectInputImage(i);this._styleSelectInputImage(n,e,t)}),this),this.options.selectOptions[t]=o,L.DomEvent.addListener(o,"click",(function(t){t.stopPropagation();var e=t.target;if("UL"!==e.nodeName){if("leaflet-styleeditor-select-image"===e.parentNode.className)e=e.parentNode;else for(;e&&"leaflet-styleeditor-select-image"!==e.className;)e=e.childNodes[0];this._selectMarker({target:e},this)}}),this)}},_toggleSelectInput:function(t){var e=this._getCurrentColorElement(this.options.styleEditorOptions.util.rgbToHex(this.options.styleEditorOptions.markerType.options.iconOptions.iconColor)),o=!1;e&&(o=L.DomUtil.hasClass(e,"leaflet-styleeditor-hidden")),this._hideSelectOptions(),o&&this.options.styleEditorOptions.util.showElement(e)},_selectMarker:function(t){var e=this._getValue(t.target);this.options.selectBoxImage.setAttribute("value",e),this.setStyle(e),this._hideSelectOptions()},_getValue:function(t){return t.getAttribute("value")},_getCurrentColorElement:function(t){return this.options.selectOptions[t]||this._createColorSelect(t),this.options.selectOptions[t]},_hideSelectOptions:function(){for(var t in this.options.selectOptions)this.options.styleEditorOptions.util.hideElement(this.options.selectOptions[t])}}),L.StyleEditor.formElements.OpacityElement=L.StyleEditor.formElements.FormElement.extend({createContent:function(){this.options.label=L.DomUtil.create("span","leaflet-styleeditor-input-span",this.options.uiElement);var t=this.options.slider=L.DomUtil.create("input","leaflet-styleeditor-input",this.options.uiElement);t.type="range",t.max=1,t.min=0,t.step=.01,t.value=.5,L.DomEvent.addListener(t,"change",this._setStyle,this),L.DomEvent.addListener(t,"input",this._setStyle,this),L.DomEvent.addListener(t,"keyup",this._setStyle,this),L.DomEvent.addListener(t,"mouseup",this._setStyle,this)},style:function(){this.options.slider.value=this.options.styleEditorOptions.util.getStyle(this.options.styleOption),this.options.label.innerText=parseInt(100*this.options.slider.value)+"%"},_setStyle:function(){this.setStyle(this.options.slider.value)}}),L.StyleEditor.formElements.PopupContentElement=L.StyleEditor.formElements.FormElement.extend({options:{title:"Description"},createContent:function(){var t=this.options.uiElement,e=this.options.descTextAreaField=L.DomUtil.create("textarea","leaflet-styleeditor-input",t);L.DomEvent.addListener(e,"change",this._setStyle,this)},style:function(){var t=this.options.styleEditorOptions.util.getCurrentElement();t&&t.options&&(this.options.descTextAreaField.value=t.options.popupContent||"")},_setStyle:function(){var t=this.options.styleEditorOptions.util.getCurrentElement(),e=this.options.descTextAreaField.value,o=[t];t instanceof L.LayerGroup&&(o=Object.values(t._layers));for(var i=0;i<o.length;i++){var n=o[i];if(n&&n.getPopup&&n.bindPopup){var s=n.getPopup();s?s.setContent(e):n.bindPopup(e),n.options=n.options||{},n.options.popupContent=e}}this.setStyle(e)}}),L.StyleEditor.formElements.SizeElement=L.StyleEditor.formElements.FormElement.extend({createContent:function(){var t=this.options.uiElement,e=L.DomUtil.create("div","leaflet-styleeditor-sizeicon sizeicon-small",t);L.DomEvent.addListener(e,"click",(function(){this.setStyle(this.options.styleEditorOptions.markerType.options.size.small)}),this),e=L.DomUtil.create("div","leaflet-styleeditor-sizeicon sizeicon-medium",t),L.DomEvent.addListener(e,"click",(function(){this.setStyle(this.options.styleEditorOptions.markerType.options.size.medium)}),this),e=L.DomUtil.create("div","leaflet-styleeditor-sizeicon sizeicon-large",t),L.DomEvent.addListener(e,"click",(function(){this.setStyle(this.options.styleEditorOptions.markerType.options.size.large)}),this)}}),L.StyleEditor.formElements.WeightElement=L.StyleEditor.formElements.FormElement.extend({createContent:function(){this.options.label=L.DomUtil.create("span","leaflet-styleeditor-input-span",this.options.uiElement);var t=this.options.weight=L.DomUtil.create("input","leaflet-styleeditor-input",this.options.uiElement);t.type="range",t.min=0,t.max=20,t.step=1,t.value=4,L.DomEvent.addListener(t,"change",this._setStyle,this),L.DomEvent.addListener(t,"input",this._setStyle,this),L.DomEvent.addListener(t,"keyup",this._setStyle,this),L.DomEvent.addListener(t,"mouseup",this._setStyle,this)},style:function(){this.options.weight.value=this.options.styleEditorOptions.util.getStyle(this.options.styleOption),this.options.label.innerText=this.options.weight.value},_setStyle:function(){this.setStyle(this.options.weight.value)}}),L.StyleEditor.forms.Form=L.Class.extend({initialize:function(t){t&&L.setOptions(this,t),this.options.initializedElements=[]},create:function(t){this.options.parentUiElement=t;for(var e=this.getFormElements(),o=Object.keys(e),i=0;i<o.length;i++){var n=this.getFormElementClass(o[i],e);void 0!==n&&(n.create(t),this.options.initializedElements.push(n))}},hide:function(){this.hideFormElements(),this.hideForm()},hideFormElements:function(){for(var t=0;t<this.options.initializedElements.length;t++)this.options.initializedElements[t].hide()},hideForm:function(){this.options.styleEditorOptions.util.hideElement(this.options.parentUiElement)},show:function(){this.preShow(),this.showFormElements(),this.showForm(),this.style()},preShow:function(){},showFormElements:function(){for(var t=0;t<this.options.initializedElements.length;t++)this.showFormElement(this.options.initializedElements[t])},showForm:function(){this.options.styleEditorOptions.util.showElement(this.options.parentUiElement)},style:function(){for(var t=0;t<this.options.initializedElements.length;t++)this.options.initializedElements[t].style()},lostFocus:function(){for(var t=0;t<this.options.initializedElements.length;t++)this.options.initializedElements[t].lostFocus()},showFormElement:function(t){this.showFormElementForStyleOption(t.options.styleOption)?t.show():t.hide()},getFormElements:function(){return this.options.formOptionKey in this.options.styleEditorOptions.forms?this.options.styleEditorOptions.forms[this.options.formOptionKey]:this.options.formElements},getFormElementClass:function(t){var e=this.getFormElements();if(Object.keys(e).indexOf(t)>=0){var o=e[t];if(o){if("boolean"==typeof o)return this.getFormElementStandardClass(t);"formElement"in o&&"boolean"in o&&(o=o.formElement);try{var i=new o({styleOption:t,parentForm:this,styleEditorOptions:this.options.styleEditorOptions});if(i instanceof L.StyleEditor.formElements.FormElement)return i}catch(t){}}return this.getFormElementStandardClass(t)}},showFormElementForStyleOption:function(t){var e=this.getFormElements();if(t in e){var o=e[t];if("function"==typeof o)try{return o(this.options.styleEditorOptions.util.getCurrentElement())}catch(t){return!0}return"boolean"==typeof o?o:!("boolean"in o)||("function"==typeof o.boolean?o.boolean(this.options.styleEditorOptions.util.getCurrentElement()):o.boolean)}return!1},getFormElementStandardClass:function(t){return new this.options.formElements[t]({styleOption:t,parentForm:this,styleEditorOptions:this.options.styleEditorOptions})}}),L.StyleEditor.forms.GeometryForm=L.StyleEditor.forms.Form.extend({options:{formOptionKey:"geometry",formElements:{color:L.StyleEditor.formElements.ColorElement,opacity:L.StyleEditor.formElements.OpacityElement,weight:L.StyleEditor.formElements.WeightElement,dashArray:L.StyleEditor.formElements.DashElement,fillColor:L.StyleEditor.formElements.ColorElement,fillOpacity:L.StyleEditor.formElements.OpacityElement,popupContent:L.StyleEditor.formElements.PopupContentElement}},showFormElements:function(){for(var t=0;t<this.options.initializedElements.length;t++)0===this.options.initializedElements[t].options.styleOption.indexOf("fill")?this.options.styleEditorOptions.util.fillCurrentElement()?this.showFormElement(this.options.initializedElements[t]):this.options.initializedElements[t].hide():this.showFormElement(this.options.initializedElements[t])}}),L.StyleEditor.forms.MarkerForm=L.StyleEditor.forms.Form.extend({options:{formOptionKey:"marker",formElements:{icon:L.StyleEditor.formElements.IconElement,color:L.StyleEditor.formElements.ColorElement,size:L.StyleEditor.formElements.SizeElement,popupContent:L.StyleEditor.formElements.PopupContentElement}}}),L.StyleEditor.marker.Marker=L.Marker.extend({markerForm:L.StyleEditor.forms.MarkerForm,options:{size:{small:[20,50],medium:[30,70],large:[35,90]},selectIconSize:[],selectIconClass:"",iconOptions:{}},initialize:function(t){L.setOptions(this,t),L.setOptions(this,this.options),""===this.options.selectIconClass||this.options.selectIconClass.startsWith("leaflet-styleeditor-select-image")||(this.options.selectIconClass="leaflet-styleeditor-select-image-"+this.options.selectIconClass)},setNewMarker:function(){var t=this._createMarkerIcon(),e=this.options.styleEditorOptions.currentElement.target;e.setIcon(t),e instanceof L.LayerGroup?e.eachLayer((function(t){L.DomUtil.addClass(t.getElement(),"leaflet-styleeditor-marker-selected")})):L.DomUtil.addClass(e.getElement(),"leaflet-styleeditor-marker-selected")},setStyle:function(t,e){"icon"!==t&&(t="icon"+t.charAt(0).toUpperCase()+t.slice(1)),this.setIconOptions(t,e),this.setNewMarker()},createSelectHTML:function(t,e,o){},getIconOptions:function(){return this.options.styleEditorOptions.currentElement&&(this.options.iconOptions=this.options.styleEditorOptions.currentElement.target.options.icon.options),Object.keys(this.options.iconOptions).length>0?this.options.iconOptions:(this.options.iconOptions.iconColor=this._getDefaultMarkerColor(),this.options.iconOptions.iconSize=this.options.styleEditorOptions.markerType.options.size.small,this.options.iconOptions.icon=this.options.styleEditorOptions.util.getDefaultMarkerForColor(this.options.iconOptions.iconColor),this.options.iconOptions=this._ensureMarkerIcon(this.options.iconOptions),this.options.iconOptions)},resetIconOptions:function(){var t=this;Object.keys(this.getIconOptions()).forEach((function(e){return t.setStyle(e,t.options.iconOptions[e])}))},setIconOptions:function(t,e){this.getIconOptions()[t]=e},_createMarkerIcon:function(){var t=this.getIconOptions();return this.createMarkerIcon(t)},_ensureMarkerIcon:function(t){return this.options.styleEditorOptions.util.getMarkersForColor(t.iconColor).includes(t.icon)?t:(t.icon=this.options.styleEditorOptions.util.getDefaultMarkerForColor(t.iconColor),t)},_getDefaultMarkerColor:function(){var t=this.options.colorRamp,e=this.options.styleEditorOptions.colorRamp,o=[];null!=t?0===(o=t.filter((function(t){return e.includes(t)}))).length&&(o=t):o=e;var i=this.options.styleEditorOptions.defaultMarkerColor;return null===i||o.includes(i)||(i=null),null===i&&(null===(i=this.options.styleEditorOptions.defaultColor)||o.includes(i)||(i=null),null===i&&(i=o[0])),this.options.styleEditorOptions.util.rgbToHex(i)},sizeToName:function(t){var e=Object.keys(this.options.size);if("string"==typeof t){"s"===t?t="small":"m"===t?t="medium":"l"===t&&(t="large");for(var o=0;o<e.length;o++)if(this.options.size[e[o]]===t)return e[o]}for(var i=Object.values(this.options.size),n=0;n<i.length;n++)if(JSON.stringify(t)===JSON.stringify(i[n]))return e[n];return e[0]},sizeToPixel:function(t){return t=this.sizeToName(t),this.options.size[t]}}),L.StyleEditor.marker.DefaultMarker=L.StyleEditor.marker.Marker.extend({createMarkerIcon:function(t,e){e||(e="");var o=t.iconSize;return new L.Icon({iconUrl:this._getMarkerUrlForStyle(t),iconSize:t.iconSize,iconColor:t.iconColor,icon:t.icon,className:e,iconAnchor:[o[0]/2,o[1]/2],popupAnchor:[0,-o[1]/2]})},createSelectHTML:function(t,e,o){var i={};i.iconSize=this.options.size.small,i.icon=o,i.iconColor=e.iconColor,t.innerHTML=this.createMarkerIcon(i,this.options.selectIconClass).createIcon().outerHTML},_getMarkerUrlForStyle:function(t){return this._getMarkerUrl(t.iconSize,t.iconColor,t.icon)},_getMarkerUrl:function(t,e,o){var i="https://api.tiles.mapbox.com/v3/marker/pin-"+(t=this.sizeToName(t)[0]);return o&&(i+="-"+o),i+"+"+(e=0===e.indexOf("#")?e.replace("#",""):this.options.styleEditorOptions.util.rgbToHex(e,!0))+".png"},options:{selectIconClass:"defaultmarker",markers:["circle-stroked","circle","square-stroked","square","triangle-stroked","triangle","star-stroked","star","cross","marker-stroked","marker","religious-jewish","religious-christian","religious-muslim","cemetery","rocket","airport","heliport","rail","rail-metro","rail-light","bus","fuel","parking","parking-garage","airfield","roadblock","ferry","harbor","bicycle","park","park2","museum","lodging","monument","zoo","garden","campsite","theatre","art-gallery","pitch","soccer","america-football","tennis","basketball","baseball","golf","swimming","cricket","skiing","school","college","library","post","fire-station","town-hall","police","prison","embassy","beer","restaurant","cafe","shop","fast-food","bar","bank","grocery","cinema","pharmacy","hospital","danger","industrial","warehouse","commercial","building","place-of-worship","alcohol-shop","logging","oil-well","slaughterhouse","dam","water","wetland","disability","telephone","emergency-telephone","toilets","waste-basket","music","land-use","city","town","village","farm","bakery","dog-park","lighthouse","clothing-store","polling-place","playground","entrance","heart","london-underground","minefield","rail-underground","rail-above","camera","laundry","car","suitcase","hairdresser","chemist","mobilephone","scooter"]}}),L.StyleEditor.marker.GlyphiconMarker=L.StyleEditor.marker.Marker.extend({getMarkerHtml:function(t,e,o){var i=this._getMarkerUrl(t,e);return'<div class="leaflet-styleeditor-marker leaflet-styleeditor-marker-'+this.sizeToName(t)[0]+'" style="background-image: url('+i+');"><div class="leaflet-styleeditor-fill"></div><i class="glyphicon '+o+'"></i><div class="leaflet-styleeditor-fill"></div></div>'},createMarkerIcon:function(t){var e=t.iconSize;return L.divIcon({className:"leaflet-styleeditor-glyphicon-marker-wrapper",html:this.getMarkerHtml(e,t.iconColor,t.icon),icon:t.icon,iconColor:t.iconColor,iconSize:e,iconAnchor:[e[0]/2,e[1]/2],popupAnchor:[0,-e[1]/2]})},setStyle:function(t,e){"icon"!==t&&(t="icon"+t.charAt(0).toUpperCase()+t.slice(1));var o=this.options.iconOptions;o[t]!==e&&(o[t]=e,this.setNewMarker())},createSelectHTML:function(t,e,o){t.innerHTML=this.getMarkerHtml("s",e.iconColor,o)},_getMarkerUrlForStyle:function(t){return this._getMarkerUrl(t.iconSize,t.iconColor,t.icon)},_getMarkerUrl:function(t,e,o){return"https://api.tiles.mapbox.com/v3/marker/pin-"+(t=this.sizeToName(t)[0])+"+"+(e=0===e.indexOf("#")?e.replace("#",""):this.options.styleEditorOptions.util.rgbToHex(e,!0))+".png"},options:{markers:["glyphicon-plus","glyphicon-asterisk","glyphicon-plus","glyphicon-euro","glyphicon-minus","glyphicon-cloud","glyphicon-envelope","glyphicon-pencil","glyphicon-glass","glyphicon-music","glyphicon-search","glyphicon-heart","glyphicon-star","glyphicon-star-empty","glyphicon-user","glyphicon-film","glyphicon-th-large","glyphicon-th","glyphicon-th-list","glyphicon-ok","glyphicon-remove","glyphicon-zoom-in","glyphicon-zoom-out","glyphicon-off","glyphicon-signal","glyphicon-cog","glyphicon-trash","glyphicon-home","glyphicon-file","glyphicon-time","glyphicon-road","glyphicon-download-alt","glyphicon-download","glyphicon-upload","glyphicon-inbox","glyphicon-play-circle","glyphicon-repeat","glyphicon-refresh","glyphicon-list-alt","glyphicon-lock","glyphicon-flag","glyphicon-headphones","glyphicon-volume-off","glyphicon-volume-down","glyphicon-volume-up","glyphicon-qrcode","glyphicon-barcode","glyphicon-tag","glyphicon-tags","glyphicon-book","glyphicon-bookmark","glyphicon-print","glyphicon-camera","glyphicon-font","glyphicon-bold","glyphicon-italic","glyphicon-text-height","glyphicon-text-width","glyphicon-align-left","glyphicon-align-center","glyphicon-align-right","glyphicon-align-justify","glyphicon-list","glyphicon-indent-left","glyphicon-indent-right","glyphicon-facetime-video","glyphicon-picture","glyphicon-map-marker","glyphicon-adjust","glyphicon-tint","glyphicon-edit","glyphicon-share","glyphicon-check","glyphicon-move","glyphicon-chevron-right","glyphicon-plus-sign","glyphicon-minus-sign","glyphicon-remove-sign","glyphicon-ok-sign","glyphicon-question-sign","glyphicon-info-sign","glyphicon-screenshot","glyphicon-remove-circle","glyphicon-ok-circle","glyphicon-ban-circle","glyphicon-arrow-left","glyphicon-arrow-right","glyphicon-arrow-up","glyphicon-arrow-down","glyphicon-share-alt","glyphicon-resize-full","glyphicon-resize-small","glyphicon-exclamation-sign","glyphicon-gift","glyphicon-leaf","glyphicon-fire","glyphicon-eye-open","glyphicon-eye-close","glyphicon-warning-sign","glyphicon-plane","glyphicon-calendar","glyphicon-random","glyphicon-comment","glyphicon-magnet","glyphicon-chevron-up","glyphicon-chevron-down","glyphicon-retweet","glyphicon-shopping-cart","glyphicon-bullhorn","glyphicon-bell","glyphicon-certificate","glyphicon-thumbs-up","glyphicon-thumbs-down","glyphicon-hand-right","glyphicon-hand-left","glyphicon-hand-up","glyphicon-hand-down","glyphicon-circle-arrow-right","glyphicon-circle-arrow-left","glyphicon-circle-arrow-up","glyphicon-circle-arrow-down","glyphicon-globe","glyphicon-wrench","glyphicon-tasks","glyphicon-filter","glyphicon-briefcase","glyphicon-fullscreen","glyphicon-dashboard","glyphicon-paperclip","glyphicon-heart-empty","glyphicon-link","glyphicon-phone","glyphicon-pushpin","glyphicon-usd"]}}),L.StyleForm=L.Class.extend({initialize:function(t){L.setOptions(this,t),this.createMarkerForm(),this.createGeometryForm(),this.addDOMEvents()},addDOMEvents:function(){L.DomEvent.addListener(this.options.styleEditorOptions.map,"click",this.lostFocus,this),L.DomEvent.addListener(this.options.styleEditorDiv,"click",this.lostFocus,this)},clearForm:function(){this.options.styleEditorOptions.markerForm.hide(),this.options.styleEditorOptions.geometryForm.hide()},createMarkerForm:function(){var t=L.DomUtil.create("div","leaflet-styleeditor-interior-marker",this.options.styleEditorInterior);this.options.styleEditorOptions.markerForm.create(t)},createGeometryForm:function(){var t=L.DomUtil.create("div","leaflet-styleeditor-interior-geometry",this.options.styleEditorInterior);this.options.styleEditorOptions.geometryForm.create(t)},showMarkerForm:function(){this.clearForm(),this.options.styleEditorOptions.markerForm.show()},showGeometryForm:function(){this.clearForm(),this.options.styleEditorOptions.geometryForm.show()},fireChangeEvent:function(t){this.options.styleEditorOptions.util.fireChangedEvent(t)},lostFocus:function(t){for(var e=t.target,o=0;o<10&&e;o++){if(e.className&&L.DomUtil.hasClass(e,"leaflet-styleeditor-interior"))return;e=e.parentNode}this.options.styleEditorOptions.markerForm.lostFocus(),this.options.styleEditorOptions.geometryForm.lostFocus()}}),L.Control.StyleEditor=L.Control.extend({options:{position:"topleft",colorRamp:["#1abc9c","#2ecc71","#3498db","#9b59b6","#34495e","#16a085","#27ae60","#2980b9","#8e44ad","#2c3e50","#f1c40f","#e67e22","#e74c3c","#ecf0f1","#95a5a6","#f39c12","#d35400","#c0392b","#bdc3c7","#7f8c8d"],defaultColor:null,markerType:L.StyleEditor.marker.DefaultMarker,markers:null,defaultMarkerIcon:null,defaultMarkerColor:null,geometryForm:L.StyleEditor.forms.GeometryForm,forms:{},openOnLeafletDraw:!0,showTooltip:!0,strings:{cancel:"Cancel",cancelTitle:"Cancel Styling",tooltip:"Click on the element you want to style",tooltipNext:"Choose another element you want to style"},useGrouping:!0,styleEditorEventPrefix:"styleeditor:",currentElement:null,_editLayers:[],_layerGroups:[]},initialize:function(t){t&&L.setOptions(this,t),this.options.util=new L.StyleEditor.Util({styleEditorOptions:this.options}),this.options.markerType=new this.options.markerType({styleEditorOptions:this.options}),this.options.markerForm=new this.options.markerType.markerForm({styleEditorOptions:this.options}),this.options.geometryForm=new this.options.geometryForm({styleEditorOptions:this.options}),this.getDefaultIcon=this.options.markerType._createMarkerIcon.bind(this.options.markerType),this.createIcon=this.options.markerType.createMarkerIcon.bind(this.options.markerType)},onAdd:function(t){return this.options.map=t,this.createUi()},fireEvent:function(t,e){this.options.util.fireEvent(t,e)},createUi:function(){var t=this.options.controlDiv=L.DomUtil.create("div","leaflet-control-styleeditor leaflet-control leaflet-bar");(this.options.controlUI=L.DomUtil.create("a","leaflet-control-styleeditor-interior",t)).title="Style Editor";var e=this.options.cancelUI=L.DomUtil.create("div","leaflet-control-styleeditor-cancel leaflet-styleeditor-hidden",t);e.innerHTML=this.options.strings.cancel,e.title=this.options.strings.cancelTitle;var o=this.options.styleEditorDiv=L.DomUtil.create("div","leaflet-styleeditor",this.options.map._container);this.options.styleEditorHeader=L.DomUtil.create("div","leaflet-styleeditor-header",o);var i=L.DomUtil.create("div","leaflet-styleeditor-interior",o);return this.addDomEvents(),this.addLeafletDrawEvents(),this.addButtons(),this.options.styleForm=new L.StyleForm({styleEditorDiv:o,styleEditorInterior:i,styleEditorOptions:this.options}),t},addDomEvents:function(){L.DomEvent.disableScrollPropagation(this.options.styleEditorDiv),L.DomEvent.disableScrollPropagation(this.options.controlDiv),L.DomEvent.disableScrollPropagation(this.options.cancelUI),L.DomEvent.disableClickPropagation(this.options.styleEditorDiv),L.DomEvent.disableClickPropagation(this.options.controlDiv),L.DomEvent.disableClickPropagation(this.options.cancelUI),L.DomEvent.on(this.options.controlDiv,"click",(function(){this.toggle()}),this)},addLeafletDrawEvents:function(){this.options.openOnLeafletDraw&&L.Control.Draw&&(this.options.map.on("layeradd",this.onLayerAdd,this),this.options.map.on(L.Draw.Event.CREATED,this.onLeafletDrawCreated,this))},onLeafletDrawCreated:function(t){this.removeIndicators(),this.options.currentElement=t.layer},onLayerAdd:function(t){this.options.currentElement&&t.layer===this.options.util.getCurrentElement()&&this.enable(t.layer)},onRemove:function(){this.disable(),this.removeDomEvents(),this.removeLeafletDrawEvents(),L.DomUtil.remove(this.options.styleEditorDiv),L.DomUtil.remove(this.options.cancelUI),delete this.options.styleEditorDiv,delete this.options.cancelUI},removeLeafletDrawEvents:function(){this.options.map.off("layeradd",this.onLayerAdd),L.Draw&&this.options.map.off(L.Draw.Event.CREATED,this.onLeafletDrawCreated)},removeDomEvents:function(){L.DomEvent.off(this.options.controlDiv,"click",(function(){this.toggle()}),this)},addButtons:function(){var t=L.DomUtil.create("button","leaflet-styleeditor-button styleeditor-nextBtn",this.options.styleEditorHeader);t.title=this.options.strings.tooltipNext,L.DomEvent.on(t,"click",(function(t){this.hideEditor(),L.DomUtil.hasClass(this.options.controlUI,"enabled")&&this.createTooltip(),t.stopPropagation()}),this)},toggle:function(){L.DomUtil.hasClass(this.options.controlUI,"enabled")?this.disable():this.enable()},enable:function(t){L.DomUtil.addClass(this.options.controlUI,"enabled"),this.options.map.eachLayer(this.addEditClickEvents,this),this.showCancelButton(),this.createTooltip(),void 0!==t&&(this.isEnabled()&&this.removeIndicators(),this.initChangeStyle({target:t}))},isEnabled:function(){return L.DomUtil.hasClass(this.options.controlUI,"enabled")},disable:function(){this.isEnabled()&&(this.options._editLayers.forEach(this.removeEditClickEvents,this),this.options._editLayers=[],this.options._layerGroups=[],this.hideEditor(),this.hideCancelButton(),this.removeTooltip(),L.DomUtil.removeClass(this.options.controlUI,"enabled"))},addEditClickEvents:function(t){if(this.options.useGrouping&&t instanceof L.LayerGroup)this.options._layerGroups.push(t);else if(t instanceof L.Marker||t instanceof L.Path){var e=t.on("click",this.initChangeStyle,this);this.options._editLayers.push(e)}},removeEditClickEvents:function(t){t.off("click",this.initChangeStyle,this)},addIndicators:function(){if(this.options.currentElement){var t=this.options.currentElement.target;t instanceof L.LayerGroup?t.eachLayer((function(t){t instanceof L.Marker&&t.getElement()&&L.DomUtil.addClass(t.getElement(),"leaflet-styleeditor-marker-selected")})):t instanceof L.Marker&&t.getElement()&&L.DomUtil.addClass(t.getElement(),"leaflet-styleeditor-marker-selected")}},removeIndicators:function(){if(this.options.currentElement){var t=this.options.util.getCurrentElement();t instanceof L.LayerGroup?t.eachLayer((function(t){t.getElement()&&L.DomUtil.removeClass(t.getElement(),"leaflet-styleeditor-marker-selected")})):t.getElement()&&L.DomUtil.removeClass(t.getElement(),"leaflet-styleeditor-marker-selected")}},hideEditor:function(){L.DomUtil.hasClass(this.options.styleEditorDiv,"editor-enabled")&&(this.removeIndicators(),L.DomUtil.removeClass(this.options.styleEditorDiv,"editor-enabled"),this.fireEvent("hidden"))},hideCancelButton:function(){L.DomUtil.addClass(this.options.cancelUI,"leaflet-styleeditor-hidden")},showEditor:function(){var t=this.options.styleEditorDiv;L.DomUtil.hasClass(t,"editor-enabled")||(L.DomUtil.addClass(t,"editor-enabled"),this.fireEvent("visible"))},showCancelButton:function(){L.DomUtil.removeClass(this.options.cancelUI,"leaflet-styleeditor-hidden")},initChangeStyle:function(t){this.removeIndicators(),this.options.currentElement=this.options.useGrouping?this.getMatchingElement(t):t,this.addIndicators(),this.showEditor(),this.removeTooltip();var e=t;e instanceof L.Layer||(e=t.target),this.fireEvent("editing",e),e instanceof L.Marker?(this.options.markerType.resetIconOptions(),this.showMarkerForm(e)):this.showGeometryForm(e)},showGeometryForm:function(t){this.fireEvent("geometry",t),this.options.styleForm.showGeometryForm()},showMarkerForm:function(t){this.fireEvent("marker",t),this.options.styleForm.showMarkerForm()},createTooltip:function(){this.options.showTooltip&&(this.options.tooltipWrapper||(this.options.tooltipWrapper=L.DomUtil.create("div","leaflet-styleeditor-tooltip-wrapper",this.options.map.getContainer())),this.options.tooltip||(this.options.tooltip=L.DomUtil.create("div","leaflet-styleeditor-tooltip",this.options.tooltipWrapper)),this.options.tooltip.innerHTML=this.options.strings.tooltip)},getMatchingElement:function(t){for(var e=null,o=t.target,i=0;i<this.options._layerGroups.length;++i)if((e=this.options._layerGroups[i])&&o!==e&&e.hasLayer(o))return e.options&&e.options.opacity||(e.options=o.options,o.setIcon&&(e.setIcon=function(t){e.eachLayer((function(e){e instanceof L.Marker&&e.setIcon(t)}))})),this.getMatchingElement({target:e});return t},removeTooltip:function(){this.options.tooltip&&this.options.tooltip.parentNode&&(this.options.tooltip.remove(),this.options.tooltip=void 0)}}),L.control.styleEditor=function(t){return t||(t={}),new L.Control.StyleEditor(t)};e.default=L}]);