diff --git a/assets/js/app/common.js b/assets/js/app/common.js
index 8523ef607f..fdb7110fb2 100644
--- a/assets/js/app/common.js
+++ b/assets/js/app/common.js
@@ -144,7 +144,10 @@ $(document).ready(function () {
/*
** Copy text to clipboard. Used in filemanager actions.
*/
- new ClipboardJS('*[data-clipboard-text]');
+ const clipboard = new ClipboardJS('*[data-clipboard-text]');
+ clipboard.on('success', function (event) {
+ event.clearSelection();
+ });
/* End of copy text to clipboard */
/*
diff --git a/assets/js/app/editor/Components/Checkbox.vue b/assets/js/app/editor/Components/Checkbox.vue
index d507424c84..1f82e07f51 100644
--- a/assets/js/app/editor/Components/Checkbox.vue
+++ b/assets/js/app/editor/Components/Checkbox.vue
@@ -8,9 +8,9 @@
:checked="value"
type="checkbox"
:readonly="readonly"
- @change="liveValue = $event.target.checked"
+ @change="liveValue = ($event.target as HTMLInputElement).checked"
/>
-
+
@@ -19,36 +19,18 @@
-
diff --git a/assets/js/app/editor/Components/Collection.vue b/assets/js/app/editor/Components/Collection.vue
index 2e19a10d3f..17cc7af3a8 100644
--- a/assets/js/app/editor/Components/Collection.vue
+++ b/assets/js/app/editor/Components/Collection.vue
@@ -1,7 +1,7 @@
@@ -57,16 +58,17 @@
{{ labels.select }}
-
diff --git a/assets/js/app/editor/Components/Date.vue b/assets/js/app/editor/Components/Date.vue
index 5a9e184d24..3c3bf41fde 100644
--- a/assets/js/app/editor/Components/Date.vue
+++ b/assets/js/app/editor/Components/Date.vue
@@ -1,5 +1,5 @@
-
+
-
diff --git a/assets/js/app/editor/Components/Email.vue b/assets/js/app/editor/Components/Email.vue
index 6a9f887912..f23b26d9e3 100644
--- a/assets/js/app/editor/Components/Email.vue
+++ b/assets/js/app/editor/Components/Email.vue
@@ -10,40 +10,23 @@
type="email"
:required="required"
:readonly="readonly"
- :data-errormessage="errormessage"
- :pattern="pattern"
- :placeholder="placeholder"
+ :data-errormessage="typeof errormessage === 'string' ? errormessage : undefined"
+ :pattern="typeof pattern === 'string' ? pattern : undefined"
+ :placeholder="typeof placeholder === 'string' ? placeholder : undefined"
/>
-
diff --git a/assets/js/app/editor/Components/Embed.vue b/assets/js/app/editor/Components/Embed.vue
index eb9bd8d44b..8ad01e84f0 100644
--- a/assets/js/app/editor/Components/Embed.vue
+++ b/assets/js/app/editor/Components/Embed.vue
@@ -8,6 +8,7 @@
-
+ {{ labels.label_matched_embed }}
-
+
{{ labels.label_preview }}
@@ -108,102 +114,95 @@
-
diff --git a/assets/js/app/editor/Components/File.vue b/assets/js/app/editor/Components/File.vue
index e6435a3015..33d4911888 100644
--- a/assets/js/app/editor/Components/File.vue
+++ b/assets/js/app/editor/Components/File.vue
@@ -10,6 +10,7 @@
@@ -114,7 +116,8 @@
:disabled="readonly"
@click="onRemoveFile"
>
- {{ labels.button_remove }}
+
+ {{ labels.button_remove }}
@@ -132,129 +135,155 @@
-
diff --git a/assets/js/app/editor/Components/Filelist.vue b/assets/js/app/editor/Components/Filelist.vue
index 6411abbe72..8f012a6023 100644
--- a/assets/js/app/editor/Components/Filelist.vue
+++ b/assets/js/app/editor/Components/Filelist.vue
@@ -10,10 +10,10 @@
:directory="directory"
:filelist="filelist"
:csrf-token="csrfToken"
- :labels="labels"
+ :labels="labelsValue"
:in-filelist="true"
:name="fieldName(index)"
- :extensions="extensions"
+ :extensions="extensionsValue"
:is-first-in-filelist="isFirstInFilelist(index)"
:is-last-in-filelist="isLastInFilelist(index)"
:readonly="readonly"
@@ -28,105 +28,136 @@
-
diff --git a/assets/js/app/editor/Components/Html.vue b/assets/js/app/editor/Components/Html.vue
index a17e5c85b0..0ff92cccdd 100644
--- a/assets/js/app/editor/Components/Html.vue
+++ b/assets/js/app/editor/Components/Html.vue
@@ -1,47 +1,38 @@
-
-
-
+
-
diff --git a/assets/js/app/editor/Components/Image.vue b/assets/js/app/editor/Components/Image.vue
index 5bd15cee04..5f9a22ff6c 100644
--- a/assets/js/app/editor/Components/Image.vue
+++ b/assets/js/app/editor/Components/Image.vue
@@ -9,7 +9,7 @@
@@ -185,137 +189,173 @@
tabindex="-1"
type="file"
:accept="acceptedExtensions"
- @change="uploadFile($event.target.files[0])"
+ @change="uploadSelectedFile"
/>
-
diff --git a/assets/js/app/editor/Components/Imagelist.vue b/assets/js/app/editor/Components/Imagelist.vue
index 8e7e57875b..9e344a7a31 100644
--- a/assets/js/app/editor/Components/Imagelist.vue
+++ b/assets/js/app/editor/Components/Imagelist.vue
@@ -1,8 +1,7 @@