From 26b687160bc263f5867fd18ae60f2541138b0277 Mon Sep 17 00:00:00 2001 From: Claire Date: Tue, 11 Oct 2022 10:17:04 +0200 Subject: Move flavours/glitch/util/initial_state to flavours/glitch/initial_state --- app/javascript/flavours/glitch/initial_state.js | 44 +++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 app/javascript/flavours/glitch/initial_state.js (limited to 'app/javascript/flavours/glitch/initial_state.js') diff --git a/app/javascript/flavours/glitch/initial_state.js b/app/javascript/flavours/glitch/initial_state.js new file mode 100644 index 000000000..99ee6bc69 --- /dev/null +++ b/app/javascript/flavours/glitch/initial_state.js @@ -0,0 +1,44 @@ +const element = document.getElementById('initial-state'); +const initialState = element && function () { + const result = JSON.parse(element.textContent); + try { + result.local_settings = JSON.parse(localStorage.getItem('mastodon-settings')); + } catch (e) { + result.local_settings = {}; + } + return result; +}(); + +const getMeta = (prop) => initialState && initialState.meta && initialState.meta[prop]; + +export const domain = getMeta('domain'); +export const reduceMotion = getMeta('reduce_motion'); +export const autoPlayGif = getMeta('auto_play_gif'); +export const displayMedia = getMeta('display_media') || (getMeta('display_sensitive_media') ? 'show_all' : 'default'); +export const expandSpoilers = getMeta('expand_spoilers'); +export const unfollowModal = getMeta('unfollow_modal'); +export const boostModal = getMeta('boost_modal'); +export const favouriteModal = getMeta('favourite_modal'); +export const deleteModal = getMeta('delete_modal'); +export const me = getMeta('me'); +export const searchEnabled = getMeta('search_enabled'); +export const maxChars = (initialState && initialState.max_toot_chars) || 500; +export const pollLimits = (initialState && initialState.poll_limits); +export const limitedFederationMode = getMeta('limited_federation_mode'); +export const registrationsOpen = getMeta('registrations_open'); +export const repository = getMeta('repository'); +export const source_url = getMeta('source_url'); +export const version = getMeta('version'); +export const mascot = getMeta('mascot'); +export const profile_directory = getMeta('profile_directory'); +export const defaultContentType = getMeta('default_content_type'); +export const forceSingleColumn = !getMeta('advanced_layout'); +export const useBlurhash = getMeta('use_blurhash'); +export const usePendingItems = getMeta('use_pending_items'); +export const useSystemEmojiFont = getMeta('system_emoji_font'); +export const showTrends = getMeta('trends'); +export const title = getMeta('title'); +export const disableSwiping = getMeta('disable_swiping'); +export const languages = initialState && initialState.languages; + +export default initialState; -- cgit From 64342a87b4a5c803198190ba130b83642a5fd0c8 Mon Sep 17 00:00:00 2001 From: Claire Date: Tue, 11 Oct 2022 10:27:14 +0200 Subject: Refactor initial_state to isolate glitch-soc changes --- app/javascript/flavours/glitch/initial_state.js | 29 +++++++++++++------------ 1 file changed, 15 insertions(+), 14 deletions(-) (limited to 'app/javascript/flavours/glitch/initial_state.js') diff --git a/app/javascript/flavours/glitch/initial_state.js b/app/javascript/flavours/glitch/initial_state.js index 99ee6bc69..0f2484ba3 100644 --- a/app/javascript/flavours/glitch/initial_state.js +++ b/app/javascript/flavours/glitch/initial_state.js @@ -1,29 +1,26 @@ const element = document.getElementById('initial-state'); -const initialState = element && function () { - const result = JSON.parse(element.textContent); - try { - result.local_settings = JSON.parse(localStorage.getItem('mastodon-settings')); - } catch (e) { - result.local_settings = {}; - } - return result; -}(); +const initialState = element && JSON.parse(element.textContent); + +// Glitch-soc-specific “local settings” +try { + initialState.local_settings = JSON.parse(localStorage.getItem('mastodon-settings')); +} catch (e) { + initialState.local_settings = {}; +} const getMeta = (prop) => initialState && initialState.meta && initialState.meta[prop]; export const domain = getMeta('domain'); export const reduceMotion = getMeta('reduce_motion'); export const autoPlayGif = getMeta('auto_play_gif'); -export const displayMedia = getMeta('display_media') || (getMeta('display_sensitive_media') ? 'show_all' : 'default'); +export const displayMedia = getMeta('display_media'); export const expandSpoilers = getMeta('expand_spoilers'); export const unfollowModal = getMeta('unfollow_modal'); export const boostModal = getMeta('boost_modal'); -export const favouriteModal = getMeta('favourite_modal'); export const deleteModal = getMeta('delete_modal'); export const me = getMeta('me'); export const searchEnabled = getMeta('search_enabled'); export const maxChars = (initialState && initialState.max_toot_chars) || 500; -export const pollLimits = (initialState && initialState.poll_limits); export const limitedFederationMode = getMeta('limited_federation_mode'); export const registrationsOpen = getMeta('registrations_open'); export const repository = getMeta('repository'); @@ -31,14 +28,18 @@ export const source_url = getMeta('source_url'); export const version = getMeta('version'); export const mascot = getMeta('mascot'); export const profile_directory = getMeta('profile_directory'); -export const defaultContentType = getMeta('default_content_type'); export const forceSingleColumn = !getMeta('advanced_layout'); export const useBlurhash = getMeta('use_blurhash'); export const usePendingItems = getMeta('use_pending_items'); -export const useSystemEmojiFont = getMeta('system_emoji_font'); export const showTrends = getMeta('trends'); export const title = getMeta('title'); export const disableSwiping = getMeta('disable_swiping'); export const languages = initialState && initialState.languages; +// Glitch-soc-specific settings +export const favouriteModal = getMeta('favourite_modal'); +export const pollLimits = (initialState && initialState.poll_limits); +export const defaultContentType = getMeta('default_content_type'); +export const useSystemEmojiFont = getMeta('system_emoji_font'); + export default initialState; -- cgit