From f46ff9592848b9fb2d8234f4a9927d7405be83d8 Mon Sep 17 00:00:00 2001 From: Buster Neece Date: Mon, 26 Dec 2022 00:50:50 -0600 Subject: [PATCH] Mass Composition-API-ification and Gettext clarification. --- .../vue/components/Form/UseResettableForm.js | 12 ---- ...elidateOnForm.js => useVuelidateOnForm.js} | 6 +- frontend/vue/components/Recover.vue | 42 +++++--------- .../vue/components/Stations/BulkMedia.vue | 7 +-- frontend/vue/components/Stations/Fallback.vue | 46 +++++++-------- frontend/vue/components/Stations/Help.vue | 24 ++++---- .../Stations/HlsStreams/EditModal.vue | 38 +++++++------ .../Stations/HlsStreams/Form/BasicInfo.vue | 56 ++++++++---------- frontend/vue/components/Stations/Media.vue | 20 +------ .../Stations/Media/Form/AdvancedSettings.vue | 14 ++--- .../Stations/Media/Form/BasicInfo.vue | 12 ++-- .../Stations/Media/Form/CustomFields.vue | 14 ++--- .../Stations/Media/Form/Playlists.vue | 36 ++++++------ .../Stations/Media/NewDirectoryModal.vue | 7 +-- .../components/Stations/Media/RenameModal.vue | 7 +-- .../Stations/Mounts/Form/Advanced.vue | 5 +- .../Stations/Mounts/Form/AutoDj.vue | 5 +- .../Stations/Mounts/Form/BasicInfo.vue | 5 +- .../vue/components/Stations/Playlists.vue | 42 +++----------- .../Stations/Playlists/CloneModal.vue | 7 +-- .../Stations/Playlists/Form/Advanced.vue | 19 ++----- .../Stations/Playlists/Form/BasicInfo.vue | 7 +-- .../Stations/Playlists/Form/Schedule.vue | 11 ++-- .../Stations/Playlists/ImportModal.vue | 7 +-- .../Stations/Playlists/QueueModal.vue | 7 +-- .../Stations/Playlists/ReorderModal.vue | 18 ++---- frontend/vue/components/Stations/Podcasts.vue | 33 +++++------ .../Podcasts/EpisodeForm/BasicInfo.vue | 21 ++----- .../Podcasts/PodcastForm/BasicInfo.vue | 23 +++----- .../vue/components/Stations/ProfileEdit.vue | 37 ++++++------ .../Stations/Remotes/Form/AutoDj.vue | 5 +- .../Stations/Remotes/Form/BasicInfo.vue | 5 +- .../components/Stations/Reports/Listeners.vue | 12 ++-- .../Stations/Reports/Overview/BrowsersTab.vue | 21 ++----- .../Stations/Reports/Overview/ClientsTab.vue | 21 ++----- .../Reports/Overview/CountriesTab.vue | 21 ++----- .../Stations/Reports/Overview/StreamsTab.vue | 21 ++----- .../components/Stations/SftpUsers/Form.vue | 14 ++--- .../vue/components/Stations/Streamers.vue | 12 +--- .../Stations/Streamers/BroadcastsModal.vue | 15 +---- .../Stations/Streamers/ConnectionInfo.vue | 12 ++-- .../Stations/Streamers/Form/BasicInfo.vue | 19 ++----- .../Stations/Streamers/Form/Schedule.vue | 7 +-- .../Stations/Webhooks/Form/BasicInfo.vue | 14 ++--- .../Webhooks/Form/Common/FormattingInfo.vue | 11 ++-- .../Stations/Webhooks/Form/Discord.vue | 14 ++--- .../Stations/Webhooks/Form/Email.vue | 14 ++--- .../Stations/Webhooks/Form/Generic.vue | 12 ++-- .../Webhooks/Form/GoogleAnalytics.vue | 12 ++-- .../Stations/Webhooks/Form/Mastodon.vue | 57 ++++++++----------- .../Webhooks/Form/MatomoAnalytics.vue | 12 ++-- .../Stations/Webhooks/Form/Telegram.vue | 43 +++++++------- .../Stations/Webhooks/Form/Tunein.vue | 12 ++-- .../Stations/Webhooks/Form/Twitter.vue | 14 ++--- .../Stations/Webhooks/Form/TypeSelect.vue | 21 +++---- frontend/vue/functions/useResettableRef.js | 12 ++++ 56 files changed, 360 insertions(+), 661 deletions(-) delete mode 100644 frontend/vue/components/Form/UseResettableForm.js rename frontend/vue/components/Form/{UseVuelidateOnForm.js => useVuelidateOnForm.js} (63%) create mode 100644 frontend/vue/functions/useResettableRef.js diff --git a/frontend/vue/components/Form/UseResettableForm.js b/frontend/vue/components/Form/UseResettableForm.js deleted file mode 100644 index e6ebc4f3c..000000000 --- a/frontend/vue/components/Form/UseResettableForm.js +++ /dev/null @@ -1,12 +0,0 @@ -import {ref} from "vue"; -import {cloneDeep} from "lodash"; - -export function useResettableForm(blankForm) { - const form = ref(cloneDeep(blankForm)); - - const resetForm = () => { - form.value = cloneDeep(blankForm); - } - - return {form, resetForm}; -} diff --git a/frontend/vue/components/Form/UseVuelidateOnForm.js b/frontend/vue/components/Form/useVuelidateOnForm.js similarity index 63% rename from frontend/vue/components/Form/UseVuelidateOnForm.js rename to frontend/vue/components/Form/useVuelidateOnForm.js index 9dbeb3b3b..c27cac9b9 100644 --- a/frontend/vue/components/Form/UseVuelidateOnForm.js +++ b/frontend/vue/components/Form/useVuelidateOnForm.js @@ -1,14 +1,14 @@ import useVuelidate from "@vuelidate/core"; -import {useResettableForm} from "~/components/Form/UseResettableForm"; +import {useResettableRef} from "~/functions/useResettableRef"; export function useVuelidateOnForm(validations, blankForm, options = {}) { - const {form, resetForm: parentResetForm} = useResettableForm(blankForm); + const {record: form, reset} = useResettableRef(blankForm); const v$ = useVuelidate(validations, form, options); const resetForm = () => { v$.value.$reset(); - parentResetForm(); + reset(); } return { diff --git a/frontend/vue/components/Recover.vue b/frontend/vue/components/Recover.vue index 872eb504c..576ae70b7 100644 --- a/frontend/vue/components/Recover.vue +++ b/frontend/vue/components/Recover.vue @@ -18,7 +18,7 @@
- - {{ $gettext('Recover Account') }} @@ -36,36 +36,24 @@ - diff --git a/frontend/vue/components/Stations/BulkMedia.vue b/frontend/vue/components/Stations/BulkMedia.vue index 3aa0464d4..eda638b55 100644 --- a/frontend/vue/components/Stations/BulkMedia.vue +++ b/frontend/vue/components/Stations/BulkMedia.vue @@ -60,7 +60,7 @@ - +

{{ importResults.message }}

@@ -124,11 +124,6 @@ export default { importResults: {}, }; }, - computed: { - langModalTitle() { - return this.$gettext('Import Results'); - } - }, methods: { doSubmit() { let formData = new FormData(); diff --git a/frontend/vue/components/Stations/Fallback.vue b/frontend/vue/components/Stations/Fallback.vue index b9ef445d3..b6165594b 100644 --- a/frontend/vue/components/Stations/Fallback.vue +++ b/frontend/vue/components/Stations/Fallback.vue @@ -20,7 +20,7 @@ {{ $gettext('Select Custom Fallback File') }} - @@ -50,32 +50,28 @@ - diff --git a/frontend/vue/components/Stations/Help.vue b/frontend/vue/components/Stations/Help.vue index b89b9c741..995868f50 100644 --- a/frontend/vue/components/Stations/Help.vue +++ b/frontend/vue/components/Stations/Help.vue @@ -47,21 +47,19 @@
- diff --git a/frontend/vue/components/Stations/HlsStreams/EditModal.vue b/frontend/vue/components/Stations/HlsStreams/EditModal.vue index 2bf6b7512..738769cd9 100644 --- a/frontend/vue/components/Stations/HlsStreams/EditModal.vue +++ b/frontend/vue/components/Stations/HlsStreams/EditModal.vue @@ -1,35 +1,44 @@ + diff --git a/frontend/vue/components/Stations/Media.vue b/frontend/vue/components/Stations/Media.vue index a162d850f..f1b2a9806 100644 --- a/frontend/vue/components/Stations/Media.vue +++ b/frontend/vue/components/Stations/Media.vue @@ -109,7 +109,7 @@ @@ -117,12 +117,12 @@ @@ -304,20 +304,6 @@ export default { unmounted() { window.removeEventListener('hashchange', this.onHashChange); }, - computed: { - langAlbumArt() { - return this.$gettext('Album Art'); - }, - langRenameButton() { - return this.$gettext('Rename'); - }, - langEditButton() { - return this.$gettext('Edit'); - }, - langPlaylistSelect() { - return this.$gettext('View tracks in playlist'); - }, - }, methods: { formatFileSize(size) { return formatFileSize(size); diff --git a/frontend/vue/components/Stations/Media/Form/AdvancedSettings.vue b/frontend/vue/components/Stations/Media/Form/AdvancedSettings.vue index cbdb82261..c8eccd987 100644 --- a/frontend/vue/components/Stations/Media/Form/AdvancedSettings.vue +++ b/frontend/vue/components/Stations/Media/Form/AdvancedSettings.vue @@ -80,15 +80,11 @@ - diff --git a/frontend/vue/components/Stations/Media/Form/BasicInfo.vue b/frontend/vue/components/Stations/Media/Form/BasicInfo.vue index daac52de0..a68e5dde5 100644 --- a/frontend/vue/components/Stations/Media/Form/BasicInfo.vue +++ b/frontend/vue/components/Stations/Media/Form/BasicInfo.vue @@ -52,14 +52,10 @@ - diff --git a/frontend/vue/components/Stations/Media/Form/CustomFields.vue b/frontend/vue/components/Stations/Media/Form/CustomFields.vue index 55e22ba69..58631606d 100644 --- a/frontend/vue/components/Stations/Media/Form/CustomFields.vue +++ b/frontend/vue/components/Stations/Media/Form/CustomFields.vue @@ -10,15 +10,11 @@ - diff --git a/frontend/vue/components/Stations/Media/Form/Playlists.vue b/frontend/vue/components/Stations/Media/Form/Playlists.vue index 7caa1f550..f58825b79 100644 --- a/frontend/vue/components/Stations/Media/Form/Playlists.vue +++ b/frontend/vue/components/Stations/Media/Form/Playlists.vue @@ -18,26 +18,22 @@ - diff --git a/frontend/vue/components/Stations/Media/NewDirectoryModal.vue b/frontend/vue/components/Stations/Media/NewDirectoryModal.vue index 9dd357b76..bf769dd65 100644 --- a/frontend/vue/components/Stations/Media/NewDirectoryModal.vue +++ b/frontend/vue/components/Stations/Media/NewDirectoryModal.vue @@ -1,5 +1,5 @@ - diff --git a/frontend/vue/functions/useResettableRef.js b/frontend/vue/functions/useResettableRef.js new file mode 100644 index 000000000..98360475a --- /dev/null +++ b/frontend/vue/functions/useResettableRef.js @@ -0,0 +1,12 @@ +import {ref} from "vue"; +import {cloneDeep} from "lodash"; + +export function useResettableRef(original) { + const record = ref(cloneDeep(original)); + + const reset = () => { + record.value = cloneDeep(original); + } + + return {record, reset}; +}