diff --git a/example/pages/listexample/_detail.vue b/example/pages/listexample/_detail.vue
index db0697bb..46e9ca39 100644
--- a/example/pages/listexample/_detail.vue
+++ b/example/pages/listexample/_detail.vue
@@ -393,6 +393,7 @@ export default {
type: "date",
synci18n: true,
},
+ /*
{
value: "pubblication_date",
label: this.$t("pubblicationTime"),
@@ -403,7 +404,7 @@ export default {
value: "meta.simple_time",
type: "time",
synci18n: true,
- },
+ }, */
{
value: "pubblication_date",
label: this.$t("pubblicationDate"),
@@ -425,6 +426,7 @@ export default {
type: "media",
synci18n: true,
},
+ { label: "map", value: "meta.map", type: "map", synci18n: true },
],
};
},
diff --git a/packages/@mapomodule/uikit/components/Form/defaults.js b/packages/@mapomodule/uikit/components/Form/defaults.js
index b31eb63d..9bd1caa2 100644
--- a/packages/@mapomodule/uikit/components/Form/defaults.js
+++ b/packages/@mapomodule/uikit/components/Form/defaults.js
@@ -29,6 +29,7 @@ const components = {
FileField: () => import("@mapomodule/uikit/components/Form/fields/FileField.vue"),
Repeater: () => import("@mapomodule/uikit/components/Form/fields/Repeater.vue"),
ColorField: () => import("@mapomodule/uikit/components/Form/fields/ColorField.vue"),
+ MapField: () => import("@mapomodule/uikit/components/Form/fields/mapField/mapField.vue"),
}
const mapping = {
@@ -50,6 +51,7 @@ const mapping = {
seoPreview: components.SeoPreview,
repeater: components.Repeater,
color: components.ColorField,
+ map: components.MapField
}
const attrs = {
diff --git a/packages/@mapomodule/uikit/components/Form/fields/mapField/leaflet.injector.js b/packages/@mapomodule/uikit/components/Form/fields/mapField/leaflet.injector.js
new file mode 100644
index 00000000..c0f0e29e
--- /dev/null
+++ b/packages/@mapomodule/uikit/components/Form/fields/mapField/leaflet.injector.js
@@ -0,0 +1,39 @@
+export default async function () {
+ return new Promise((resolve, reject) => {
+ if (typeof window.L !== 'undefined'){
+ resolve()
+ }
+ let scriptTag = document.getElementById("leaflet-script") || null
+ let styleTag = document.getElementById("leaflet-style") || null
+ const handler = () => {
+ scriptTag.removeEventListener('load', handler);
+ resolve()
+ };
+ if (!scriptTag) {
+ try {
+ scriptTag = document.createElement('script');
+ scriptTag.src = "https://unpkg.com/leaflet@1.7.1/dist/leaflet.js",
+ scriptTag.crossorigin = "anonymous",
+ scriptTag.async = true,
+ scriptTag.referrerPolicy = 'origin';
+ scriptTag.type = 'application/javascript';
+ scriptTag.id = 'leaflet-script';
+ scriptTag.addEventListener('load', handler);
+ document.head.appendChild(scriptTag);
+ styleTag = document.createElement('link');
+
+ styleTag.rel = "stylesheet",
+ styleTag.href = "https://unpkg.com/leaflet@1.7.1/dist/leaflet.css",
+ styleTag.crossorigin = "anonymous",
+ styleTag.id = 'leaflet-style';
+ document.head.appendChild(styleTag);
+
+
+ } catch (error) {
+ reject(error)
+ }
+ } else {
+ scriptTag.addEventListener('load', handler);
+ }
+ })
+}
diff --git a/packages/@mapomodule/uikit/components/Form/fields/mapField/mapField.vue b/packages/@mapomodule/uikit/components/Form/fields/mapField/mapField.vue
new file mode 100644
index 00000000..fc168433
--- /dev/null
+++ b/packages/@mapomodule/uikit/components/Form/fields/mapField/mapField.vue
@@ -0,0 +1,171 @@
+
+
+
+
+
+
+
diff --git a/packages/@mapomodule/uikit/components/Form/fields/wygEditor/utils/script.injector.js b/packages/@mapomodule/uikit/components/Form/fields/wygEditor/utils/tinymce.injector.js
similarity index 100%
rename from packages/@mapomodule/uikit/components/Form/fields/wygEditor/utils/script.injector.js
rename to packages/@mapomodule/uikit/components/Form/fields/wygEditor/utils/tinymce.injector.js
diff --git a/packages/@mapomodule/uikit/components/Form/fields/wygEditor/wygEditor.vue b/packages/@mapomodule/uikit/components/Form/fields/wygEditor/wygEditor.vue
index 5f81bdf2..2ffe0ae8 100644
--- a/packages/@mapomodule/uikit/components/Form/fields/wygEditor/wygEditor.vue
+++ b/packages/@mapomodule/uikit/components/Form/fields/wygEditor/wygEditor.vue
@@ -33,7 +33,7 @@