From 0eb63de20936a254d6db46f864fea50a7a4486c3 Mon Sep 17 00:00:00 2001 From: Henry Jameson Date: Tue, 4 Aug 2026 00:31:24 +0300 Subject: [PATCH] undefined typeof --- src/boot/after_store.js | 6 +++--- src/components/chat/chat.js | 4 ++-- src/components/color_input/color_input.vue | 2 +- src/components/opacity_input/opacity_input.vue | 2 +- src/components/range_input/range_input.vue | 2 +- src/components/roundness_input/roundness_input.vue | 2 +- src/components/settings_modal/helpers/setting.js | 2 +- .../tabs/old_theme_tab/old_theme_tab.js | 12 ++++++------ src/components/timeline/timeline.js | 4 ++-- src/components/video_attachment/video_attachment.js | 6 +++--- src/services/color_convert/color_convert.js | 2 +- .../entity_normalizer/entity_normalizer.service.js | 2 +- src/services/theme_data/theme_data.service.js | 4 ++-- 13 files changed, 25 insertions(+), 25 deletions(-) diff --git a/src/boot/after_store.js b/src/boot/after_store.js index 4ccfa4d41..5ba5e8d76 100644 --- a/src/boot/after_store.js +++ b/src/boot/after_store.js @@ -409,7 +409,7 @@ const getNodeInfo = async ({ store }) => { useInstanceCapabilitiesStore().set( 'tagPolicyAvailable', - typeof federation.mrf_policies === 'undefined' + federation.mrf_policies === undefined ? false : metadata.federation.mrf_policies.includes('TagPolicy'), ) @@ -421,7 +421,7 @@ const getNodeInfo = async ({ store }) => { useInstanceStore().set({ path: 'federating', value: - typeof federation.enabled === 'undefined' ? true : federation.enabled, + federation.enabled === undefined ? true : federation.enabled, }) const accountActivationRequired = metadata.accountActivationRequired @@ -547,7 +547,7 @@ const afterStoreSetup = async ({ pinia, store, storageError, i18n }) => { const overrides = window.___pleromafe_dev_overrides || {} const server = - typeof overrides.target !== 'undefined' + overrides.target !== undefined ? overrides.target : window.location.origin useInstanceStore().set({ path: 'server', value: server }) diff --git a/src/components/chat/chat.js b/src/components/chat/chat.js index ca7a025ec..6ac51902b 100644 --- a/src/components/chat/chat.js +++ b/src/components/chat/chat.js @@ -59,7 +59,7 @@ const Chat = { }, mounted() { window.addEventListener('scroll', this.handleScroll) - if (typeof document.hidden !== 'undefined') { + if (document.hidden !== undefined) { document.addEventListener( 'visibilitychange', this.handleVisibilityChange, @@ -74,7 +74,7 @@ const Chat = { unmounted() { window.removeEventListener('scroll', this.handleScroll) window.removeEventListener('resize', this.handleResize) - if (typeof document.hidden !== 'undefined') + if (document.hidden !== undefined) document.removeEventListener( 'visibilitychange', this.handleVisibilityChange, diff --git a/src/components/color_input/color_input.vue b/src/components/color_input/color_input.vue index 208bdf2dc..d6667c28f 100644 --- a/src/components/color_input/color_input.vue +++ b/src/components/color_input/color_input.vue @@ -134,7 +134,7 @@ export default { emits: ['update:modelValue'], computed: { present() { - return typeof this.modelValue !== 'undefined' + return this.modelValue !== undefined }, validColor() { return hex2rgb(this.modelValue || this.fallback) diff --git a/src/components/opacity_input/opacity_input.vue b/src/components/opacity_input/opacity_input.vue index 761aeb216..e6b736fa3 100644 --- a/src/components/opacity_input/opacity_input.vue +++ b/src/components/opacity_input/opacity_input.vue @@ -42,7 +42,7 @@ export default { emits: ['update:modelValue'], computed: { present() { - return typeof this.modelValue !== 'undefined' + return this.modelValue !== undefined }, }, } diff --git a/src/components/range_input/range_input.vue b/src/components/range_input/range_input.vue index 91d3dcc3b..40c427784 100644 --- a/src/components/range_input/range_input.vue +++ b/src/components/range_input/range_input.vue @@ -68,7 +68,7 @@ export default { emits: ['update:modelValue'], computed: { present() { - return typeof this.modelValue !== 'undefined' + return this.modelValue !== undefined }, }, } diff --git a/src/components/roundness_input/roundness_input.vue b/src/components/roundness_input/roundness_input.vue index caf21763b..36fa8fd47 100644 --- a/src/components/roundness_input/roundness_input.vue +++ b/src/components/roundness_input/roundness_input.vue @@ -42,7 +42,7 @@ export default { emits: ['update:modelValue'], computed: { present() { - return typeof this.modelValue !== 'undefined' + return this.modelValue !== undefined }, }, } diff --git a/src/components/settings_modal/helpers/setting.js b/src/components/settings_modal/helpers/setting.js index 3b76708fe..c2f5279f6 100644 --- a/src/components/settings_modal/helpers/setting.js +++ b/src/components/settings_modal/helpers/setting.js @@ -159,7 +159,7 @@ export default { return this.source || this.defaultSource }, realDraftMode() { - return typeof this.draftMode === 'undefined' + return this.draftMode === undefined ? this.defaultDraftMode : this.draftMode }, diff --git a/src/components/settings_modal/tabs/old_theme_tab/old_theme_tab.js b/src/components/settings_modal/tabs/old_theme_tab/old_theme_tab.js index 83f993c86..cce4a764f 100644 --- a/src/components/settings_modal/tabs/old_theme_tab/old_theme_tab.js +++ b/src/components/settings_modal/tabs/old_theme_tab/old_theme_tab.js @@ -147,7 +147,7 @@ export default { }) }, mounted() { - if (typeof this.shadowSelected === 'undefined') { + if (this.shadowSelected === undefined) { this.shadowSelected = this.shadowsAvailable[0] } }, @@ -634,15 +634,15 @@ export default { if (input.version) version = input.version // Old v1 naming: fg is text, btn is foreground if ( - typeof colors.text === 'undefined' && - typeof colors.fg !== 'undefined' + colors.text === undefined && + colors.fg !== undefined ) { version = 1 } // New v2 naming: text is text, fg is foreground if ( - typeof colors.text !== 'undefined' && - typeof colors.fg !== 'undefined' + colors.text !== undefined && + colors.fg !== undefined ) { version = 2 } @@ -679,7 +679,7 @@ export default { if (opacity && !this.keepOpacity) { this.clearOpacity() Object.entries(opacity).forEach(([k, v]) => { - if (typeof v === 'undefined' || v === null || Number.isNaN(v)) return + if (v === undefined || v === null || Number.isNaN(v)) return this[k + 'OpacityLocal'] = v }) } diff --git a/src/components/timeline/timeline.js b/src/components/timeline/timeline.js index 50b2acd90..8c5f4f251 100644 --- a/src/components/timeline/timeline.js +++ b/src/components/timeline/timeline.js @@ -154,7 +154,7 @@ const Timeline = { }) }, mounted() { - if (typeof document.hidden !== 'undefined') { + if (document.hidden !== undefined) { document.addEventListener( 'visibilitychange', this.handleVisibilityChange, @@ -168,7 +168,7 @@ const Timeline = { unmounted() { window.removeEventListener('scroll', this.handleScroll) window.removeEventListener('keydown', this.handleShortKey) - if (typeof document.hidden !== 'undefined') + if (document.hidden !== undefined) document.removeEventListener( 'visibilitychange', this.handleVisibilityChange, diff --git a/src/components/video_attachment/video_attachment.js b/src/components/video_attachment/video_attachment.js index 690409169..5e702723d 100644 --- a/src/components/video_attachment/video_attachment.js +++ b/src/components/video_attachment/video_attachment.js @@ -34,15 +34,15 @@ const VideoAttachment = { // If hasAudio is false, we've already marked this video to not have audio, // a video can't gain audio out of nowhere so don't bother checking again. if (!this.hasAudio) return - if (typeof target.webkitAudioDecodedByteCount !== 'undefined') { + if (target.webkitAudioDecodedByteCount !== undefined) { // non-zero if video has audio track if (target.webkitAudioDecodedByteCount > 0) return } - if (typeof target.mozHasAudio !== 'undefined') { + if (target.mozHasAudio !== undefined) { // true if video has audio track if (target.mozHasAudio) return } - if (typeof target.audioTracks !== 'undefined') { + if (target.audioTracks !== undefined) { if (target.audioTracks.length > 0) return } this.hasAudio = false diff --git a/src/services/color_convert/color_convert.js b/src/services/color_convert/color_convert.js index 9840f9726..26f279764 100644 --- a/src/services/color_convert/color_convert.js +++ b/src/services/color_convert/color_convert.js @@ -271,7 +271,7 @@ export const getTextColor = function (bg, text, preserve) { contrast = getContrastRatio(bg, convert(result).rgb) } - const base = typeof text.a !== 'undefined' ? { a: text.a } : {} + const base = text.a !== undefined ? { a: text.a } : {} return Object.assign(convert(result).rgb, base) } diff --git a/src/services/entity_normalizer/entity_normalizer.service.js b/src/services/entity_normalizer/entity_normalizer.service.js index 94a5681be..8721189d1 100644 --- a/src/services/entity_normalizer/entity_normalizer.service.js +++ b/src/services/entity_normalizer/entity_normalizer.service.js @@ -177,7 +177,7 @@ export const parseUser = (data) => { // deactivated was changed to is_active in Pleroma 2.3.0 // so check if is_active is present output.deactivated = - typeof data.pleroma.is_active !== 'undefined' + data.pleroma.is_active !== undefined ? !data.pleroma.is_active // new backend : data.pleroma.deactivated // old backend diff --git a/src/services/theme_data/theme_data.service.js b/src/services/theme_data/theme_data.service.js index 7dcb97fed..201cd9ab4 100644 --- a/src/services/theme_data/theme_data.service.js +++ b/src/services/theme_data/theme_data.service.js @@ -523,7 +523,7 @@ export const generateColors = (themeData) => { (acc, [k, v]) => { if (!v) return acc acc.solid[k] = rgb2hex(v) - acc.complete[k] = typeof v.a === 'undefined' ? rgb2hex(v) : rgba2css(v) + acc.complete[k] = v.a === undefined ? rgb2hex(v) : rgba2css(v) return acc }, { complete: {}, solid: {} }, @@ -545,7 +545,7 @@ export const generateColors = (themeData) => { export const generateRadii = (input) => { let inputRadii = input.radii || {} // v1 -> v2 - if (typeof input.btnRadius !== 'undefined') { + if (input.btnRadius !== undefined) { inputRadii = Object.entries(input) .filter(([k]) => k.endsWith('Radius')) .reduce((acc, e) => {