This repository has been archived on 2020-02-06. You can view files and clone it, but cannot push or open issues/pull-requests.
pleroma/priv/static/static/js/app.670c36c0acc42fadb4fe.js...

1 line
1.4 MiB
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/services/api/api.service.js","webpack:///./src/services/user_profile_link_generator/user_profile_link_generator.js","webpack:///./src/components/timeline/timeline.vue","webpack:///./src/components/user_card/user_card.vue","webpack:///./src/services/color_convert/color_convert.js","webpack:///./src/services/file_type/file_type.service.js","webpack:///./src/components/user_avatar/user_avatar.vue","webpack:///./src/services/style_setter/style_setter.js","webpack:///./src/components/status/status.vue","webpack:///./src/components/notifications/notifications.vue","webpack:///./src/components/basic_user_card/basic_user_card.vue","webpack:///./src/components/public_timeline/public_timeline.js","webpack:///./src/components/timeline/timeline.js","webpack:///./src/components/status/status.js","webpack:///./src/components/attachment/attachment.js","webpack:///./src/components/still-image/still-image.js","webpack:///./src/components/video_attachment/video_attachment.js","webpack:///./src/components/favorite_button/favorite_button.js","webpack:///./src/components/retweet_button/retweet_button.js","webpack:///./src/components/poll/poll.js","webpack:///src/components/timeago/timeago.vue","webpack:///./src/components/extra_buttons/extra_buttons.js","webpack:///./src/components/post_status_form/post_status_form.js","webpack:///./src/components/media_upload/media_upload.js","webpack:///./src/components/scope_selector/scope_selector.js","webpack:///./src/components/emoji-input/emoji-input.js","webpack:///./src/components/poll/poll_form.js","webpack:///./src/components/user_card/user_card.js","webpack:///./src/components/user_avatar/user_avatar.js","webpack:///./src/components/remote_follow/remote_follow.js","webpack:///./src/components/moderation_tools/moderation_tools.js","webpack:///./src/components/dialog_modal/dialog_modal.js","webpack:///./src/components/gallery/gallery.js","webpack:///./src/components/link-preview/link-preview.js","webpack:///./src/components/avatar_list/avatar_list.js","webpack:///./src/components/conversation/conversation.js","webpack:///./src/components/public_and_external_timeline/public_and_external_timeline.js","webpack:///./src/components/friends_timeline/friends_timeline.js","webpack:///./src/components/tag_timeline/tag_timeline.js","webpack:///./src/components/conversation-page/conversation-page.js","webpack:///./src/components/interactions/interactions.js","webpack:///./src/components/notifications/notifications.js","webpack:///./src/components/notification/notification.js","webpack:///./src/components/dm_timeline/dm_timeline.js","webpack:///./src/components/user_profile/user_profile.js","webpack:///./src/components/follow_card/follow_card.js","webpack:///./src/components/basic_user_card/basic_user_card.js","webpack:///src/components/list/list.vue","webpack:///./src/components/settings/settings.js","webpack:///./src/components/style_switcher/style_switcher.js","webpack:///src/components/color_input/color_input.vue","webpack:///src/components/range_input/range_input.vue","webpack:///src/components/opacity_input/opacity_input.vue","webpack:///./src/components/shadow_control/shadow_control.js","webpack:///./src/components/font_control/font_control.js","webpack:///src/components/contrast_ratio/contrast_ratio.vue","webpack:///src/components/export_import/export_import.vue","webpack:///src/components/interface_language_switcher/interface_language_switcher.vue","webpack:///./src/components/registration/registration.js","webpack:///./src/components/user_settings/user_settings.js","webpack:///./src/components/image_cropper/image_cropper.js","webpack:///./src/components/block_card/block_card.js","webpack:///./src/components/mute_card/mute_card.js","webpack:///./src/components/selectable_list/selectable_list.js","webpack:///src/components/checkbox/checkbox.vue","webpack:///src/components/progress_button/progress_button.vue","webpack:///./src/components/autosuggest/autosuggest.js","webpack:///./src/components/importer/importer.js","webpack:///./src/components/exporter/exporter.js","webpack:///./src/components/user_settings/mfa.js","webpack:///./src/components/user_settings/mfa_backup_codes.js","webpack:///./src/components/user_settings/mfa_totp.js","webpack:///./src/components/user_settings/confirm.js","webpack:///./src/components/follow_requests/follow_requests.js","webpack:///./src/components/follow_request_card/follow_request_card.js","webpack:///./src/components/oauth_callback/oauth_callback.js","webpack:///./src/components/user_search/user_search.js","webpack:///./src/components/login_form/login_form.js","webpack:///./src/components/mfa_form/recovery_form.js","webpack:///./src/components/mfa_form/totp_form.js","webpack:///./src/components/chat_panel/chat_panel.js","webpack:///./src/components/who_to_follow/who_to_follow.js","webpack:///./src/components/about/about.js","webpack:///./src/components/instance_specific_panel/instance_specific_panel.js","webpack:///./src/components/features_panel/features_panel.js","webpack:///./src/components/terms_of_service_panel/terms_of_service_panel.js","webpack:///./src/App.js","webpack:///./src/components/user_panel/user_panel.js","webpack:///./src/components/nav_panel/nav_panel.js","webpack:///./src/components/user_finder/user_finder.js","webpack:///./src/components/who_to_follow_panel/who_to_follow_panel.js","webpack:///./src/components/media_modal/media_modal.js","webpack:///./src/components/side_drawer/side_drawer.js","webpack:///./src/components/mobile_post_status_modal/mobile_post_status_modal.js","webpack:///./src/components/mobile_nav/mobile_nav.js","webpack:///./src/components/user_reporting_modal/user_reporting_modal.js","webpack:///./src/services/backend_interactor_service/backend_interactor_service.js","webpack:///./src/components/still-image/still-image.vue","webpack:///./src/components/timeago/timeago.vue","webpack:///./src/components/post_status_form/post_status_form.vue","webpack:///./src/components/conversation/conversation.vue","webpack:///./src/services/notification_utils/notification_utils.js","webpack:///./src/components/follow_card/follow_card.vue","webpack:///./src/components/list/list.vue","webpack:///./src/components/tab_switcher/tab_switcher.js","webpack:///./src/services/new_api/oauth.js","webpack:///./src/components/still-image/still-image.vue?6f45","webpack:///./src/components/video_attachment/video_attachment.vue?f607","webpack:///./src/components/attachment/attachment.vue?75bb","webpack:///./src/components/favorite_button/favorite_button.vue?6fd0","webpack:///./src/components/retweet_button/retweet_button.vue?df1f","webpack:///./src/components/timeago/timeago.vue?3145","webpack:///./src/components/poll/poll.vue?f979","webpack:///./src/components/extra_buttons/extra_buttons.vue?4097","webpack:///./src/components/media_upload/media_upload.vue?4fc5","webpack:///./src/components/scope_selector/scope_selector.vue?764c","webpack:///./src/components/emoji-input/emoji-input.vue?5cb6","webpack:///./src/components/poll/poll_form.vue?2ca1","webpack:///./src/components/post_status_form/post_status_form.vue?caed","webpack:///./src/components/user_avatar/user_avatar.vue?cc8f","webpack:///./src/components/remote_follow/remote_follow.vue?3868","webpack:///./src/components/dialog_modal/dialog_modal.vue?b5b9","webpack:///./src/components/moderation_tools/moderation_tools.vue?3080","webpack:///./src/components/user_card/user_card.vue?2f9f","webpack:///./src/components/gallery/gallery.vue?5a46","webpack:///./src/components/link-preview/link-preview.vue?6467","webpack:///./src/components/avatar_list/avatar_list.vue?464c","webpack:///./src/components/status/status.vue?9da3","webpack:///./src/components/conversation/conversation.vue?25f0","webpack:///./src/components/timeline/timeline.vue?558a","webpack:///./src/components/public_timeline/public_timeline.vue?f4fe","webpack:///./src/components/public_and_external_timeline/public_and_external_timeline.vue?e277","webpack:///./src/components/friends_timeline/friends_timeline.vue?61da","webpack:///./src/components/tag_timeline/tag_timeline.vue?6444","webpack:///./src/components/conversation-page/conversation-page.vue?a5a9","webpack:///./src/components/notification/notification.vue?2dab","webpack:///./src/components/notifications/notifications.vue?d62d","webpack:///./src/components/interactions/interactions.vue?664d","webpack:///./src/components/dm_timeline/dm_timeline.vue?ef8c","webpack:///./src/components/basic_user_card/basic_user_card.vue?3a5e","webpack:///./src/components/follow_card/follow_card.vue?c585","webpack:///./src/components/list/list.vue?611c","webpack:///./src/components/user_profile/user_profile.vue?5b79","webpack:///./src/components/color_input/color_input.vue?40da","webpack:///./src/components/range_input/range_input.vue?b1ce","webpack:///./src/components/opacity_input/opacity_input.vue?465f","webpack:///./src/components/shadow_control/shadow_control.vue?a05e","webpack:///./src/components/font_control/font_control.vue?5889","webpack:///./src/components/contrast_ratio/contrast_ratio.vue?a488","webpack:///./src/components/export_import/export_import.vue?ee43","webpack:///./src/components/style_switcher/style_switcher.vue?b070","webpack:///./src/components/interface_language_switcher/interface_language_switcher.vue?7311","webpack:///./src/components/settings/settings.vue?2f30","webpack:///./src/components/registration/registration.vue?3c38","webpack:///./src/components/image_cropper/image_cropper.vue?6561","webpack:///./src/components/block_card/block_card.vue?91c4","webpack:///./src/components/mute_card/mute_card.vue?bc66","webpack:///./src/components/checkbox/checkbox.vue?0adf","webpack:///./src/components/selectable_list/selectable_list.vue?f0b3","webpack:///./src/components/progress_button/progress_button.vue?5e3a","webpack:///./src/components/autosuggest/autosuggest.vue?02ce","webpack:///./src/components/importer/importer.vue?b956","webpack:///./src/components/exporter/exporter.vue?60fd","webpack:///./src/components/user_settings/mfa_backup_codes.vue?943d","webpack:///./src/components/user_settings/confirm.vue?5248","webpack:///./src/components/user_settings/mfa_totp.vue?5bd9","webpack:///./src/components/user_settings/mfa.vue?2717","webpack:///./src/components/user_settings/user_settings.vue?4dac","webpack:///./src/components/follow_request_card/follow_request_card.vue?05df","webpack:///./src/components/follow_requests/follow_requests.vue?0e47","webpack:///./src/components/oauth_callback/oauth_callback.vue?99e7","webpack:///./src/components/user_search/user_search.vue?3c02","webpack:///./src/components/login_form/login_form.vue?10cb","webpack:///./src/components/mfa_form/recovery_form.vue?51d3","webpack:///./src/components/mfa_form/totp_form.vue?9bd9","webpack:///./src/components/chat_panel/chat_panel.vue?4834","webpack:///./src/components/who_to_follow/who_to_follow.vue?2bb4","webpack:///./src/components/instance_specific_panel/instance_specific_panel.vue?c065","webpack:///./src/components/features_panel/features_panel.vue?955e","webpack:///./src/components/terms_of_service_panel/terms_of_service_panel.vue?d3fd","webpack:///./src/components/about/about.vue?a70d","webpack:///./src/components/user_panel/user_panel.vue?2293","webpack:///./src/components/nav_panel/nav_panel.vue?10bc","webpack:///./src/components/user_finder/user_finder.vue?3c4b","webpack:///./src/components/who_to_follow_panel/who_to_follow_panel.vue?19d0","webpack:///./src/components/media_modal/media_modal.vue?b870","webpack:///./src/components/side_drawer/side_drawer.vue?b5d6","webpack:///./src/components/mobile_post_status_modal/mobile_post_status_modal.vue?d8e3","webpack:///./src/components/mobile_nav/mobile_nav.vue?752c","webpack:///./src/components/user_reporting_modal/user_reporting_modal.vue?731e","webpack:///./src/App.vue?728c","webpack:///./src/services/entity_normalizer/entity_normalizer.service.js","webpack:///./src/services/timeline_fetcher/timeline_fetcher.service.js","webpack:///./src/services/notifications_fetcher/notifications_fetcher.service.js","webpack:///./src/services/new_api/user_search.js","webpack:///./src/i18n/messages.js","webpack:///./src/components/attachment/attachment.vue","webpack:///./src/components/video_attachment/video_attachment.vue","webpack:///./src/services/date_utils/date_utils.js","webpack:///./src/services/status_poster/status_poster.service.js","webpack:///./src/services/file_size_format/file_size_format.js","webpack:///./src/components/scope_selector/scope_selector.vue","webpack:///./src/components/emoji-input/emoji-input.vue","webpack:///./src/components/emoji-input/suggestor.js","webpack:///./src/components/remote_follow/remote_follow.vue","webpack:///./src/components/moderation_tools/moderation_tools.vue","webpack:///./src/services/follow_manipulate/follow_manipulate.js","webpack:///./src/services/user_highlighter/user_highlighter.js","webpack:///./src/services/component_utils/component_utils.js","webpack:///./src/components/style_switcher/style_switcher.vue","webpack:///./src/components/color_input/color_input.vue","webpack:///./src/components/opacity_input/opacity_input.vue","webpack:///./src/components/checkbox/checkbox.vue","webpack:///./src/components/user_settings/confirm.vue","webpack:///./src/components/auth_form/auth_form.js","webpack:///./src/services/new_api/mfa.js","webpack:///./src/components/chat_panel/chat_panel.vue","webpack:///./src/components/instance_specific_panel/instance_specific_panel.vue","webpack:///./src/components/features_panel/features_panel.vue","webpack:///./src/components/side_drawer/side_drawer.vue","webpack:///./src/services/gesture_service/gesture_service.js","webpack:///./src/components/mobile_post_status_modal/mobile_post_status_modal.vue","webpack:///./src/services/window_utils/window_utils.js","webpack:///./src/main.js","webpack:///./src/modules/interface.js","webpack:///./src/modules/instance.js","webpack:///./src/modules/statuses.js","webpack:///./src/services/errors/errors.js","webpack:///./src/modules/users.js","webpack:///./src/services/new_api/utils.js","webpack:///./src/services/push/push.js","webpack:///./src/modules/errors.js","webpack:///./src/modules/api.js","webpack:///./src/modules/config.js","webpack:///./src/modules/chat.js","webpack:///./src/modules/oauth.js","webpack:///./src/modules/auth_flow.js","webpack:///./src/modules/media_viewer.js","webpack:///./src/modules/oauth_tokens.js","webpack:///./src/modules/reports.js","webpack:///./src/modules/polls.js","webpack:///./src/lib/persisted_state.js","webpack:///./src/lib/push_notifications_plugin.js","webpack:///./src/boot/after_store.js","webpack:///./src/boot/routes.js","webpack:///./src/components/public_timeline/public_timeline.vue","webpack:///./src/components/timeline/timeline.vue?f674","webpack:///./src/components/timeline/timeline.vue?d6bb","webpack:///./src/components/status/status.vue?fa33","webpack:///./src/components/status/status.vue?733b","webpack:///./src/components/attachment/attachment.vue?4fa7","webpack:///./src/components/attachment/attachment.vue?5971","webpack:///./src/components/still-image/still-image.vue?21db","webpack:///./src/components/still-image/still-image.vue?da13","webpack:///./src/assets/nsfw.png","webpack:///./src/components/favorite_button/favorite_button.vue","webpack:///./src/components/favorite_button/favorite_button.vue?0184","webpack:///./src/components/favorite_button/favorite_button.vue?9b9b","webpack:///./src/components/retweet_button/retweet_button.vue","webpack:///./src/components/retweet_button/retweet_button.vue?8eee","webpack:///./src/components/retweet_button/retweet_button.vue?ecd9","webpack:///./src/components/poll/poll.vue","webpack:///./src/components/poll/poll.vue?7318","webpack:///./src/components/poll/poll.vue?192f","webpack:///./src/components/extra_buttons/extra_buttons.vue","webpack:///./src/components/extra_buttons/extra_buttons.vue?2134","webpack:///./src/components/extra_buttons/extra_buttons.vue?bef5","webpack:///./src/components/post_status_form/post_status_form.vue?fd6e","webpack:///./src/components/post_status_form/post_status_form.vue?5887","webpack:///./src/components/media_upload/media_upload.vue","webpack:///./src/components/media_upload/media_upload.vue?ac16","webpack:///./src/components/media_upload/media_upload.vue?d1fd","webpack:///./src/components/scope_selector/scope_selector.vue?baf6","webpack:///./src/components/scope_selector/scope_selector.vue?341e","webpack:///./src/components/emoji-input/emoji-input.vue?63fd","webpack:///./src/components/emoji-input/emoji-input.vue?dd1a","webpack:///./src/services/completion/completion.js","webpack:///./src/components/poll/poll_form.vue","webpack:///./src/components/poll/poll_form.vue?43b8","webpack:///./src/components/poll/poll_form.vue?f333","webpack:///./src/components/user_card/user_card.vue?1920","webpack:///./src/components/user_card/user_card.vue?a3c0","webpack:///./src/components/user_avatar/user_avatar.vue?aac8","webpack:///./src/components/user_avatar/user_avatar.vue?6951","webpack:///./src/components/remote_follow/remote_follow.vue?44cd","webpack:///./src/components/remote_follow/remote_follow.vue?2689","webpack:///./src/components/moderation_tools/moderation_tools.vue?3b42","webpack:///./src/components/moderation_tools/moderation_tools.vue?870b","webpack:///./src/components/dialog_modal/dialog_modal.vue","webpack:///./src/components/dialog_modal/dialog_modal.vue?66ca","webpack:///./src/components/dialog_modal/dialog_modal.vue?e653","webpack:///./src/components/gallery/gallery.vue","webpack:///./src/components/gallery/gallery.vue?ea2c","webpack:///./src/components/gallery/gallery.vue?759e","webpack:///./src/components/link-preview/link-preview.vue","webpack:///./src/components/link-preview/link-preview.vue?95df","webpack:///./src/components/link-preview/link-preview.vue?40b7","webpack:///./src/components/avatar_list/avatar_list.vue","webpack:///./src/components/avatar_list/avatar_list.vue?83d0","webpack:///./src/components/avatar_list/avatar_list.vue?4546","webpack:///./src/services/matcher/matcher.service.js","webpack:///./src/components/conversation/conversation.vue?e1e5","webpack:///./src/components/conversation/conversation.vue?e01a","webpack:///./src/components/public_and_external_timeline/public_and_external_timeline.vue","webpack:///./src/components/friends_timeline/friends_timeline.vue","webpack:///./src/components/tag_timeline/tag_timeline.vue","webpack:///./src/components/conversation-page/conversation-page.vue","webpack:///./src/components/interactions/interactions.vue","webpack:///./src/components/notifications/notifications.scss?c04f","webpack:///./src/components/notifications/notifications.scss","webpack:///./src/components/notification/notification.vue","webpack:///./src/components/dm_timeline/dm_timeline.vue","webpack:///./src/components/user_profile/user_profile.vue","webpack:///./src/components/user_profile/user_profile.vue?7fb4","webpack:///./src/components/user_profile/user_profile.vue?899c","webpack:///./src/components/follow_card/follow_card.vue?5688","webpack:///./src/components/follow_card/follow_card.vue?ad43","webpack:///./src/components/basic_user_card/basic_user_card.vue?ba41","webpack:///./src/components/basic_user_card/basic_user_card.vue?0481","webpack:///./src/components/list/list.vue?17ca","webpack:///./src/components/list/list.vue?e2c8","webpack:///./src/hocs/with_load_more/with_load_more.js","webpack:///./src/components/settings/settings.vue","webpack:///./src/components/style_switcher/style_switcher.scss?411b","webpack:///./src/components/style_switcher/style_switcher.scss","webpack:///./src/components/color_input/color_input.vue?40c0","webpack:///./src/components/color_input/color_input.vue?7583","webpack:///./src/components/range_input/range_input.vue","webpack:///./src/components/shadow_control/shadow_control.vue","webpack:///./src/components/shadow_control/shadow_control.vue?bfd4","webpack:///./src/components/shadow_control/shadow_control.vue?78ef","webpack:///./src/components/font_control/font_control.vue","webpack:///./src/components/font_control/font_control.vue?5f33","webpack:///./src/components/font_control/font_control.vue?bef4","webpack:///./src/components/contrast_ratio/contrast_ratio.vue","webpack:///./src/components/contrast_ratio/contrast_ratio.vue?a340","webpack:///./src/components/contrast_ratio/contrast_ratio.vue?32fa","webpack:///./src/components/export_import/export_import.vue","webpack:///./src/components/export_import/export_import.vue?5952","webpack:///./src/components/export_import/export_import.vue?aed6","webpack:///./src/components/interface_language_switcher/interface_language_switcher.vue","webpack:///./src/services/version/version.service.js","webpack:///./src/components/registration/registration.vue","webpack:///./src/components/registration/registration.vue?d518","webpack:///./src/components/registration/registration.vue?fd73","webpack:///./src/components/user_settings/user_settings.vue","webpack:///./src/components/user_settings/user_settings.vue?1522","webpack:///./src/components/user_settings/user_settings.vue?6575","webpack:///./src/components/image_cropper/image_cropper.vue","webpack:///./src/components/image_cropper/image_cropper.vue?f169","webpack:///./src/components/image_cropper/image_cropper.vue?6235","webpack:///./src/components/block_card/block_card.vue","webpack:///./src/components/block_card/block_card.vue?7ad7","webpack:///./src/components/block_card/block_card.vue?ddc8","webpack:///./src/components/mute_card/mute_card.vue","webpack:///./src/components/mute_card/mute_card.vue?c72f","webpack:///./src/components/mute_card/mute_card.vue?1268","webpack:///./src/components/selectable_list/selectable_list.vue","webpack:///./src/components/selectable_list/selectable_list.vue?a6e3","webpack:///./src/components/selectable_list/selectable_list.vue?c2f8","webpack:///./src/components/checkbox/checkbox.vue?3599","webpack:///./src/components/checkbox/checkbox.vue?bf55","webpack:///./src/components/progress_button/progress_button.vue","webpack:///./src/components/autosuggest/autosuggest.vue","webpack:///./src/components/autosuggest/autosuggest.vue?9908","webpack:///./src/components/autosuggest/autosuggest.vue?9383","webpack:///./src/components/importer/importer.vue","webpack:///./src/components/importer/importer.vue?7798","webpack:///./src/components/importer/importer.vue?6af6","webpack:///./src/components/exporter/exporter.vue","webpack:///./src/components/exporter/exporter.vue?dea3","webpack:///./src/components/exporter/exporter.vue?cc2b","webpack:///./src/hocs/with_subscription/with_subscription.js","webpack:///./src/components/user_settings/mfa.vue","webpack:///./src/components/user_settings/mfa.vue?6a62","webpack:///./src/components/user_settings/mfa.vue?64d1","webpack:///./src/components/user_settings/mfa_backup_codes.vue","webpack:///./src/components/user_settings/mfa_backup_codes.vue?922c","webpack:///./src/components/user_settings/mfa_backup_codes.vue?4206","webpack:///./src/components/user_settings/mfa_totp.vue","webpack:///./src/components/follow_requests/follow_requests.vue","webpack:///./src/components/follow_request_card/follow_request_card.vue","webpack:///./src/components/follow_request_card/follow_request_card.vue?c9e7","webpack:///./src/components/follow_request_card/follow_request_card.vue?b0bb","webpack:///./src/components/oauth_callback/oauth_callback.vue","webpack:///./src/components/user_search/user_search.vue","webpack:///./src/components/user_search/user_search.vue?cc34","webpack:///./src/components/user_search/user_search.vue?e47e","webpack:///./src/components/login_form/login_form.vue","webpack:///./src/components/login_form/login_form.vue?99e8","webpack:///./src/components/login_form/login_form.vue?9c6d","webpack:///./src/components/mfa_form/recovery_form.vue","webpack:///./src/components/mfa_form/totp_form.vue","webpack:///./src/components/chat_panel/chat_panel.vue?9dd9","webpack:///./src/components/chat_panel/chat_panel.vue?d094","webpack:///./src/components/who_to_follow/who_to_follow.vue","webpack:///./src/components/who_to_follow/who_to_follow.vue?6f47","webpack:///./src/components/who_to_follow/who_to_follow.vue?4eb6","webpack:///./src/components/about/about.vue","webpack:///./src/components/about/about.vue?47a2","webpack:///./src/components/about/about.vue?7cdd","webpack:///./src/components/instance_specific_panel/instance_specific_panel.vue?8aef","webpack:///./src/components/instance_specific_panel/instance_specific_panel.vue?6a74","webpack:///./src/components/features_panel/features_panel.vue?b8ab","webpack:///./src/components/features_panel/features_panel.vue?867d","webpack:///./src/components/terms_of_service_panel/terms_of_service_panel.vue","webpack:///./src/components/terms_of_service_panel/terms_of_service_panel.vue?7e97","webpack:///./src/components/terms_of_service_panel/terms_of_service_panel.vue?7643","webpack:///./src/App.vue","webpack:///./src/App.scss?b70d","webpack:///./src/App.scss","webpack:///./src/components/user_panel/user_panel.vue","webpack:///./src/components/user_panel/user_panel.vue?e12b","webpack:///./src/components/user_panel/user_panel.vue?63b4","webpack:///./src/components/nav_panel/nav_panel.vue","webpack:///./src/components/nav_panel/nav_panel.vue?7be9","webpack:///./src/components/nav_panel/nav_panel.vue?be5f","webpack:///./src/services/follow_request_fetcher/follow_request_fetcher.service.js","webpack:///./src/components/user_finder/user_finder.vue","webpack:///./src/components/user_finder/user_finder.vue?eb20","webpack:///./src/components/user_finder/user_finder.vue?5f70","webpack:///./src/components/who_to_follow_panel/who_to_follow_panel.vue","webpack:///./src/components/who_to_follow_panel/who_to_follow_panel.vue?2f6b","webpack:///./src/components/who_to_follow_panel/who_to_follow_panel.vue?1274","webpack:///./src/components/media_modal/media_modal.vue","webpack:///./src/components/media_modal/media_modal.vue?2930","webpack:///./src/components/media_modal/media_modal.vue?1d79","webpack:///./src/components/side_drawer/side_drawer.vue?472d","webpack:///./src/components/side_drawer/side_drawer.vue?fcf9","webpack:///./src/components/mobile_post_status_modal/mobile_post_status_modal.vue?8b26","webpack:///./src/components/mobile_post_status_modal/mobile_post_status_modal.vue?d990","webpack:///./src/components/mobile_nav/mobile_nav.vue","webpack:///./src/components/mobile_nav/mobile_nav.vue?46cb","webpack:///./src/components/mobile_nav/mobile_nav.vue?9a0e","webpack:///./src/components/user_reporting_modal/user_reporting_modal.vue","webpack:///./src/components/user_reporting_modal/user_reporting_modal.vue?7889","webpack:///./src/components/user_reporting_modal/user_reporting_modal.vue?1af4","webpack:///./src/components/style_switcher/preview.vue?231f","webpack:///./src/components/style_switcher/preview.vue"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","installedChunks","push","Object","prototype","hasOwnProperty","call","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","0","exports","module","l","m","c","d","name","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","p","jsonpArray","window","oldJsonpFunction","slice","_entity_normalizerService","_errors","PERMISSION_GROUP_URL","screenName","right","MASTODON_FAVORITE_URL","id","MASTODON_UNFAVORITE_URL","MASTODON_RETWEET_URL","MASTODON_UNRETWEET_URL","MASTODON_USER_TIMELINE_URL","MASTODON_TAG_TIMELINE_URL","tag","MASTODON_MUTE_USER_URL","MASTODON_UNMUTE_USER_URL","MASTODON_STATUS_FAVORITEDBY_URL","MASTODON_STATUS_REBLOGGEDBY_URL","MASTODON_PIN_OWN_STATUS","MASTODON_UNPIN_OWN_STATUS","oldfetch","fetch","url","options","fullUrl","credentials","promisedRequest","_ref","method","payload","_ref$headers","headers","undefined","Accept","Content-Type","body","_stringify2","default","_extends3","authHeaders","then","response","_promise2","resolve","reject","json","ok","StatusCodeError","status","accessToken","Authorization","fetchFriends","_ref21","maxId","sinceId","_ref21$limit","limit","MASTODON_FOLLOWING_URL","args","filter","_","join","map","parseUser","apiService","verifyCredentials","user","error","fetchTimeline","_ref35","timeline","_ref35$since","since","_ref35$until","until","_ref35$userId","userId","_ref35$tag","_ref35$withMuted","withMuted","isNotifications","params","public","friends","dms","notifications","publicAndExternal","media","favorites","queryString","_map3","param","Error","parseNotification","parseStatus","fetchPinnedStatuses","_ref36","fetchConversation","_ref26","urlContext","MASTODON_STATUS_CONTEXT_URL","_ref27","ancestors","descendants","fetchStatus","_ref28","MASTODON_STATUS_URL","exportFriends","_ref22","_ref23","_asyncToGenerator3","_regenerator2","mark","_callee","more","users","wrap","_context","prev","next","_last3","sent","_concat3","t0","stop","_x","_x2","this","arguments","fetchFollowers","_ref24","_ref24$limit","MASTODON_FOLLOWERS_URL","followUser","_ref11","MASTODON_FOLLOW_URL","unfollowUser","_ref12","MASTODON_UNFOLLOW_URL","pinOwnStatus","_ref13","unpinOwnStatus","_ref14","blockUser","_ref15","MASTODON_BLOCK_USER_URL","unblockUser","_ref16","MASTODON_UNBLOCK_USER_URL","fetchUser","_ref19","MASTODON_USER_URL","fetchUserRelationship","_ref20","MASTODON_USER_RELATIONSHIPS_URL","favorite","_ref37","unfavorite","_ref38","retweet","_ref39","unretweet","_ref40","postStatus","_ref41","spoilerText","visibility","sensitive","poll","_ref41$mediaIds","mediaIds","inReplyToStatusId","contentType","form","FormData","pollOptions","append","forEach","val","some","option","normalizedPoll","expires_in","expiresIn","multiple","_keys2","deleteStatus","_ref42","MASTODON_DELETE_URL","uploadMedia","_ref43","formData","parseAttachment","fetchMutes","_ref53","muteUser","_ref54","unmuteUser","_ref55","fetchBlocks","_ref56","fetchOAuthTokens","_ref57","revokeOAuthToken","_ref58","tagUser","_ref29","nicknames","_objectWithoutProperties3","screen_name","tags","untagUser","_ref30","deleteUser","_ref34","ADMIN_USERS_URL","addRight","_ref31","deleteRight","_ref32","setActivationStatus","_ref33","ACTIVATION_STATUS_URL","register","_ref7","nickname","rest","locale","agreement","_ref8","_ref9","_slicedToArray3","getCaptcha","resp","updateAvatar","_ref3","avatar","updateBg","_ref4","background","updateProfile","_ref6","updateBanner","_ref5","banner","externalProfile","_ref10","profileUrl","EXTERNAL_PROFILE_URL","importBlocks","_ref44","file","importFollows","_ref45","deleteAccount","_ref46","password","changePassword","_ref47","newPassword","newPasswordConfirmation","settingsMFA","_ref48","mfaDisableOTP","_ref49","generateMfaBackupCodes","_ref52","mfaSetupOTP","_ref51","mfaConfirmOTP","_ref50","token","fetchFollowRequests","_ref25","approveUser","_ref17","APPROVE_USER_URL","denyUser","_ref18","DENY_USER_URL","suggestions","_ref59","markNotificationsAsSeen","_ref60","vote","_ref61","pollId","choices","encodeURIComponent","fetchPoll","_ref62","fetchFavoritedByUsers","_ref63","fetchRebloggedByUsers","_ref64","reportUser","_ref65","statusIds","comment","forward","account_id","status_ids","updateNotificationSettings","_ref2","settings","_each3","isExternal","includes","restrictedNicknames","complicated","_includes3","__webpack_exports__","_babel_loader_timeline_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_timeline_js__WEBPACK_IMPORTED_MODULE_0___default","__WEBPACK_IMPORT_KEY__","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_1800e336_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_timeline_vue__WEBPACK_IMPORTED_MODULE_1__","_node_modules_vue_loader_lib_runtime_component_normalizer__WEBPACK_IMPORTED_MODULE_2__","__vue_styles__","context","Component","a","_babel_loader_user_card_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_user_card_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_972257b2_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_user_card_vue__WEBPACK_IMPORTED_MODULE_1__","srgbToLinear","srgb","split","reduce","acc","bit","Math","pow","c2linear","relativeLuminance","_srgbToLinear","g","b","rgb2hex","_typeof3","_r","_map2","_map5","ceil","toString","hex2rgb","hex","exec","parseInt","mixrgb","k","invert","rgb","getContrastRatio","la","lb","alphaBlend","fg","fga","bg","fileType","mimetype","match","fileTypeService","fileMatchesSomeType","types","type","_babel_loader_user_avatar_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_user_avatar_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_60cb9afa_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_user_avatar_vue__WEBPACK_IMPORTED_MODULE_1__","_chromatism","_color_convert","rgb2rgba","rgba","getTextColor","text","preserve","bgIsLight","convert","hsl","textIsLight","base","_assign2","invertLightness","contrastRatio","applyTheme","input","commit","_generatePreset","generatePreset","rules","theme","head","document","style","display","styleEl","createElement","appendChild","styleSheet","sheet","insertRule","radii","colors","shadows","fonts","getCssShadow","usesDropShadow","inset","shad","x","y","blur","spread","concat","getCssColor","color","alpha","getCssShadowFilter","Number","startsWith","generateColors","opacity","alert","faint","_entries2","v","col","mod","lightText","brightness","link","lightBg","fgText","fgLink","border","btn","btnText","inputText","panel","panelText","panelLink","panelFaint","topBar","topBarText","topBarLink","faintLink","linkBg","icon","cBlue","cRed","cGreen","cOrange","alertError","alertErrorText","alertErrorPanelText","badgeNotification","badgeNotificationText","console","htmlColors","solid","complete","generateRadii","inputRadii","btnRadius","endsWith","e","checkbox","avatarAlt","tooltip","attachment","generateFonts","interface","family","post","postCode","generateShadows","top","shadow","buttonInsetFakeBorders","inputInsetFakeBorders","hoverGlow","popup","avatarStatus","panelHeader","button","buttonHover","buttonPressed","composePreset","getThemes","themes","all","catch","promises","setStyle","href","cssEl","setAttribute","addEventListener","baseEl","_times3","toUpperCase","getComputedStyle","getPropertyValue","removeChild","setPreset","isV1","Array","isArray","bgRgb","fgRgb","textRgb","linkRgb","cRedRgb","cGreenRgb","cBlueRgb","cOrangeRgb","themeLoaded","_babel_loader_status_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_status_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_15f4f97e_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_status_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_notifications_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_notifications_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_168f6ab6_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_notifications_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_basic_user_card_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_basic_user_card_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_ce0f370a_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_basic_user_card_vue__WEBPACK_IMPORTED_MODULE_1__","_timeline","PublicTimeline","components","Timeline","computed","$store","state","statuses","timelines","created","dispatch","destroyed","props","paused","unfocused","bottomedOut","timelineError","newStatusCount","newStatusCountStr","flushMarker","classes","root","embedded","header","footer","Status","Conversation","store","currentUser","showImmediately","visibleStatuses","scrollLoad","api","fetchers","timelineName","timelineFetcher","fetchAndUpdate","mounted","hidden","handleVisibilityChange","handleShortKey","removeEventListener","methods","target","tagName","toLowerCase","showNewStatuses","fetchOlderStatuses","_throttle3","_this","older","bodyBRect","getBoundingClientRect","height","max","loading","config","autoLoad","$el","offsetHeight","innerHeight","pageYOffset","watch","count","streaming","doc","documentElement","scrollTop","clientTop","pauseOnUnfocused","_user_highlighter","_matcherService","replying","unmuted","userExpanded","preview","showPreview","showingTall","inConversation","focused","showingLongSubject","expandingSubject","collapseMessageWithSubject","instance","betterShadow","browserSupport","cssFilter","localCollapseSubjectDefault","muteWords","repeaterClass","statusoid","highlightClass","userClass","retweeted_status","deleted","repeaterStyle","highlight","highlightStyle","userStyle","noHeading","hideAttachments","hideAttachmentsInConv","userProfileLink","generateUserProfileLink","replyProfileLink","isReply","in_reply_to_user_id","replyToName","retweeter","retweeterHtml","name_html","retweeterProfileLink","statusFromGlobalRepository","allStatusesObject","loggedIn","muteWordHits","statusText","_filter3","muteWord","muted","hideFilteredStatuses","hideStatus","hideReply","isFocused","tallStatus","statusnet_html","longSubject","summary","in_reply_to_status_id","in_reply_to_screen_name","getters","findUser","replyVisibility","checkFollowing","attentions","following","hideSubjectStatus","hideTallStatus","showingMore","nsfwClickthrough","nsfw","replySubject","decodedSummary","_unescape3","behavior","subjectLineBehavior","startsWithRe","attachmentSize","attachments","maxThumbnails","compact","galleryTypes","playVideosInModal","galleryAttachments","nonGalleryAttachments","_this2","contentHtml","summary_html","combinedFavsAndRepeatsUsers","combinedUsers","favoritedBy","rebloggedBy","_uniqBy3","ownStatus","tagObj","Attachment","FavoriteButton","RetweetButton","ExtraButtons","PostStatusForm","Poll","UserCard","UserAvatar","Gallery","LinkPreview","AvatarList","Timeago","visibilityIcon","showError","clearError","linkClicked","event","parentNode","className","attn","find","mentionMatchesUrl","stopPropagation","preventDefault","$router","extractTagFromUrl","generateTagLink","open","toggleReplying","gotoOriginal","$emit","toggleExpanded","toggleMute","toggleUserExpanded","toggleShowMore","replyEnter","_this3","targetId","allStatuses","_find3","backendInteractor","replyLeave","_user_profile_link_generator2","setMedia","_this4","rect","scrollBy","bottom","filters","capitalize","str","charAt","nsfwImage","nsfwCensorImage","hideNsfwLocal","hideNsfw","preloadImage","img","modalOpen","showHidden","StillImage","VideoAttachment","usePlaceHolder","size","referrerpolicy","mediaProxyAvailable","isEmpty","oembed","isSmall","fullwidth","openModal","modalTypes","toggleHidden","useOneClickNsfw","onload","src","stopGifs","animated","onLoad","canvas","$refs","width","naturalWidth","naturalHeight","getContext","drawImage","onError","imageLoadError","loopVideo","onVideoDataLoad","srcElement","webkitAudioDecodedByteCount","loopVideoSilentOnly","mozHasAudio","audioTracks","hidePostStatsLocal","hidePostStats","favorited","setTimeout","icon-star-empty","icon-star","animate-spin","repeated","retweeted","retweeted-empty","polls","pollsObject","basePoll","expiresAt","expires_at","expired","showResults","voted","totalVotesCount","votes_count","containerClass","choiceIndices","entry","index","isDisabled","noChoice","percentageForOption","round","resultTitle","$t","statusId","activateOption","allElements","querySelectorAll","clickedElement","querySelector","checked","_forEach3","element","optionId","DateUtils","relativeTime","num","interval","refreshRelativeTimeObject","clearTimeout","localeDateString","time","Date","parse","toLocaleString","nowThreshold","longFormat","relativeTimeShort","autoUpdate","_popperJs","Popper","showDropDown","showPopper","refreshPopper","confirm","toggleMenu","pinStatus","err","unpinStatus","canDelete","rights","moderator","admin","canPin","enabled","MediaUpload","EmojiInput","PollForm","ScopeSelector","resize","textarea","textLength","setSelectionRange","replyTo","focus","$route","query","message","scopeCopy","allAttentions","unshift","_reject3","mentions","attention","buildMentionsString","repliedUser","scope","copyMessageScope","default_scope","postContentType","dropFiles","submitDisabled","posting","highlighted","newStatus","subject","files","caret","pollFormVisible","userDefaultScope","showAllScopes","minimalScopesMode","emojiUserSuggestor","_suggestor2","emoji","_toConsumableArray3","customEmoji","emojiSuggestor","statusLength","spoilerTextLength","statusLengthLimit","textlimit","hasStatusLengthLimit","charactersLeft","isOverLengthLimit","alwaysShowSubject","alwaysShowSubjectInput","postFormats","safeDMEnabled","safeDM","pollsAvailable","pollLimits","max_options","hideScopeNotice","pollContentError","statusPoster","mediaUpload","clearFile","clearPollForm","el","addMediaFile","fileInfo","enableSubmit","removeMediaFile","indexOf","uploadFailed","errString","templateArgs","disableSubmit","paste","clipboardData","fileDrop","dataTransfer","fileDrag","dropEffect","Element","topPaddingStr","bottomPaddingStr","vertPadding","substr","scrollHeight","changeVis","togglePollForm","setPoll","pollForm","clear","dismissScopeNotice","uploading","uploadReady","uploadFile","self","uploadlimit","filesize","fileSizeFormatService","fileSizeFormat","allowedsize","filesizeunit","unit","allowedsizeunit","statusPosterService","fileData","contains","$nextTick","change","fileInfos","currentScope","initialScope","showNothing","showPublic","showUnlisted","showPrivate","showDirect","originalScope","shouldShow","css","selected","unlisted","private","direct","showAll","userDefault","onScopeChange","suggest","required","Function","String","blurTimeout","firstchar","textAtCaret","matchedSuggestions","_take3","imageUrl","showPopup","wordAtCaret","word","Completion","wordAtPosition","slots","$slots","slot","elm","onBlur","onFocus","onPaste","onKeyUp","onKeyDown","onTransition","unmounted","replace","replacement","newValue","replaceWord","replaceText","suggestion","len","position","start","cycleBackward","cycleForward","setCaret","onClick","ctrlKey","shiftKey","onInput","selectionStart","_input$elm","offsetTop","pollType","expiryAmount","expiryUnit","maxOptions","maxLength","max_option_chars","expiryUnits","expiry","convertExpiryFromUnit","max_expiration","minExpirationInCurrentUnit","convertExpiryToUnit","min_expiration","maxExpirationInCurrentUnit","floor","nextOption","addOption","deleteOption","amount","MINUTE","HOUR","DAY","expiryAmountChange","min","updatePollToParent","_uniq3","_follow_manipulate","followRequestInProgress","followRequestSent","hideUserStatsLocal","hideUserStats","user-card-rounded-t","rounded","user-card-rounded","user-card-bordered","bordered","customTheme","tintColor","gradient","hideBio","backgroundColor","backgroundImage","cover_photo","isOtherUser","subscribeUrl","serverUrl","URL","statusnet_profile_url","protocol","host","dailyAvg","days","created_at","statuses_count","userHighlightType","set","userHighlightColor","visibleRole","validRole","roleTitle","RemoteFollow","ModerationTools","requestFollow","requestUnfollow","setProfileView","switcher","_stillImage","showPlaceholder","imgSrc","FORCE_NSFW","STRIP_MEDIA","FORCE_UNLISTED","DISABLE_REMOTE_SUBSCRIPTION","DISABLE_ANY_SUBSCRIPTION","SANDBOX","QUARANTINE","showDeleteUserDialog","DialogModal","tagsSet","_set2","hasTagPolicy","tagPolicyAvailable","hasTag","has","toggleTag","toggleRight","toggleActivationStatus","deactivated","deleteUserDialog","show","isProfile","isTargetUser","history","back","darkOverlay","Boolean","onCancel","rows","_chunk3","lastAttachment","allButLastRow","_dropRight3","rowHeight","itemsPerRow","useContainFit","useImage","card","image","useDescription","description","test","slicedUsers","sortById","idA","idB","seqA","seqB","isSeqA","_isNan2","isSeqB","conversation","expanded","isPage","conversationId","statusnet_conversation_id","isExpanded","_clone3","conversationsObject","statusIndex","_findIndex3","sort","sortAndFilterConversation","replies","_reduce3","irid","setHighlight","getReplies","getHighlight","PublicAndExternalTimeline","FriendsTimeline","TagTimeline","_conversation","conversationPage","_notifications","tabModeDict","likes+repeats","follows","Interactions","filterMode","onModeSwitch","dataset","Notifications","_notification_utils","minimalMode","mainClass","notificationsFromStore","unseenNotifications","unseenNotificationsFromStore","visibleNotifications","visibleNotificationsFromStore","unseenCount","Notification","markAsSeen","fetchOlderNotifications","notificationsFetcher","notifs","getUser","notification","usersObject","from_profile","userInStore","DMs","FollowerList","_with_load_more2","select","_get2","destroy","childPropName","additionalPropNames","List","FriendList","UserProfile","routeParams","load","cleanUp","isUs","followsTabVisible","hide_follows","followersTabVisible","hide_followers","userNameOrId","fetchTimelines","reason","errorMessage","$route.params.id","newVal","$route.params.name","tabSwitcher","activateTab","FollowCard","inProgress","requestSent","BasicUserCard","isMe","items","getKey","item","_version","hideAttachmentsLocal","hideAttachmentsInConvLocal","hideISPLocal","hideISP","hidePostStatsDefault","hideUserStatsDefault","hideFilteredStatusesLocal","hideFilteredStatusesDefault","notificationVisibilityLocal","notificationVisibility","replyVisibilityLocal","loopVideoLocal","muteWordsString","autoLoadLocal","streamingLocal","pauseOnUnfocusedLocal","hoverPreviewLocal","hoverPreview","autohideFloatingPostButtonLocal","autohideFloatingPostButton","hideMutedPostsLocal","hideMutedPosts","hideMutedPostsDefault","collapseMessageWithSubjectLocal","collapseMessageWithSubjectDefault","subjectLineBehaviorLocal","subjectLineBehaviorDefault","postContentTypeLocal","postContentTypeDefault","alwaysShowSubjectInputLocal","alwaysShowSubjectInputDefault","scopeCopyLocal","scopeCopyDefault","minimalScopesModeLocal","minimalScopesModeDefault","webPushNotificationsLocal","webPushNotifications","loopVideoSilentOnlyLocal","loopVideosSilentOnly","loopSilentAvailable","_getOwnPropertyDescriptor2","HTMLVideoElement","HTMLMediaElement","backendVersion","frontendVersion","TabSwitcher","StyleSwitcher","InterfaceLanguageSwitcher","currentSaveStateNotice","instanceSpecificPanelPresent","showInstanceSpecificPanel","frontendVersionLink","backendVersionLink","extractCommit","notificationVisibilityLocal.likes","notificationVisibilityLocal.follows","notificationVisibilityLocal.repeats","notificationVisibilityLocal.mentions","_trim3","_vue","_style_setter","v1OnlyNames","availableStyles","previewShadows","previewColors","previewRadii","previewFonts","shadowsInvalid","colorsInvalid","radiiInvalid","keepColor","keepShadows","keepOpacity","keepRoundness","keepFonts","textColorLocal","linkColorLocal","bgColorLocal","bgOpacityLocal","fgColorLocal","fgTextColorLocal","fgLinkColorLocal","btnColorLocal","btnTextColorLocal","btnOpacityLocal","inputColorLocal","inputTextColorLocal","inputOpacityLocal","panelColorLocal","panelTextColorLocal","panelLinkColorLocal","panelFaintColorLocal","panelOpacityLocal","topBarColorLocal","topBarTextColorLocal","topBarLinkColorLocal","alertErrorColorLocal","badgeOpacityLocal","badgeNotificationColorLocal","borderColorLocal","borderOpacityLocal","faintColorLocal","faintOpacityLocal","faintLinkColorLocal","cRedColorLocal","cBlueColorLocal","cGreenColorLocal","cOrangeColorLocal","shadowSelected","shadowsLocal","fontsLocal","btnRadiusLocal","inputRadiusLocal","checkboxRadiusLocal","panelRadiusLocal","avatarRadiusLocal","avatarAltRadiusLocal","attachmentRadiusLocal","tooltipRadiusLocal","themesComplete","normalizeLocalState","shadowsAvailable","selectedVersion","currentColors","currentOpacity","topBarOpacityLocal","currentRadii","previewTheme","previewContrast","fgs","red","green","blue","orange","bgs","ratios","bgText","bgLink","bgRed","bgGreen","bgBlue","bgOrange","tintText","ratio","toPrecision","aa","aaa","laa","laaa","previewRules","_values2","currentShadowOverriden","currentShadow","currentShadowFallback","delete","themeValid","exportedTheme","saveEverything","_pleroma_theme_version","ColorInput","OpacityInput","RangeInput","ContrastRatio","ShadowControl","FontControl","Preview","ExportImport","setCustomTheme","onImport","parsed","importValidator","version","clearAll","clearV1","$data","clearRoundness","clearOpacity","clearShadows","clearFonts","keys","_set3","add","warn","handler","deep","fontsInvalid","present","selectedId","cValue","fallback","del","moveUp","movable","moveDn","beforeUpdate","ready","moveUpValid","moveDnValid","usingFallback","boxShadow","lValue","availableOptions","noInherit","dValue","isCustom","preset","hint","levelVal","contrast","level","hint_18pt","importFailed","exportData","stringified","exportObject","btoa","click","importData","filePicker","reader","FileReader","JSON","validator","readAsText","languageCodes","_messages2","languageNames","getLanguageName","language","interfaceLanguage","$i18n","code","ja","ja_pedantic","zh","_iso2","getName","_vuelidate","_validators","_vuex","registration","mixins","validationMixin","email","fullname","username","captcha","validations","sameAsPassword","sameAs","registrationOpen","signedIn","setCaptcha","bioPlaceholder","mapState","isPending","signUpPending","serverValidationErrors","signUpErrors","termsOfService","tos","mapActions","submit","captcha_solution","solution","captcha_token","captcha_answer_data","answer_data","$v","$touch","$invalid","signUp","cpt","BlockList","_with_subscription2","SelectableList","MuteList","UserSettings","newName","newBio","_unescape2","newLocked","locked","newNoRichText","no_rich_text","newDefaultScope","hideFollows","hideFollowers","showRole","show_role","role","pickAvatarBtnVisible","bannerUploading","backgroundUploading","bannerPreview","backgroundPreview","bannerUploadError","backgroundUploadError","deletingAccount","deleteAccountConfirmPasswordInput","deleteAccountError","changePasswordInputs","changedPassword","changePasswordError","activeTab","notificationSettings","notification_settings","ImageCropper","Autosuggest","BlockCard","MuteCard","ProgressButton","Importer","Exporter","Mfa","pleromaBackend","vis","oauthTokens","tokens","oauthToken","appName","app_name","validUntil","valid_until","toLocaleDateString","note","display_name","readAsDataURL","submitAvatar","cropper","that","getCroppedCanvas","toBlob","clearUploadError","submitBanner","submitBg","generateExportableUsersContent","is_local","location","hostname","getFollowsContent","getBlocksContent","confirmDelete","_this5","res","_this6","logout","tabName","revokeToken","filterUnblockedUsers","userIds","_this7","_reject2","statusnet_blocking","filterUnMutedUsers","_this8","queryUserIds","_this9","userSearchApi","search","blockUsers","ids","unblockUsers","muteUsers","unmuteUsers","identity","trigger","submitHandler","cropperOptions","aspectRatio","autoCropArea","viewMode","zoomable","guides","mimes","saveButtonLabel","saveWithoutCroppingButtonlabel","cancelButtonLabel","dataUrl","filename","submitting","submitError","saveText","saveWithoutCroppingText","cancelText","submitErrorMsg","cropping","avatarUploadError","finally","pickImage","createCropper","Cropper","getTriggerDOM","readFile","fileInput","beforeDestroy","_basic_user_card","progress","blocked","Checkbox","allKeys","filteredSelected","allSelected","noneSelected","someSelected","isSelected","toggle","toggleAll","model","prop","disabled","placeholder","term","timeout","results","resultsVisible","filtered","fetchResults","onInputClick","onClickOutside","submitButtonLabel","successMessage","success","dismiss","getContent","exportButtonLabel","processingMessage","processing","process","content","fileToDownload","available","totp","setupState","setupOTPState","backupCodes","getNewCodes","codes","otpSettings","provisioning_uri","currentPassword","otpConfirmToken","readyInit","recovery-codes","RecoveryCodes","totp-item","TOTP","qrcode","VueQrcode","Confirm","canSetupOTP","setupInProgress","backupCodesPrepared","setupOTPInProgress","completedOTP","prepareOTP","confirmOTP","confirmNewBackupCodes","activateOTP","fetchBackupCodes","getBackupCodes","confirmBackupCodes","cancelBackupCodes","setupOTP","doConfirmOTP","completeSetup","fetchSettings","cancelSetup","fetchSettingsMFA","abrupt","displayTitle","deactivate","isActivated","doActivate","cancelDeactivate","doDeactivate","confirmDeactivate","cancel","_follow_request_card","FollowRequests","FollowRequestCard","requests","followRequests","_oauth","oac","_$store$state$oauth","oauth","clientId","clientSecret","getToken","server","access_token","userSearch","newV","newQuery","userSearchInput","LoginForm","isPasswordAuth","requiredPassword","isTokenAuth","requiredToken","loggingIn","mapGetters","mapMutations","login","submitToken","submitPassword","oauthApi","getOrCreateApp","app","getTokenWithCredentials","requireMFA","focusOnPasswordInput","passwordInput","authApp","authSettings","mfaToken","mfa_token","mfaApi","verifyRecoveryCode","verifyOTPCode","_user_profile_link_generator","chatPanel","currentMessage","channel","collapsed","messages","chat","togglePanel","WhoToFollow","getWhoToFollow","showWhoToFollow","reply","acct","profile_image_url","profile_image_url_original","externalUser","About","InstanceSpecificPanel","FeaturesPanel","TermsOfServicePanel","showFeaturesPanel","instanceSpecificPanelContent","chatAvailable","chatDisabled","gopher","gopherAvailable","whoToFollow","suggestionsEnabled","mediaProxy","_window_utils","UserPanel","NavPanel","UserFinder","WhoToFollowPanel","ChatPanel","MediaModal","SideDrawer","MobilePostStatusModal","MobileNav","UserReportingModal","mobileActivePanel","finderHidden","supportsMask","CSS","supports","updateMobileState","background_image","enableMask","logoMask","logoStyle","logoMaskStyle","mask-image","logo","background-color","logoBgStyle","margin","logoMargin","bgStyle","background-image","bgAppStyle","--body-background-image","sitename","isMobileLayout","mobileLayout","scrollToTop","scrollTo","onFinderToggled","windowWidth","AuthForm","_follow_request_fetcher","followRequestFetcher","startFetching","followRequestCount","usersToFollow","toFollow","shuffled","_shuffle3","fill","oldUser","showing","mediaViewer","activated","currentIndex","currentMedia","canNavigate","hide","goPrev","prevIndex","goNext","nextIndex","handleKeyupEvent","keyCode","handleKeydownEvent","closed","closeGesture","GestureService","swipeGesture","DIRECTION_LEFT","toggleDrawer","unseenNotificationsCount","doLogout","touchStart","beginSwipe","touchMove","updateSwipe","postFormOpen","scrollingDown","inputActive","oldScrollPos","amountScrolled","activateFloatingPostButtonAutohide","handleOSK","deactivateFloatingPostButtonAutohide","isHidden","isEnabled","handleScrollStart","handleScrollEnd","openPostForm","closePostForm","smallPhone","innerWidth","smallPhoneKbOpen","biggerPhoneKbOpen","_debounce3","scrollY","leading","trailing","notificationsCloseGesture","notificationsOpen","DIRECTION_RIGHT","closeMobileNotifications","toggleMobileSidebar","sideDrawer","openMobileNotifications","notificationsTouchStart","notificationsTouchMove","onScroll","_ref$target","clientHeight","statusIdsToReport","isLoggedIn","isOpen","reports","modalActivated","remoteInstance","resetState","closeModal","isChecked","toggleStatus","startFetchingTimeline","_ref8$userId","timelineFetcherService","startFetchingNotifications","_babel_loader_still_image_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_still_image_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_4ae09a58_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_still_image_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_timeago_vue__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_timeago_vue__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_96912de0_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_timeago_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_post_status_form_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_post_status_form_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_57f92590_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_post_status_form_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_conversation_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_conversation_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_4beb651e_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_conversation_vue__WEBPACK_IMPORTED_MODULE_1__","visibleTypes","likes","repeats","sortedNotifications","_sortBy3","seen","_babel_loader_follow_card_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_follow_card_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_6b257768_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_follow_card_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_list_vue__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_list_vue__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_4921cfd6_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_list_vue__WEBPACK_IMPORTED_MODULE_1__","Vue","component","active","findIndex","onSwitch","render","h","tabs","classesTab","classesWrapper","class","attrs","on","label","contents","renderOnlyFocused","REDIRECT_URI","origin","___pleromafe_commit_hash","toISOString","client_id","client_secret","getClientToken","response_type","redirect_uri","encoded","staticRenderFns","_vm","_h","$createElement","_c","_self","staticClass","ref","_e","_v","loop","controls","playsinline","loadeddata","_obj","_s","directives","rawName","expression","$event","small","title","large_thumb_url","allowPlay","thumb_url","domProps","innerHTML","oembedHTML","fave_num","repeat_num","datetime","_l","path","auto-update","now-threshold","append-to-body","placement","modifiers","arrow","offset","pinned","icon-clicked","drop","dragover","staticStyle","_t","displayText","detailText","maxlength","keydown","_k","composing","$set","for","$$selectedVal","_value","autocomplete","to","callback","$$v","metaKey","keyup","postFormat","visible","update-poll","drop-files","uploaded","upload-failed","_i","$$a","$$el","$$c","$$i","avatar-compact","better-shadow","alt","action","dark-overlay","currentTarget","menu-checkbox-checked","pressed","follows_you","friends_count","followers_count","description_html","row","contain-fit","cover-fit","rel","small-image","provider_name","status-el_focused","status-conversation","inlineExpanded","isPreview","showPinned","is-retweet","data-tags","nativeOn","!click","_f","external_url","expandable","aria-label","mouseenter","mouseleave","mouseout","tall-status","tall-status-hider_focused","base-poll","button-icon-active","replies_count","onSuccess","reply-to","copy-message-scope","posted","collapsable","goto","timeline-name","minimal","unseen","data-tab-dummy","data-filter","noFollowsYou","empty","viewing","statusesObject","user-id","scopedSlots","_u","fn","hardMax","hardMin","step","__r","custom","large","exportLabel","importLabel","importFailedText","no-inherit","langCode","number","_n","$forceUpdate","form-group--error","$error","trim","textContent","accept","indeterminate","selectable-list-item-selected-inner","activate","backup-codes","classname","close","followers","non_follows","non_followers","refresh","request","requireTOTP","abortMFA","requireRecovery","floating","chat-heading","author","side-drawer-container-closed","side-drawer-container-open","side-drawer-darken-closed","side-drawer-closed","touchstart","touchmove","side-drawer-click-outside-closed","active-class","scroll","toggled","output","masto","mastoShort","addEmojis","emojis","following_count","bot","pleroma","relationship","chat_token","followed_by","blocking","muting","is_moderator","is_admin","source","privacy","delete_others_notice","friendIds","followerIds","pinnedStatuseIds","follow_request_count","mime_type","meta","string","RegExp","shortcode","favourited","favourites_count","reblogged","reblogs_count","reblog","spoiler_text","conversation_id","local","in_reply_to_account_acct","in_reply_to_id","in_reply_to_account_id","is_post_verb","uri","qvitter_delete_notice","activity_type","isNsfw","account","media_attachments","retweetedStatus","favourite","is_seen","parsedNotice","notice","ntype","favorited_status","_ref2$timeline","_ref2$older","_ref2$showImmediately","_ref2$userId","_ref2$tag","rootState","timelineData","_camelCase3","minId","numStatusesBeforeFetch","ccTimeline","update","_ref3$timeline","_ref3$userId","_ref3$tag","setInterval","POSITIVE_INFINITY","fetchNotifications","unread","_utils","UserSearch","utils","q","ar","require","ca","cs","de","en","eo","es","et","fi","fr","ga","he","hu","it","ko","nb","nl","oc","pl","pt","ro","ru","_babel_loader_attachment_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_attachment_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_608c26d2_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_attachment_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_video_attachment_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_video_attachment_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_10dde0a9_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_video_attachment_vue__WEBPACK_IMPORTED_MODULE_1__","SECOND","WEEK","MONTH","YEAR","date","now","abs","_ref$media","_ref$inReplyToStatusI","_ref$contentType","noIdUpdate","exponent","units","log","toFixed","_babel_loader_scope_selector_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_scope_selector_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_ad4ca5da_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_scope_selector_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_emoji_input_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_emoji_input_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_79e9770b_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_emoji_input_vue__WEBPACK_IMPORTED_MODULE_1__","firstChar","suggestEmoji","suggestUsers","noPrefix","aScore","bScore","_babel_loader_remote_follow_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_remote_follow_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_2ecbe62b_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_remote_follow_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_moderation_tools_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_moderation_tools_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_788f6147_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_moderation_tools_vue__WEBPACK_IMPORTED_MODULE_1__","updated","attempt","prefs","solidColor","tintColor2","backgroundPosition","_isFunction","getComponentOptions","_isFunction2","getComponentProps","_babel_loader_style_switcher_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_style_switcher_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_5e6c3467_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_style_switcher_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_color_input_vue__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_color_input_vue__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_5c9e43f0_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_color_input_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_opacity_input_vue__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_opacity_input_vue__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_296de9c3_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_opacity_input_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_checkbox_vue__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_checkbox_vue__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_76559fdc_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_checkbox_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_confirm_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_confirm_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_7144d19e_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_confirm_vue__WEBPACK_IMPORTED_MODULE_1__","is","authForm","requiredTOTP","requiredRecovery","MFARecoveryForm","MFATOTPForm","mfa","_babel_loader_chat_panel_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_chat_panel_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_18ad082c_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_chat_panel_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_instance_specific_panel_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_instance_specific_panel_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_0df9e546_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_instance_specific_panel_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_features_panel_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_features_panel_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_5c3884f4_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_features_panel_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_side_drawer_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_side_drawer_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_0afaec76_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_side_drawer_vue__WEBPACK_IMPORTED_MODULE_1__","touchEventCoord","touches","screenX","screenY","vectorLength","sqrt","dotProduct","v1","v2","project","scalar","DIRECTION_UP","DIRECTION_DOWN","direction","onSwipe","threshold","perpendicularTolerance","_startPos","_swiping","gesture","oldCoord","newCoord","delta","towardsDir","perpendicularDir","towardsPerpendicular","_babel_loader_mobile_post_status_modal_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_mobile_post_status_modal_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_7060e3da_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_mobile_post_status_modal_vue__WEBPACK_IMPORTED_MODULE_1__","clientWidth","currentLocale","navigator","use","Vuex","VueRouter","VueI18n","VueChatScroll","VueClickOutside","PortalVue","i18n","fallbackLocale","persistedStateOptions","paths","persistedState","_persisted_state2","Store","interfaceModule","instanceModule","statusesModule","usersModule","apiModule","configModule","chatModule","oauthModule","authFlow","authFlowModule","mediaViewerModule","oauthTokensModule","reportsModule","pollsModule","plugins","pushNotifications","strict","_after_store2","___pleromafe_mode","COMMIT_HASH","___pleromafe_dev_overrides","DEV_OVERRIDES","interfaceMod","noticeClearTimeout","notificationPermission","mutations","settingsSaved","errorData","setNotificationPermission","permission","setMobileLayout","actions","setPageTitle","redirectRootNoLogin","redirectRootLogin","disableChat","vapidPublicKey","noAttachmentLinks","suggestionsWeb","setInstanceOption","setTheme","themeName","emptyTl","faves","visibleStatusesObject","minVisibleId","emptyNotifications","desktopNotificationSilence","idStore","defaultState","prepareStatus","visibleNotificationTypes","mergeOrAdd","arr","obj","oldItem","_merge3","_omitBy3","new","sortTimeline","addStatusToGlobalStorage","addNewStatuses","_ref2$user","_ref2$noIdUpdate","_isArray3","timelineObject","maxNew","_maxBy3","minNew","_minBy3","newer","addStatus","addToTimeline","resultForCurrentTimeline","processors","counter","favoriteStatus","deletion","_remove3","removeStatusFromGlobalStorage","follow","unknown","addNewNotifications","rootGetters","notifObj","i18nString","removeStatus","_first3","oldTimeline","_slice3","resetStatuses","emptyState","clearTimeline","clearNotifications","setFavorited","setFavoritedConfirm","setPinned","setRetweeted","setRetweetedConfirm","setDeleted","setManyDeleted","condition","setLoading","setNsfw","setError","setNotificationsLoading","setNotificationsError","setNotificationsSilence","queueFlush","addFavsAndRepeats","favoritedByUsers","rebloggedByUsers","updateStatusWithPoll","_ref24$showImmediatel","_ref24$timeline","_ref24$noIdUpdate","markStatusesAsDeleted","fetchFavsAndRepeats","statusCode","captureStackTrace","_create2","constructor","_push","setMuted","newTags","updateRight","newRights","updateActivationStatus","setCurrentUser","lastLoginName","clearCurrentUser","beginLogin","endLogin","saveFriendIds","saveFollowerIds","clearFriends","clearFollowers","addNewUsers","updateUserRelationship","relationships","updateBlocks","blockedUsers","saveBlockIds","blockIds","addBlockId","blockId","updateMutes","mutedUsers","saveMuteIds","muteIds","addMuteId","muteId","setUserForStatus","setUserForNotification","setColor","signUpSuccess","signUpFailure","errors","blocks","mutes","registerPushNotifications","unregisterPushNotifications","retweetedUsers","_compact3","notificationIds","notificationsObject","relevantNotifications","searchUsers","userInfo","ap_id","humanizeErrors","_x5","_x6","_callee2","_context2","_x7","_backend_interactor_service2","loginUser","requestPermission","queryParams","_ref$method","isPushSupported","getOrCreateServiceWorker","subscribeOptions","userVisibleOnly","applicationServerKey","base64String","padding","repeat","base64","rawData","atob","Uint8Array","from","char","charCodeAt","pushManager","subscribe","subscribePush","subscription","alerts","mention","responseData","sendSubscriptionToBackEnd","deleteSubscriptionFromBackEnd","getSubscription","subscribtion","unsubscribe","unsubscribePush","unsubResult","unregister","runtime","errs","_capitalize3","_backend_interactor_service","_phoenix","socket","setBackendInteractor","addFetcher","fetcherName","fetcher","removeFetcher","setWsToken","wsToken","setSocket","setChatDisabled","setFollowRequests","stopFetching","clearInterval","initializeSocket","Socket","connect","removeFollowRequest","setOption","setChannel","addMessage","setMessages","disconnectFromChat","disconnect","initializeChat","msg","appToken","userToken","setClientData","setAppToken","setToken","clearToken","getUserToken","strategy","initStrategy","setInitialStrategy","requirePassword","requireToken","namespaced","_file_typeService","setCurrent","current","closeMediaViewer","fetchTokens","swapTokens","_filter","openUserReportingModal","closeUserReportingModal","_filter2","trackedPolls","mergeOrAddPoll","existingPoll","trackPoll","currentValue","untrackPoll","updateTrackedPoll","votePoll","_ref$key","_ref$paths","_ref$getState","getState","storage","getItem","_ref$setState","setState","loaded","setItem","_ref$reducer","reducer","defaultReducer","_ref$storage","defaultStorage","_ref$subscriber","subscriber","savedState","usersState","replaceState","_lodash2","mutation","saveImmedeatelyActions","substate","objectPath","localforage","webPushNotification","isUserMutation","isVapidMutation","isPermMutation","isUserConfigMutation","isVisibilityMutation","getStatusnetConfig","_data$site","registrationClosed","safeDMMentionsEnabled","site","avatarlimit","backgroundlimit","bannerlimit","pleromafe","getStaticConfig","setSettings","_callee3","overrides","env","copyInstanceOption","apiConfig","staticConfig","_context3","NODE_ENV","staticConfigPreference","loginMethod","getTOS","_callee4","html","_context4","_x3","getInstancePanel","_callee5","_context5","_x4","getStaticEmoji","_callee6","values","_context6","getCustomEmoji","_callee7","_context7","image_url","getAppSecret","_callee8","_context8","getNodeInfo","_callee9","metadata","features","software","_context9","web","federation","mrf_policies","_x8","setConfig","_callee10","configInfos","_context10","_x9","checkOAuthToken","_callee12","_context12","_callee11","_context11","_x11","_x12","_x10","afterStoreSetup","_callee13","router","_context13","routes","_routes2","scrollBehavior","_from","savedPosition","matched","dontScroll","App","_x13","redirect","_to","ConversationPage","Settings","Registration","OAuthCallback","route","_babel_loader_public_timeline_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_public_timeline_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_28719980_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_public_timeline_vue__WEBPACK_IMPORTED_MODULE_1__","locals","_babel_loader_favorite_button_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_favorite_button_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_23d3a771_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_favorite_button_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_retweet_button_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_retweet_button_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_167856a9_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_retweet_button_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_poll_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_poll_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_f5da1ea4_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_poll_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_extra_buttons_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_extra_buttons_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_42a7dfa0_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_extra_buttons_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_media_upload_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_media_upload_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_412e3412_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_media_upload_vue__WEBPACK_IMPORTED_MODULE_1__","toReplace","end","pos","words","splitIntoWords","wordsWithPosition","addPositionToWords","previous","pop","triggers","matches","completion","_babel_loader_poll_form_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_poll_form_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_ad3a99cc_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_poll_form_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_dialog_modal_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_dialog_modal_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_3bdb886d_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_dialog_modal_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_gallery_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_gallery_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_90e08142_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_gallery_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_link_preview_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_link_preview_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_13637f5a_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_link_preview_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_avatar_list_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_avatar_list_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_14c2b53d_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_avatar_list_vue__WEBPACK_IMPORTED_MODULE_1__","_attention$screen_nam","_attention$screen_nam2","namepart","instancepart","matchstring","_babel_loader_public_and_external_timeline_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_public_and_external_timeline_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_177cb5ec_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_public_and_external_timeline_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_friends_timeline_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_friends_timeline_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_6f367f8e_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_friends_timeline_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_tag_timeline_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_tag_timeline_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_f05777fe_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_tag_timeline_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_conversation_page_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_conversation_page_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_3df9f4c3_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_conversation_page_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_interactions_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_interactions_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_e1d0b7b0_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_interactions_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_notification_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_notification_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_5c1aabae_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_notification_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_dm_timeline_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_dm_timeline_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_8144de96_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_dm_timeline_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_user_profile_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_user_profile_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_3ad3bbbf_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_user_profile_vue__WEBPACK_IMPORTED_MODULE_1__","_component_utils","_ref$childPropName","_ref$additionalPropNa","WrappedComponent","$props","_defineProperty3","entries","$listeners","$scopedSlots","children","fetchEntries","newEntries","_isEmpty2","_babel_loader_settings_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_settings_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_2aa64dd8_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_settings_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_range_input_vue__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_range_input_vue__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_75e9df52_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_range_input_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_shadow_control_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_shadow_control_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_2a11c3eb_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_shadow_control_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_font_control_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_font_control_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_7c447fa9_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_font_control_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_contrast_ratio_vue__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_contrast_ratio_vue__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_004f07f0_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_contrast_ratio_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_export_import_vue__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_export_import_vue__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_403e3ea7_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_export_import_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_interface_language_switcher_vue__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_interface_language_switcher_vue__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_7f711d2a_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_interface_language_switcher_vue__WEBPACK_IMPORTED_MODULE_1__","versionString","_babel_loader_registration_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_registration_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_448d7218_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_registration_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_user_settings_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_user_settings_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_134d680a_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_user_settings_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_image_cropper_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_image_cropper_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_351f8dc1_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_image_cropper_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_block_card_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_block_card_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_14c8ee24_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_block_card_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_mute_card_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_mute_card_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_b29ff556_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_mute_card_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_selectable_list_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_selectable_list_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_830849a2_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_selectable_list_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_progress_button_vue__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_node_modules_vue_loader_lib_selector_type_script_index_0_progress_button_vue__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_0eed4b16_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_progress_button_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_autosuggest_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_autosuggest_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_28abcb08_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_autosuggest_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_importer_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_importer_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_18fdba14_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_importer_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_exporter_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_exporter_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_35653648_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_exporter_vue__WEBPACK_IMPORTED_MODULE_1__","fetchData","fetchedData","_babel_loader_mfa_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_mfa_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_395e4582_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_mfa_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_mfa_backup_codes_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_mfa_backup_codes_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_2bcb205a_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_mfa_backup_codes_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_mfa_totp_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_mfa_totp_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_26074bbe_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_mfa_totp_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_follow_requests_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_follow_requests_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_0175b636_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_follow_requests_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_follow_request_card_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_follow_request_card_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_310b71c4_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_follow_request_card_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_oauth_callback_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_oauth_callback_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_f514124c_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_oauth_callback_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_user_search_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_user_search_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_50212e66_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_user_search_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_login_form_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_login_form_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_beb5f2f2_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_login_form_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_recovery_form_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_recovery_form_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_3e1d0fe4_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_recovery_form_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_totp_form_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_totp_form_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_ac2e1398_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_totp_form_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_who_to_follow_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_who_to_follow_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_74383918_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_who_to_follow_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_about_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_about_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_adbbefc2_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_about_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_terms_of_service_panel_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_terms_of_service_panel_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_5f130d6f_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_terms_of_service_panel_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_App_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_App_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_2671f379_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_App_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_user_panel_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_user_panel_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_2ced945d_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_user_panel_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_nav_panel_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_nav_panel_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_121719ee_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_nav_panel_vue__WEBPACK_IMPORTED_MODULE_1__","_apiService","_babel_loader_user_finder_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_user_finder_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_b55526b8_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_user_finder_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_who_to_follow_panel_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_who_to_follow_panel_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_cf25eb72_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_who_to_follow_panel_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_media_modal_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_media_modal_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_3448b8dc_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_media_modal_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_mobile_nav_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_mobile_nav_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_a344c53a_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_mobile_nav_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_user_reporting_modal_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_user_reporting_modal_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_6121709e_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_user_reporting_modal_vue__WEBPACK_IMPORTED_MODULE_1__","component_normalizer","font-family","_m"],"mappings":"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","file":"static/js/app.670c36c0acc42fadb4fe.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t0: 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([436,1]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","import { each, map, concat, last } from 'lodash'\nimport { parseStatus, parseUser, parseNotification, parseAttachment } from '../entity_normalizer/entity_normalizer.service.js'\nimport 'whatwg-fetch'\nimport { StatusCodeError } from '../errors/errors'\n\n/* eslint-env browser */\nconst EXTERNAL_PROFILE_URL = '/api/externalprofile/show.json'\nconst QVITTER_USER_NOTIFICATIONS_READ_URL = '/api/qvitter/statuses/notifications/read.json'\nconst BLOCKS_IMPORT_URL = '/api/pleroma/blocks_import'\nconst FOLLOW_IMPORT_URL = '/api/pleroma/follow_import'\nconst DELETE_ACCOUNT_URL = '/api/pleroma/delete_account'\nconst CHANGE_PASSWORD_URL = '/api/pleroma/change_password'\nconst FOLLOW_REQUESTS_URL = '/api/pleroma/friend_requests'\nconst APPROVE_USER_URL = '/api/pleroma/friendships/approve'\nconst DENY_USER_URL = '/api/pleroma/friendships/deny'\nconst TAG_USER_URL = '/api/pleroma/admin/users/tag'\nconst PERMISSION_GROUP_URL = (screenName, right) => `/api/pleroma/admin/users/${screenName}/permission_group/${right}`\nconst ACTIVATION_STATUS_URL = screenName => `/api/pleroma/admin/users/${screenName}/activation_status`\nconst ADMIN_USERS_URL = '/api/pleroma/admin/users'\nconst SUGGESTIONS_URL = '/api/v1/suggestions'\nconst NOTIFICATION_SETTINGS_URL = '/api/pleroma/notification_settings'\n\nconst MFA_SETTINGS_URL = '/api/pleroma/profile/mfa'\nconst MFA_BACKUP_CODES_URL = '/api/pleroma/profile/mfa/backup_codes'\n\nconst MFA_SETUP_OTP_URL = '/api/pleroma/profile/mfa/setup/totp'\nconst MFA_CONFIRM_OTP_URL = '/api/pleroma/profile/mfa/confirm/totp'\nconst MFA_DISABLE_OTP_URL = '/api/pleroma/profile/mfa/totp'\n\nconst MASTODON_LOGIN_URL = '/api/v1/accounts/verify_credentials'\nconst MASTODON_REGISTRATION_URL = '/api/v1/accounts'\nconst MASTODON_USER_FAVORITES_TIMELINE_URL = '/api/v1/favourites'\nconst MASTODON_USER_NOTIFICATIONS_URL = '/api/v1/notifications'\nconst MASTODON_FAVORITE_URL = id => `/api/v1/statuses/${id}/favourite`\nconst MASTODON_UNFAVORITE_URL = id => `/api/v1/statuses/${id}/unfavourite`\nconst MASTODON_RETWEET_URL = id => `/api/v1/statuses/${id}/reblog`\nconst MASTODON_UNRETWEET_URL = id => `/api/v1/statuses/${id}/unreblog`\nconst MASTODON_DELETE_URL = id => `/api/v1/statuses/${id}`\nconst MASTODON_FOLLOW_URL = id => `/api/v1/accounts/${id}/follow`\nconst MASTODON_UNFOLLOW_URL = id => `/api/v1/accounts/${id}/unfollow`\nconst MASTODON_FOLLOWING_URL = id => `/api/v1/accounts/${id}/following`\nconst MASTODON_FOLLOWERS_URL = id => `/api/v1/accounts/${id}/followers`\nconst MASTODON_DIRECT_MESSAGES_TIMELINE_URL = '/api/v1/timelines/direct'\nconst MASTODON_PUBLIC_TIMELINE = '/api/v1/timelines/public'\nconst MASTODON_USER_HOME_TIMELINE_URL = '/api/v1/timelines/home'\nconst MASTODON_STATUS_URL = id => `/api/v1/statuses/${id}`\nconst MASTODON_STATUS_CONTEXT_URL = id => `/api/v1/statuses/${id}/context`\nconst MASTODON_USER_URL = '/api/v1/accounts'\nconst MASTODON_USER_RELATIONSHIPS_URL = '/api/v1/accounts/relationships'\nconst MASTODON_USER_TIMELINE_URL = id => `/api/v1/accounts/${id}/statuses`\nconst MASTODON_TAG_TIMELINE_URL = tag => `/api/v1/timelines/tag/${tag}`\nconst MASTODON_USER_BLOCKS_URL = '/api/v1/blocks/'\nconst MASTODON_USER_MUTES_URL = '/api/v1/mutes/'\nconst MASTODON_BLOCK_USER_URL = id => `/api/v1/accounts/${id}/block`\nconst MASTODON_UNBLOCK_USER_URL = id => `/api/v1/accounts/${id}/unblock`\nconst MASTODON_MUTE_USER_URL = id => `/api/v1/accounts/${id}/mute`\nconst MASTODON_UNMUTE_USER_URL = id => `/api/v1/accounts/${id}/unmute`\nconst MASTODON_POST_STATUS_URL = '/api/v1/statuses'\nconst MASTODON_MEDIA_UPLOAD_URL = '/api/v1/media'\nconst MASTODON_VOTE_URL = id => `/api/v1/polls/${id}/votes`\nconst MASTODON_POLL_URL = id => `/api/v1/polls/${id}`\nconst MASTODON_STATUS_FAVORITEDBY_URL = id => `/api/v1/statuses/${id}/favourited_by`\nconst MASTODON_STATUS_REBLOGGEDBY_URL = id => `/api/v1/statuses/${id}/reblogged_by`\nconst MASTODON_PROFILE_UPDATE_URL = '/api/v1/accounts/update_credentials'\nconst MASTODON_REPORT_USER_URL = '/api/v1/reports'\nconst MASTODON_PIN_OWN_STATUS = id => `/api/v1/statuses/${id}/pin`\nconst MASTODON_UNPIN_OWN_STATUS = id => `/api/v1/statuses/${id}/unpin`\n\nconst oldfetch = window.fetch\n\nlet fetch = (url, options) => {\n options = options || {}\n const baseUrl = ''\n const fullUrl = baseUrl + url\n options.credentials = 'same-origin'\n return oldfetch(fullUrl, options)\n}\n\nconst promisedRequest = ({ method, url, payload, credentials, headers = {} }) => {\n const options = {\n method,\n headers: {\n 'Accept': 'application/json',\n 'Content-Type': 'application/json',\n ...headers\n }\n }\n if (payload) {\n options.body = JSON.stringify(payload)\n }\n if (credentials) {\n options.headers = {\n ...options.headers,\n ...authHeaders(credentials)\n }\n }\n return fetch(url, options)\n .then((response) => {\n return new Promise((resolve, reject) => response.json()\n .then((json) => {\n if (!response.ok) {\n return reject(new StatusCodeError(response.status, json, { url, options }, response))\n }\n return resolve(json)\n }))\n })\n}\n\nconst updateNotificationSettings = ({ credentials, settings }) => {\n const form = new FormData()\n\n each(settings, (value, key) => {\n form.append(key, value)\n })\n\n return fetch(NOTIFICATION_SETTINGS_URL, {\n headers: authHeaders(credentials),\n method: 'PUT',\n body: form\n }).then((data) => data.json())\n}\n\nconst updateAvatar = ({ credentials, avatar }) => {\n const form = new FormData()\n form.append('avatar', avatar)\n return fetch(MASTODON_PROFILE_UPDATE_URL, {\n headers: authHeaders(credentials),\n method: 'PATCH',\n body: form\n }).then((data) => data.json())\n .then((data) => parseUser(data))\n}\n\nconst updateBg = ({ credentials, background }) => {\n const form = new FormData()\n form.append('pleroma_background_image', background)\n return fetch(MASTODON_PROFILE_UPDATE_URL, {\n headers: authHeaders(credentials),\n method: 'PATCH',\n body: form\n })\n .then((data) => data.json())\n .then((data) => parseUser(data))\n}\n\nconst updateBanner = ({ credentials, banner }) => {\n const form = new FormData()\n form.append('header', banner)\n return fetch(MASTODON_PROFILE_UPDATE_URL, {\n headers: authHeaders(credentials),\n method: 'PATCH',\n body: form\n }).then((data) => data.json())\n .then((data) => parseUser(data))\n}\n\nconst updateProfile = ({ credentials, params }) => {\n return promisedRequest({\n url: MASTODON_PROFILE_UPDATE_URL,\n method: 'PATCH',\n payload: params,\n credentials\n }).then((data) => parseUser(data))\n}\n\n// Params needed:\n// nickname\n// email\n// fullname\n// password\n// password_confirm\n//\n// Optional\n// bio\n// homepage\n// location\n// token\nconst register = ({ params, credentials }) => {\n const { nickname, ...rest } = params\n return fetch(MASTODON_REGISTRATION_URL, {\n method: 'POST',\n headers: {\n ...authHeaders(credentials),\n 'Content-Type': 'application/json'\n },\n body: JSON.stringify({\n nickname,\n locale: 'en_US',\n agreement: true,\n ...rest\n })\n })\n .then((response) => [response.ok, response])\n .then(([ok, response]) => {\n if (ok) {\n return response.json()\n } else {\n return response.json().then((error) => { throw new Error(error) })\n }\n })\n}\n\nconst getCaptcha = () => fetch('/api/pleroma/captcha').then(resp => resp.json())\n\nconst authHeaders = (accessToken) => {\n if (accessToken) {\n return { 'Authorization': `Bearer ${accessToken}` }\n } else {\n return { }\n }\n}\n\nconst externalProfile = ({ profileUrl, credentials }) => {\n let url = `${EXTERNAL_PROFILE_URL}?profileurl=${profileUrl}`\n return fetch(url, {\n headers: authHeaders(credentials),\n method: 'GET'\n }).then((data) => data.json())\n}\n\nconst followUser = ({ id, credentials }) => {\n let url = MASTODON_FOLLOW_URL(id)\n return fetch(url, {\n headers: authHeaders(credentials),\n method: 'POST'\n }).then((data) => data.json())\n}\n\nconst unfollowUser = ({ id, credentials }) => {\n let url = MASTODON_UNFOLLOW_URL(id)\n return fetch(url, {\n headers: authHeaders(credentials),\n method: 'POST'\n }).then((data) => data.json())\n}\n\nconst pinOwnStatus = ({ id, credentials }) => {\n return promisedRequest({ url: MASTODON_PIN_OWN_STATUS(id), credentials, method: 'POST' })\n .then((data) => parseStatus(data))\n}\n\nconst unpinOwnStatus = ({ id, credentials }) => {\n return promisedRequest({ url: MASTODON_UNPIN_OWN_STATUS(id), credentials, method: 'POST' })\n .then((data) => parseStatus(data))\n}\n\nconst blockUser = ({ id, credentials }) => {\n return fetch(MASTODON_BLOCK_USER_URL(id), {\n headers: authHeaders(credentials),\n method: 'POST'\n }).then((data) => data.json())\n}\n\nconst unblockUser = ({ id, credentials }) => {\n return fetch(MASTODON_UNBLOCK_USER_URL(id), {\n headers: authHeaders(credentials),\n method: 'POST'\n }).then((data) => data.json())\n}\n\nconst approveUser = ({ id, credentials }) => {\n let url = `${APPROVE_USER_URL}?user_id=${id}`\n return fetch(url, {\n headers: authHeaders(credentials),\n method: 'POST'\n }).then((data) => data.json())\n}\n\nconst denyUser = ({ id, credentials }) => {\n let url = `${DENY_USER_URL}?user_id=${id}`\n return fetch(url, {\n headers: authHeaders(credentials),\n method: 'POST'\n }).then((data) => data.json())\n}\n\nconst fetchUser = ({ id, credentials }) => {\n let url = `${MASTODON_USER_URL}/${id}`\n return promisedRequest({ url, credentials })\n .then((data) => parseUser(data))\n}\n\nconst fetchUserRelationship = ({ id, credentials }) => {\n let url = `${MASTODON_USER_RELATIONSHIPS_URL}/?id=${id}`\n return fetch(url, { headers: authHeaders(credentials) })\n .then((response) => {\n return new Promise((resolve, reject) => response.json()\n .then((json) => {\n if (!response.ok) {\n return reject(new StatusCodeError(response.status, json, { url }, response))\n }\n return resolve(json)\n }))\n })\n}\n\nconst fetchFriends = ({ id, maxId, sinceId, limit = 20, credentials }) => {\n let url = MASTODON_FOLLOWING_URL(id)\n const args = [\n maxId && `max_id=${maxId}`,\n sinceId && `since_id=${sinceId}`,\n limit && `limit=${limit}`\n ].filter(_ => _).join('&')\n\n url = url + (args ? '?' + args : '')\n return fetch(url, { headers: authHeaders(credentials) })\n .then((data) => data.json())\n .then((data) => data.map(parseUser))\n}\n\nconst exportFriends = ({ id, credentials }) => {\n return new Promise(async (resolve, reject) => {\n try {\n let friends = []\n let more = true\n while (more) {\n const maxId = friends.length > 0 ? last(friends).id : undefined\n const users = await fetchFriends({id, maxId, credentials})\n friends = concat(friends, users)\n if (users.length === 0) {\n more = false\n }\n }\n resolve(friends)\n } catch (err) {\n reject(err)\n }\n })\n}\n\nconst fetchFollowers = ({ id, maxId, sinceId, limit = 20, credentials }) => {\n let url = MASTODON_FOLLOWERS_URL(id)\n const args = [\n maxId && `max_id=${maxId}`,\n sinceId && `since_id=${sinceId}`,\n limit && `limit=${limit}`\n ].filter(_ => _).join('&')\n\n url += args ? '?' + args : ''\n return fetch(url, { headers: authHeaders(credentials) })\n .then((data) => data.json())\n .then((data) => data.map(parseUser))\n}\n\nconst fetchFollowRequests = ({ credentials }) => {\n const url = FOLLOW_REQUESTS_URL\n return fetch(url, { headers: authHeaders(credentials) })\n .then((data) => data.json())\n}\n\nconst fetchConversation = ({ id, credentials }) => {\n let urlContext = MASTODON_STATUS_CONTEXT_URL(id)\n return fetch(urlContext, { headers: authHeaders(credentials) })\n .then((data) => {\n if (data.ok) {\n return data\n }\n throw new Error('Error fetching timeline', data)\n })\n .then((data) => data.json())\n .then(({ ancestors, descendants }) => ({\n ancestors: ancestors.map(parseStatus),\n descendants: descendants.map(parseStatus)\n }))\n}\n\nconst fetchStatus = ({ id, credentials }) => {\n let url = MASTODON_STATUS_URL(id)\n return fetch(url, { headers: authHeaders(credentials) })\n .then((data) => {\n if (data.ok) {\n return data\n }\n throw new Error('Error fetching timeline', data)\n })\n .then((data) => data.json())\n .then((data) => parseStatus(data))\n}\n\nconst tagUser = ({ tag, credentials, ...options }) => {\n const screenName = options.screen_name\n const form = {\n nicknames: [screenName],\n tags: [tag]\n }\n\n const headers = authHeaders(credentials)\n headers['Content-Type'] = 'application/json'\n\n return fetch(TAG_USER_URL, {\n method: 'PUT',\n headers: headers,\n body: JSON.stringify(form)\n })\n}\n\nconst untagUser = ({ tag, credentials, ...options }) => {\n const screenName = options.screen_name\n const body = {\n nicknames: [screenName],\n tags: [tag]\n }\n\n const headers = authHeaders(credentials)\n headers['Content-Type'] = 'application/json'\n\n return fetch(TAG_USER_URL, {\n method: 'DELETE',\n headers: headers,\n body: JSON.stringify(body)\n })\n}\n\nconst addRight = ({ right, credentials, ...user }) => {\n const screenName = user.screen_name\n\n return fetch(PERMISSION_GROUP_URL(screenName, right), {\n method: 'POST',\n headers: authHeaders(credentials),\n body: {}\n })\n}\n\nconst deleteRight = ({ right, credentials, ...user }) => {\n const screenName = user.screen_name\n\n return fetch(PERMISSION_GROUP_URL(screenName, right), {\n method: 'DELETE',\n headers: authHeaders(credentials),\n body: {}\n })\n}\n\nconst setActivationStatus = ({ status, credentials, ...user }) => {\n const screenName = user.screen_name\n const body = {\n status: status\n }\n\n const headers = authHeaders(credentials)\n headers['Content-Type'] = 'application/json'\n\n return fetch(ACTIVATION_STATUS_URL(screenName), {\n method: 'PUT',\n headers: headers,\n body: JSON.stringify(body)\n })\n}\n\nconst deleteUser = ({ credentials, ...user }) => {\n const screenName = user.screen_name\n const headers = authHeaders(credentials)\n\n return fetch(`${ADMIN_USERS_URL}?nickname=${screenName}`, {\n method: 'DELETE',\n headers: headers\n })\n}\n\nconst fetchTimeline = ({\n timeline,\n credentials,\n since = false,\n until = false,\n userId = false,\n tag = false,\n withMuted = false\n}) => {\n const timelineUrls = {\n public: MASTODON_PUBLIC_TIMELINE,\n friends: MASTODON_USER_HOME_TIMELINE_URL,\n dms: MASTODON_DIRECT_MESSAGES_TIMELINE_URL,\n notifications: MASTODON_USER_NOTIFICATIONS_URL,\n 'publicAndExternal': MASTODON_PUBLIC_TIMELINE,\n user: MASTODON_USER_TIMELINE_URL,\n media: MASTODON_USER_TIMELINE_URL,\n favorites: MASTODON_USER_FAVORITES_TIMELINE_URL,\n tag: MASTODON_TAG_TIMELINE_URL\n }\n const isNotifications = timeline === 'notifications'\n const params = []\n\n let url = timelineUrls[timeline]\n\n if (timeline === 'user' || timeline === 'media') {\n url = url(userId)\n }\n\n if (since) {\n params.push(['since_id', since])\n }\n if (until) {\n params.push(['max_id', until])\n }\n if (tag) {\n url = url(tag)\n }\n if (timeline === 'media') {\n params.push(['only_media', 1])\n }\n if (timeline === 'public') {\n params.push(['local', true])\n }\n if (timeline === 'public' || timeline === 'publicAndExternal') {\n params.push(['only_media', false])\n }\n\n params.push(['count', 20])\n params.push(['with_muted', withMuted])\n\n const queryString = map(params, (param) => `${param[0]}=${param[1]}`).join('&')\n url += `?${queryString}`\n\n return fetch(url, { headers: authHeaders(credentials) })\n .then((data) => {\n if (data.ok) {\n return data\n }\n throw new Error('Error fetching timeline', data)\n })\n .then((data) => data.json())\n .then((data) => data.map(isNotifications ? parseNotification : parseStatus))\n}\n\nconst fetchPinnedStatuses = ({ id, credentials }) => {\n const url = MASTODON_USER_TIMELINE_URL(id) + '?pinned=true'\n return promisedRequest({ url, credentials })\n .then((data) => data.map(parseStatus))\n}\n\nconst verifyCredentials = (user) => {\n return fetch(MASTODON_LOGIN_URL, {\n headers: authHeaders(user)\n })\n .then((response) => {\n if (response.ok) {\n return response.json()\n } else {\n return {\n error: response\n }\n }\n })\n .then((data) => data.error ? data : parseUser(data))\n}\n\nconst favorite = ({ id, credentials }) => {\n return promisedRequest({ url: MASTODON_FAVORITE_URL(id), method: 'POST', credentials })\n .then((data) => parseStatus(data))\n}\n\nconst unfavorite = ({ id, credentials }) => {\n return promisedRequest({ url: MASTODON_UNFAVORITE_URL(id), method: 'POST', credentials })\n .then((data) => parseStatus(data))\n}\n\nconst retweet = ({ id, credentials }) => {\n return promisedRequest({ url: MASTODON_RETWEET_URL(id), method: 'POST', credentials })\n .then((data) => parseStatus(data))\n}\n\nconst unretweet = ({ id, credentials }) => {\n return promisedRequest({ url: MASTODON_UNRETWEET_URL(id), method: 'POST', credentials })\n .then((data) => parseStatus(data))\n}\n\nconst postStatus = ({\n credentials,\n status,\n spoilerText,\n visibility,\n sensitive,\n poll,\n mediaIds = [],\n inReplyToStatusId,\n contentType\n}) => {\n const form = new FormData()\n const pollOptions = poll.options || []\n\n form.append('status', status)\n form.append('source', 'Pleroma FE')\n if (spoilerText) form.append('spoiler_text', spoilerText)\n if (visibility) form.append('visibility', visibility)\n if (sensitive) form.append('sensitive', sensitive)\n if (contentType) form.append('content_type', contentType)\n mediaIds.forEach(val => {\n form.append('media_ids[]', val)\n })\n if (pollOptions.some(option => option !== '')) {\n const normalizedPoll = {\n expires_in: poll.expiresIn,\n multiple: poll.multiple\n }\n Object.keys(normalizedPoll).forEach(key => {\n form.append(`poll[${key}]`, normalizedPoll[key])\n })\n\n pollOptions.forEach(option => {\n form.append('poll[options][]', option)\n })\n }\n if (inReplyToStatusId) {\n form.append('in_reply_to_id', inReplyToStatusId)\n }\n\n return fetch(MASTODON_POST_STATUS_URL, {\n body: form,\n method: 'POST',\n headers: authHeaders(credentials)\n })\n .then((response) => {\n if (response.ok) {\n return response.json()\n } else {\n return {\n error: response\n }\n }\n })\n .then((data) => data.error ? data : parseStatus(data))\n}\n\nconst deleteStatus = ({ id, credentials }) => {\n return fetch(MASTODON_DELETE_URL(id), {\n headers: authHeaders(credentials),\n method: 'DELETE'\n })\n}\n\nconst uploadMedia = ({ formData, credentials }) => {\n return fetch(MASTODON_MEDIA_UPLOAD_URL, {\n body: formData,\n method: 'POST',\n headers: authHeaders(credentials)\n })\n .then((data) => data.json())\n .then((data) => parseAttachment(data))\n}\n\nconst importBlocks = ({ file, credentials }) => {\n const formData = new FormData()\n formData.append('list', file)\n return fetch(BLOCKS_IMPORT_URL, {\n body: formData,\n method: 'POST',\n headers: authHeaders(credentials)\n })\n .then((response) => response.ok)\n}\n\nconst importFollows = ({ file, credentials }) => {\n const formData = new FormData()\n formData.append('list', file)\n return fetch(FOLLOW_IMPORT_URL, {\n body: formData,\n method: 'POST',\n headers: authHeaders(credentials)\n })\n .then((response) => response.ok)\n}\n\nconst deleteAccount = ({ credentials, password }) => {\n const form = new FormData()\n\n form.append('password', password)\n\n return fetch(DELETE_ACCOUNT_URL, {\n body: form,\n method: 'POST',\n headers: authHeaders(credentials)\n })\n .then((response) => response.json())\n}\n\nconst changePassword = ({ credentials, password, newPassword, newPasswordConfirmation }) => {\n const form = new FormData()\n\n form.append('password', password)\n form.append('new_password', newPassword)\n form.append('new_password_confirmation', newPasswordConfirmation)\n\n return fetch(CHANGE_PASSWORD_URL, {\n body: form,\n method: 'POST',\n headers: authHeaders(credentials)\n })\n .then((response) => response.json())\n}\n\nconst settingsMFA = ({ credentials }) => {\n return fetch(MFA_SETTINGS_URL, {\n headers: authHeaders(credentials),\n method: 'GET'\n }).then((data) => data.json())\n}\n\nconst mfaDisableOTP = ({ credentials, password }) => {\n const form = new FormData()\n\n form.append('password', password)\n\n return fetch(MFA_DISABLE_OTP_URL, {\n body: form,\n method: 'DELETE',\n headers: authHeaders(credentials)\n })\n .then((response) => response.json())\n}\n\nconst mfaConfirmOTP = ({ credentials, password, token }) => {\n const form = new FormData()\n\n form.append('password', password)\n form.append('code', token)\n\n return fetch(MFA_CONFIRM_OTP_URL, {\n body: form,\n headers: authHeaders(credentials),\n method: 'POST'\n }).then((data) => data.json())\n}\nconst mfaSetupOTP = ({ credentials }) => {\n return fetch(MFA_SETUP_OTP_URL, {\n headers: authHeaders(credentials),\n method: 'GET'\n }).then((data) => data.json())\n}\nconst generateMfaBackupCodes = ({ credentials }) => {\n return fetch(MFA_BACKUP_CODES_URL, {\n headers: authHeaders(credentials),\n method: 'GET'\n }).then((data) => data.json())\n}\n\nconst fetchMutes = ({ credentials }) => {\n return promisedRequest({ url: MASTODON_USER_MUTES_URL, credentials })\n .then((users) => users.map(parseUser))\n}\n\nconst muteUser = ({ id, credentials }) => {\n return promisedRequest({ url: MASTODON_MUTE_USER_URL(id), credentials, method: 'POST' })\n}\n\nconst unmuteUser = ({ id, credentials }) => {\n return promisedRequest({ url: MASTODON_UNMUTE_USER_URL(id), credentials, method: 'POST' })\n}\n\nconst fetchBlocks = ({ credentials }) => {\n return promisedRequest({ url: MASTODON_USER_BLOCKS_URL, credentials })\n .then((users) => users.map(parseUser))\n}\n\nconst fetchOAuthTokens = ({ credentials }) => {\n const url = '/api/oauth_tokens.json'\n\n return fetch(url, {\n headers: authHeaders(credentials)\n }).then((data) => {\n if (data.ok) {\n return data.json()\n }\n throw new Error('Error fetching auth tokens', data)\n })\n}\n\nconst revokeOAuthToken = ({ id, credentials }) => {\n const url = `/api/oauth_tokens/${id}`\n\n return fetch(url, {\n headers: authHeaders(credentials),\n method: 'DELETE'\n })\n}\n\nconst suggestions = ({ credentials }) => {\n return fetch(SUGGESTIONS_URL, {\n headers: authHeaders(credentials)\n }).then((data) => data.json())\n}\n\nconst markNotificationsAsSeen = ({ id, credentials }) => {\n const body = new FormData()\n\n body.append('latest_id', id)\n\n return fetch(QVITTER_USER_NOTIFICATIONS_READ_URL, {\n body,\n headers: authHeaders(credentials),\n method: 'POST'\n }).then((data) => data.json())\n}\n\nconst vote = ({ pollId, choices, credentials }) => {\n const form = new FormData()\n form.append('choices', choices)\n\n return promisedRequest({\n url: MASTODON_VOTE_URL(encodeURIComponent(pollId)),\n method: 'POST',\n credentials,\n payload: {\n choices: choices\n }\n })\n}\n\nconst fetchPoll = ({ pollId, credentials }) => {\n return promisedRequest(\n {\n url: MASTODON_POLL_URL(encodeURIComponent(pollId)),\n method: 'GET',\n credentials\n }\n )\n}\n\nconst fetchFavoritedByUsers = ({ id }) => {\n return promisedRequest({ url: MASTODON_STATUS_FAVORITEDBY_URL(id) }).then((users) => users.map(parseUser))\n}\n\nconst fetchRebloggedByUsers = ({ id }) => {\n return promisedRequest({ url: MASTODON_STATUS_REBLOGGEDBY_URL(id) }).then((users) => users.map(parseUser))\n}\n\nconst reportUser = ({ credentials, userId, statusIds, comment, forward }) => {\n return promisedRequest({\n url: MASTODON_REPORT_USER_URL,\n method: 'POST',\n payload: {\n 'account_id': userId,\n 'status_ids': statusIds,\n comment,\n forward\n },\n credentials\n })\n}\n\nconst apiService = {\n verifyCredentials,\n fetchTimeline,\n fetchPinnedStatuses,\n fetchConversation,\n fetchStatus,\n fetchFriends,\n exportFriends,\n fetchFollowers,\n followUser,\n unfollowUser,\n pinOwnStatus,\n unpinOwnStatus,\n blockUser,\n unblockUser,\n fetchUser,\n fetchUserRelationship,\n favorite,\n unfavorite,\n retweet,\n unretweet,\n postStatus,\n deleteStatus,\n uploadMedia,\n fetchMutes,\n muteUser,\n unmuteUser,\n fetchBlocks,\n fetchOAuthTokens,\n revokeOAuthToken,\n tagUser,\n untagUser,\n deleteUser,\n addRight,\n deleteRight,\n setActivationStatus,\n register,\n getCaptcha,\n updateAvatar,\n updateBg,\n updateProfile,\n updateBanner,\n externalProfile,\n importBlocks,\n importFollows,\n deleteAccount,\n changePassword,\n settingsMFA,\n mfaDisableOTP,\n generateMfaBackupCodes,\n mfaSetupOTP,\n mfaConfirmOTP,\n fetchFollowRequests,\n approveUser,\n denyUser,\n suggestions,\n markNotificationsAsSeen,\n vote,\n fetchPoll,\n fetchFavoritedByUsers,\n fetchRebloggedByUsers,\n reportUser,\n updateNotificationSettings\n}\n\nexport default apiService\n","import { includes } from 'lodash'\n\nconst generateProfileLink = (id, screenName, restrictedNicknames) => {\n const complicated = !screenName || (isExternal(screenName) || includes(restrictedNicknames, screenName))\n return {\n name: (complicated ? 'external-user-profile' : 'user-profile'),\n params: (complicated ? { id } : { name: screenName })\n }\n}\n\nconst isExternal = screenName => screenName && screenName.includes('@')\n\nexport default generateProfileLink\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./timeline.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./timeline.js\"\nimport __vue_script__ from \"!!babel-loader!./timeline.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-1800e336\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./timeline.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./user_card.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./user_card.js\"\nimport __vue_script__ from \"!!babel-loader!./user_card.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-972257b2\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./user_card.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","import { map } from 'lodash'\n\nconst rgb2hex = (r, g, b) => {\n if (r === null || typeof r === 'undefined') {\n return undefined\n }\n if (r[0] === '#') {\n return r\n }\n if (typeof r === 'object') {\n ({ r, g, b } = r)\n }\n [r, g, b] = map([r, g, b], (val) => {\n val = Math.ceil(val)\n val = val < 0 ? 0 : val\n val = val > 255 ? 255 : val\n return val\n })\n return `#${((1 << 24) + (r << 16) + (g << 8) + b).toString(16).slice(1)}`\n}\n\n/**\n * Converts 8-bit RGB component into linear component\n * https://www.w3.org/TR/2008/REC-WCAG20-20081211/#relativeluminancedef\n * https://www.w3.org/TR/2008/REC-WCAG20-20081211/relative-luminance.xml\n * https://en.wikipedia.org/wiki/SRGB#The_reverse_transformation\n *\n * @param {Number} bit - color component [0..255]\n * @returns {Number} linear component [0..1]\n */\nconst c2linear = (bit) => {\n // W3C gives 0.03928 while wikipedia states 0.04045\n // what those magical numbers mean - I don't know.\n // something about gamma-correction, i suppose.\n // Sticking with W3C example.\n const c = bit / 255\n if (c < 0.03928) {\n return c / 12.92\n } else {\n return Math.pow((c + 0.055) / 1.055, 2.4)\n }\n}\n\n/**\n * Converts sRGB into linear RGB\n * @param {Object} srgb - sRGB color\n * @returns {Object} linear rgb color\n */\nconst srgbToLinear = (srgb) => {\n return 'rgb'.split('').reduce((acc, c) => { acc[c] = c2linear(srgb[c]); return acc }, {})\n}\n\n/**\n * Calculates relative luminance for given color\n * https://www.w3.org/TR/2008/REC-WCAG20-20081211/#relativeluminancedef\n * https://www.w3.org/TR/2008/REC-WCAG20-20081211/relative-luminance.xml\n *\n * @param {Object} srgb - sRGB color\n * @returns {Number} relative luminance\n */\nconst relativeLuminance = (srgb) => {\n const {r, g, b} = srgbToLinear(srgb)\n return 0.2126 * r + 0.7152 * g + 0.0722 * b\n}\n\n/**\n * Generates color ratio between two colors. Order is unimporant\n * https://www.w3.org/TR/2008/REC-WCAG20-20081211/#contrast-ratiodef\n *\n * @param {Object} a - sRGB color\n * @param {Object} b - sRGB color\n * @returns {Number} color ratio\n */\nconst getContrastRatio = (a, b) => {\n const la = relativeLuminance(a)\n const lb = relativeLuminance(b)\n const [l1, l2] = la > lb ? [la, lb] : [lb, la]\n\n return (l1 + 0.05) / (l2 + 0.05)\n}\n\n/**\n * This performs alpha blending between solid background and semi-transparent foreground\n *\n * @param {Object} fg - top layer color\n * @param {Number} fga - top layer's alpha\n * @param {Object} bg - bottom layer color\n * @returns {Object} sRGB of resulting color\n */\nconst alphaBlend = (fg, fga, bg) => {\n if (fga === 1 || typeof fga === 'undefined') return fg\n return 'rgb'.split('').reduce((acc, c) => {\n // Simplified https://en.wikipedia.org/wiki/Alpha_compositing#Alpha_blending\n // for opaque bg and transparent fg\n acc[c] = (fg[c] * fga + bg[c] * (1 - fga))\n return acc\n }, {})\n}\n\nconst invert = (rgb) => {\n return 'rgb'.split('').reduce((acc, c) => {\n acc[c] = 255 - rgb[c]\n return acc\n }, {})\n}\n\nconst hex2rgb = (hex) => {\n const result = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(hex)\n return result ? {\n r: parseInt(result[1], 16),\n g: parseInt(result[2], 16),\n b: parseInt(result[3], 16)\n } : null\n}\n\nconst mixrgb = (a, b) => {\n return Object.keys(a).reduce((acc, k) => {\n acc[k] = (a[k] + b[k]) / 2\n return acc\n }, {})\n}\n\nexport {\n rgb2hex,\n hex2rgb,\n mixrgb,\n invert,\n getContrastRatio,\n alphaBlend\n}\n","// TODO this func might as well take the entire file and use its mimetype\n// or the entire service could be just mimetype service that only operates\n// on mimetypes and not files. Currently the naming is confusing.\nconst fileType = mimetype => {\n if (mimetype.match(/text\\/html/)) {\n return 'html'\n }\n\n if (mimetype.match(/image/)) {\n return 'image'\n }\n\n if (mimetype.match(/video/)) {\n return 'video'\n }\n\n if (mimetype.match(/audio/)) {\n return 'audio'\n }\n\n return 'unknown'\n}\n\nconst fileMatchesSomeType = (types, file) =>\n types.some(type => fileType(file.mimetype) === type)\n\nconst fileTypeService = {\n fileType,\n fileMatchesSomeType\n}\n\nexport default fileTypeService\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./user_avatar.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./user_avatar.js\"\nimport __vue_script__ from \"!!babel-loader!./user_avatar.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-60cb9afa\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./user_avatar.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","import { times } from 'lodash'\nimport { brightness, invertLightness, convert, contrastRatio } from 'chromatism'\nimport { rgb2hex, hex2rgb, mixrgb, getContrastRatio, alphaBlend } from '../color_convert/color_convert.js'\n\n// While this is not used anymore right now, I left it in if we want to do custom\n// styles that aren't just colors, so user can pick from a few different distinct\n// styles as well as set their own colors in the future.\n\nconst setStyle = (href, commit) => {\n /***\n What's going on here?\n I want to make it easy for admins to style this application. To have\n a good set of default themes, I chose the system from base16\n (https://chriskempson.github.io/base16/) to style all elements. They\n all have the base00..0F classes. So the only thing an admin needs to\n do to style Pleroma is to change these colors in that one css file.\n Some default things (body text color, link color) need to be set dy-\n namically, so this is done here by waiting for the stylesheet to be\n loaded and then creating an element with the respective classes.\n\n It is a bit weird, but should make life for admins somewhat easier.\n ***/\n const head = document.head\n const body = document.body\n body.style.display = 'none'\n const cssEl = document.createElement('link')\n cssEl.setAttribute('rel', 'stylesheet')\n cssEl.setAttribute('href', href)\n head.appendChild(cssEl)\n\n const setDynamic = () => {\n const baseEl = document.createElement('div')\n body.appendChild(baseEl)\n\n let colors = {}\n times(16, (n) => {\n const name = `base0${n.toString(16).toUpperCase()}`\n baseEl.setAttribute('class', name)\n const color = window.getComputedStyle(baseEl).getPropertyValue('color')\n colors[name] = color\n })\n\n body.removeChild(baseEl)\n\n const styleEl = document.createElement('style')\n head.appendChild(styleEl)\n // const styleSheet = styleEl.sheet\n\n body.style.display = 'initial'\n }\n\n cssEl.addEventListener('load', setDynamic)\n}\n\nconst rgb2rgba = function (rgba) {\n return `rgba(${rgba.r}, ${rgba.g}, ${rgba.b}, ${rgba.a})`\n}\n\nconst getTextColor = function (bg, text, preserve) {\n const bgIsLight = convert(bg).hsl.l > 50\n const textIsLight = convert(text).hsl.l > 50\n\n if ((bgIsLight && textIsLight) || (!bgIsLight && !textIsLight)) {\n const base = typeof text.a !== 'undefined' ? { a: text.a } : {}\n const result = Object.assign(base, invertLightness(text).rgb)\n if (!preserve && getContrastRatio(bg, result) < 4.5) {\n return contrastRatio(bg, text).rgb\n }\n return result\n }\n return text\n}\n\nconst applyTheme = (input, commit) => {\n const { rules, theme } = generatePreset(input)\n const head = document.head\n const body = document.body\n body.style.display = 'none'\n\n const styleEl = document.createElement('style')\n head.appendChild(styleEl)\n const styleSheet = styleEl.sheet\n\n styleSheet.toString()\n styleSheet.insertRule(`body { ${rules.radii} }`, 'index-max')\n styleSheet.insertRule(`body { ${rules.colors} }`, 'index-max')\n styleSheet.insertRule(`body { ${rules.shadows} }`, 'index-max')\n styleSheet.insertRule(`body { ${rules.fonts} }`, 'index-max')\n body.style.display = 'initial'\n\n // commit('setOption', { name: 'colors', value: htmlColors })\n // commit('setOption', { name: 'radii', value: radii })\n commit('setOption', { name: 'customTheme', value: input })\n commit('setOption', { name: 'colors', value: theme.colors })\n}\n\nconst getCssShadow = (input, usesDropShadow) => {\n if (input.length === 0) {\n return 'none'\n }\n\n return input\n .filter(_ => usesDropShadow ? _.inset : _)\n .map((shad) => [\n shad.x,\n shad.y,\n shad.blur,\n shad.spread\n ].map(_ => _ + 'px').concat([\n getCssColor(shad.color, shad.alpha),\n shad.inset ? 'inset' : ''\n ]).join(' ')).join(', ')\n}\n\nconst getCssShadowFilter = (input) => {\n if (input.length === 0) {\n return 'none'\n }\n\n return input\n // drop-shadow doesn't support inset or spread\n .filter((shad) => !shad.inset && Number(shad.spread) === 0)\n .map((shad) => [\n shad.x,\n shad.y,\n // drop-shadow's blur is twice as strong compared to box-shadow\n shad.blur / 2\n ].map(_ => _ + 'px').concat([\n getCssColor(shad.color, shad.alpha)\n ]).join(' '))\n .map(_ => `drop-shadow(${_})`)\n .join(' ')\n}\n\nconst getCssColor = (input, a) => {\n let rgb = {}\n if (typeof input === 'object') {\n rgb = input\n } else if (typeof input === 'string') {\n if (input.startsWith('#')) {\n rgb = hex2rgb(input)\n } else if (input.startsWith('--')) {\n return `var(${input})`\n } else {\n return input\n }\n }\n return rgb2rgba({ ...rgb, a })\n}\n\nconst generateColors = (input) => {\n const colors = {}\n const opacity = Object.assign({\n alert: 0.5,\n input: 0.5,\n faint: 0.5\n }, Object.entries(input.opacity || {}).reduce((acc, [k, v]) => {\n if (typeof v !== 'undefined') {\n acc[k] = v\n }\n return acc\n }, {}))\n const col = Object.entries(input.colors || input).reduce((acc, [k, v]) => {\n if (typeof v === 'object') {\n acc[k] = v\n } else {\n acc[k] = hex2rgb(v)\n }\n return acc\n }, {})\n\n const isLightOnDark = convert(col.bg).hsl.l < convert(col.text).hsl.l\n const mod = isLightOnDark ? 1 : -1\n\n colors.text = col.text\n colors.lightText = brightness(20 * mod, colors.text).rgb\n colors.link = col.link\n colors.faint = col.faint || Object.assign({}, col.text)\n\n colors.bg = col.bg\n colors.lightBg = col.lightBg || brightness(5, colors.bg).rgb\n\n colors.fg = col.fg\n colors.fgText = col.fgText || getTextColor(colors.fg, colors.text)\n colors.fgLink = col.fgLink || getTextColor(colors.fg, colors.link, true)\n\n colors.border = col.border || brightness(2 * mod, colors.fg).rgb\n\n colors.btn = col.btn || Object.assign({}, col.fg)\n colors.btnText = col.btnText || getTextColor(colors.btn, colors.fgText)\n\n colors.input = col.input || Object.assign({}, col.fg)\n colors.inputText = col.inputText || getTextColor(colors.input, colors.lightText)\n\n colors.panel = col.panel || Object.assign({}, col.fg)\n colors.panelText = col.panelText || getTextColor(colors.panel, colors.fgText)\n colors.panelLink = col.panelLink || getTextColor(colors.panel, colors.fgLink)\n colors.panelFaint = col.panelFaint || getTextColor(colors.panel, colors.faint)\n\n colors.topBar = col.topBar || Object.assign({}, col.fg)\n colors.topBarText = col.topBarText || getTextColor(colors.topBar, colors.fgText)\n colors.topBarLink = col.topBarLink || getTextColor(colors.topBar, colors.fgLink)\n\n colors.faintLink = col.faintLink || Object.assign({}, col.link)\n colors.linkBg = alphaBlend(colors.link, 0.4, colors.bg)\n\n colors.icon = mixrgb(colors.bg, colors.text)\n\n colors.cBlue = col.cBlue || hex2rgb('#0000FF')\n colors.cRed = col.cRed || hex2rgb('#FF0000')\n colors.cGreen = col.cGreen || hex2rgb('#00FF00')\n colors.cOrange = col.cOrange || hex2rgb('#E3FF00')\n\n colors.alertError = col.alertError || Object.assign({}, colors.cRed)\n colors.alertErrorText = getTextColor(alphaBlend(colors.alertError, opacity.alert, colors.bg), colors.text)\n colors.alertErrorPanelText = getTextColor(alphaBlend(colors.alertError, opacity.alert, colors.panel), colors.panelText)\n\n colors.badgeNotification = col.badgeNotification || Object.assign({}, colors.cRed)\n colors.badgeNotificationText = contrastRatio(colors.badgeNotification).rgb\n\n Object.entries(opacity).forEach(([ k, v ]) => {\n if (typeof v === 'undefined') return\n if (k === 'alert') {\n colors.alertError.a = v\n return\n }\n if (k === 'faint') {\n colors[k + 'Link'].a = v\n colors['panelFaint'].a = v\n }\n if (k === 'bg') {\n colors['lightBg'].a = v\n }\n if (colors[k]) {\n colors[k].a = v\n } else {\n console.error('Wrong key ' + k)\n }\n })\n\n const htmlColors = Object.entries(colors)\n .reduce((acc, [k, v]) => {\n if (!v) return acc\n acc.solid[k] = rgb2hex(v)\n acc.complete[k] = typeof v.a === 'undefined' ? rgb2hex(v) : rgb2rgba(v)\n return acc\n }, { complete: {}, solid: {} })\n return {\n rules: {\n colors: Object.entries(htmlColors.complete)\n .filter(([k, v]) => v)\n .map(([k, v]) => `--${k}: ${v}`)\n .join(';')\n },\n theme: {\n colors: htmlColors.solid,\n opacity\n }\n }\n}\n\nconst generateRadii = (input) => {\n let inputRadii = input.radii || {}\n // v1 -> v2\n if (typeof input.btnRadius !== 'undefined') {\n inputRadii = Object\n .entries(input)\n .filter(([k, v]) => k.endsWith('Radius'))\n .reduce((acc, e) => { acc[e[0].split('Radius')[0]] = e[1]; return acc }, {})\n }\n const radii = Object.entries(inputRadii).filter(([k, v]) => v).reduce((acc, [k, v]) => {\n acc[k] = v\n return acc\n }, {\n btn: 4,\n input: 4,\n checkbox: 2,\n panel: 10,\n avatar: 5,\n avatarAlt: 50,\n tooltip: 2,\n attachment: 5\n })\n\n return {\n rules: {\n radii: Object.entries(radii).filter(([k, v]) => v).map(([k, v]) => `--${k}Radius: ${v}px`).join(';')\n },\n theme: {\n radii\n }\n }\n}\n\nconst generateFonts = (input) => {\n const fonts = Object.entries(input.fonts || {}).filter(([k, v]) => v).reduce((acc, [k, v]) => {\n acc[k] = Object.entries(v).filter(([k, v]) => v).reduce((acc, [k, v]) => {\n acc[k] = v\n return acc\n }, acc[k])\n return acc\n }, {\n interface: {\n family: 'sans-serif'\n },\n input: {\n family: 'inherit'\n },\n post: {\n family: 'inherit'\n },\n postCode: {\n family: 'monospace'\n }\n })\n\n return {\n rules: {\n fonts: Object\n .entries(fonts)\n .filter(([k, v]) => v)\n .map(([k, v]) => `--${k}Font: ${v.family}`).join(';')\n },\n theme: {\n fonts\n }\n }\n}\n\nconst generateShadows = (input) => {\n const border = (top, shadow) => ({\n x: 0,\n y: top ? 1 : -1,\n blur: 0,\n spread: 0,\n color: shadow ? '#000000' : '#FFFFFF',\n alpha: 0.2,\n inset: true\n })\n const buttonInsetFakeBorders = [border(true, false), border(false, true)]\n const inputInsetFakeBorders = [border(true, true), border(false, false)]\n const hoverGlow = {\n x: 0,\n y: 0,\n blur: 4,\n spread: 0,\n color: '--faint',\n alpha: 1\n }\n\n const shadows = {\n panel: [{\n x: 1,\n y: 1,\n blur: 4,\n spread: 0,\n color: '#000000',\n alpha: 0.6\n }],\n topBar: [{\n x: 0,\n y: 0,\n blur: 4,\n spread: 0,\n color: '#000000',\n alpha: 0.6\n }],\n popup: [{\n x: 2,\n y: 2,\n blur: 3,\n spread: 0,\n color: '#000000',\n alpha: 0.5\n }],\n avatar: [{\n x: 0,\n y: 1,\n blur: 8,\n spread: 0,\n color: '#000000',\n alpha: 0.7\n }],\n avatarStatus: [],\n panelHeader: [],\n button: [{\n x: 0,\n y: 0,\n blur: 2,\n spread: 0,\n color: '#000000',\n alpha: 1\n }, ...buttonInsetFakeBorders],\n buttonHover: [hoverGlow, ...buttonInsetFakeBorders],\n buttonPressed: [hoverGlow, ...inputInsetFakeBorders],\n input: [...inputInsetFakeBorders, {\n x: 0,\n y: 0,\n blur: 2,\n inset: true,\n spread: 0,\n color: '#000000',\n alpha: 1\n }],\n ...(input.shadows || {})\n }\n\n return {\n rules: {\n shadows: Object\n .entries(shadows)\n // TODO for v2.1: if shadow doesn't have non-inset shadows with spread > 0 - optionally\n // convert all non-inset shadows into filter: drop-shadow() to boost performance\n .map(([k, v]) => [\n `--${k}Shadow: ${getCssShadow(v)}`,\n `--${k}ShadowFilter: ${getCssShadowFilter(v)}`,\n `--${k}ShadowInset: ${getCssShadow(v, true)}`\n ].join(';'))\n .join(';')\n },\n theme: {\n shadows\n }\n }\n}\n\nconst composePreset = (colors, radii, shadows, fonts) => {\n return {\n rules: {\n ...shadows.rules,\n ...colors.rules,\n ...radii.rules,\n ...fonts.rules\n },\n theme: {\n ...shadows.theme,\n ...colors.theme,\n ...radii.theme,\n ...fonts.theme\n }\n }\n}\n\nconst generatePreset = (input) => {\n const shadows = generateShadows(input)\n const colors = generateColors(input)\n const radii = generateRadii(input)\n const fonts = generateFonts(input)\n\n return composePreset(colors, radii, shadows, fonts)\n}\n\nconst getThemes = () => {\n return window.fetch('/static/styles.json')\n .then((data) => data.json())\n .then((themes) => {\n return Promise.all(Object.entries(themes).map(([k, v]) => {\n if (typeof v === 'object') {\n return Promise.resolve([k, v])\n } else if (typeof v === 'string') {\n return window.fetch(v)\n .then((data) => data.json())\n .then((theme) => {\n return [k, theme]\n })\n .catch((e) => {\n console.error(e)\n return []\n })\n }\n }))\n })\n .then((promises) => {\n return promises\n .filter(([k, v]) => v)\n .reduce((acc, [k, v]) => {\n acc[k] = v\n return acc\n }, {})\n })\n}\n\nconst setPreset = (val, commit) => {\n return getThemes().then((themes) => {\n const theme = themes[val] ? themes[val] : themes['pleroma-dark']\n const isV1 = Array.isArray(theme)\n const data = isV1 ? {} : theme.theme\n\n if (isV1) {\n const bgRgb = hex2rgb(theme[1])\n const fgRgb = hex2rgb(theme[2])\n const textRgb = hex2rgb(theme[3])\n const linkRgb = hex2rgb(theme[4])\n\n const cRedRgb = hex2rgb(theme[5] || '#FF0000')\n const cGreenRgb = hex2rgb(theme[6] || '#00FF00')\n const cBlueRgb = hex2rgb(theme[7] || '#0000FF')\n const cOrangeRgb = hex2rgb(theme[8] || '#E3FF00')\n\n data.colors = {\n bg: bgRgb,\n fg: fgRgb,\n text: textRgb,\n link: linkRgb,\n cRed: cRedRgb,\n cBlue: cBlueRgb,\n cGreen: cGreenRgb,\n cOrange: cOrangeRgb\n }\n }\n\n // This is a hack, this function is only called during initial load.\n // We want to cancel loading the theme from config.json if we're already\n // loading a theme from the persisted state.\n // Needed some way of dealing with the async way of things.\n // load config -> set preset -> wait for styles.json to load ->\n // load persisted state -> set colors -> styles.json loaded -> set colors\n if (!window.themeLoaded) {\n applyTheme(data, commit)\n }\n })\n}\n\nexport {\n setStyle,\n setPreset,\n applyTheme,\n getTextColor,\n generateColors,\n generateRadii,\n generateShadows,\n generateFonts,\n generatePreset,\n getThemes,\n composePreset,\n getCssShadow,\n getCssShadowFilter\n}\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./status.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./status.js\"\nimport __vue_script__ from \"!!babel-loader!./status.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-15f4f97e\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./status.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!./notifications.scss\")\n}\n/* script */\nexport * from \"!!babel-loader!./notifications.js\"\nimport __vue_script__ from \"!!babel-loader!./notifications.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-168f6ab6\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./notifications.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./basic_user_card.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./basic_user_card.js\"\nimport __vue_script__ from \"!!babel-loader!./basic_user_card.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-ce0f370a\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./basic_user_card.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","import Timeline from '../timeline/timeline.vue'\nconst PublicTimeline = {\n components: {\n Timeline\n },\n computed: {\n timeline () { return this.$store.state.statuses.timelines.public }\n },\n created () {\n this.$store.dispatch('startFetchingTimeline', { timeline: 'public' })\n },\n destroyed () {\n this.$store.dispatch('stopFetching', 'public')\n }\n\n}\n\nexport default PublicTimeline\n","import Status from '../status/status.vue'\nimport timelineFetcher from '../../services/timeline_fetcher/timeline_fetcher.service.js'\nimport Conversation from '../conversation/conversation.vue'\nimport { throttle } from 'lodash'\n\nconst Timeline = {\n props: [\n 'timeline',\n 'timelineName',\n 'title',\n 'userId',\n 'tag',\n 'embedded',\n 'count'\n ],\n data () {\n return {\n paused: false,\n unfocused: false,\n bottomedOut: false\n }\n },\n computed: {\n timelineError () { return this.$store.state.statuses.error },\n newStatusCount () {\n return this.timeline.newStatusCount\n },\n newStatusCountStr () {\n if (this.timeline.flushMarker !== 0) {\n return ''\n } else {\n return ` (${this.newStatusCount})`\n }\n },\n classes () {\n return {\n root: ['timeline'].concat(!this.embedded ? ['panel', 'panel-default'] : []),\n header: ['timeline-heading'].concat(!this.embedded ? ['panel-heading'] : []),\n body: ['timeline-body'].concat(!this.embedded ? ['panel-body'] : []),\n footer: ['timeline-footer'].concat(!this.embedded ? ['panel-footer'] : [])\n }\n }\n },\n components: {\n Status,\n Conversation\n },\n created () {\n const store = this.$store\n const credentials = store.state.users.currentUser.credentials\n const showImmediately = this.timeline.visibleStatuses.length === 0\n\n window.addEventListener('scroll', this.scrollLoad)\n\n if (store.state.api.fetchers[this.timelineName]) { return false }\n\n timelineFetcher.fetchAndUpdate({\n store,\n credentials,\n timeline: this.timelineName,\n showImmediately,\n userId: this.userId,\n tag: this.tag\n })\n },\n mounted () {\n if (typeof document.hidden !== 'undefined') {\n document.addEventListener('visibilitychange', this.handleVisibilityChange, false)\n this.unfocused = document.hidden\n }\n window.addEventListener('keydown', this.handleShortKey)\n },\n destroyed () {\n window.removeEventListener('scroll', this.scrollLoad)\n window.removeEventListener('keydown', this.handleShortKey)\n if (typeof document.hidden !== 'undefined') document.removeEventListener('visibilitychange', this.handleVisibilityChange, false)\n this.$store.commit('setLoading', { timeline: this.timelineName, value: false })\n },\n methods: {\n handleShortKey (e) {\n // Ignore when input fields are focused\n if (['textarea', 'input'].includes(e.target.tagName.toLowerCase())) return\n if (e.key === '.') this.showNewStatuses()\n },\n showNewStatuses () {\n if (this.newStatusCount === 0) return\n\n if (this.timeline.flushMarker !== 0) {\n this.$store.commit('clearTimeline', { timeline: this.timelineName })\n this.$store.commit('queueFlush', { timeline: this.timelineName, id: 0 })\n this.fetchOlderStatuses()\n } else {\n this.$store.commit('showNewStatuses', { timeline: this.timelineName })\n this.paused = false\n }\n },\n fetchOlderStatuses: throttle(function () {\n const store = this.$store\n const credentials = store.state.users.currentUser.credentials\n store.commit('setLoading', { timeline: this.timelineName, value: true })\n timelineFetcher.fetchAndUpdate({\n store,\n credentials,\n timeline: this.timelineName,\n older: true,\n showImmediately: true,\n userId: this.userId,\n tag: this.tag\n }).then(statuses => {\n store.commit('setLoading', { timeline: this.timelineName, value: false })\n if (statuses && statuses.length === 0) {\n this.bottomedOut = true\n }\n })\n }, 1000, this),\n scrollLoad (e) {\n const bodyBRect = document.body.getBoundingClientRect()\n const height = Math.max(bodyBRect.height, -(bodyBRect.y))\n if (this.timeline.loading === false &&\n this.$store.state.config.autoLoad &&\n this.$el.offsetHeight > 0 &&\n (window.innerHeight + window.pageYOffset) >= (height - 750)) {\n this.fetchOlderStatuses()\n }\n },\n handleVisibilityChange () {\n this.unfocused = document.hidden\n }\n },\n watch: {\n newStatusCount (count) {\n if (!this.$store.state.config.streaming) {\n return\n }\n if (count > 0) {\n // only 'stream' them when you're scrolled to the top\n const doc = document.documentElement\n const top = (window.pageYOffset || doc.scrollTop) - (doc.clientTop || 0)\n if (top < 15 &&\n !this.paused &&\n !(this.unfocused && this.$store.state.config.pauseOnUnfocused)\n ) {\n this.showNewStatuses()\n } else {\n this.paused = true\n }\n }\n }\n }\n}\n\nexport default Timeline\n","import Attachment from '../attachment/attachment.vue'\nimport FavoriteButton from '../favorite_button/favorite_button.vue'\nimport RetweetButton from '../retweet_button/retweet_button.vue'\nimport Poll from '../poll/poll.vue'\nimport ExtraButtons from '../extra_buttons/extra_buttons.vue'\nimport PostStatusForm from '../post_status_form/post_status_form.vue'\nimport UserCard from '../user_card/user_card.vue'\nimport UserAvatar from '../user_avatar/user_avatar.vue'\nimport Gallery from '../gallery/gallery.vue'\nimport LinkPreview from '../link-preview/link-preview.vue'\nimport AvatarList from '../avatar_list/avatar_list.vue'\nimport Timeago from '../timeago/timeago.vue'\nimport generateProfileLink from 'src/services/user_profile_link_generator/user_profile_link_generator'\nimport fileType from 'src/services/file_type/file_type.service'\nimport { highlightClass, highlightStyle } from '../../services/user_highlighter/user_highlighter.js'\nimport { mentionMatchesUrl, extractTagFromUrl } from 'src/services/matcher/matcher.service.js'\nimport { filter, find, unescape, uniqBy } from 'lodash'\n\nconst Status = {\n name: 'Status',\n props: [\n 'statusoid',\n 'expandable',\n 'inConversation',\n 'focused',\n 'highlight',\n 'compact',\n 'replies',\n 'isPreview',\n 'noHeading',\n 'inlineExpanded',\n 'showPinned'\n ],\n data () {\n return {\n replying: false,\n unmuted: false,\n userExpanded: false,\n preview: null,\n showPreview: false,\n showingTall: this.inConversation && this.focused,\n showingLongSubject: false,\n error: null,\n expandingSubject: typeof this.$store.state.config.collapseMessageWithSubject === 'undefined'\n ? !this.$store.state.instance.collapseMessageWithSubject\n : !this.$store.state.config.collapseMessageWithSubject,\n betterShadow: this.$store.state.interface.browserSupport.cssFilter\n }\n },\n computed: {\n localCollapseSubjectDefault () {\n return typeof this.$store.state.config.collapseMessageWithSubject === 'undefined'\n ? this.$store.state.instance.collapseMessageWithSubject\n : this.$store.state.config.collapseMessageWithSubject\n },\n muteWords () {\n return this.$store.state.config.muteWords\n },\n repeaterClass () {\n const user = this.statusoid.user\n return highlightClass(user)\n },\n userClass () {\n const user = this.retweet ? (this.statusoid.retweeted_status.user) : this.statusoid.user\n return highlightClass(user)\n },\n deleted () {\n return this.statusoid.deleted\n },\n repeaterStyle () {\n const user = this.statusoid.user\n const highlight = this.$store.state.config.highlight\n return highlightStyle(highlight[user.screen_name])\n },\n userStyle () {\n if (this.noHeading) return\n const user = this.retweet ? (this.statusoid.retweeted_status.user) : this.statusoid.user\n const highlight = this.$store.state.config.highlight\n return highlightStyle(highlight[user.screen_name])\n },\n hideAttachments () {\n return (this.$store.state.config.hideAttachments && !this.inConversation) ||\n (this.$store.state.config.hideAttachmentsInConv && this.inConversation)\n },\n userProfileLink () {\n return this.generateUserProfileLink(this.status.user.id, this.status.user.screen_name)\n },\n replyProfileLink () {\n if (this.isReply) {\n return this.generateUserProfileLink(this.status.in_reply_to_user_id, this.replyToName)\n }\n },\n retweet () { return !!this.statusoid.retweeted_status },\n retweeter () { return this.statusoid.user.name || this.statusoid.user.screen_name },\n retweeterHtml () { return this.statusoid.user.name_html },\n retweeterProfileLink () { return this.generateUserProfileLink(this.statusoid.user.id, this.statusoid.user.screen_name) },\n status () {\n if (this.retweet) {\n return this.statusoid.retweeted_status\n } else {\n return this.statusoid\n }\n },\n statusFromGlobalRepository () {\n // NOTE: Consider to replace status with statusFromGlobalRepository\n return this.$store.state.statuses.allStatusesObject[this.status.id]\n },\n loggedIn () {\n return !!this.$store.state.users.currentUser\n },\n muteWordHits () {\n const statusText = this.status.text.toLowerCase()\n const hits = filter(this.muteWords, (muteWord) => {\n return statusText.includes(muteWord.toLowerCase())\n })\n\n return hits\n },\n muted () { return !this.unmuted && (this.status.user.muted || this.muteWordHits.length > 0) },\n hideFilteredStatuses () {\n return typeof this.$store.state.config.hideFilteredStatuses === 'undefined'\n ? this.$store.state.instance.hideFilteredStatuses\n : this.$store.state.config.hideFilteredStatuses\n },\n hideStatus () {\n return (this.hideReply || this.deleted) || (this.muted && this.hideFilteredStatuses)\n },\n isFocused () {\n // retweet or root of an expanded conversation\n if (this.focused) {\n return true\n } else if (!this.inConversation) {\n return false\n }\n // use conversation highlight only when in conversation\n return this.status.id === this.highlight\n },\n // This is a bit hacky, but we want to approximate post height before rendering\n // so we count newlines (masto uses <p> for paragraphs, GS uses <br> between them)\n // as well as approximate line count by counting characters and approximating ~80\n // per line.\n //\n // Using max-height + overflow: auto for status components resulted in false positives\n // very often with japanese characters, and it was very annoying.\n tallStatus () {\n const lengthScore = this.status.statusnet_html.split(/<p|<br/).length + this.status.text.length / 80\n return lengthScore > 20\n },\n longSubject () {\n return this.status.summary.length > 900\n },\n isReply () {\n return !!(this.status.in_reply_to_status_id && this.status.in_reply_to_user_id)\n },\n replyToName () {\n if (this.status.in_reply_to_screen_name) {\n return this.status.in_reply_to_screen_name\n } else {\n const user = this.$store.getters.findUser(this.status.in_reply_to_user_id)\n return user && user.screen_name\n }\n },\n hideReply () {\n if (this.$store.state.config.replyVisibility === 'all') {\n return false\n }\n if (this.inConversation || !this.isReply) {\n return false\n }\n if (this.status.user.id === this.$store.state.users.currentUser.id) {\n return false\n }\n if (this.status.type === 'retweet') {\n return false\n }\n var checkFollowing = this.$store.state.config.replyVisibility === 'following'\n for (var i = 0; i < this.status.attentions.length; ++i) {\n if (this.status.user.id === this.status.attentions[i].id) {\n continue\n }\n if (checkFollowing && this.$store.getters.findUser(this.status.attentions[i].id).following) {\n return false\n }\n if (this.status.attentions[i].id === this.$store.state.users.currentUser.id) {\n return false\n }\n }\n return this.status.attentions.length > 0\n },\n hideSubjectStatus () {\n if (this.tallStatus && !this.localCollapseSubjectDefault) {\n return false\n }\n return !this.expandingSubject && this.status.summary\n },\n hideTallStatus () {\n if (this.status.summary && this.localCollapseSubjectDefault) {\n return false\n }\n if (this.showingTall) {\n return false\n }\n return this.tallStatus\n },\n showingMore () {\n return (this.tallStatus && this.showingTall) || (this.status.summary && this.expandingSubject)\n },\n nsfwClickthrough () {\n if (!this.status.nsfw) {\n return false\n }\n if (this.status.summary && this.localCollapseSubjectDefault) {\n return false\n }\n return true\n },\n replySubject () {\n if (!this.status.summary) return ''\n const decodedSummary = unescape(this.status.summary)\n const behavior = typeof this.$store.state.config.subjectLineBehavior === 'undefined'\n ? this.$store.state.instance.subjectLineBehavior\n : this.$store.state.config.subjectLineBehavior\n const startsWithRe = decodedSummary.match(/^re[: ]/i)\n if (behavior !== 'noop' && startsWithRe || behavior === 'masto') {\n return decodedSummary\n } else if (behavior === 'email') {\n return 're: '.concat(decodedSummary)\n } else if (behavior === 'noop') {\n return ''\n }\n },\n attachmentSize () {\n if ((this.$store.state.config.hideAttachments && !this.inConversation) ||\n (this.$store.state.config.hideAttachmentsInConv && this.inConversation) ||\n (this.status.attachments.length > this.maxThumbnails)) {\n return 'hide'\n } else if (this.compact) {\n return 'small'\n }\n return 'normal'\n },\n galleryTypes () {\n if (this.attachmentSize === 'hide') {\n return []\n }\n return this.$store.state.config.playVideosInModal\n ? ['image', 'video']\n : ['image']\n },\n galleryAttachments () {\n return this.status.attachments.filter(\n file => fileType.fileMatchesSomeType(this.galleryTypes, file)\n )\n },\n nonGalleryAttachments () {\n return this.status.attachments.filter(\n file => !fileType.fileMatchesSomeType(this.galleryTypes, file)\n )\n },\n maxThumbnails () {\n return this.$store.state.config.maxThumbnails\n },\n contentHtml () {\n if (!this.status.summary_html) {\n return this.status.statusnet_html\n }\n return this.status.summary_html + '<br />' + this.status.statusnet_html\n },\n combinedFavsAndRepeatsUsers () {\n // Use the status from the global status repository since favs and repeats are saved in it\n const combinedUsers = [].concat(\n this.statusFromGlobalRepository.favoritedBy,\n this.statusFromGlobalRepository.rebloggedBy\n )\n return uniqBy(combinedUsers, 'id')\n },\n ownStatus () {\n return this.status.user.id === this.$store.state.users.currentUser.id\n },\n tags () {\n return this.status.tags.filter(tagObj => tagObj.hasOwnProperty('name')).map(tagObj => tagObj.name).join(' ')\n }\n },\n components: {\n Attachment,\n FavoriteButton,\n RetweetButton,\n ExtraButtons,\n PostStatusForm,\n Poll,\n UserCard,\n UserAvatar,\n Gallery,\n LinkPreview,\n AvatarList,\n Timeago\n },\n methods: {\n visibilityIcon (visibility) {\n switch (visibility) {\n case 'private':\n return 'icon-lock'\n case 'unlisted':\n return 'icon-lock-open-alt'\n case 'direct':\n return 'icon-mail-alt'\n default:\n return 'icon-globe'\n }\n },\n showError (error) {\n this.error = error\n },\n clearError () {\n this.error = undefined\n },\n linkClicked (event) {\n let { target } = event\n if (target.tagName === 'SPAN') {\n target = target.parentNode\n }\n if (target.tagName === 'A') {\n if (target.className.match(/mention/)) {\n const href = target.href\n const attn = this.status.attentions.find(attn => mentionMatchesUrl(attn, href))\n if (attn) {\n event.stopPropagation()\n event.preventDefault()\n const link = this.generateUserProfileLink(attn.id, attn.screen_name)\n this.$router.push(link)\n return\n }\n }\n if (target.className.match(/hashtag/)) {\n // Extract tag name from link url\n const tag = extractTagFromUrl(target.href)\n if (tag) {\n const link = this.generateTagLink(tag)\n this.$router.push(link)\n return\n }\n }\n window.open(target.href, '_blank')\n }\n },\n toggleReplying () {\n this.replying = !this.replying\n },\n gotoOriginal (id) {\n if (this.inConversation) {\n this.$emit('goto', id)\n }\n },\n toggleExpanded () {\n this.$emit('toggleExpanded')\n },\n toggleMute () {\n this.unmuted = !this.unmuted\n },\n toggleUserExpanded () {\n this.userExpanded = !this.userExpanded\n },\n toggleShowMore () {\n if (this.showingTall) {\n this.showingTall = false\n } else if (this.expandingSubject && this.status.summary) {\n this.expandingSubject = false\n } else if (this.hideTallStatus) {\n this.showingTall = true\n } else if (this.hideSubjectStatus && this.status.summary) {\n this.expandingSubject = true\n }\n },\n replyEnter (id, event) {\n this.showPreview = true\n const targetId = id\n const statuses = this.$store.state.statuses.allStatuses\n\n if (!this.preview) {\n // if we have the status somewhere already\n this.preview = find(statuses, { 'id': targetId })\n // or if we have to fetch it\n if (!this.preview) {\n this.$store.state.api.backendInteractor.fetchStatus({ id }).then((status) => {\n this.preview = status\n })\n }\n } else if (this.preview.id !== targetId) {\n this.preview = find(statuses, { 'id': targetId })\n }\n },\n replyLeave () {\n this.showPreview = false\n },\n generateUserProfileLink (id, name) {\n return generateProfileLink(id, name, this.$store.state.instance.restrictedNicknames)\n },\n generateTagLink (tag) {\n return `/tag/${tag}`\n },\n setMedia () {\n const attachments = this.attachmentSize === 'hide' ? this.status.attachments : this.galleryAttachments\n return () => this.$store.dispatch('setMedia', attachments)\n }\n },\n watch: {\n 'highlight': function (id) {\n if (this.status.id === id) {\n let rect = this.$el.getBoundingClientRect()\n if (rect.top < 100) {\n // Post is above screen, match its top to screen top\n window.scrollBy(0, rect.top - 100)\n } else if (rect.height >= (window.innerHeight - 50)) {\n // Post we want to see is taller than screen so match its top to screen top\n window.scrollBy(0, rect.top - 100)\n } else if (rect.bottom > window.innerHeight - 50) {\n // Post is below screen, match its bottom to screen bottom\n window.scrollBy(0, rect.bottom - window.innerHeight + 50)\n }\n }\n }\n },\n filters: {\n capitalize: function (str) {\n return str.charAt(0).toUpperCase() + str.slice(1)\n }\n }\n}\n\nexport default Status\n","import StillImage from '../still-image/still-image.vue'\nimport VideoAttachment from '../video_attachment/video_attachment.vue'\nimport nsfwImage from '../../assets/nsfw.png'\nimport fileTypeService from '../../services/file_type/file_type.service.js'\n\nconst Attachment = {\n props: [\n 'attachment',\n 'nsfw',\n 'statusId',\n 'size',\n 'allowPlay',\n 'setMedia'\n ],\n data () {\n return {\n nsfwImage: this.$store.state.instance.nsfwCensorImage || nsfwImage,\n hideNsfwLocal: this.$store.state.config.hideNsfw,\n preloadImage: this.$store.state.config.preloadImage,\n loading: false,\n img: fileTypeService.fileType(this.attachment.mimetype) === 'image' && document.createElement('img'),\n modalOpen: false,\n showHidden: false\n }\n },\n components: {\n StillImage,\n VideoAttachment\n },\n computed: {\n usePlaceHolder () {\n return this.size === 'hide' || this.type === 'unknown'\n },\n referrerpolicy () {\n return this.$store.state.instance.mediaProxyAvailable ? '' : 'no-referrer'\n },\n type () {\n return fileTypeService.fileType(this.attachment.mimetype)\n },\n hidden () {\n return this.nsfw && this.hideNsfwLocal && !this.showHidden\n },\n isEmpty () {\n return (this.type === 'html' && !this.attachment.oembed) || this.type === 'unknown'\n },\n isSmall () {\n return this.size === 'small'\n },\n fullwidth () {\n return this.type === 'html' || this.type === 'audio'\n }\n },\n methods: {\n linkClicked ({target}) {\n if (target.tagName === 'A') {\n window.open(target.href, '_blank')\n }\n },\n openModal (event) {\n const modalTypes = this.$store.state.config.playVideosInModal\n ? ['image', 'video']\n : ['image']\n if (fileTypeService.fileMatchesSomeType(modalTypes, this.attachment) ||\n this.usePlaceHolder\n ) {\n event.stopPropagation()\n event.preventDefault()\n this.setMedia()\n this.$store.dispatch('setCurrent', this.attachment)\n }\n },\n toggleHidden (event) {\n if (this.$store.state.config.useOneClickNsfw && !this.showHidden) {\n this.openModal(event)\n return\n }\n if (this.img && !this.preloadImage) {\n if (this.img.onload) {\n this.img.onload()\n } else {\n this.loading = true\n this.img.src = this.attachment.url\n this.img.onload = () => {\n this.loading = false\n this.showHidden = !this.showHidden\n }\n }\n } else {\n this.showHidden = !this.showHidden\n }\n }\n }\n}\n\nexport default Attachment\n","const StillImage = {\n props: [\n 'src',\n 'referrerpolicy',\n 'mimetype',\n 'imageLoadError'\n ],\n data () {\n return {\n stopGifs: this.$store.state.config.stopGifs\n }\n },\n computed: {\n animated () {\n return this.stopGifs && (this.mimetype === 'image/gif' || this.src.endsWith('.gif'))\n }\n },\n methods: {\n onLoad () {\n const canvas = this.$refs.canvas\n if (!canvas) return\n const width = this.$refs.src.naturalWidth\n const height = this.$refs.src.naturalHeight\n canvas.width = width\n canvas.height = height\n canvas.getContext('2d').drawImage(this.$refs.src, 0, 0, width, height)\n },\n onError () {\n this.imageLoadError && this.imageLoadError()\n }\n }\n}\n\nexport default StillImage\n","\nconst VideoAttachment = {\n props: ['attachment', 'controls'],\n data () {\n return {\n loopVideo: this.$store.state.config.loopVideo\n }\n },\n methods: {\n onVideoDataLoad (e) {\n const target = e.srcElement || e.target\n if (typeof target.webkitAudioDecodedByteCount !== 'undefined') {\n // non-zero if video has audio track\n if (target.webkitAudioDecodedByteCount > 0) {\n this.loopVideo = this.loopVideo && !this.$store.state.config.loopVideoSilentOnly\n }\n } else if (typeof target.mozHasAudio !== 'undefined') {\n // true if video has audio track\n if (target.mozHasAudio) {\n this.loopVideo = this.loopVideo && !this.$store.state.config.loopVideoSilentOnly\n }\n } else if (typeof target.audioTracks !== 'undefined') {\n if (target.audioTracks.length > 0) {\n this.loopVideo = this.loopVideo && !this.$store.state.config.loopVideoSilentOnly\n }\n }\n }\n }\n}\n\nexport default VideoAttachment\n","const FavoriteButton = {\n props: ['status', 'loggedIn'],\n data () {\n return {\n hidePostStatsLocal: typeof this.$store.state.config.hidePostStats === 'undefined'\n ? this.$store.state.instance.hidePostStats\n : this.$store.state.config.hidePostStats,\n animated: false\n }\n },\n methods: {\n favorite () {\n if (!this.status.favorited) {\n this.$store.dispatch('favorite', {id: this.status.id})\n } else {\n this.$store.dispatch('unfavorite', {id: this.status.id})\n }\n this.animated = true\n setTimeout(() => {\n this.animated = false\n }, 500)\n }\n },\n computed: {\n classes () {\n return {\n 'icon-star-empty': !this.status.favorited,\n 'icon-star': this.status.favorited,\n 'animate-spin': this.animated\n }\n }\n }\n}\n\nexport default FavoriteButton\n","const RetweetButton = {\n props: ['status', 'loggedIn', 'visibility'],\n data () {\n return {\n hidePostStatsLocal: typeof this.$store.state.config.hidePostStats === 'undefined'\n ? this.$store.state.instance.hidePostStats\n : this.$store.state.config.hidePostStats,\n animated: false\n }\n },\n methods: {\n retweet () {\n if (!this.status.repeated) {\n this.$store.dispatch('retweet', {id: this.status.id})\n } else {\n this.$store.dispatch('unretweet', {id: this.status.id})\n }\n this.animated = true\n setTimeout(() => {\n this.animated = false\n }, 500)\n }\n },\n computed: {\n classes () {\n return {\n 'retweeted': this.status.repeated,\n 'retweeted-empty': !this.status.repeated,\n 'animate-spin': this.animated\n }\n }\n }\n}\n\nexport default RetweetButton\n","import Timeago from '../timeago/timeago.vue'\nimport { forEach, map } from 'lodash'\n\nexport default {\n name: 'Poll',\n props: ['basePoll'],\n components: { Timeago },\n data () {\n return {\n loading: false,\n choices: []\n }\n },\n created () {\n if (!this.$store.state.polls.pollsObject[this.pollId]) {\n this.$store.dispatch('mergeOrAddPoll', this.basePoll)\n }\n this.$store.dispatch('trackPoll', this.pollId)\n },\n destroyed () {\n this.$store.dispatch('untrackPoll', this.pollId)\n },\n computed: {\n pollId () {\n return this.basePoll.id\n },\n poll () {\n const storePoll = this.$store.state.polls.pollsObject[this.pollId]\n return storePoll || {}\n },\n options () {\n return (this.poll && this.poll.options) || []\n },\n expiresAt () {\n return (this.poll && this.poll.expires_at) || 0\n },\n expired () {\n return (this.poll && this.poll.expired) || false\n },\n loggedIn () {\n return this.$store.state.users.currentUser\n },\n showResults () {\n return this.poll.voted || this.expired || !this.loggedIn\n },\n totalVotesCount () {\n return this.poll.votes_count\n },\n containerClass () {\n return {\n loading: this.loading\n }\n },\n choiceIndices () {\n // Convert array of booleans into an array of indices of the\n // items that were 'true', so [true, false, false, true] becomes\n // [0, 3].\n return this.choices\n .map((entry, index) => entry && index)\n .filter(value => typeof value === 'number')\n },\n isDisabled () {\n const noChoice = this.choiceIndices.length === 0\n return this.loading || noChoice\n }\n },\n methods: {\n percentageForOption (count) {\n return this.totalVotesCount === 0 ? 0 : Math.round(count / this.totalVotesCount * 100)\n },\n resultTitle (option) {\n return `${option.votes_count}/${this.totalVotesCount} ${this.$t('polls.votes')}`\n },\n fetchPoll () {\n this.$store.dispatch('refreshPoll', { id: this.statusId, pollId: this.poll.id })\n },\n activateOption (index) {\n // forgive me father: doing checking the radio/checkboxes\n // in code because of customized input elements need either\n // a) an extra element for the actual graphic, or b) use a\n // pseudo element for the label. We use b) which mandates\n // using \"for\" and \"id\" matching which isn't nice when the\n // same poll appears multiple times on the site (notifs and\n // timeline for example). With code we can make sure it just\n // works without altering the pseudo element implementation.\n const allElements = this.$el.querySelectorAll('input')\n const clickedElement = this.$el.querySelector(`input[value=\"${index}\"]`)\n if (this.poll.multiple) {\n // Checkboxes, toggle only the clicked one\n clickedElement.checked = !clickedElement.checked\n } else {\n // Radio button, uncheck everything and check the clicked one\n forEach(allElements, element => { element.checked = false })\n clickedElement.checked = true\n }\n this.choices = map(allElements, e => e.checked)\n },\n optionId (index) {\n return `poll${this.poll.id}-${index}`\n },\n vote () {\n if (this.choiceIndices.length === 0) return\n this.loading = true\n this.$store.dispatch(\n 'votePoll',\n { id: this.statusId, pollId: this.poll.id, choices: this.choiceIndices }\n ).then(poll => {\n this.loading = false\n })\n }\n }\n}\n","<template>\n <time :datetime=\"time\" :title=\"localeDateString\">\n {{ $t(relativeTime.key, [relativeTime.num]) }}\n </time>\n</template>\n\n<script>\nimport * as DateUtils from 'src/services/date_utils/date_utils.js'\n\nexport default {\n name: 'Timeago',\n props: ['time', 'autoUpdate', 'longFormat', 'nowThreshold'],\n data () {\n return {\n relativeTime: { key: 'time.now', num: 0 },\n interval: null\n }\n },\n created () {\n this.refreshRelativeTimeObject()\n },\n destroyed () {\n clearTimeout(this.interval)\n },\n computed: {\n localeDateString () {\n return typeof this.time === 'string'\n ? new Date(Date.parse(this.time)).toLocaleString()\n : this.time.toLocaleString()\n }\n },\n methods: {\n refreshRelativeTimeObject () {\n const nowThreshold = typeof this.nowThreshold === 'number' ? this.nowThreshold : 1\n this.relativeTime = this.longFormat\n ? DateUtils.relativeTime(this.time, nowThreshold)\n : DateUtils.relativeTimeShort(this.time, nowThreshold)\n\n if (this.autoUpdate) {\n this.interval = setTimeout(\n this.refreshRelativeTimeObject,\n 1000 * this.autoUpdate\n )\n }\n }\n }\n}\n</script>","import Popper from 'vue-popperjs/src/component/popper.js.vue'\n\nconst ExtraButtons = {\n props: [ 'status' ],\n components: {\n Popper\n },\n data () {\n return {\n showDropDown: false,\n showPopper: true\n }\n },\n methods: {\n deleteStatus () {\n this.refreshPopper()\n const confirmed = window.confirm(this.$t('status.delete_confirm'))\n if (confirmed) {\n this.$store.dispatch('deleteStatus', { id: this.status.id })\n }\n },\n toggleMenu () {\n this.showDropDown = !this.showDropDown\n },\n pinStatus () {\n this.refreshPopper()\n this.$store.dispatch('pinStatus', this.status.id)\n .then(() => this.$emit('onSuccess'))\n .catch(err => this.$emit('onError', err.error.error))\n },\n unpinStatus () {\n this.refreshPopper()\n this.$store.dispatch('unpinStatus', this.status.id)\n .then(() => this.$emit('onSuccess'))\n .catch(err => this.$emit('onError', err.error.error))\n },\n refreshPopper () {\n this.showPopper = false\n this.showDropDown = false\n setTimeout(() => {\n this.showPopper = true\n })\n }\n },\n computed: {\n currentUser () { return this.$store.state.users.currentUser },\n canDelete () {\n if (!this.currentUser) { return }\n const superuser = this.currentUser.rights.moderator || this.currentUser.rights.admin\n return superuser || this.status.user.id === this.currentUser.id\n },\n ownStatus () {\n return this.status.user.id === this.currentUser.id\n },\n canPin () {\n return this.ownStatus && (this.status.visibility === 'public' || this.status.visibility === 'unlisted')\n },\n enabled () {\n return this.canPin || this.canDelete\n }\n }\n}\n\nexport default ExtraButtons\n","import statusPoster from '../../services/status_poster/status_poster.service.js'\nimport MediaUpload from '../media_upload/media_upload.vue'\nimport ScopeSelector from '../scope_selector/scope_selector.vue'\nimport EmojiInput from '../emoji-input/emoji-input.vue'\nimport PollForm from '../poll/poll_form.vue'\nimport fileTypeService from '../../services/file_type/file_type.service.js'\nimport { reject, map, uniqBy } from 'lodash'\nimport suggestor from '../emoji-input/suggestor.js'\n\nconst buildMentionsString = ({ user, attentions }, currentUser) => {\n let allAttentions = [...attentions]\n\n allAttentions.unshift(user)\n\n allAttentions = uniqBy(allAttentions, 'id')\n allAttentions = reject(allAttentions, { id: currentUser.id })\n\n let mentions = map(allAttentions, (attention) => {\n return `@${attention.screen_name}`\n })\n\n return mentions.length > 0 ? mentions.join(' ') + ' ' : ''\n}\n\nconst PostStatusForm = {\n props: [\n 'replyTo',\n 'repliedUser',\n 'attentions',\n 'copyMessageScope',\n 'subject'\n ],\n components: {\n MediaUpload,\n EmojiInput,\n PollForm,\n ScopeSelector\n },\n mounted () {\n this.resize(this.$refs.textarea)\n const textLength = this.$refs.textarea.value.length\n this.$refs.textarea.setSelectionRange(textLength, textLength)\n\n if (this.replyTo) {\n this.$refs.textarea.focus()\n }\n },\n data () {\n const preset = this.$route.query.message\n let statusText = preset || ''\n\n const scopeCopy = typeof this.$store.state.config.scopeCopy === 'undefined'\n ? this.$store.state.instance.scopeCopy\n : this.$store.state.config.scopeCopy\n\n if (this.replyTo) {\n const currentUser = this.$store.state.users.currentUser\n statusText = buildMentionsString({ user: this.repliedUser, attentions: this.attentions }, currentUser)\n }\n\n const scope = ((this.copyMessageScope && scopeCopy) || this.copyMessageScope === 'direct')\n ? this.copyMessageScope\n : this.$store.state.users.currentUser.default_scope\n\n const contentType = typeof this.$store.state.config.postContentType === 'undefined'\n ? this.$store.state.instance.postContentType\n : this.$store.state.config.postContentType\n\n return {\n dropFiles: [],\n submitDisabled: false,\n error: null,\n posting: false,\n highlighted: 0,\n newStatus: {\n spoilerText: this.subject || '',\n status: statusText,\n nsfw: false,\n files: [],\n poll: {},\n visibility: scope,\n contentType\n },\n caret: 0,\n pollFormVisible: false\n }\n },\n computed: {\n users () {\n return this.$store.state.users.users\n },\n userDefaultScope () {\n return this.$store.state.users.currentUser.default_scope\n },\n showAllScopes () {\n const minimalScopesMode = typeof this.$store.state.config.minimalScopesMode === 'undefined'\n ? this.$store.state.instance.minimalScopesMode\n : this.$store.state.config.minimalScopesMode\n return !minimalScopesMode\n },\n emojiUserSuggestor () {\n return suggestor({\n emoji: [\n ...this.$store.state.instance.emoji,\n ...this.$store.state.instance.customEmoji\n ],\n users: this.$store.state.users.users\n })\n },\n emojiSuggestor () {\n return suggestor({\n emoji: [\n ...this.$store.state.instance.emoji,\n ...this.$store.state.instance.customEmoji\n ]\n })\n },\n emoji () {\n return this.$store.state.instance.emoji || []\n },\n customEmoji () {\n return this.$store.state.instance.customEmoji || []\n },\n statusLength () {\n return this.newStatus.status.length\n },\n spoilerTextLength () {\n return this.newStatus.spoilerText.length\n },\n statusLengthLimit () {\n return this.$store.state.instance.textlimit\n },\n hasStatusLengthLimit () {\n return this.statusLengthLimit > 0\n },\n charactersLeft () {\n return this.statusLengthLimit - (this.statusLength + this.spoilerTextLength)\n },\n isOverLengthLimit () {\n return this.hasStatusLengthLimit && (this.charactersLeft < 0)\n },\n minimalScopesMode () {\n return this.$store.state.instance.minimalScopesMode\n },\n alwaysShowSubject () {\n if (typeof this.$store.state.config.alwaysShowSubjectInput !== 'undefined') {\n return this.$store.state.config.alwaysShowSubjectInput\n } else if (typeof this.$store.state.instance.alwaysShowSubjectInput !== 'undefined') {\n return this.$store.state.instance.alwaysShowSubjectInput\n } else {\n return true\n }\n },\n postFormats () {\n return this.$store.state.instance.postFormats || []\n },\n safeDMEnabled () {\n return this.$store.state.instance.safeDM\n },\n pollsAvailable () {\n return this.$store.state.instance.pollsAvailable &&\n this.$store.state.instance.pollLimits.max_options >= 2\n },\n hideScopeNotice () {\n return this.$store.state.config.hideScopeNotice\n },\n pollContentError () {\n return this.pollFormVisible &&\n this.newStatus.poll &&\n this.newStatus.poll.error\n }\n },\n methods: {\n postStatus (newStatus) {\n if (this.posting) { return }\n if (this.submitDisabled) { return }\n\n if (this.newStatus.status === '') {\n if (this.newStatus.files.length > 0) {\n this.newStatus.status = '\\u200b' // hack\n } else {\n this.error = 'Cannot post an empty status with no files'\n return\n }\n }\n\n const poll = this.pollFormVisible ? this.newStatus.poll : {}\n if (this.pollContentError) {\n this.error = this.pollContentError\n return\n }\n\n this.posting = true\n statusPoster.postStatus({\n status: newStatus.status,\n spoilerText: newStatus.spoilerText || null,\n visibility: newStatus.visibility,\n sensitive: newStatus.nsfw,\n media: newStatus.files,\n store: this.$store,\n inReplyToStatusId: this.replyTo,\n contentType: newStatus.contentType,\n poll\n }).then((data) => {\n if (!data.error) {\n this.newStatus = {\n status: '',\n spoilerText: '',\n files: [],\n visibility: newStatus.visibility,\n contentType: newStatus.contentType,\n poll: {}\n }\n this.pollFormVisible = false\n this.$refs.mediaUpload.clearFile()\n this.clearPollForm()\n this.$emit('posted')\n let el = this.$el.querySelector('textarea')\n el.style.height = 'auto'\n el.style.height = undefined\n this.error = null\n } else {\n this.error = data.error\n }\n this.posting = false\n })\n },\n addMediaFile (fileInfo) {\n this.newStatus.files.push(fileInfo)\n this.enableSubmit()\n },\n removeMediaFile (fileInfo) {\n let index = this.newStatus.files.indexOf(fileInfo)\n this.newStatus.files.splice(index, 1)\n },\n uploadFailed (errString, templateArgs) {\n templateArgs = templateArgs || {}\n this.error = this.$t('upload.error.base') + ' ' + this.$t('upload.error.' + errString, templateArgs)\n this.enableSubmit()\n },\n disableSubmit () {\n this.submitDisabled = true\n },\n enableSubmit () {\n this.submitDisabled = false\n },\n type (fileInfo) {\n return fileTypeService.fileType(fileInfo.mimetype)\n },\n paste (e) {\n if (e.clipboardData.files.length > 0) {\n // prevent pasting of file as text\n e.preventDefault()\n // Strangely, files property gets emptied after event propagation\n // Trying to wrap it in array doesn't work. Plus I doubt it's possible\n // to hold more than one file in clipboard.\n this.dropFiles = [e.clipboardData.files[0]]\n }\n },\n fileDrop (e) {\n if (e.dataTransfer.files.length > 0) {\n e.preventDefault() // allow dropping text like before\n this.dropFiles = e.dataTransfer.files\n }\n },\n fileDrag (e) {\n e.dataTransfer.dropEffect = 'copy'\n },\n resize (e) {\n const target = e.target || e\n if (!(target instanceof window.Element)) { return }\n const topPaddingStr = window.getComputedStyle(target)['padding-top']\n const bottomPaddingStr = window.getComputedStyle(target)['padding-bottom']\n // Remove \"px\" at the end of the values\n const vertPadding = Number(topPaddingStr.substr(0, topPaddingStr.length - 2)) +\n Number(bottomPaddingStr.substr(0, bottomPaddingStr.length - 2))\n // Auto is needed to make textbox shrink when removing lines\n target.style.height = 'auto'\n target.style.height = `${target.scrollHeight - vertPadding}px`\n if (target.value === '') {\n target.style.height = null\n }\n },\n clearError () {\n this.error = null\n },\n changeVis (visibility) {\n this.newStatus.visibility = visibility\n },\n togglePollForm () {\n this.pollFormVisible = !this.pollFormVisible\n },\n setPoll (poll) {\n this.newStatus.poll = poll\n },\n clearPollForm () {\n if (this.$refs.pollForm) {\n this.$refs.pollForm.clear()\n }\n },\n dismissScopeNotice () {\n this.$store.dispatch('setOption', { name: 'hideScopeNotice', value: true })\n }\n }\n}\n\nexport default PostStatusForm\n","/* eslint-env browser */\nimport statusPosterService from '../../services/status_poster/status_poster.service.js'\nimport fileSizeFormatService from '../../services/file_size_format/file_size_format.js'\n\nconst mediaUpload = {\n data () {\n return {\n uploading: false,\n uploadReady: true\n }\n },\n methods: {\n uploadFile (file) {\n const self = this\n const store = this.$store\n if (file.size > store.state.instance.uploadlimit) {\n const filesize = fileSizeFormatService.fileSizeFormat(file.size)\n const allowedsize = fileSizeFormatService.fileSizeFormat(store.state.instance.uploadlimit)\n self.$emit('upload-failed', 'file_too_big', {filesize: filesize.num, filesizeunit: filesize.unit, allowedsize: allowedsize.num, allowedsizeunit: allowedsize.unit})\n return\n }\n const formData = new FormData()\n formData.append('file', file)\n\n self.$emit('uploading')\n self.uploading = true\n\n statusPosterService.uploadMedia({ store, formData })\n .then((fileData) => {\n self.$emit('uploaded', fileData)\n self.uploading = false\n }, (error) => { // eslint-disable-line handle-callback-err\n self.$emit('upload-failed', 'default')\n self.uploading = false\n })\n },\n fileDrop (e) {\n if (e.dataTransfer.files.length > 0) {\n e.preventDefault() // allow dropping text like before\n this.uploadFile(e.dataTransfer.files[0])\n }\n },\n fileDrag (e) {\n let types = e.dataTransfer.types\n if (types.contains('Files')) {\n e.dataTransfer.dropEffect = 'copy'\n } else {\n e.dataTransfer.dropEffect = 'none'\n }\n },\n clearFile () {\n this.uploadReady = false\n this.$nextTick(() => {\n this.uploadReady = true\n })\n },\n change ({target}) {\n for (var i = 0; i < target.files.length; i++) {\n let file = target.files[i]\n this.uploadFile(file)\n }\n }\n },\n props: [\n 'dropFiles'\n ],\n watch: {\n 'dropFiles': function (fileInfos) {\n if (!this.uploading) {\n this.uploadFile(fileInfos[0])\n }\n }\n }\n}\n\nexport default mediaUpload\n","const ScopeSelector = {\n props: [\n 'showAll',\n 'userDefault',\n 'originalScope',\n 'initialScope',\n 'onScopeChange'\n ],\n data () {\n return {\n currentScope: this.initialScope\n }\n },\n computed: {\n showNothing () {\n return !this.showPublic && !this.showUnlisted && !this.showPrivate && !this.showDirect\n },\n showPublic () {\n return this.originalScope !== 'direct' && this.shouldShow('public')\n },\n showUnlisted () {\n return this.originalScope !== 'direct' && this.shouldShow('unlisted')\n },\n showPrivate () {\n return this.originalScope !== 'direct' && this.shouldShow('private')\n },\n showDirect () {\n return this.shouldShow('direct')\n },\n css () {\n return {\n public: {selected: this.currentScope === 'public'},\n unlisted: {selected: this.currentScope === 'unlisted'},\n private: {selected: this.currentScope === 'private'},\n direct: {selected: this.currentScope === 'direct'}\n }\n }\n },\n methods: {\n shouldShow (scope) {\n return this.showAll ||\n this.currentScope === scope ||\n this.originalScope === scope ||\n this.userDefault === scope ||\n scope === 'direct'\n },\n changeVis (scope) {\n this.currentScope = scope\n this.onScopeChange && this.onScopeChange(scope)\n }\n }\n}\n\nexport default ScopeSelector\n","import Completion from '../../services/completion/completion.js'\nimport { take } from 'lodash'\n\n/**\n * EmojiInput - augmented inputs for emoji and autocomplete support in inputs\n * without having to give up the comfort of <input/> and <textarea/> elements\n *\n * Intended usage is:\n * <EmojiInput v-model=\"something\">\n * <input v-model=\"something\"/>\n * </EmojiInput>\n *\n * Works only with <input> and <textarea>. Intended to use with only one nested\n * input. It will find first input or textarea and work with that, multiple\n * nested children not tested. You HAVE TO duplicate v-model for both\n * <emoji-input> and <input>/<textarea> otherwise it will not work.\n *\n * Be prepared for CSS troubles though because it still wraps component in a div\n * while TRYING to make it look like nothing happened, but it could break stuff.\n */\n\nconst EmojiInput = {\n props: {\n suggest: {\n /**\n * suggest: function (input: String) => Suggestion[]\n *\n * Function that takes input string which takes string (textAtCaret)\n * and returns an array of Suggestions\n *\n * Suggestion is an object containing following properties:\n * displayText: string. Main display text, what actual suggestion\n * represents (user's screen name/emoji shortcode)\n * replacement: string. Text that should replace the textAtCaret\n * detailText: string, optional. Subtitle text, providing additional info\n * if present (user's nickname)\n * imageUrl: string, optional. Image to display alongside with suggestion,\n * currently if no image is provided, replacement will be used (for\n * unicode emojis)\n *\n * TODO: make it asynchronous when adding proper server-provided user\n * suggestions\n *\n * For commonly used suggestors (emoji, users, both) use suggestor.js\n */\n required: true,\n type: Function\n },\n value: {\n /**\n * Used for v-model\n */\n required: true,\n type: String\n }\n },\n data () {\n return {\n input: undefined,\n highlighted: 0,\n caret: 0,\n focused: false,\n blurTimeout: null\n }\n },\n computed: {\n suggestions () {\n const firstchar = this.textAtCaret.charAt(0)\n if (this.textAtCaret === firstchar) { return [] }\n const matchedSuggestions = this.suggest(this.textAtCaret)\n if (matchedSuggestions.length <= 0) {\n return []\n }\n return take(matchedSuggestions, 5)\n .map(({ imageUrl, ...rest }, index) => ({\n ...rest,\n // eslint-disable-next-line camelcase\n img: imageUrl || '',\n highlighted: index === this.highlighted\n }))\n },\n showPopup () {\n return this.focused && this.suggestions && this.suggestions.length > 0\n },\n textAtCaret () {\n return (this.wordAtCaret || {}).word || ''\n },\n wordAtCaret () {\n if (this.value && this.caret) {\n const word = Completion.wordAtPosition(this.value, this.caret - 1) || {}\n return word\n }\n }\n },\n mounted () {\n const slots = this.$slots.default\n if (!slots || slots.length === 0) return\n const input = slots.find(slot => ['input', 'textarea'].includes(slot.tag))\n if (!input) return\n this.input = input\n this.resize()\n input.elm.addEventListener('blur', this.onBlur)\n input.elm.addEventListener('focus', this.onFocus)\n input.elm.addEventListener('paste', this.onPaste)\n input.elm.addEventListener('keyup', this.onKeyUp)\n input.elm.addEventListener('keydown', this.onKeyDown)\n input.elm.addEventListener('transitionend', this.onTransition)\n },\n unmounted () {\n const { input } = this\n if (input) {\n input.elm.removeEventListener('blur', this.onBlur)\n input.elm.removeEventListener('focus', this.onFocus)\n input.elm.removeEventListener('paste', this.onPaste)\n input.elm.removeEventListener('keyup', this.onKeyUp)\n input.elm.removeEventListener('keydown', this.onKeyDown)\n input.elm.removeEventListener('transitionend', this.onTransition)\n }\n },\n methods: {\n replace (replacement) {\n const newValue = Completion.replaceWord(this.value, this.wordAtCaret, replacement)\n this.$emit('input', newValue)\n this.caret = 0\n },\n replaceText (e, suggestion) {\n const len = this.suggestions.length || 0\n if (this.textAtCaret.length === 1) { return }\n if (len > 0 || suggestion) {\n const chosenSuggestion = suggestion || this.suggestions[this.highlighted]\n const replacement = chosenSuggestion.replacement\n const newValue = Completion.replaceWord(this.value, this.wordAtCaret, replacement)\n this.$emit('input', newValue)\n this.highlighted = 0\n const position = this.wordAtCaret.start + replacement.length\n\n this.$nextTick(function () {\n // Re-focus inputbox after clicking suggestion\n this.input.elm.focus()\n // Set selection right after the replacement instead of the very end\n this.input.elm.setSelectionRange(position, position)\n this.caret = position\n })\n e.preventDefault()\n }\n },\n cycleBackward (e) {\n const len = this.suggestions.length || 0\n if (len > 0) {\n this.highlighted -= 1\n if (this.highlighted < 0) {\n this.highlighted = this.suggestions.length - 1\n }\n e.preventDefault()\n } else {\n this.highlighted = 0\n }\n },\n cycleForward (e) {\n const len = this.suggestions.length || 0\n if (len > 0) {\n this.highlighted += 1\n if (this.highlighted >= len) {\n this.highlighted = 0\n }\n e.preventDefault()\n } else {\n this.highlighted = 0\n }\n },\n onTransition (e) {\n this.resize()\n },\n onBlur (e) {\n // Clicking on any suggestion removes focus from autocomplete,\n // preventing click handler ever executing.\n this.blurTimeout = setTimeout(() => {\n this.focused = false\n this.setCaret(e)\n this.resize()\n }, 200)\n },\n onClick (e, suggestion) {\n this.replaceText(e, suggestion)\n },\n onFocus (e) {\n if (this.blurTimeout) {\n clearTimeout(this.blurTimeout)\n this.blurTimeout = null\n }\n\n this.focused = true\n this.setCaret(e)\n this.resize()\n },\n onKeyUp (e) {\n this.setCaret(e)\n this.resize()\n },\n onPaste (e) {\n this.setCaret(e)\n this.resize()\n },\n onKeyDown (e) {\n this.setCaret(e)\n this.resize()\n\n const { ctrlKey, shiftKey, key } = e\n if (key === 'Tab') {\n if (shiftKey) {\n this.cycleBackward(e)\n } else {\n this.cycleForward(e)\n }\n }\n if (key === 'ArrowUp') {\n this.cycleBackward(e)\n } else if (key === 'ArrowDown') {\n this.cycleForward(e)\n }\n if (key === 'Enter') {\n if (!ctrlKey) {\n this.replaceText(e)\n }\n }\n },\n onInput (e) {\n this.$emit('input', e.target.value)\n },\n setCaret ({ target: { selectionStart } }) {\n this.caret = selectionStart\n },\n resize () {\n const { panel } = this.$refs\n if (!panel) return\n const { offsetHeight, offsetTop } = this.input.elm\n this.$refs.panel.style.top = (offsetTop + offsetHeight) + 'px'\n }\n }\n}\n\nexport default EmojiInput\n","import * as DateUtils from 'src/services/date_utils/date_utils.js'\nimport { uniq } from 'lodash'\n\nexport default {\n name: 'PollForm',\n props: ['visible'],\n data: () => ({\n pollType: 'single',\n options: ['', ''],\n expiryAmount: 10,\n expiryUnit: 'minutes'\n }),\n computed: {\n pollLimits () {\n return this.$store.state.instance.pollLimits\n },\n maxOptions () {\n return this.pollLimits.max_options\n },\n maxLength () {\n return this.pollLimits.max_option_chars\n },\n expiryUnits () {\n const allUnits = ['minutes', 'hours', 'days']\n const expiry = this.convertExpiryFromUnit\n return allUnits.filter(\n unit => this.pollLimits.max_expiration >= expiry(unit, 1)\n )\n },\n minExpirationInCurrentUnit () {\n return Math.ceil(\n this.convertExpiryToUnit(\n this.expiryUnit,\n this.pollLimits.min_expiration\n )\n )\n },\n maxExpirationInCurrentUnit () {\n return Math.floor(\n this.convertExpiryToUnit(\n this.expiryUnit,\n this.pollLimits.max_expiration\n )\n )\n }\n },\n methods: {\n clear () {\n this.pollType = 'single'\n this.options = ['', '']\n this.expiryAmount = 10\n this.expiryUnit = 'minutes'\n },\n nextOption (index) {\n const element = this.$el.querySelector(`#poll-${index + 1}`)\n if (element) {\n element.focus()\n } else {\n // Try adding an option and try focusing on it\n const addedOption = this.addOption()\n if (addedOption) {\n this.$nextTick(function () {\n this.nextOption(index)\n })\n }\n }\n },\n addOption () {\n if (this.options.length < this.maxOptions) {\n this.options.push('')\n return true\n }\n return false\n },\n deleteOption (index, event) {\n if (this.options.length > 2) {\n this.options.splice(index, 1)\n }\n },\n convertExpiryToUnit (unit, amount) {\n // Note: we want seconds and not milliseconds\n switch (unit) {\n case 'minutes': return (1000 * amount) / DateUtils.MINUTE\n case 'hours': return (1000 * amount) / DateUtils.HOUR\n case 'days': return (1000 * amount) / DateUtils.DAY\n }\n },\n convertExpiryFromUnit (unit, amount) {\n // Note: we want seconds and not milliseconds\n switch (unit) {\n case 'minutes': return 0.001 * amount * DateUtils.MINUTE\n case 'hours': return 0.001 * amount * DateUtils.HOUR\n case 'days': return 0.001 * amount * DateUtils.DAY\n }\n },\n expiryAmountChange () {\n this.expiryAmount =\n Math.max(this.minExpirationInCurrentUnit, this.expiryAmount)\n this.expiryAmount =\n Math.min(this.maxExpirationInCurrentUnit, this.expiryAmount)\n this.updatePollToParent()\n },\n updatePollToParent () {\n const expiresIn = this.convertExpiryFromUnit(\n this.expiryUnit,\n this.expiryAmount\n )\n\n const options = uniq(this.options.filter(option => option !== ''))\n if (options.length < 2) {\n this.$emit('update-poll', { error: this.$t('polls.not_enough_options') })\n return\n }\n this.$emit('update-poll', {\n options,\n multiple: this.pollType === 'multiple',\n expiresIn\n })\n }\n }\n}\n","import UserAvatar from '../user_avatar/user_avatar.vue'\nimport RemoteFollow from '../remote_follow/remote_follow.vue'\nimport ModerationTools from '../moderation_tools/moderation_tools.vue'\nimport { hex2rgb } from '../../services/color_convert/color_convert.js'\nimport { requestFollow, requestUnfollow } from '../../services/follow_manipulate/follow_manipulate'\nimport generateProfileLink from 'src/services/user_profile_link_generator/user_profile_link_generator'\n\nexport default {\n props: [ 'user', 'switcher', 'selected', 'hideBio', 'rounded', 'bordered' ],\n data () {\n return {\n followRequestInProgress: false,\n followRequestSent: false,\n hideUserStatsLocal: typeof this.$store.state.config.hideUserStats === 'undefined'\n ? this.$store.state.instance.hideUserStats\n : this.$store.state.config.hideUserStats,\n betterShadow: this.$store.state.interface.browserSupport.cssFilter\n }\n },\n created () {\n this.$store.dispatch('fetchUserRelationship', this.user.id)\n },\n computed: {\n classes () {\n return [{\n 'user-card-rounded-t': this.rounded === 'top', // set border-top-left-radius and border-top-right-radius\n 'user-card-rounded': this.rounded === true, // set border-radius for all sides\n 'user-card-bordered': this.bordered === true // set border for all sides\n }]\n },\n style () {\n const color = this.$store.state.config.customTheme.colors\n ? this.$store.state.config.customTheme.colors.bg // v2\n : this.$store.state.config.colors.bg // v1\n\n if (color) {\n const rgb = (typeof color === 'string') ? hex2rgb(color) : color\n const tintColor = `rgba(${Math.floor(rgb.r)}, ${Math.floor(rgb.g)}, ${Math.floor(rgb.b)}, .5)`\n\n const gradient = [\n [tintColor, this.hideBio ? '60%' : ''],\n this.hideBio ? [\n color, '100%'\n ] : [\n tintColor, ''\n ]\n ].map(_ => _.join(' ')).join(', ')\n\n return {\n backgroundColor: `rgb(${Math.floor(rgb.r * 0.53)}, ${Math.floor(rgb.g * 0.56)}, ${Math.floor(rgb.b * 0.59)})`,\n backgroundImage: [\n `linear-gradient(to bottom, ${gradient})`,\n `url(${this.user.cover_photo})`\n ].join(', ')\n }\n }\n },\n isOtherUser () {\n return this.user.id !== this.$store.state.users.currentUser.id\n },\n subscribeUrl () {\n // eslint-disable-next-line no-undef\n const serverUrl = new URL(this.user.statusnet_profile_url)\n return `${serverUrl.protocol}//${serverUrl.host}/main/ostatus`\n },\n loggedIn () {\n return this.$store.state.users.currentUser\n },\n dailyAvg () {\n const days = Math.ceil((new Date() - new Date(this.user.created_at)) / (60 * 60 * 24 * 1000))\n return Math.round(this.user.statuses_count / days)\n },\n userHighlightType: {\n get () {\n const data = this.$store.state.config.highlight[this.user.screen_name]\n return data && data.type || 'disabled'\n },\n set (type) {\n const data = this.$store.state.config.highlight[this.user.screen_name]\n if (type !== 'disabled') {\n this.$store.dispatch('setHighlight', { user: this.user.screen_name, color: data && data.color || '#FFFFFF', type })\n } else {\n this.$store.dispatch('setHighlight', { user: this.user.screen_name, color: undefined })\n }\n }\n },\n userHighlightColor: {\n get () {\n const data = this.$store.state.config.highlight[this.user.screen_name]\n return data && data.color\n },\n set (color) {\n this.$store.dispatch('setHighlight', { user: this.user.screen_name, color })\n }\n },\n visibleRole () {\n const rights = this.user.rights\n if (!rights) { return }\n const validRole = rights.admin || rights.moderator\n const roleTitle = rights.admin ? 'admin' : 'moderator'\n return validRole && roleTitle\n }\n },\n components: {\n UserAvatar,\n RemoteFollow,\n ModerationTools\n },\n methods: {\n followUser () {\n const store = this.$store\n this.followRequestInProgress = true\n requestFollow(this.user, store).then(({sent}) => {\n this.followRequestInProgress = false\n this.followRequestSent = sent\n })\n },\n unfollowUser () {\n const store = this.$store\n this.followRequestInProgress = true\n requestUnfollow(this.user, store).then(() => {\n this.followRequestInProgress = false\n store.commit('removeStatus', { timeline: 'friends', userId: this.user.id })\n })\n },\n blockUser () {\n this.$store.dispatch('blockUser', this.user.id)\n },\n unblockUser () {\n this.$store.dispatch('unblockUser', this.user.id)\n },\n muteUser () {\n this.$store.dispatch('muteUser', this.user.id)\n },\n unmuteUser () {\n this.$store.dispatch('unmuteUser', this.user.id)\n },\n setProfileView (v) {\n if (this.switcher) {\n const store = this.$store\n store.commit('setProfileView', { v })\n }\n },\n linkClicked ({target}) {\n if (target.tagName === 'SPAN') {\n target = target.parentNode\n }\n if (target.tagName === 'A') {\n window.open(target.href, '_blank')\n }\n },\n userProfileLink (user) {\n return generateProfileLink(user.id, user.screen_name, this.$store.state.instance.restrictedNicknames)\n },\n reportUser () {\n this.$store.dispatch('openUserReportingModal', this.user.id)\n }\n }\n}\n","import StillImage from '../still-image/still-image.vue'\n\nconst UserAvatar = {\n props: [\n 'user',\n 'betterShadow',\n 'compact'\n ],\n data () {\n return {\n showPlaceholder: false\n }\n },\n components: {\n StillImage\n },\n computed: {\n imgSrc () {\n return this.showPlaceholder ? '/images/avi.png' : this.src\n }\n },\n methods: {\n imageLoadError () {\n this.showPlaceholder = true\n }\n },\n watch: {\n src () {\n this.showPlaceholder = false\n }\n }\n}\n\nexport default UserAvatar\n","export default {\n props: [ 'user' ],\n computed: {\n subscribeUrl () {\n // eslint-disable-next-line no-undef\n const serverUrl = new URL(this.user.statusnet_profile_url)\n return `${serverUrl.protocol}//${serverUrl.host}/main/ostatus`\n }\n }\n}\n","import DialogModal from '../dialog_modal/dialog_modal.vue'\nimport Popper from 'vue-popperjs/src/component/popper.js.vue'\n\nconst FORCE_NSFW = 'mrf_tag:media-force-nsfw'\nconst STRIP_MEDIA = 'mrf_tag:media-strip'\nconst FORCE_UNLISTED = 'mrf_tag:force-unlisted'\nconst DISABLE_REMOTE_SUBSCRIPTION = 'mrf_tag:disable-remote-subscription'\nconst DISABLE_ANY_SUBSCRIPTION = 'mrf_tag:disable-any-subscription'\nconst SANDBOX = 'mrf_tag:sandbox'\nconst QUARANTINE = 'mrf_tag:quarantine'\n\nconst ModerationTools = {\n props: [\n 'user'\n ],\n data () {\n return {\n showDropDown: false,\n tags: {\n FORCE_NSFW,\n STRIP_MEDIA,\n FORCE_UNLISTED,\n DISABLE_REMOTE_SUBSCRIPTION,\n DISABLE_ANY_SUBSCRIPTION,\n SANDBOX,\n QUARANTINE\n },\n showDeleteUserDialog: false\n }\n },\n components: {\n DialogModal,\n Popper\n },\n computed: {\n tagsSet () {\n return new Set(this.user.tags)\n },\n hasTagPolicy () {\n return this.$store.state.instance.tagPolicyAvailable\n }\n },\n methods: {\n toggleMenu () {\n this.showDropDown = !this.showDropDown\n },\n hasTag (tagName) {\n return this.tagsSet.has(tagName)\n },\n toggleTag (tag) {\n const store = this.$store\n if (this.tagsSet.has(tag)) {\n store.state.api.backendInteractor.untagUser(this.user, tag).then(response => {\n if (!response.ok) { return }\n store.commit('untagUser', {user: this.user, tag})\n })\n } else {\n store.state.api.backendInteractor.tagUser(this.user, tag).then(response => {\n if (!response.ok) { return }\n store.commit('tagUser', {user: this.user, tag})\n })\n }\n },\n toggleRight (right) {\n const store = this.$store\n if (this.user.rights[right]) {\n store.state.api.backendInteractor.deleteRight(this.user, right).then(response => {\n if (!response.ok) { return }\n store.commit('updateRight', {user: this.user, right: right, value: false})\n })\n } else {\n store.state.api.backendInteractor.addRight(this.user, right).then(response => {\n if (!response.ok) { return }\n store.commit('updateRight', {user: this.user, right: right, value: true})\n })\n }\n },\n toggleActivationStatus () {\n const store = this.$store\n const status = !!this.user.deactivated\n store.state.api.backendInteractor.setActivationStatus(this.user, status).then(response => {\n if (!response.ok) { return }\n store.commit('updateActivationStatus', {user: this.user, status: status})\n })\n },\n deleteUserDialog (show) {\n this.showDeleteUserDialog = show\n },\n deleteUser () {\n const store = this.$store\n const user = this.user\n const {id, name} = user\n store.state.api.backendInteractor.deleteUser(user)\n .then(e => {\n this.$store.dispatch('markStatusesAsDeleted', status => user.id === status.user.id)\n const isProfile = this.$route.name === 'external-user-profile' || this.$route.name === 'user-profile'\n const isTargetUser = this.$route.params.name === name || this.$route.params.id === id\n if (isProfile && isTargetUser) {\n window.history.back()\n }\n })\n }\n }\n}\n\nexport default ModerationTools\n","const DialogModal = {\n props: {\n darkOverlay: {\n default: true,\n type: Boolean\n },\n onCancel: {\n default: () => {},\n type: Function\n }\n }\n}\n\nexport default DialogModal\n","import Attachment from '../attachment/attachment.vue'\nimport { chunk, last, dropRight } from 'lodash'\n\nconst Gallery = {\n data: () => ({\n width: 500\n }),\n props: [\n 'attachments',\n 'nsfw',\n 'setMedia'\n ],\n components: { Attachment },\n mounted () {\n this.resize()\n window.addEventListener('resize', this.resize)\n },\n destroyed () {\n window.removeEventListener('resize', this.resize)\n },\n computed: {\n rows () {\n if (!this.attachments) {\n return []\n }\n const rows = chunk(this.attachments, 3)\n if (last(rows).length === 1 && rows.length > 1) {\n // if 1 attachment on last row -> add it to the previous row instead\n const lastAttachment = last(rows)[0]\n const allButLastRow = dropRight(rows)\n last(allButLastRow).push(lastAttachment)\n return allButLastRow\n }\n return rows\n },\n rowHeight () {\n return itemsPerRow => ({ 'height': `${(this.width / (itemsPerRow + 0.6))}px` })\n },\n useContainFit () {\n return this.$store.state.config.useContainFit\n }\n },\n methods: {\n resize () {\n // Quick optimization to make resizing not always trigger state change,\n // only update attachment size in 10px steps\n const width = Math.floor(this.$el.getBoundingClientRect().width / 10) * 10\n if (this.width !== width) {\n this.width = width\n }\n }\n }\n}\n\nexport default Gallery\n","const LinkPreview = {\n name: 'LinkPreview',\n props: [\n 'card',\n 'size',\n 'nsfw'\n ],\n computed: {\n useImage () {\n // Currently BE shoudn't give cards if tagged NSFW, this is a bit paranoid\n // as it makes sure to hide the image if somehow NSFW tagged preview can\n // exist.\n return this.card.image && !this.nsfw && this.size !== 'hide'\n },\n useDescription () {\n return this.card.description && /\\S/.test(this.card.description)\n }\n }\n}\n\nexport default LinkPreview\n","import UserAvatar from '../user_avatar/user_avatar.vue'\nimport generateProfileLink from 'src/services/user_profile_link_generator/user_profile_link_generator'\n\nconst AvatarList = {\n props: ['users'],\n computed: {\n slicedUsers () {\n return this.users ? this.users.slice(0, 15) : []\n }\n },\n components: {\n UserAvatar\n },\n methods: {\n userProfileLink (user) {\n return generateProfileLink(user.id, user.screen_name, this.$store.state.instance.restrictedNicknames)\n }\n }\n}\n\nexport default AvatarList\n","import { reduce, filter, findIndex, clone } from 'lodash'\nimport Status from '../status/status.vue'\n\nconst sortById = (a, b) => {\n const idA = a.type === 'retweet' ? a.retweeted_status.id : a.id\n const idB = b.type === 'retweet' ? b.retweeted_status.id : b.id\n const seqA = Number(idA)\n const seqB = Number(idB)\n const isSeqA = !Number.isNaN(seqA)\n const isSeqB = !Number.isNaN(seqB)\n if (isSeqA && isSeqB) {\n return seqA < seqB ? -1 : 1\n } else if (isSeqA && !isSeqB) {\n return -1\n } else if (!isSeqA && isSeqB) {\n return 1\n } else {\n return idA < idB ? -1 : 1\n }\n}\n\nconst sortAndFilterConversation = (conversation, statusoid) => {\n if (statusoid.type === 'retweet') {\n conversation = filter(\n conversation,\n (status) => (status.type === 'retweet' || status.id !== statusoid.retweeted_status.id)\n )\n } else {\n conversation = filter(conversation, (status) => status.type !== 'retweet')\n }\n return conversation.filter(_ => _).sort(sortById)\n}\n\nconst conversation = {\n data () {\n return {\n highlight: null,\n expanded: false\n }\n },\n props: [\n 'statusoid',\n 'collapsable',\n 'isPage',\n 'showPinned'\n ],\n created () {\n if (this.isPage) {\n this.fetchConversation()\n }\n },\n computed: {\n status () {\n return this.statusoid\n },\n statusId () {\n if (this.statusoid.retweeted_status) {\n return this.statusoid.retweeted_status.id\n } else {\n return this.statusoid.id\n }\n },\n conversationId () {\n if (this.statusoid.retweeted_status) {\n return this.statusoid.retweeted_status.statusnet_conversation_id\n } else {\n return this.statusoid.statusnet_conversation_id\n }\n },\n conversation () {\n if (!this.status) {\n return []\n }\n\n if (!this.isExpanded) {\n return [this.status]\n }\n\n const conversation = clone(this.$store.state.statuses.conversationsObject[this.conversationId])\n const statusIndex = findIndex(conversation, { id: this.statusId })\n if (statusIndex !== -1) {\n conversation[statusIndex] = this.status\n }\n\n return sortAndFilterConversation(conversation, this.status)\n },\n replies () {\n let i = 1\n return reduce(this.conversation, (result, {id, in_reply_to_status_id}) => {\n /* eslint-disable camelcase */\n const irid = in_reply_to_status_id\n /* eslint-enable camelcase */\n if (irid) {\n result[irid] = result[irid] || []\n result[irid].push({\n name: `#${i}`,\n id: id\n })\n }\n i++\n return result\n }, {})\n },\n isExpanded () {\n return this.expanded || this.isPage\n }\n },\n components: {\n Status\n },\n watch: {\n '$route': 'fetchConversation',\n expanded (value) {\n if (value) {\n this.fetchConversation()\n }\n }\n },\n methods: {\n fetchConversation () {\n if (this.status) {\n this.$store.state.api.backendInteractor.fetchConversation({id: this.status.id})\n .then(({ancestors, descendants}) => {\n this.$store.dispatch('addNewStatuses', { statuses: ancestors })\n this.$store.dispatch('addNewStatuses', { statuses: descendants })\n })\n .then(() => this.setHighlight(this.statusId))\n } else {\n const id = this.$route.params.id\n this.$store.state.api.backendInteractor.fetchStatus({id})\n .then((status) => this.$store.dispatch('addNewStatuses', { statuses: [status] }))\n .then(() => this.fetchConversation())\n }\n },\n getReplies (id) {\n return this.replies[id] || []\n },\n focused (id) {\n return (this.isExpanded) && id === this.status.id\n },\n setHighlight (id) {\n if (!id) return\n this.highlight = id\n this.$store.dispatch('fetchFavsAndRepeats', id)\n },\n getHighlight () {\n return this.isExpanded ? this.highlight : null\n },\n toggleExpanded () {\n this.expanded = !this.expanded\n if (!this.expanded) {\n this.setHighlight(null)\n }\n }\n }\n}\n\nexport default conversation\n","import Timeline from '../timeline/timeline.vue'\nconst PublicAndExternalTimeline = {\n components: {\n Timeline\n },\n computed: {\n timeline () { return this.$store.state.statuses.timelines.publicAndExternal }\n },\n created () {\n this.$store.dispatch('startFetchingTimeline', { timeline: 'publicAndExternal' })\n },\n destroyed () {\n this.$store.dispatch('stopFetching', 'publicAndExternal')\n }\n}\n\nexport default PublicAndExternalTimeline\n","import Timeline from '../timeline/timeline.vue'\nconst FriendsTimeline = {\n components: {\n Timeline\n },\n computed: {\n timeline () { return this.$store.state.statuses.timelines.friends }\n }\n}\n\nexport default FriendsTimeline\n","import Timeline from '../timeline/timeline.vue'\n\nconst TagTimeline = {\n created () {\n this.$store.commit('clearTimeline', { timeline: 'tag' })\n this.$store.dispatch('startFetchingTimeline', { timeline: 'tag', tag: this.tag })\n },\n components: {\n Timeline\n },\n computed: {\n tag () { return this.$route.params.tag },\n timeline () { return this.$store.state.statuses.timelines.tag }\n },\n watch: {\n tag () {\n this.$store.commit('clearTimeline', { timeline: 'tag' })\n this.$store.dispatch('startFetchingTimeline', { timeline: 'tag', tag: this.tag })\n }\n },\n destroyed () {\n this.$store.dispatch('stopFetching', 'tag')\n }\n}\n\nexport default TagTimeline\n","import Conversation from '../conversation/conversation.vue'\n\nconst conversationPage = {\n components: {\n Conversation\n },\n computed: {\n statusoid () {\n const id = this.$route.params.id\n const statuses = this.$store.state.statuses.allStatusesObject\n const status = statuses[id]\n\n return status\n }\n }\n}\n\nexport default conversationPage\n","import Notifications from '../notifications/notifications.vue'\n\nconst tabModeDict = {\n mentions: ['mention'],\n 'likes+repeats': ['repeat', 'like'],\n follows: ['follow']\n}\n\nconst Interactions = {\n data () {\n return {\n filterMode: tabModeDict['mentions']\n }\n },\n methods: {\n onModeSwitch (index, dataset) {\n this.filterMode = tabModeDict[dataset.filter]\n }\n },\n components: {\n Notifications\n }\n}\n\nexport default Interactions\n","import Notification from '../notification/notification.vue'\nimport notificationsFetcher from '../../services/notifications_fetcher/notifications_fetcher.service.js'\nimport {\n notificationsFromStore,\n visibleNotificationsFromStore,\n unseenNotificationsFromStore\n} from '../../services/notification_utils/notification_utils.js'\n\nconst Notifications = {\n props: {\n // Disables display of panel header\n noHeading: Boolean,\n // Disables panel styles, unread mark, potentially other notification-related actions\n // meant for \"Interactions\" timeline\n minimalMode: Boolean,\n // Custom filter mode, an array of strings, possible values 'mention', 'repeat', 'like', 'follow', used to override global filter for use in \"Interactions\" timeline\n filterMode: Array\n },\n data () {\n return {\n bottomedOut: false\n }\n },\n computed: {\n mainClass () {\n return this.minimalMode ? '' : 'panel panel-default'\n },\n notifications () {\n return notificationsFromStore(this.$store)\n },\n error () {\n return this.$store.state.statuses.notifications.error\n },\n unseenNotifications () {\n return unseenNotificationsFromStore(this.$store)\n },\n visibleNotifications () {\n return visibleNotificationsFromStore(this.$store, this.filterMode)\n },\n unseenCount () {\n return this.unseenNotifications.length\n },\n loading () {\n return this.$store.state.statuses.notifications.loading\n }\n },\n components: {\n Notification\n },\n watch: {\n unseenCount (count) {\n if (count > 0) {\n this.$store.dispatch('setPageTitle', `(${count})`)\n } else {\n this.$store.dispatch('setPageTitle', '')\n }\n }\n },\n methods: {\n markAsSeen () {\n this.$store.dispatch('markNotificationsAsSeen')\n },\n fetchOlderNotifications () {\n if (this.loading) {\n return\n }\n\n const store = this.$store\n const credentials = store.state.users.currentUser.credentials\n store.commit('setNotificationsLoading', { value: true })\n notificationsFetcher.fetchAndUpdate({\n store,\n credentials,\n older: true\n }).then(notifs => {\n store.commit('setNotificationsLoading', { value: false })\n if (notifs.length === 0) {\n this.bottomedOut = true\n }\n })\n }\n }\n}\n\nexport default Notifications\n","import Status from '../status/status.vue'\nimport UserAvatar from '../user_avatar/user_avatar.vue'\nimport UserCard from '../user_card/user_card.vue'\nimport Timeago from '../timeago/timeago.vue'\nimport { highlightClass, highlightStyle } from '../../services/user_highlighter/user_highlighter.js'\nimport generateProfileLink from 'src/services/user_profile_link_generator/user_profile_link_generator'\n\nconst Notification = {\n data () {\n return {\n userExpanded: false,\n betterShadow: this.$store.state.interface.browserSupport.cssFilter\n }\n },\n props: [ 'notification' ],\n components: {\n Status,\n UserAvatar,\n UserCard,\n Timeago\n },\n methods: {\n toggleUserExpanded () {\n this.userExpanded = !this.userExpanded\n },\n userProfileLink (user) {\n return generateProfileLink(user.id, user.screen_name, this.$store.state.instance.restrictedNicknames)\n },\n getUser (notification) {\n return this.$store.state.users.usersObject[notification.from_profile.id]\n }\n },\n computed: {\n userClass () {\n return highlightClass(this.notification.from_profile)\n },\n userStyle () {\n const highlight = this.$store.state.config.highlight\n const user = this.notification.from_profile\n return highlightStyle(highlight[user.screen_name])\n },\n userInStore () {\n return this.$store.getters.findUser(this.notification.from_profile.id)\n },\n user () {\n if (this.userInStore) {\n return this.userInStore\n }\n return this.notification.from_profile\n }\n }\n}\n\nexport default Notification\n","import Timeline from '../timeline/timeline.vue'\n\nconst DMs = {\n computed: {\n timeline () {\n return this.$store.state.statuses.timelines.dms\n }\n },\n components: {\n Timeline\n }\n}\n\nexport default DMs\n","import get from 'lodash/get'\nimport UserCard from '../user_card/user_card.vue'\nimport FollowCard from '../follow_card/follow_card.vue'\nimport Timeline from '../timeline/timeline.vue'\nimport Conversation from '../conversation/conversation.vue'\nimport ModerationTools from '../moderation_tools/moderation_tools.vue'\nimport List from '../list/list.vue'\nimport withLoadMore from '../../hocs/with_load_more/with_load_more'\n\nconst FollowerList = withLoadMore({\n fetch: (props, $store) => $store.dispatch('fetchFollowers', props.userId),\n select: (props, $store) => get($store.getters.findUser(props.userId), 'followerIds', []).map(id => $store.getters.findUser(id)),\n destroy: (props, $store) => $store.dispatch('clearFollowers', props.userId),\n childPropName: 'items',\n additionalPropNames: ['userId']\n})(List)\n\nconst FriendList = withLoadMore({\n fetch: (props, $store) => $store.dispatch('fetchFriends', props.userId),\n select: (props, $store) => get($store.getters.findUser(props.userId), 'friendIds', []).map(id => $store.getters.findUser(id)),\n destroy: (props, $store) => $store.dispatch('clearFriends', props.userId),\n childPropName: 'items',\n additionalPropNames: ['userId']\n})(List)\n\nconst UserProfile = {\n data () {\n return {\n error: false,\n userId: null\n }\n },\n created () {\n const routeParams = this.$route.params\n this.load(routeParams.name || routeParams.id)\n },\n destroyed () {\n this.cleanUp()\n },\n computed: {\n timeline () {\n return this.$store.state.statuses.timelines.user\n },\n favorites () {\n return this.$store.state.statuses.timelines.favorites\n },\n media () {\n return this.$store.state.statuses.timelines.media\n },\n isUs () {\n return this.userId && this.$store.state.users.currentUser.id &&\n this.userId === this.$store.state.users.currentUser.id\n },\n user () {\n return this.$store.getters.findUser(this.userId)\n },\n isExternal () {\n return this.$route.name === 'external-user-profile'\n },\n followsTabVisible () {\n return this.isUs || !this.user.hide_follows\n },\n followersTabVisible () {\n return this.isUs || !this.user.hide_followers\n }\n },\n methods: {\n load (userNameOrId) {\n // Check if user data is already loaded in store\n const user = this.$store.getters.findUser(userNameOrId)\n if (user) {\n this.userId = user.id\n this.fetchTimelines()\n } else {\n this.$store.dispatch('fetchUser', userNameOrId)\n .then(({ id }) => {\n this.userId = id\n this.fetchTimelines()\n })\n .catch((reason) => {\n const errorMessage = get(reason, 'error.error')\n if (errorMessage === 'No user with such user_id') { // Known error\n this.error = this.$t('user_profile.profile_does_not_exist')\n } else if (errorMessage) {\n this.error = errorMessage\n } else {\n this.error = this.$t('user_profile.profile_loading_error')\n }\n })\n }\n },\n fetchTimelines () {\n const userId = this.userId\n this.$store.dispatch('startFetchingTimeline', { timeline: 'user', userId })\n this.$store.dispatch('startFetchingTimeline', { timeline: 'media', userId })\n if (this.isUs) {\n this.$store.dispatch('startFetchingTimeline', { timeline: 'favorites', userId })\n }\n // Fetch all pinned statuses immediately\n this.$store.dispatch('fetchPinnedStatuses', userId)\n },\n cleanUp () {\n this.$store.dispatch('stopFetching', 'user')\n this.$store.dispatch('stopFetching', 'favorites')\n this.$store.dispatch('stopFetching', 'media')\n this.$store.commit('clearTimeline', { timeline: 'user' })\n this.$store.commit('clearTimeline', { timeline: 'favorites' })\n this.$store.commit('clearTimeline', { timeline: 'media' })\n }\n },\n watch: {\n '$route.params.id': function (newVal) {\n if (newVal) {\n this.cleanUp()\n this.load(newVal)\n }\n },\n '$route.params.name': function (newVal) {\n if (newVal) {\n this.cleanUp()\n this.load(newVal)\n }\n },\n $route () {\n this.$refs.tabSwitcher.activateTab(0)()\n }\n },\n components: {\n UserCard,\n Timeline,\n FollowerList,\n FriendList,\n ModerationTools,\n FollowCard,\n Conversation\n }\n}\n\nexport default UserProfile\n","import BasicUserCard from '../basic_user_card/basic_user_card.vue'\nimport RemoteFollow from '../remote_follow/remote_follow.vue'\nimport { requestFollow, requestUnfollow } from '../../services/follow_manipulate/follow_manipulate'\n\nconst FollowCard = {\n props: [\n 'user',\n 'noFollowsYou'\n ],\n data () {\n return {\n inProgress: false,\n requestSent: false\n }\n },\n components: {\n BasicUserCard,\n RemoteFollow\n },\n computed: {\n isMe () {\n return this.$store.state.users.currentUser.id === this.user.id\n },\n loggedIn () {\n return this.$store.state.users.currentUser\n }\n },\n methods: {\n followUser () {\n this.inProgress = true\n requestFollow(this.user, this.$store).then(({ sent }) => {\n this.inProgress = false\n this.requestSent = sent\n })\n },\n unfollowUser () {\n this.inProgress = true\n requestUnfollow(this.user, this.$store).then(() => {\n this.inProgress = false\n })\n }\n }\n}\n\nexport default FollowCard\n","import UserCard from '../user_card/user_card.vue'\nimport UserAvatar from '../user_avatar/user_avatar.vue'\nimport generateProfileLink from 'src/services/user_profile_link_generator/user_profile_link_generator'\n\nconst BasicUserCard = {\n props: [\n 'user'\n ],\n data () {\n return {\n userExpanded: false\n }\n },\n components: {\n UserCard,\n UserAvatar\n },\n methods: {\n toggleUserExpanded () {\n this.userExpanded = !this.userExpanded\n },\n userProfileLink (user) {\n return generateProfileLink(user.id, user.screen_name, this.$store.state.instance.restrictedNicknames)\n }\n }\n}\n\nexport default BasicUserCard\n","<template>\n <div class=\"list\">\n <div v-for=\"item in items\" class=\"list-item\" :key=\"getKey(item)\">\n <slot name=\"item\" :item=\"item\" />\n </div>\n <div class=\"list-empty-content faint\" v-if=\"items.length === 0 && !!$slots.empty\">\n <slot name=\"empty\" />\n </div>\n </div>\n</template>\n\n<script>\nexport default {\n props: {\n items: {\n type: Array,\n default: () => []\n },\n getKey: {\n type: Function,\n default: item => item.id\n }\n }\n}\n</script>\n\n<style lang=\"scss\">\n@import '../../_variables.scss';\n\n.list {\n &-item:not(:last-child) {\n border-bottom: 1px solid;\n border-bottom-color: $fallback--border;\n border-bottom-color: var(--border, $fallback--border);\n }\n\n &-empty-content {\n text-align: center;\n padding: 10px;\n }\n}\n</style>\n","/* eslint-env browser */\nimport { filter, trim } from 'lodash'\n\nimport TabSwitcher from '../tab_switcher/tab_switcher.js'\nimport StyleSwitcher from '../style_switcher/style_switcher.vue'\nimport InterfaceLanguageSwitcher from '../interface_language_switcher/interface_language_switcher.vue'\nimport { extractCommit } from '../../services/version/version.service'\n\nconst pleromaFeCommitUrl = 'https://git.pleroma.social/pleroma/pleroma-fe/commit/'\nconst pleromaBeCommitUrl = 'https://git.pleroma.social/pleroma/pleroma/commit/'\n\nconst settings = {\n data () {\n const user = this.$store.state.config\n const instance = this.$store.state.instance\n\n return {\n hideAttachmentsLocal: user.hideAttachments,\n hideAttachmentsInConvLocal: user.hideAttachmentsInConv,\n maxThumbnails: user.maxThumbnails,\n hideNsfwLocal: user.hideNsfw,\n useOneClickNsfw: user.useOneClickNsfw,\n hideISPLocal: user.hideISP,\n preloadImage: user.preloadImage,\n\n hidePostStatsLocal: typeof user.hidePostStats === 'undefined'\n ? instance.hidePostStats\n : user.hidePostStats,\n hidePostStatsDefault: this.$t('settings.values.' + instance.hidePostStats),\n\n hideUserStatsLocal: typeof user.hideUserStats === 'undefined'\n ? instance.hideUserStats\n : user.hideUserStats,\n hideUserStatsDefault: this.$t('settings.values.' + instance.hideUserStats),\n\n hideFilteredStatusesLocal: typeof user.hideFilteredStatuses === 'undefined'\n ? instance.hideFilteredStatuses\n : user.hideFilteredStatuses,\n hideFilteredStatusesDefault: this.$t('settings.values.' + instance.hideFilteredStatuses),\n\n notificationVisibilityLocal: user.notificationVisibility,\n replyVisibilityLocal: user.replyVisibility,\n loopVideoLocal: user.loopVideo,\n muteWordsString: user.muteWords.join('\\n'),\n autoLoadLocal: user.autoLoad,\n streamingLocal: user.streaming,\n pauseOnUnfocusedLocal: user.pauseOnUnfocused,\n hoverPreviewLocal: user.hoverPreview,\n autohideFloatingPostButtonLocal: user.autohideFloatingPostButton,\n\n hideMutedPostsLocal: typeof user.hideMutedPosts === 'undefined'\n ? instance.hideMutedPosts\n : user.hideMutedPosts,\n hideMutedPostsDefault: this.$t('settings.values.' + instance.hideMutedPosts),\n\n collapseMessageWithSubjectLocal: typeof user.collapseMessageWithSubject === 'undefined'\n ? instance.collapseMessageWithSubject\n : user.collapseMessageWithSubject,\n collapseMessageWithSubjectDefault: this.$t('settings.values.' + instance.collapseMessageWithSubject),\n\n subjectLineBehaviorLocal: typeof user.subjectLineBehavior === 'undefined'\n ? instance.subjectLineBehavior\n : user.subjectLineBehavior,\n subjectLineBehaviorDefault: instance.subjectLineBehavior,\n\n postContentTypeLocal: typeof user.postContentType === 'undefined'\n ? instance.postContentType\n : user.postContentType,\n postContentTypeDefault: instance.postContentType,\n\n alwaysShowSubjectInputLocal: typeof user.alwaysShowSubjectInput === 'undefined'\n ? instance.alwaysShowSubjectInput\n : user.alwaysShowSubjectInput,\n alwaysShowSubjectInputDefault: this.$t('settings.values.' + instance.alwaysShowSubjectInput),\n\n scopeCopyLocal: typeof user.scopeCopy === 'undefined'\n ? instance.scopeCopy\n : user.scopeCopy,\n scopeCopyDefault: this.$t('settings.values.' + instance.scopeCopy),\n\n minimalScopesModeLocal: typeof user.minimalScopesMode === 'undefined'\n ? instance.minimalScopesMode\n : user.minimalScopesMode,\n minimalScopesModeDefault: this.$t('settings.values.' + instance.minimalScopesMode),\n\n stopGifs: user.stopGifs,\n webPushNotificationsLocal: user.webPushNotifications,\n loopVideoSilentOnlyLocal: user.loopVideosSilentOnly,\n loopSilentAvailable:\n // Firefox\n Object.getOwnPropertyDescriptor(HTMLVideoElement.prototype, 'mozHasAudio') ||\n // Chrome-likes\n Object.getOwnPropertyDescriptor(HTMLMediaElement.prototype, 'webkitAudioDecodedByteCount') ||\n // Future spec, still not supported in Nightly 63 as of 08/2018\n Object.getOwnPropertyDescriptor(HTMLMediaElement.prototype, 'audioTracks'),\n playVideosInModal: user.playVideosInModal,\n useContainFit: user.useContainFit,\n\n backendVersion: instance.backendVersion,\n frontendVersion: instance.frontendVersion\n }\n },\n components: {\n TabSwitcher,\n StyleSwitcher,\n InterfaceLanguageSwitcher\n },\n computed: {\n user () {\n return this.$store.state.users.currentUser\n },\n currentSaveStateNotice () {\n return this.$store.state.interface.settings.currentSaveStateNotice\n },\n postFormats () {\n return this.$store.state.instance.postFormats || []\n },\n instanceSpecificPanelPresent () { return this.$store.state.instance.showInstanceSpecificPanel },\n frontendVersionLink () {\n return pleromaFeCommitUrl + this.frontendVersion\n },\n backendVersionLink () {\n return pleromaBeCommitUrl + extractCommit(this.backendVersion)\n }\n },\n watch: {\n hideAttachmentsLocal (value) {\n this.$store.dispatch('setOption', { name: 'hideAttachments', value })\n },\n hideAttachmentsInConvLocal (value) {\n this.$store.dispatch('setOption', { name: 'hideAttachmentsInConv', value })\n },\n hidePostStatsLocal (value) {\n this.$store.dispatch('setOption', { name: 'hidePostStats', value })\n },\n hideUserStatsLocal (value) {\n this.$store.dispatch('setOption', { name: 'hideUserStats', value })\n },\n hideFilteredStatusesLocal (value) {\n this.$store.dispatch('setOption', { name: 'hideFilteredStatuses', value })\n },\n hideNsfwLocal (value) {\n this.$store.dispatch('setOption', { name: 'hideNsfw', value })\n },\n useOneClickNsfw (value) {\n this.$store.dispatch('setOption', { name: 'useOneClickNsfw', value })\n },\n preloadImage (value) {\n this.$store.dispatch('setOption', { name: 'preloadImage', value })\n },\n hideISPLocal (value) {\n this.$store.dispatch('setOption', { name: 'hideISP', value })\n },\n 'notificationVisibilityLocal.likes' (value) {\n this.$store.dispatch('setOption', { name: 'notificationVisibility', value: this.$store.state.config.notificationVisibility })\n },\n 'notificationVisibilityLocal.follows' (value) {\n this.$store.dispatch('setOption', { name: 'notificationVisibility', value: this.$store.state.config.notificationVisibility })\n },\n 'notificationVisibilityLocal.repeats' (value) {\n this.$store.dispatch('setOption', { name: 'notificationVisibility', value: this.$store.state.config.notificationVisibility })\n },\n 'notificationVisibilityLocal.mentions' (value) {\n this.$store.dispatch('setOption', { name: 'notificationVisibility', value: this.$store.state.config.notificationVisibility })\n },\n replyVisibilityLocal (value) {\n this.$store.dispatch('setOption', { name: 'replyVisibility', value })\n },\n loopVideoLocal (value) {\n this.$store.dispatch('setOption', { name: 'loopVideo', value })\n },\n loopVideoSilentOnlyLocal (value) {\n this.$store.dispatch('setOption', { name: 'loopVideoSilentOnly', value })\n },\n autoLoadLocal (value) {\n this.$store.dispatch('setOption', { name: 'autoLoad', value })\n },\n streamingLocal (value) {\n this.$store.dispatch('setOption', { name: 'streaming', value })\n },\n pauseOnUnfocusedLocal (value) {\n this.$store.dispatch('setOption', { name: 'pauseOnUnfocused', value })\n },\n hoverPreviewLocal (value) {\n this.$store.dispatch('setOption', { name: 'hoverPreview', value })\n },\n autohideFloatingPostButtonLocal (value) {\n this.$store.dispatch('setOption', { name: 'autohideFloatingPostButton', value })\n },\n muteWordsString (value) {\n value = filter(value.split('\\n'), (word) => trim(word).length > 0)\n this.$store.dispatch('setOption', { name: 'muteWords', value })\n },\n hideMutedPostsLocal (value) {\n this.$store.dispatch('setOption', { name: 'hideMutedPosts', value })\n },\n collapseMessageWithSubjectLocal (value) {\n this.$store.dispatch('setOption', { name: 'collapseMessageWithSubject', value })\n },\n scopeCopyLocal (value) {\n this.$store.dispatch('setOption', { name: 'scopeCopy', value })\n },\n alwaysShowSubjectInputLocal (value) {\n this.$store.dispatch('setOption', { name: 'alwaysShowSubjectInput', value })\n },\n subjectLineBehaviorLocal (value) {\n this.$store.dispatch('setOption', { name: 'subjectLineBehavior', value })\n },\n postContentTypeLocal (value) {\n this.$store.dispatch('setOption', { name: 'postContentType', value })\n },\n minimalScopesModeLocal (value) {\n this.$store.dispatch('setOption', { name: 'minimalScopesMode', value })\n },\n stopGifs (value) {\n this.$store.dispatch('setOption', { name: 'stopGifs', value })\n },\n webPushNotificationsLocal (value) {\n this.$store.dispatch('setOption', { name: 'webPushNotifications', value })\n if (value) this.$store.dispatch('registerPushNotifications')\n },\n playVideosInModal (value) {\n this.$store.dispatch('setOption', { name: 'playVideosInModal', value })\n },\n useContainFit (value) {\n this.$store.dispatch('setOption', { name: 'useContainFit', value })\n },\n maxThumbnails (value) {\n value = this.maxThumbnails = Math.floor(Math.max(value, 0))\n this.$store.dispatch('setOption', { name: 'maxThumbnails', value })\n }\n }\n}\n\nexport default settings\n","import { rgb2hex, hex2rgb, getContrastRatio, alphaBlend } from '../../services/color_convert/color_convert.js'\nimport { set, delete as del } from 'vue'\nimport { generateColors, generateShadows, generateRadii, generateFonts, composePreset, getThemes } from '../../services/style_setter/style_setter.js'\nimport ColorInput from '../color_input/color_input.vue'\nimport RangeInput from '../range_input/range_input.vue'\nimport OpacityInput from '../opacity_input/opacity_input.vue'\nimport ShadowControl from '../shadow_control/shadow_control.vue'\nimport FontControl from '../font_control/font_control.vue'\nimport ContrastRatio from '../contrast_ratio/contrast_ratio.vue'\nimport TabSwitcher from '../tab_switcher/tab_switcher.js'\nimport Preview from './preview.vue'\nimport ExportImport from '../export_import/export_import.vue'\n\n// List of color values used in v1\nconst v1OnlyNames = [\n 'bg',\n 'fg',\n 'text',\n 'link',\n 'cRed',\n 'cGreen',\n 'cBlue',\n 'cOrange'\n].map(_ => _ + 'ColorLocal')\n\nexport default {\n data () {\n return {\n availableStyles: [],\n selected: this.$store.state.config.theme,\n\n previewShadows: {},\n previewColors: {},\n previewRadii: {},\n previewFonts: {},\n\n shadowsInvalid: true,\n colorsInvalid: true,\n radiiInvalid: true,\n\n keepColor: false,\n keepShadows: false,\n keepOpacity: false,\n keepRoundness: false,\n keepFonts: false,\n\n textColorLocal: '',\n linkColorLocal: '',\n\n bgColorLocal: '',\n bgOpacityLocal: undefined,\n\n fgColorLocal: '',\n fgTextColorLocal: undefined,\n fgLinkColorLocal: undefined,\n\n btnColorLocal: undefined,\n btnTextColorLocal: undefined,\n btnOpacityLocal: undefined,\n\n inputColorLocal: undefined,\n inputTextColorLocal: undefined,\n inputOpacityLocal: undefined,\n\n panelColorLocal: undefined,\n panelTextColorLocal: undefined,\n panelLinkColorLocal: undefined,\n panelFaintColorLocal: undefined,\n panelOpacityLocal: undefined,\n\n topBarColorLocal: undefined,\n topBarTextColorLocal: undefined,\n topBarLinkColorLocal: undefined,\n\n alertErrorColorLocal: undefined,\n\n badgeOpacityLocal: undefined,\n badgeNotificationColorLocal: undefined,\n\n borderColorLocal: undefined,\n borderOpacityLocal: undefined,\n\n faintColorLocal: undefined,\n faintOpacityLocal: undefined,\n faintLinkColorLocal: undefined,\n\n cRedColorLocal: '',\n cBlueColorLocal: '',\n cGreenColorLocal: '',\n cOrangeColorLocal: '',\n\n shadowSelected: undefined,\n shadowsLocal: {},\n fontsLocal: {},\n\n btnRadiusLocal: '',\n inputRadiusLocal: '',\n checkboxRadiusLocal: '',\n panelRadiusLocal: '',\n avatarRadiusLocal: '',\n avatarAltRadiusLocal: '',\n attachmentRadiusLocal: '',\n tooltipRadiusLocal: ''\n }\n },\n created () {\n const self = this\n\n getThemes().then((themesComplete) => {\n self.availableStyles = themesComplete\n })\n },\n mounted () {\n this.normalizeLocalState(this.$store.state.config.customTheme)\n if (typeof this.shadowSelected === 'undefined') {\n this.shadowSelected = this.shadowsAvailable[0]\n }\n },\n computed: {\n selectedVersion () {\n return Array.isArray(this.selected) ? 1 : 2\n },\n currentColors () {\n return {\n bg: this.bgColorLocal,\n text: this.textColorLocal,\n link: this.linkColorLocal,\n\n fg: this.fgColorLocal,\n fgText: this.fgTextColorLocal,\n fgLink: this.fgLinkColorLocal,\n\n panel: this.panelColorLocal,\n panelText: this.panelTextColorLocal,\n panelLink: this.panelLinkColorLocal,\n panelFaint: this.panelFaintColorLocal,\n\n input: this.inputColorLocal,\n inputText: this.inputTextColorLocal,\n\n topBar: this.topBarColorLocal,\n topBarText: this.topBarTextColorLocal,\n topBarLink: this.topBarLinkColorLocal,\n\n btn: this.btnColorLocal,\n btnText: this.btnTextColorLocal,\n\n alertError: this.alertErrorColorLocal,\n badgeNotification: this.badgeNotificationColorLocal,\n\n faint: this.faintColorLocal,\n faintLink: this.faintLinkColorLocal,\n border: this.borderColorLocal,\n\n cRed: this.cRedColorLocal,\n cBlue: this.cBlueColorLocal,\n cGreen: this.cGreenColorLocal,\n cOrange: this.cOrangeColorLocal\n }\n },\n currentOpacity () {\n return {\n bg: this.bgOpacityLocal,\n btn: this.btnOpacityLocal,\n input: this.inputOpacityLocal,\n panel: this.panelOpacityLocal,\n topBar: this.topBarOpacityLocal,\n border: this.borderOpacityLocal,\n faint: this.faintOpacityLocal\n }\n },\n currentRadii () {\n return {\n btn: this.btnRadiusLocal,\n input: this.inputRadiusLocal,\n checkbox: this.checkboxRadiusLocal,\n panel: this.panelRadiusLocal,\n avatar: this.avatarRadiusLocal,\n avatarAlt: this.avatarAltRadiusLocal,\n tooltip: this.tooltipRadiusLocal,\n attachment: this.attachmentRadiusLocal\n }\n },\n preview () {\n return composePreset(this.previewColors, this.previewRadii, this.previewShadows, this.previewFonts)\n },\n previewTheme () {\n if (!this.preview.theme.colors) return { colors: {}, opacity: {}, radii: {}, shadows: {}, fonts: {} }\n return this.preview.theme\n },\n // This needs optimization maybe\n previewContrast () {\n if (!this.previewTheme.colors.bg) return {}\n const colors = this.previewTheme.colors\n const opacity = this.previewTheme.opacity\n if (!colors.bg) return {}\n const hints = (ratio) => ({\n text: ratio.toPrecision(3) + ':1',\n // AA level, AAA level\n aa: ratio >= 4.5,\n aaa: ratio >= 7,\n // same but for 18pt+ texts\n laa: ratio >= 3,\n laaa: ratio >= 4.5\n })\n\n // fgsfds :DDDD\n const fgs = {\n text: hex2rgb(colors.text),\n panelText: hex2rgb(colors.panelText),\n panelLink: hex2rgb(colors.panelLink),\n btnText: hex2rgb(colors.btnText),\n topBarText: hex2rgb(colors.topBarText),\n inputText: hex2rgb(colors.inputText),\n\n link: hex2rgb(colors.link),\n topBarLink: hex2rgb(colors.topBarLink),\n\n red: hex2rgb(colors.cRed),\n green: hex2rgb(colors.cGreen),\n blue: hex2rgb(colors.cBlue),\n orange: hex2rgb(colors.cOrange)\n }\n\n const bgs = {\n bg: hex2rgb(colors.bg),\n btn: hex2rgb(colors.btn),\n panel: hex2rgb(colors.panel),\n topBar: hex2rgb(colors.topBar),\n input: hex2rgb(colors.input),\n alertError: hex2rgb(colors.alertError),\n badgeNotification: hex2rgb(colors.badgeNotification)\n }\n\n /* This is a bit confusing because \"bottom layer\" used is text color\n * This is done to get worst case scenario when background below transparent\n * layer matches text color, making it harder to read the lower alpha is.\n */\n const ratios = {\n bgText: getContrastRatio(alphaBlend(bgs.bg, opacity.bg, fgs.text), fgs.text),\n bgLink: getContrastRatio(alphaBlend(bgs.bg, opacity.bg, fgs.link), fgs.link),\n bgRed: getContrastRatio(alphaBlend(bgs.bg, opacity.bg, fgs.red), fgs.red),\n bgGreen: getContrastRatio(alphaBlend(bgs.bg, opacity.bg, fgs.green), fgs.green),\n bgBlue: getContrastRatio(alphaBlend(bgs.bg, opacity.bg, fgs.blue), fgs.blue),\n bgOrange: getContrastRatio(alphaBlend(bgs.bg, opacity.bg, fgs.orange), fgs.orange),\n\n tintText: getContrastRatio(alphaBlend(bgs.bg, 0.5, fgs.panelText), fgs.text),\n\n panelText: getContrastRatio(alphaBlend(bgs.panel, opacity.panel, fgs.panelText), fgs.panelText),\n panelLink: getContrastRatio(alphaBlend(bgs.panel, opacity.panel, fgs.panelLink), fgs.panelLink),\n\n btnText: getContrastRatio(alphaBlend(bgs.btn, opacity.btn, fgs.btnText), fgs.btnText),\n\n inputText: getContrastRatio(alphaBlend(bgs.input, opacity.input, fgs.inputText), fgs.inputText),\n\n topBarText: getContrastRatio(alphaBlend(bgs.topBar, opacity.topBar, fgs.topBarText), fgs.topBarText),\n topBarLink: getContrastRatio(alphaBlend(bgs.topBar, opacity.topBar, fgs.topBarLink), fgs.topBarLink)\n }\n\n return Object.entries(ratios).reduce((acc, [k, v]) => { acc[k] = hints(v); return acc }, {})\n },\n previewRules () {\n if (!this.preview.rules) return ''\n return [\n ...Object.values(this.preview.rules),\n 'color: var(--text)',\n 'font-family: var(--interfaceFont, sans-serif)'\n ].join(';')\n },\n shadowsAvailable () {\n return Object.keys(this.previewTheme.shadows).sort()\n },\n currentShadowOverriden: {\n get () {\n return !!this.currentShadow\n },\n set (val) {\n if (val) {\n set(this.shadowsLocal, this.shadowSelected, this.currentShadowFallback.map(_ => Object.assign({}, _)))\n } else {\n del(this.shadowsLocal, this.shadowSelected)\n }\n }\n },\n currentShadowFallback () {\n return this.previewTheme.shadows[this.shadowSelected]\n },\n currentShadow: {\n get () {\n return this.shadowsLocal[this.shadowSelected]\n },\n set (v) {\n set(this.shadowsLocal, this.shadowSelected, v)\n }\n },\n themeValid () {\n return !this.shadowsInvalid && !this.colorsInvalid && !this.radiiInvalid\n },\n exportedTheme () {\n const saveEverything = (\n !this.keepFonts &&\n !this.keepShadows &&\n !this.keepOpacity &&\n !this.keepRoundness &&\n !this.keepColor\n )\n\n const theme = {}\n\n if (this.keepFonts || saveEverything) {\n theme.fonts = this.fontsLocal\n }\n if (this.keepShadows || saveEverything) {\n theme.shadows = this.shadowsLocal\n }\n if (this.keepOpacity || saveEverything) {\n theme.opacity = this.currentOpacity\n }\n if (this.keepColor || saveEverything) {\n theme.colors = this.currentColors\n }\n if (this.keepRoundness || saveEverything) {\n theme.radii = this.currentRadii\n }\n\n return {\n // To separate from other random JSON files and possible future theme formats\n _pleroma_theme_version: 2, theme\n }\n }\n },\n components: {\n ColorInput,\n OpacityInput,\n RangeInput,\n ContrastRatio,\n ShadowControl,\n FontControl,\n TabSwitcher,\n Preview,\n ExportImport\n },\n methods: {\n setCustomTheme () {\n this.$store.dispatch('setOption', {\n name: 'customTheme',\n value: {\n shadows: this.shadowsLocal,\n fonts: this.fontsLocal,\n opacity: this.currentOpacity,\n colors: this.currentColors,\n radii: this.currentRadii\n }\n })\n },\n onImport (parsed) {\n if (parsed._pleroma_theme_version === 1) {\n this.normalizeLocalState(parsed, 1)\n } else if (parsed._pleroma_theme_version === 2) {\n this.normalizeLocalState(parsed.theme, 2)\n }\n },\n importValidator (parsed) {\n const version = parsed._pleroma_theme_version\n return version >= 1 || version <= 2\n },\n clearAll () {\n const state = this.$store.state.config.customTheme\n const version = state.colors ? 2 : 'l1'\n this.normalizeLocalState(this.$store.state.config.customTheme, version)\n },\n\n // Clears all the extra stuff when loading V1 theme\n clearV1 () {\n Object.keys(this.$data)\n .filter(_ => _.endsWith('ColorLocal') || _.endsWith('OpacityLocal'))\n .filter(_ => !v1OnlyNames.includes(_))\n .forEach(key => {\n set(this.$data, key, undefined)\n })\n },\n\n clearRoundness () {\n Object.keys(this.$data)\n .filter(_ => _.endsWith('RadiusLocal'))\n .forEach(key => {\n set(this.$data, key, undefined)\n })\n },\n\n clearOpacity () {\n Object.keys(this.$data)\n .filter(_ => _.endsWith('OpacityLocal'))\n .forEach(key => {\n set(this.$data, key, undefined)\n })\n },\n\n clearShadows () {\n this.shadowsLocal = {}\n },\n\n clearFonts () {\n this.fontsLocal = {}\n },\n\n /**\n * This applies stored theme data onto form. Supports three versions of data:\n * v2 (version = 2) - newer version of themes.\n * v1 (version = 1) - older version of themes (import from file)\n * v1l (version = l1) - older version of theme (load from local storage)\n * v1 and v1l differ because of way themes were stored/exported.\n * @param {Object} input - input data\n * @param {Number} version - version of data. 0 means try to guess based on data. \"l1\" means v1, locastorage type\n */\n normalizeLocalState (input, version = 0) {\n const colors = input.colors || input\n const radii = input.radii || input\n const opacity = input.opacity\n const shadows = input.shadows || {}\n const fonts = input.fonts || {}\n\n if (version === 0) {\n if (input.version) version = input.version\n // Old v1 naming: fg is text, btn is foreground\n if (typeof colors.text === 'undefined' && typeof colors.fg !== 'undefined') {\n version = 1\n }\n // New v2 naming: text is text, fg is foreground\n if (typeof colors.text !== 'undefined' && typeof colors.fg !== 'undefined') {\n version = 2\n }\n }\n\n // Stuff that differs between V1 and V2\n if (version === 1) {\n this.fgColorLocal = rgb2hex(colors.btn)\n this.textColorLocal = rgb2hex(colors.fg)\n }\n\n if (!this.keepColor) {\n this.clearV1()\n const keys = new Set(version !== 1 ? Object.keys(colors) : [])\n if (version === 1 || version === 'l1') {\n keys\n .add('bg')\n .add('link')\n .add('cRed')\n .add('cBlue')\n .add('cGreen')\n .add('cOrange')\n }\n\n keys.forEach(key => {\n this[key + 'ColorLocal'] = rgb2hex(colors[key])\n })\n }\n\n if (!this.keepRoundness) {\n this.clearRoundness()\n Object.entries(radii).forEach(([k, v]) => {\n // 'Radius' is kept mostly for v1->v2 localstorage transition\n const key = k.endsWith('Radius') ? k.split('Radius')[0] : k\n this[key + 'RadiusLocal'] = v\n })\n }\n\n if (!this.keepShadows) {\n this.clearShadows()\n this.shadowsLocal = shadows\n this.shadowSelected = this.shadowsAvailable[0]\n }\n\n if (!this.keepFonts) {\n this.clearFonts()\n this.fontsLocal = fonts\n }\n\n if (opacity && !this.keepOpacity) {\n this.clearOpacity()\n Object.entries(opacity).forEach(([k, v]) => {\n if (typeof v === 'undefined' || v === null || Number.isNaN(v)) return\n this[k + 'OpacityLocal'] = v\n })\n }\n }\n },\n watch: {\n currentRadii () {\n try {\n this.previewRadii = generateRadii({ radii: this.currentRadii })\n this.radiiInvalid = false\n } catch (e) {\n this.radiiInvalid = true\n console.warn(e)\n }\n },\n shadowsLocal: {\n handler () {\n try {\n this.previewShadows = generateShadows({ shadows: this.shadowsLocal })\n this.shadowsInvalid = false\n } catch (e) {\n this.shadowsInvalid = true\n console.warn(e)\n }\n },\n deep: true\n },\n fontsLocal: {\n handler () {\n try {\n this.previewFonts = generateFonts({ fonts: this.fontsLocal })\n this.fontsInvalid = false\n } catch (e) {\n this.fontsInvalid = true\n console.warn(e)\n }\n },\n deep: true\n },\n currentColors () {\n try {\n this.previewColors = generateColors({\n opacity: this.currentOpacity,\n colors: this.currentColors\n })\n this.colorsInvalid = false\n } catch (e) {\n this.colorsInvalid = true\n console.warn(e)\n }\n },\n currentOpacity () {\n try {\n this.previewColors = generateColors({\n opacity: this.currentOpacity,\n colors: this.currentColors\n })\n } catch (e) {\n console.warn(e)\n }\n },\n selected () {\n if (this.selectedVersion === 1) {\n if (!this.keepRoundness) {\n this.clearRoundness()\n }\n\n if (!this.keepShadows) {\n this.clearShadows()\n }\n\n if (!this.keepOpacity) {\n this.clearOpacity()\n }\n\n if (!this.keepColor) {\n this.clearV1()\n\n this.bgColorLocal = this.selected[1]\n this.fgColorLocal = this.selected[2]\n this.textColorLocal = this.selected[3]\n this.linkColorLocal = this.selected[4]\n this.cRedColorLocal = this.selected[5]\n this.cGreenColorLocal = this.selected[6]\n this.cBlueColorLocal = this.selected[7]\n this.cOrangeColorLocal = this.selected[8]\n }\n } else if (this.selectedVersion >= 2) {\n this.normalizeLocalState(this.selected.theme, 2)\n }\n }\n }\n}\n","<template>\n<div class=\"color-control style-control\" :class=\"{ disabled: !present || disabled }\">\n <label :for=\"name\" class=\"label\">\n {{label}}\n </label>\n <input\n v-if=\"typeof fallback !== 'undefined'\"\n class=\"opt exlcude-disabled\"\n :id=\"name + '-o'\"\n type=\"checkbox\"\n :checked=\"present\"\n @input=\"$emit('input', typeof value === 'undefined' ? fallback : undefined)\">\n <label v-if=\"typeof fallback !== 'undefined'\" class=\"opt-l\" :for=\"name + '-o'\"></label>\n <input\n :id=\"name\"\n class=\"color-input\"\n type=\"color\"\n :value=\"value || fallback\"\n :disabled=\"!present || disabled\"\n @input=\"$emit('input', $event.target.value)\"\n >\n <input\n :id=\"name + '-t'\"\n class=\"text-input\"\n type=\"text\"\n :value=\"value || fallback\"\n :disabled=\"!present || disabled\"\n @input=\"$emit('input', $event.target.value)\"\n >\n</div>\n</template>\n\n<script>\nexport default {\n props: [\n 'name', 'label', 'value', 'fallback', 'disabled'\n ],\n computed: {\n present () {\n return typeof this.value !== 'undefined'\n }\n }\n}\n</script>\n\n<style lang=\"scss\">\n.color-control {\n input.text-input {\n max-width: 7em;\n flex: 1;\n }\n}\n</style>\n","<template>\n<div class=\"range-control style-control\" :class=\"{ disabled: !present || disabled }\">\n <label :for=\"name\" class=\"label\">\n {{label}}\n </label>\n <input\n v-if=\"typeof fallback !== 'undefined'\"\n class=\"opt exclude-disabled\"\n :id=\"name + '-o'\"\n type=\"checkbox\"\n :checked=\"present\"\n @input=\"$emit('input', !present ? fallback : undefined)\">\n <label v-if=\"typeof fallback !== 'undefined'\" class=\"opt-l\" :for=\"name + '-o'\"></label>\n <input\n :id=\"name\"\n class=\"input-number\"\n type=\"range\"\n :value=\"value || fallback\"\n :disabled=\"!present || disabled\"\n @input=\"$emit('input', $event.target.value)\"\n :max=\"max || hardMax || 100\"\n :min=\"min || hardMin || 0\"\n :step=\"step || 1\">\n <input\n :id=\"name\"\n class=\"input-number\"\n type=\"number\"\n :value=\"value || fallback\"\n :disabled=\"!present || disabled\"\n @input=\"$emit('input', $event.target.value)\"\n :max=\"hardMax\"\n :min=\"hardMin\"\n :step=\"step || 1\">\n</div>\n</template>\n\n<script>\nexport default {\n props: [\n 'name', 'value', 'fallback', 'disabled', 'label', 'max', 'min', 'step', 'hardMin', 'hardMax'\n ],\n computed: {\n present () {\n return typeof this.value !== 'undefined'\n }\n }\n}\n</script>\n","<template>\n<div class=\"opacity-control style-control\" :class=\"{ disabled: !present || disabled }\">\n <label :for=\"name\" class=\"label\">\n {{$t('settings.style.common.opacity')}}\n </label>\n <input\n v-if=\"typeof fallback !== 'undefined'\"\n class=\"opt exclude-disabled\"\n :id=\"name + '-o'\"\n type=\"checkbox\"\n :checked=\"present\"\n @input=\"$emit('input', !present ? fallback : undefined)\">\n <label v-if=\"typeof fallback !== 'undefined'\" class=\"opt-l\" :for=\"name + '-o'\"></label>\n <input\n :id=\"name\"\n class=\"input-number\"\n type=\"number\"\n :value=\"value || fallback\"\n :disabled=\"!present || disabled\"\n @input=\"$emit('input', $event.target.value)\"\n max=\"1\"\n min=\"0\"\n step=\".05\">\n</div>\n</template>\n\n<script>\nexport default {\n props: [\n 'name', 'value', 'fallback', 'disabled'\n ],\n computed: {\n present () {\n return typeof this.value !== 'undefined'\n }\n }\n}\n</script>\n","import ColorInput from '../color_input/color_input.vue'\nimport OpacityInput from '../opacity_input/opacity_input.vue'\nimport { getCssShadow } from '../../services/style_setter/style_setter.js'\nimport { hex2rgb } from '../../services/color_convert/color_convert.js'\n\nexport default {\n // 'Value' and 'Fallback' can be undefined, but if they are\n // initially vue won't detect it when they become something else\n // therefore i'm using \"ready\" which should be passed as true when\n // data becomes available\n props: [\n 'value', 'fallback', 'ready'\n ],\n data () {\n return {\n selectedId: 0,\n // TODO there are some bugs regarding display of array (it's not getting updated when deleting for some reason)\n cValue: this.value || this.fallback || []\n }\n },\n components: {\n ColorInput,\n OpacityInput\n },\n methods: {\n add () {\n this.cValue.push(Object.assign({}, this.selected))\n this.selectedId = this.cValue.length - 1\n },\n del () {\n this.cValue.splice(this.selectedId, 1)\n this.selectedId = this.cValue.length === 0 ? undefined : this.selectedId - 1\n },\n moveUp () {\n const movable = this.cValue.splice(this.selectedId, 1)[0]\n this.cValue.splice(this.selectedId - 1, 0, movable)\n this.selectedId -= 1\n },\n moveDn () {\n const movable = this.cValue.splice(this.selectedId, 1)[0]\n this.cValue.splice(this.selectedId + 1, 0, movable)\n this.selectedId += 1\n }\n },\n beforeUpdate () {\n this.cValue = this.value || this.fallback\n },\n computed: {\n selected () {\n if (this.ready && this.cValue.length > 0) {\n return this.cValue[this.selectedId]\n } else {\n return {\n x: 0,\n y: 0,\n blur: 0,\n spread: 0,\n inset: false,\n color: '#000000',\n alpha: 1\n }\n }\n },\n moveUpValid () {\n return this.ready && this.selectedId > 0\n },\n moveDnValid () {\n return this.ready && this.selectedId < this.cValue.length - 1\n },\n present () {\n return this.ready &&\n typeof this.cValue[this.selectedId] !== 'undefined' &&\n !this.usingFallback\n },\n usingFallback () {\n return typeof this.value === 'undefined'\n },\n rgb () {\n return hex2rgb(this.selected.color)\n },\n style () {\n return this.ready ? {\n boxShadow: getCssShadow(this.cValue)\n } : {}\n }\n }\n}\n","import { set } from 'vue'\n\nexport default {\n props: [\n 'name', 'label', 'value', 'fallback', 'options', 'no-inherit'\n ],\n data () {\n return {\n lValue: this.value,\n availableOptions: [\n this.noInherit ? '' : 'inherit',\n 'custom',\n ...(this.options || []),\n 'serif',\n 'monospace',\n 'sans-serif'\n ].filter(_ => _)\n }\n },\n beforeUpdate () {\n this.lValue = this.value\n },\n computed: {\n present () {\n return typeof this.lValue !== 'undefined'\n },\n dValue () {\n return this.lValue || this.fallback || {}\n },\n family: {\n get () {\n return this.dValue.family\n },\n set (v) {\n set(this.lValue, 'family', v)\n this.$emit('input', this.lValue)\n }\n },\n isCustom () {\n return this.preset === 'custom'\n },\n preset: {\n get () {\n if (this.family === 'serif' ||\n this.family === 'sans-serif' ||\n this.family === 'monospace' ||\n this.family === 'inherit') {\n return this.family\n } else {\n return 'custom'\n }\n },\n set (v) {\n this.family = v === 'custom' ? '' : v\n }\n }\n }\n}\n","<template>\n<span v-if=\"contrast\" class=\"contrast-ratio\">\n <span :title=\"hint\" class=\"rating\">\n <span v-if=\"contrast.aaa\">\n <i class=\"icon-thumbs-up-alt\"/>\n </span>\n <span v-if=\"!contrast.aaa && contrast.aa\">\n <i class=\"icon-adjust\"/>\n </span>\n <span v-if=\"!contrast.aaa && !contrast.aa\">\n <i class=\"icon-attention\"/>\n </span>\n </span>\n <span class=\"rating\" v-if=\"contrast && large\" :title=\"hint_18pt\">\n <span v-if=\"contrast.laaa\">\n <i class=\"icon-thumbs-up-alt\"/>\n </span>\n <span v-if=\"!contrast.laaa && contrast.laa\">\n <i class=\"icon-adjust\"/>\n </span>\n <span v-if=\"!contrast.laaa && !contrast.laa\">\n <i class=\"icon-attention\"/>\n </span>\n </span>\n</span>\n</template>\n\n<script>\nexport default {\n props: [\n 'large', 'contrast'\n ],\n computed: {\n hint () {\n const levelVal = this.contrast.aaa ? 'aaa' : (this.contrast.aa ? 'aa' : 'bad')\n const level = this.$t(`settings.style.common.contrast.level.${levelVal}`)\n const context = this.$t('settings.style.common.contrast.context.text')\n const ratio = this.contrast.text\n return this.$t('settings.style.common.contrast.hint', { level, context, ratio })\n },\n hint_18pt () {\n const levelVal = this.contrast.laaa ? 'aaa' : (this.contrast.laa ? 'aa' : 'bad')\n const level = this.$t(`settings.style.common.contrast.level.${levelVal}`)\n const context = this.$t('settings.style.common.contrast.context.18pt')\n const ratio = this.contrast.text\n return this.$t('settings.style.common.contrast.hint', { level, context, ratio })\n }\n }\n}\n</script>\n\n<style lang=\"scss\">\n.contrast-ratio {\n display: flex;\n justify-content: flex-end;\n\n margin-top: -4px;\n margin-bottom: 5px;\n\n .label {\n margin-right: 1em;\n }\n\n .rating {\n display: inline-block;\n text-align: center;\n }\n}\n</style>\n","<template>\n<div class=\"import-export-container\">\n <slot name=\"before\"/>\n <button class=\"btn\" @click=\"exportData\">{{ exportLabel }}</button>\n <button class=\"btn\" @click=\"importData\">{{ importLabel }}</button>\n <slot name=\"afterButtons\"/>\n <p v-if=\"importFailed\" class=\"alert error\">{{ importFailedText }}</p>\n <slot name=\"afterError\"/>\n</div>\n</template>\n\n<script>\nexport default {\n props: [\n 'exportObject',\n 'importLabel',\n 'exportLabel',\n 'importFailedText',\n 'validator',\n 'onImport',\n 'onImportFailure'\n ],\n data () {\n return {\n importFailed: false\n }\n },\n methods: {\n exportData () {\n const stringified = JSON.stringify(this.exportObject) // Pretty-print and indent with 2 spaces\n\n // Create an invisible link with a data url and simulate a click\n const e = document.createElement('a')\n e.setAttribute('download', 'pleroma_theme.json')\n e.setAttribute('href', 'data:application/json;base64,' + window.btoa(stringified))\n e.style.display = 'none'\n\n document.body.appendChild(e)\n e.click()\n document.body.removeChild(e)\n },\n importData () {\n this.importFailed = false\n const filePicker = document.createElement('input')\n filePicker.setAttribute('type', 'file')\n filePicker.setAttribute('accept', '.json')\n\n filePicker.addEventListener('change', event => {\n if (event.target.files[0]) {\n // eslint-disable-next-line no-undef\n const reader = new FileReader()\n reader.onload = ({target}) => {\n try {\n const parsed = JSON.parse(target.result)\n const valid = this.validator(parsed)\n if (valid) {\n this.onImport(parsed)\n } else {\n this.importFailed = true\n // this.onImportFailure(valid)\n }\n } catch (e) {\n // This will happen both if there is a JSON syntax error or the theme is missing components\n this.importFailed = true\n // this.onImportFailure(e)\n }\n }\n reader.readAsText(event.target.files[0])\n }\n })\n\n document.body.appendChild(filePicker)\n filePicker.click()\n document.body.removeChild(filePicker)\n }\n }\n}\n</script>\n\n<style lang=\"scss\">\n.import-export-container {\n display: flex;\n flex-wrap: wrap;\n align-items: baseline;\n justify-content: center;\n}\n</style>\n","<template>\n <div>\n <label for=\"interface-language-switcher\">\n {{ $t('settings.interfaceLanguage') }}\n </label>\n <label for=\"interface-language-switcher\" class='select'>\n <select id=\"interface-language-switcher\" v-model=\"language\">\n <option v-for=\"(langCode, i) in languageCodes\" :value=\"langCode\">\n {{ languageNames[i] }}\n </option>\n </select>\n <i class=\"icon-down-open\"/>\n </label>\n </div>\n</template>\n\n<script>\n import languagesObject from '../../i18n/messages'\n import ISO6391 from 'iso-639-1'\n import _ from 'lodash'\n\n export default {\n computed: {\n languageCodes () {\n return Object.keys(languagesObject)\n },\n\n languageNames () {\n return _.map(this.languageCodes, this.getLanguageName)\n },\n\n language: {\n get: function () { return this.$store.state.config.interfaceLanguage },\n set: function (val) {\n this.$store.dispatch('setOption', { name: 'interfaceLanguage', value: val })\n this.$i18n.locale = val\n }\n }\n },\n\n methods: {\n getLanguageName (code) {\n const specialLanguageNames = {\n 'ja': 'Japanese (やさしいにほんご)',\n 'ja_pedantic': 'Japanese (日本語)',\n 'zh': 'Chinese (简体中文)'\n }\n return specialLanguageNames[code] || ISO6391.getName(code)\n }\n }\n }\n</script>\n","import { validationMixin } from 'vuelidate'\nimport { required, sameAs } from 'vuelidate/lib/validators'\nimport { mapActions, mapState } from 'vuex'\n\nconst registration = {\n mixins: [validationMixin],\n data: () => ({\n user: {\n email: '',\n fullname: '',\n username: '',\n password: '',\n confirm: ''\n },\n captcha: {}\n }),\n validations: {\n user: {\n email: { required },\n username: { required },\n fullname: { required },\n password: { required },\n confirm: {\n required,\n sameAsPassword: sameAs('password')\n }\n }\n },\n created () {\n if ((!this.registrationOpen && !this.token) || this.signedIn) {\n this.$router.push({name: 'root'})\n }\n\n this.setCaptcha()\n },\n computed: {\n token () { return this.$route.params.token },\n bioPlaceholder () {\n return this.$t('registration.bio_placeholder').replace(/\\s*\\n\\s*/g, ' \\n')\n },\n ...mapState({\n registrationOpen: (state) => state.instance.registrationOpen,\n signedIn: (state) => !!state.users.currentUser,\n isPending: (state) => state.users.signUpPending,\n serverValidationErrors: (state) => state.users.signUpErrors,\n termsOfService: (state) => state.instance.tos\n })\n },\n methods: {\n ...mapActions(['signUp', 'getCaptcha']),\n async submit () {\n this.user.nickname = this.user.username\n this.user.token = this.token\n\n this.user.captcha_solution = this.captcha.solution\n this.user.captcha_token = this.captcha.token\n this.user.captcha_answer_data = this.captcha.answer_data\n\n this.$v.$touch()\n\n if (!this.$v.$invalid) {\n try {\n await this.signUp(this.user)\n this.$router.push({name: 'friends'})\n } catch (error) {\n console.warn('Registration failed: ' + error)\n }\n }\n },\n setCaptcha () {\n this.getCaptcha().then(cpt => { this.captcha = cpt })\n }\n }\n}\n\nexport default registration\n","import unescape from 'lodash/unescape'\nimport get from 'lodash/get'\nimport map from 'lodash/map'\nimport reject from 'lodash/reject'\nimport TabSwitcher from '../tab_switcher/tab_switcher.js'\nimport ImageCropper from '../image_cropper/image_cropper.vue'\nimport StyleSwitcher from '../style_switcher/style_switcher.vue'\nimport ScopeSelector from '../scope_selector/scope_selector.vue'\nimport fileSizeFormatService from '../../services/file_size_format/file_size_format.js'\nimport BlockCard from '../block_card/block_card.vue'\nimport MuteCard from '../mute_card/mute_card.vue'\nimport SelectableList from '../selectable_list/selectable_list.vue'\nimport ProgressButton from '../progress_button/progress_button.vue'\nimport EmojiInput from '../emoji-input/emoji-input.vue'\nimport suggestor from '../emoji-input/suggestor.js'\nimport Autosuggest from '../autosuggest/autosuggest.vue'\nimport Importer from '../importer/importer.vue'\nimport Exporter from '../exporter/exporter.vue'\nimport withSubscription from '../../hocs/with_subscription/with_subscription'\nimport userSearchApi from '../../services/new_api/user_search.js'\nimport Mfa from './mfa.vue'\n\nconst BlockList = withSubscription({\n fetch: (props, $store) => $store.dispatch('fetchBlocks'),\n select: (props, $store) => get($store.state.users.currentUser, 'blockIds', []),\n childPropName: 'items'\n})(SelectableList)\n\nconst MuteList = withSubscription({\n fetch: (props, $store) => $store.dispatch('fetchMutes'),\n select: (props, $store) => get($store.state.users.currentUser, 'muteIds', []),\n childPropName: 'items'\n})(SelectableList)\n\nconst UserSettings = {\n data () {\n return {\n newName: this.$store.state.users.currentUser.name,\n newBio: unescape(this.$store.state.users.currentUser.description),\n newLocked: this.$store.state.users.currentUser.locked,\n newNoRichText: this.$store.state.users.currentUser.no_rich_text,\n newDefaultScope: this.$store.state.users.currentUser.default_scope,\n hideFollows: this.$store.state.users.currentUser.hide_follows,\n hideFollowers: this.$store.state.users.currentUser.hide_followers,\n showRole: this.$store.state.users.currentUser.show_role,\n role: this.$store.state.users.currentUser.role,\n pickAvatarBtnVisible: true,\n bannerUploading: false,\n backgroundUploading: false,\n banner: null,\n bannerPreview: null,\n background: null,\n backgroundPreview: null,\n bannerUploadError: null,\n backgroundUploadError: null,\n deletingAccount: false,\n deleteAccountConfirmPasswordInput: '',\n deleteAccountError: false,\n changePasswordInputs: [ '', '', '' ],\n changedPassword: false,\n changePasswordError: false,\n activeTab: 'profile',\n notificationSettings: this.$store.state.users.currentUser.notification_settings\n }\n },\n created () {\n this.$store.dispatch('fetchTokens')\n },\n components: {\n StyleSwitcher,\n ScopeSelector,\n TabSwitcher,\n ImageCropper,\n BlockList,\n MuteList,\n EmojiInput,\n Autosuggest,\n BlockCard,\n MuteCard,\n ProgressButton,\n Importer,\n Exporter,\n Mfa\n },\n computed: {\n user () {\n return this.$store.state.users.currentUser\n },\n emojiUserSuggestor () {\n return suggestor({\n emoji: [\n ...this.$store.state.instance.emoji,\n ...this.$store.state.instance.customEmoji\n ],\n users: this.$store.state.users.users\n })\n },\n emojiSuggestor () {\n return suggestor({ emoji: [\n ...this.$store.state.instance.emoji,\n ...this.$store.state.instance.customEmoji\n ]})\n },\n pleromaBackend () {\n return this.$store.state.instance.pleromaBackend\n },\n minimalScopesMode () {\n return this.$store.state.instance.minimalScopesMode\n },\n vis () {\n return {\n public: { selected: this.newDefaultScope === 'public' },\n unlisted: { selected: this.newDefaultScope === 'unlisted' },\n private: { selected: this.newDefaultScope === 'private' },\n direct: { selected: this.newDefaultScope === 'direct' }\n }\n },\n currentSaveStateNotice () {\n return this.$store.state.interface.settings.currentSaveStateNotice\n },\n oauthTokens () {\n return this.$store.state.oauthTokens.tokens.map(oauthToken => {\n return {\n id: oauthToken.id,\n appName: oauthToken.app_name,\n validUntil: new Date(oauthToken.valid_until).toLocaleDateString()\n }\n })\n }\n },\n methods: {\n updateProfile () {\n this.$store.state.api.backendInteractor\n .updateProfile({\n params: {\n note: this.newBio,\n locked: this.newLocked,\n // Backend notation.\n /* eslint-disable camelcase */\n display_name: this.newName,\n default_scope: this.newDefaultScope,\n no_rich_text: this.newNoRichText,\n hide_follows: this.hideFollows,\n hide_followers: this.hideFollowers,\n show_role: this.showRole\n /* eslint-enable camelcase */\n }}).then((user) => {\n this.$store.commit('addNewUsers', [user])\n this.$store.commit('setCurrentUser', user)\n })\n },\n updateNotificationSettings () {\n this.$store.state.api.backendInteractor\n .updateNotificationSettings({ settings: this.notificationSettings })\n },\n changeVis (visibility) {\n this.newDefaultScope = visibility\n },\n uploadFile (slot, e) {\n const file = e.target.files[0]\n if (!file) { return }\n if (file.size > this.$store.state.instance[slot + 'limit']) {\n const filesize = fileSizeFormatService.fileSizeFormat(file.size)\n const allowedsize = fileSizeFormatService.fileSizeFormat(this.$store.state.instance[slot + 'limit'])\n this[slot + 'UploadError'] = this.$t('upload.error.base') + ' ' + this.$t('upload.error.file_too_big', {filesize: filesize.num, filesizeunit: filesize.unit, allowedsize: allowedsize.num, allowedsizeunit: allowedsize.unit})\n return\n }\n // eslint-disable-next-line no-undef\n const reader = new FileReader()\n reader.onload = ({target}) => {\n const img = target.result\n this[slot + 'Preview'] = img\n this[slot] = file\n }\n reader.readAsDataURL(file)\n },\n submitAvatar (cropper, file) {\n const that = this\n return new Promise((resolve, reject) => {\n function updateAvatar (avatar) {\n that.$store.state.api.backendInteractor.updateAvatar({ avatar })\n .then((user) => {\n that.$store.commit('addNewUsers', [user])\n that.$store.commit('setCurrentUser', user)\n resolve()\n })\n .catch((err) => {\n reject(new Error(that.$t('upload.error.base') + ' ' + err.message))\n })\n }\n\n if (cropper) {\n cropper.getCroppedCanvas().toBlob(updateAvatar, file.type)\n } else {\n updateAvatar(file)\n }\n })\n },\n clearUploadError (slot) {\n this[slot + 'UploadError'] = null\n },\n submitBanner () {\n if (!this.bannerPreview) { return }\n\n this.bannerUploading = true\n this.$store.state.api.backendInteractor.updateBanner({banner: this.banner})\n .then((user) => {\n this.$store.commit('addNewUsers', [user])\n this.$store.commit('setCurrentUser', user)\n this.bannerPreview = null\n })\n .catch((err) => {\n this.bannerUploadError = this.$t('upload.error.base') + ' ' + err.message\n })\n .then(() => { this.bannerUploading = false })\n },\n submitBg () {\n if (!this.backgroundPreview) { return }\n let background = this.background\n this.backgroundUploading = true\n this.$store.state.api.backendInteractor.updateBg({ background }).then((data) => {\n if (!data.error) {\n this.$store.commit('addNewUsers', [data])\n this.$store.commit('setCurrentUser', data)\n this.backgroundPreview = null\n } else {\n this.backgroundUploadError = this.$t('upload.error.base') + data.error\n }\n this.backgroundUploading = false\n })\n },\n importFollows (file) {\n return this.$store.state.api.backendInteractor.importFollows(file)\n .then((status) => {\n if (!status) {\n throw new Error('failed')\n }\n })\n },\n importBlocks (file) {\n return this.$store.state.api.backendInteractor.importBlocks(file)\n .then((status) => {\n if (!status) {\n throw new Error('failed')\n }\n })\n },\n generateExportableUsersContent (users) {\n // Get addresses\n return users.map((user) => {\n // check is it's a local user\n if (user && user.is_local) {\n // append the instance address\n // eslint-disable-next-line no-undef\n return user.screen_name + '@' + location.hostname\n }\n return user.screen_name\n }).join('\\n')\n },\n getFollowsContent () {\n return this.$store.state.api.backendInteractor.exportFriends({ id: this.$store.state.users.currentUser.id })\n .then(this.generateExportableUsersContent)\n },\n getBlocksContent () {\n return this.$store.state.api.backendInteractor.fetchBlocks()\n .then(this.generateExportableUsersContent)\n },\n confirmDelete () {\n this.deletingAccount = true\n },\n deleteAccount () {\n this.$store.state.api.backendInteractor.deleteAccount({password: this.deleteAccountConfirmPasswordInput})\n .then((res) => {\n if (res.status === 'success') {\n this.$store.dispatch('logout')\n this.$router.push({name: 'root'})\n } else {\n this.deleteAccountError = res.error\n }\n })\n },\n changePassword () {\n const params = {\n password: this.changePasswordInputs[0],\n newPassword: this.changePasswordInputs[1],\n newPasswordConfirmation: this.changePasswordInputs[2]\n }\n this.$store.state.api.backendInteractor.changePassword(params)\n .then((res) => {\n if (res.status === 'success') {\n this.changedPassword = true\n this.changePasswordError = false\n this.logout()\n } else {\n this.changedPassword = false\n this.changePasswordError = res.error\n }\n })\n },\n activateTab (tabName) {\n this.activeTab = tabName\n },\n logout () {\n this.$store.dispatch('logout')\n this.$router.replace('/')\n },\n revokeToken (id) {\n if (window.confirm(`${this.$i18n.t('settings.revoke_token')}?`)) {\n this.$store.dispatch('revokeToken', id)\n }\n },\n filterUnblockedUsers (userIds) {\n return reject(userIds, (userId) => {\n const user = this.$store.getters.findUser(userId)\n return !user || user.statusnet_blocking || user.id === this.$store.state.users.currentUser.id\n })\n },\n filterUnMutedUsers (userIds) {\n return reject(userIds, (userId) => {\n const user = this.$store.getters.findUser(userId)\n return !user || user.muted || user.id === this.$store.state.users.currentUser.id\n })\n },\n queryUserIds (query) {\n return userSearchApi.search({query, store: this.$store})\n .then((users) => {\n this.$store.dispatch('addNewUsers', users)\n return map(users, 'id')\n })\n },\n blockUsers (ids) {\n return this.$store.dispatch('blockUsers', ids)\n },\n unblockUsers (ids) {\n return this.$store.dispatch('unblockUsers', ids)\n },\n muteUsers (ids) {\n return this.$store.dispatch('muteUsers', ids)\n },\n unmuteUsers (ids) {\n return this.$store.dispatch('unmuteUsers', ids)\n },\n identity (value) {\n return value\n }\n }\n}\n\nexport default UserSettings\n","import Cropper from 'cropperjs'\nimport 'cropperjs/dist/cropper.css'\n\nconst ImageCropper = {\n props: {\n trigger: {\n type: [String, window.Element],\n required: true\n },\n submitHandler: {\n type: Function,\n required: true\n },\n cropperOptions: {\n type: Object,\n default () {\n return {\n aspectRatio: 1,\n autoCropArea: 1,\n viewMode: 1,\n movable: false,\n zoomable: false,\n guides: false\n }\n }\n },\n mimes: {\n type: String,\n default: 'image/png, image/gif, image/jpeg, image/bmp, image/x-icon'\n },\n saveButtonLabel: {\n type: String\n },\n saveWithoutCroppingButtonlabel: {\n type: String\n },\n cancelButtonLabel: {\n type: String\n }\n },\n data () {\n return {\n cropper: undefined,\n dataUrl: undefined,\n filename: undefined,\n submitting: false,\n submitError: null\n }\n },\n computed: {\n saveText () {\n return this.saveButtonLabel || this.$t('image_cropper.save')\n },\n saveWithoutCroppingText () {\n return this.saveWithoutCroppingButtonlabel || this.$t('image_cropper.save_without_cropping')\n },\n cancelText () {\n return this.cancelButtonLabel || this.$t('image_cropper.cancel')\n },\n submitErrorMsg () {\n return this.submitError && this.submitError instanceof Error ? this.submitError.toString() : this.submitError\n }\n },\n methods: {\n destroy () {\n if (this.cropper) {\n this.cropper.destroy()\n }\n this.$refs.input.value = ''\n this.dataUrl = undefined\n this.$emit('close')\n },\n submit (cropping = true) {\n this.submitting = true\n this.avatarUploadError = null\n this.submitHandler(cropping && this.cropper, this.file)\n .then(() => this.destroy())\n .catch((err) => {\n this.submitError = err\n })\n .finally(() => {\n this.submitting = false\n })\n },\n pickImage () {\n this.$refs.input.click()\n },\n createCropper () {\n this.cropper = new Cropper(this.$refs.img, this.cropperOptions)\n },\n getTriggerDOM () {\n return typeof this.trigger === 'object' ? this.trigger : document.querySelector(this.trigger)\n },\n readFile () {\n const fileInput = this.$refs.input\n if (fileInput.files != null && fileInput.files[0] != null) {\n this.file = fileInput.files[0]\n let reader = new window.FileReader()\n reader.onload = (e) => {\n this.dataUrl = e.target.result\n this.$emit('open')\n }\n reader.readAsDataURL(this.file)\n this.$emit('changed', this.file, reader)\n }\n },\n clearError () {\n this.submitError = null\n }\n },\n mounted () {\n // listen for click event on trigger\n const trigger = this.getTriggerDOM()\n if (!trigger) {\n this.$emit('error', 'No image make trigger found.', 'user')\n } else {\n trigger.addEventListener('click', this.pickImage)\n }\n // listen for input file changes\n const fileInput = this.$refs.input\n fileInput.addEventListener('change', this.readFile)\n },\n beforeDestroy: function () {\n // remove the event listeners\n const trigger = this.getTriggerDOM()\n if (trigger) {\n trigger.removeEventListener('click', this.pickImage)\n }\n const fileInput = this.$refs.input\n fileInput.removeEventListener('change', this.readFile)\n }\n}\n\nexport default ImageCropper\n","import BasicUserCard from '../basic_user_card/basic_user_card.vue'\n\nconst BlockCard = {\n props: ['userId'],\n data () {\n return {\n progress: false\n }\n },\n computed: {\n user () {\n return this.$store.getters.findUser(this.userId)\n },\n blocked () {\n return this.user.statusnet_blocking\n }\n },\n components: {\n BasicUserCard\n },\n methods: {\n unblockUser () {\n this.progress = true\n this.$store.dispatch('unblockUser', this.user.id).then(() => {\n this.progress = false\n })\n },\n blockUser () {\n this.progress = true\n this.$store.dispatch('blockUser', this.user.id).then(() => {\n this.progress = false\n })\n }\n }\n}\n\nexport default BlockCard\n","import BasicUserCard from '../basic_user_card/basic_user_card.vue'\n\nconst MuteCard = {\n props: ['userId'],\n data () {\n return {\n progress: false\n }\n },\n computed: {\n user () {\n return this.$store.getters.findUser(this.userId)\n },\n muted () {\n return this.user.muted\n }\n },\n components: {\n BasicUserCard\n },\n methods: {\n unmuteUser () {\n this.progress = true\n this.$store.dispatch('unmuteUser', this.user.id).then(() => {\n this.progress = false\n })\n },\n muteUser () {\n this.progress = true\n this.$store.dispatch('muteUser', this.user.id).then(() => {\n this.progress = false\n })\n }\n }\n}\n\nexport default MuteCard\n","import List from '../list/list.vue'\nimport Checkbox from '../checkbox/checkbox.vue'\n\nconst SelectableList = {\n components: {\n List,\n Checkbox\n },\n props: {\n items: {\n type: Array,\n default: () => []\n },\n getKey: {\n type: Function,\n default: item => item.id\n }\n },\n data () {\n return {\n selected: []\n }\n },\n computed: {\n allKeys () {\n return this.items.map(this.getKey)\n },\n filteredSelected () {\n return this.allKeys.filter(key => this.selected.indexOf(key) !== -1)\n },\n allSelected () {\n return this.filteredSelected.length === this.items.length\n },\n noneSelected () {\n return this.filteredSelected.length === 0\n },\n someSelected () {\n return !this.allSelected && !this.noneSelected\n }\n },\n methods: {\n isSelected (item) {\n return this.filteredSelected.indexOf(this.getKey(item)) !== -1\n },\n toggle (checked, item) {\n const key = this.getKey(item)\n const oldChecked = this.isSelected(key)\n if (checked !== oldChecked) {\n if (checked) {\n this.selected.push(key)\n } else {\n this.selected.splice(this.selected.indexOf(key), 1)\n }\n }\n },\n toggleAll (value) {\n if (value) {\n this.selected = this.allKeys.slice(0)\n } else {\n this.selected = []\n }\n }\n }\n}\n\nexport default SelectableList\n","<template>\n <label class=\"checkbox\">\n <input type=\"checkbox\" :checked=\"checked\" @change=\"$emit('change', $event.target.checked)\" :indeterminate.prop=\"indeterminate\">\n <i class=\"checkbox-indicator\" />\n <span v-if=\"!!$slots.default\"><slot></slot></span>\n </label>\n</template>\n\n<script>\nexport default {\n model: {\n prop: 'checked',\n event: 'change'\n },\n props: ['checked', 'indeterminate']\n}\n</script>\n\n<style lang=\"scss\">\n@import '../../_variables.scss';\n\n.checkbox {\n position: relative;\n display: inline-block;\n padding-left: 1.2em;\n min-height: 1.2em;\n\n &-indicator::before {\n position: absolute;\n left: 0;\n top: 0;\n display: block;\n content: '✔';\n transition: color 200ms;\n width: 1.1em;\n height: 1.1em;\n border-radius: $fallback--checkboxRadius;\n border-radius: var(--checkboxRadius, $fallback--checkboxRadius);\n box-shadow: 0px 0px 2px black inset;\n box-shadow: var(--inputShadow);\n background-color: $fallback--fg;\n background-color: var(--input, $fallback--fg);\n vertical-align: top;\n text-align: center;\n line-height: 1.1em;\n font-size: 1.1em;\n color: transparent;\n overflow: hidden;\n box-sizing: border-box;\n }\n\n input[type=checkbox] {\n display: none;\n\n &:checked + .checkbox-indicator::before {\n color: $fallback--text;\n color: var(--text, $fallback--text);\n }\n\n &:indeterminate + .checkbox-indicator::before {\n content: '';\n color: $fallback--text;\n color: var(--text, $fallback--text);\n }\n\n &:disabled + .checkbox-indicator::before {\n opacity: .5;\n }\n }\n\n & > span {\n margin-left: .5em;\n }\n}\n</style>\n","<template>\n <button :disabled=\"progress || disabled\" @click=\"onClick\">\n <template v-if=\"progress\">\n <slot name=\"progress\" />\n </template>\n <template v-else>\n <slot />\n </template>\n </button>\n</template>\n\n<script>\nexport default {\n props: {\n disabled: {\n type: Boolean\n },\n click: { // click event handler. Must return a promise\n type: Function,\n default: () => Promise.resolve()\n }\n },\n data () {\n return {\n progress: false\n }\n },\n methods: {\n onClick () {\n this.progress = true\n this.click().then(() => { this.progress = false })\n }\n }\n}\n</script>\n","const debounceMilliseconds = 500\n\nexport default {\n props: {\n query: { // function to query results and return a promise\n type: Function,\n required: true\n },\n filter: { // function to filter results in real time\n type: Function\n },\n placeholder: {\n type: String,\n default: 'Search...'\n }\n },\n data () {\n return {\n term: '',\n timeout: null,\n results: [],\n resultsVisible: false\n }\n },\n computed: {\n filtered () {\n return this.filter ? this.filter(this.results) : this.results\n }\n },\n watch: {\n term (val) {\n this.fetchResults(val)\n }\n },\n methods: {\n fetchResults (term) {\n clearTimeout(this.timeout)\n this.timeout = setTimeout(() => {\n this.results = []\n if (term) {\n this.query(term).then((results) => { this.results = results })\n }\n }, debounceMilliseconds)\n },\n onInputClick () {\n this.resultsVisible = true\n },\n onClickOutside () {\n this.resultsVisible = false\n }\n }\n}\n","const Importer = {\n props: {\n submitHandler: {\n type: Function,\n required: true\n },\n submitButtonLabel: {\n type: String,\n default () {\n return this.$t('importer.submit')\n }\n },\n successMessage: {\n type: String,\n default () {\n return this.$t('importer.success')\n }\n },\n errorMessage: {\n type: String,\n default () {\n return this.$t('importer.error')\n }\n }\n },\n data () {\n return {\n file: null,\n error: false,\n success: false,\n submitting: false\n }\n },\n methods: {\n change () {\n this.file = this.$refs.input.files[0]\n },\n submit () {\n this.dismiss()\n this.submitting = true\n this.submitHandler(this.file)\n .then(() => { this.success = true })\n .catch(() => { this.error = true })\n .finally(() => { this.submitting = false })\n },\n dismiss () {\n this.success = false\n this.error = false\n }\n }\n}\n\nexport default Importer\n","const Exporter = {\n props: {\n getContent: {\n type: Function,\n required: true\n },\n filename: {\n type: String,\n default: 'export.csv'\n },\n exportButtonLabel: {\n type: String,\n default () {\n return this.$t('exporter.export')\n }\n },\n processingMessage: {\n type: String,\n default () {\n return this.$t('exporter.processing')\n }\n }\n },\n data () {\n return {\n processing: false\n }\n },\n methods: {\n process () {\n this.processing = true\n this.getContent()\n .then((content) => {\n const fileToDownload = document.createElement('a')\n fileToDownload.setAttribute('href', 'data:text/plain;charset=utf-8,' + encodeURIComponent(content))\n fileToDownload.setAttribute('download', this.filename)\n fileToDownload.style.display = 'none'\n document.body.appendChild(fileToDownload)\n fileToDownload.click()\n document.body.removeChild(fileToDownload)\n // Add delay before hiding processing state since browser takes some time to handle file download\n setTimeout(() => { this.processing = false }, 2000)\n })\n }\n }\n}\n\nexport default Exporter\n","import RecoveryCodes from './mfa_backup_codes.vue'\nimport TOTP from './mfa_totp.vue'\nimport Confirm from './confirm.vue'\nimport VueQrcode from '@chenfengyuan/vue-qrcode'\nimport { mapState } from 'vuex'\n\nconst Mfa = {\n data: () => ({\n settings: { // current settings of MFA\n available: false,\n enabled: false,\n totp: false\n },\n setupState: { // setup mfa\n state: '', // state of setup. '' -> 'getBackupCodes' -> 'setupOTP' -> 'complete'\n setupOTPState: '' // state of setup otp. '' -> 'prepare' -> 'confirm' -> 'complete'\n },\n backupCodes: {\n getNewCodes: false,\n inProgress: false, // progress of fetch codes\n codes: []\n },\n otpSettings: { // pre-setup setting of OTP. secret key, qrcode url.\n provisioning_uri: '',\n key: ''\n },\n currentPassword: null,\n otpConfirmToken: null,\n error: null,\n readyInit: false\n }),\n components: {\n 'recovery-codes': RecoveryCodes,\n 'totp-item': TOTP,\n 'qrcode': VueQrcode,\n 'confirm': Confirm\n },\n computed: {\n canSetupOTP () {\n return (\n (this.setupInProgress && this.backupCodesPrepared) ||\n this.settings.enabled\n ) && !this.settings.totp && !this.setupOTPInProgress\n },\n setupInProgress () {\n return this.setupState.state !== '' && this.setupState.state !== 'complete'\n },\n setupOTPInProgress () {\n return this.setupState.state === 'setupOTP' && !this.completedOTP\n },\n prepareOTP () {\n return this.setupState.setupOTPState === 'prepare'\n },\n confirmOTP () {\n return this.setupState.setupOTPState === 'confirm'\n },\n completedOTP () {\n return this.setupState.setupOTPState === 'completed'\n },\n backupCodesPrepared () {\n return !this.backupCodes.inProgress && this.backupCodes.codes.length > 0\n },\n confirmNewBackupCodes () {\n return this.backupCodes.getNewCodes\n },\n ...mapState({\n backendInteractor: (state) => state.api.backendInteractor\n })\n },\n\n methods: {\n activateOTP () {\n if (!this.settings.enabled) {\n this.setupState.state = 'getBackupcodes'\n this.fetchBackupCodes()\n }\n },\n fetchBackupCodes () {\n this.backupCodes.inProgress = true\n this.backupCodes.codes = []\n\n return this.backendInteractor.generateMfaBackupCodes()\n .then((res) => {\n this.backupCodes.codes = res.codes\n this.backupCodes.inProgress = false\n })\n },\n getBackupCodes () { // get a new backup codes\n this.backupCodes.getNewCodes = true\n },\n confirmBackupCodes () { // confirm getting new backup codes\n this.fetchBackupCodes().then((res) => {\n this.backupCodes.getNewCodes = false\n })\n },\n cancelBackupCodes () { // cancel confirm form of new backup codes\n this.backupCodes.getNewCodes = false\n },\n\n // Setup OTP\n setupOTP () { // prepare setup OTP\n this.setupState.state = 'setupOTP'\n this.setupState.setupOTPState = 'prepare'\n this.backendInteractor.mfaSetupOTP()\n .then((res) => {\n this.otpSettings = res\n this.setupState.setupOTPState = 'confirm'\n })\n },\n doConfirmOTP () { // handler confirm enable OTP\n this.error = null\n this.backendInteractor.mfaConfirmOTP({\n token: this.otpConfirmToken,\n password: this.currentPassword\n })\n .then((res) => {\n if (res.error) {\n this.error = res.error\n return\n }\n this.completeSetup()\n })\n },\n\n completeSetup () {\n this.setupState.setupOTPState = 'complete'\n this.setupState.state = 'complete'\n this.currentPassword = null\n this.error = null\n this.fetchSettings()\n },\n cancelSetup () { // cancel setup\n this.setupState.setupOTPState = ''\n this.setupState.state = ''\n this.currentPassword = null\n this.error = null\n },\n // end Setup OTP\n\n // fetch settings from server\n async fetchSettings () {\n let result = await this.backendInteractor.fetchSettingsMFA()\n if (result.error) return\n this.settings = result.settings\n this.settings.available = true\n return result\n }\n },\n mounted () {\n this.fetchSettings().then(() => {\n this.readyInit = true\n })\n }\n}\nexport default Mfa\n","export default {\n props: {\n backupCodes: {\n type: Object,\n default: () => ({\n inProgress: false,\n codes: []\n })\n }\n },\n data: () => ({}),\n computed: {\n inProgress () { return this.backupCodes.inProgress },\n ready () { return this.backupCodes.codes.length > 0 },\n displayTitle () { return this.inProgress || this.ready }\n }\n}\n","import Confirm from './confirm.vue'\nimport { mapState } from 'vuex'\n\nexport default {\n props: ['settings'],\n data: () => ({\n error: false,\n currentPassword: '',\n deactivate: false,\n inProgress: false // progress peform request to disable otp method\n }),\n components: {\n 'confirm': Confirm\n },\n computed: {\n isActivated () {\n return this.settings.totp\n },\n ...mapState({\n backendInteractor: (state) => state.api.backendInteractor\n })\n },\n methods: {\n doActivate () {\n this.$emit('activate')\n },\n cancelDeactivate () { this.deactivate = false },\n doDeactivate () {\n this.error = null\n this.deactivate = true\n },\n confirmDeactivate () { // confirm deactivate TOTP method\n this.error = null\n this.inProgress = true\n this.backendInteractor.mfaDisableOTP({\n password: this.currentPassword\n })\n .then((res) => {\n this.inProgress = false\n if (res.error) {\n this.error = res.error\n return\n }\n this.deactivate = false\n this.$emit('deactivate')\n })\n }\n }\n}\n","const Confirm = {\n props: ['disabled'],\n data: () => ({}),\n methods: {\n confirm () { this.$emit('confirm') },\n cancel () { this.$emit('cancel') }\n }\n}\nexport default Confirm\n","import FollowRequestCard from '../follow_request_card/follow_request_card.vue'\n\nconst FollowRequests = {\n components: {\n FollowRequestCard\n },\n computed: {\n requests () {\n return this.$store.state.api.followRequests\n }\n }\n}\n\nexport default FollowRequests\n","import BasicUserCard from '../basic_user_card/basic_user_card.vue'\n\nconst FollowRequestCard = {\n props: ['user'],\n components: {\n BasicUserCard\n },\n methods: {\n approveUser () {\n this.$store.state.api.backendInteractor.approveUser(this.user.id)\n this.$store.dispatch('removeFollowRequest', this.user)\n },\n denyUser () {\n this.$store.state.api.backendInteractor.denyUser(this.user.id)\n this.$store.dispatch('removeFollowRequest', this.user)\n }\n }\n}\n\nexport default FollowRequestCard\n","import oauth from '../../services/new_api/oauth.js'\n\nconst oac = {\n props: ['code'],\n mounted () {\n if (this.code) {\n const { clientId, clientSecret } = this.$store.state.oauth\n\n oauth.getToken({\n clientId,\n clientSecret,\n instance: this.$store.state.instance.server,\n code: this.code\n }).then((result) => {\n this.$store.commit('setToken', result.access_token)\n this.$store.dispatch('loginUser', result.access_token)\n this.$router.push({ name: 'friends' })\n })\n }\n }\n}\n\nexport default oac\n","import FollowCard from '../follow_card/follow_card.vue'\nimport map from 'lodash/map'\n\nconst userSearch = {\n components: {\n FollowCard\n },\n props: [\n 'query'\n ],\n data () {\n return {\n username: '',\n userIds: [],\n loading: false\n }\n },\n computed: {\n users () {\n return this.userIds.map(userId => this.$store.getters.findUser(userId))\n }\n },\n mounted () {\n this.search(this.query)\n },\n watch: {\n query (newV) {\n this.search(newV)\n }\n },\n methods: {\n newQuery (query) {\n this.$router.push({ name: 'user-search', query: { query } })\n this.$refs.userSearchInput.focus()\n },\n search (query) {\n if (!query) {\n this.users = []\n return\n }\n this.loading = true\n this.$store.dispatch('searchUsers', query)\n .then((res) => {\n this.loading = false\n this.userIds = map(res, 'id')\n })\n }\n }\n}\n\nexport default userSearch\n","import { mapState, mapGetters, mapActions, mapMutations } from 'vuex'\nimport oauthApi from '../../services/new_api/oauth.js'\n\nconst LoginForm = {\n data: () => ({\n user: {},\n error: false\n }),\n computed: {\n isPasswordAuth () { return this.requiredPassword },\n isTokenAuth () { return this.requiredToken },\n ...mapState({\n registrationOpen: state => state.instance.registrationOpen,\n instance: state => state.instance,\n loggingIn: state => state.users.loggingIn,\n oauth: state => state.oauth\n }),\n ...mapGetters(\n 'authFlow', ['requiredPassword', 'requiredToken', 'requiredMFA']\n )\n },\n methods: {\n ...mapMutations('authFlow', ['requireMFA']),\n ...mapActions({ login: 'authFlow/login' }),\n submit () {\n this.isTokenAuth ? this.submitToken() : this.submitPassword()\n },\n submitToken () {\n const { clientId, clientSecret } = this.oauth\n const data = {\n clientId,\n clientSecret,\n instance: this.instance.server,\n commit: this.$store.commit\n }\n\n oauthApi.getOrCreateApp(data)\n .then((app) => { oauthApi.login({ ...app, ...data }) })\n },\n submitPassword () {\n const { clientId } = this.oauth\n const data = {\n clientId,\n oauth: this.oauth,\n instance: this.instance.server,\n commit: this.$store.commit\n }\n this.error = false\n\n oauthApi.getOrCreateApp(data).then((app) => {\n oauthApi.getTokenWithCredentials(\n {\n ...app,\n instance: data.instance,\n username: this.user.username,\n password: this.user.password\n }\n ).then((result) => {\n if (result.error) {\n if (result.error === 'mfa_required') {\n this.requireMFA({app: app, settings: result})\n } else {\n this.error = result.error\n this.focusOnPasswordInput()\n }\n return\n }\n this.login(result).then(() => {\n this.$router.push({name: 'friends'})\n })\n })\n })\n },\n clearError () { this.error = false },\n focusOnPasswordInput () {\n let passwordInput = this.$refs.passwordInput\n passwordInput.focus()\n passwordInput.setSelectionRange(0, passwordInput.value.length)\n }\n }\n}\n\nexport default LoginForm\n","import mfaApi from '../../services/new_api/mfa.js'\nimport { mapState, mapGetters, mapActions, mapMutations } from 'vuex'\n\nexport default {\n data: () => ({\n code: null,\n error: false\n }),\n computed: {\n ...mapGetters({\n authApp: 'authFlow/app',\n authSettings: 'authFlow/settings'\n }),\n ...mapState({ instance: 'instance' })\n },\n methods: {\n ...mapMutations('authFlow', ['requireTOTP', 'abortMFA']),\n ...mapActions({ login: 'authFlow/login' }),\n clearError () { this.error = false },\n submit () {\n const data = {\n app: this.authApp,\n instance: this.instance.server,\n mfaToken: this.authSettings.mfa_token,\n code: this.code\n }\n\n mfaApi.verifyRecoveryCode(data).then((result) => {\n if (result.error) {\n this.error = result.error\n this.code = null\n return\n }\n\n this.login(result).then(() => {\n this.$router.push({name: 'friends'})\n })\n })\n }\n }\n}\n","import mfaApi from '../../services/new_api/mfa.js'\nimport { mapState, mapGetters, mapActions, mapMutations } from 'vuex'\nexport default {\n data: () => ({\n code: null,\n error: false\n }),\n computed: {\n ...mapGetters({\n authApp: 'authFlow/app',\n authSettings: 'authFlow/settings'\n }),\n ...mapState({ instance: 'instance' })\n },\n methods: {\n ...mapMutations('authFlow', ['requireRecovery', 'abortMFA']),\n ...mapActions({ login: 'authFlow/login' }),\n clearError () { this.error = false },\n submit () {\n const data = {\n app: this.authApp,\n instance: this.instance.server,\n mfaToken: this.authSettings.mfa_token,\n code: this.code\n }\n\n mfaApi.verifyOTPCode(data).then((result) => {\n if (result.error) {\n this.error = result.error\n this.code = null\n return\n }\n\n this.login(result).then(() => {\n this.$router.push({name: 'friends'})\n })\n })\n }\n }\n}\n","import generateProfileLink from 'src/services/user_profile_link_generator/user_profile_link_generator'\n\nconst chatPanel = {\n props: [ 'floating' ],\n data () {\n return {\n currentMessage: '',\n channel: null,\n collapsed: true\n }\n },\n computed: {\n messages () {\n return this.$store.state.chat.messages\n }\n },\n methods: {\n submit (message) {\n this.$store.state.chat.channel.push('new_msg', {text: message}, 10000)\n this.currentMessage = ''\n },\n togglePanel () {\n this.collapsed = !this.collapsed\n },\n userProfileLink (user) {\n return generateProfileLink(user.id, user.username, this.$store.state.instance.restrictedNicknames)\n }\n }\n}\n\nexport default chatPanel\n","import apiService from '../../services/api/api.service.js'\nimport FollowCard from '../follow_card/follow_card.vue'\n\nconst WhoToFollow = {\n components: {\n FollowCard\n },\n data () {\n return {\n users: []\n }\n },\n mounted () {\n this.getWhoToFollow()\n },\n methods: {\n showWhoToFollow (reply) {\n reply.forEach((i, index) => {\n const user = {\n id: 0,\n name: i.display_name,\n screen_name: i.acct,\n profile_image_url: i.avatar || '/images/avi.png',\n profile_image_url_original: i.avatar || '/images/avi.png'\n }\n this.users.push(user)\n\n this.$store.state.api.backendInteractor.externalProfile(user.screen_name)\n .then((externalUser) => {\n if (!externalUser.error) {\n this.$store.commit('addNewUsers', [externalUser])\n user.id = externalUser.id\n }\n })\n })\n },\n getWhoToFollow () {\n const credentials = this.$store.state.users.currentUser.credentials\n if (credentials) {\n apiService.suggestions({credentials: credentials})\n .then((reply) => {\n this.showWhoToFollow(reply)\n })\n }\n }\n }\n}\n\nexport default WhoToFollow\n","import InstanceSpecificPanel from '../instance_specific_panel/instance_specific_panel.vue'\nimport FeaturesPanel from '../features_panel/features_panel.vue'\nimport TermsOfServicePanel from '../terms_of_service_panel/terms_of_service_panel.vue'\n\nconst About = {\n components: {\n InstanceSpecificPanel,\n FeaturesPanel,\n TermsOfServicePanel\n },\n computed: {\n showFeaturesPanel () { return this.$store.state.instance.showFeaturesPanel }\n }\n}\n\nexport default About\n","const InstanceSpecificPanel = {\n computed: {\n instanceSpecificPanelContent () {\n return this.$store.state.instance.instanceSpecificPanelContent\n },\n show () {\n return !this.$store.state.config.hideISP\n }\n }\n}\n\nexport default InstanceSpecificPanel\n","const FeaturesPanel = {\n computed: {\n chat: function () {\n return this.$store.state.instance.chatAvailable && (!this.$store.state.chatDisabled)\n },\n gopher: function () { return this.$store.state.instance.gopherAvailable },\n whoToFollow: function () { return this.$store.state.instance.suggestionsEnabled },\n mediaProxy: function () { return this.$store.state.instance.mediaProxyAvailable },\n minimalScopesMode: function () { return this.$store.state.instance.minimalScopesMode },\n textlimit: function () { return this.$store.state.instance.textlimit }\n }\n}\n\nexport default FeaturesPanel\n","const TermsOfServicePanel = {\n computed: {\n content () {\n return this.$store.state.instance.tos\n }\n }\n}\n\nexport default TermsOfServicePanel\n","import UserPanel from './components/user_panel/user_panel.vue'\nimport NavPanel from './components/nav_panel/nav_panel.vue'\nimport Notifications from './components/notifications/notifications.vue'\nimport UserFinder from './components/user_finder/user_finder.vue'\nimport InstanceSpecificPanel from './components/instance_specific_panel/instance_specific_panel.vue'\nimport FeaturesPanel from './components/features_panel/features_panel.vue'\nimport WhoToFollowPanel from './components/who_to_follow_panel/who_to_follow_panel.vue'\nimport ChatPanel from './components/chat_panel/chat_panel.vue'\nimport MediaModal from './components/media_modal/media_modal.vue'\nimport SideDrawer from './components/side_drawer/side_drawer.vue'\nimport MobilePostStatusModal from './components/mobile_post_status_modal/mobile_post_status_modal.vue'\nimport MobileNav from './components/mobile_nav/mobile_nav.vue'\nimport UserReportingModal from './components/user_reporting_modal/user_reporting_modal.vue'\nimport { windowWidth } from './services/window_utils/window_utils'\n\nexport default {\n name: 'app',\n components: {\n UserPanel,\n NavPanel,\n Notifications,\n UserFinder,\n InstanceSpecificPanel,\n FeaturesPanel,\n WhoToFollowPanel,\n ChatPanel,\n MediaModal,\n SideDrawer,\n MobilePostStatusModal,\n MobileNav,\n UserReportingModal\n },\n data: () => ({\n mobileActivePanel: 'timeline',\n finderHidden: true,\n supportsMask: window.CSS && window.CSS.supports && (\n window.CSS.supports('mask-size', 'contain') ||\n window.CSS.supports('-webkit-mask-size', 'contain') ||\n window.CSS.supports('-moz-mask-size', 'contain') ||\n window.CSS.supports('-ms-mask-size', 'contain') ||\n window.CSS.supports('-o-mask-size', 'contain')\n )\n }),\n created () {\n // Load the locale from the storage\n this.$i18n.locale = this.$store.state.config.interfaceLanguage\n window.addEventListener('resize', this.updateMobileState)\n },\n destroyed () {\n window.removeEventListener('resize', this.updateMobileState)\n },\n computed: {\n currentUser () { return this.$store.state.users.currentUser },\n background () {\n return this.currentUser.background_image || this.$store.state.instance.background\n },\n enableMask () { return this.supportsMask && this.$store.state.instance.logoMask },\n logoStyle () {\n return {\n 'visibility': this.enableMask ? 'hidden' : 'visible'\n }\n },\n logoMaskStyle () {\n return this.enableMask ? {\n 'mask-image': `url(${this.$store.state.instance.logo})`\n } : {\n 'background-color': this.enableMask ? '' : 'transparent'\n }\n },\n logoBgStyle () {\n return Object.assign({\n 'margin': `${this.$store.state.instance.logoMargin} 0`,\n opacity: this.finderHidden ? 1 : 0\n }, this.enableMask ? {} : {\n 'background-color': this.enableMask ? '' : 'transparent'\n })\n },\n logo () { return this.$store.state.instance.logo },\n bgStyle () {\n return {\n 'background-image': `url(${this.background})`\n }\n },\n bgAppStyle () {\n return {\n '--body-background-image': `url(${this.background})`\n }\n },\n sitename () { return this.$store.state.instance.name },\n chat () { return this.$store.state.chat.channel.state === 'joined' },\n suggestionsEnabled () { return this.$store.state.instance.suggestionsEnabled },\n showInstanceSpecificPanel () { return this.$store.state.instance.showInstanceSpecificPanel },\n showFeaturesPanel () { return this.$store.state.instance.showFeaturesPanel },\n isMobileLayout () { return this.$store.state.interface.mobileLayout }\n },\n methods: {\n scrollToTop () {\n window.scrollTo(0, 0)\n },\n logout () {\n this.$router.replace('/main/public')\n this.$store.dispatch('logout')\n },\n onFinderToggled (hidden) {\n this.finderHidden = hidden\n },\n updateMobileState () {\n const mobileLayout = windowWidth() <= 800\n const changed = mobileLayout !== this.isMobileLayout\n if (changed) {\n this.$store.dispatch('setMobileLayout', mobileLayout)\n }\n }\n }\n}\n","import AuthForm from '../auth_form/auth_form.js'\nimport PostStatusForm from '../post_status_form/post_status_form.vue'\nimport UserCard from '../user_card/user_card.vue'\nimport { mapState } from 'vuex'\n\nconst UserPanel = {\n computed: {\n signedIn () { return this.user },\n ...mapState({ user: state => state.users.currentUser })\n },\n components: {\n AuthForm,\n PostStatusForm,\n UserCard\n }\n}\n\nexport default UserPanel\n","import followRequestFetcher from '../../services/follow_request_fetcher/follow_request_fetcher.service'\n\nconst NavPanel = {\n created () {\n if (this.currentUser && this.currentUser.locked) {\n const store = this.$store\n const credentials = store.state.users.currentUser.credentials\n\n followRequestFetcher.startFetching({ store, credentials })\n }\n },\n computed: {\n currentUser () {\n return this.$store.state.users.currentUser\n },\n chat () {\n return this.$store.state.chat.channel\n },\n followRequestCount () {\n return this.$store.state.api.followRequests.length\n }\n }\n}\n\nexport default NavPanel\n","const UserFinder = {\n data: () => ({\n username: undefined,\n hidden: true,\n error: false,\n loading: false\n }),\n methods: {\n findUser (username) {\n this.$router.push({ name: 'user-search', query: { query: username } })\n this.$refs.userSearchInput.focus()\n },\n toggleHidden () {\n this.hidden = !this.hidden\n this.$emit('toggled', this.hidden)\n }\n }\n}\n\nexport default UserFinder\n","import apiService from '../../services/api/api.service.js'\nimport generateProfileLink from 'src/services/user_profile_link_generator/user_profile_link_generator'\nimport { shuffle } from 'lodash'\n\nfunction showWhoToFollow (panel, reply) {\n const shuffled = shuffle(reply)\n\n panel.usersToFollow.forEach((toFollow, index) => {\n let user = shuffled[index]\n let img = user.avatar || '/images/avi.png'\n let name = user.acct\n\n toFollow.img = img\n toFollow.name = name\n\n panel.$store.state.api.backendInteractor.externalProfile(name)\n .then((externalUser) => {\n if (!externalUser.error) {\n panel.$store.commit('addNewUsers', [externalUser])\n toFollow.id = externalUser.id\n }\n })\n })\n}\n\nfunction getWhoToFollow (panel) {\n var credentials = panel.$store.state.users.currentUser.credentials\n if (credentials) {\n panel.usersToFollow.forEach(toFollow => {\n toFollow.name = 'Loading...'\n })\n apiService.suggestions({credentials: credentials})\n .then((reply) => {\n showWhoToFollow(panel, reply)\n })\n }\n}\n\nconst WhoToFollowPanel = {\n data: () => ({\n usersToFollow: new Array(3).fill().map(x => (\n {\n img: '/images/avi.png',\n name: '',\n id: 0\n }\n ))\n }),\n computed: {\n user: function () {\n return this.$store.state.users.currentUser.screen_name\n },\n suggestionsEnabled () {\n return this.$store.state.instance.suggestionsEnabled\n }\n },\n methods: {\n userProfileLink (id, name) {\n return generateProfileLink(id, name, this.$store.state.instance.restrictedNicknames)\n }\n },\n watch: {\n user: function (user, oldUser) {\n if (this.suggestionsEnabled) {\n getWhoToFollow(this)\n }\n }\n },\n mounted:\n function () {\n if (this.suggestionsEnabled) {\n getWhoToFollow(this)\n }\n }\n}\n\nexport default WhoToFollowPanel\n","import StillImage from '../still-image/still-image.vue'\nimport VideoAttachment from '../video_attachment/video_attachment.vue'\nimport fileTypeService from '../../services/file_type/file_type.service.js'\n\nconst MediaModal = {\n components: {\n StillImage,\n VideoAttachment\n },\n computed: {\n showing () {\n return this.$store.state.mediaViewer.activated\n },\n media () {\n return this.$store.state.mediaViewer.media\n },\n currentIndex () {\n return this.$store.state.mediaViewer.currentIndex\n },\n currentMedia () {\n return this.media[this.currentIndex]\n },\n canNavigate () {\n return this.media.length > 1\n },\n type () {\n return this.currentMedia ? fileTypeService.fileType(this.currentMedia.mimetype) : null\n }\n },\n methods: {\n hide () {\n this.$store.dispatch('closeMediaViewer')\n },\n goPrev () {\n if (this.canNavigate) {\n const prevIndex = this.currentIndex === 0 ? this.media.length - 1 : (this.currentIndex - 1)\n this.$store.dispatch('setCurrent', this.media[prevIndex])\n }\n },\n goNext () {\n if (this.canNavigate) {\n const nextIndex = this.currentIndex === this.media.length - 1 ? 0 : (this.currentIndex + 1)\n this.$store.dispatch('setCurrent', this.media[nextIndex])\n }\n },\n handleKeyupEvent (e) {\n if (this.showing && e.keyCode === 27) { // escape\n this.hide()\n }\n },\n handleKeydownEvent (e) {\n if (!this.showing) {\n return\n }\n\n if (e.keyCode === 39) { // arrow right\n this.goNext()\n } else if (e.keyCode === 37) { // arrow left\n this.goPrev()\n }\n }\n },\n mounted () {\n document.addEventListener('keyup', this.handleKeyupEvent)\n document.addEventListener('keydown', this.handleKeydownEvent)\n },\n destroyed () {\n document.removeEventListener('keyup', this.handleKeyupEvent)\n document.removeEventListener('keydown', this.handleKeydownEvent)\n }\n}\n\nexport default MediaModal\n","import UserCard from '../user_card/user_card.vue'\nimport { unseenNotificationsFromStore } from '../../services/notification_utils/notification_utils'\nimport GestureService from '../../services/gesture_service/gesture_service'\n\nconst SideDrawer = {\n props: [ 'logout' ],\n data: () => ({\n closed: true,\n closeGesture: undefined\n }),\n created () {\n this.closeGesture = GestureService.swipeGesture(GestureService.DIRECTION_LEFT, this.toggleDrawer)\n },\n components: { UserCard },\n computed: {\n currentUser () {\n return this.$store.state.users.currentUser\n },\n chat () { return this.$store.state.chat.channel.state === 'joined' },\n unseenNotifications () {\n return unseenNotificationsFromStore(this.$store)\n },\n unseenNotificationsCount () {\n return this.unseenNotifications.length\n },\n suggestionsEnabled () {\n return this.$store.state.instance.suggestionsEnabled\n },\n logo () {\n return this.$store.state.instance.logo\n },\n sitename () {\n return this.$store.state.instance.name\n },\n followRequestCount () {\n return this.$store.state.api.followRequests.length\n }\n },\n methods: {\n toggleDrawer () {\n this.closed = !this.closed\n },\n doLogout () {\n this.logout()\n this.toggleDrawer()\n },\n touchStart (e) {\n GestureService.beginSwipe(e, this.closeGesture)\n },\n touchMove (e) {\n GestureService.updateSwipe(e, this.closeGesture)\n }\n }\n}\n\nexport default SideDrawer\n","import PostStatusForm from '../post_status_form/post_status_form.vue'\nimport { debounce } from 'lodash'\n\nconst MobilePostStatusModal = {\n components: {\n PostStatusForm\n },\n data () {\n return {\n hidden: false,\n postFormOpen: false,\n scrollingDown: false,\n inputActive: false,\n oldScrollPos: 0,\n amountScrolled: 0\n }\n },\n created () {\n if (this.autohideFloatingPostButton) {\n this.activateFloatingPostButtonAutohide()\n }\n window.addEventListener('resize', this.handleOSK)\n },\n destroyed () {\n if (this.autohideFloatingPostButton) {\n this.deactivateFloatingPostButtonAutohide()\n }\n window.removeEventListener('resize', this.handleOSK)\n },\n computed: {\n currentUser () {\n return this.$store.state.users.currentUser\n },\n isHidden () {\n return this.autohideFloatingPostButton && (this.hidden || this.inputActive)\n },\n autohideFloatingPostButton () {\n return !!this.$store.state.config.autohideFloatingPostButton\n }\n },\n watch: {\n autohideFloatingPostButton: function (isEnabled) {\n if (isEnabled) {\n this.activateFloatingPostButtonAutohide()\n } else {\n this.deactivateFloatingPostButtonAutohide()\n }\n }\n },\n methods: {\n activateFloatingPostButtonAutohide () {\n window.addEventListener('scroll', this.handleScrollStart)\n window.addEventListener('scroll', this.handleScrollEnd)\n },\n deactivateFloatingPostButtonAutohide () {\n window.removeEventListener('scroll', this.handleScrollStart)\n window.removeEventListener('scroll', this.handleScrollEnd)\n },\n openPostForm () {\n this.postFormOpen = true\n this.hidden = true\n\n const el = this.$el.querySelector('textarea')\n this.$nextTick(function () {\n el.focus()\n })\n },\n closePostForm () {\n this.postFormOpen = false\n this.hidden = false\n },\n handleOSK () {\n // This is a big hack: we're guessing from changed window sizes if the\n // on-screen keyboard is active or not. This is only really important\n // for phones in portrait mode and it's more important to show the button\n // in normal scenarios on all phones, than it is to hide it when the\n // keyboard is active.\n // Guesswork based on https://www.mydevice.io/#compare-devices\n\n // for example, iphone 4 and android phones from the same time period\n const smallPhone = window.innerWidth < 350\n const smallPhoneKbOpen = smallPhone && window.innerHeight < 345\n\n const biggerPhone = !smallPhone && window.innerWidth < 450\n const biggerPhoneKbOpen = biggerPhone && window.innerHeight < 560\n if (smallPhoneKbOpen || biggerPhoneKbOpen) {\n this.inputActive = true\n } else {\n this.inputActive = false\n }\n },\n handleScrollStart: debounce(function () {\n if (window.scrollY > this.oldScrollPos) {\n this.hidden = true\n } else {\n this.hidden = false\n }\n this.oldScrollPos = window.scrollY\n }, 100, {leading: true, trailing: false}),\n\n handleScrollEnd: debounce(function () {\n this.hidden = false\n this.oldScrollPos = window.scrollY\n }, 100, {leading: false, trailing: true})\n }\n}\n\nexport default MobilePostStatusModal\n","import SideDrawer from '../side_drawer/side_drawer.vue'\nimport Notifications from '../notifications/notifications.vue'\nimport MobilePostStatusModal from '../mobile_post_status_modal/mobile_post_status_modal.vue'\nimport { unseenNotificationsFromStore } from '../../services/notification_utils/notification_utils'\nimport GestureService from '../../services/gesture_service/gesture_service'\n\nconst MobileNav = {\n components: {\n SideDrawer,\n Notifications,\n MobilePostStatusModal\n },\n data: () => ({\n notificationsCloseGesture: undefined,\n notificationsOpen: false\n }),\n created () {\n this.notificationsCloseGesture = GestureService.swipeGesture(\n GestureService.DIRECTION_RIGHT,\n this.closeMobileNotifications,\n 50\n )\n },\n computed: {\n currentUser () {\n return this.$store.state.users.currentUser\n },\n unseenNotifications () {\n return unseenNotificationsFromStore(this.$store)\n },\n unseenNotificationsCount () {\n return this.unseenNotifications.length\n },\n sitename () { return this.$store.state.instance.name }\n },\n methods: {\n toggleMobileSidebar () {\n this.$refs.sideDrawer.toggleDrawer()\n },\n openMobileNotifications () {\n this.notificationsOpen = true\n },\n closeMobileNotifications () {\n if (this.notificationsOpen) {\n // make sure to mark notifs seen only when the notifs were open and not\n // from close-calls.\n this.notificationsOpen = false\n this.markNotificationsAsSeen()\n }\n },\n notificationsTouchStart (e) {\n GestureService.beginSwipe(e, this.notificationsCloseGesture)\n },\n notificationsTouchMove (e) {\n GestureService.updateSwipe(e, this.notificationsCloseGesture)\n },\n scrollToTop () {\n window.scrollTo(0, 0)\n },\n logout () {\n this.$router.replace('/main/public')\n this.$store.dispatch('logout')\n },\n markNotificationsAsSeen () {\n this.$refs.notifications.markAsSeen()\n },\n onScroll ({ target: { scrollTop, clientHeight, scrollHeight } }) {\n if (this.$store.state.config.autoLoad && scrollTop + clientHeight >= scrollHeight) {\n this.$refs.notifications.fetchOlderNotifications()\n }\n }\n },\n watch: {\n $route () {\n // handles closing notificaitons when you press any router-link on the\n // notifications.\n this.closeMobileNotifications()\n }\n }\n}\n\nexport default MobileNav\n","\nimport Status from '../status/status.vue'\nimport List from '../list/list.vue'\nimport Checkbox from '../checkbox/checkbox.vue'\n\nconst UserReportingModal = {\n components: {\n Status,\n List,\n Checkbox\n },\n data () {\n return {\n comment: '',\n forward: false,\n statusIdsToReport: [],\n processing: false,\n error: false\n }\n },\n computed: {\n isLoggedIn () {\n return !!this.$store.state.users.currentUser\n },\n isOpen () {\n return this.isLoggedIn && this.$store.state.reports.modalActivated\n },\n userId () {\n return this.$store.state.reports.userId\n },\n user () {\n return this.$store.getters.findUser(this.userId)\n },\n remoteInstance () {\n return !this.user.is_local && this.user.screen_name.substr(this.user.screen_name.indexOf('@') + 1)\n },\n statuses () {\n return this.$store.state.reports.statuses\n }\n },\n watch: {\n userId: 'resetState'\n },\n methods: {\n resetState () {\n // Reset state\n this.comment = ''\n this.forward = false\n this.statusIdsToReport = []\n this.processing = false\n this.error = false\n },\n closeModal () {\n this.$store.dispatch('closeUserReportingModal')\n },\n reportUser () {\n this.processing = true\n this.error = false\n const params = {\n userId: this.userId,\n comment: this.comment,\n forward: this.forward,\n statusIds: this.statusIdsToReport\n }\n this.$store.state.api.backendInteractor.reportUser(params)\n .then(() => {\n this.processing = false\n this.resetState()\n this.closeModal()\n })\n .catch(() => {\n this.processing = false\n this.error = true\n })\n },\n clearError () {\n this.error = false\n },\n isChecked (statusId) {\n return this.statusIdsToReport.indexOf(statusId) !== -1\n },\n toggleStatus (checked, statusId) {\n if (checked === this.isChecked(statusId)) {\n return\n }\n\n if (checked) {\n this.statusIdsToReport.push(statusId)\n } else {\n this.statusIdsToReport.splice(this.statusIdsToReport.indexOf(statusId), 1)\n }\n },\n resize (e) {\n const target = e.target || e\n if (!(target instanceof window.Element)) { return }\n // Auto is needed to make textbox shrink when removing lines\n target.style.height = 'auto'\n target.style.height = `${target.scrollHeight}px`\n if (target.value === '') {\n target.style.height = null\n }\n }\n }\n}\n\nexport default UserReportingModal\n","import apiService from '../api/api.service.js'\nimport timelineFetcherService from '../timeline_fetcher/timeline_fetcher.service.js'\nimport notificationsFetcher from '../notifications_fetcher/notifications_fetcher.service.js'\n\nconst backendInteractorService = credentials => {\n const fetchStatus = ({ id }) => {\n return apiService.fetchStatus({ id, credentials })\n }\n\n const fetchConversation = ({ id }) => {\n return apiService.fetchConversation({ id, credentials })\n }\n\n const fetchFriends = ({ id, maxId, sinceId, limit }) => {\n return apiService.fetchFriends({ id, maxId, sinceId, limit, credentials })\n }\n\n const exportFriends = ({ id }) => {\n return apiService.exportFriends({ id, credentials })\n }\n\n const fetchFollowers = ({ id, maxId, sinceId, limit }) => {\n return apiService.fetchFollowers({ id, maxId, sinceId, limit, credentials })\n }\n\n const fetchUser = ({ id }) => {\n return apiService.fetchUser({ id, credentials })\n }\n\n const fetchUserRelationship = ({ id }) => {\n return apiService.fetchUserRelationship({ id, credentials })\n }\n\n const followUser = (id) => {\n return apiService.followUser({ credentials, id })\n }\n\n const unfollowUser = (id) => {\n return apiService.unfollowUser({ credentials, id })\n }\n\n const blockUser = (id) => {\n return apiService.blockUser({ credentials, id })\n }\n\n const unblockUser = (id) => {\n return apiService.unblockUser({ credentials, id })\n }\n\n const approveUser = (id) => {\n return apiService.approveUser({ credentials, id })\n }\n\n const denyUser = (id) => {\n return apiService.denyUser({ credentials, id })\n }\n\n const startFetchingTimeline = ({ timeline, store, userId = false, tag }) => {\n return timelineFetcherService.startFetching({ timeline, store, credentials, userId, tag })\n }\n\n const startFetchingNotifications = ({ store }) => {\n return notificationsFetcher.startFetching({ store, credentials })\n }\n\n const tagUser = ({ screen_name }, tag) => {\n return apiService.tagUser({ screen_name, tag, credentials })\n }\n\n const untagUser = ({ screen_name }, tag) => {\n return apiService.untagUser({ screen_name, tag, credentials })\n }\n\n const addRight = ({ screen_name }, right) => {\n return apiService.addRight({ screen_name, right, credentials })\n }\n\n const deleteRight = ({ screen_name }, right) => {\n return apiService.deleteRight({ screen_name, right, credentials })\n }\n\n const setActivationStatus = ({ screen_name }, status) => {\n return apiService.setActivationStatus({ screen_name, status, credentials })\n }\n\n const deleteUser = ({ screen_name }) => {\n return apiService.deleteUser({ screen_name, credentials })\n }\n\n const vote = (pollId, choices) => {\n return apiService.vote({ credentials, pollId, choices })\n }\n\n const fetchPoll = (pollId) => {\n return apiService.fetchPoll({ credentials, pollId })\n }\n\n const updateNotificationSettings = ({ settings }) => {\n return apiService.updateNotificationSettings({ credentials, settings })\n }\n\n const fetchMutes = () => apiService.fetchMutes({ credentials })\n const muteUser = (id) => apiService.muteUser({ credentials, id })\n const unmuteUser = (id) => apiService.unmuteUser({ credentials, id })\n const fetchBlocks = () => apiService.fetchBlocks({ credentials })\n const fetchFollowRequests = () => apiService.fetchFollowRequests({ credentials })\n const fetchOAuthTokens = () => apiService.fetchOAuthTokens({ credentials })\n const revokeOAuthToken = (id) => apiService.revokeOAuthToken({ id, credentials })\n const fetchPinnedStatuses = (id) => apiService.fetchPinnedStatuses({ credentials, id })\n const pinOwnStatus = (id) => apiService.pinOwnStatus({ credentials, id })\n const unpinOwnStatus = (id) => apiService.unpinOwnStatus({ credentials, id })\n\n const getCaptcha = () => apiService.getCaptcha()\n const register = (params) => apiService.register({ credentials, params })\n const updateAvatar = ({ avatar }) => apiService.updateAvatar({ credentials, avatar })\n const updateBg = ({ background }) => apiService.updateBg({ credentials, background })\n const updateBanner = ({ banner }) => apiService.updateBanner({ credentials, banner })\n const updateProfile = ({ params }) => apiService.updateProfile({ credentials, params })\n\n const externalProfile = (profileUrl) => apiService.externalProfile({ profileUrl, credentials })\n\n const importBlocks = (file) => apiService.importBlocks({ file, credentials })\n const importFollows = (file) => apiService.importFollows({ file, credentials })\n\n const deleteAccount = ({ password }) => apiService.deleteAccount({ credentials, password })\n const changePassword = ({ password, newPassword, newPasswordConfirmation }) =>\n apiService.changePassword({ credentials, password, newPassword, newPasswordConfirmation })\n\n const fetchSettingsMFA = () => apiService.settingsMFA({ credentials })\n const generateMfaBackupCodes = () => apiService.generateMfaBackupCodes({ credentials })\n const mfaSetupOTP = () => apiService.mfaSetupOTP({ credentials })\n const mfaConfirmOTP = ({ password, token }) => apiService.mfaConfirmOTP({ credentials, password, token })\n const mfaDisableOTP = ({ password }) => apiService.mfaDisableOTP({ credentials, password })\n\n const fetchFavoritedByUsers = (id) => apiService.fetchFavoritedByUsers({ id })\n const fetchRebloggedByUsers = (id) => apiService.fetchRebloggedByUsers({ id })\n const reportUser = (params) => apiService.reportUser({ credentials, ...params })\n\n const favorite = (id) => apiService.favorite({ id, credentials })\n const unfavorite = (id) => apiService.unfavorite({ id, credentials })\n const retweet = (id) => apiService.retweet({ id, credentials })\n const unretweet = (id) => apiService.unretweet({ id, credentials })\n\n const backendInteractorServiceInstance = {\n fetchStatus,\n fetchConversation,\n fetchFriends,\n exportFriends,\n fetchFollowers,\n followUser,\n unfollowUser,\n blockUser,\n unblockUser,\n fetchUser,\n fetchUserRelationship,\n verifyCredentials: apiService.verifyCredentials,\n startFetchingTimeline,\n startFetchingNotifications,\n fetchMutes,\n muteUser,\n unmuteUser,\n fetchBlocks,\n fetchOAuthTokens,\n revokeOAuthToken,\n fetchPinnedStatuses,\n pinOwnStatus,\n unpinOwnStatus,\n tagUser,\n untagUser,\n addRight,\n deleteRight,\n deleteUser,\n setActivationStatus,\n register,\n getCaptcha,\n updateAvatar,\n updateBg,\n updateBanner,\n updateProfile,\n externalProfile,\n importBlocks,\n importFollows,\n deleteAccount,\n changePassword,\n fetchSettingsMFA,\n generateMfaBackupCodes,\n mfaSetupOTP,\n mfaConfirmOTP,\n mfaDisableOTP,\n fetchFollowRequests,\n approveUser,\n denyUser,\n vote,\n fetchPoll,\n fetchFavoritedByUsers,\n fetchRebloggedByUsers,\n reportUser,\n favorite,\n unfavorite,\n retweet,\n unretweet,\n updateNotificationSettings\n }\n\n return backendInteractorServiceInstance\n}\n\nexport default backendInteractorService\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./still-image.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./still-image.js\"\nimport __vue_script__ from \"!!babel-loader!./still-image.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-4ae09a58\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./still-image.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","/* script */\nexport * from \"!!babel-loader!../../../node_modules/vue-loader/lib/selector?type=script&index=0!./timeago.vue\"\nimport __vue_script__ from \"!!babel-loader!../../../node_modules/vue-loader/lib/selector?type=script&index=0!./timeago.vue\"\n/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-96912de0\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./timeago.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./post_status_form.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./post_status_form.js\"\nimport __vue_script__ from \"!!babel-loader!./post_status_form.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-57f92590\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./post_status_form.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./conversation.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./conversation.js\"\nimport __vue_script__ from \"!!babel-loader!./conversation.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-4beb651e\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./conversation.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","import { filter, sortBy } from 'lodash'\n\nexport const notificationsFromStore = store => store.state.statuses.notifications.data\n\nexport const visibleTypes = store => ([\n store.state.config.notificationVisibility.likes && 'like',\n store.state.config.notificationVisibility.mentions && 'mention',\n store.state.config.notificationVisibility.repeats && 'repeat',\n store.state.config.notificationVisibility.follows && 'follow'\n].filter(_ => _))\n\nconst sortById = (a, b) => {\n const seqA = Number(a.id)\n const seqB = Number(b.id)\n const isSeqA = !Number.isNaN(seqA)\n const isSeqB = !Number.isNaN(seqB)\n if (isSeqA && isSeqB) {\n return seqA > seqB ? -1 : 1\n } else if (isSeqA && !isSeqB) {\n return 1\n } else if (!isSeqA && isSeqB) {\n return -1\n } else {\n return a.id > b.id ? -1 : 1\n }\n}\n\nexport const visibleNotificationsFromStore = (store, types) => {\n // map is just to clone the array since sort mutates it and it causes some issues\n let sortedNotifications = notificationsFromStore(store).map(_ => _).sort(sortById)\n sortedNotifications = sortBy(sortedNotifications, 'seen')\n return sortedNotifications.filter(\n (notification) => (types || visibleTypes(store)).includes(notification.type)\n )\n}\n\nexport const unseenNotificationsFromStore = store =>\n filter(visibleNotificationsFromStore(store), ({seen}) => !seen)\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./follow_card.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./follow_card.js\"\nimport __vue_script__ from \"!!babel-loader!./follow_card.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-6b257768\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./follow_card.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./list.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!../../../node_modules/vue-loader/lib/selector?type=script&index=0!./list.vue\"\nimport __vue_script__ from \"!!babel-loader!../../../node_modules/vue-loader/lib/selector?type=script&index=0!./list.vue\"\n/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-4921cfd6\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./list.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","import Vue from 'vue'\n\nimport './tab_switcher.scss'\n\nexport default Vue.component('tab-switcher', {\n name: 'TabSwitcher',\n props: ['renderOnlyFocused', 'onSwitch'],\n data () {\n return {\n active: this.$slots.default.findIndex(_ => _.tag)\n }\n },\n methods: {\n activateTab (index, dataset) {\n return () => {\n if (typeof this.onSwitch === 'function') {\n this.onSwitch.call(null, index, this.$slots.default[index].elm.dataset)\n }\n this.active = index\n }\n }\n },\n beforeUpdate () {\n const currentSlot = this.$slots.default[this.active]\n if (!currentSlot.tag) {\n this.active = this.$slots.default.findIndex(_ => _.tag)\n }\n },\n render (h) {\n const tabs = this.$slots.default\n .map((slot, index) => {\n if (!slot.tag) return\n const classesTab = ['tab']\n const classesWrapper = ['tab-wrapper']\n\n if (index === this.active) {\n classesTab.push('active')\n classesWrapper.push('active')\n }\n\n return (\n <div class={ classesWrapper.join(' ')}>\n <button\n disabled={slot.data.attrs.disabled}\n onClick={this.activateTab(index)}\n class={classesTab.join(' ')}>\n {slot.data.attrs.label}</button>\n </div>\n )\n })\n\n const contents = this.$slots.default.map((slot, index) => {\n if (!slot.tag) return\n const active = index === this.active\n if (this.renderOnlyFocused) {\n return active\n ? <div class=\"active\">{slot}</div>\n : <div class=\"hidden\"></div>\n }\n return <div class={active ? 'active' : 'hidden' }>{slot}</div>\n })\n\n return (\n <div class=\"tab-switcher\">\n <div class=\"tabs\">\n {tabs}\n </div>\n <div class=\"contents\">\n {contents}\n </div>\n </div>\n )\n }\n})\n","import { reduce } from 'lodash'\n\nconst REDIRECT_URI = `${window.location.origin}/oauth-callback`\n\nexport const getOrCreateApp = ({ clientId, clientSecret, instance, commit }) => {\n if (clientId && clientSecret) {\n return Promise.resolve({ clientId, clientSecret })\n }\n\n const url = `${instance}/api/v1/apps`\n const form = new window.FormData()\n\n form.append('client_name', `PleromaFE_${window.___pleromafe_commit_hash}_${(new Date()).toISOString()}`)\n form.append('redirect_uris', REDIRECT_URI)\n form.append('scopes', 'read write follow')\n\n return window.fetch(url, {\n method: 'POST',\n body: form\n })\n .then((data) => data.json())\n .then((app) => ({ clientId: app.client_id, clientSecret: app.client_secret }))\n .then((app) => commit('setClientData', app) || app)\n}\n\nconst login = ({ instance, clientId }) => {\n const data = {\n response_type: 'code',\n client_id: clientId,\n redirect_uri: REDIRECT_URI,\n scope: 'read write follow'\n }\n\n const dataString = reduce(data, (acc, v, k) => {\n const encoded = `${k}=${encodeURIComponent(v)}`\n if (!acc) {\n return encoded\n } else {\n return `${acc}&${encoded}`\n }\n }, false)\n\n // Do the redirect...\n const url = `${instance}/oauth/authorize?${dataString}`\n\n window.location.href = url\n}\n\nconst getTokenWithCredentials = ({ clientId, clientSecret, instance, username, password }) => {\n const url = `${instance}/oauth/token`\n const form = new window.FormData()\n\n form.append('client_id', clientId)\n form.append('client_secret', clientSecret)\n form.append('grant_type', 'password')\n form.append('username', username)\n form.append('password', password)\n\n return window.fetch(url, {\n method: 'POST',\n body: form\n }).then((data) => data.json())\n}\n\nconst getToken = ({ clientId, clientSecret, instance, code }) => {\n const url = `${instance}/oauth/token`\n const form = new window.FormData()\n\n form.append('client_id', clientId)\n form.append('client_secret', clientSecret)\n form.append('grant_type', 'authorization_code')\n form.append('code', code)\n form.append('redirect_uri', `${window.location.origin}/oauth-callback`)\n\n return window.fetch(url, {\n method: 'POST',\n body: form\n })\n .then((data) => data.json())\n}\n\nexport const getClientToken = ({ clientId, clientSecret, instance }) => {\n const url = `${instance}/oauth/token`\n const form = new window.FormData()\n\n form.append('client_id', clientId)\n form.append('client_secret', clientSecret)\n form.append('grant_type', 'client_credentials')\n form.append('redirect_uri', `${window.location.origin}/oauth-callback`)\n\n return window.fetch(url, {\n method: 'POST',\n body: form\n }).then((data) => data.json())\n}\nconst verifyOTPCode = ({app, instance, mfaToken, code}) => {\n const url = `${instance}/oauth/mfa/challenge`\n const form = new window.FormData()\n\n form.append('client_id', app.client_id)\n form.append('client_secret', app.client_secret)\n form.append('mfa_token', mfaToken)\n form.append('code', code)\n form.append('challenge_type', 'totp')\n\n return window.fetch(url, {\n method: 'POST',\n body: form\n }).then((data) => data.json())\n}\n\nconst verifyRecoveryCode = ({app, instance, mfaToken, code}) => {\n const url = `${instance}/oauth/mfa/challenge`\n const form = new window.FormData()\n\n form.append('client_id', app.client_id)\n form.append('client_secret', app.client_secret)\n form.append('mfa_token', mfaToken)\n form.append('code', code)\n form.append('challenge_type', 'recovery')\n\n return window.fetch(url, {\n method: 'POST',\n body: form\n }).then((data) => data.json())\n}\n\nconst oauth = {\n login,\n getToken,\n getTokenWithCredentials,\n getOrCreateApp,\n verifyOTPCode,\n verifyRecoveryCode\n}\n\nexport default oauth\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"still-image\",class:{ animated: _vm.animated }},[(_vm.animated)?_c('canvas',{ref:\"canvas\"}):_vm._e(),_vm._v(\" \"),_c('img',{ref:\"src\",attrs:{\"src\":_vm.src,\"referrerpolicy\":_vm.referrerpolicy},on:{\"load\":_vm.onLoad,\"error\":_vm.onError}})])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('video',{staticClass:\"video\",attrs:{\"src\":_vm.attachment.url,\"loop\":_vm.loopVideo,\"controls\":_vm.controls,\"playsinline\":\"\"},on:{\"loadeddata\":_vm.onVideoDataLoad}})}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {\nvar _obj;\nvar _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.usePlaceHolder)?_c('div',{on:{\"click\":_vm.openModal}},[(_vm.type !== 'html')?_c('a',{staticClass:\"placeholder\",attrs:{\"target\":\"_blank\",\"href\":_vm.attachment.url}},[_vm._v(\"\\n [\"+_vm._s(_vm.nsfw ? \"NSFW/\" : \"\")+_vm._s(_vm.type.toUpperCase())+\"]\\n \")]):_vm._e()]):_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.isEmpty),expression:\"!isEmpty\"}],staticClass:\"attachment\",class:( _obj = {}, _obj[_vm.type] = true, _obj.loading = _vm.loading, _obj['fullwidth'] = _vm.fullwidth, _obj['nsfw-placeholder'] = _vm.hidden, _obj )},[(_vm.hidden)?_c('a',{staticClass:\"image-attachment\",attrs:{\"href\":_vm.attachment.url},on:{\"click\":function($event){$event.preventDefault();return _vm.toggleHidden($event)}}},[_c('img',{key:_vm.nsfwImage,staticClass:\"nsfw\",class:{'small': _vm.isSmall},attrs:{\"src\":_vm.nsfwImage}}),_vm._v(\" \"),(_vm.type === 'video')?_c('i',{staticClass:\"play-icon icon-play-circled\"}):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.nsfw && _vm.hideNsfwLocal && !_vm.hidden)?_c('div',{staticClass:\"hider\"},[_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.toggleHidden($event)}}},[_vm._v(\"Hide\")])]):_vm._e(),_vm._v(\" \"),(_vm.type === 'image' && (!_vm.hidden || _vm.preloadImage))?_c('a',{staticClass:\"image-attachment\",class:{'hidden': _vm.hidden && _vm.preloadImage },attrs:{\"href\":_vm.attachment.url,\"target\":\"_blank\",\"title\":_vm.attachment.description},on:{\"click\":_vm.openModal}},[_c('StillImage',{attrs:{\"referrerpolicy\":_vm.referrerpolicy,\"mimetype\":_vm.attachment.mimetype,\"src\":_vm.attachment.large_thumb_url || _vm.attachment.url}})],1):_vm._e(),_vm._v(\" \"),(_vm.type === 'video' && !_vm.hidden)?_c('a',{staticClass:\"video-container\",class:{'small': _vm.isSmall},attrs:{\"href\":_vm.allowPlay ? undefined : _vm.attachment.url},on:{\"click\":_vm.openModal}},[_c('VideoAttachment',{staticClass:\"video\",attrs:{\"attachment\":_vm.attachment,\"controls\":_vm.allowPlay}}),_vm._v(\" \"),(!_vm.allowPlay)?_c('i',{staticClass:\"play-icon icon-play-circled\"}):_vm._e()],1):_vm._e(),_vm._v(\" \"),(_vm.type === 'audio')?_c('audio',{attrs:{\"src\":_vm.attachment.url,\"controls\":\"\"}}):_vm._e(),_vm._v(\" \"),(_vm.type === 'html' && _vm.attachment.oembed)?_c('div',{staticClass:\"oembed\",on:{\"click\":function($event){$event.preventDefault();return _vm.linkClicked($event)}}},[(_vm.attachment.thumb_url)?_c('div',{staticClass:\"image\"},[_c('img',{attrs:{\"src\":_vm.attachment.thumb_url}})]):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"text\"},[_c('h1',[_c('a',{attrs:{\"href\":_vm.attachment.url}},[_vm._v(_vm._s(_vm.attachment.oembed.title))])]),_vm._v(\" \"),_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.attachment.oembed.oembedHTML)}})])]):_vm._e()])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.loggedIn)?_c('div',[_c('i',{staticClass:\"button-icon favorite-button fav-active\",class:_vm.classes,attrs:{\"title\":_vm.$t('tool_tip.favorite')},on:{\"click\":function($event){$event.preventDefault();_vm.favorite()}}}),_vm._v(\" \"),(!_vm.hidePostStatsLocal && _vm.status.fave_num > 0)?_c('span',[_vm._v(_vm._s(_vm.status.fave_num))]):_vm._e()]):_c('div',[_c('i',{staticClass:\"button-icon favorite-button\",class:_vm.classes,attrs:{\"title\":_vm.$t('tool_tip.favorite')}}),_vm._v(\" \"),(!_vm.hidePostStatsLocal && _vm.status.fave_num > 0)?_c('span',[_vm._v(_vm._s(_vm.status.fave_num))]):_vm._e()])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.loggedIn)?_c('div',[(_vm.visibility !== 'private' && _vm.visibility !== 'direct')?[_c('i',{staticClass:\"button-icon retweet-button icon-retweet rt-active\",class:_vm.classes,attrs:{\"title\":_vm.$t('tool_tip.repeat')},on:{\"click\":function($event){$event.preventDefault();_vm.retweet()}}}),_vm._v(\" \"),(!_vm.hidePostStatsLocal && _vm.status.repeat_num > 0)?_c('span',[_vm._v(_vm._s(_vm.status.repeat_num))]):_vm._e()]:[_c('i',{staticClass:\"button-icon icon-lock\",class:_vm.classes,attrs:{\"title\":_vm.$t('timeline.no_retweet_hint')}})]],2):(!_vm.loggedIn)?_c('div',[_c('i',{staticClass:\"button-icon icon-retweet\",class:_vm.classes,attrs:{\"title\":_vm.$t('tool_tip.repeat')}}),_vm._v(\" \"),(!_vm.hidePostStatsLocal && _vm.status.repeat_num > 0)?_c('span',[_vm._v(_vm._s(_vm.status.repeat_num))]):_vm._e()]):_vm._e()}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('time',{attrs:{\"datetime\":_vm.time,\"title\":_vm.localeDateString}},[_vm._v(\"\\n \"+_vm._s(_vm.$t(_vm.relativeTime.key, [_vm.relativeTime.num]))+\"\\n\")])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"poll\",class:_vm.containerClass},[_vm._l((_vm.options),function(option,index){return _c('div',{key:index,staticClass:\"poll-option\"},[(_vm.showResults)?_c('div',{staticClass:\"option-result\",attrs:{\"title\":_vm.resultTitle(option)}},[_c('div',{staticClass:\"option-result-label\"},[_c('span',{staticClass:\"result-percentage\"},[_vm._v(\"\\n \"+_vm._s(_vm.percentageForOption(option.votes_count))+\"%\\n \")]),_vm._v(\" \"),_c('span',[_vm._v(_vm._s(option.title))])]),_vm._v(\" \"),_c('div',{staticClass:\"result-fill\",style:({ 'width': ((_vm.percentageForOption(option.votes_count)) + \"%\") })})]):_c('div',{on:{\"click\":function($event){_vm.activateOption(index)}}},[(_vm.poll.multiple)?_c('input',{attrs:{\"type\":\"checkbox\",\"disabled\":_vm.loading},domProps:{\"value\":index}}):_c('input',{attrs:{\"type\":\"radio\",\"disabled\":_vm.loading},domProps:{\"value\":index}}),_vm._v(\" \"),_c('label',{staticClass:\"option-vote\"},[_c('div',[_vm._v(_vm._s(option.title))])])])])}),_vm._v(\" \"),_c('div',{staticClass:\"footer faint\"},[(!_vm.showResults)?_c('button',{staticClass:\"btn btn-default poll-vote-button\",attrs:{\"type\":\"button\",\"disabled\":_vm.isDisabled},on:{\"click\":_vm.vote}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('polls.vote'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"total\"},[_vm._v(\"\\n \"+_vm._s(_vm.totalVotesCount)+\" \"+_vm._s(_vm.$t(\"polls.votes\"))+\" · \\n \")]),_vm._v(\" \"),_c('i18n',{attrs:{\"path\":_vm.expired ? 'polls.expired' : 'polls.expires_in'}},[_c('Timeago',{attrs:{\"time\":this.expiresAt,\"auto-update\":60,\"now-threshold\":0}})],1)],1)],2)}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.enabled && _vm.showPopper)?_c('Popper',{attrs:{\"trigger\":\"click\",\"append-to-body\":\"\",\"options\":{\n placement: 'top',\n modifiers: {\n arrow: { enabled: true },\n offset: { offset: '0, 5px' },\n }\n }},on:{\"hide\":function($event){_vm.showDropDown = false}}},[_c('div',{staticClass:\"popper-wrapper\"},[_c('div',{staticClass:\"dropdown-menu\"},[(!_vm.status.pinned && _vm.canPin)?_c('button',{staticClass:\"dropdown-item dropdown-item-icon\",on:{\"click\":function($event){$event.preventDefault();return _vm.pinStatus($event)}}},[_c('i',{staticClass:\"icon-pin\"}),_c('span',[_vm._v(_vm._s(_vm.$t(\"status.pin\")))])]):_vm._e(),_vm._v(\" \"),(_vm.status.pinned && _vm.canPin)?_c('button',{staticClass:\"dropdown-item dropdown-item-icon\",on:{\"click\":function($event){$event.preventDefault();return _vm.unpinStatus($event)}}},[_c('i',{staticClass:\"icon-pin\"}),_c('span',[_vm._v(_vm._s(_vm.$t(\"status.unpin\")))])]):_vm._e(),_vm._v(\" \"),(_vm.canDelete)?_c('button',{staticClass:\"dropdown-item dropdown-item-icon\",on:{\"click\":function($event){$event.preventDefault();return _vm.deleteStatus($event)}}},[_c('i',{staticClass:\"icon-cancel\"}),_c('span',[_vm._v(_vm._s(_vm.$t(\"status.delete\")))])]):_vm._e()])]),_vm._v(\" \"),_c('div',{staticClass:\"button-icon\",attrs:{\"slot\":\"reference\"},on:{\"click\":_vm.toggleMenu},slot:\"reference\"},[_c('i',{staticClass:\"icon-ellipsis\",class:{'icon-clicked': _vm.showDropDown}})])]):_vm._e()}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"media-upload\",on:{\"drop\":[function($event){$event.preventDefault();},_vm.fileDrop],\"dragover\":function($event){$event.preventDefault();return _vm.fileDrag($event)}}},[_c('label',{staticClass:\"btn btn-default\",attrs:{\"title\":_vm.$t('tool_tip.media_upload')}},[(_vm.uploading)?_c('i',{staticClass:\"icon-spin4 animate-spin\"}):_vm._e(),_vm._v(\" \"),(!_vm.uploading)?_c('i',{staticClass:\"icon-upload\"}):_vm._e(),_vm._v(\" \"),(_vm.uploadReady)?_c('input',{staticStyle:{\"position\":\"fixed\",\"top\":\"-100em\"},attrs:{\"type\":\"file\",\"multiple\":\"true\"},on:{\"change\":_vm.change}}):_vm._e()])])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.showNothing)?_c('div',{staticClass:\"scope-selector\"},[(_vm.showDirect)?_c('i',{staticClass:\"icon-mail-alt\",class:_vm.css.direct,attrs:{\"title\":_vm.$t('post_status.scope.direct')},on:{\"click\":function($event){_vm.changeVis('direct')}}}):_vm._e(),_vm._v(\" \"),(_vm.showPrivate)?_c('i',{staticClass:\"icon-lock\",class:_vm.css.private,attrs:{\"title\":_vm.$t('post_status.scope.private')},on:{\"click\":function($event){_vm.changeVis('private')}}}):_vm._e(),_vm._v(\" \"),(_vm.showUnlisted)?_c('i',{staticClass:\"icon-lock-open-alt\",class:_vm.css.unlisted,attrs:{\"title\":_vm.$t('post_status.scope.unlisted')},on:{\"click\":function($event){_vm.changeVis('unlisted')}}}):_vm._e(),_vm._v(\" \"),(_vm.showPublic)?_c('i',{staticClass:\"icon-globe\",class:_vm.css.public,attrs:{\"title\":_vm.$t('post_status.scope.public')},on:{\"click\":function($event){_vm.changeVis('public')}}}):_vm._e()]):_vm._e()}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"emoji-input\"},[_vm._t(\"default\"),_vm._v(\" \"),_c('div',{ref:\"panel\",staticClass:\"autocomplete-panel\",class:{ hide: !_vm.showPopup }},[_c('div',{staticClass:\"autocomplete-panel-body\"},_vm._l((_vm.suggestions),function(suggestion,index){return _c('div',{key:index,staticClass:\"autocomplete-item\",class:{ highlighted: suggestion.highlighted },on:{\"click\":function($event){$event.stopPropagation();$event.preventDefault();_vm.onClick($event, suggestion)}}},[_c('span',{staticClass:\"image\"},[(suggestion.img)?_c('img',{attrs:{\"src\":suggestion.img}}):_c('span',[_vm._v(_vm._s(suggestion.replacement))])]),_vm._v(\" \"),_c('div',{staticClass:\"label\"},[_c('span',{staticClass:\"displayText\"},[_vm._v(_vm._s(suggestion.displayText))]),_vm._v(\" \"),_c('span',{staticClass:\"detailText\"},[_vm._v(_vm._s(suggestion.detailText))])])])}),0)])],2)}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.visible)?_c('div',{staticClass:\"poll-form\"},[_vm._l((_vm.options),function(option,index){return _c('div',{key:index,staticClass:\"poll-option\"},[_c('div',{staticClass:\"input-container\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.options[index]),expression:\"options[index]\"}],staticClass:\"poll-option-input\",attrs:{\"type\":\"text\",\"placeholder\":_vm.$t('polls.option'),\"maxlength\":_vm.maxLength,\"id\":(\"poll-\" + index)},domProps:{\"value\":(_vm.options[index])},on:{\"change\":_vm.updatePollToParent,\"keydown\":function($event){if(!('button' in $event)&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\")){ return null; }$event.stopPropagation();$event.preventDefault();_vm.nextOption(index)},\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.options, index, $event.target.value)}}})]),_vm._v(\" \"),(_vm.options.length > 2)?_c('div',{staticClass:\"icon-container\"},[_c('i',{staticClass:\"icon-cancel\",on:{\"click\":function($event){_vm.deleteOption(index)}}})]):_vm._e()])}),_vm._v(\" \"),(_vm.options.length < _vm.maxOptions)?_c('a',{staticClass:\"add-option faint\",on:{\"click\":_vm.addOption}},[_c('i',{staticClass:\"icon-plus\"}),_vm._v(\"\\n \"+_vm._s(_vm.$t(\"polls.add_option\"))+\"\\n \")]):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"poll-type-expiry\"},[_c('div',{staticClass:\"poll-type\",attrs:{\"title\":_vm.$t('polls.type')}},[_c('label',{staticClass:\"select\",attrs:{\"for\":\"poll-type-selector\"}},[_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.pollType),expression:\"pollType\"}],staticClass:\"select\",on:{\"change\":[function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.pollType=$event.target.multiple ? $$selectedVal : $$selectedVal[0]},_vm.updatePollToParent]}},[_c('option',{attrs:{\"value\":\"single\"}},[_vm._v(_vm._s(_vm.$t('polls.single_choice')))]),_vm._v(\" \"),_c('option',{attrs:{\"value\":\"multiple\"}},[_vm._v(_vm._s(_vm.$t('polls.multiple_choices')))])]),_vm._v(\" \"),_c('i',{staticClass:\"icon-down-open\"})])]),_vm._v(\" \"),_c('div',{staticClass:\"poll-expiry\",attrs:{\"title\":_vm.$t('polls.expiry')}},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.expiryAmount),expression:\"expiryAmount\"}],staticClass:\"expiry-amount hide-number-spinner\",attrs:{\"type\":\"number\",\"min\":_vm.minExpirationInCurrentUnit,\"max\":_vm.maxExpirationInCurrentUnit},domProps:{\"value\":(_vm.expiryAmount)},on:{\"change\":_vm.expiryAmountChange,\"input\":function($event){if($event.target.composing){ return; }_vm.expiryAmount=$event.target.value}}}),_vm._v(\" \"),_c('label',{staticClass:\"expiry-unit select\"},[_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.expiryUnit),expression:\"expiryUnit\"}],on:{\"change\":[function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.expiryUnit=$event.target.multiple ? $$selectedVal : $$selectedVal[0]},_vm.expiryAmountChange]}},_vm._l((_vm.expiryUnits),function(unit){return _c('option',{domProps:{\"value\":unit}},[_vm._v(\"\\n \"+_vm._s(_vm.$t((\"time.\" + unit + \"_short\"), ['']))+\"\\n \")])}),0),_vm._v(\" \"),_c('i',{staticClass:\"icon-down-open\"})])])])],2):_vm._e()}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"post-status-form\"},[_c('form',{attrs:{\"autocomplete\":\"off\"},on:{\"submit\":function($event){$event.preventDefault();_vm.postStatus(_vm.newStatus)}}},[_c('div',{staticClass:\"form-group\"},[(!_vm.$store.state.users.currentUser.locked && _vm.newStatus.visibility == 'private')?_c('i18n',{staticClass:\"visibility-notice\",attrs:{\"path\":\"post_status.account_not_locked_warning\",\"tag\":\"p\"}},[_c('router-link',{attrs:{\"to\":{ name: 'user-settings' }}},[_vm._v(_vm._s(_vm.$t('post_status.account_not_locked_warning_link')))])],1):_vm._e(),_vm._v(\" \"),(!_vm.hideScopeNotice && _vm.newStatus.visibility === 'public')?_c('p',{staticClass:\"visibility-notice notice-dismissible\"},[_c('span',[_vm._v(_vm._s(_vm.$t('post_status.scope_notice.public')))]),_vm._v(\" \"),_c('a',{staticClass:\"button-icon dismiss\",on:{\"click\":function($event){$event.preventDefault();_vm.dismissScopeNotice()}}},[_c('i',{staticClass:\"icon-cancel\"})])]):(!_vm.hideScopeNotice && _vm.newStatus.visibility === 'unlisted')?_c('p',{staticClass:\"visibility-notice notice-dismissible\"},[_c('span',[_vm._v(_vm._s(_vm.$t('post_status.scope_notice.unlisted')))]),_vm._v(\" \"),_c('a',{staticClass:\"button-icon dismiss\",on:{\"click\":function($event){$event.preventDefault();_vm.dismissScopeNotice()}}},[_c('i',{staticClass:\"icon-cancel\"})])]):(!_vm.hideScopeNotice && _vm.newStatus.visibility === 'private' && _vm.$store.state.users.currentUser.locked)?_c('p',{staticClass:\"visibility-notice notice-dismissible\"},[_c('span',[_vm._v(_vm._s(_vm.$t('post_status.scope_notice.private')))]),_vm._v(\" \"),_c('a',{staticClass:\"button-icon dismiss\",on:{\"click\":function($event){$event.preventDefault();_vm.dismissScopeNotice()}}},[_c('i',{staticClass:\"icon-cancel\"})])]):(_vm.newStatus.visibility === 'direct')?_c('p',{staticClass:\"visibility-notice\"},[(_vm.safeDMEnabled)?_c('span',[_vm._v(_vm._s(_vm.$t('post_status.direct_warning_to_first_only')))]):_c('span',[_vm._v(_vm._s(_vm.$t('post_status.direct_warning_to_all')))])]):_vm._e(),_vm._v(\" \"),(_vm.newStatus.spoilerText || _vm.alwaysShowSubject)?_c('EmojiInput',{staticClass:\"form-control\",attrs:{\"suggest\":_vm.emojiSuggestor},model:{value:(_vm.newStatus.spoilerText),callback:function ($$v) {_vm.$set(_vm.newStatus, \"spoilerText\", $$v)},expression:\"newStatus.spoilerText\"}},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.newStatus.spoilerText),expression:\"newStatus.spoilerText\"}],staticClass:\"form-post-subject\",attrs:{\"type\":\"text\",\"placeholder\":_vm.$t('post_status.content_warning')},domProps:{\"value\":(_vm.newStatus.spoilerText)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.newStatus, \"spoilerText\", $event.target.value)}}})]):_vm._e(),_vm._v(\" \"),_c('EmojiInput',{staticClass:\"form-control main-input\",attrs:{\"suggest\":_vm.emojiUserSuggestor},model:{value:(_vm.newStatus.status),callback:function ($$v) {_vm.$set(_vm.newStatus, \"status\", $$v)},expression:\"newStatus.status\"}},[_c('textarea',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.newStatus.status),expression:\"newStatus.status\"}],ref:\"textarea\",staticClass:\"form-post-body\",attrs:{\"placeholder\":_vm.$t('post_status.default'),\"rows\":\"1\",\"disabled\":_vm.posting},domProps:{\"value\":(_vm.newStatus.status)},on:{\"keydown\":function($event){if(!('button' in $event)&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\")){ return null; }if(!$event.metaKey){ return null; }_vm.postStatus(_vm.newStatus)},\"keyup\":function($event){if(!('button' in $event)&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\")){ return null; }if(!$event.ctrlKey){ return null; }_vm.postStatus(_vm.newStatus)},\"drop\":_vm.fileDrop,\"dragover\":function($event){$event.preventDefault();return _vm.fileDrag($event)},\"input\":[function($event){if($event.target.composing){ return; }_vm.$set(_vm.newStatus, \"status\", $event.target.value)},_vm.resize],\"paste\":_vm.paste}}),_vm._v(\" \"),(_vm.hasStatusLengthLimit)?_c('p',{staticClass:\"character-counter faint\",class:{ error: _vm.isOverLengthLimit }},[_vm._v(\"\\n \"+_vm._s(_vm.charactersLeft)+\"\\n \")]):_vm._e()]),_vm._v(\" \"),_c('div',{staticClass:\"visibility-tray\"},[(_vm.postFormats.length > 1)?_c('div',{staticClass:\"text-format\"},[_c('label',{staticClass:\"select\",attrs:{\"for\":\"post-content-type\"}},[_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.newStatus.contentType),expression:\"newStatus.contentType\"}],staticClass:\"form-control\",attrs:{\"id\":\"post-content-type\"},on:{\"change\":function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.$set(_vm.newStatus, \"contentType\", $event.target.multiple ? $$selectedVal : $$selectedVal[0])}}},_vm._l((_vm.postFormats),function(postFormat){return _c('option',{key:postFormat,domProps:{\"value\":postFormat}},[_vm._v(\"\\n \"+_vm._s(_vm.$t((\"post_status.content_type[\\\"\" + postFormat + \"\\\"]\")))+\"\\n \")])}),0),_vm._v(\" \"),_c('i',{staticClass:\"icon-down-open\"})])]):_vm._e(),_vm._v(\" \"),(_vm.postFormats.length === 1)?_c('div',{staticClass:\"text-format\"},[_c('span',{staticClass:\"only-format\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t((\"post_status.content_type[\\\"\" + (_vm.postFormats[0]) + \"\\\"]\")))+\"\\n \")])]):_vm._e(),_vm._v(\" \"),_c('scope-selector',{attrs:{\"showAll\":_vm.showAllScopes,\"userDefault\":_vm.userDefaultScope,\"originalScope\":_vm.copyMessageScope,\"initialScope\":_vm.newStatus.visibility,\"onScopeChange\":_vm.changeVis}})],1)],1),_vm._v(\" \"),(_vm.pollsAvailable)?_c('poll-form',{ref:\"pollForm\",attrs:{\"visible\":_vm.pollFormVisible},on:{\"update-poll\":_vm.setPoll}}):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"form-bottom\"},[_c('div',{staticClass:\"form-bottom-left\"},[_c('media-upload',{ref:\"mediaUpload\",attrs:{\"drop-files\":_vm.dropFiles},on:{\"uploading\":_vm.disableSubmit,\"uploaded\":_vm.addMediaFile,\"upload-failed\":_vm.uploadFailed}}),_vm._v(\" \"),(_vm.pollsAvailable)?_c('div',{staticClass:\"poll-icon\"},[_c('i',{staticClass:\"icon-chart-bar btn btn-default\",class:_vm.pollFormVisible && 'selected',attrs:{\"title\":_vm.$t('polls.add_poll')},on:{\"click\":_vm.togglePollForm}})]):_vm._e()],1),_vm._v(\" \"),(_vm.posting)?_c('button',{staticClass:\"btn btn-default\",attrs:{\"disabled\":\"\"}},[_vm._v(_vm._s(_vm.$t('post_status.posting')))]):(_vm.isOverLengthLimit)?_c('button',{staticClass:\"btn btn-default\",attrs:{\"disabled\":\"\"}},[_vm._v(_vm._s(_vm.$t('general.submit')))]):_c('button',{staticClass:\"btn btn-default\",attrs:{\"disabled\":_vm.submitDisabled,\"type\":\"submit\"}},[_vm._v(_vm._s(_vm.$t('general.submit')))])]),_vm._v(\" \"),(_vm.error)?_c('div',{staticClass:\"alert error\"},[_vm._v(\"\\n Error: \"+_vm._s(_vm.error)+\"\\n \"),_c('i',{staticClass:\"button-icon icon-cancel\",on:{\"click\":_vm.clearError}})]):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"attachments\"},_vm._l((_vm.newStatus.files),function(file){return _c('div',{staticClass:\"media-upload-wrapper\"},[_c('i',{staticClass:\"fa button-icon icon-cancel\",on:{\"click\":function($event){_vm.removeMediaFile(file)}}}),_vm._v(\" \"),_c('div',{staticClass:\"media-upload-container attachment\"},[(_vm.type(file) === 'image')?_c('img',{staticClass:\"thumbnail media-upload\",attrs:{\"src\":file.url}}):_vm._e(),_vm._v(\" \"),(_vm.type(file) === 'video')?_c('video',{attrs:{\"src\":file.url,\"controls\":\"\"}}):_vm._e(),_vm._v(\" \"),(_vm.type(file) === 'audio')?_c('audio',{attrs:{\"src\":file.url,\"controls\":\"\"}}):_vm._e(),_vm._v(\" \"),(_vm.type(file) === 'unknown')?_c('a',{attrs:{\"href\":file.url}},[_vm._v(_vm._s(file.url))]):_vm._e()])])}),0),_vm._v(\" \"),(_vm.newStatus.files.length > 0)?_c('div',{staticClass:\"upload_settings\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.newStatus.nsfw),expression:\"newStatus.nsfw\"}],attrs:{\"type\":\"checkbox\",\"id\":\"filesSensitive\"},domProps:{\"checked\":Array.isArray(_vm.newStatus.nsfw)?_vm._i(_vm.newStatus.nsfw,null)>-1:(_vm.newStatus.nsfw)},on:{\"change\":function($event){var $$a=_vm.newStatus.nsfw,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.newStatus, \"nsfw\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.newStatus, \"nsfw\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.newStatus, \"nsfw\", $$c)}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"filesSensitive\"}},[_vm._v(_vm._s(_vm.$t('post_status.attachments_sensitive')))])]):_vm._e()],1)])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('StillImage',{staticClass:\"avatar\",class:{ 'avatar-compact': _vm.compact, 'better-shadow': _vm.betterShadow },attrs:{\"alt\":_vm.user.screen_name,\"title\":_vm.user.screen_name,\"src\":_vm.user.profile_image_url_original,\"imageLoadError\":_vm.imageLoadError}})}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"remote-follow\"},[_c('form',{attrs:{\"method\":\"POST\",\"action\":_vm.subscribeUrl}},[_c('input',{attrs:{\"type\":\"hidden\",\"name\":\"nickname\"},domProps:{\"value\":_vm.user.screen_name}}),_vm._v(\" \"),_c('input',{attrs:{\"type\":\"hidden\",\"name\":\"profile\",\"value\":\"\"}}),_vm._v(\" \"),_c('button',{staticClass:\"remote-button\",attrs:{\"click\":\"submit\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.remote_follow'))+\"\\n \")])])])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('span',{class:{ 'dark-overlay': _vm.darkOverlay },on:{\"click\":function($event){if($event.target !== $event.currentTarget){ return null; }$event.stopPropagation();_vm.onCancel()}}},[_c('div',{staticClass:\"dialog-modal panel panel-default\",on:{\"click\":function($event){$event.stopPropagation();}}},[_c('div',{staticClass:\"panel-heading dialog-modal-heading\"},[_c('div',{staticClass:\"title\"},[_vm._t(\"header\")],2)]),_vm._v(\" \"),_c('div',{staticClass:\"dialog-modal-content\"},[_vm._t(\"default\")],2),_vm._v(\" \"),_c('div',{staticClass:\"dialog-modal-footer user-interactions panel-footer\"},[_vm._t(\"footer\")],2)])])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"block\",staticStyle:{\"position\":\"relative\"}},[_c('Popper',{attrs:{\"trigger\":\"click\",\"append-to-body\":\"\",\"options\":{\n placement: 'bottom-end',\n modifiers: {\n arrow: { enabled: true },\n offset: { offset: '0, 5px' },\n }\n }},on:{\"hide\":function($event){_vm.showDropDown = false}}},[_c('div',{staticClass:\"popper-wrapper\"},[_c('div',{staticClass:\"dropdown-menu\"},[(_vm.user.is_local)?_c('span',[_c('button',{staticClass:\"dropdown-item\",on:{\"click\":function($event){_vm.toggleRight(\"admin\")}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t(!!_vm.user.rights.admin ? 'user_card.admin_menu.revoke_admin' : 'user_card.admin_menu.grant_admin'))+\"\\n \")]),_vm._v(\" \"),_c('button',{staticClass:\"dropdown-item\",on:{\"click\":function($event){_vm.toggleRight(\"moderator\")}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t(!!_vm.user.rights.moderator ? 'user_card.admin_menu.revoke_moderator' : 'user_card.admin_menu.grant_moderator'))+\"\\n \")]),_vm._v(\" \"),_c('div',{staticClass:\"dropdown-divider\",attrs:{\"role\":\"separator\"}})]):_vm._e(),_vm._v(\" \"),_c('button',{staticClass:\"dropdown-item\",on:{\"click\":function($event){_vm.toggleActivationStatus()}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t(!!_vm.user.deactivated ? 'user_card.admin_menu.activate_account' : 'user_card.admin_menu.deactivate_account'))+\"\\n \")]),_vm._v(\" \"),_c('button',{staticClass:\"dropdown-item\",on:{\"click\":function($event){_vm.deleteUserDialog(true)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.admin_menu.delete_account'))+\"\\n \")]),_vm._v(\" \"),(_vm.hasTagPolicy)?_c('div',{staticClass:\"dropdown-divider\",attrs:{\"role\":\"separator\"}}):_vm._e(),_vm._v(\" \"),(_vm.hasTagPolicy)?_c('span',[_c('button',{staticClass:\"dropdown-item\",on:{\"click\":function($event){_vm.toggleTag(_vm.tags.FORCE_NSFW)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.admin_menu.force_nsfw'))+\"\\n \"),_c('span',{staticClass:\"menu-checkbox\",class:{ 'menu-checkbox-checked': _vm.hasTag(_vm.tags.FORCE_NSFW) }})]),_vm._v(\" \"),_c('button',{staticClass:\"dropdown-item\",on:{\"click\":function($event){_vm.toggleTag(_vm.tags.STRIP_MEDIA)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.admin_menu.strip_media'))+\"\\n \"),_c('span',{staticClass:\"menu-checkbox\",class:{ 'menu-checkbox-checked': _vm.hasTag(_vm.tags.STRIP_MEDIA) }})]),_vm._v(\" \"),_c('button',{staticClass:\"dropdown-item\",on:{\"click\":function($event){_vm.toggleTag(_vm.tags.FORCE_UNLISTED)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.admin_menu.force_unlisted'))+\"\\n \"),_c('span',{staticClass:\"menu-checkbox\",class:{ 'menu-checkbox-checked': _vm.hasTag(_vm.tags.FORCE_UNLISTED) }})]),_vm._v(\" \"),_c('button',{staticClass:\"dropdown-item\",on:{\"click\":function($event){_vm.toggleTag(_vm.tags.SANDBOX)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.admin_menu.sandbox'))+\"\\n \"),_c('span',{staticClass:\"menu-checkbox\",class:{ 'menu-checkbox-checked': _vm.hasTag(_vm.tags.SANDBOX) }})]),_vm._v(\" \"),(_vm.user.is_local)?_c('button',{staticClass:\"dropdown-item\",on:{\"click\":function($event){_vm.toggleTag(_vm.tags.DISABLE_REMOTE_SUBSCRIPTION)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.admin_menu.disable_remote_subscription'))+\"\\n \"),_c('span',{staticClass:\"menu-checkbox\",class:{ 'menu-checkbox-checked': _vm.hasTag(_vm.tags.DISABLE_REMOTE_SUBSCRIPTION) }})]):_vm._e(),_vm._v(\" \"),(_vm.user.is_local)?_c('button',{staticClass:\"dropdown-item\",on:{\"click\":function($event){_vm.toggleTag(_vm.tags.DISABLE_ANY_SUBSCRIPTION)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.admin_menu.disable_any_subscription'))+\"\\n \"),_c('span',{staticClass:\"menu-checkbox\",class:{ 'menu-checkbox-checked': _vm.hasTag(_vm.tags.DISABLE_ANY_SUBSCRIPTION) }})]):_vm._e(),_vm._v(\" \"),(_vm.user.is_local)?_c('button',{staticClass:\"dropdown-item\",on:{\"click\":function($event){_vm.toggleTag(_vm.tags.QUARANTINE)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.admin_menu.quarantine'))+\"\\n \"),_c('span',{staticClass:\"menu-checkbox\",class:{ 'menu-checkbox-checked': _vm.hasTag(_vm.tags.QUARANTINE) }})]):_vm._e()]):_vm._e()])]),_vm._v(\" \"),_c('button',{class:{ pressed: _vm.showDropDown },attrs:{\"slot\":\"reference\"},on:{\"click\":_vm.toggleMenu},slot:\"reference\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.admin_menu.moderation'))+\"\\n \")])]),_vm._v(\" \"),_c('portal',{attrs:{\"to\":\"modal\"}},[(_vm.showDeleteUserDialog)?_c('DialogModal',{attrs:{\"onCancel\":_vm.deleteUserDialog.bind(this, false)}},[_c('template',{slot:\"header\"},[_vm._v(_vm._s(_vm.$t('user_card.admin_menu.delete_user')))]),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.$t('user_card.admin_menu.delete_user_confirmation')))]),_vm._v(\" \"),_c('template',{slot:\"footer\"},[_c('button',{staticClass:\"btn btn-default\",on:{\"click\":function($event){_vm.deleteUserDialog(false)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('general.cancel'))+\"\\n \")]),_vm._v(\" \"),_c('button',{staticClass:\"btn btn-default danger\",on:{\"click\":function($event){_vm.deleteUser()}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.admin_menu.delete_user'))+\"\\n \")])])],2):_vm._e()],1)],1)}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"user-card\",class:_vm.classes,style:(_vm.style)},[_c('div',{staticClass:\"panel-heading\"},[_c('div',{staticClass:\"user-info\"},[_c('div',{staticClass:\"container\"},[_c('router-link',{attrs:{\"to\":_vm.userProfileLink(_vm.user)}},[_c('UserAvatar',{attrs:{\"betterShadow\":_vm.betterShadow,\"user\":_vm.user}})],1),_vm._v(\" \"),_c('div',{staticClass:\"user-summary\"},[_c('div',{staticClass:\"top-line\"},[(_vm.user.name_html)?_c('div',{staticClass:\"user-name\",attrs:{\"title\":_vm.user.name},domProps:{\"innerHTML\":_vm._s(_vm.user.name_html)}}):_c('div',{staticClass:\"user-name\",attrs:{\"title\":_vm.user.name}},[_vm._v(_vm._s(_vm.user.name))]),_vm._v(\" \"),(!_vm.isOtherUser)?_c('router-link',{attrs:{\"to\":{ name: 'user-settings' }}},[_c('i',{staticClass:\"button-icon icon-wrench usersettings\",attrs:{\"title\":_vm.$t('tool_tip.user_settings')}})]):_vm._e(),_vm._v(\" \"),(_vm.isOtherUser && !_vm.user.is_local)?_c('a',{attrs:{\"href\":_vm.user.statusnet_profile_url,\"target\":\"_blank\"}},[_c('i',{staticClass:\"icon-link-ext usersettings\"})]):_vm._e()],1),_vm._v(\" \"),_c('div',{staticClass:\"bottom-line\"},[_c('router-link',{staticClass:\"user-screen-name\",attrs:{\"to\":_vm.userProfileLink(_vm.user)}},[_vm._v(\"@\"+_vm._s(_vm.user.screen_name))]),_vm._v(\" \"),(!_vm.hideBio && !!_vm.visibleRole)?_c('span',{staticClass:\"alert staff\"},[_vm._v(_vm._s(_vm.visibleRole))]):_vm._e(),_vm._v(\" \"),(_vm.user.locked)?_c('span',[_c('i',{staticClass:\"icon icon-lock\"})]):_vm._e(),_vm._v(\" \"),(!_vm.hideUserStatsLocal && !_vm.hideBio)?_c('span',{staticClass:\"dailyAvg\"},[_vm._v(_vm._s(_vm.dailyAvg)+\" \"+_vm._s(_vm.$t('user_card.per_day')))]):_vm._e()],1)])],1),_vm._v(\" \"),_c('div',{staticClass:\"user-meta\"},[(_vm.user.follows_you && _vm.loggedIn && _vm.isOtherUser)?_c('div',{staticClass:\"following\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.follows_you'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.isOtherUser && (_vm.loggedIn || !_vm.switcher))?_c('div',{staticClass:\"highlighter\"},[(_vm.userHighlightType !== 'disabled')?_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.userHighlightColor),expression:\"userHighlightColor\"}],staticClass:\"userHighlightText\",attrs:{\"type\":\"text\",\"id\":'userHighlightColorTx'+_vm.user.id},domProps:{\"value\":(_vm.userHighlightColor)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.userHighlightColor=$event.target.value}}}):_vm._e(),_vm._v(\" \"),(_vm.userHighlightType !== 'disabled')?_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.userHighlightColor),expression:\"userHighlightColor\"}],staticClass:\"userHighlightCl\",attrs:{\"type\":\"color\",\"id\":'userHighlightColor'+_vm.user.id},domProps:{\"value\":(_vm.userHighlightColor)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.userHighlightColor=$event.target.value}}}):_vm._e(),_vm._v(\" \"),_c('label',{staticClass:\"userHighlightSel select\",attrs:{\"for\":\"style-switcher\"}},[_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.userHighlightType),expression:\"userHighlightType\"}],staticClass:\"userHighlightSel\",attrs:{\"id\":'userHighlightSel'+_vm.user.id},on:{\"change\":function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.userHighlightType=$event.target.multiple ? $$selectedVal : $$selectedVal[0]}}},[_c('option',{attrs:{\"value\":\"disabled\"}},[_vm._v(\"No highlight\")]),_vm._v(\" \"),_c('option',{attrs:{\"value\":\"solid\"}},[_vm._v(\"Solid bg\")]),_vm._v(\" \"),_c('option',{attrs:{\"value\":\"striped\"}},[_vm._v(\"Striped bg\")]),_vm._v(\" \"),_c('option',{attrs:{\"value\":\"side\"}},[_vm._v(\"Side stripe\")])]),_vm._v(\" \"),_c('i',{staticClass:\"icon-down-open\"})])]):_vm._e()]),_vm._v(\" \"),(_vm.isOtherUser)?_c('div',{staticClass:\"user-interactions\"},[(_vm.loggedIn)?_c('div',{staticClass:\"follow\"},[(_vm.user.following)?_c('span',[_c('button',{staticClass:\"pressed\",attrs:{\"disabled\":_vm.followRequestInProgress,\"title\":_vm.$t('user_card.follow_unfollow')},on:{\"click\":_vm.unfollowUser}},[(_vm.followRequestInProgress)?[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.follow_progress'))+\"\\n \")]:[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.following'))+\"\\n \")]],2)]):_vm._e(),_vm._v(\" \"),(!_vm.user.following)?_c('span',[_c('button',{attrs:{\"disabled\":_vm.followRequestInProgress,\"title\":_vm.followRequestSent ? _vm.$t('user_card.follow_again') : ''},on:{\"click\":_vm.followUser}},[(_vm.followRequestInProgress)?[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.follow_progress'))+\"\\n \")]:(_vm.followRequestSent)?[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.follow_sent'))+\"\\n \")]:[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.follow'))+\"\\n \")]],2)]):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.isOtherUser && _vm.loggedIn)?_c('div',{staticClass:\"mute\"},[(_vm.user.muted)?_c('span',[_c('button',{staticClass:\"pressed\",on:{\"click\":_vm.unmuteUser}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.muted'))+\"\\n \")])]):_vm._e(),_vm._v(\" \"),(!_vm.user.muted)?_c('span',[_c('button',{on:{\"click\":_vm.muteUser}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.mute'))+\"\\n \")])]):_vm._e()]):_vm._e(),_vm._v(\" \"),(!_vm.loggedIn && _vm.user.is_local)?_c('div',[_c('RemoteFollow',{attrs:{\"user\":_vm.user}})],1):_vm._e(),_vm._v(\" \"),(_vm.isOtherUser && _vm.loggedIn)?_c('div',{staticClass:\"block\"},[(_vm.user.statusnet_blocking)?_c('span',[_c('button',{staticClass:\"pressed\",on:{\"click\":_vm.unblockUser}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.blocked'))+\"\\n \")])]):_vm._e(),_vm._v(\" \"),(!_vm.user.statusnet_blocking)?_c('span',[_c('button',{on:{\"click\":_vm.blockUser}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.block'))+\"\\n \")])]):_vm._e()]):_vm._e(),_vm._v(\" \"),(_vm.isOtherUser && _vm.loggedIn)?_c('div',{staticClass:\"block\"},[_c('span',[_c('button',{on:{\"click\":_vm.reportUser}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.report'))+\"\\n \")])])]):_vm._e(),_vm._v(\" \"),(_vm.loggedIn.role === \"admin\")?_c('ModerationTools',{attrs:{\"user\":_vm.user}}):_vm._e()],1):_vm._e()])]),_vm._v(\" \"),(!_vm.hideBio)?_c('div',{staticClass:\"panel-body\"},[(!_vm.hideUserStatsLocal && _vm.switcher)?_c('div',{staticClass:\"user-counts\"},[_c('div',{staticClass:\"user-count\",on:{\"click\":function($event){$event.preventDefault();_vm.setProfileView('statuses')}}},[_c('h5',[_vm._v(_vm._s(_vm.$t('user_card.statuses')))]),_vm._v(\" \"),_c('span',[_vm._v(_vm._s(_vm.user.statuses_count)+\" \"),_c('br')])]),_vm._v(\" \"),_c('div',{staticClass:\"user-count\",on:{\"click\":function($event){$event.preventDefault();_vm.setProfileView('friends')}}},[_c('h5',[_vm._v(_vm._s(_vm.$t('user_card.followees')))]),_vm._v(\" \"),_c('span',[_vm._v(_vm._s(_vm.user.friends_count))])]),_vm._v(\" \"),_c('div',{staticClass:\"user-count\",on:{\"click\":function($event){$event.preventDefault();_vm.setProfileView('followers')}}},[_c('h5',[_vm._v(_vm._s(_vm.$t('user_card.followers')))]),_vm._v(\" \"),_c('span',[_vm._v(_vm._s(_vm.user.followers_count))])])]):_vm._e(),_vm._v(\" \"),(!_vm.hideBio && _vm.user.description_html)?_c('p',{staticClass:\"user-card-bio\",domProps:{\"innerHTML\":_vm._s(_vm.user.description_html)},on:{\"click\":function($event){$event.preventDefault();return _vm.linkClicked($event)}}}):(!_vm.hideBio)?_c('p',{staticClass:\"user-card-bio\"},[_vm._v(_vm._s(_vm.user.description))]):_vm._e()]):_vm._e()])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:\"galleryContainer\",staticStyle:{\"width\":\"100%\"}},_vm._l((_vm.rows),function(row){return _c('div',{staticClass:\"gallery-row\",class:{ 'contain-fit': _vm.useContainFit, 'cover-fit': !_vm.useContainFit },style:(_vm.rowHeight(row.length))},_vm._l((row),function(attachment){return _c('attachment',{key:attachment.id,attrs:{\"setMedia\":_vm.setMedia,\"nsfw\":_vm.nsfw,\"attachment\":attachment,\"allowPlay\":false}})}),1)}),0)}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('a',{staticClass:\"link-preview-card\",attrs:{\"href\":_vm.card.url,\"target\":\"_blank\",\"rel\":\"noopener\"}},[(_vm.useImage)?_c('div',{staticClass:\"card-image\",class:{ 'small-image': _vm.size === 'small' }},[_c('img',{attrs:{\"src\":_vm.card.image}})]):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"card-content\"},[_c('span',{staticClass:\"card-host faint\"},[_vm._v(_vm._s(_vm.card.provider_name))]),_vm._v(\" \"),_c('h4',{staticClass:\"card-title\"},[_vm._v(_vm._s(_vm.card.title))]),_vm._v(\" \"),(_vm.useDescription)?_c('p',{staticClass:\"card-description\"},[_vm._v(_vm._s(_vm.card.description))]):_vm._e()])])])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"avatars\"},_vm._l((_vm.slicedUsers),function(user){return _c('router-link',{key:user.id,staticClass:\"avatars-item\",attrs:{\"to\":_vm.userProfileLink(user)}},[_c('UserAvatar',{staticClass:\"avatar-small\",attrs:{\"user\":user}})],1)}),1)}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.hideStatus)?_c('div',{staticClass:\"status-el\",class:[{ 'status-el_focused': _vm.isFocused }, { 'status-conversation': _vm.inlineExpanded }]},[(_vm.error)?_c('div',{staticClass:\"alert error\"},[_vm._v(\"\\n \"+_vm._s(_vm.error)+\"\\n \"),_c('i',{staticClass:\"button-icon icon-cancel\",on:{\"click\":_vm.clearError}})]):_vm._e(),_vm._v(\" \"),(_vm.muted && !_vm.isPreview)?[_c('div',{staticClass:\"media status container muted\"},[_c('small',[_c('router-link',{attrs:{\"to\":_vm.userProfileLink}},[_vm._v(\"\\n \"+_vm._s(_vm.status.user.screen_name)+\"\\n \")])],1),_vm._v(\" \"),_c('small',{staticClass:\"muteWords\"},[_vm._v(_vm._s(_vm.muteWordHits.join(', ')))]),_vm._v(\" \"),_c('a',{staticClass:\"unmute\",attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.toggleMute($event)}}},[_c('i',{staticClass:\"button-icon icon-eye-off\"})])])]:[(_vm.showPinned && _vm.statusoid.pinned)?_c('div',{staticClass:\"status-pin\"},[_c('i',{staticClass:\"fa icon-pin faint\"}),_vm._v(\" \"),_c('span',{staticClass:\"faint\"},[_vm._v(_vm._s(_vm.$t('status.pinned')))])]):_vm._e(),_vm._v(\" \"),(_vm.retweet && !_vm.noHeading && !_vm.inConversation)?_c('div',{staticClass:\"media container retweet-info\",class:[_vm.repeaterClass, { highlighted: _vm.repeaterStyle }],style:([_vm.repeaterStyle])},[(_vm.retweet)?_c('UserAvatar',{staticClass:\"media-left\",attrs:{\"betterShadow\":_vm.betterShadow,\"user\":_vm.statusoid.user}}):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"media-body faint\"},[_c('span',{staticClass:\"user-name\"},[(_vm.retweeterHtml)?_c('router-link',{attrs:{\"to\":_vm.retweeterProfileLink},domProps:{\"innerHTML\":_vm._s(_vm.retweeterHtml)}}):_c('router-link',{attrs:{\"to\":_vm.retweeterProfileLink}},[_vm._v(_vm._s(_vm.retweeter))])],1),_vm._v(\" \"),_c('i',{staticClass:\"fa icon-retweet retweeted\",attrs:{\"title\":_vm.$t('tool_tip.repeat')}}),_vm._v(\"\\n \"+_vm._s(_vm.$t('timeline.repeated'))+\"\\n \")])],1):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"media status\",class:[_vm.userClass, { highlighted: _vm.userStyle, 'is-retweet': _vm.retweet && !_vm.inConversation }],style:([ _vm.userStyle ]),attrs:{\"data-tags\":_vm.tags}},[(!_vm.noHeading)?_c('div',{staticClass:\"media-left\"},[_c('router-link',{attrs:{\"to\":_vm.userProfileLink},nativeOn:{\"!click\":function($event){$event.stopPropagation();$event.preventDefault();return _vm.toggleUserExpanded($event)}}},[_c('UserAvatar',{attrs:{\"compact\":_vm.compact,\"betterShadow\":_vm.betterShadow,\"user\":_vm.status.user}})],1)],1):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"status-body\"},[(_vm.userExpanded)?_c('UserCard',{staticClass:\"status-usercard\",attrs:{\"user\":_vm.status.user,\"rounded\":true,\"bordered\":true}}):_vm._e(),_vm._v(\" \"),(!_vm.noHeading)?_c('div',{staticClass:\"media-heading\"},[_c('div',{staticClass:\"heading-name-row\"},[_c('div',{staticClass:\"name-and-account-name\"},[(_vm.status.user.name_html)?_c('h4',{staticClass:\"user-name\",domProps:{\"innerHTML\":_vm._s(_vm.status.user.name_html)}}):_c('h4',{staticClass:\"user-name\"},[_vm._v(_vm._s(_vm.status.user.name))]),_vm._v(\" \"),_c('router-link',{staticClass:\"account-name\",attrs:{\"to\":_vm.userProfileLink}},[_vm._v(\"\\n \"+_vm._s(_vm.status.user.screen_name)+\"\\n \")])],1),_vm._v(\" \"),_c('span',{staticClass:\"heading-right\"},[_c('router-link',{staticClass:\"timeago faint-link\",attrs:{\"to\":{ name: 'conversation', params: { id: _vm.status.id } }}},[_c('Timeago',{attrs:{\"time\":_vm.status.created_at,\"auto-update\":60}})],1),_vm._v(\" \"),(_vm.status.visibility)?_c('div',{staticClass:\"button-icon visibility-icon\"},[_c('i',{class:_vm.visibilityIcon(_vm.status.visibility),attrs:{\"title\":_vm._f(\"capitalize\")(_vm.status.visibility)}})]):_vm._e(),_vm._v(\" \"),(!_vm.status.is_local && !_vm.isPreview)?_c('a',{staticClass:\"source_url\",attrs:{\"href\":_vm.status.external_url,\"target\":\"_blank\",\"title\":\"Source\"}},[_c('i',{staticClass:\"button-icon icon-link-ext-alt\"})]):_vm._e(),_vm._v(\" \"),(_vm.expandable && !_vm.isPreview)?[_c('a',{attrs:{\"href\":\"#\",\"title\":\"Expand\"},on:{\"click\":function($event){$event.preventDefault();return _vm.toggleExpanded($event)}}},[_c('i',{staticClass:\"button-icon icon-plus-squared\"})])]:_vm._e(),_vm._v(\" \"),(_vm.unmuted)?_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.toggleMute($event)}}},[_c('i',{staticClass:\"button-icon icon-eye-off\"})]):_vm._e()],2)]),_vm._v(\" \"),_c('div',{staticClass:\"heading-reply-row\"},[(_vm.isReply)?_c('div',{staticClass:\"reply-to-and-accountname\"},[_c('a',{staticClass:\"reply-to\",attrs:{\"href\":\"#\",\"aria-label\":_vm.$t('tool_tip.reply')},on:{\"click\":function($event){$event.preventDefault();_vm.gotoOriginal(_vm.status.in_reply_to_status_id)},\"mouseenter\":function($event){$event.preventDefault();$event.stopPropagation();_vm.replyEnter(_vm.status.in_reply_to_status_id, $event)},\"mouseleave\":function($event){$event.preventDefault();$event.stopPropagation();_vm.replyLeave()}}},[(!_vm.isPreview)?_c('i',{staticClass:\"button-icon icon-reply\"}):_vm._e(),_vm._v(\" \"),_c('span',{staticClass:\"faint-link reply-to-text\"},[_vm._v(_vm._s(_vm.$t('status.reply_to')))])]),_vm._v(\" \"),_c('router-link',{attrs:{\"to\":_vm.replyProfileLink}},[_vm._v(\"\\n \"+_vm._s(_vm.replyToName)+\"\\n \")]),_vm._v(\" \"),(_vm.replies && _vm.replies.length)?_c('span',{staticClass:\"faint replies-separator\"},[_vm._v(\"\\n -\\n \")]):_vm._e()],1):_vm._e(),_vm._v(\" \"),(_vm.inConversation && !_vm.isPreview)?_c('div',{staticClass:\"replies\"},[(_vm.replies && _vm.replies.length)?_c('span',{staticClass:\"faint\"},[_vm._v(_vm._s(_vm.$t('status.replies_list')))]):_vm._e(),_vm._v(\" \"),_vm._l((_vm.replies),function(reply){return (_vm.replies)?_c('span',{staticClass:\"reply-link faint\"},[_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();_vm.gotoOriginal(reply.id)},\"mouseenter\":function($event){_vm.replyEnter(reply.id, $event)},\"mouseout\":function($event){_vm.replyLeave()}}},[_vm._v(_vm._s(reply.name))])]):_vm._e()})],2):_vm._e()])]):_vm._e(),_vm._v(\" \"),(_vm.showPreview)?_c('div',{staticClass:\"status-preview-container\"},[(_vm.preview)?_c('status',{staticClass:\"status-preview\",attrs:{\"isPreview\":true,\"statusoid\":_vm.preview,\"compact\":true}}):_c('div',{staticClass:\"status-preview status-preview-loading\"},[_c('i',{staticClass:\"icon-spin4 animate-spin\"})])],1):_vm._e(),_vm._v(\" \"),(_vm.longSubject)?_c('div',{staticClass:\"status-content-wrapper\",class:{ 'tall-status': !_vm.showingLongSubject }},[(!_vm.showingLongSubject)?_c('a',{staticClass:\"tall-status-hider\",class:{ 'tall-status-hider_focused': _vm.isFocused },attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();_vm.showingLongSubject=true}}},[_vm._v(_vm._s(_vm.$t(\"general.show_more\")))]):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"status-content media-body\",domProps:{\"innerHTML\":_vm._s(_vm.contentHtml)},on:{\"click\":function($event){$event.preventDefault();return _vm.linkClicked($event)}}}),_vm._v(\" \"),(_vm.showingLongSubject)?_c('a',{staticClass:\"status-unhider\",attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();_vm.showingLongSubject=false}}},[_vm._v(_vm._s(_vm.$t(\"general.show_less\")))]):_vm._e()]):_c('div',{staticClass:\"status-content-wrapper\",class:{'tall-status': _vm.hideTallStatus}},[(_vm.hideTallStatus)?_c('a',{staticClass:\"tall-status-hider\",class:{ 'tall-status-hider_focused': _vm.isFocused },attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.toggleShowMore($event)}}},[_vm._v(_vm._s(_vm.$t(\"general.show_more\")))]):_vm._e(),_vm._v(\" \"),(!_vm.hideSubjectStatus)?_c('div',{staticClass:\"status-content media-body\",domProps:{\"innerHTML\":_vm._s(_vm.contentHtml)},on:{\"click\":function($event){$event.preventDefault();return _vm.linkClicked($event)}}}):_c('div',{staticClass:\"status-content media-body\",domProps:{\"innerHTML\":_vm._s(_vm.status.summary_html)},on:{\"click\":function($event){$event.preventDefault();return _vm.linkClicked($event)}}}),_vm._v(\" \"),(_vm.hideSubjectStatus)?_c('a',{staticClass:\"cw-status-hider\",attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.toggleShowMore($event)}}},[_vm._v(_vm._s(_vm.$t(\"general.show_more\")))]):_vm._e(),_vm._v(\" \"),(_vm.showingMore)?_c('a',{staticClass:\"status-unhider\",attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.toggleShowMore($event)}}},[_vm._v(_vm._s(_vm.$t(\"general.show_less\")))]):_vm._e()]),_vm._v(\" \"),(_vm.status.poll && _vm.status.poll.options)?_c('div',[_c('poll',{attrs:{\"base-poll\":_vm.status.poll}})],1):_vm._e(),_vm._v(\" \"),(_vm.status.attachments && (!_vm.hideSubjectStatus || _vm.showingLongSubject))?_c('div',{staticClass:\"attachments media-body\"},[_vm._l((_vm.nonGalleryAttachments),function(attachment){return _c('attachment',{key:attachment.id,staticClass:\"non-gallery\",attrs:{\"size\":_vm.attachmentSize,\"nsfw\":_vm.nsfwClickthrough,\"attachment\":attachment,\"allowPlay\":true,\"setMedia\":_vm.setMedia()}})}),_vm._v(\" \"),(_vm.galleryAttachments.length > 0)?_c('gallery',{attrs:{\"nsfw\":_vm.nsfwClickthrough,\"attachments\":_vm.galleryAttachments,\"setMedia\":_vm.setMedia()}}):_vm._e()],2):_vm._e(),_vm._v(\" \"),(_vm.status.card && !_vm.hideSubjectStatus && !_vm.noHeading)?_c('div',{staticClass:\"link-preview media-body\"},[_c('link-preview',{attrs:{\"card\":_vm.status.card,\"size\":_vm.attachmentSize,\"nsfw\":_vm.nsfwClickthrough}})],1):_vm._e(),_vm._v(\" \"),_c('transition',{attrs:{\"name\":\"fade\"}},[(_vm.isFocused && _vm.combinedFavsAndRepeatsUsers.length > 0)?_c('div',{staticClass:\"favs-repeated-users\"},[_c('div',{staticClass:\"stats\"},[(_vm.statusFromGlobalRepository.rebloggedBy && _vm.statusFromGlobalRepository.rebloggedBy.length > 0)?_c('div',{staticClass:\"stat-count\"},[_c('a',{staticClass:\"stat-title\"},[_vm._v(_vm._s(_vm.$t('status.repeats')))]),_vm._v(\" \"),_c('div',{staticClass:\"stat-number\"},[_vm._v(_vm._s(_vm.statusFromGlobalRepository.rebloggedBy.length))])]):_vm._e(),_vm._v(\" \"),(_vm.statusFromGlobalRepository.favoritedBy && _vm.statusFromGlobalRepository.favoritedBy.length > 0)?_c('div',{staticClass:\"stat-count\"},[_c('a',{staticClass:\"stat-title\"},[_vm._v(_vm._s(_vm.$t('status.favorites')))]),_vm._v(\" \"),_c('div',{staticClass:\"stat-number\"},[_vm._v(_vm._s(_vm.statusFromGlobalRepository.favoritedBy.length))])]):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"avatar-row\"},[_c('AvatarList',{attrs:{\"users\":_vm.combinedFavsAndRepeatsUsers}})],1)])]):_vm._e()]),_vm._v(\" \"),(!_vm.noHeading && !_vm.isPreview)?_c('div',{staticClass:\"status-actions media-body\"},[_c('div',[(_vm.loggedIn)?_c('i',{staticClass:\"button-icon icon-reply\",class:{'button-icon-active': _vm.replying},attrs:{\"title\":_vm.$t('tool_tip.reply')},on:{\"click\":function($event){$event.preventDefault();return _vm.toggleReplying($event)}}}):_c('i',{staticClass:\"button-icon button-icon-disabled icon-reply\",attrs:{\"title\":_vm.$t('tool_tip.reply')}}),_vm._v(\" \"),(_vm.status.replies_count > 0)?_c('span',[_vm._v(_vm._s(_vm.status.replies_count))]):_vm._e()]),_vm._v(\" \"),_c('retweet-button',{attrs:{\"visibility\":_vm.status.visibility,\"loggedIn\":_vm.loggedIn,\"status\":_vm.status}}),_vm._v(\" \"),_c('favorite-button',{attrs:{\"loggedIn\":_vm.loggedIn,\"status\":_vm.status}}),_vm._v(\" \"),_c('extra-buttons',{attrs:{\"status\":_vm.status},on:{\"onError\":_vm.showError,\"onSuccess\":_vm.clearError}})],1):_vm._e()],1)]),_vm._v(\" \"),(_vm.replying)?_c('div',{staticClass:\"container\"},[_c('post-status-form',{staticClass:\"reply-body\",attrs:{\"reply-to\":_vm.status.id,\"attentions\":_vm.status.attentions,\"repliedUser\":_vm.status.user,\"copy-message-scope\":_vm.status.visibility,\"subject\":_vm.replySubject},on:{\"posted\":_vm.toggleReplying}})],1):_vm._e()]],2):_vm._e()}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"timeline panel-default\",class:[_vm.isExpanded ? 'panel' : 'panel-disabled']},[(_vm.isExpanded)?_c('div',{staticClass:\"panel-heading conversation-heading\"},[_c('span',{staticClass:\"title\"},[_vm._v(\" \"+_vm._s(_vm.$t('timeline.conversation'))+\" \")]),_vm._v(\" \"),(_vm.collapsable)?_c('span',[_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.toggleExpanded($event)}}},[_vm._v(_vm._s(_vm.$t('timeline.collapse')))])]):_vm._e()]):_vm._e(),_vm._v(\" \"),_vm._l((_vm.conversation),function(status){return _c('status',{key:status.id,staticClass:\"status-fadein panel-body\",attrs:{\"inlineExpanded\":_vm.collapsable && _vm.isExpanded,\"statusoid\":status,\"expandable\":!_vm.isExpanded,\"showPinned\":_vm.showPinned,\"focused\":_vm.focused(status.id),\"inConversation\":_vm.isExpanded,\"highlight\":_vm.getHighlight(),\"replies\":_vm.getReplies(status.id)},on:{\"goto\":_vm.setHighlight,\"toggleExpanded\":_vm.toggleExpanded}})})],2)}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:_vm.classes.root},[_c('div',{class:_vm.classes.header},[_c('div',{staticClass:\"title\"},[_vm._v(\"\\n \"+_vm._s(_vm.title)+\"\\n \")]),_vm._v(\" \"),(_vm.timelineError)?_c('div',{staticClass:\"loadmore-error alert error\",on:{\"click\":function($event){$event.preventDefault();}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('timeline.error_fetching'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.timeline.newStatusCount > 0 && !_vm.timelineError)?_c('button',{staticClass:\"loadmore-button\",on:{\"click\":function($event){$event.preventDefault();return _vm.showNewStatuses($event)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('timeline.show_new'))+_vm._s(_vm.newStatusCountStr)+\"\\n \")]):_vm._e(),_vm._v(\" \"),(!_vm.timeline.newStatusCount > 0 && !_vm.timelineError)?_c('div',{staticClass:\"loadmore-text faint\",on:{\"click\":function($event){$event.preventDefault();}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('timeline.up_to_date'))+\"\\n \")]):_vm._e()]),_vm._v(\" \"),_c('div',{class:_vm.classes.body},[_c('div',{staticClass:\"timeline\"},_vm._l((_vm.timeline.visibleStatuses),function(status){return _c('conversation',{key:status.id,staticClass:\"status-fadein\",attrs:{\"statusoid\":status,\"collapsable\":true}})}),1)]),_vm._v(\" \"),_c('div',{class:_vm.classes.footer},[(_vm.count===0)?_c('div',{staticClass:\"new-status-notification text-center panel-footer faint\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('timeline.no_statuses'))+\"\\n \")]):(_vm.bottomedOut)?_c('div',{staticClass:\"new-status-notification text-center panel-footer faint\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('timeline.no_more_statuses'))+\"\\n \")]):(!_vm.timeline.loading)?_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();_vm.fetchOlderStatuses()}}},[_c('div',{staticClass:\"new-status-notification text-center panel-footer\"},[_vm._v(_vm._s(_vm.$t('timeline.load_older')))])]):_c('div',{staticClass:\"new-status-notification text-center panel-footer\"},[_c('i',{staticClass:\"icon-spin3 animate-spin\"})])])])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('Timeline',{attrs:{\"title\":_vm.$t('nav.public_tl'),\"timeline\":_vm.timeline,\"timeline-name\":'public'}})}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('Timeline',{attrs:{\"title\":_vm.$t('nav.twkn'),\"timeline\":_vm.timeline,\"timeline-name\":'publicAndExternal'}})}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('Timeline',{attrs:{\"title\":_vm.$t('nav.timeline'),\"timeline\":_vm.timeline,\"timeline-name\":'friends'}})}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('Timeline',{attrs:{\"title\":_vm.tag,\"timeline\":_vm.timeline,\"timeline-name\":'tag',\"tag\":_vm.tag}})}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('conversation',{attrs:{\"collapsable\":false,\"isPage\":\"true\",\"statusoid\":_vm.statusoid}})}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.notification.type === 'mention')?_c('status',{attrs:{\"compact\":true,\"statusoid\":_vm.notification.status}}):_c('div',{staticClass:\"non-mention\",class:[_vm.userClass, { highlighted: _vm.userStyle }],style:([ _vm.userStyle ])},[_c('a',{staticClass:\"avatar-container\",attrs:{\"href\":_vm.notification.from_profile.statusnet_profile_url},on:{\"!click\":function($event){$event.stopPropagation();$event.preventDefault();return _vm.toggleUserExpanded($event)}}},[_c('UserAvatar',{attrs:{\"compact\":true,\"betterShadow\":_vm.betterShadow,\"user\":_vm.notification.from_profile}})],1),_vm._v(\" \"),_c('div',{staticClass:\"notification-right\"},[(_vm.userExpanded)?_c('UserCard',{attrs:{\"user\":_vm.getUser(_vm.notification),\"rounded\":true,\"bordered\":true}}):_vm._e(),_vm._v(\" \"),_c('span',{staticClass:\"notification-details\"},[_c('div',{staticClass:\"name-and-action\"},[(!!_vm.notification.from_profile.name_html)?_c('span',{staticClass:\"username\",attrs:{\"title\":'@'+_vm.notification.from_profile.screen_name},domProps:{\"innerHTML\":_vm._s(_vm.notification.from_profile.name_html)}}):_c('span',{staticClass:\"username\",attrs:{\"title\":'@'+_vm.notification.from_profile.screen_name}},[_vm._v(_vm._s(_vm.notification.from_profile.name))]),_vm._v(\" \"),(_vm.notification.type === 'like')?_c('span',[_c('i',{staticClass:\"fa icon-star lit\"}),_vm._v(\" \"),_c('small',[_vm._v(_vm._s(_vm.$t('notifications.favorited_you')))])]):_vm._e(),_vm._v(\" \"),(_vm.notification.type === 'repeat')?_c('span',[_c('i',{staticClass:\"fa icon-retweet lit\",attrs:{\"title\":_vm.$t('tool_tip.repeat')}}),_vm._v(\" \"),_c('small',[_vm._v(_vm._s(_vm.$t('notifications.repeated_you')))])]):_vm._e(),_vm._v(\" \"),(_vm.notification.type === 'follow')?_c('span',[_c('i',{staticClass:\"fa icon-user-plus lit\"}),_vm._v(\" \"),_c('small',[_vm._v(_vm._s(_vm.$t('notifications.followed_you')))])]):_vm._e()]),_vm._v(\" \"),(_vm.notification.type === 'follow')?_c('div',{staticClass:\"timeago\"},[_c('span',{staticClass:\"faint\"},[_c('Timeago',{attrs:{\"time\":_vm.notification.created_at,\"auto-update\":240}})],1)]):_c('div',{staticClass:\"timeago\"},[(_vm.notification.status)?_c('router-link',{staticClass:\"faint-link\",attrs:{\"to\":{ name: 'conversation', params: { id: _vm.notification.status.id } }}},[_c('Timeago',{attrs:{\"time\":_vm.notification.created_at,\"auto-update\":240}})],1):_vm._e()],1)]),_vm._v(\" \"),(_vm.notification.type === 'follow')?_c('div',{staticClass:\"follow-text\"},[_c('router-link',{attrs:{\"to\":_vm.userProfileLink(_vm.notification.from_profile)}},[_vm._v(\"\\n @\"+_vm._s(_vm.notification.from_profile.screen_name)+\"\\n \")])],1):[_c('status',{staticClass:\"faint\",attrs:{\"compact\":true,\"statusoid\":_vm.notification.action,\"noHeading\":true}})]],2)])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"notifications\",class:{ minimal: _vm.minimalMode }},[_c('div',{class:_vm.mainClass},[(!_vm.noHeading)?_c('div',{staticClass:\"panel-heading\"},[_c('div',{staticClass:\"title\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('notifications.notifications'))+\"\\n \"),(_vm.unseenCount)?_c('span',{staticClass:\"badge badge-notification unseen-count\"},[_vm._v(_vm._s(_vm.unseenCount))]):_vm._e()]),_vm._v(\" \"),(_vm.error)?_c('div',{staticClass:\"loadmore-error alert error\",on:{\"click\":function($event){$event.preventDefault();}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('timeline.error_fetching'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.unseenCount)?_c('button',{staticClass:\"read-button\",on:{\"click\":function($event){$event.preventDefault();return _vm.markAsSeen($event)}}},[_vm._v(_vm._s(_vm.$t('notifications.read')))]):_vm._e()]):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"panel-body\"},_vm._l((_vm.visibleNotifications),function(notification){return _c('div',{key:notification.id,staticClass:\"notification\",class:{\"unseen\": !_vm.minimalMode && !notification.seen}},[_c('div',{staticClass:\"notification-overlay\"}),_vm._v(\" \"),_c('notification',{attrs:{\"notification\":notification}})],1)}),0),_vm._v(\" \"),_c('div',{staticClass:\"panel-footer\"},[(_vm.bottomedOut)?_c('div',{staticClass:\"new-status-notification text-center panel-footer faint\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('notifications.no_more_notifications'))+\"\\n \")]):(!_vm.loading)?_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();_vm.fetchOlderNotifications()}}},[_c('div',{staticClass:\"new-status-notification text-center panel-footer\"},[_vm._v(\"\\n \"+_vm._s(_vm.minimalMode ? _vm.$t('interactions.load_older') : _vm.$t('notifications.load_older'))+\"\\n \")])]):_c('div',{staticClass:\"new-status-notification text-center panel-footer\"},[_c('i',{staticClass:\"icon-spin3 animate-spin\"})])])])])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"panel panel-default\"},[_c('div',{staticClass:\"panel-heading\"},[_c('div',{staticClass:\"title\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t(\"nav.interactions\"))+\"\\n \")])]),_vm._v(\" \"),_c('tab-switcher',{ref:\"tabSwitcher\",attrs:{\"onSwitch\":_vm.onModeSwitch}},[_c('span',{attrs:{\"data-tab-dummy\":\"\",\"data-filter\":\"mentions\",\"label\":_vm.$t('nav.mentions')}}),_vm._v(\" \"),_c('span',{attrs:{\"data-tab-dummy\":\"\",\"data-filter\":\"likes+repeats\",\"label\":_vm.$t('interactions.favs_repeats')}}),_vm._v(\" \"),_c('span',{attrs:{\"data-tab-dummy\":\"\",\"data-filter\":\"follows\",\"label\":_vm.$t('interactions.follows')}})]),_vm._v(\" \"),_c('Notifications',{ref:\"notifications\",attrs:{\"noHeading\":true,\"minimalMode\":true,\"filterMode\":_vm.filterMode}})],1)}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('Timeline',{attrs:{\"title\":_vm.$t('nav.dms'),\"timeline\":_vm.timeline,\"timeline-name\":'dms'}})}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"basic-user-card\"},[_c('router-link',{attrs:{\"to\":_vm.userProfileLink(_vm.user)}},[_c('UserAvatar',{staticClass:\"avatar\",attrs:{\"user\":_vm.user},nativeOn:{\"click\":function($event){$event.preventDefault();return _vm.toggleUserExpanded($event)}}})],1),_vm._v(\" \"),(_vm.userExpanded)?_c('div',{staticClass:\"basic-user-card-expanded-content\"},[_c('UserCard',{attrs:{\"user\":_vm.user,\"rounded\":true,\"bordered\":true}})],1):_c('div',{staticClass:\"basic-user-card-collapsed-content\"},[_c('div',{staticClass:\"basic-user-card-user-name\",attrs:{\"title\":_vm.user.name}},[(_vm.user.name_html)?_c('span',{staticClass:\"basic-user-card-user-name-value\",domProps:{\"innerHTML\":_vm._s(_vm.user.name_html)}}):_c('span',{staticClass:\"basic-user-card-user-name-value\"},[_vm._v(_vm._s(_vm.user.name))])]),_vm._v(\" \"),_c('div',[_c('router-link',{staticClass:\"basic-user-card-screen-name\",attrs:{\"to\":_vm.userProfileLink(_vm.user)}},[_vm._v(\"\\n @\"+_vm._s(_vm.user.screen_name)+\"\\n \")])],1),_vm._v(\" \"),_vm._t(\"default\")],2)],1)}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('basic-user-card',{attrs:{\"user\":_vm.user}},[_c('div',{staticClass:\"follow-card-content-container\"},[(!_vm.noFollowsYou && _vm.user.follows_you)?_c('span',{staticClass:\"faint\"},[_vm._v(\"\\n \"+_vm._s(_vm.isMe ? _vm.$t('user_card.its_you') : _vm.$t('user_card.follows_you'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(!_vm.loggedIn)?[(!_vm.user.following)?_c('div',{staticClass:\"follow-card-follow-button\"},[_c('RemoteFollow',{attrs:{\"user\":_vm.user}})],1):_vm._e()]:[(!_vm.user.following)?_c('button',{staticClass:\"btn btn-default follow-card-follow-button\",attrs:{\"disabled\":_vm.inProgress,\"title\":_vm.requestSent ? _vm.$t('user_card.follow_again') : ''},on:{\"click\":_vm.followUser}},[(_vm.inProgress)?[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.follow_progress'))+\"\\n \")]:(_vm.requestSent)?[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.follow_sent'))+\"\\n \")]:[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.follow'))+\"\\n \")]],2):_c('button',{staticClass:\"btn btn-default follow-card-follow-button pressed\",attrs:{\"disabled\":_vm.inProgress},on:{\"click\":_vm.unfollowUser}},[(_vm.inProgress)?[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.follow_progress'))+\"\\n \")]:[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.follow_unfollow'))+\"\\n \")]],2)]],2)])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"list\"},[_vm._l((_vm.items),function(item){return _c('div',{key:_vm.getKey(item),staticClass:\"list-item\"},[_vm._t(\"item\",null,{item:item})],2)}),_vm._v(\" \"),(_vm.items.length === 0 && !!_vm.$slots.empty)?_c('div',{staticClass:\"list-empty-content faint\"},[_vm._t(\"empty\")],2):_vm._e()],2)}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(_vm.user)?_c('div',{staticClass:\"user-profile panel panel-default\"},[_c('UserCard',{attrs:{\"user\":_vm.user,\"switcher\":true,\"selected\":_vm.timeline.viewing,\"rounded\":\"top\"}}),_vm._v(\" \"),_c('tab-switcher',{ref:\"tabSwitcher\",attrs:{\"renderOnlyFocused\":true}},[_c('div',{attrs:{\"label\":_vm.$t('user_card.statuses')}},[_c('div',{staticClass:\"timeline\"},[_vm._l((_vm.user.pinnedStatuseIds),function(statusId){return [(_vm.timeline.statusesObject[statusId])?_c('Conversation',{key:statusId,staticClass:\"status-fadein\",attrs:{\"statusoid\":_vm.timeline.statusesObject[statusId],\"collapsable\":true,\"showPinned\":true}}):_vm._e()]})],2),_vm._v(\" \"),_c('Timeline',{attrs:{\"count\":_vm.user.statuses_count,\"embedded\":true,\"title\":_vm.$t('user_profile.timeline_title'),\"timeline\":_vm.timeline,\"timeline-name\":'user',\"user-id\":_vm.userId}})],1),_vm._v(\" \"),(_vm.followsTabVisible)?_c('div',{attrs:{\"label\":_vm.$t('user_card.followees'),\"disabled\":!_vm.user.friends_count}},[_c('FriendList',{attrs:{\"userId\":_vm.userId},scopedSlots:_vm._u([{key:\"item\",fn:function(ref){\nvar item = ref.item;\nreturn [_c('FollowCard',{attrs:{\"user\":item}})]}}])})],1):_vm._e(),_vm._v(\" \"),(_vm.followersTabVisible)?_c('div',{attrs:{\"label\":_vm.$t('user_card.followers'),\"disabled\":!_vm.user.followers_count}},[_c('FollowerList',{attrs:{\"userId\":_vm.userId},scopedSlots:_vm._u([{key:\"item\",fn:function(ref){\nvar item = ref.item;\nreturn [_c('FollowCard',{attrs:{\"user\":item,\"noFollowsYou\":_vm.isUs}})]}}])})],1):_vm._e(),_vm._v(\" \"),_c('Timeline',{attrs:{\"label\":_vm.$t('user_card.media'),\"disabled\":!_vm.media.visibleStatuses.length,\"embedded\":true,\"title\":_vm.$t('user_card.media'),\"timeline-name\":\"media\",\"timeline\":_vm.media,\"user-id\":_vm.userId}}),_vm._v(\" \"),(_vm.isUs)?_c('Timeline',{attrs:{\"label\":_vm.$t('user_card.favorites'),\"disabled\":!_vm.favorites.visibleStatuses.length,\"embedded\":true,\"title\":_vm.$t('user_card.favorites'),\"timeline-name\":\"favorites\",\"timeline\":_vm.favorites}}):_vm._e()],1)],1):_c('div',{staticClass:\"panel user-profile-placeholder\"},[_c('div',{staticClass:\"panel-heading\"},[_c('div',{staticClass:\"title\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.profile_tab'))+\"\\n \")])]),_vm._v(\" \"),_c('div',{staticClass:\"panel-body\"},[(_vm.error)?_c('span',[_vm._v(_vm._s(_vm.error))]):_c('i',{staticClass:\"icon-spin3 animate-spin\"})])])])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"color-control style-control\",class:{ disabled: !_vm.present || _vm.disabled }},[_c('label',{staticClass:\"label\",attrs:{\"for\":_vm.name}},[_vm._v(\"\\n \"+_vm._s(_vm.label)+\"\\n \")]),_vm._v(\" \"),(typeof _vm.fallback !== 'undefined')?_c('input',{staticClass:\"opt exlcude-disabled\",attrs:{\"id\":_vm.name + '-o',\"type\":\"checkbox\"},domProps:{\"checked\":_vm.present},on:{\"input\":function($event){_vm.$emit('input', typeof _vm.value === 'undefined' ? _vm.fallback : undefined)}}}):_vm._e(),_vm._v(\" \"),(typeof _vm.fallback !== 'undefined')?_c('label',{staticClass:\"opt-l\",attrs:{\"for\":_vm.name + '-o'}}):_vm._e(),_vm._v(\" \"),_c('input',{staticClass:\"color-input\",attrs:{\"id\":_vm.name,\"type\":\"color\",\"disabled\":!_vm.present || _vm.disabled},domProps:{\"value\":_vm.value || _vm.fallback},on:{\"input\":function($event){_vm.$emit('input', $event.target.value)}}}),_vm._v(\" \"),_c('input',{staticClass:\"text-input\",attrs:{\"id\":_vm.name + '-t',\"type\":\"text\",\"disabled\":!_vm.present || _vm.disabled},domProps:{\"value\":_vm.value || _vm.fallback},on:{\"input\":function($event){_vm.$emit('input', $event.target.value)}}})])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"range-control style-control\",class:{ disabled: !_vm.present || _vm.disabled }},[_c('label',{staticClass:\"label\",attrs:{\"for\":_vm.name}},[_vm._v(\"\\n \"+_vm._s(_vm.label)+\"\\n \")]),_vm._v(\" \"),(typeof _vm.fallback !== 'undefined')?_c('input',{staticClass:\"opt exclude-disabled\",attrs:{\"id\":_vm.name + '-o',\"type\":\"checkbox\"},domProps:{\"checked\":_vm.present},on:{\"input\":function($event){_vm.$emit('input', !_vm.present ? _vm.fallback : undefined)}}}):_vm._e(),_vm._v(\" \"),(typeof _vm.fallback !== 'undefined')?_c('label',{staticClass:\"opt-l\",attrs:{\"for\":_vm.name + '-o'}}):_vm._e(),_vm._v(\" \"),_c('input',{staticClass:\"input-number\",attrs:{\"id\":_vm.name,\"type\":\"range\",\"disabled\":!_vm.present || _vm.disabled,\"max\":_vm.max || _vm.hardMax || 100,\"min\":_vm.min || _vm.hardMin || 0,\"step\":_vm.step || 1},domProps:{\"value\":_vm.value || _vm.fallback},on:{\"input\":function($event){_vm.$emit('input', $event.target.value)}}}),_vm._v(\" \"),_c('input',{staticClass:\"input-number\",attrs:{\"id\":_vm.name,\"type\":\"number\",\"disabled\":!_vm.present || _vm.disabled,\"max\":_vm.hardMax,\"min\":_vm.hardMin,\"step\":_vm.step || 1},domProps:{\"value\":_vm.value || _vm.fallback},on:{\"input\":function($event){_vm.$emit('input', $event.target.value)}}})])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"opacity-control style-control\",class:{ disabled: !_vm.present || _vm.disabled }},[_c('label',{staticClass:\"label\",attrs:{\"for\":_vm.name}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.style.common.opacity'))+\"\\n \")]),_vm._v(\" \"),(typeof _vm.fallback !== 'undefined')?_c('input',{staticClass:\"opt exclude-disabled\",attrs:{\"id\":_vm.name + '-o',\"type\":\"checkbox\"},domProps:{\"checked\":_vm.present},on:{\"input\":function($event){_vm.$emit('input', !_vm.present ? _vm.fallback : undefined)}}}):_vm._e(),_vm._v(\" \"),(typeof _vm.fallback !== 'undefined')?_c('label',{staticClass:\"opt-l\",attrs:{\"for\":_vm.name + '-o'}}):_vm._e(),_vm._v(\" \"),_c('input',{staticClass:\"input-number\",attrs:{\"id\":_vm.name,\"type\":\"number\",\"disabled\":!_vm.present || _vm.disabled,\"max\":\"1\",\"min\":\"0\",\"step\":\".05\"},domProps:{\"value\":_vm.value || _vm.fallback},on:{\"input\":function($event){_vm.$emit('input', $event.target.value)}}})])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"shadow-control\",class:{ disabled: !_vm.present }},[_c('div',{staticClass:\"shadow-preview-container\"},[_c('div',{staticClass:\"y-shift-control\",attrs:{\"disabled\":!_vm.present}},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.selected.y),expression:\"selected.y\"}],staticClass:\"input-number\",attrs:{\"disabled\":!_vm.present,\"type\":\"number\"},domProps:{\"value\":(_vm.selected.y)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.selected, \"y\", $event.target.value)}}}),_vm._v(\" \"),_c('div',{staticClass:\"wrap\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.selected.y),expression:\"selected.y\"}],staticClass:\"input-range\",attrs:{\"disabled\":!_vm.present,\"type\":\"range\",\"max\":\"20\",\"min\":\"-20\"},domProps:{\"value\":(_vm.selected.y)},on:{\"__r\":function($event){_vm.$set(_vm.selected, \"y\", $event.target.value)}}})])]),_vm._v(\" \"),_c('div',{staticClass:\"preview-window\"},[_c('div',{staticClass:\"preview-block\",style:(_vm.style)})]),_vm._v(\" \"),_c('div',{staticClass:\"x-shift-control\",attrs:{\"disabled\":!_vm.present}},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.selected.x),expression:\"selected.x\"}],staticClass:\"input-number\",attrs:{\"disabled\":!_vm.present,\"type\":\"number\"},domProps:{\"value\":(_vm.selected.x)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.selected, \"x\", $event.target.value)}}}),_vm._v(\" \"),_c('div',{staticClass:\"wrap\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.selected.x),expression:\"selected.x\"}],staticClass:\"input-range\",attrs:{\"disabled\":!_vm.present,\"type\":\"range\",\"max\":\"20\",\"min\":\"-20\"},domProps:{\"value\":(_vm.selected.x)},on:{\"__r\":function($event){_vm.$set(_vm.selected, \"x\", $event.target.value)}}})])])]),_vm._v(\" \"),_c('div',{staticClass:\"shadow-tweak\"},[_c('div',{staticClass:\"id-control style-control\",attrs:{\"disabled\":_vm.usingFallback}},[_c('label',{staticClass:\"select\",attrs:{\"for\":\"shadow-switcher\",\"disabled\":!_vm.ready || _vm.usingFallback}},[_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.selectedId),expression:\"selectedId\"}],staticClass:\"shadow-switcher\",attrs:{\"disabled\":!_vm.ready || _vm.usingFallback,\"id\":\"shadow-switcher\"},on:{\"change\":function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.selectedId=$event.target.multiple ? $$selectedVal : $$selectedVal[0]}}},_vm._l((_vm.cValue),function(shadow,index){return _c('option',{domProps:{\"value\":index}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.style.shadows.shadow_id', { value: index }))+\"\\n \")])}),0),_vm._v(\" \"),_c('i',{staticClass:\"icon-down-open\"})]),_vm._v(\" \"),_c('button',{staticClass:\"btn btn-default\",attrs:{\"disabled\":!_vm.ready || !_vm.present},on:{\"click\":_vm.del}},[_c('i',{staticClass:\"icon-cancel\"})]),_vm._v(\" \"),_c('button',{staticClass:\"btn btn-default\",attrs:{\"disabled\":!_vm.moveUpValid},on:{\"click\":_vm.moveUp}},[_c('i',{staticClass:\"icon-up-open\"})]),_vm._v(\" \"),_c('button',{staticClass:\"btn btn-default\",attrs:{\"disabled\":!_vm.moveDnValid},on:{\"click\":_vm.moveDn}},[_c('i',{staticClass:\"icon-down-open\"})]),_vm._v(\" \"),_c('button',{staticClass:\"btn btn-default\",attrs:{\"disabled\":_vm.usingFallback},on:{\"click\":_vm.add}},[_c('i',{staticClass:\"icon-plus\"})])]),_vm._v(\" \"),_c('div',{staticClass:\"inset-control style-control\",attrs:{\"disabled\":!_vm.present}},[_c('label',{staticClass:\"label\",attrs:{\"for\":\"inset\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.style.shadows.inset'))+\"\\n \")]),_vm._v(\" \"),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.selected.inset),expression:\"selected.inset\"}],staticClass:\"input-inset\",attrs:{\"disabled\":!_vm.present,\"name\":\"inset\",\"id\":\"inset\",\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.selected.inset)?_vm._i(_vm.selected.inset,null)>-1:(_vm.selected.inset)},on:{\"change\":function($event){var $$a=_vm.selected.inset,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.selected, \"inset\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.selected, \"inset\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.selected, \"inset\", $$c)}}}}),_vm._v(\" \"),_c('label',{staticClass:\"checkbox-label\",attrs:{\"for\":\"inset\"}})]),_vm._v(\" \"),_c('div',{staticClass:\"blur-control style-control\",attrs:{\"disabled\":!_vm.present}},[_c('label',{staticClass:\"label\",attrs:{\"for\":\"spread\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.style.shadows.blur'))+\"\\n \")]),_vm._v(\" \"),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.selected.blur),expression:\"selected.blur\"}],staticClass:\"input-range\",attrs:{\"disabled\":!_vm.present,\"name\":\"blur\",\"id\":\"blur\",\"type\":\"range\",\"max\":\"20\",\"min\":\"0\"},domProps:{\"value\":(_vm.selected.blur)},on:{\"__r\":function($event){_vm.$set(_vm.selected, \"blur\", $event.target.value)}}}),_vm._v(\" \"),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.selected.blur),expression:\"selected.blur\"}],staticClass:\"input-number\",attrs:{\"disabled\":!_vm.present,\"type\":\"number\",\"min\":\"0\"},domProps:{\"value\":(_vm.selected.blur)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.selected, \"blur\", $event.target.value)}}})]),_vm._v(\" \"),_c('div',{staticClass:\"spread-control style-control\",attrs:{\"disabled\":!_vm.present}},[_c('label',{staticClass:\"label\",attrs:{\"for\":\"spread\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.style.shadows.spread'))+\"\\n \")]),_vm._v(\" \"),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.selected.spread),expression:\"selected.spread\"}],staticClass:\"input-range\",attrs:{\"disabled\":!_vm.present,\"name\":\"spread\",\"id\":\"spread\",\"type\":\"range\",\"max\":\"20\",\"min\":\"-20\"},domProps:{\"value\":(_vm.selected.spread)},on:{\"__r\":function($event){_vm.$set(_vm.selected, \"spread\", $event.target.value)}}}),_vm._v(\" \"),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.selected.spread),expression:\"selected.spread\"}],staticClass:\"input-number\",attrs:{\"disabled\":!_vm.present,\"type\":\"number\"},domProps:{\"value\":(_vm.selected.spread)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.selected, \"spread\", $event.target.value)}}})]),_vm._v(\" \"),_c('ColorInput',{attrs:{\"disabled\":!_vm.present,\"label\":_vm.$t('settings.style.common.color'),\"name\":\"shadow\"},model:{value:(_vm.selected.color),callback:function ($$v) {_vm.$set(_vm.selected, \"color\", $$v)},expression:\"selected.color\"}}),_vm._v(\" \"),_c('OpacityInput',{attrs:{\"disabled\":!_vm.present},model:{value:(_vm.selected.alpha),callback:function ($$v) {_vm.$set(_vm.selected, \"alpha\", $$v)},expression:\"selected.alpha\"}}),_vm._v(\" \"),_c('p',[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.style.shadows.hint'))+\"\\n \")])],1)])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"font-control style-control\",class:{ custom: _vm.isCustom }},[_c('label',{staticClass:\"label\",attrs:{\"for\":_vm.preset === 'custom' ? _vm.name : _vm.name + '-font-switcher'}},[_vm._v(\"\\n \"+_vm._s(_vm.label)+\"\\n \")]),_vm._v(\" \"),(typeof _vm.fallback !== 'undefined')?_c('input',{staticClass:\"opt exlcude-disabled\",attrs:{\"type\":\"checkbox\",\"id\":_vm.name + '-o'},domProps:{\"checked\":_vm.present},on:{\"input\":function($event){_vm.$emit('input', typeof _vm.value === 'undefined' ? _vm.fallback : undefined)}}}):_vm._e(),_vm._v(\" \"),(typeof _vm.fallback !== 'undefined')?_c('label',{staticClass:\"opt-l\",attrs:{\"for\":_vm.name + '-o'}}):_vm._e(),_vm._v(\" \"),_c('label',{staticClass:\"select\",attrs:{\"for\":_vm.name + '-font-switcher',\"disabled\":!_vm.present}},[_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.preset),expression:\"preset\"}],staticClass:\"font-switcher\",attrs:{\"disabled\":!_vm.present,\"id\":_vm.name + '-font-switcher'},on:{\"change\":function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.preset=$event.target.multiple ? $$selectedVal : $$selectedVal[0]}}},_vm._l((_vm.availableOptions),function(option){return _c('option',{domProps:{\"value\":option}},[_vm._v(\"\\n \"+_vm._s(option === 'custom' ? _vm.$t('settings.style.fonts.custom') : option)+\"\\n \")])}),0),_vm._v(\" \"),_c('i',{staticClass:\"icon-down-open\"})]),_vm._v(\" \"),(_vm.isCustom)?_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.family),expression:\"family\"}],staticClass:\"custom-font\",attrs:{\"type\":\"text\",\"id\":_vm.name},domProps:{\"value\":(_vm.family)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.family=$event.target.value}}}):_vm._e()])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.contrast)?_c('span',{staticClass:\"contrast-ratio\"},[_c('span',{staticClass:\"rating\",attrs:{\"title\":_vm.hint}},[(_vm.contrast.aaa)?_c('span',[_c('i',{staticClass:\"icon-thumbs-up-alt\"})]):_vm._e(),_vm._v(\" \"),(!_vm.contrast.aaa && _vm.contrast.aa)?_c('span',[_c('i',{staticClass:\"icon-adjust\"})]):_vm._e(),_vm._v(\" \"),(!_vm.contrast.aaa && !_vm.contrast.aa)?_c('span',[_c('i',{staticClass:\"icon-attention\"})]):_vm._e()]),_vm._v(\" \"),(_vm.contrast && _vm.large)?_c('span',{staticClass:\"rating\",attrs:{\"title\":_vm.hint_18pt}},[(_vm.contrast.laaa)?_c('span',[_c('i',{staticClass:\"icon-thumbs-up-alt\"})]):_vm._e(),_vm._v(\" \"),(!_vm.contrast.laaa && _vm.contrast.laa)?_c('span',[_c('i',{staticClass:\"icon-adjust\"})]):_vm._e(),_vm._v(\" \"),(!_vm.contrast.laaa && !_vm.contrast.laa)?_c('span',[_c('i',{staticClass:\"icon-attention\"})]):_vm._e()]):_vm._e()]):_vm._e()}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"import-export-container\"},[_vm._t(\"before\"),_vm._v(\" \"),_c('button',{staticClass:\"btn\",on:{\"click\":_vm.exportData}},[_vm._v(_vm._s(_vm.exportLabel))]),_vm._v(\" \"),_c('button',{staticClass:\"btn\",on:{\"click\":_vm.importData}},[_vm._v(_vm._s(_vm.importLabel))]),_vm._v(\" \"),_vm._t(\"afterButtons\"),_vm._v(\" \"),(_vm.importFailed)?_c('p',{staticClass:\"alert error\"},[_vm._v(_vm._s(_vm.importFailedText))]):_vm._e(),_vm._v(\" \"),_vm._t(\"afterError\")],2)}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"style-switcher\"},[_c('div',{staticClass:\"presets-container\"},[_c('div',{staticClass:\"save-load\"},[_c('export-import',{attrs:{\"exportObject\":_vm.exportedTheme,\"exportLabel\":_vm.$t(\"settings.export_theme\"),\"importLabel\":_vm.$t(\"settings.import_theme\"),\"importFailedText\":_vm.$t(\"settings.invalid_theme_imported\"),\"onImport\":_vm.onImport,\"validator\":_vm.importValidator}},[_c('template',{slot:\"before\"},[_c('div',{staticClass:\"presets\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.presets'))+\"\\n \"),_c('label',{staticClass:\"select\",attrs:{\"for\":\"preset-switcher\"}},[_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.selected),expression:\"selected\"}],staticClass:\"preset-switcher\",attrs:{\"id\":\"preset-switcher\"},on:{\"change\":function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.selected=$event.target.multiple ? $$selectedVal : $$selectedVal[0]}}},_vm._l((_vm.availableStyles),function(style){return _c('option',{style:({\n backgroundColor: style[1] || style.theme.colors.bg,\n color: style[3] || style.theme.colors.text\n }),domProps:{\"value\":style}},[_vm._v(\"\\n \"+_vm._s(style[0] || style.name)+\"\\n \")])}),0),_vm._v(\" \"),_c('i',{staticClass:\"icon-down-open\"})])])])],2)],1),_vm._v(\" \"),_c('div',{staticClass:\"save-load-options\"},[_c('span',{staticClass:\"keep-option\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.keepColor),expression:\"keepColor\"}],attrs:{\"id\":\"keep-color\",\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.keepColor)?_vm._i(_vm.keepColor,null)>-1:(_vm.keepColor)},on:{\"change\":function($event){var $$a=_vm.keepColor,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.keepColor=$$a.concat([$$v]))}else{$$i>-1&&(_vm.keepColor=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.keepColor=$$c}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"keep-color\"}},[_vm._v(_vm._s(_vm.$t('settings.style.switcher.keep_color')))])]),_vm._v(\" \"),_c('span',{staticClass:\"keep-option\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.keepShadows),expression:\"keepShadows\"}],attrs:{\"id\":\"keep-shadows\",\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.keepShadows)?_vm._i(_vm.keepShadows,null)>-1:(_vm.keepShadows)},on:{\"change\":function($event){var $$a=_vm.keepShadows,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.keepShadows=$$a.concat([$$v]))}else{$$i>-1&&(_vm.keepShadows=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.keepShadows=$$c}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"keep-shadows\"}},[_vm._v(_vm._s(_vm.$t('settings.style.switcher.keep_shadows')))])]),_vm._v(\" \"),_c('span',{staticClass:\"keep-option\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.keepOpacity),expression:\"keepOpacity\"}],attrs:{\"id\":\"keep-opacity\",\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.keepOpacity)?_vm._i(_vm.keepOpacity,null)>-1:(_vm.keepOpacity)},on:{\"change\":function($event){var $$a=_vm.keepOpacity,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.keepOpacity=$$a.concat([$$v]))}else{$$i>-1&&(_vm.keepOpacity=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.keepOpacity=$$c}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"keep-opacity\"}},[_vm._v(_vm._s(_vm.$t('settings.style.switcher.keep_opacity')))])]),_vm._v(\" \"),_c('span',{staticClass:\"keep-option\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.keepRoundness),expression:\"keepRoundness\"}],attrs:{\"id\":\"keep-roundness\",\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.keepRoundness)?_vm._i(_vm.keepRoundness,null)>-1:(_vm.keepRoundness)},on:{\"change\":function($event){var $$a=_vm.keepRoundness,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.keepRoundness=$$a.concat([$$v]))}else{$$i>-1&&(_vm.keepRoundness=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.keepRoundness=$$c}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"keep-roundness\"}},[_vm._v(_vm._s(_vm.$t('settings.style.switcher.keep_roundness')))])]),_vm._v(\" \"),_c('span',{staticClass:\"keep-option\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.keepFonts),expression:\"keepFonts\"}],attrs:{\"id\":\"keep-fonts\",\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.keepFonts)?_vm._i(_vm.keepFonts,null)>-1:(_vm.keepFonts)},on:{\"change\":function($event){var $$a=_vm.keepFonts,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.keepFonts=$$a.concat([$$v]))}else{$$i>-1&&(_vm.keepFonts=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.keepFonts=$$c}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"keep-fonts\"}},[_vm._v(_vm._s(_vm.$t('settings.style.switcher.keep_fonts')))])]),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.$t('settings.style.switcher.save_load_hint')))])])]),_vm._v(\" \"),_c('div',{staticClass:\"preview-container\"},[_c('preview',{style:(_vm.previewRules)})],1),_vm._v(\" \"),_c('keep-alive',[_c('tab-switcher',{key:\"style-tweak\"},[_c('div',{staticClass:\"color-container\",attrs:{\"label\":_vm.$t('settings.style.common_colors._tab_label')}},[_c('div',{staticClass:\"tab-header\"},[_c('p',[_vm._v(_vm._s(_vm.$t('settings.theme_help')))]),_vm._v(\" \"),_c('button',{staticClass:\"btn\",on:{\"click\":_vm.clearOpacity}},[_vm._v(_vm._s(_vm.$t('settings.style.switcher.clear_opacity')))]),_vm._v(\" \"),_c('button',{staticClass:\"btn\",on:{\"click\":_vm.clearV1}},[_vm._v(_vm._s(_vm.$t('settings.style.switcher.clear_all')))])]),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.$t('settings.theme_help_v2_1')))]),_vm._v(\" \"),_c('h4',[_vm._v(_vm._s(_vm.$t('settings.style.common_colors.main')))]),_vm._v(\" \"),_c('div',{staticClass:\"color-item\"},[_c('ColorInput',{attrs:{\"name\":\"bgColor\",\"label\":_vm.$t('settings.background')},model:{value:(_vm.bgColorLocal),callback:function ($$v) {_vm.bgColorLocal=$$v},expression:\"bgColorLocal\"}}),_vm._v(\" \"),_c('OpacityInput',{attrs:{\"name\":\"bgOpacity\",\"fallback\":_vm.previewTheme.opacity.bg || 1},model:{value:(_vm.bgOpacityLocal),callback:function ($$v) {_vm.bgOpacityLocal=$$v},expression:\"bgOpacityLocal\"}}),_vm._v(\" \"),_c('ColorInput',{attrs:{\"name\":\"textColor\",\"label\":_vm.$t('settings.text')},model:{value:(_vm.textColorLocal),callback:function ($$v) {_vm.textColorLocal=$$v},expression:\"textColorLocal\"}}),_vm._v(\" \"),_c('ContrastRatio',{attrs:{\"contrast\":_vm.previewContrast.bgText}}),_vm._v(\" \"),_c('ColorInput',{attrs:{\"name\":\"linkColor\",\"label\":_vm.$t('settings.links')},model:{value:(_vm.linkColorLocal),callback:function ($$v) {_vm.linkColorLocal=$$v},expression:\"linkColorLocal\"}}),_vm._v(\" \"),_c('ContrastRatio',{attrs:{\"contrast\":_vm.previewContrast.bgLink}})],1),_vm._v(\" \"),_c('div',{staticClass:\"color-item\"},[_c('ColorInput',{attrs:{\"name\":\"fgColor\",\"label\":_vm.$t('settings.foreground')},model:{value:(_vm.fgColorLocal),callback:function ($$v) {_vm.fgColorLocal=$$v},expression:\"fgColorLocal\"}}),_vm._v(\" \"),_c('ColorInput',{attrs:{\"name\":\"fgTextColor\",\"label\":_vm.$t('settings.text'),\"fallback\":_vm.previewTheme.colors.fgText},model:{value:(_vm.fgTextColorLocal),callback:function ($$v) {_vm.fgTextColorLocal=$$v},expression:\"fgTextColorLocal\"}}),_vm._v(\" \"),_c('ColorInput',{attrs:{\"name\":\"fgLinkColor\",\"label\":_vm.$t('settings.links'),\"fallback\":_vm.previewTheme.colors.fgLink},model:{value:(_vm.fgLinkColorLocal),callback:function ($$v) {_vm.fgLinkColorLocal=$$v},expression:\"fgLinkColorLocal\"}}),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.$t('settings.style.common_colors.foreground_hint')))])],1),_vm._v(\" \"),_c('h4',[_vm._v(_vm._s(_vm.$t('settings.style.common_colors.rgbo')))]),_vm._v(\" \"),_c('div',{staticClass:\"color-item\"},[_c('ColorInput',{attrs:{\"name\":\"cRedColor\",\"label\":_vm.$t('settings.cRed')},model:{value:(_vm.cRedColorLocal),callback:function ($$v) {_vm.cRedColorLocal=$$v},expression:\"cRedColorLocal\"}}),_vm._v(\" \"),_c('ContrastRatio',{attrs:{\"contrast\":_vm.previewContrast.bgRed}}),_vm._v(\" \"),_c('ColorInput',{attrs:{\"name\":\"cBlueColor\",\"label\":_vm.$t('settings.cBlue')},model:{value:(_vm.cBlueColorLocal),callback:function ($$v) {_vm.cBlueColorLocal=$$v},expression:\"cBlueColorLocal\"}}),_vm._v(\" \"),_c('ContrastRatio',{attrs:{\"contrast\":_vm.previewContrast.bgBlue}})],1),_vm._v(\" \"),_c('div',{staticClass:\"color-item\"},[_c('ColorInput',{attrs:{\"name\":\"cGreenColor\",\"label\":_vm.$t('settings.cGreen')},model:{value:(_vm.cGreenColorLocal),callback:function ($$v) {_vm.cGreenColorLocal=$$v},expression:\"cGreenColorLocal\"}}),_vm._v(\" \"),_c('ContrastRatio',{attrs:{\"contrast\":_vm.previewContrast.bgGreen}}),_vm._v(\" \"),_c('ColorInput',{attrs:{\"name\":\"cOrangeColor\",\"label\":_vm.$t('settings.cOrange')},model:{value:(_vm.cOrangeColorLocal),callback:function ($$v) {_vm.cOrangeColorLocal=$$v},expression:\"cOrangeColorLocal\"}}),_vm._v(\" \"),_c('ContrastRatio',{attrs:{\"contrast\":_vm.previewContrast.bgOrange}})],1),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.$t('settings.theme_help_v2_2')))])]),_vm._v(\" \"),_c('div',{staticClass:\"color-container\",attrs:{\"label\":_vm.$t('settings.style.advanced_colors._tab_label')}},[_c('div',{staticClass:\"tab-header\"},[_c('p',[_vm._v(_vm._s(_vm.$t('settings.theme_help')))]),_vm._v(\" \"),_c('button',{staticClass:\"btn\",on:{\"click\":_vm.clearOpacity}},[_vm._v(_vm._s(_vm.$t('settings.style.switcher.clear_opacity')))]),_vm._v(\" \"),_c('button',{staticClass:\"btn\",on:{\"click\":_vm.clearV1}},[_vm._v(_vm._s(_vm.$t('settings.style.switcher.clear_all')))])]),_vm._v(\" \"),_c('div',{staticClass:\"color-item\"},[_c('h4',[_vm._v(_vm._s(_vm.$t('settings.style.advanced_colors.alert')))]),_vm._v(\" \"),_c('ColorInput',{attrs:{\"name\":\"alertError\",\"label\":_vm.$t('settings.style.advanced_colors.alert_error'),\"fallback\":_vm.previewTheme.colors.alertError},model:{value:(_vm.alertErrorColorLocal),callback:function ($$v) {_vm.alertErrorColorLocal=$$v},expression:\"alertErrorColorLocal\"}}),_vm._v(\" \"),_c('ContrastRatio',{attrs:{\"contrast\":_vm.previewContrast.alertError}})],1),_vm._v(\" \"),_c('div',{staticClass:\"color-item\"},[_c('h4',[_vm._v(_vm._s(_vm.$t('settings.style.advanced_colors.badge')))]),_vm._v(\" \"),_c('ColorInput',{attrs:{\"name\":\"badgeNotification\",\"label\":_vm.$t('settings.style.advanced_colors.badge_notification'),\"fallback\":_vm.previewTheme.colors.badgeNotification},model:{value:(_vm.badgeNotificationColorLocal),callback:function ($$v) {_vm.badgeNotificationColorLocal=$$v},expression:\"badgeNotificationColorLocal\"}})],1),_vm._v(\" \"),_c('div',{staticClass:\"color-item\"},[_c('h4',[_vm._v(_vm._s(_vm.$t('settings.style.advanced_colors.panel_header')))]),_vm._v(\" \"),_c('ColorInput',{attrs:{\"name\":\"panelColor\",\"fallback\":_vm.fgColorLocal,\"label\":_vm.$t('settings.background')},model:{value:(_vm.panelColorLocal),callback:function ($$v) {_vm.panelColorLocal=$$v},expression:\"panelColorLocal\"}}),_vm._v(\" \"),_c('OpacityInput',{attrs:{\"name\":\"panelOpacity\",\"fallback\":_vm.previewTheme.opacity.panel || 1},model:{value:(_vm.panelOpacityLocal),callback:function ($$v) {_vm.panelOpacityLocal=$$v},expression:\"panelOpacityLocal\"}}),_vm._v(\" \"),_c('ColorInput',{attrs:{\"name\":\"panelTextColor\",\"fallback\":_vm.previewTheme.colors.panelText,\"label\":_vm.$t('settings.text')},model:{value:(_vm.panelTextColorLocal),callback:function ($$v) {_vm.panelTextColorLocal=$$v},expression:\"panelTextColorLocal\"}}),_vm._v(\" \"),_c('ContrastRatio',{attrs:{\"contrast\":_vm.previewContrast.panelText,\"large\":\"1\"}}),_vm._v(\" \"),_c('ColorInput',{attrs:{\"name\":\"panelLinkColor\",\"fallback\":_vm.previewTheme.colors.panelLink,\"label\":_vm.$t('settings.links')},model:{value:(_vm.panelLinkColorLocal),callback:function ($$v) {_vm.panelLinkColorLocal=$$v},expression:\"panelLinkColorLocal\"}}),_vm._v(\" \"),_c('ContrastRatio',{attrs:{\"contrast\":_vm.previewContrast.panelLink,\"large\":\"1\"}})],1),_vm._v(\" \"),_c('div',{staticClass:\"color-item\"},[_c('h4',[_vm._v(_vm._s(_vm.$t('settings.style.advanced_colors.top_bar')))]),_vm._v(\" \"),_c('ColorInput',{attrs:{\"name\":\"topBarColor\",\"fallback\":_vm.fgColorLocal,\"label\":_vm.$t('settings.background')},model:{value:(_vm.topBarColorLocal),callback:function ($$v) {_vm.topBarColorLocal=$$v},expression:\"topBarColorLocal\"}}),_vm._v(\" \"),_c('ColorInput',{attrs:{\"name\":\"topBarTextColor\",\"fallback\":_vm.previewTheme.colors.topBarText,\"label\":_vm.$t('settings.text')},model:{value:(_vm.topBarTextColorLocal),callback:function ($$v) {_vm.topBarTextColorLocal=$$v},expression:\"topBarTextColorLocal\"}}),_vm._v(\" \"),_c('ContrastRatio',{attrs:{\"contrast\":_vm.previewContrast.topBarText}}),_vm._v(\" \"),_c('ColorInput',{attrs:{\"name\":\"topBarLinkColor\",\"fallback\":_vm.previewTheme.colors.topBarLink,\"label\":_vm.$t('settings.links')},model:{value:(_vm.topBarLinkColorLocal),callback:function ($$v) {_vm.topBarLinkColorLocal=$$v},expression:\"topBarLinkColorLocal\"}}),_vm._v(\" \"),_c('ContrastRatio',{attrs:{\"contrast\":_vm.previewContrast.topBarLink}})],1),_vm._v(\" \"),_c('div',{staticClass:\"color-item\"},[_c('h4',[_vm._v(_vm._s(_vm.$t('settings.style.advanced_colors.inputs')))]),_vm._v(\" \"),_c('ColorInput',{attrs:{\"name\":\"inputColor\",\"fallback\":_vm.fgColorLocal,\"label\":_vm.$t('settings.background')},model:{value:(_vm.inputColorLocal),callback:function ($$v) {_vm.inputColorLocal=$$v},expression:\"inputColorLocal\"}}),_vm._v(\" \"),_c('OpacityInput',{attrs:{\"name\":\"inputOpacity\",\"fallback\":_vm.previewTheme.opacity.input || 1},model:{value:(_vm.inputOpacityLocal),callback:function ($$v) {_vm.inputOpacityLocal=$$v},expression:\"inputOpacityLocal\"}}),_vm._v(\" \"),_c('ColorInput',{attrs:{\"name\":\"inputTextColor\",\"fallback\":_vm.previewTheme.colors.inputText,\"label\":_vm.$t('settings.text')},model:{value:(_vm.inputTextColorLocal),callback:function ($$v) {_vm.inputTextColorLocal=$$v},expression:\"inputTextColorLocal\"}}),_vm._v(\" \"),_c('ContrastRatio',{attrs:{\"contrast\":_vm.previewContrast.inputText}})],1),_vm._v(\" \"),_c('div',{staticClass:\"color-item\"},[_c('h4',[_vm._v(_vm._s(_vm.$t('settings.style.advanced_colors.buttons')))]),_vm._v(\" \"),_c('ColorInput',{attrs:{\"name\":\"btnColor\",\"fallback\":_vm.fgColorLocal,\"label\":_vm.$t('settings.background')},model:{value:(_vm.btnColorLocal),callback:function ($$v) {_vm.btnColorLocal=$$v},expression:\"btnColorLocal\"}}),_vm._v(\" \"),_c('OpacityInput',{attrs:{\"name\":\"btnOpacity\",\"fallback\":_vm.previewTheme.opacity.btn || 1},model:{value:(_vm.btnOpacityLocal),callback:function ($$v) {_vm.btnOpacityLocal=$$v},expression:\"btnOpacityLocal\"}}),_vm._v(\" \"),_c('ColorInput',{attrs:{\"name\":\"btnTextColor\",\"fallback\":_vm.previewTheme.colors.btnText,\"label\":_vm.$t('settings.text')},model:{value:(_vm.btnTextColorLocal),callback:function ($$v) {_vm.btnTextColorLocal=$$v},expression:\"btnTextColorLocal\"}}),_vm._v(\" \"),_c('ContrastRatio',{attrs:{\"contrast\":_vm.previewContrast.btnText}})],1),_vm._v(\" \"),_c('div',{staticClass:\"color-item\"},[_c('h4',[_vm._v(_vm._s(_vm.$t('settings.style.advanced_colors.borders')))]),_vm._v(\" \"),_c('ColorInput',{attrs:{\"name\":\"borderColor\",\"fallback\":_vm.previewTheme.colors.border,\"label\":_vm.$t('settings.style.common.color')},model:{value:(_vm.borderColorLocal),callback:function ($$v) {_vm.borderColorLocal=$$v},expression:\"borderColorLocal\"}}),_vm._v(\" \"),_c('OpacityInput',{attrs:{\"name\":\"borderOpacity\",\"fallback\":_vm.previewTheme.opacity.border || 1},model:{value:(_vm.borderOpacityLocal),callback:function ($$v) {_vm.borderOpacityLocal=$$v},expression:\"borderOpacityLocal\"}})],1),_vm._v(\" \"),_c('div',{staticClass:\"color-item\"},[_c('h4',[_vm._v(_vm._s(_vm.$t('settings.style.advanced_colors.faint_text')))]),_vm._v(\" \"),_c('ColorInput',{attrs:{\"name\":\"faintColor\",\"fallback\":_vm.previewTheme.colors.faint || 1,\"label\":_vm.$t('settings.text')},model:{value:(_vm.faintColorLocal),callback:function ($$v) {_vm.faintColorLocal=$$v},expression:\"faintColorLocal\"}}),_vm._v(\" \"),_c('ColorInput',{attrs:{\"name\":\"faintLinkColor\",\"fallback\":_vm.previewTheme.colors.faintLink,\"label\":_vm.$t('settings.links')},model:{value:(_vm.faintLinkColorLocal),callback:function ($$v) {_vm.faintLinkColorLocal=$$v},expression:\"faintLinkColorLocal\"}}),_vm._v(\" \"),_c('ColorInput',{attrs:{\"name\":\"panelFaintColor\",\"fallback\":_vm.previewTheme.colors.panelFaint,\"label\":_vm.$t('settings.style.advanced_colors.panel_header')},model:{value:(_vm.panelFaintColorLocal),callback:function ($$v) {_vm.panelFaintColorLocal=$$v},expression:\"panelFaintColorLocal\"}}),_vm._v(\" \"),_c('OpacityInput',{attrs:{\"name\":\"faintOpacity\",\"fallback\":_vm.previewTheme.opacity.faint || 0.5},model:{value:(_vm.faintOpacityLocal),callback:function ($$v) {_vm.faintOpacityLocal=$$v},expression:\"faintOpacityLocal\"}})],1)]),_vm._v(\" \"),_c('div',{staticClass:\"radius-container\",attrs:{\"label\":_vm.$t('settings.style.radii._tab_label')}},[_c('div',{staticClass:\"tab-header\"},[_c('p',[_vm._v(_vm._s(_vm.$t('settings.radii_help')))]),_vm._v(\" \"),_c('button',{staticClass:\"btn\",on:{\"click\":_vm.clearRoundness}},[_vm._v(_vm._s(_vm.$t('settings.style.switcher.clear_all')))])]),_vm._v(\" \"),_c('RangeInput',{attrs:{\"name\":\"btnRadius\",\"label\":_vm.$t('settings.btnRadius'),\"fallback\":_vm.previewTheme.radii.btn,\"max\":\"16\",\"hardMin\":\"0\"},model:{value:(_vm.btnRadiusLocal),callback:function ($$v) {_vm.btnRadiusLocal=$$v},expression:\"btnRadiusLocal\"}}),_vm._v(\" \"),_c('RangeInput',{attrs:{\"name\":\"inputRadius\",\"label\":_vm.$t('settings.inputRadius'),\"fallback\":_vm.previewTheme.radii.input,\"max\":\"9\",\"hardMin\":\"0\"},model:{value:(_vm.inputRadiusLocal),callback:function ($$v) {_vm.inputRadiusLocal=$$v},expression:\"inputRadiusLocal\"}}),_vm._v(\" \"),_c('RangeInput',{attrs:{\"name\":\"checkboxRadius\",\"label\":_vm.$t('settings.checkboxRadius'),\"fallback\":_vm.previewTheme.radii.checkbox,\"max\":\"16\",\"hardMin\":\"0\"},model:{value:(_vm.checkboxRadiusLocal),callback:function ($$v) {_vm.checkboxRadiusLocal=$$v},expression:\"checkboxRadiusLocal\"}}),_vm._v(\" \"),_c('RangeInput',{attrs:{\"name\":\"panelRadius\",\"label\":_vm.$t('settings.panelRadius'),\"fallback\":_vm.previewTheme.radii.panel,\"max\":\"50\",\"hardMin\":\"0\"},model:{value:(_vm.panelRadiusLocal),callback:function ($$v) {_vm.panelRadiusLocal=$$v},expression:\"panelRadiusLocal\"}}),_vm._v(\" \"),_c('RangeInput',{attrs:{\"name\":\"avatarRadius\",\"label\":_vm.$t('settings.avatarRadius'),\"fallback\":_vm.previewTheme.radii.avatar,\"max\":\"28\",\"hardMin\":\"0\"},model:{value:(_vm.avatarRadiusLocal),callback:function ($$v) {_vm.avatarRadiusLocal=$$v},expression:\"avatarRadiusLocal\"}}),_vm._v(\" \"),_c('RangeInput',{attrs:{\"name\":\"avatarAltRadius\",\"label\":_vm.$t('settings.avatarAltRadius'),\"fallback\":_vm.previewTheme.radii.avatarAlt,\"max\":\"28\",\"hardMin\":\"0\"},model:{value:(_vm.avatarAltRadiusLocal),callback:function ($$v) {_vm.avatarAltRadiusLocal=$$v},expression:\"avatarAltRadiusLocal\"}}),_vm._v(\" \"),_c('RangeInput',{attrs:{\"name\":\"attachmentRadius\",\"label\":_vm.$t('settings.attachmentRadius'),\"fallback\":_vm.previewTheme.radii.attachment,\"max\":\"50\",\"hardMin\":\"0\"},model:{value:(_vm.attachmentRadiusLocal),callback:function ($$v) {_vm.attachmentRadiusLocal=$$v},expression:\"attachmentRadiusLocal\"}}),_vm._v(\" \"),_c('RangeInput',{attrs:{\"name\":\"tooltipRadius\",\"label\":_vm.$t('settings.tooltipRadius'),\"fallback\":_vm.previewTheme.radii.tooltip,\"max\":\"50\",\"hardMin\":\"0\"},model:{value:(_vm.tooltipRadiusLocal),callback:function ($$v) {_vm.tooltipRadiusLocal=$$v},expression:\"tooltipRadiusLocal\"}})],1),_vm._v(\" \"),_c('div',{staticClass:\"shadow-container\",attrs:{\"label\":_vm.$t('settings.style.shadows._tab_label')}},[_c('div',{staticClass:\"tab-header shadow-selector\"},[_c('div',{staticClass:\"select-container\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.style.shadows.component'))+\"\\n \"),_c('label',{staticClass:\"select\",attrs:{\"for\":\"shadow-switcher\"}},[_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.shadowSelected),expression:\"shadowSelected\"}],staticClass:\"shadow-switcher\",attrs:{\"id\":\"shadow-switcher\"},on:{\"change\":function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.shadowSelected=$event.target.multiple ? $$selectedVal : $$selectedVal[0]}}},_vm._l((_vm.shadowsAvailable),function(shadow){return _c('option',{domProps:{\"value\":shadow}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.style.shadows.components.' + shadow))+\"\\n \")])}),0),_vm._v(\" \"),_c('i',{staticClass:\"icon-down-open\"})])]),_vm._v(\" \"),_c('div',{staticClass:\"override\"},[_c('label',{staticClass:\"label\",attrs:{\"for\":\"override\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.style.shadows.override'))+\"\\n \")]),_vm._v(\" \"),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.currentShadowOverriden),expression:\"currentShadowOverriden\"}],staticClass:\"input-override\",attrs:{\"name\":\"override\",\"id\":\"override\",\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.currentShadowOverriden)?_vm._i(_vm.currentShadowOverriden,null)>-1:(_vm.currentShadowOverriden)},on:{\"change\":function($event){var $$a=_vm.currentShadowOverriden,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.currentShadowOverriden=$$a.concat([$$v]))}else{$$i>-1&&(_vm.currentShadowOverriden=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.currentShadowOverriden=$$c}}}}),_vm._v(\" \"),_c('label',{staticClass:\"checkbox-label\",attrs:{\"for\":\"override\"}})]),_vm._v(\" \"),_c('button',{staticClass:\"btn\",on:{\"click\":_vm.clearShadows}},[_vm._v(_vm._s(_vm.$t('settings.style.switcher.clear_all')))])]),_vm._v(\" \"),_c('shadow-control',{attrs:{\"ready\":!!_vm.currentShadowFallback,\"fallback\":_vm.currentShadowFallback},model:{value:(_vm.currentShadow),callback:function ($$v) {_vm.currentShadow=$$v},expression:\"currentShadow\"}}),_vm._v(\" \"),(_vm.shadowSelected === 'avatar' || _vm.shadowSelected === 'avatarStatus')?_c('div',[_c('i18n',{attrs:{\"path\":\"settings.style.shadows.filter_hint.always_drop_shadow\",\"tag\":\"p\"}},[_c('code',[_vm._v(\"filter: drop-shadow()\")])]),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.$t('settings.style.shadows.filter_hint.avatar_inset')))]),_vm._v(\" \"),_c('i18n',{attrs:{\"path\":\"settings.style.shadows.filter_hint.drop_shadow_syntax\",\"tag\":\"p\"}},[_c('code',[_vm._v(\"drop-shadow\")]),_vm._v(\" \"),_c('code',[_vm._v(\"spread-radius\")]),_vm._v(\" \"),_c('code',[_vm._v(\"inset\")])]),_vm._v(\" \"),_c('i18n',{attrs:{\"path\":\"settings.style.shadows.filter_hint.inset_classic\",\"tag\":\"p\"}},[_c('code',[_vm._v(\"box-shadow\")])]),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.$t('settings.style.shadows.filter_hint.spread_zero')))])],1):_vm._e()],1),_vm._v(\" \"),_c('div',{staticClass:\"fonts-container\",attrs:{\"label\":_vm.$t('settings.style.fonts._tab_label')}},[_c('div',{staticClass:\"tab-header\"},[_c('p',[_vm._v(_vm._s(_vm.$t('settings.style.fonts.help')))]),_vm._v(\" \"),_c('button',{staticClass:\"btn\",on:{\"click\":_vm.clearFonts}},[_vm._v(_vm._s(_vm.$t('settings.style.switcher.clear_all')))])]),_vm._v(\" \"),_c('FontControl',{attrs:{\"name\":\"ui\",\"label\":_vm.$t('settings.style.fonts.components.interface'),\"fallback\":_vm.previewTheme.fonts.interface,\"no-inherit\":\"1\"},model:{value:(_vm.fontsLocal.interface),callback:function ($$v) {_vm.$set(_vm.fontsLocal, \"interface\", $$v)},expression:\"fontsLocal.interface\"}}),_vm._v(\" \"),_c('FontControl',{attrs:{\"name\":\"input\",\"label\":_vm.$t('settings.style.fonts.components.input'),\"fallback\":_vm.previewTheme.fonts.input},model:{value:(_vm.fontsLocal.input),callback:function ($$v) {_vm.$set(_vm.fontsLocal, \"input\", $$v)},expression:\"fontsLocal.input\"}}),_vm._v(\" \"),_c('FontControl',{attrs:{\"name\":\"post\",\"label\":_vm.$t('settings.style.fonts.components.post'),\"fallback\":_vm.previewTheme.fonts.post},model:{value:(_vm.fontsLocal.post),callback:function ($$v) {_vm.$set(_vm.fontsLocal, \"post\", $$v)},expression:\"fontsLocal.post\"}}),_vm._v(\" \"),_c('FontControl',{attrs:{\"name\":\"postCode\",\"label\":_vm.$t('settings.style.fonts.components.postCode'),\"fallback\":_vm.previewTheme.fonts.postCode},model:{value:(_vm.fontsLocal.postCode),callback:function ($$v) {_vm.$set(_vm.fontsLocal, \"postCode\", $$v)},expression:\"fontsLocal.postCode\"}})],1)])],1),_vm._v(\" \"),_c('div',{staticClass:\"apply-container\"},[_c('button',{staticClass:\"btn submit\",attrs:{\"disabled\":!_vm.themeValid},on:{\"click\":_vm.setCustomTheme}},[_vm._v(_vm._s(_vm.$t('general.apply')))]),_vm._v(\" \"),_c('button',{staticClass:\"btn\",on:{\"click\":_vm.clearAll}},[_vm._v(_vm._s(_vm.$t('settings.style.switcher.reset')))])])],1)}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('label',{attrs:{\"for\":\"interface-language-switcher\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.interfaceLanguage'))+\"\\n \")]),_vm._v(\" \"),_c('label',{staticClass:\"select\",attrs:{\"for\":\"interface-language-switcher\"}},[_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.language),expression:\"language\"}],attrs:{\"id\":\"interface-language-switcher\"},on:{\"change\":function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.language=$event.target.multiple ? $$selectedVal : $$selectedVal[0]}}},_vm._l((_vm.languageCodes),function(langCode,i){return _c('option',{domProps:{\"value\":langCode}},[_vm._v(\"\\n \"+_vm._s(_vm.languageNames[i])+\"\\n \")])}),0),_vm._v(\" \"),_c('i',{staticClass:\"icon-down-open\"})])])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"settings panel panel-default\"},[_c('div',{staticClass:\"panel-heading\"},[_c('div',{staticClass:\"title\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.settings'))+\"\\n \")]),_vm._v(\" \"),_c('transition',{attrs:{\"name\":\"fade\"}},[(_vm.currentSaveStateNotice)?[(_vm.currentSaveStateNotice.error)?_c('div',{staticClass:\"alert error\",on:{\"click\":function($event){$event.preventDefault();}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.saving_err'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(!_vm.currentSaveStateNotice.error)?_c('div',{staticClass:\"alert transparent\",on:{\"click\":function($event){$event.preventDefault();}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.saving_ok'))+\"\\n \")]):_vm._e()]:_vm._e()],2)],1),_vm._v(\" \"),_c('div',{staticClass:\"panel-body\"},[_c('keep-alive',[_c('tab-switcher',[_c('div',{attrs:{\"label\":_vm.$t('settings.general')}},[_c('div',{staticClass:\"setting-item\"},[_c('h2',[_vm._v(_vm._s(_vm.$t('settings.interface')))]),_vm._v(\" \"),_c('ul',{staticClass:\"setting-list\"},[_c('li',[_c('interface-language-switcher')],1),_vm._v(\" \"),(_vm.instanceSpecificPanelPresent)?_c('li',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.hideISPLocal),expression:\"hideISPLocal\"}],attrs:{\"type\":\"checkbox\",\"id\":\"hideISP\"},domProps:{\"checked\":Array.isArray(_vm.hideISPLocal)?_vm._i(_vm.hideISPLocal,null)>-1:(_vm.hideISPLocal)},on:{\"change\":function($event){var $$a=_vm.hideISPLocal,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.hideISPLocal=$$a.concat([$$v]))}else{$$i>-1&&(_vm.hideISPLocal=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.hideISPLocal=$$c}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"hideISP\"}},[_vm._v(_vm._s(_vm.$t('settings.hide_isp')))])]):_vm._e()])]),_vm._v(\" \"),_c('div',{staticClass:\"setting-item\"},[_c('h2',[_vm._v(_vm._s(_vm.$t('nav.timeline')))]),_vm._v(\" \"),_c('ul',{staticClass:\"setting-list\"},[_c('li',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.hideMutedPostsLocal),expression:\"hideMutedPostsLocal\"}],attrs:{\"type\":\"checkbox\",\"id\":\"hideMutedPosts\"},domProps:{\"checked\":Array.isArray(_vm.hideMutedPostsLocal)?_vm._i(_vm.hideMutedPostsLocal,null)>-1:(_vm.hideMutedPostsLocal)},on:{\"change\":function($event){var $$a=_vm.hideMutedPostsLocal,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.hideMutedPostsLocal=$$a.concat([$$v]))}else{$$i>-1&&(_vm.hideMutedPostsLocal=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.hideMutedPostsLocal=$$c}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"hideMutedPosts\"}},[_vm._v(_vm._s(_vm.$t('settings.hide_muted_posts'))+\" \"+_vm._s(_vm.$t('settings.instance_default', { value: _vm.hideMutedPostsDefault })))])]),_vm._v(\" \"),_c('li',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.collapseMessageWithSubjectLocal),expression:\"collapseMessageWithSubjectLocal\"}],attrs:{\"type\":\"checkbox\",\"id\":\"collapseMessageWithSubject\"},domProps:{\"checked\":Array.isArray(_vm.collapseMessageWithSubjectLocal)?_vm._i(_vm.collapseMessageWithSubjectLocal,null)>-1:(_vm.collapseMessageWithSubjectLocal)},on:{\"change\":function($event){var $$a=_vm.collapseMessageWithSubjectLocal,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.collapseMessageWithSubjectLocal=$$a.concat([$$v]))}else{$$i>-1&&(_vm.collapseMessageWithSubjectLocal=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.collapseMessageWithSubjectLocal=$$c}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"collapseMessageWithSubject\"}},[_vm._v(_vm._s(_vm.$t('settings.collapse_subject'))+\" \"+_vm._s(_vm.$t('settings.instance_default', { value: _vm.collapseMessageWithSubjectDefault })))])]),_vm._v(\" \"),_c('li',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.streamingLocal),expression:\"streamingLocal\"}],attrs:{\"type\":\"checkbox\",\"id\":\"streaming\"},domProps:{\"checked\":Array.isArray(_vm.streamingLocal)?_vm._i(_vm.streamingLocal,null)>-1:(_vm.streamingLocal)},on:{\"change\":function($event){var $$a=_vm.streamingLocal,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.streamingLocal=$$a.concat([$$v]))}else{$$i>-1&&(_vm.streamingLocal=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.streamingLocal=$$c}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"streaming\"}},[_vm._v(_vm._s(_vm.$t('settings.streaming')))]),_vm._v(\" \"),_c('ul',{staticClass:\"setting-list suboptions\",class:[{disabled: !_vm.streamingLocal}]},[_c('li',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.pauseOnUnfocusedLocal),expression:\"pauseOnUnfocusedLocal\"}],attrs:{\"disabled\":!_vm.streamingLocal,\"type\":\"checkbox\",\"id\":\"pauseOnUnfocused\"},domProps:{\"checked\":Array.isArray(_vm.pauseOnUnfocusedLocal)?_vm._i(_vm.pauseOnUnfocusedLocal,null)>-1:(_vm.pauseOnUnfocusedLocal)},on:{\"change\":function($event){var $$a=_vm.pauseOnUnfocusedLocal,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.pauseOnUnfocusedLocal=$$a.concat([$$v]))}else{$$i>-1&&(_vm.pauseOnUnfocusedLocal=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.pauseOnUnfocusedLocal=$$c}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"pauseOnUnfocused\"}},[_vm._v(_vm._s(_vm.$t('settings.pause_on_unfocused')))])])])]),_vm._v(\" \"),_c('li',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.autoLoadLocal),expression:\"autoLoadLocal\"}],attrs:{\"type\":\"checkbox\",\"id\":\"autoload\"},domProps:{\"checked\":Array.isArray(_vm.autoLoadLocal)?_vm._i(_vm.autoLoadLocal,null)>-1:(_vm.autoLoadLocal)},on:{\"change\":function($event){var $$a=_vm.autoLoadLocal,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.autoLoadLocal=$$a.concat([$$v]))}else{$$i>-1&&(_vm.autoLoadLocal=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.autoLoadLocal=$$c}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"autoload\"}},[_vm._v(_vm._s(_vm.$t('settings.autoload')))])]),_vm._v(\" \"),_c('li',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.hoverPreviewLocal),expression:\"hoverPreviewLocal\"}],attrs:{\"type\":\"checkbox\",\"id\":\"hoverPreview\"},domProps:{\"checked\":Array.isArray(_vm.hoverPreviewLocal)?_vm._i(_vm.hoverPreviewLocal,null)>-1:(_vm.hoverPreviewLocal)},on:{\"change\":function($event){var $$a=_vm.hoverPreviewLocal,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.hoverPreviewLocal=$$a.concat([$$v]))}else{$$i>-1&&(_vm.hoverPreviewLocal=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.hoverPreviewLocal=$$c}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"hoverPreview\"}},[_vm._v(_vm._s(_vm.$t('settings.reply_link_preview')))])])])]),_vm._v(\" \"),_c('div',{staticClass:\"setting-item\"},[_c('h2',[_vm._v(_vm._s(_vm.$t('settings.composing')))]),_vm._v(\" \"),_c('ul',{staticClass:\"setting-list\"},[_c('li',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.scopeCopyLocal),expression:\"scopeCopyLocal\"}],attrs:{\"type\":\"checkbox\",\"id\":\"scopeCopy\"},domProps:{\"checked\":Array.isArray(_vm.scopeCopyLocal)?_vm._i(_vm.scopeCopyLocal,null)>-1:(_vm.scopeCopyLocal)},on:{\"change\":function($event){var $$a=_vm.scopeCopyLocal,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.scopeCopyLocal=$$a.concat([$$v]))}else{$$i>-1&&(_vm.scopeCopyLocal=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.scopeCopyLocal=$$c}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"scopeCopy\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.scope_copy'))+\" \"+_vm._s(_vm.$t('settings.instance_default', { value: _vm.scopeCopyDefault }))+\"\\n \")])]),_vm._v(\" \"),_c('li',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.alwaysShowSubjectInputLocal),expression:\"alwaysShowSubjectInputLocal\"}],attrs:{\"type\":\"checkbox\",\"id\":\"subjectHide\"},domProps:{\"checked\":Array.isArray(_vm.alwaysShowSubjectInputLocal)?_vm._i(_vm.alwaysShowSubjectInputLocal,null)>-1:(_vm.alwaysShowSubjectInputLocal)},on:{\"change\":function($event){var $$a=_vm.alwaysShowSubjectInputLocal,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.alwaysShowSubjectInputLocal=$$a.concat([$$v]))}else{$$i>-1&&(_vm.alwaysShowSubjectInputLocal=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.alwaysShowSubjectInputLocal=$$c}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"subjectHide\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.subject_input_always_show'))+\" \"+_vm._s(_vm.$t('settings.instance_default', { value: _vm.alwaysShowSubjectInputDefault }))+\"\\n \")])]),_vm._v(\" \"),_c('li',[_c('div',[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.subject_line_behavior'))+\"\\n \"),_c('label',{staticClass:\"select\",attrs:{\"for\":\"subjectLineBehavior\"}},[_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.subjectLineBehaviorLocal),expression:\"subjectLineBehaviorLocal\"}],attrs:{\"id\":\"subjectLineBehavior\"},on:{\"change\":function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.subjectLineBehaviorLocal=$event.target.multiple ? $$selectedVal : $$selectedVal[0]}}},[_c('option',{attrs:{\"value\":\"email\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.subject_line_email'))+\"\\n \"+_vm._s(_vm.subjectLineBehaviorDefault == 'email' ? _vm.$t('settings.instance_default_simple') : '')+\"\\n \")]),_vm._v(\" \"),_c('option',{attrs:{\"value\":\"masto\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.subject_line_mastodon'))+\"\\n \"+_vm._s(_vm.subjectLineBehaviorDefault == 'mastodon' ? _vm.$t('settings.instance_default_simple') : '')+\"\\n \")]),_vm._v(\" \"),_c('option',{attrs:{\"value\":\"noop\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.subject_line_noop'))+\"\\n \"+_vm._s(_vm.subjectLineBehaviorDefault == 'noop' ? _vm.$t('settings.instance_default_simple') : '')+\"\\n \")])]),_vm._v(\" \"),_c('i',{staticClass:\"icon-down-open\"})])])]),_vm._v(\" \"),(_vm.postFormats.length > 0)?_c('li',[_c('div',[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.post_status_content_type'))+\"\\n \"),_c('label',{staticClass:\"select\",attrs:{\"for\":\"postContentType\"}},[_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.postContentTypeLocal),expression:\"postContentTypeLocal\"}],attrs:{\"id\":\"postContentType\"},on:{\"change\":function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.postContentTypeLocal=$event.target.multiple ? $$selectedVal : $$selectedVal[0]}}},_vm._l((_vm.postFormats),function(postFormat){return _c('option',{key:postFormat,domProps:{\"value\":postFormat}},[_vm._v(\"\\n \"+_vm._s(_vm.$t((\"post_status.content_type[\\\"\" + postFormat + \"\\\"]\")))+\"\\n \"+_vm._s(_vm.postContentTypeDefault === postFormat ? _vm.$t('settings.instance_default_simple') : '')+\"\\n \")])}),0),_vm._v(\" \"),_c('i',{staticClass:\"icon-down-open\"})])])]):_vm._e(),_vm._v(\" \"),_c('li',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.minimalScopesModeLocal),expression:\"minimalScopesModeLocal\"}],attrs:{\"type\":\"checkbox\",\"id\":\"minimalScopesMode\"},domProps:{\"checked\":Array.isArray(_vm.minimalScopesModeLocal)?_vm._i(_vm.minimalScopesModeLocal,null)>-1:(_vm.minimalScopesModeLocal)},on:{\"change\":function($event){var $$a=_vm.minimalScopesModeLocal,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.minimalScopesModeLocal=$$a.concat([$$v]))}else{$$i>-1&&(_vm.minimalScopesModeLocal=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.minimalScopesModeLocal=$$c}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"minimalScopesMode\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.minimal_scopes_mode'))+\" \"+_vm._s(_vm.$t('settings.instance_default', { value: _vm.minimalScopesModeDefault }))+\"\\n \")])]),_vm._v(\" \"),_c('li',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.autohideFloatingPostButtonLocal),expression:\"autohideFloatingPostButtonLocal\"}],attrs:{\"type\":\"checkbox\",\"id\":\"autohideFloatingPostButton\"},domProps:{\"checked\":Array.isArray(_vm.autohideFloatingPostButtonLocal)?_vm._i(_vm.autohideFloatingPostButtonLocal,null)>-1:(_vm.autohideFloatingPostButtonLocal)},on:{\"change\":function($event){var $$a=_vm.autohideFloatingPostButtonLocal,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.autohideFloatingPostButtonLocal=$$a.concat([$$v]))}else{$$i>-1&&(_vm.autohideFloatingPostButtonLocal=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.autohideFloatingPostButtonLocal=$$c}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"autohideFloatingPostButton\"}},[_vm._v(_vm._s(_vm.$t('settings.autohide_floating_post_button')))])])])]),_vm._v(\" \"),_c('div',{staticClass:\"setting-item\"},[_c('h2',[_vm._v(_vm._s(_vm.$t('settings.attachments')))]),_vm._v(\" \"),_c('ul',{staticClass:\"setting-list\"},[_c('li',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.hideAttachmentsLocal),expression:\"hideAttachmentsLocal\"}],attrs:{\"type\":\"checkbox\",\"id\":\"hideAttachments\"},domProps:{\"checked\":Array.isArray(_vm.hideAttachmentsLocal)?_vm._i(_vm.hideAttachmentsLocal,null)>-1:(_vm.hideAttachmentsLocal)},on:{\"change\":function($event){var $$a=_vm.hideAttachmentsLocal,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.hideAttachmentsLocal=$$a.concat([$$v]))}else{$$i>-1&&(_vm.hideAttachmentsLocal=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.hideAttachmentsLocal=$$c}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"hideAttachments\"}},[_vm._v(_vm._s(_vm.$t('settings.hide_attachments_in_tl')))])]),_vm._v(\" \"),_c('li',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.hideAttachmentsInConvLocal),expression:\"hideAttachmentsInConvLocal\"}],attrs:{\"type\":\"checkbox\",\"id\":\"hideAttachmentsInConv\"},domProps:{\"checked\":Array.isArray(_vm.hideAttachmentsInConvLocal)?_vm._i(_vm.hideAttachmentsInConvLocal,null)>-1:(_vm.hideAttachmentsInConvLocal)},on:{\"change\":function($event){var $$a=_vm.hideAttachmentsInConvLocal,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.hideAttachmentsInConvLocal=$$a.concat([$$v]))}else{$$i>-1&&(_vm.hideAttachmentsInConvLocal=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.hideAttachmentsInConvLocal=$$c}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"hideAttachmentsInConv\"}},[_vm._v(_vm._s(_vm.$t('settings.hide_attachments_in_convo')))])]),_vm._v(\" \"),_c('li',[_c('label',{attrs:{\"for\":\"maxThumbnails\"}},[_vm._v(_vm._s(_vm.$t('settings.max_thumbnails')))]),_vm._v(\" \"),_c('input',{directives:[{name:\"model\",rawName:\"v-model.number\",value:(_vm.maxThumbnails),expression:\"maxThumbnails\",modifiers:{\"number\":true}}],staticClass:\"number-input\",attrs:{\"type\":\"number\",\"id\":\"maxThumbnails\",\"min\":\"0\",\"step\":\"1\"},domProps:{\"value\":(_vm.maxThumbnails)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.maxThumbnails=_vm._n($event.target.value)},\"blur\":function($event){_vm.$forceUpdate()}}})]),_vm._v(\" \"),_c('li',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.hideNsfwLocal),expression:\"hideNsfwLocal\"}],attrs:{\"type\":\"checkbox\",\"id\":\"hideNsfw\"},domProps:{\"checked\":Array.isArray(_vm.hideNsfwLocal)?_vm._i(_vm.hideNsfwLocal,null)>-1:(_vm.hideNsfwLocal)},on:{\"change\":function($event){var $$a=_vm.hideNsfwLocal,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.hideNsfwLocal=$$a.concat([$$v]))}else{$$i>-1&&(_vm.hideNsfwLocal=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.hideNsfwLocal=$$c}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"hideNsfw\"}},[_vm._v(_vm._s(_vm.$t('settings.nsfw_clickthrough')))])]),_vm._v(\" \"),_c('ul',{staticClass:\"setting-list suboptions\"},[_c('li',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.preloadImage),expression:\"preloadImage\"}],attrs:{\"disabled\":!_vm.hideNsfwLocal,\"type\":\"checkbox\",\"id\":\"preloadImage\"},domProps:{\"checked\":Array.isArray(_vm.preloadImage)?_vm._i(_vm.preloadImage,null)>-1:(_vm.preloadImage)},on:{\"change\":function($event){var $$a=_vm.preloadImage,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.preloadImage=$$a.concat([$$v]))}else{$$i>-1&&(_vm.preloadImage=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.preloadImage=$$c}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"preloadImage\"}},[_vm._v(_vm._s(_vm.$t('settings.preload_images')))])]),_vm._v(\" \"),_c('li',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.useOneClickNsfw),expression:\"useOneClickNsfw\"}],attrs:{\"disabled\":!_vm.hideNsfwLocal,\"type\":\"checkbox\",\"id\":\"useOneClickNsfw\"},domProps:{\"checked\":Array.isArray(_vm.useOneClickNsfw)?_vm._i(_vm.useOneClickNsfw,null)>-1:(_vm.useOneClickNsfw)},on:{\"change\":function($event){var $$a=_vm.useOneClickNsfw,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.useOneClickNsfw=$$a.concat([$$v]))}else{$$i>-1&&(_vm.useOneClickNsfw=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.useOneClickNsfw=$$c}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"useOneClickNsfw\"}},[_vm._v(_vm._s(_vm.$t('settings.use_one_click_nsfw')))])])]),_vm._v(\" \"),_c('li',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.stopGifs),expression:\"stopGifs\"}],attrs:{\"type\":\"checkbox\",\"id\":\"stopGifs\"},domProps:{\"checked\":Array.isArray(_vm.stopGifs)?_vm._i(_vm.stopGifs,null)>-1:(_vm.stopGifs)},on:{\"change\":function($event){var $$a=_vm.stopGifs,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.stopGifs=$$a.concat([$$v]))}else{$$i>-1&&(_vm.stopGifs=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.stopGifs=$$c}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"stopGifs\"}},[_vm._v(_vm._s(_vm.$t('settings.stop_gifs')))])]),_vm._v(\" \"),_c('li',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.loopVideoLocal),expression:\"loopVideoLocal\"}],attrs:{\"type\":\"checkbox\",\"id\":\"loopVideo\"},domProps:{\"checked\":Array.isArray(_vm.loopVideoLocal)?_vm._i(_vm.loopVideoLocal,null)>-1:(_vm.loopVideoLocal)},on:{\"change\":function($event){var $$a=_vm.loopVideoLocal,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.loopVideoLocal=$$a.concat([$$v]))}else{$$i>-1&&(_vm.loopVideoLocal=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.loopVideoLocal=$$c}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"loopVideo\"}},[_vm._v(_vm._s(_vm.$t('settings.loop_video')))]),_vm._v(\" \"),_c('ul',{staticClass:\"setting-list suboptions\",class:[{disabled: !_vm.streamingLocal}]},[_c('li',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.loopVideoSilentOnlyLocal),expression:\"loopVideoSilentOnlyLocal\"}],attrs:{\"disabled\":!_vm.loopVideoLocal || !_vm.loopSilentAvailable,\"type\":\"checkbox\",\"id\":\"loopVideoSilentOnly\"},domProps:{\"checked\":Array.isArray(_vm.loopVideoSilentOnlyLocal)?_vm._i(_vm.loopVideoSilentOnlyLocal,null)>-1:(_vm.loopVideoSilentOnlyLocal)},on:{\"change\":function($event){var $$a=_vm.loopVideoSilentOnlyLocal,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.loopVideoSilentOnlyLocal=$$a.concat([$$v]))}else{$$i>-1&&(_vm.loopVideoSilentOnlyLocal=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.loopVideoSilentOnlyLocal=$$c}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"loopVideoSilentOnly\"}},[_vm._v(_vm._s(_vm.$t('settings.loop_video_silent_only')))]),_vm._v(\" \"),(!_vm.loopSilentAvailable)?_c('div',{staticClass:\"unavailable\"},[_c('i',{staticClass:\"icon-globe\"}),_vm._v(\"! \"+_vm._s(_vm.$t('settings.limited_availability'))+\"\\n \")]):_vm._e()])])]),_vm._v(\" \"),_c('li',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.playVideosInModal),expression:\"playVideosInModal\"}],attrs:{\"type\":\"checkbox\",\"id\":\"playVideosInModal\"},domProps:{\"checked\":Array.isArray(_vm.playVideosInModal)?_vm._i(_vm.playVideosInModal,null)>-1:(_vm.playVideosInModal)},on:{\"change\":function($event){var $$a=_vm.playVideosInModal,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.playVideosInModal=$$a.concat([$$v]))}else{$$i>-1&&(_vm.playVideosInModal=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.playVideosInModal=$$c}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"playVideosInModal\"}},[_vm._v(_vm._s(_vm.$t('settings.play_videos_in_modal')))])]),_vm._v(\" \"),_c('li',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.useContainFit),expression:\"useContainFit\"}],attrs:{\"type\":\"checkbox\",\"id\":\"useContainFit\"},domProps:{\"checked\":Array.isArray(_vm.useContainFit)?_vm._i(_vm.useContainFit,null)>-1:(_vm.useContainFit)},on:{\"change\":function($event){var $$a=_vm.useContainFit,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.useContainFit=$$a.concat([$$v]))}else{$$i>-1&&(_vm.useContainFit=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.useContainFit=$$c}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"useContainFit\"}},[_vm._v(_vm._s(_vm.$t('settings.use_contain_fit')))])])])]),_vm._v(\" \"),_c('div',{staticClass:\"setting-item\"},[_c('h2',[_vm._v(_vm._s(_vm.$t('settings.notifications')))]),_vm._v(\" \"),_c('ul',{staticClass:\"setting-list\"},[_c('li',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.webPushNotificationsLocal),expression:\"webPushNotificationsLocal\"}],attrs:{\"type\":\"checkbox\",\"id\":\"webPushNotifications\"},domProps:{\"checked\":Array.isArray(_vm.webPushNotificationsLocal)?_vm._i(_vm.webPushNotificationsLocal,null)>-1:(_vm.webPushNotificationsLocal)},on:{\"change\":function($event){var $$a=_vm.webPushNotificationsLocal,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.webPushNotificationsLocal=$$a.concat([$$v]))}else{$$i>-1&&(_vm.webPushNotificationsLocal=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.webPushNotificationsLocal=$$c}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"webPushNotifications\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.enable_web_push_notifications'))+\"\\n \")])])])])]),_vm._v(\" \"),_c('div',{attrs:{\"label\":_vm.$t('settings.theme')}},[_c('div',{staticClass:\"setting-item\"},[_c('style-switcher')],1)]),_vm._v(\" \"),_c('div',{attrs:{\"label\":_vm.$t('settings.filtering')}},[_c('div',{staticClass:\"setting-item\"},[_c('div',{staticClass:\"select-multiple\"},[_c('span',{staticClass:\"label\"},[_vm._v(_vm._s(_vm.$t('settings.notification_visibility')))]),_vm._v(\" \"),_c('ul',{staticClass:\"option-list\"},[_c('li',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.notificationVisibilityLocal.likes),expression:\"notificationVisibilityLocal.likes\"}],attrs:{\"type\":\"checkbox\",\"id\":\"notification-visibility-likes\"},domProps:{\"checked\":Array.isArray(_vm.notificationVisibilityLocal.likes)?_vm._i(_vm.notificationVisibilityLocal.likes,null)>-1:(_vm.notificationVisibilityLocal.likes)},on:{\"change\":function($event){var $$a=_vm.notificationVisibilityLocal.likes,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.notificationVisibilityLocal, \"likes\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.notificationVisibilityLocal, \"likes\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.notificationVisibilityLocal, \"likes\", $$c)}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"notification-visibility-likes\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.notification_visibility_likes'))+\"\\n \")])]),_vm._v(\" \"),_c('li',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.notificationVisibilityLocal.repeats),expression:\"notificationVisibilityLocal.repeats\"}],attrs:{\"type\":\"checkbox\",\"id\":\"notification-visibility-repeats\"},domProps:{\"checked\":Array.isArray(_vm.notificationVisibilityLocal.repeats)?_vm._i(_vm.notificationVisibilityLocal.repeats,null)>-1:(_vm.notificationVisibilityLocal.repeats)},on:{\"change\":function($event){var $$a=_vm.notificationVisibilityLocal.repeats,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.notificationVisibilityLocal, \"repeats\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.notificationVisibilityLocal, \"repeats\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.notificationVisibilityLocal, \"repeats\", $$c)}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"notification-visibility-repeats\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.notification_visibility_repeats'))+\"\\n \")])]),_vm._v(\" \"),_c('li',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.notificationVisibilityLocal.follows),expression:\"notificationVisibilityLocal.follows\"}],attrs:{\"type\":\"checkbox\",\"id\":\"notification-visibility-follows\"},domProps:{\"checked\":Array.isArray(_vm.notificationVisibilityLocal.follows)?_vm._i(_vm.notificationVisibilityLocal.follows,null)>-1:(_vm.notificationVisibilityLocal.follows)},on:{\"change\":function($event){var $$a=_vm.notificationVisibilityLocal.follows,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.notificationVisibilityLocal, \"follows\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.notificationVisibilityLocal, \"follows\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.notificationVisibilityLocal, \"follows\", $$c)}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"notification-visibility-follows\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.notification_visibility_follows'))+\"\\n \")])]),_vm._v(\" \"),_c('li',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.notificationVisibilityLocal.mentions),expression:\"notificationVisibilityLocal.mentions\"}],attrs:{\"type\":\"checkbox\",\"id\":\"notification-visibility-mentions\"},domProps:{\"checked\":Array.isArray(_vm.notificationVisibilityLocal.mentions)?_vm._i(_vm.notificationVisibilityLocal.mentions,null)>-1:(_vm.notificationVisibilityLocal.mentions)},on:{\"change\":function($event){var $$a=_vm.notificationVisibilityLocal.mentions,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.notificationVisibilityLocal, \"mentions\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.notificationVisibilityLocal, \"mentions\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.notificationVisibilityLocal, \"mentions\", $$c)}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"notification-visibility-mentions\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.notification_visibility_mentions'))+\"\\n \")])])])]),_vm._v(\" \"),_c('div',[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.replies_in_timeline'))+\"\\n \"),_c('label',{staticClass:\"select\",attrs:{\"for\":\"replyVisibility\"}},[_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.replyVisibilityLocal),expression:\"replyVisibilityLocal\"}],attrs:{\"id\":\"replyVisibility\"},on:{\"change\":function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.replyVisibilityLocal=$event.target.multiple ? $$selectedVal : $$selectedVal[0]}}},[_c('option',{attrs:{\"value\":\"all\",\"selected\":\"\"}},[_vm._v(_vm._s(_vm.$t('settings.reply_visibility_all')))]),_vm._v(\" \"),_c('option',{attrs:{\"value\":\"following\"}},[_vm._v(_vm._s(_vm.$t('settings.reply_visibility_following')))]),_vm._v(\" \"),_c('option',{attrs:{\"value\":\"self\"}},[_vm._v(_vm._s(_vm.$t('settings.reply_visibility_self')))])]),_vm._v(\" \"),_c('i',{staticClass:\"icon-down-open\"})])]),_vm._v(\" \"),_c('div',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.hidePostStatsLocal),expression:\"hidePostStatsLocal\"}],attrs:{\"type\":\"checkbox\",\"id\":\"hidePostStats\"},domProps:{\"checked\":Array.isArray(_vm.hidePostStatsLocal)?_vm._i(_vm.hidePostStatsLocal,null)>-1:(_vm.hidePostStatsLocal)},on:{\"change\":function($event){var $$a=_vm.hidePostStatsLocal,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.hidePostStatsLocal=$$a.concat([$$v]))}else{$$i>-1&&(_vm.hidePostStatsLocal=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.hidePostStatsLocal=$$c}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"hidePostStats\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.hide_post_stats'))+\" \"+_vm._s(_vm.$t('settings.instance_default', { value: _vm.hidePostStatsDefault }))+\"\\n \")])]),_vm._v(\" \"),_c('div',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.hideUserStatsLocal),expression:\"hideUserStatsLocal\"}],attrs:{\"type\":\"checkbox\",\"id\":\"hideUserStats\"},domProps:{\"checked\":Array.isArray(_vm.hideUserStatsLocal)?_vm._i(_vm.hideUserStatsLocal,null)>-1:(_vm.hideUserStatsLocal)},on:{\"change\":function($event){var $$a=_vm.hideUserStatsLocal,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.hideUserStatsLocal=$$a.concat([$$v]))}else{$$i>-1&&(_vm.hideUserStatsLocal=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.hideUserStatsLocal=$$c}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"hideUserStats\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.hide_user_stats'))+\" \"+_vm._s(_vm.$t('settings.instance_default', { value: _vm.hideUserStatsDefault }))+\"\\n \")])])]),_vm._v(\" \"),_c('div',{staticClass:\"setting-item\"},[_c('div',[_c('p',[_vm._v(_vm._s(_vm.$t('settings.filtering_explanation')))]),_vm._v(\" \"),_c('textarea',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.muteWordsString),expression:\"muteWordsString\"}],attrs:{\"id\":\"muteWords\"},domProps:{\"value\":(_vm.muteWordsString)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.muteWordsString=$event.target.value}}})]),_vm._v(\" \"),_c('div',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.hideFilteredStatusesLocal),expression:\"hideFilteredStatusesLocal\"}],attrs:{\"type\":\"checkbox\",\"id\":\"hideFilteredStatuses\"},domProps:{\"checked\":Array.isArray(_vm.hideFilteredStatusesLocal)?_vm._i(_vm.hideFilteredStatusesLocal,null)>-1:(_vm.hideFilteredStatusesLocal)},on:{\"change\":function($event){var $$a=_vm.hideFilteredStatusesLocal,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.hideFilteredStatusesLocal=$$a.concat([$$v]))}else{$$i>-1&&(_vm.hideFilteredStatusesLocal=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.hideFilteredStatusesLocal=$$c}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"hideFilteredStatuses\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.hide_filtered_statuses'))+\" \"+_vm._s(_vm.$t('settings.instance_default', { value: _vm.hideFilteredStatusesDefault }))+\"\\n \")])])])]),_vm._v(\" \"),_c('div',{attrs:{\"label\":_vm.$t('settings.version.title')}},[_c('div',{staticClass:\"setting-item\"},[_c('ul',{staticClass:\"setting-list\"},[_c('li',[_c('p',[_vm._v(_vm._s(_vm.$t('settings.version.backend_version')))]),_vm._v(\" \"),_c('ul',{staticClass:\"option-list\"},[_c('li',[_c('a',{attrs:{\"href\":_vm.backendVersionLink,\"target\":\"_blank\"}},[_vm._v(_vm._s(_vm.backendVersion))])])])]),_vm._v(\" \"),_c('li',[_c('p',[_vm._v(_vm._s(_vm.$t('settings.version.frontend_version')))]),_vm._v(\" \"),_c('ul',{staticClass:\"option-list\"},[_c('li',[_c('a',{attrs:{\"href\":_vm.frontendVersionLink,\"target\":\"_blank\"}},[_vm._v(_vm._s(_vm.frontendVersion))])])])])])])])])],1)],1)])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"settings panel panel-default\"},[_c('div',{staticClass:\"panel-heading\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('registration.registration'))+\"\\n \")]),_vm._v(\" \"),_c('div',{staticClass:\"panel-body\"},[_c('form',{staticClass:\"registration-form\",on:{\"submit\":function($event){$event.preventDefault();_vm.submit(_vm.user)}}},[_c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"text-fields\"},[_c('div',{staticClass:\"form-group\",class:{ 'form-group--error': _vm.$v.user.username.$error }},[_c('label',{staticClass:\"form--label\",attrs:{\"for\":\"sign-up-username\"}},[_vm._v(_vm._s(_vm.$t('login.username')))]),_vm._v(\" \"),_c('input',{directives:[{name:\"model\",rawName:\"v-model.trim\",value:(_vm.$v.user.username.$model),expression:\"$v.user.username.$model\",modifiers:{\"trim\":true}}],staticClass:\"form-control\",attrs:{\"disabled\":_vm.isPending,\"id\":\"sign-up-username\",\"placeholder\":_vm.$t('registration.username_placeholder')},domProps:{\"value\":(_vm.$v.user.username.$model)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.$v.user.username, \"$model\", $event.target.value.trim())},\"blur\":function($event){_vm.$forceUpdate()}}})]),_vm._v(\" \"),(_vm.$v.user.username.$dirty)?_c('div',{staticClass:\"form-error\"},[_c('ul',[(!_vm.$v.user.username.required)?_c('li',[_c('span',[_vm._v(_vm._s(_vm.$t('registration.validations.username_required')))])]):_vm._e()])]):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"form-group\",class:{ 'form-group--error': _vm.$v.user.fullname.$error }},[_c('label',{staticClass:\"form--label\",attrs:{\"for\":\"sign-up-fullname\"}},[_vm._v(_vm._s(_vm.$t('registration.fullname')))]),_vm._v(\" \"),_c('input',{directives:[{name:\"model\",rawName:\"v-model.trim\",value:(_vm.$v.user.fullname.$model),expression:\"$v.user.fullname.$model\",modifiers:{\"trim\":true}}],staticClass:\"form-control\",attrs:{\"disabled\":_vm.isPending,\"id\":\"sign-up-fullname\",\"placeholder\":_vm.$t('registration.fullname_placeholder')},domProps:{\"value\":(_vm.$v.user.fullname.$model)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.$v.user.fullname, \"$model\", $event.target.value.trim())},\"blur\":function($event){_vm.$forceUpdate()}}})]),_vm._v(\" \"),(_vm.$v.user.fullname.$dirty)?_c('div',{staticClass:\"form-error\"},[_c('ul',[(!_vm.$v.user.fullname.required)?_c('li',[_c('span',[_vm._v(_vm._s(_vm.$t('registration.validations.fullname_required')))])]):_vm._e()])]):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"form-group\",class:{ 'form-group--error': _vm.$v.user.email.$error }},[_c('label',{staticClass:\"form--label\",attrs:{\"for\":\"email\"}},[_vm._v(_vm._s(_vm.$t('registration.email')))]),_vm._v(\" \"),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.$v.user.email.$model),expression:\"$v.user.email.$model\"}],staticClass:\"form-control\",attrs:{\"disabled\":_vm.isPending,\"id\":\"email\",\"type\":\"email\"},domProps:{\"value\":(_vm.$v.user.email.$model)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.$v.user.email, \"$model\", $event.target.value)}}})]),_vm._v(\" \"),(_vm.$v.user.email.$dirty)?_c('div',{staticClass:\"form-error\"},[_c('ul',[(!_vm.$v.user.email.required)?_c('li',[_c('span',[_vm._v(_vm._s(_vm.$t('registration.validations.email_required')))])]):_vm._e()])]):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"form-group\"},[_c('label',{staticClass:\"form--label\",attrs:{\"for\":\"bio\"}},[_vm._v(_vm._s(_vm.$t('registration.bio'))+\" (\"+_vm._s(_vm.$t('general.optional'))+\")\")]),_vm._v(\" \"),_c('textarea',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.user.bio),expression:\"user.bio\"}],staticClass:\"form-control\",attrs:{\"disabled\":_vm.isPending,\"id\":\"bio\",\"placeholder\":_vm.bioPlaceholder},domProps:{\"value\":(_vm.user.bio)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.user, \"bio\", $event.target.value)}}})]),_vm._v(\" \"),_c('div',{staticClass:\"form-group\",class:{ 'form-group--error': _vm.$v.user.password.$error }},[_c('label',{staticClass:\"form--label\",attrs:{\"for\":\"sign-up-password\"}},[_vm._v(_vm._s(_vm.$t('login.password')))]),_vm._v(\" \"),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.user.password),expression:\"user.password\"}],staticClass:\"form-control\",attrs:{\"disabled\":_vm.isPending,\"id\":\"sign-up-password\",\"type\":\"password\"},domProps:{\"value\":(_vm.user.password)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.user, \"password\", $event.target.value)}}})]),_vm._v(\" \"),(_vm.$v.user.password.$dirty)?_c('div',{staticClass:\"form-error\"},[_c('ul',[(!_vm.$v.user.password.required)?_c('li',[_c('span',[_vm._v(_vm._s(_vm.$t('registration.validations.password_required')))])]):_vm._e()])]):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"form-group\",class:{ 'form-group--error': _vm.$v.user.confirm.$error }},[_c('label',{staticClass:\"form--label\",attrs:{\"for\":\"sign-up-password-confirmation\"}},[_vm._v(_vm._s(_vm.$t('registration.password_confirm')))]),_vm._v(\" \"),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.user.confirm),expression:\"user.confirm\"}],staticClass:\"form-control\",attrs:{\"disabled\":_vm.isPending,\"id\":\"sign-up-password-confirmation\",\"type\":\"password\"},domProps:{\"value\":(_vm.user.confirm)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.user, \"confirm\", $event.target.value)}}})]),_vm._v(\" \"),(_vm.$v.user.confirm.$dirty)?_c('div',{staticClass:\"form-error\"},[_c('ul',[(!_vm.$v.user.confirm.required)?_c('li',[_c('span',[_vm._v(_vm._s(_vm.$t('registration.validations.password_confirmation_required')))])]):_vm._e(),_vm._v(\" \"),(!_vm.$v.user.confirm.sameAsPassword)?_c('li',[_c('span',[_vm._v(_vm._s(_vm.$t('registration.validations.password_confirmation_match')))])]):_vm._e()])]):_vm._e(),_vm._v(\" \"),(_vm.captcha.type != 'none')?_c('div',{staticClass:\"form-group\",attrs:{\"id\":\"captcha-group\"}},[_c('label',{staticClass:\"form--label\",attrs:{\"for\":\"captcha-label\"}},[_vm._v(_vm._s(_vm.$t('captcha')))]),_vm._v(\" \"),(_vm.captcha.type == 'kocaptcha')?[_c('img',{attrs:{\"src\":_vm.captcha.url},on:{\"click\":_vm.setCaptcha}}),_vm._v(\" \"),_c('sub',[_vm._v(_vm._s(_vm.$t('registration.new_captcha')))]),_vm._v(\" \"),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.captcha.solution),expression:\"captcha.solution\"}],staticClass:\"form-control\",attrs:{\"disabled\":_vm.isPending,\"id\":\"captcha-answer\",\"type\":\"text\",\"autocomplete\":\"off\"},domProps:{\"value\":(_vm.captcha.solution)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.captcha, \"solution\", $event.target.value)}}})]:_vm._e()],2):_vm._e(),_vm._v(\" \"),(_vm.token)?_c('div',{staticClass:\"form-group\"},[_c('label',{attrs:{\"for\":\"token\"}},[_vm._v(_vm._s(_vm.$t('registration.token')))]),_vm._v(\" \"),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.token),expression:\"token\"}],staticClass:\"form-control\",attrs:{\"disabled\":\"true\",\"id\":\"token\",\"type\":\"text\"},domProps:{\"value\":(_vm.token)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.token=$event.target.value}}})]):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"form-group\"},[_c('button',{staticClass:\"btn btn-default\",attrs:{\"disabled\":_vm.isPending,\"type\":\"submit\"}},[_vm._v(_vm._s(_vm.$t('general.submit')))])])]),_vm._v(\" \"),_c('div',{staticClass:\"terms-of-service\",domProps:{\"innerHTML\":_vm._s(_vm.termsOfService)}})]),_vm._v(\" \"),(_vm.serverValidationErrors.length)?_c('div',{staticClass:\"form-group\"},[_c('div',{staticClass:\"alert error\"},_vm._l((_vm.serverValidationErrors),function(error){return _c('span',[_vm._v(_vm._s(error))])}),0)]):_vm._e()])])])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"image-cropper\"},[(_vm.dataUrl)?_c('div',[_c('div',{staticClass:\"image-cropper-image-container\"},[_c('img',{ref:\"img\",attrs:{\"src\":_vm.dataUrl,\"alt\":\"\"},on:{\"load\":function($event){$event.stopPropagation();return _vm.createCropper($event)}}})]),_vm._v(\" \"),_c('div',{staticClass:\"image-cropper-buttons-wrapper\"},[_c('button',{staticClass:\"btn\",attrs:{\"type\":\"button\",\"disabled\":_vm.submitting},domProps:{\"textContent\":_vm._s(_vm.saveText)},on:{\"click\":function($event){_vm.submit()}}}),_vm._v(\" \"),_c('button',{staticClass:\"btn\",attrs:{\"type\":\"button\",\"disabled\":_vm.submitting},domProps:{\"textContent\":_vm._s(_vm.cancelText)},on:{\"click\":_vm.destroy}}),_vm._v(\" \"),_c('button',{staticClass:\"btn\",attrs:{\"type\":\"button\",\"disabled\":_vm.submitting},domProps:{\"textContent\":_vm._s(_vm.saveWithoutCroppingText)},on:{\"click\":function($event){_vm.submit(false)}}}),_vm._v(\" \"),(_vm.submitting)?_c('i',{staticClass:\"icon-spin4 animate-spin\"}):_vm._e()]),_vm._v(\" \"),(_vm.submitError)?_c('div',{staticClass:\"alert error\"},[_vm._v(\"\\n \"+_vm._s(_vm.submitErrorMsg)+\"\\n \"),_c('i',{staticClass:\"button-icon icon-cancel\",on:{\"click\":_vm.clearError}})]):_vm._e()]):_vm._e(),_vm._v(\" \"),_c('input',{ref:\"input\",staticClass:\"image-cropper-img-input\",attrs:{\"type\":\"file\",\"accept\":_vm.mimes}})])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('basic-user-card',{attrs:{\"user\":_vm.user}},[_c('div',{staticClass:\"block-card-content-container\"},[(_vm.blocked)?_c('button',{staticClass:\"btn btn-default\",attrs:{\"disabled\":_vm.progress},on:{\"click\":_vm.unblockUser}},[(_vm.progress)?[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.unblock_progress'))+\"\\n \")]:[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.unblock'))+\"\\n \")]],2):_c('button',{staticClass:\"btn btn-default\",attrs:{\"disabled\":_vm.progress},on:{\"click\":_vm.blockUser}},[(_vm.progress)?[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.block_progress'))+\"\\n \")]:[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.block'))+\"\\n \")]],2)])])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('basic-user-card',{attrs:{\"user\":_vm.user}},[_c('div',{staticClass:\"mute-card-content-container\"},[(_vm.muted)?_c('button',{staticClass:\"btn btn-default\",attrs:{\"disabled\":_vm.progress},on:{\"click\":_vm.unmuteUser}},[(_vm.progress)?[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.unmute_progress'))+\"\\n \")]:[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.unmute'))+\"\\n \")]],2):_c('button',{staticClass:\"btn btn-default\",attrs:{\"disabled\":_vm.progress},on:{\"click\":_vm.muteUser}},[(_vm.progress)?[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.mute_progress'))+\"\\n \")]:[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.mute'))+\"\\n \")]],2)])])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('label',{staticClass:\"checkbox\"},[_c('input',{attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":_vm.checked,\"indeterminate\":_vm.indeterminate},on:{\"change\":function($event){_vm.$emit('change', $event.target.checked)}}}),_vm._v(\" \"),_c('i',{staticClass:\"checkbox-indicator\"}),_vm._v(\" \"),(!!_vm.$slots.default)?_c('span',[_vm._t(\"default\")],2):_vm._e()])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"selectable-list\"},[(_vm.items.length > 0)?_c('div',{staticClass:\"selectable-list-header\"},[_c('div',{staticClass:\"selectable-list-checkbox-wrapper\"},[_c('Checkbox',{attrs:{\"checked\":_vm.allSelected,\"indeterminate\":_vm.someSelected},on:{\"change\":_vm.toggleAll}},[_vm._v(_vm._s(_vm.$t('selectable_list.select_all')))])],1),_vm._v(\" \"),_c('div',{staticClass:\"selectable-list-header-actions\"},[_vm._t(\"header\",null,{selected:_vm.filteredSelected})],2)]):_vm._e(),_vm._v(\" \"),_c('List',{attrs:{\"items\":_vm.items,\"getKey\":_vm.getKey},scopedSlots:_vm._u([{key:\"item\",fn:function(ref){\nvar item = ref.item;\nreturn [_c('div',{staticClass:\"selectable-list-item-inner\",class:{ 'selectable-list-item-selected-inner': _vm.isSelected(item) }},[_c('div',{staticClass:\"selectable-list-checkbox-wrapper\"},[_c('Checkbox',{attrs:{\"checked\":_vm.isSelected(item)},on:{\"change\":function (checked) { return _vm.toggle(checked, item); }}})],1),_vm._v(\" \"),_vm._t(\"item\",null,{item:item})],2)]}}])},[_c('template',{slot:\"empty\"},[_vm._t(\"empty\")],2)],2)],1)}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('button',{attrs:{\"disabled\":_vm.progress || _vm.disabled},on:{\"click\":_vm.onClick}},[(_vm.progress)?[_vm._t(\"progress\")]:[_vm._t(\"default\")]],2)}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{directives:[{name:\"click-outside\",rawName:\"v-click-outside\",value:(_vm.onClickOutside),expression:\"onClickOutside\"}],staticClass:\"autosuggest\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.term),expression:\"term\"}],staticClass:\"autosuggest-input\",attrs:{\"placeholder\":_vm.placeholder},domProps:{\"value\":(_vm.term)},on:{\"click\":_vm.onInputClick,\"input\":function($event){if($event.target.composing){ return; }_vm.term=$event.target.value}}}),_vm._v(\" \"),(_vm.resultsVisible && _vm.filtered.length > 0)?_c('div',{staticClass:\"autosuggest-results\"},[_vm._l((_vm.filtered),function(item){return _vm._t(\"default\",null,{item:item})})],2):_vm._e()])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"importer\"},[_c('form',[_c('input',{ref:\"input\",attrs:{\"type\":\"file\"},on:{\"change\":_vm.change}})]),_vm._v(\" \"),(_vm.submitting)?_c('i',{staticClass:\"icon-spin4 animate-spin importer-uploading\"}):_c('button',{staticClass:\"btn btn-default\",on:{\"click\":_vm.submit}},[_vm._v(_vm._s(_vm.submitButtonLabel))]),_vm._v(\" \"),(_vm.success)?_c('div',[_c('i',{staticClass:\"icon-cross\",on:{\"click\":_vm.dismiss}}),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.successMessage))])]):(_vm.error)?_c('div',[_c('i',{staticClass:\"icon-cross\",on:{\"click\":_vm.dismiss}}),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.errorMessage))])]):_vm._e()])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"exporter\"},[(_vm.processing)?_c('div',[_c('i',{staticClass:\"icon-spin4 animate-spin exporter-processing\"}),_vm._v(\" \"),_c('span',[_vm._v(_vm._s(_vm.processingMessage))])]):_c('button',{staticClass:\"btn btn-default\",on:{\"click\":_vm.process}},[_vm._v(_vm._s(_vm.exportButtonLabel))])])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(_vm.displayTitle)?_c('h4',[_vm._v(_vm._s(_vm.$t('settings.mfa.recovery_codes')))]):_vm._e(),_vm._v(\" \"),(_vm.inProgress)?_c('i',[_vm._v(_vm._s(_vm.$t('settings.mfa.waiting_a_recovery_codes')))]):_vm._e(),_vm._v(\" \"),(_vm.ready)?[_c('p',{staticClass:\"alert warning\"},[_vm._v(_vm._s(_vm.$t('settings.mfa.recovery_codes_warning')))]),_vm._v(\" \"),_c('ul',{staticClass:\"backup-codes\"},_vm._l((_vm.backupCodes.codes),function(code){return _c('li',[_vm._v(_vm._s(code))])}),0)]:_vm._e()],2)}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_vm._t(\"default\"),_vm._v(\" \"),_c('button',{staticClass:\"btn btn-default\",attrs:{\"disabled\":_vm.disabled},on:{\"click\":_vm.confirm}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('general.confirm'))+\"\\n \")]),_vm._v(\" \"),_c('button',{staticClass:\"btn btn-default\",attrs:{\"disabled\":_vm.disabled},on:{\"click\":_vm.cancel}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('general.cancel'))+\"\\n \")])],2)}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"method-item\"},[_c('strong',[_vm._v(_vm._s(_vm.$t('settings.mfa.otp')))]),_vm._v(\" \"),(!_vm.isActivated)?_c('button',{staticClass:\"btn btn-default\",on:{\"click\":_vm.doActivate}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('general.enable'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.isActivated)?_c('button',{staticClass:\"btn btn-default\",attrs:{\"disabled\":_vm.deactivate},on:{\"click\":_vm.doDeactivate}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('general.disable'))+\"\\n \")]):_vm._e()]),_vm._v(\" \"),(_vm.deactivate)?_c('confirm',{attrs:{\"disabled\":_vm.inProgress},on:{\"confirm\":_vm.confirmDeactivate,\"cancel\":_vm.cancelDeactivate}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.enter_current_password_to_confirm'))+\":\\n \"),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.currentPassword),expression:\"currentPassword\"}],attrs:{\"type\":\"password\"},domProps:{\"value\":(_vm.currentPassword)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.currentPassword=$event.target.value}}})]):_vm._e(),_vm._v(\" \"),(_vm.error)?_c('div',{staticClass:\"alert error\"},[_vm._v(_vm._s(_vm.error))]):_vm._e()],1)}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.readyInit && _vm.settings.available)?_c('div',{staticClass:\"setting-item mfa-settings\"},[_c('div',{staticClass:\"mfa-heading\"},[_c('h2',[_vm._v(_vm._s(_vm.$t('settings.mfa.title')))])]),_vm._v(\" \"),_c('div',[(!_vm.setupInProgress)?_c('div',{staticClass:\"setting-item\"},[_c('h3',[_vm._v(_vm._s(_vm.$t('settings.mfa.authentication_methods')))]),_vm._v(\" \"),_c('totp-item',{attrs:{\"settings\":_vm.settings},on:{\"deactivate\":_vm.fetchSettings,\"activate\":_vm.activateOTP}}),_vm._v(\" \"),_c('br'),_vm._v(\" \"),(_vm.settings.enabled)?_c('div',[(!_vm.confirmNewBackupCodes)?_c('recovery-codes',{attrs:{\"backup-codes\":_vm.backupCodes}}):_vm._e(),_vm._v(\" \"),(!_vm.confirmNewBackupCodes)?_c('button',{staticClass:\"btn btn-default\",on:{\"click\":_vm.getBackupCodes}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.mfa.generate_new_recovery_codes'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.confirmNewBackupCodes)?_c('div',[_c('confirm',{attrs:{\"disabled\":_vm.backupCodes.inProgress},on:{\"confirm\":_vm.confirmBackupCodes,\"cancel\":_vm.cancelBackupCodes}},[_c('p',{staticClass:\"warning\"},[_vm._v(_vm._s(_vm.$t('settings.mfa.warning_of_generate_new_codes')))])])],1):_vm._e()],1):_vm._e()],1):_vm._e(),_vm._v(\" \"),(_vm.setupInProgress)?_c('div',[_c('h3',[_vm._v(_vm._s(_vm.$t('settings.mfa.setup_otp')))]),_vm._v(\" \"),(!_vm.setupOTPInProgress)?_c('recovery-codes',{attrs:{\"backup-codes\":_vm.backupCodes}}):_vm._e(),_vm._v(\" \"),(_vm.canSetupOTP)?_c('button',{staticClass:\"btn btn-default\",on:{\"click\":_vm.cancelSetup}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('general.cancel'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.canSetupOTP)?_c('button',{staticClass:\"btn btn-default\",on:{\"click\":_vm.setupOTP}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.mfa.setup_otp'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.setupOTPInProgress)?[(_vm.prepareOTP)?_c('i',[_vm._v(_vm._s(_vm.$t('settings.mfa.wait_pre_setup_otp')))]):_vm._e(),_vm._v(\" \"),(_vm.confirmOTP)?_c('div',[_c('div',{staticClass:\"setup-otp\"},[_c('div',{staticClass:\"qr-code\"},[_c('h4',[_vm._v(_vm._s(_vm.$t('settings.mfa.scan.title')))]),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.$t('settings.mfa.scan.desc')))]),_vm._v(\" \"),_c('qrcode',{attrs:{\"value\":_vm.otpSettings.provisioning_uri,\"options\":{ width: 200 }}}),_vm._v(\" \"),_c('p',[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.mfa.scan.secret_code'))+\":\\n \"+_vm._s(_vm.otpSettings.key)+\"\\n \")])],1),_vm._v(\" \"),_c('div',{staticClass:\"verify\"},[_c('h4',[_vm._v(_vm._s(_vm.$t('general.verify')))]),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.$t('settings.mfa.verify.desc')))]),_vm._v(\" \"),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.otpConfirmToken),expression:\"otpConfirmToken\"}],attrs:{\"type\":\"text\"},domProps:{\"value\":(_vm.otpConfirmToken)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.otpConfirmToken=$event.target.value}}}),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.$t('settings.enter_current_password_to_confirm'))+\":\")]),_vm._v(\" \"),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.currentPassword),expression:\"currentPassword\"}],attrs:{\"type\":\"password\"},domProps:{\"value\":(_vm.currentPassword)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.currentPassword=$event.target.value}}}),_vm._v(\" \"),_c('div',{staticClass:\"confirm-otp-actions\"},[_c('button',{staticClass:\"btn btn-default\",on:{\"click\":_vm.doConfirmOTP}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.mfa.confirm_and_enable'))+\"\\n \")]),_vm._v(\" \"),_c('button',{staticClass:\"btn btn-default\",on:{\"click\":_vm.cancelSetup}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('general.cancel'))+\"\\n \")])]),_vm._v(\" \"),(_vm.error)?_c('div',{staticClass:\"alert error\"},[_vm._v(_vm._s(_vm.error))]):_vm._e()])])]):_vm._e()]:_vm._e()],2):_vm._e()])]):_vm._e()}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"settings panel panel-default\"},[_c('div',{staticClass:\"panel-heading\"},[_c('div',{staticClass:\"title\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.user_settings'))+\"\\n \")]),_vm._v(\" \"),_c('transition',{attrs:{\"name\":\"fade\"}},[(_vm.currentSaveStateNotice)?[(_vm.currentSaveStateNotice.error)?_c('div',{staticClass:\"alert error\",on:{\"click\":function($event){$event.preventDefault();}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.saving_err'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(!_vm.currentSaveStateNotice.error)?_c('div',{staticClass:\"alert transparent\",on:{\"click\":function($event){$event.preventDefault();}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.saving_ok'))+\"\\n \")]):_vm._e()]:_vm._e()],2)],1),_vm._v(\" \"),_c('div',{staticClass:\"panel-body profile-edit\"},[_c('tab-switcher',[_c('div',{attrs:{\"label\":_vm.$t('settings.profile_tab')}},[_c('div',{staticClass:\"setting-item\"},[_c('h2',[_vm._v(_vm._s(_vm.$t('settings.name_bio')))]),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.$t('settings.name')))]),_vm._v(\" \"),_c('EmojiInput',{attrs:{\"suggest\":_vm.emojiSuggestor},model:{value:(_vm.newName),callback:function ($$v) {_vm.newName=$$v},expression:\"newName\"}},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.newName),expression:\"newName\"}],attrs:{\"id\":\"username\",\"classname\":\"name-changer\"},domProps:{\"value\":(_vm.newName)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.newName=$event.target.value}}})]),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.$t('settings.bio')))]),_vm._v(\" \"),_c('EmojiInput',{attrs:{\"suggest\":_vm.emojiUserSuggestor},model:{value:(_vm.newBio),callback:function ($$v) {_vm.newBio=$$v},expression:\"newBio\"}},[_c('textarea',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.newBio),expression:\"newBio\"}],attrs:{\"classname\":\"bio\"},domProps:{\"value\":(_vm.newBio)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.newBio=$event.target.value}}})]),_vm._v(\" \"),_c('p',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.newLocked),expression:\"newLocked\"}],attrs:{\"type\":\"checkbox\",\"id\":\"account-locked\"},domProps:{\"checked\":Array.isArray(_vm.newLocked)?_vm._i(_vm.newLocked,null)>-1:(_vm.newLocked)},on:{\"change\":function($event){var $$a=_vm.newLocked,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.newLocked=$$a.concat([$$v]))}else{$$i>-1&&(_vm.newLocked=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.newLocked=$$c}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"account-locked\"}},[_vm._v(_vm._s(_vm.$t('settings.lock_account_description')))])]),_vm._v(\" \"),_c('div',[_c('label',{attrs:{\"for\":\"default-vis\"}},[_vm._v(_vm._s(_vm.$t('settings.default_vis')))]),_vm._v(\" \"),_c('div',{staticClass:\"visibility-tray\",attrs:{\"id\":\"default-vis\"}},[_c('scope-selector',{attrs:{\"showAll\":true,\"userDefault\":_vm.newDefaultScope,\"initialScope\":_vm.newDefaultScope,\"onScopeChange\":_vm.changeVis}})],1)]),_vm._v(\" \"),_c('p',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.newNoRichText),expression:\"newNoRichText\"}],attrs:{\"type\":\"checkbox\",\"id\":\"account-no-rich-text\"},domProps:{\"checked\":Array.isArray(_vm.newNoRichText)?_vm._i(_vm.newNoRichText,null)>-1:(_vm.newNoRichText)},on:{\"change\":function($event){var $$a=_vm.newNoRichText,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.newNoRichText=$$a.concat([$$v]))}else{$$i>-1&&(_vm.newNoRichText=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.newNoRichText=$$c}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"account-no-rich-text\"}},[_vm._v(_vm._s(_vm.$t('settings.no_rich_text_description')))])]),_vm._v(\" \"),_c('p',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.hideFollows),expression:\"hideFollows\"}],attrs:{\"type\":\"checkbox\",\"id\":\"account-hide-follows\"},domProps:{\"checked\":Array.isArray(_vm.hideFollows)?_vm._i(_vm.hideFollows,null)>-1:(_vm.hideFollows)},on:{\"change\":function($event){var $$a=_vm.hideFollows,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.hideFollows=$$a.concat([$$v]))}else{$$i>-1&&(_vm.hideFollows=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.hideFollows=$$c}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"account-hide-follows\"}},[_vm._v(_vm._s(_vm.$t('settings.hide_follows_description')))])]),_vm._v(\" \"),_c('p',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.hideFollowers),expression:\"hideFollowers\"}],attrs:{\"type\":\"checkbox\",\"id\":\"account-hide-followers\"},domProps:{\"checked\":Array.isArray(_vm.hideFollowers)?_vm._i(_vm.hideFollowers,null)>-1:(_vm.hideFollowers)},on:{\"change\":function($event){var $$a=_vm.hideFollowers,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.hideFollowers=$$a.concat([$$v]))}else{$$i>-1&&(_vm.hideFollowers=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.hideFollowers=$$c}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"account-hide-followers\"}},[_vm._v(_vm._s(_vm.$t('settings.hide_followers_description')))])]),_vm._v(\" \"),_c('p',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.showRole),expression:\"showRole\"}],attrs:{\"type\":\"checkbox\",\"id\":\"account-show-role\"},domProps:{\"checked\":Array.isArray(_vm.showRole)?_vm._i(_vm.showRole,null)>-1:(_vm.showRole)},on:{\"change\":function($event){var $$a=_vm.showRole,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.showRole=$$a.concat([$$v]))}else{$$i>-1&&(_vm.showRole=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.showRole=$$c}}}}),_vm._v(\" \"),(_vm.role === 'admin')?_c('label',{attrs:{\"for\":\"account-show-role\"}},[_vm._v(_vm._s(_vm.$t('settings.show_admin_badge')))]):_vm._e(),_vm._v(\" \"),(_vm.role === 'moderator')?_c('label',{attrs:{\"for\":\"account-show-role\"}},[_vm._v(_vm._s(_vm.$t('settings.show_moderator_badge')))]):_vm._e()]),_vm._v(\" \"),_c('button',{staticClass:\"btn btn-default\",attrs:{\"disabled\":_vm.newName && _vm.newName.length === 0},on:{\"click\":_vm.updateProfile}},[_vm._v(_vm._s(_vm.$t('general.submit')))])],1),_vm._v(\" \"),_c('div',{staticClass:\"setting-item\"},[_c('h2',[_vm._v(_vm._s(_vm.$t('settings.avatar')))]),_vm._v(\" \"),_c('p',{staticClass:\"visibility-notice\"},[_vm._v(_vm._s(_vm.$t('settings.avatar_size_instruction')))]),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.$t('settings.current_avatar')))]),_vm._v(\" \"),_c('img',{staticClass:\"current-avatar\",attrs:{\"src\":_vm.user.profile_image_url_original}}),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.$t('settings.set_new_avatar')))]),_vm._v(\" \"),_c('button',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.pickAvatarBtnVisible),expression:\"pickAvatarBtnVisible\"}],staticClass:\"btn\",attrs:{\"type\":\"button\",\"id\":\"pick-avatar\"}},[_vm._v(_vm._s(_vm.$t('settings.upload_a_photo')))]),_vm._v(\" \"),_c('image-cropper',{attrs:{\"trigger\":\"#pick-avatar\",\"submitHandler\":_vm.submitAvatar},on:{\"open\":function($event){_vm.pickAvatarBtnVisible=false},\"close\":function($event){_vm.pickAvatarBtnVisible=true}}})],1),_vm._v(\" \"),_c('div',{staticClass:\"setting-item\"},[_c('h2',[_vm._v(_vm._s(_vm.$t('settings.profile_banner')))]),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.$t('settings.current_profile_banner')))]),_vm._v(\" \"),_c('img',{staticClass:\"banner\",attrs:{\"src\":_vm.user.cover_photo}}),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.$t('settings.set_new_profile_banner')))]),_vm._v(\" \"),(_vm.bannerPreview)?_c('img',{staticClass:\"banner\",attrs:{\"src\":_vm.bannerPreview}}):_vm._e(),_vm._v(\" \"),_c('div',[_c('input',{attrs:{\"type\":\"file\"},on:{\"change\":function($event){_vm.uploadFile('banner', $event)}}})]),_vm._v(\" \"),(_vm.bannerUploading)?_c('i',{staticClass:\" icon-spin4 animate-spin uploading\"}):(_vm.bannerPreview)?_c('button',{staticClass:\"btn btn-default\",on:{\"click\":_vm.submitBanner}},[_vm._v(_vm._s(_vm.$t('general.submit')))]):_vm._e(),_vm._v(\" \"),(_vm.bannerUploadError)?_c('div',{staticClass:\"alert error\"},[_vm._v(\"\\n Error: \"+_vm._s(_vm.bannerUploadError)+\"\\n \"),_c('i',{staticClass:\"button-icon icon-cancel\",on:{\"click\":function($event){_vm.clearUploadError('banner')}}})]):_vm._e()]),_vm._v(\" \"),_c('div',{staticClass:\"setting-item\"},[_c('h2',[_vm._v(_vm._s(_vm.$t('settings.profile_background')))]),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.$t('settings.set_new_profile_background')))]),_vm._v(\" \"),(_vm.backgroundPreview)?_c('img',{staticClass:\"bg\",attrs:{\"src\":_vm.backgroundPreview}}):_vm._e(),_vm._v(\" \"),_c('div',[_c('input',{attrs:{\"type\":\"file\"},on:{\"change\":function($event){_vm.uploadFile('background', $event)}}})]),_vm._v(\" \"),(_vm.backgroundUploading)?_c('i',{staticClass:\" icon-spin4 animate-spin uploading\"}):(_vm.backgroundPreview)?_c('button',{staticClass:\"btn btn-default\",on:{\"click\":_vm.submitBg}},[_vm._v(_vm._s(_vm.$t('general.submit')))]):_vm._e(),_vm._v(\" \"),(_vm.backgroundUploadError)?_c('div',{staticClass:\"alert error\"},[_vm._v(\"\\n Error: \"+_vm._s(_vm.backgroundUploadError)+\"\\n \"),_c('i',{staticClass:\"button-icon icon-cancel\",on:{\"click\":function($event){_vm.clearUploadError('background')}}})]):_vm._e()])]),_vm._v(\" \"),_c('div',{attrs:{\"label\":_vm.$t('settings.security_tab')}},[_c('div',{staticClass:\"setting-item\"},[_c('h2',[_vm._v(_vm._s(_vm.$t('settings.change_password')))]),_vm._v(\" \"),_c('div',[_c('p',[_vm._v(_vm._s(_vm.$t('settings.current_password')))]),_vm._v(\" \"),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.changePasswordInputs[0]),expression:\"changePasswordInputs[0]\"}],attrs:{\"type\":\"password\"},domProps:{\"value\":(_vm.changePasswordInputs[0])},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.changePasswordInputs, 0, $event.target.value)}}})]),_vm._v(\" \"),_c('div',[_c('p',[_vm._v(_vm._s(_vm.$t('settings.new_password')))]),_vm._v(\" \"),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.changePasswordInputs[1]),expression:\"changePasswordInputs[1]\"}],attrs:{\"type\":\"password\"},domProps:{\"value\":(_vm.changePasswordInputs[1])},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.changePasswordInputs, 1, $event.target.value)}}})]),_vm._v(\" \"),_c('div',[_c('p',[_vm._v(_vm._s(_vm.$t('settings.confirm_new_password')))]),_vm._v(\" \"),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.changePasswordInputs[2]),expression:\"changePasswordInputs[2]\"}],attrs:{\"type\":\"password\"},domProps:{\"value\":(_vm.changePasswordInputs[2])},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.changePasswordInputs, 2, $event.target.value)}}})]),_vm._v(\" \"),_c('button',{staticClass:\"btn btn-default\",on:{\"click\":_vm.changePassword}},[_vm._v(_vm._s(_vm.$t('general.submit')))]),_vm._v(\" \"),(_vm.changedPassword)?_c('p',[_vm._v(_vm._s(_vm.$t('settings.changed_password')))]):(_vm.changePasswordError !== false)?_c('p',[_vm._v(_vm._s(_vm.$t('settings.change_password_error')))]):_vm._e(),_vm._v(\" \"),(_vm.changePasswordError)?_c('p',[_vm._v(_vm._s(_vm.changePasswordError))]):_vm._e()]),_vm._v(\" \"),_c('div',{staticClass:\"setting-item\"},[_c('h2',[_vm._v(_vm._s(_vm.$t('settings.oauth_tokens')))]),_vm._v(\" \"),_c('table',{staticClass:\"oauth-tokens\"},[_c('thead',[_c('tr',[_c('th',[_vm._v(_vm._s(_vm.$t('settings.app_name')))]),_vm._v(\" \"),_c('th',[_vm._v(_vm._s(_vm.$t('settings.valid_until')))]),_vm._v(\" \"),_c('th')])]),_vm._v(\" \"),_c('tbody',_vm._l((_vm.oauthTokens),function(oauthToken){return _c('tr',{key:oauthToken.id},[_c('td',[_vm._v(_vm._s(oauthToken.appName))]),_vm._v(\" \"),_c('td',[_vm._v(_vm._s(oauthToken.validUntil))]),_vm._v(\" \"),_c('td',{staticClass:\"actions\"},[_c('button',{staticClass:\"btn btn-default\",on:{\"click\":function($event){_vm.revokeToken(oauthToken.id)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.revoke_token'))+\"\\n \")])])])}),0)])]),_vm._v(\" \"),_c('mfa'),_vm._v(\" \"),_c('div',{staticClass:\"setting-item\"},[_c('h2',[_vm._v(_vm._s(_vm.$t('settings.delete_account')))]),_vm._v(\" \"),(!_vm.deletingAccount)?_c('p',[_vm._v(_vm._s(_vm.$t('settings.delete_account_description')))]):_vm._e(),_vm._v(\" \"),(_vm.deletingAccount)?_c('div',[_c('p',[_vm._v(_vm._s(_vm.$t('settings.delete_account_instructions')))]),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.$t('login.password')))]),_vm._v(\" \"),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.deleteAccountConfirmPasswordInput),expression:\"deleteAccountConfirmPasswordInput\"}],attrs:{\"type\":\"password\"},domProps:{\"value\":(_vm.deleteAccountConfirmPasswordInput)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.deleteAccountConfirmPasswordInput=$event.target.value}}}),_vm._v(\" \"),_c('button',{staticClass:\"btn btn-default\",on:{\"click\":_vm.deleteAccount}},[_vm._v(_vm._s(_vm.$t('settings.delete_account')))])]):_vm._e(),_vm._v(\" \"),(_vm.deleteAccountError !== false)?_c('p',[_vm._v(_vm._s(_vm.$t('settings.delete_account_error')))]):_vm._e(),_vm._v(\" \"),(_vm.deleteAccountError)?_c('p',[_vm._v(_vm._s(_vm.deleteAccountError))]):_vm._e(),_vm._v(\" \"),(!_vm.deletingAccount)?_c('button',{staticClass:\"btn btn-default\",on:{\"click\":_vm.confirmDelete}},[_vm._v(_vm._s(_vm.$t('general.submit')))]):_vm._e()])],1),_vm._v(\" \"),(_vm.pleromaBackend)?_c('div',{attrs:{\"label\":_vm.$t('settings.notifications')}},[_c('div',{staticClass:\"setting-item\"},[_c('div',{staticClass:\"select-multiple\"},[_c('span',{staticClass:\"label\"},[_vm._v(_vm._s(_vm.$t('settings.notification_setting')))]),_vm._v(\" \"),_c('ul',{staticClass:\"option-list\"},[_c('li',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.notificationSettings.follows),expression:\"notificationSettings.follows\"}],attrs:{\"type\":\"checkbox\",\"id\":\"notification-setting-follows\"},domProps:{\"checked\":Array.isArray(_vm.notificationSettings.follows)?_vm._i(_vm.notificationSettings.follows,null)>-1:(_vm.notificationSettings.follows)},on:{\"change\":function($event){var $$a=_vm.notificationSettings.follows,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.notificationSettings, \"follows\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.notificationSettings, \"follows\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.notificationSettings, \"follows\", $$c)}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"notification-setting-follows\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.notification_setting_follows'))+\"\\n \")])]),_vm._v(\" \"),_c('li',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.notificationSettings.followers),expression:\"notificationSettings.followers\"}],attrs:{\"type\":\"checkbox\",\"id\":\"notification-setting-followers\"},domProps:{\"checked\":Array.isArray(_vm.notificationSettings.followers)?_vm._i(_vm.notificationSettings.followers,null)>-1:(_vm.notificationSettings.followers)},on:{\"change\":function($event){var $$a=_vm.notificationSettings.followers,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.notificationSettings, \"followers\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.notificationSettings, \"followers\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.notificationSettings, \"followers\", $$c)}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"notification-setting-followers\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.notification_setting_followers'))+\"\\n \")])]),_vm._v(\" \"),_c('li',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.notificationSettings.non_follows),expression:\"notificationSettings.non_follows\"}],attrs:{\"type\":\"checkbox\",\"id\":\"notification-setting-non-follows\"},domProps:{\"checked\":Array.isArray(_vm.notificationSettings.non_follows)?_vm._i(_vm.notificationSettings.non_follows,null)>-1:(_vm.notificationSettings.non_follows)},on:{\"change\":function($event){var $$a=_vm.notificationSettings.non_follows,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.notificationSettings, \"non_follows\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.notificationSettings, \"non_follows\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.notificationSettings, \"non_follows\", $$c)}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"notification-setting-non-follows\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.notification_setting_non_follows'))+\"\\n \")])]),_vm._v(\" \"),_c('li',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.notificationSettings.non_followers),expression:\"notificationSettings.non_followers\"}],attrs:{\"type\":\"checkbox\",\"id\":\"notification-setting-non-followers\"},domProps:{\"checked\":Array.isArray(_vm.notificationSettings.non_followers)?_vm._i(_vm.notificationSettings.non_followers,null)>-1:(_vm.notificationSettings.non_followers)},on:{\"change\":function($event){var $$a=_vm.notificationSettings.non_followers,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.notificationSettings, \"non_followers\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.notificationSettings, \"non_followers\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.notificationSettings, \"non_followers\", $$c)}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"notification-setting-non-followers\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.notification_setting_non_followers'))+\"\\n \")])])])]),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.$t('settings.notification_mutes')))]),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.$t('settings.notification_blocks')))]),_vm._v(\" \"),_c('button',{staticClass:\"btn btn-default\",on:{\"click\":_vm.updateNotificationSettings}},[_vm._v(_vm._s(_vm.$t('general.submit')))])])]):_vm._e(),_vm._v(\" \"),(_vm.pleromaBackend)?_c('div',{attrs:{\"label\":_vm.$t('settings.data_import_export_tab')}},[_c('div',{staticClass:\"setting-item\"},[_c('h2',[_vm._v(_vm._s(_vm.$t('settings.follow_import')))]),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.$t('settings.import_followers_from_a_csv_file')))]),_vm._v(\" \"),_c('Importer',{attrs:{\"submitHandler\":_vm.importFollows,\"successMessage\":_vm.$t('settings.follows_imported'),\"errorMessage\":_vm.$t('settings.follow_import_error')}})],1),_vm._v(\" \"),_c('div',{staticClass:\"setting-item\"},[_c('h2',[_vm._v(_vm._s(_vm.$t('settings.follow_export')))]),_vm._v(\" \"),_c('Exporter',{attrs:{\"getContent\":_vm.getFollowsContent,\"filename\":\"friends.csv\",\"exportButtonLabel\":_vm.$t('settings.follow_export_button')}})],1),_vm._v(\" \"),_c('div',{staticClass:\"setting-item\"},[_c('h2',[_vm._v(_vm._s(_vm.$t('settings.block_import')))]),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm.$t('settings.import_blocks_from_a_csv_file')))]),_vm._v(\" \"),_c('Importer',{attrs:{\"submitHandler\":_vm.importBlocks,\"successMessage\":_vm.$t('settings.blocks_imported'),\"errorMessage\":_vm.$t('settings.block_import_error')}})],1),_vm._v(\" \"),_c('div',{staticClass:\"setting-item\"},[_c('h2',[_vm._v(_vm._s(_vm.$t('settings.block_export')))]),_vm._v(\" \"),_c('Exporter',{attrs:{\"getContent\":_vm.getBlocksContent,\"filename\":\"blocks.csv\",\"exportButtonLabel\":_vm.$t('settings.block_export_button')}})],1)]):_vm._e(),_vm._v(\" \"),_c('div',{attrs:{\"label\":_vm.$t('settings.blocks_tab')}},[_c('div',{staticClass:\"profile-edit-usersearch-wrapper\"},[_c('Autosuggest',{attrs:{\"filter\":_vm.filterUnblockedUsers,\"query\":_vm.queryUserIds,\"placeholder\":_vm.$t('settings.search_user_to_block')},scopedSlots:_vm._u([{key:\"default\",fn:function(row){return _c('BlockCard',{attrs:{\"userId\":row.item}})}}])})],1),_vm._v(\" \"),_c('BlockList',{attrs:{\"refresh\":true,\"getKey\":_vm.identity},scopedSlots:_vm._u([{key:\"header\",fn:function(ref){\nvar selected = ref.selected;\nreturn [_c('div',{staticClass:\"profile-edit-bulk-actions\"},[(selected.length > 0)?_c('ProgressButton',{staticClass:\"btn btn-default\",attrs:{\"click\":function () { return _vm.blockUsers(selected); }}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.block'))+\"\\n \"),_c('template',{slot:\"progress\"},[_vm._v(_vm._s(_vm.$t('user_card.block_progress')))])],2):_vm._e(),_vm._v(\" \"),(selected.length > 0)?_c('ProgressButton',{staticClass:\"btn btn-default\",attrs:{\"click\":function () { return _vm.unblockUsers(selected); }}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.unblock'))+\"\\n \"),_c('template',{slot:\"progress\"},[_vm._v(_vm._s(_vm.$t('user_card.unblock_progress')))])],2):_vm._e()],1)]}},{key:\"item\",fn:function(ref){\nvar item = ref.item;\nreturn [_c('BlockCard',{attrs:{\"userId\":item}})]}}])},[_c('template',{slot:\"empty\"},[_vm._v(_vm._s(_vm.$t('settings.no_blocks')))])],2)],1),_vm._v(\" \"),_c('div',{attrs:{\"label\":_vm.$t('settings.mutes_tab')}},[_c('div',{staticClass:\"profile-edit-usersearch-wrapper\"},[_c('Autosuggest',{attrs:{\"filter\":_vm.filterUnMutedUsers,\"query\":_vm.queryUserIds,\"placeholder\":_vm.$t('settings.search_user_to_mute')},scopedSlots:_vm._u([{key:\"default\",fn:function(row){return _c('MuteCard',{attrs:{\"userId\":row.item}})}}])})],1),_vm._v(\" \"),_c('MuteList',{attrs:{\"refresh\":true,\"getKey\":_vm.identity},scopedSlots:_vm._u([{key:\"header\",fn:function(ref){\nvar selected = ref.selected;\nreturn [_c('div',{staticClass:\"profile-edit-bulk-actions\"},[(selected.length > 0)?_c('ProgressButton',{staticClass:\"btn btn-default\",attrs:{\"click\":function () { return _vm.muteUsers(selected); }}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.mute'))+\"\\n \"),_c('template',{slot:\"progress\"},[_vm._v(_vm._s(_vm.$t('user_card.mute_progress')))])],2):_vm._e(),_vm._v(\" \"),(selected.length > 0)?_c('ProgressButton',{staticClass:\"btn btn-default\",attrs:{\"click\":function () { return _vm.unmuteUsers(selected); }}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.unmute'))+\"\\n \"),_c('template',{slot:\"progress\"},[_vm._v(_vm._s(_vm.$t('user_card.unmute_progress')))])],2):_vm._e()],1)]}},{key:\"item\",fn:function(ref){\nvar item = ref.item;\nreturn [_c('MuteCard',{attrs:{\"userId\":item}})]}}])},[_c('template',{slot:\"empty\"},[_vm._v(_vm._s(_vm.$t('settings.no_mutes')))])],2)],1)])],1)])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('basic-user-card',{attrs:{\"user\":_vm.user}},[_c('div',{staticClass:\"follow-request-card-content-container\"},[_c('button',{staticClass:\"btn btn-default\",on:{\"click\":_vm.approveUser}},[_vm._v(_vm._s(_vm.$t('user_card.approve')))]),_vm._v(\" \"),_c('button',{staticClass:\"btn btn-default\",on:{\"click\":_vm.denyUser}},[_vm._v(_vm._s(_vm.$t('user_card.deny')))])])])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"settings panel panel-default\"},[_c('div',{staticClass:\"panel-heading\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('nav.friend_requests'))+\"\\n \")]),_vm._v(\" \"),_c('div',{staticClass:\"panel-body\"},_vm._l((_vm.requests),function(request){return _c('FollowRequestCard',{key:request.id,staticClass:\"list-item\",attrs:{\"user\":request}})}),1)])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('h1',[_vm._v(\"...\")])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"user-search panel panel-default\"},[_c('div',{staticClass:\"panel-heading\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('nav.user_search'))+\"\\n \")]),_vm._v(\" \"),_c('div',{staticClass:\"user-search-input-container\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.username),expression:\"username\"}],ref:\"userSearchInput\",staticClass:\"user-finder-input\",attrs:{\"placeholder\":_vm.$t('finder.find_user')},domProps:{\"value\":(_vm.username)},on:{\"keyup\":function($event){if(!('button' in $event)&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\")){ return null; }_vm.newQuery(_vm.username)},\"input\":function($event){if($event.target.composing){ return; }_vm.username=$event.target.value}}}),_vm._v(\" \"),_c('button',{staticClass:\"btn search-button\",on:{\"click\":function($event){_vm.newQuery(_vm.username)}}},[_c('i',{staticClass:\"icon-search\"})])]),_vm._v(\" \"),(_vm.loading)?_c('div',{staticClass:\"text-center loading-icon\"},[_c('i',{staticClass:\"icon-spin3 animate-spin\"})]):_c('div',{staticClass:\"panel-body\"},_vm._l((_vm.users),function(user){return _c('FollowCard',{key:user.id,staticClass:\"list-item\",attrs:{\"user\":user}})}),1)])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"login panel panel-default\"},[_c('div',{staticClass:\"panel-heading\"},[_vm._v(_vm._s(_vm.$t('login.login')))]),_vm._v(\" \"),_c('div',{staticClass:\"panel-body\"},[_c('form',{staticClass:\"login-form\",on:{\"submit\":function($event){$event.preventDefault();return _vm.submit($event)}}},[(_vm.isPasswordAuth)?[_c('div',{staticClass:\"form-group\"},[_c('label',{attrs:{\"for\":\"username\"}},[_vm._v(_vm._s(_vm.$t('login.username')))]),_vm._v(\" \"),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.user.username),expression:\"user.username\"}],staticClass:\"form-control\",attrs:{\"disabled\":_vm.loggingIn,\"id\":\"username\",\"placeholder\":_vm.$t('login.placeholder')},domProps:{\"value\":(_vm.user.username)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.user, \"username\", $event.target.value)}}})]),_vm._v(\" \"),_c('div',{staticClass:\"form-group\"},[_c('label',{attrs:{\"for\":\"password\"}},[_vm._v(_vm._s(_vm.$t('login.password')))]),_vm._v(\" \"),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.user.password),expression:\"user.password\"}],ref:\"passwordInput\",staticClass:\"form-control\",attrs:{\"disabled\":_vm.loggingIn,\"id\":\"password\",\"type\":\"password\"},domProps:{\"value\":(_vm.user.password)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.user, \"password\", $event.target.value)}}})])]:_vm._e(),_vm._v(\" \"),(_vm.isTokenAuth)?_c('div',{staticClass:\"form-group\"},[_c('p',[_vm._v(_vm._s(_vm.$t('login.description')))])]):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"form-group\"},[_c('div',{staticClass:\"login-bottom\"},[_c('div',[(_vm.registrationOpen)?_c('router-link',{staticClass:\"register\",attrs:{\"to\":{name: 'registration'}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('login.register'))+\"\\n \")]):_vm._e()],1),_vm._v(\" \"),_c('button',{staticClass:\"btn btn-default\",attrs:{\"disabled\":_vm.loggingIn,\"type\":\"submit\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('login.login'))+\"\\n \")])])])],2)]),_vm._v(\" \"),(_vm.error)?_c('div',{staticClass:\"form-group\"},[_c('div',{staticClass:\"alert error\"},[_vm._v(\"\\n \"+_vm._s(_vm.error)+\"\\n \"),_c('i',{staticClass:\"button-icon icon-cancel\",on:{\"click\":_vm.clearError}})])]):_vm._e()])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"login panel panel-default\"},[_c('div',{staticClass:\"panel-heading\"},[_vm._v(_vm._s(_vm.$t('login.heading.recovery')))]),_vm._v(\" \"),_c('div',{staticClass:\"panel-body\"},[_c('form',{staticClass:\"login-form\",on:{\"submit\":function($event){$event.preventDefault();return _vm.submit($event)}}},[_c('div',{staticClass:\"form-group\"},[_c('label',{attrs:{\"for\":\"code\"}},[_vm._v(_vm._s(_vm.$t('login.recovery_code')))]),_vm._v(\" \"),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.code),expression:\"code\"}],staticClass:\"form-control\",attrs:{\"id\":\"code\"},domProps:{\"value\":(_vm.code)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.code=$event.target.value}}})]),_vm._v(\" \"),_c('div',{staticClass:\"form-group\"},[_c('div',{staticClass:\"login-bottom\"},[_c('div',[_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.requireTOTP($event)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('login.enter_two_factor_code'))+\"\\n \")]),_vm._v(\" \"),_c('br'),_vm._v(\" \"),_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.abortMFA($event)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('general.cancel'))+\"\\n \")])]),_vm._v(\" \"),_c('button',{staticClass:\"btn btn-default\",attrs:{\"type\":\"submit\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('general.verify'))+\"\\n \")])])])])]),_vm._v(\" \"),(_vm.error)?_c('div',{staticClass:\"form-group\"},[_c('div',{staticClass:\"alert error\"},[_vm._v(\"\\n \"+_vm._s(_vm.error)+\"\\n \"),_c('i',{staticClass:\"button-icon icon-cancel\",on:{\"click\":_vm.clearError}})])]):_vm._e()])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"login panel panel-default\"},[_c('div',{staticClass:\"panel-heading\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('login.heading.totp'))+\"\\n \")]),_vm._v(\" \"),_c('div',{staticClass:\"panel-body\"},[_c('form',{staticClass:\"login-form\",on:{\"submit\":function($event){$event.preventDefault();return _vm.submit($event)}}},[_c('div',{staticClass:\"form-group\"},[_c('label',{attrs:{\"for\":\"code\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('login.authentication_code'))+\"\\n \")]),_vm._v(\" \"),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.code),expression:\"code\"}],staticClass:\"form-control\",attrs:{\"id\":\"code\"},domProps:{\"value\":(_vm.code)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.code=$event.target.value}}})]),_vm._v(\" \"),_c('div',{staticClass:\"form-group\"},[_c('div',{staticClass:\"login-bottom\"},[_c('div',[_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.requireRecovery($event)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('login.enter_recovery_code'))+\"\\n \")]),_vm._v(\" \"),_c('br'),_vm._v(\" \"),_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.abortMFA($event)}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('general.cancel'))+\"\\n \")])]),_vm._v(\" \"),_c('button',{staticClass:\"btn btn-default\",attrs:{\"type\":\"submit\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('general.verify'))+\"\\n \")])])])])]),_vm._v(\" \"),(_vm.error)?_c('div',{staticClass:\"form-group\"},[_c('div',{staticClass:\"alert error\"},[_vm._v(\"\\n \"+_vm._s(_vm.error)+\"\\n \"),_c('i',{staticClass:\"button-icon icon-cancel\",on:{\"click\":_vm.clearError}})])]):_vm._e()])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!this.collapsed || !this.floating)?_c('div',{staticClass:\"chat-panel\"},[_c('div',{staticClass:\"panel panel-default\"},[_c('div',{staticClass:\"panel-heading timeline-heading\",class:{ 'chat-heading': _vm.floating },on:{\"click\":function($event){$event.stopPropagation();$event.preventDefault();return _vm.togglePanel($event)}}},[_c('div',{staticClass:\"title\"},[_c('span',[_vm._v(_vm._s(_vm.$t('chat.title')))]),_vm._v(\" \"),(_vm.floating)?_c('i',{staticClass:\"icon-cancel\"}):_vm._e()])]),_vm._v(\" \"),_c('div',{directives:[{name:\"chat-scroll\",rawName:\"v-chat-scroll\"}],staticClass:\"chat-window\"},_vm._l((_vm.messages),function(message){return _c('div',{key:message.id,staticClass:\"chat-message\"},[_c('span',{staticClass:\"chat-avatar\"},[_c('img',{attrs:{\"src\":message.author.avatar}})]),_vm._v(\" \"),_c('div',{staticClass:\"chat-content\"},[_c('router-link',{staticClass:\"chat-name\",attrs:{\"to\":_vm.userProfileLink(message.author)}},[_vm._v(\"\\n \"+_vm._s(message.author.username)+\"\\n \")]),_vm._v(\" \"),_c('br'),_vm._v(\" \"),_c('span',{staticClass:\"chat-text\"},[_vm._v(\"\\n \"+_vm._s(message.text)+\"\\n \")])],1)])}),0),_vm._v(\" \"),_c('div',{staticClass:\"chat-input\"},[_c('textarea',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.currentMessage),expression:\"currentMessage\"}],staticClass:\"chat-input-textarea\",attrs:{\"rows\":\"1\"},domProps:{\"value\":(_vm.currentMessage)},on:{\"keyup\":function($event){if(!('button' in $event)&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\")){ return null; }_vm.submit(_vm.currentMessage)},\"input\":function($event){if($event.target.composing){ return; }_vm.currentMessage=$event.target.value}}})])])]):_c('div',{staticClass:\"chat-panel\"},[_c('div',{staticClass:\"panel panel-default\"},[_c('div',{staticClass:\"panel-heading stub timeline-heading chat-heading\",on:{\"click\":function($event){$event.stopPropagation();$event.preventDefault();return _vm.togglePanel($event)}}},[_c('div',{staticClass:\"title\"},[_c('i',{staticClass:\"icon-comment-empty\"}),_vm._v(\"\\n \"+_vm._s(_vm.$t('chat.title'))+\"\\n \")])])])])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"panel panel-default\"},[_c('div',{staticClass:\"panel-heading\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('who_to_follow.who_to_follow'))+\"\\n \")]),_vm._v(\" \"),_c('div',{staticClass:\"panel-body\"},_vm._l((_vm.users),function(user){return _c('FollowCard',{key:user.id,staticClass:\"list-item\",attrs:{\"user\":user}})}),1)])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.show)?_c('div',{staticClass:\"instance-specific-panel\"},[_c('div',{staticClass:\"panel panel-default\"},[_c('div',{staticClass:\"panel-body\"},[_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.instanceSpecificPanelContent)}})])])]):_vm._e()}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"features-panel\"},[_c('div',{staticClass:\"panel panel-default base01-background\"},[_c('div',{staticClass:\"panel-heading timeline-heading base02-background base04\"},[_c('div',{staticClass:\"title\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('features_panel.title'))+\"\\n \")])]),_vm._v(\" \"),_c('div',{staticClass:\"panel-body features-panel\"},[_c('ul',[(_vm.chat)?_c('li',[_vm._v(_vm._s(_vm.$t('features_panel.chat')))]):_vm._e(),_vm._v(\" \"),(_vm.gopher)?_c('li',[_vm._v(_vm._s(_vm.$t('features_panel.gopher')))]):_vm._e(),_vm._v(\" \"),(_vm.whoToFollow)?_c('li',[_vm._v(_vm._s(_vm.$t('features_panel.who_to_follow')))]):_vm._e(),_vm._v(\" \"),(_vm.mediaProxy)?_c('li',[_vm._v(_vm._s(_vm.$t('features_panel.media_proxy')))]):_vm._e(),_vm._v(\" \"),_c('li',[_vm._v(_vm._s(_vm.$t('features_panel.scope_options')))]),_vm._v(\" \"),_c('li',[_vm._v(_vm._s(_vm.$t('features_panel.text_limit'))+\" = \"+_vm._s(_vm.textlimit))])])])])])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"panel panel-default\"},[_c('div',{staticClass:\"panel-body\"},[_c('div',{staticClass:\"tos-content\",domProps:{\"innerHTML\":_vm._s(_vm.content)}})])])])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"sidebar\"},[_c('instance-specific-panel'),_vm._v(\" \"),(_vm.showFeaturesPanel)?_c('features-panel'):_vm._e(),_vm._v(\" \"),_c('terms-of-service-panel')],1)}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"user-panel\"},[(_vm.signedIn)?_c('div',{key:\"user-panel\",staticClass:\"panel panel-default signed-in\"},[_c('UserCard',{attrs:{\"user\":_vm.user,\"hideBio\":true,\"rounded\":\"top\"}}),_vm._v(\" \"),_c('div',{staticClass:\"panel-footer\"},[(_vm.user)?_c('post-status-form'):_vm._e()],1)],1):_c('auth-form',{key:\"user-panel\"})],1)}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"nav-panel\"},[_c('div',{staticClass:\"panel panel-default\"},[_c('ul',[(_vm.currentUser)?_c('li',[_c('router-link',{attrs:{\"to\":{ name: 'friends' }}},[_vm._v(\"\\n \"+_vm._s(_vm.$t(\"nav.timeline\"))+\"\\n \")])],1):_vm._e(),_vm._v(\" \"),(_vm.currentUser)?_c('li',[_c('router-link',{attrs:{\"to\":{ name: 'interactions', params: { username: _vm.currentUser.screen_name } }}},[_vm._v(\"\\n \"+_vm._s(_vm.$t(\"nav.interactions\"))+\"\\n \")])],1):_vm._e(),_vm._v(\" \"),(_vm.currentUser)?_c('li',[_c('router-link',{attrs:{\"to\":{ name: 'dms', params: { username: _vm.currentUser.screen_name } }}},[_vm._v(\"\\n \"+_vm._s(_vm.$t(\"nav.dms\"))+\"\\n \")])],1):_vm._e(),_vm._v(\" \"),(_vm.currentUser && _vm.currentUser.locked)?_c('li',[_c('router-link',{attrs:{\"to\":{ name: 'friend-requests' }}},[_vm._v(\"\\n \"+_vm._s(_vm.$t(\"nav.friend_requests\"))+\"\\n \"),(_vm.followRequestCount > 0)?_c('span',{staticClass:\"badge follow-request-count\"},[_vm._v(\"\\n \"+_vm._s(_vm.followRequestCount)+\"\\n \")]):_vm._e()])],1):_vm._e(),_vm._v(\" \"),_c('li',[_c('router-link',{attrs:{\"to\":{ name: 'public-timeline' }}},[_vm._v(\"\\n \"+_vm._s(_vm.$t(\"nav.public_tl\"))+\"\\n \")])],1),_vm._v(\" \"),_c('li',[_c('router-link',{attrs:{\"to\":{ name: 'public-external-timeline' }}},[_vm._v(\"\\n \"+_vm._s(_vm.$t(\"nav.twkn\"))+\"\\n \")])],1)])])])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"user-finder-container\"},[(_vm.loading)?_c('i',{staticClass:\"icon-spin4 user-finder-icon animate-spin-slow\"}):_vm._e(),_vm._v(\" \"),(_vm.hidden)?_c('a',{attrs:{\"href\":\"#\",\"title\":_vm.$t('finder.find_user')}},[_c('i',{staticClass:\"icon-user-plus user-finder-icon\",on:{\"click\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.toggleHidden($event)}}})]):[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.username),expression:\"username\"}],ref:\"userSearchInput\",staticClass:\"user-finder-input\",attrs:{\"placeholder\":_vm.$t('finder.find_user'),\"id\":\"user-finder-input\",\"type\":\"text\"},domProps:{\"value\":(_vm.username)},on:{\"keyup\":function($event){if(!('button' in $event)&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\")){ return null; }_vm.findUser(_vm.username)},\"input\":function($event){if($event.target.composing){ return; }_vm.username=$event.target.value}}}),_vm._v(\" \"),_c('button',{staticClass:\"btn search-button\",on:{\"click\":function($event){_vm.findUser(_vm.username)}}},[_c('i',{staticClass:\"icon-search\"})]),_vm._v(\" \"),_c('i',{staticClass:\"button-icon icon-cancel user-finder-icon\",on:{\"click\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.toggleHidden($event)}}})]],2)])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"who-to-follow-panel\"},[_c('div',{staticClass:\"panel panel-default base01-background\"},[_c('div',{staticClass:\"panel-heading timeline-heading base02-background base04\"},[_c('div',{staticClass:\"title\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('who_to_follow.who_to_follow'))+\"\\n \")])]),_vm._v(\" \"),_c('div',{staticClass:\"who-to-follow\"},[_vm._l((_vm.usersToFollow),function(user){return _c('p',{staticClass:\"who-to-follow-items\"},[_c('img',{attrs:{\"src\":user.img}}),_vm._v(\" \"),_c('router-link',{attrs:{\"to\":_vm.userProfileLink(user.id, user.name)}},[_vm._v(\"\\n \"+_vm._s(user.name)+\"\\n \")]),_c('br')],1)}),_vm._v(\" \"),_c('p',{staticClass:\"who-to-follow-more\"},[_c('router-link',{attrs:{\"to\":{ name: 'who-to-follow' }}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('who_to_follow.more'))+\"\\n \")])],1)],2)])])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.showing)?_c('div',{staticClass:\"modal-view media-modal-view\",on:{\"click\":function($event){$event.preventDefault();return _vm.hide($event)}}},[(_vm.type === 'image')?_c('img',{staticClass:\"modal-image\",attrs:{\"src\":_vm.currentMedia.url}}):_vm._e(),_vm._v(\" \"),(_vm.type === 'video')?_c('VideoAttachment',{staticClass:\"modal-image\",attrs:{\"attachment\":_vm.currentMedia,\"controls\":true},nativeOn:{\"click\":function($event){$event.stopPropagation();}}}):_vm._e(),_vm._v(\" \"),(_vm.canNavigate)?_c('button',{staticClass:\"modal-view-button-arrow modal-view-button-arrow--prev\",attrs:{\"title\":_vm.$t('media_modal.previous')},on:{\"click\":function($event){$event.stopPropagation();$event.preventDefault();return _vm.goPrev($event)}}},[_c('i',{staticClass:\"icon-left-open arrow-icon\"})]):_vm._e(),_vm._v(\" \"),(_vm.canNavigate)?_c('button',{staticClass:\"modal-view-button-arrow modal-view-button-arrow--next\",attrs:{\"title\":_vm.$t('media_modal.next')},on:{\"click\":function($event){$event.stopPropagation();$event.preventDefault();return _vm.goNext($event)}}},[_c('i',{staticClass:\"icon-right-open arrow-icon\"})]):_vm._e()],1):_vm._e()}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"side-drawer-container\",class:{ 'side-drawer-container-closed': _vm.closed, 'side-drawer-container-open': !_vm.closed }},[_c('div',{staticClass:\"side-drawer-darken\",class:{ 'side-drawer-darken-closed': _vm.closed}}),_vm._v(\" \"),_c('div',{staticClass:\"side-drawer\",class:{'side-drawer-closed': _vm.closed},on:{\"touchstart\":_vm.touchStart,\"touchmove\":_vm.touchMove}},[_c('div',{staticClass:\"side-drawer-heading\",on:{\"click\":_vm.toggleDrawer}},[(_vm.currentUser)?_c('UserCard',{attrs:{\"user\":_vm.currentUser,\"hideBio\":true}}):_c('div',{staticClass:\"side-drawer-logo-wrapper\"},[_c('img',{attrs:{\"src\":_vm.logo}}),_vm._v(\" \"),_c('span',[_vm._v(_vm._s(_vm.sitename))])])],1),_vm._v(\" \"),_c('ul',[(!_vm.currentUser)?_c('li',{on:{\"click\":_vm.toggleDrawer}},[_c('router-link',{attrs:{\"to\":{ name: 'login' }}},[_vm._v(\"\\n \"+_vm._s(_vm.$t(\"login.login\"))+\"\\n \")])],1):_vm._e(),_vm._v(\" \"),(_vm.currentUser)?_c('li',{on:{\"click\":_vm.toggleDrawer}},[_c('router-link',{attrs:{\"to\":{ name: 'dms', params: { username: _vm.currentUser.screen_name } }}},[_vm._v(\"\\n \"+_vm._s(_vm.$t(\"nav.dms\"))+\"\\n \")])],1):_vm._e(),_vm._v(\" \"),(_vm.currentUser)?_c('li',{on:{\"click\":_vm.toggleDrawer}},[_c('router-link',{attrs:{\"to\":{ name: 'interactions', params: { username: _vm.currentUser.screen_name } }}},[_vm._v(\"\\n \"+_vm._s(_vm.$t(\"nav.interactions\"))+\"\\n \")])],1):_vm._e()]),_vm._v(\" \"),_c('ul',[(_vm.currentUser)?_c('li',{on:{\"click\":_vm.toggleDrawer}},[_c('router-link',{attrs:{\"to\":{ name: 'friends' }}},[_vm._v(\"\\n \"+_vm._s(_vm.$t(\"nav.timeline\"))+\"\\n \")])],1):_vm._e(),_vm._v(\" \"),(_vm.currentUser && _vm.currentUser.locked)?_c('li',{on:{\"click\":_vm.toggleDrawer}},[_c('router-link',{attrs:{\"to\":\"/friend-requests\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t(\"nav.friend_requests\"))+\"\\n \"),(_vm.followRequestCount > 0)?_c('span',{staticClass:\"badge follow-request-count\"},[_vm._v(\"\\n \"+_vm._s(_vm.followRequestCount)+\"\\n \")]):_vm._e()])],1):_vm._e(),_vm._v(\" \"),_c('li',{on:{\"click\":_vm.toggleDrawer}},[_c('router-link',{attrs:{\"to\":\"/main/public\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t(\"nav.public_tl\"))+\"\\n \")])],1),_vm._v(\" \"),_c('li',{on:{\"click\":_vm.toggleDrawer}},[_c('router-link',{attrs:{\"to\":\"/main/all\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t(\"nav.twkn\"))+\"\\n \")])],1),_vm._v(\" \"),(_vm.currentUser && _vm.chat)?_c('li',{on:{\"click\":_vm.toggleDrawer}},[_c('router-link',{attrs:{\"to\":{ name: 'chat' }}},[_vm._v(\"\\n \"+_vm._s(_vm.$t(\"nav.chat\"))+\"\\n \")])],1):_vm._e()]),_vm._v(\" \"),_c('ul',[_c('li',{on:{\"click\":_vm.toggleDrawer}},[_c('router-link',{attrs:{\"to\":{ name: 'user-search' }}},[_vm._v(\"\\n \"+_vm._s(_vm.$t(\"nav.user_search\"))+\"\\n \")])],1),_vm._v(\" \"),(_vm.currentUser && _vm.suggestionsEnabled)?_c('li',{on:{\"click\":_vm.toggleDrawer}},[_c('router-link',{attrs:{\"to\":{ name: 'who-to-follow' }}},[_vm._v(\"\\n \"+_vm._s(_vm.$t(\"nav.who_to_follow\"))+\"\\n \")])],1):_vm._e(),_vm._v(\" \"),_c('li',{on:{\"click\":_vm.toggleDrawer}},[_c('router-link',{attrs:{\"to\":{ name: 'settings' }}},[_vm._v(\"\\n \"+_vm._s(_vm.$t(\"settings.settings\"))+\"\\n \")])],1),_vm._v(\" \"),_c('li',{on:{\"click\":_vm.toggleDrawer}},[_c('router-link',{attrs:{\"to\":{ name: 'about'}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t(\"nav.about\"))+\"\\n \")])],1),_vm._v(\" \"),(_vm.currentUser)?_c('li',{on:{\"click\":_vm.toggleDrawer}},[_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":_vm.doLogout}},[_vm._v(\"\\n \"+_vm._s(_vm.$t(\"login.logout\"))+\"\\n \")])]):_vm._e()])]),_vm._v(\" \"),_c('div',{staticClass:\"side-drawer-click-outside\",class:{'side-drawer-click-outside-closed': _vm.closed},on:{\"click\":function($event){$event.stopPropagation();$event.preventDefault();return _vm.toggleDrawer($event)}}})])}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.currentUser)?_c('div',[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.postFormOpen),expression:\"postFormOpen\"}],staticClass:\"post-form-modal-view modal-view\",on:{\"click\":_vm.closePostForm}},[_c('div',{staticClass:\"post-form-modal-panel panel\",on:{\"click\":function($event){$event.stopPropagation();}}},[_c('div',{staticClass:\"panel-heading\"},[_vm._v(_vm._s(_vm.$t('post_status.new_status')))]),_vm._v(\" \"),_c('PostStatusForm',{staticClass:\"panel-body\",on:{\"posted\":_vm.closePostForm}})],1)]),_vm._v(\" \"),_c('button',{staticClass:\"new-status-button\",class:{ 'hidden': _vm.isHidden },on:{\"click\":_vm.openPostForm}},[_c('i',{staticClass:\"icon-edit\"})])]):_vm._e()}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('nav',{staticClass:\"nav-bar container\",attrs:{\"id\":\"nav\"}},[_c('div',{staticClass:\"mobile-inner-nav\",on:{\"click\":function($event){_vm.scrollToTop()}}},[_c('div',{staticClass:\"item\"},[_c('a',{staticClass:\"mobile-nav-button\",attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.stopPropagation();$event.preventDefault();_vm.toggleMobileSidebar()}}},[_c('i',{staticClass:\"button-icon icon-menu\"})]),_vm._v(\" \"),_c('router-link',{staticClass:\"site-name\",attrs:{\"to\":{ name: 'root' },\"active-class\":\"home\"}},[_vm._v(_vm._s(_vm.sitename))])],1),_vm._v(\" \"),_c('div',{staticClass:\"item right\"},[(_vm.currentUser)?_c('a',{staticClass:\"mobile-nav-button\",attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.stopPropagation();$event.preventDefault();_vm.openMobileNotifications()}}},[_c('i',{staticClass:\"button-icon icon-bell-alt\"}),_vm._v(\" \"),(_vm.unseenNotificationsCount)?_c('div',{staticClass:\"alert-dot\"}):_vm._e()]):_vm._e()])])]),_vm._v(\" \"),(_vm.currentUser)?_c('div',{staticClass:\"mobile-notifications-drawer\",class:{ 'closed': !_vm.notificationsOpen },on:{\"touchstart\":function($event){$event.stopPropagation();return _vm.notificationsTouchStart($event)},\"touchmove\":function($event){$event.stopPropagation();return _vm.notificationsTouchMove($event)}}},[_c('div',{staticClass:\"mobile-notifications-header\"},[_c('span',{staticClass:\"title\"},[_vm._v(_vm._s(_vm.$t('notifications.notifications')))]),_vm._v(\" \"),_c('a',{staticClass:\"mobile-nav-button\",on:{\"click\":function($event){$event.stopPropagation();$event.preventDefault();_vm.closeMobileNotifications()}}},[_c('i',{staticClass:\"button-icon icon-cancel\"})])]),_vm._v(\" \"),_c('div',{staticClass:\"mobile-notifications\",on:{\"scroll\":_vm.onScroll}},[_c('Notifications',{ref:\"notifications\",attrs:{\"noHeading\":true}})],1)]):_vm._e(),_vm._v(\" \"),_c('SideDrawer',{ref:\"sideDrawer\",attrs:{\"logout\":_vm.logout}}),_vm._v(\" \"),_c('MobilePostStatusModal')],1)}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.isOpen)?_c('div',{staticClass:\"modal-view\",on:{\"click\":_vm.closeModal}},[_c('div',{staticClass:\"user-reporting-panel panel\",on:{\"click\":function($event){$event.stopPropagation();}}},[_c('div',{staticClass:\"panel-heading\"},[_c('div',{staticClass:\"title\"},[_vm._v(_vm._s(_vm.$t('user_reporting.title', [_vm.user.screen_name])))])]),_vm._v(\" \"),_c('div',{staticClass:\"panel-body\"},[_c('div',{staticClass:\"user-reporting-panel-left\"},[_c('div',[_c('p',[_vm._v(_vm._s(_vm.$t('user_reporting.add_comment_description')))]),_vm._v(\" \"),_c('textarea',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.comment),expression:\"comment\"}],staticClass:\"form-control\",attrs:{\"placeholder\":_vm.$t('user_reporting.additional_comments'),\"rows\":\"1\"},domProps:{\"value\":(_vm.comment)},on:{\"input\":[function($event){if($event.target.composing){ return; }_vm.comment=$event.target.value},_vm.resize]}})]),_vm._v(\" \"),(!_vm.user.is_local)?_c('div',[_c('p',[_vm._v(_vm._s(_vm.$t('user_reporting.forward_description')))]),_vm._v(\" \"),_c('Checkbox',{model:{value:(_vm.forward),callback:function ($$v) {_vm.forward=$$v},expression:\"forward\"}},[_vm._v(_vm._s(_vm.$t('user_reporting.forward_to', [_vm.remoteInstance])))])],1):_vm._e(),_vm._v(\" \"),_c('div',[_c('button',{staticClass:\"btn btn-default\",attrs:{\"disabled\":_vm.processing},on:{\"click\":_vm.reportUser}},[_vm._v(_vm._s(_vm.$t('user_reporting.submit')))]),_vm._v(\" \"),(_vm.error)?_c('div',{staticClass:\"alert error\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_reporting.generic_error'))+\"\\n \")]):_vm._e()])]),_vm._v(\" \"),_c('div',{staticClass:\"user-reporting-panel-right\"},[_c('List',{attrs:{\"items\":_vm.statuses},scopedSlots:_vm._u([{key:\"item\",fn:function(ref){\nvar item = ref.item;\nreturn [_c('div',{staticClass:\"status-fadein user-reporting-panel-sitem\"},[_c('Status',{attrs:{\"inConversation\":false,\"focused\":false,\"statusoid\":item}}),_vm._v(\" \"),_c('Checkbox',{attrs:{\"checked\":_vm.isChecked(item.id)},on:{\"change\":function (checked) { return _vm.toggleStatus(checked, item.id); }}})],1)]}}])})],1)])])]):_vm._e()}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{style:(_vm.bgAppStyle),attrs:{\"id\":\"app\"}},[_c('div',{staticClass:\"app-bg-wrapper\",style:(_vm.bgStyle)}),_vm._v(\" \"),(_vm.isMobileLayout)?_c('MobileNav'):_c('nav',{staticClass:\"nav-bar container\",attrs:{\"id\":\"nav\"},on:{\"click\":function($event){_vm.scrollToTop()}}},[_c('div',{staticClass:\"logo\",style:(_vm.logoBgStyle)},[_c('div',{staticClass:\"mask\",style:(_vm.logoMaskStyle)}),_vm._v(\" \"),_c('img',{style:(_vm.logoStyle),attrs:{\"src\":_vm.logo}})]),_vm._v(\" \"),_c('div',{staticClass:\"inner-nav\"},[_c('div',{staticClass:\"item\"},[_c('router-link',{staticClass:\"site-name\",attrs:{\"to\":{ name: 'root' },\"active-class\":\"home\"}},[_vm._v(_vm._s(_vm.sitename))])],1),_vm._v(\" \"),_c('div',{staticClass:\"item right\"},[_c('user-finder',{staticClass:\"button-icon nav-icon mobile-hidden\",on:{\"toggled\":_vm.onFinderToggled}}),_vm._v(\" \"),_c('router-link',{staticClass:\"mobile-hidden\",attrs:{\"to\":{ name: 'settings'}}},[_c('i',{staticClass:\"button-icon icon-cog nav-icon\",attrs:{\"title\":_vm.$t('nav.preferences')}})]),_vm._v(\" \"),(_vm.currentUser)?_c('a',{staticClass:\"mobile-hidden\",attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.logout($event)}}},[_c('i',{staticClass:\"button-icon icon-logout nav-icon\",attrs:{\"title\":_vm.$t('login.logout')}})]):_vm._e()],1)])]),_vm._v(\" \"),_c('div',{staticClass:\"container\",attrs:{\"id\":\"content\"}},[_c('div',{staticClass:\"sidebar-flexer mobile-hidden\"},[_c('div',{staticClass:\"sidebar-bounds\"},[_c('div',{staticClass:\"sidebar-scroller\"},[_c('div',{staticClass:\"sidebar\"},[_c('user-panel'),_vm._v(\" \"),(!_vm.isMobileLayout)?_c('div',[_c('nav-panel'),_vm._v(\" \"),(_vm.showInstanceSpecificPanel)?_c('instance-specific-panel'):_vm._e(),_vm._v(\" \"),(!_vm.currentUser && _vm.showFeaturesPanel)?_c('features-panel'):_vm._e(),_vm._v(\" \"),(_vm.currentUser && _vm.suggestionsEnabled)?_c('who-to-follow-panel'):_vm._e(),_vm._v(\" \"),(_vm.currentUser)?_c('notifications'):_vm._e()],1):_vm._e()],1)])])]),_vm._v(\" \"),_c('div',{staticClass:\"main\"},[(!_vm.currentUser)?_c('div',{staticClass:\"login-hint panel panel-default\"},[_c('router-link',{staticClass:\"panel-body\",attrs:{\"to\":{ name: 'login' }}},[_vm._v(\"\\n \"+_vm._s(_vm.$t(\"login.hint\"))+\"\\n \")])],1):_vm._e(),_vm._v(\" \"),_c('transition',{attrs:{\"name\":\"fade\"}},[_c('router-view')],1)],1),_vm._v(\" \"),_c('media-modal')],1),_vm._v(\" \"),(_vm.currentUser && _vm.chat)?_c('chat-panel',{staticClass:\"floating-chat mobile-hidden\",attrs:{\"floating\":true}}):_vm._e(),_vm._v(\" \"),_c('UserReportingModal'),_vm._v(\" \"),_c('portal-target',{attrs:{\"name\":\"modal\"}})],1)}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","const qvitterStatusType = (status) => {\n if (status.is_post_verb) {\n return 'status'\n }\n\n if (status.retweeted_status) {\n return 'retweet'\n }\n\n if ((typeof status.uri === 'string' && status.uri.match(/(fave|objectType=Favourite)/)) ||\n (typeof status.text === 'string' && status.text.match(/favorited/))) {\n return 'favorite'\n }\n\n if (status.text.match(/deleted notice {{tag/) || status.qvitter_delete_notice) {\n return 'deletion'\n }\n\n if (status.text.match(/started following/) || status.activity_type === 'follow') {\n return 'follow'\n }\n\n return 'unknown'\n}\n\nexport const parseUser = (data) => {\n const output = {}\n const masto = data.hasOwnProperty('acct')\n // case for users in \"mentions\" property for statuses in MastoAPI\n const mastoShort = masto && !data.hasOwnProperty('avatar')\n\n output.id = String(data.id)\n\n if (masto) {\n output.screen_name = data.acct\n output.statusnet_profile_url = data.url\n\n // There's nothing else to get\n if (mastoShort) {\n return output\n }\n\n output.name = data.display_name\n output.name_html = addEmojis(data.display_name, data.emojis)\n\n output.description = data.note\n output.description_html = addEmojis(data.note, data.emojis)\n\n // Utilize avatar_static for gif avatars?\n output.profile_image_url = data.avatar\n output.profile_image_url_original = data.avatar\n\n // Same, utilize header_static?\n output.cover_photo = data.header\n\n output.friends_count = data.following_count\n\n output.bot = data.bot\n\n if (data.pleroma) {\n const relationship = data.pleroma.relationship\n\n output.background_image = data.pleroma.background_image\n output.token = data.pleroma.chat_token\n\n if (relationship) {\n output.follows_you = relationship.followed_by\n output.following = relationship.following\n output.statusnet_blocking = relationship.blocking\n output.muted = relationship.muting\n }\n\n output.rights = {\n moderator: data.pleroma.is_moderator,\n admin: data.pleroma.is_admin\n }\n // TODO: Clean up in UI? This is duplication from what BE does for qvitterapi\n if (output.rights.admin) {\n output.role = 'admin'\n } else if (output.rights.moderator) {\n output.role = 'moderator'\n } else {\n output.role = 'member'\n }\n }\n\n if (data.source) {\n output.description = data.source.note\n output.default_scope = data.source.privacy\n if (data.source.pleroma) {\n output.no_rich_text = data.source.pleroma.no_rich_text\n output.show_role = data.source.pleroma.show_role\n }\n }\n\n // TODO: handle is_local\n output.is_local = !output.screen_name.includes('@')\n } else {\n output.screen_name = data.screen_name\n\n output.name = data.name\n output.name_html = data.name_html\n\n output.description = data.description\n output.description_html = data.description_html\n\n output.profile_image_url = data.profile_image_url\n output.profile_image_url_original = data.profile_image_url_original\n\n output.cover_photo = data.cover_photo\n\n output.friends_count = data.friends_count\n\n // output.bot = ??? missing\n\n output.statusnet_profile_url = data.statusnet_profile_url\n\n output.statusnet_blocking = data.statusnet_blocking\n\n output.is_local = data.is_local\n output.role = data.role\n output.show_role = data.show_role\n\n output.follows_you = data.follows_you\n\n output.muted = data.muted\n\n if (data.rights) {\n output.rights = {\n moderator: data.rights.delete_others_notice,\n admin: data.rights.admin\n }\n }\n output.no_rich_text = data.no_rich_text\n output.default_scope = data.default_scope\n output.hide_follows = data.hide_follows\n output.hide_followers = data.hide_followers\n output.background_image = data.background_image\n // on mastoapi this info is contained in a \"relationship\"\n output.following = data.following\n // Websocket token\n output.token = data.token\n }\n\n output.created_at = new Date(data.created_at)\n output.locked = data.locked\n output.followers_count = data.followers_count\n output.statuses_count = data.statuses_count\n output.friendIds = []\n output.followerIds = []\n output.pinnedStatuseIds = []\n\n if (data.pleroma) {\n output.follow_request_count = data.pleroma.follow_request_count\n\n output.tags = data.pleroma.tags\n output.deactivated = data.pleroma.deactivated\n\n output.notification_settings = data.pleroma.notification_settings\n }\n\n output.tags = output.tags || []\n output.rights = output.rights || {}\n output.notification_settings = output.notification_settings || {}\n\n return output\n}\n\nexport const parseAttachment = (data) => {\n const output = {}\n const masto = !data.hasOwnProperty('oembed')\n\n if (masto) {\n // Not exactly same...\n output.mimetype = data.pleroma ? data.pleroma.mime_type : data.type\n output.meta = data.meta // not present in BE yet\n output.id = data.id\n } else {\n output.mimetype = data.mimetype\n // output.meta = ??? missing\n }\n\n output.url = data.url\n output.description = data.description\n\n return output\n}\nexport const addEmojis = (string, emojis) => {\n return emojis.reduce((acc, emoji) => {\n return acc.replace(\n new RegExp(`:${emoji.shortcode}:`, 'g'),\n `<img src='${emoji.url}' alt='${emoji.shortcode}' title='${emoji.shortcode}' class='emoji' />`\n )\n }, string)\n}\n\nexport const parseStatus = (data) => {\n const output = {}\n const masto = data.hasOwnProperty('account')\n\n if (masto) {\n output.favorited = data.favourited\n output.fave_num = data.favourites_count\n\n output.repeated = data.reblogged\n output.repeat_num = data.reblogs_count\n\n output.type = data.reblog ? 'retweet' : 'status'\n output.nsfw = data.sensitive\n\n output.statusnet_html = addEmojis(data.content, data.emojis)\n\n output.tags = data.tags\n\n if (data.pleroma) {\n const { pleroma } = data\n output.text = pleroma.content ? data.pleroma.content['text/plain'] : data.content\n output.summary = pleroma.spoiler_text ? data.pleroma.spoiler_text['text/plain'] : data.spoiler_text\n output.statusnet_conversation_id = data.pleroma.conversation_id\n output.is_local = pleroma.local\n output.in_reply_to_screen_name = data.pleroma.in_reply_to_account_acct\n } else {\n output.text = data.content\n output.summary = data.spoiler_text\n }\n\n output.in_reply_to_status_id = data.in_reply_to_id\n output.in_reply_to_user_id = data.in_reply_to_account_id\n output.replies_count = data.replies_count\n\n if (output.type === 'retweet') {\n output.retweeted_status = parseStatus(data.reblog)\n }\n\n output.summary_html = addEmojis(data.spoiler_text, data.emojis)\n output.external_url = data.url\n output.poll = data.poll\n output.pinned = data.pinned\n } else {\n output.favorited = data.favorited\n output.fave_num = data.fave_num\n\n output.repeated = data.repeated\n output.repeat_num = data.repeat_num\n\n // catchall, temporary\n // Object.assign(output, data)\n\n output.type = qvitterStatusType(data)\n\n if (data.nsfw === undefined) {\n output.nsfw = isNsfw(data)\n if (data.retweeted_status) {\n output.nsfw = data.retweeted_status.nsfw\n }\n } else {\n output.nsfw = data.nsfw\n }\n\n output.statusnet_html = data.statusnet_html\n output.text = data.text\n\n output.in_reply_to_status_id = data.in_reply_to_status_id\n output.in_reply_to_user_id = data.in_reply_to_user_id\n output.in_reply_to_screen_name = data.in_reply_to_screen_name\n output.statusnet_conversation_id = data.statusnet_conversation_id\n\n if (output.type === 'retweet') {\n output.retweeted_status = parseStatus(data.retweeted_status)\n }\n\n output.summary = data.summary\n output.summary_html = data.summary_html\n output.external_url = data.external_url\n output.is_local = data.is_local\n }\n\n output.id = String(data.id)\n output.visibility = data.visibility\n output.card = data.card\n output.created_at = new Date(data.created_at)\n\n // Converting to string, the right way.\n output.in_reply_to_status_id = output.in_reply_to_status_id\n ? String(output.in_reply_to_status_id)\n : null\n output.in_reply_to_user_id = output.in_reply_to_user_id\n ? String(output.in_reply_to_user_id)\n : null\n\n output.user = parseUser(masto ? data.account : data.user)\n\n output.attentions = ((masto ? data.mentions : data.attentions) || []).map(parseUser)\n\n output.attachments = ((masto ? data.media_attachments : data.attachments) || [])\n .map(parseAttachment)\n\n const retweetedStatus = masto ? data.reblog : data.retweeted_status\n if (retweetedStatus) {\n output.retweeted_status = parseStatus(retweetedStatus)\n }\n\n output.favoritedBy = []\n output.rebloggedBy = []\n\n return output\n}\n\nexport const parseNotification = (data) => {\n const mastoDict = {\n 'favourite': 'like',\n 'reblog': 'repeat'\n }\n const masto = !data.hasOwnProperty('ntype')\n const output = {}\n\n if (masto) {\n output.type = mastoDict[data.type] || data.type\n output.seen = data.pleroma.is_seen\n output.status = output.type === 'follow'\n ? null\n : parseStatus(data.status)\n output.action = output.status // TODO: Refactor, this is unneeded\n output.from_profile = parseUser(data.account)\n } else {\n const parsedNotice = parseStatus(data.notice)\n output.type = data.ntype\n output.seen = Boolean(data.is_seen)\n output.status = output.type === 'like'\n ? parseStatus(data.notice.favorited_status)\n : parsedNotice\n output.action = parsedNotice\n output.from_profile = parseUser(data.from_profile)\n }\n\n output.created_at = new Date(data.created_at)\n output.id = parseInt(data.id)\n\n return output\n}\n\nconst isNsfw = (status) => {\n const nsfwRegex = /#nsfw/i\n return (status.tags || []).includes('nsfw') || !!(status.text || '').match(nsfwRegex)\n}\n","import { camelCase } from 'lodash'\n\nimport apiService from '../api/api.service.js'\n\nconst update = ({store, statuses, timeline, showImmediately, userId}) => {\n const ccTimeline = camelCase(timeline)\n\n store.dispatch('setError', { value: false })\n\n store.dispatch('addNewStatuses', {\n timeline: ccTimeline,\n userId,\n statuses,\n showImmediately\n })\n}\n\nconst fetchAndUpdate = ({store, credentials, timeline = 'friends', older = false, showImmediately = false, userId = false, tag = false, until}) => {\n const args = { timeline, credentials }\n const rootState = store.rootState || store.state\n const timelineData = rootState.statuses.timelines[camelCase(timeline)]\n const hideMutedPosts = typeof rootState.config.hideMutedPosts === 'undefined'\n ? rootState.instance.hideMutedPosts\n : rootState.config.hideMutedPosts\n\n if (older) {\n args['until'] = until || timelineData.minId\n } else {\n args['since'] = timelineData.maxId\n }\n\n args['userId'] = userId\n args['tag'] = tag\n args['withMuted'] = !hideMutedPosts\n\n const numStatusesBeforeFetch = timelineData.statuses.length\n\n return apiService.fetchTimeline(args)\n .then((statuses) => {\n if (!older && statuses.length >= 20 && !timelineData.loading && numStatusesBeforeFetch > 0) {\n store.dispatch('queueFlush', { timeline: timeline, id: timelineData.maxId })\n }\n update({store, statuses, timeline, showImmediately, userId})\n return statuses\n }, () => store.dispatch('setError', { value: true }))\n}\n\nconst startFetching = ({timeline = 'friends', credentials, store, userId = false, tag = false}) => {\n const rootState = store.rootState || store.state\n const timelineData = rootState.statuses.timelines[camelCase(timeline)]\n const showImmediately = timelineData.visibleStatuses.length === 0\n timelineData.userId = userId\n fetchAndUpdate({timeline, credentials, store, showImmediately, userId, tag})\n const boundFetchAndUpdate = () => fetchAndUpdate({ timeline, credentials, store, userId, tag })\n return setInterval(boundFetchAndUpdate, 10000)\n}\nconst timelineFetcher = {\n fetchAndUpdate,\n startFetching\n}\n\nexport default timelineFetcher\n","import apiService from '../api/api.service.js'\n\nconst update = ({store, notifications, older}) => {\n store.dispatch('setNotificationsError', { value: false })\n\n store.dispatch('addNewNotifications', { notifications, older })\n}\n\nconst fetchAndUpdate = ({store, credentials, older = false}) => {\n const args = { credentials }\n const rootState = store.rootState || store.state\n const timelineData = rootState.statuses.notifications\n\n args['timeline'] = 'notifications'\n if (older) {\n if (timelineData.minId !== Number.POSITIVE_INFINITY) {\n args['until'] = timelineData.minId\n }\n return fetchNotifications({ store, args, older })\n } else {\n // fetch new notifications\n if (timelineData.maxId !== Number.POSITIVE_INFINITY) {\n args['since'] = timelineData.maxId\n }\n const result = fetchNotifications({ store, args, older })\n\n // load unread notifications repeatedly to provide consistency between browser tabs\n const notifications = timelineData.data\n const unread = notifications.filter(n => !n.seen).map(n => n.id)\n if (unread.length) {\n args['since'] = Math.min(...unread)\n fetchNotifications({ store, args, older })\n }\n\n return result\n }\n}\n\nconst fetchNotifications = ({ store, args, older }) => {\n return apiService.fetchTimeline(args)\n .then((notifications) => {\n update({ store, notifications, older })\n return notifications\n }, () => store.dispatch('setNotificationsError', { value: true }))\n .catch(() => store.dispatch('setNotificationsError', { value: true }))\n}\n\nconst startFetching = ({credentials, store}) => {\n fetchAndUpdate({ credentials, store })\n const boundFetchAndUpdate = () => fetchAndUpdate({ credentials, store })\n // Initially there's set flag to silence all desktop notifications so\n // that there won't spam of them when user just opened up the FE we\n // reset that flag after a while to show new notifications once again.\n setTimeout(() => store.dispatch('setNotificationsSilence', false), 10000)\n return setInterval(boundFetchAndUpdate, 10000)\n}\n\nconst notificationsFetcher = {\n fetchAndUpdate,\n startFetching\n}\n\nexport default notificationsFetcher\n","import utils from './utils.js'\nimport { parseUser } from '../entity_normalizer/entity_normalizer.service.js'\n\nconst search = ({query, store}) => {\n return utils.request({\n store,\n url: '/api/v1/accounts/search',\n params: {\n q: query,\n resolve: true\n }\n })\n .then((data) => data.json())\n .then((data) => data.map(parseUser))\n}\nconst UserSearch = {\n search\n}\n\nexport default UserSearch\n","// When contributing, please sort JSON before committing so it would be easier to see what's missing and what's being added compared to English and other languages. It's not obligatory, but just an advice.\n// To sort json use jq https://stedolan.github.io/jq and invoke it like `jq -S . xx.json > xx.sorted.json`, AFAIK, there's no inplace edit option like in sed\n// Also, when adding a new language to \"messages\" variable, please do it alphabetically by language code so that users can search or check their custom language easily.\n\n// For anyone contributing to old huge messages.js and in need to quickly convert it to JSON\n// sed command for converting currently formatted JS to JSON:\n// sed -i -e \"s/'//gm\" -e 's/\"/\\\\\"/gm' -re 's/^( +)(.+?): ((.+?))?(,?)(\\{?)$/\\1\"\\2\": \"\\4\"/gm' -e 's/\\\"\\{\\\"/{/g' -e 's/,\"$/\",/g' file.json\n// There's only problem that apostrophe character ' gets replaced by \\\\ so you have to fix it manually, sorry.\n\nconst messages = {\n ar: require('./ar.json'),\n ca: require('./ca.json'),\n cs: require('./cs.json'),\n de: require('./de.json'),\n en: require('./en.json'),\n eo: require('./eo.json'),\n es: require('./es.json'),\n et: require('./et.json'),\n fi: require('./fi.json'),\n fr: require('./fr.json'),\n ga: require('./ga.json'),\n he: require('./he.json'),\n hu: require('./hu.json'),\n it: require('./it.json'),\n ja: require('./ja.json'),\n ja_pedantic: require('./ja_pedantic.json'),\n ko: require('./ko.json'),\n nb: require('./nb.json'),\n nl: require('./nl.json'),\n oc: require('./oc.json'),\n pl: require('./pl.json'),\n pt: require('./pt.json'),\n ro: require('./ro.json'),\n ru: require('./ru.json'),\n zh: require('./zh.json')\n}\n\nexport default messages\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./attachment.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./attachment.js\"\nimport __vue_script__ from \"!!babel-loader!./attachment.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-608c26d2\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./attachment.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","/* script */\nexport * from \"!!babel-loader!./video_attachment.js\"\nimport __vue_script__ from \"!!babel-loader!./video_attachment.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-10dde0a9\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./video_attachment.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","export const SECOND = 1000\nexport const MINUTE = 60 * SECOND\nexport const HOUR = 60 * MINUTE\nexport const DAY = 24 * HOUR\nexport const WEEK = 7 * DAY\nexport const MONTH = 30 * DAY\nexport const YEAR = 365.25 * DAY\n\nexport const relativeTime = (date, nowThreshold = 1) => {\n if (typeof date === 'string') date = Date.parse(date)\n const round = Date.now() > date ? Math.floor : Math.ceil\n const d = Math.abs(Date.now() - date)\n let r = { num: round(d / YEAR), key: 'time.years' }\n if (d < nowThreshold * SECOND) {\n r.num = 0\n r.key = 'time.now'\n } else if (d < MINUTE) {\n r.num = round(d / SECOND)\n r.key = 'time.seconds'\n } else if (d < HOUR) {\n r.num = round(d / MINUTE)\n r.key = 'time.minutes'\n } else if (d < DAY) {\n r.num = round(d / HOUR)\n r.key = 'time.hours'\n } else if (d < WEEK) {\n r.num = round(d / DAY)\n r.key = 'time.days'\n } else if (d < MONTH) {\n r.num = round(d / WEEK)\n r.key = 'time.weeks'\n } else if (d < YEAR) {\n r.num = round(d / MONTH)\n r.key = 'time.months'\n }\n // Remove plural form when singular\n if (r.num === 1) r.key = r.key.slice(0, -1)\n return r\n}\n\nexport const relativeTimeShort = (date, nowThreshold = 1) => {\n const r = relativeTime(date, nowThreshold)\n r.key += '_short'\n return r\n}\n","import { map } from 'lodash'\nimport apiService from '../api/api.service.js'\n\nconst postStatus = ({ store, status, spoilerText, visibility, sensitive, poll, media = [], inReplyToStatusId = undefined, contentType = 'text/plain' }) => {\n const mediaIds = map(media, 'id')\n\n return apiService.postStatus({\n credentials: store.state.users.currentUser.credentials,\n status,\n spoilerText,\n visibility,\n sensitive,\n mediaIds,\n inReplyToStatusId,\n contentType,\n poll})\n .then((data) => {\n if (!data.error) {\n store.dispatch('addNewStatuses', {\n statuses: [data],\n timeline: 'friends',\n showImmediately: true,\n noIdUpdate: true // To prevent missing notices on next pull.\n })\n }\n return data\n })\n .catch((err) => {\n return {\n error: err.message\n }\n })\n}\n\nconst uploadMedia = ({ store, formData }) => {\n const credentials = store.state.users.currentUser.credentials\n\n return apiService.uploadMedia({ credentials, formData })\n}\n\nconst statusPosterService = {\n postStatus,\n uploadMedia\n}\n\nexport default statusPosterService\n","const fileSizeFormat = (num) => {\n var exponent\n var unit\n var units = ['B', 'KiB', 'MiB', 'GiB', 'TiB']\n if (num < 1) {\n return num + ' ' + units[0]\n }\n\n exponent = Math.min(Math.floor(Math.log(num) / Math.log(1024)), units.length - 1)\n num = (num / Math.pow(1024, exponent)).toFixed(2) * 1\n unit = units[exponent]\n return {num: num, unit: unit}\n}\nconst fileSizeFormatService = {\n fileSizeFormat\n}\nexport default fileSizeFormatService\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./scope_selector.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./scope_selector.js\"\nimport __vue_script__ from \"!!babel-loader!./scope_selector.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-ad4ca5da\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./scope_selector.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./emoji-input.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./emoji-input.js\"\nimport __vue_script__ from \"!!babel-loader!./emoji-input.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-79e9770b\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./emoji-input.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","/**\n * suggest - generates a suggestor function to be used by emoji-input\n * data: object providing source information for specific types of suggestions:\n * data.emoji - optional, an array of all emoji available i.e.\n * (state.instance.emoji + state.instance.customEmoji)\n * data.users - optional, an array of all known users\n *\n * Depending on data present one or both (or none) can be present, so if field\n * doesn't support user linking you can just provide only emoji.\n */\nexport default data => input => {\n const firstChar = input[0]\n if (firstChar === ':' && data.emoji) {\n return suggestEmoji(data.emoji)(input)\n }\n if (firstChar === '@' && data.users) {\n return suggestUsers(data.users)(input)\n }\n return []\n}\n\nexport const suggestEmoji = emojis => input => {\n const noPrefix = input.toLowerCase().substr(1)\n return emojis\n .filter(({ displayText }) => displayText.toLowerCase().startsWith(noPrefix))\n .sort((a, b) => {\n let aScore = 0\n let bScore = 0\n\n // Make custom emojis a priority\n aScore += a.imageUrl ? 10 : 0\n bScore += b.imageUrl ? 10 : 0\n\n // Sort alphabetically\n const alphabetically = a.displayText > b.displayText ? 1 : -1\n\n return bScore - aScore + alphabetically\n })\n}\n\nexport const suggestUsers = users => input => {\n const noPrefix = input.toLowerCase().substr(1)\n return users.filter(\n user =>\n user.screen_name.toLowerCase().startsWith(noPrefix) ||\n user.name.toLowerCase().startsWith(noPrefix)\n\n /* taking only 20 results so that sorting is a bit cheaper, we display\n * only 5 anyway. could be inaccurate, but we ideally we should query\n * backend anyway\n */\n ).slice(0, 20).sort((a, b) => {\n let aScore = 0\n let bScore = 0\n\n // Matches on screen name (i.e. user@instance) makes a priority\n aScore += a.screen_name.toLowerCase().startsWith(noPrefix) ? 2 : 0\n bScore += b.screen_name.toLowerCase().startsWith(noPrefix) ? 2 : 0\n\n // Matches on name takes second priority\n aScore += a.name.toLowerCase().startsWith(noPrefix) ? 1 : 0\n bScore += b.name.toLowerCase().startsWith(noPrefix) ? 1 : 0\n\n const diff = (bScore - aScore) * 10\n\n // Then sort alphabetically\n const nameAlphabetically = a.name > b.name ? 1 : -1\n const screenNameAlphabetically = a.screen_name > b.screen_name ? 1 : -1\n\n return diff + nameAlphabetically + screenNameAlphabetically\n /* eslint-disable camelcase */\n }).map(({ screen_name, name, profile_image_url_original }) => ({\n displayText: screen_name,\n detailText: name,\n imageUrl: profile_image_url_original,\n replacement: '@' + screen_name + ' '\n }))\n /* eslint-enable camelcase */\n}\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./remote_follow.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./remote_follow.js\"\nimport __vue_script__ from \"!!babel-loader!./remote_follow.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-2ecbe62b\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./remote_follow.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./moderation_tools.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./moderation_tools.js\"\nimport __vue_script__ from \"!!babel-loader!./moderation_tools.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-788f6147\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./moderation_tools.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","const fetchUser = (attempt, user, store) => new Promise((resolve, reject) => {\n setTimeout(() => {\n store.state.api.backendInteractor.fetchUser({ id: user.id })\n .then((user) => store.commit('addNewUsers', [user]))\n .then(() => resolve([user.following, attempt]))\n .catch((e) => reject(e))\n }, 500)\n}).then(([following, attempt]) => {\n if (!following && attempt <= 3) {\n // If we BE reports that we still not following that user - retry,\n // increment attempts by one\n return fetchUser(++attempt, user, store)\n } else {\n // If we run out of attempts, just return whatever status is.\n return following\n }\n})\n\nexport const requestFollow = (user, store) => new Promise((resolve, reject) => {\n store.state.api.backendInteractor.followUser(user.id)\n .then((updated) => {\n store.commit('updateUserRelationship', [updated])\n\n // For locked users we just mark it that we sent the follow request\n if (updated.locked) {\n resolve({ sent: true })\n }\n\n if (updated.following) {\n // If we get result immediately, just stop.\n resolve({ sent: false })\n }\n\n // But usually we don't get result immediately, so we ask server\n // for updated user profile to confirm if we are following them\n // Sometimes it takes several tries. Sometimes we end up not following\n // user anyway, probably because they locked themselves and we\n // don't know that yet.\n // Recursive Promise, it will call itself up to 3 times.\n\n return fetchUser(1, user, store)\n .then((following) => {\n if (following) {\n // We confirmed and everything's good.\n resolve({ sent: false })\n } else {\n // If after all the tries, just treat it as if user is locked\n resolve({ sent: false })\n }\n })\n })\n})\n\nexport const requestUnfollow = (user, store) => new Promise((resolve, reject) => {\n store.state.api.backendInteractor.unfollowUser(user.id)\n .then((updated) => {\n store.commit('updateUserRelationship', [updated])\n resolve({\n updated\n })\n })\n})\n","import { hex2rgb } from '../color_convert/color_convert.js'\nconst highlightStyle = (prefs) => {\n if (prefs === undefined) return\n const {color, type} = prefs\n if (typeof color !== 'string') return\n const rgb = hex2rgb(color)\n if (rgb == null) return\n const solidColor = `rgb(${Math.floor(rgb.r)}, ${Math.floor(rgb.g)}, ${Math.floor(rgb.b)})`\n const tintColor = `rgba(${Math.floor(rgb.r)}, ${Math.floor(rgb.g)}, ${Math.floor(rgb.b)}, .1)`\n const tintColor2 = `rgba(${Math.floor(rgb.r)}, ${Math.floor(rgb.g)}, ${Math.floor(rgb.b)}, .2)`\n if (type === 'striped') {\n return {\n backgroundImage: [\n 'repeating-linear-gradient(135deg,',\n `${tintColor} ,`,\n `${tintColor} 20px,`,\n `${tintColor2} 20px,`,\n `${tintColor2} 40px`\n ].join(' '),\n backgroundPosition: '0 0'\n }\n } else if (type === 'solid') {\n return {\n backgroundColor: tintColor2\n }\n } else if (type === 'side') {\n return {\n backgroundImage: [\n 'linear-gradient(to right,',\n `${solidColor} ,`,\n `${solidColor} 2px,`,\n `transparent 6px`\n ].join(' '),\n backgroundPosition: '0 0'\n }\n }\n}\n\nconst highlightClass = (user) => {\n return 'USER____' + user.screen_name\n .replace(/\\./g, '_')\n .replace(/@/g, '_AT_')\n}\n\nexport {\n highlightClass,\n highlightStyle\n}\n","import isFunction from 'lodash/isFunction'\n\nconst getComponentOptions = (Component) => (isFunction(Component)) ? Component.options : Component\n\nconst getComponentProps = (Component) => getComponentOptions(Component).props\n\nexport {\n getComponentOptions,\n getComponentProps\n}\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!./style_switcher.scss\")\n}\n/* script */\nexport * from \"!!babel-loader!./style_switcher.js\"\nimport __vue_script__ from \"!!babel-loader!./style_switcher.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-5e6c3467\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./style_switcher.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./color_input.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!../../../node_modules/vue-loader/lib/selector?type=script&index=0!./color_input.vue\"\nimport __vue_script__ from \"!!babel-loader!../../../node_modules/vue-loader/lib/selector?type=script&index=0!./color_input.vue\"\n/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-5c9e43f0\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./color_input.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","/* script */\nexport * from \"!!babel-loader!../../../node_modules/vue-loader/lib/selector?type=script&index=0!./opacity_input.vue\"\nimport __vue_script__ from \"!!babel-loader!../../../node_modules/vue-loader/lib/selector?type=script&index=0!./opacity_input.vue\"\n/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-296de9c3\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./opacity_input.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./checkbox.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!../../../node_modules/vue-loader/lib/selector?type=script&index=0!./checkbox.vue\"\nimport __vue_script__ from \"!!babel-loader!../../../node_modules/vue-loader/lib/selector?type=script&index=0!./checkbox.vue\"\n/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-76559fdc\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./checkbox.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","/* script */\nexport * from \"!!babel-loader!./confirm.js\"\nimport __vue_script__ from \"!!babel-loader!./confirm.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-7144d19e\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./confirm.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","import LoginForm from '../login_form/login_form.vue'\nimport MFARecoveryForm from '../mfa_form/recovery_form.vue'\nimport MFATOTPForm from '../mfa_form/totp_form.vue'\nimport { mapGetters } from 'vuex'\n\nconst AuthForm = {\n name: 'AuthForm',\n render (createElement) {\n return createElement('component', { is: this.authForm })\n },\n computed: {\n authForm () {\n if (this.requiredTOTP) { return 'MFATOTPForm' }\n if (this.requiredRecovery) { return 'MFARecoveryForm' }\n return 'LoginForm'\n },\n ...mapGetters('authFlow', ['requiredTOTP', 'requiredRecovery'])\n },\n components: {\n MFARecoveryForm,\n MFATOTPForm,\n LoginForm\n }\n}\n\nexport default AuthForm\n","const verifyOTPCode = ({app, instance, mfaToken, code}) => {\n const url = `${instance}/oauth/mfa/challenge`\n const form = new window.FormData()\n\n form.append('client_id', app.client_id)\n form.append('client_secret', app.client_secret)\n form.append('mfa_token', mfaToken)\n form.append('code', code)\n form.append('challenge_type', 'totp')\n\n return window.fetch(url, {\n method: 'POST',\n body: form\n }).then((data) => data.json())\n}\n\nconst verifyRecoveryCode = ({app, instance, mfaToken, code}) => {\n const url = `${instance}/oauth/mfa/challenge`\n const form = new window.FormData()\n\n form.append('client_id', app.client_id)\n form.append('client_secret', app.client_secret)\n form.append('mfa_token', mfaToken)\n form.append('code', code)\n form.append('challenge_type', 'recovery')\n\n return window.fetch(url, {\n method: 'POST',\n body: form\n }).then((data) => data.json())\n}\n\nconst mfa = {\n verifyOTPCode,\n verifyRecoveryCode\n}\n\nexport default mfa\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./chat_panel.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./chat_panel.js\"\nimport __vue_script__ from \"!!babel-loader!./chat_panel.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-18ad082c\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./chat_panel.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./instance_specific_panel.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./instance_specific_panel.js\"\nimport __vue_script__ from \"!!babel-loader!./instance_specific_panel.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-0df9e546\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./instance_specific_panel.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./features_panel.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./features_panel.js\"\nimport __vue_script__ from \"!!babel-loader!./features_panel.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-5c3884f4\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./features_panel.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./side_drawer.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./side_drawer.js\"\nimport __vue_script__ from \"!!babel-loader!./side_drawer.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-0afaec76\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./side_drawer.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","\nconst DIRECTION_LEFT = [-1, 0]\nconst DIRECTION_RIGHT = [1, 0]\nconst DIRECTION_UP = [0, -1]\nconst DIRECTION_DOWN = [0, 1]\n\nconst deltaCoord = (oldCoord, newCoord) => [newCoord[0] - oldCoord[0], newCoord[1] - oldCoord[1]]\n\nconst touchEventCoord = e => ([e.touches[0].screenX, e.touches[0].screenY])\n\nconst vectorLength = v => Math.sqrt(v[0] * v[0] + v[1] * v[1])\n\nconst perpendicular = v => [v[1], -v[0]]\n\nconst dotProduct = (v1, v2) => v1[0] * v2[0] + v1[1] * v2[1]\n\nconst project = (v1, v2) => {\n const scalar = (dotProduct(v1, v2) / dotProduct(v2, v2))\n return [scalar * v2[0], scalar * v2[1]]\n}\n\n// direction: either use the constants above or an arbitrary 2d vector.\n// threshold: how many Px to move from touch origin before checking if the\n// callback should be called.\n// divergentTolerance: a scalar for much of divergent direction we tolerate when\n// above threshold. for example, with 1.0 we only call the callback if\n// divergent component of delta is < 1.0 * direction component of delta.\nconst swipeGesture = (direction, onSwipe, threshold = 30, perpendicularTolerance = 1.0) => {\n return {\n direction,\n onSwipe,\n threshold,\n perpendicularTolerance,\n _startPos: [0, 0],\n _swiping: false\n }\n}\n\nconst beginSwipe = (event, gesture) => {\n gesture._startPos = touchEventCoord(event)\n gesture._swiping = true\n}\n\nconst updateSwipe = (event, gesture) => {\n if (!gesture._swiping) return\n // movement too small\n const delta = deltaCoord(gesture._startPos, touchEventCoord(event))\n if (vectorLength(delta) < gesture.threshold) return\n // movement is opposite from direction\n if (dotProduct(delta, gesture.direction) < 0) return\n // movement perpendicular to direction is too much\n const towardsDir = project(delta, gesture.direction)\n const perpendicularDir = perpendicular(gesture.direction)\n const towardsPerpendicular = project(delta, perpendicularDir)\n if (\n vectorLength(towardsDir) * gesture.perpendicularTolerance <\n vectorLength(towardsPerpendicular)\n ) return\n\n gesture.onSwipe()\n gesture._swiping = false\n}\n\nconst GestureService = {\n DIRECTION_LEFT,\n DIRECTION_RIGHT,\n DIRECTION_UP,\n DIRECTION_DOWN,\n swipeGesture,\n beginSwipe,\n updateSwipe\n}\n\nexport default GestureService\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./mobile_post_status_modal.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./mobile_post_status_modal.js\"\nimport __vue_script__ from \"!!babel-loader!./mobile_post_status_modal.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-7060e3da\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./mobile_post_status_modal.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","\nexport const windowWidth = () =>\n window.innerWidth ||\n document.documentElement.clientWidth ||\n document.body.clientWidth\n","import Vue from 'vue'\nimport VueRouter from 'vue-router'\nimport Vuex from 'vuex'\n\nimport interfaceModule from './modules/interface.js'\nimport instanceModule from './modules/instance.js'\nimport statusesModule from './modules/statuses.js'\nimport usersModule from './modules/users.js'\nimport apiModule from './modules/api.js'\nimport configModule from './modules/config.js'\nimport chatModule from './modules/chat.js'\nimport oauthModule from './modules/oauth.js'\nimport authFlowModule from './modules/auth_flow.js'\nimport mediaViewerModule from './modules/media_viewer.js'\nimport oauthTokensModule from './modules/oauth_tokens.js'\nimport reportsModule from './modules/reports.js'\nimport pollsModule from './modules/polls.js'\n\nimport VueI18n from 'vue-i18n'\n\nimport createPersistedState from './lib/persisted_state.js'\nimport pushNotifications from './lib/push_notifications_plugin.js'\n\nimport messages from './i18n/messages.js'\n\nimport VueChatScroll from 'vue-chat-scroll'\nimport VueClickOutside from 'v-click-outside'\nimport PortalVue from 'portal-vue'\n\nimport afterStoreSetup from './boot/after_store.js'\n\nconst currentLocale = (window.navigator.language || 'en').split('-')[0]\n\nVue.use(Vuex)\nVue.use(VueRouter)\nVue.use(VueI18n)\nVue.use(VueChatScroll)\nVue.use(VueClickOutside)\nVue.use(PortalVue)\n\nconst i18n = new VueI18n({\n // By default, use the browser locale, we will update it if neccessary\n locale: currentLocale,\n fallbackLocale: 'en',\n messages\n})\n\nconst persistedStateOptions = {\n paths: [\n 'config',\n 'users.lastLoginName',\n 'oauth'\n ]\n};\n\n(async () => {\n const persistedState = await createPersistedState(persistedStateOptions)\n const store = new Vuex.Store({\n modules: {\n i18n: {\n getters: {\n i18n: () => i18n\n }\n },\n interface: interfaceModule,\n instance: instanceModule,\n statuses: statusesModule,\n users: usersModule,\n api: apiModule,\n config: configModule,\n chat: chatModule,\n oauth: oauthModule,\n authFlow: authFlowModule,\n mediaViewer: mediaViewerModule,\n oauthTokens: oauthTokensModule,\n reports: reportsModule,\n polls: pollsModule\n },\n plugins: [persistedState, pushNotifications],\n strict: false // Socket modifies itself, let's ignore this for now.\n // strict: process.env.NODE_ENV !== 'production'\n })\n\n afterStoreSetup({ store, i18n })\n})()\n\n// These are inlined by webpack's DefinePlugin\n/* eslint-disable */\nwindow.___pleromafe_mode = process.env\nwindow.___pleromafe_commit_hash = COMMIT_HASH\nwindow.___pleromafe_dev_overrides = DEV_OVERRIDES\n","import { set, delete as del } from 'vue'\n\nconst defaultState = {\n settings: {\n currentSaveStateNotice: null,\n noticeClearTimeout: null,\n notificationPermission: null\n },\n browserSupport: {\n cssFilter: window.CSS && window.CSS.supports && (\n window.CSS.supports('filter', 'drop-shadow(0 0)') ||\n window.CSS.supports('-webkit-filter', 'drop-shadow(0 0)')\n )\n },\n mobileLayout: false\n}\n\nconst interfaceMod = {\n state: defaultState,\n mutations: {\n settingsSaved (state, { success, error }) {\n if (success) {\n if (state.noticeClearTimeout) {\n clearTimeout(state.noticeClearTimeout)\n }\n set(state.settings, 'currentSaveStateNotice', { error: false, data: success })\n set(state.settings, 'noticeClearTimeout',\n setTimeout(() => del(state.settings, 'currentSaveStateNotice'), 2000))\n } else {\n set(state.settings, 'currentSaveStateNotice', { error: true, errorData: error })\n }\n },\n setNotificationPermission (state, permission) {\n state.notificationPermission = permission\n },\n setMobileLayout (state, value) {\n state.mobileLayout = value\n }\n },\n actions: {\n setPageTitle ({ rootState }, option = '') {\n document.title = `${option} ${rootState.instance.name}`\n },\n settingsSaved ({ commit, dispatch }, { success, error }) {\n commit('settingsSaved', { success, error })\n },\n setNotificationPermission ({ commit }, permission) {\n commit('setNotificationPermission', permission)\n },\n setMobileLayout ({ commit }, value) {\n commit('setMobileLayout', value)\n }\n }\n}\n\nexport default interfaceMod\n","import { set } from 'vue'\nimport { setPreset } from '../services/style_setter/style_setter.js'\n\nconst defaultState = {\n // Stuff from static/config.json and apiConfig\n name: 'Pleroma FE',\n registrationOpen: true,\n safeDM: true,\n textlimit: 5000,\n server: 'http://localhost:4040/',\n theme: 'pleroma-dark',\n background: '/static/aurora_borealis.jpg',\n logo: '/static/logo.png',\n logoMask: true,\n logoMargin: '.2em',\n redirectRootNoLogin: '/main/all',\n redirectRootLogin: '/main/friends',\n showInstanceSpecificPanel: false,\n alwaysShowSubjectInput: true,\n hideMutedPosts: false,\n collapseMessageWithSubject: false,\n hidePostStats: false,\n hideUserStats: false,\n hideFilteredStatuses: false,\n disableChat: false,\n scopeCopy: true,\n subjectLineBehavior: 'email',\n postContentType: 'text/plain',\n nsfwCensorImage: undefined,\n vapidPublicKey: undefined,\n noAttachmentLinks: false,\n showFeaturesPanel: true,\n minimalScopesMode: false,\n\n // Nasty stuff\n pleromaBackend: true,\n emoji: [],\n customEmoji: [],\n restrictedNicknames: [],\n postFormats: [],\n\n // Feature-set, apparently, not everything here is reported...\n mediaProxyAvailable: false,\n chatAvailable: false,\n gopherAvailable: false,\n suggestionsEnabled: false,\n suggestionsWeb: '',\n\n // Html stuff\n instanceSpecificPanelContent: '',\n tos: '',\n\n // Version Information\n backendVersion: '',\n frontendVersion: '',\n\n pollsAvailable: false,\n pollLimits: {\n max_options: 4,\n max_option_chars: 255,\n min_expiration: 60,\n max_expiration: 60 * 60 * 24\n }\n}\n\nconst instance = {\n state: defaultState,\n mutations: {\n setInstanceOption (state, { name, value }) {\n if (typeof value !== 'undefined') {\n set(state, name, value)\n }\n }\n },\n actions: {\n setInstanceOption ({ commit, dispatch }, { name, value }) {\n commit('setInstanceOption', {name, value})\n switch (name) {\n case 'name':\n dispatch('setPageTitle')\n break\n }\n },\n setTheme ({ commit }, themeName) {\n commit('setInstanceOption', { name: 'theme', value: themeName })\n return setPreset(themeName, commit)\n }\n }\n}\n\nexport default instance\n","import { remove, slice, each, findIndex, find, maxBy, minBy, merge, first, last, isArray, omitBy } from 'lodash'\nimport { set } from 'vue'\nimport apiService from '../services/api/api.service.js'\n// import parse from '../services/status_parser/status_parser.js'\n\nconst emptyTl = (userId = 0) => ({\n statuses: [],\n statusesObject: {},\n faves: [],\n visibleStatuses: [],\n visibleStatusesObject: {},\n newStatusCount: 0,\n maxId: 0,\n minId: 0,\n minVisibleId: 0,\n loading: false,\n followers: [],\n friends: [],\n userId,\n flushMarker: 0\n})\n\nconst emptyNotifications = () => ({\n desktopNotificationSilence: true,\n maxId: 0,\n minId: Number.POSITIVE_INFINITY,\n data: [],\n idStore: {},\n loading: false,\n error: false\n})\n\nexport const defaultState = () => ({\n allStatuses: [],\n allStatusesObject: {},\n conversationsObject: {},\n maxId: 0,\n notifications: emptyNotifications(),\n favorites: new Set(),\n error: false,\n timelines: {\n mentions: emptyTl(),\n public: emptyTl(),\n user: emptyTl(),\n favorites: emptyTl(),\n media: emptyTl(),\n publicAndExternal: emptyTl(),\n friends: emptyTl(),\n tag: emptyTl(),\n dms: emptyTl()\n }\n})\n\nexport const prepareStatus = (status) => {\n // Set deleted flag\n status.deleted = false\n\n // To make the array reactive\n status.attachments = status.attachments || []\n\n return status\n}\n\nconst visibleNotificationTypes = (rootState) => {\n return [\n rootState.config.notificationVisibility.likes && 'like',\n rootState.config.notificationVisibility.mentions && 'mention',\n rootState.config.notificationVisibility.repeats && 'repeat',\n rootState.config.notificationVisibility.follows && 'follow'\n ].filter(_ => _)\n}\n\nconst mergeOrAdd = (arr, obj, item) => {\n const oldItem = obj[item.id]\n\n if (oldItem) {\n // We already have this, so only merge the new info.\n // We ignore null values to avoid overwriting existing properties with missing data\n // we also skip 'user' because that is handled by users module\n merge(oldItem, omitBy(item, (v, k) => v === null || k === 'user'))\n // Reactivity fix.\n oldItem.attachments.splice(oldItem.attachments.length)\n return {item: oldItem, new: false}\n } else {\n // This is a new item, prepare it\n prepareStatus(item)\n arr.push(item)\n set(obj, item.id, item)\n return {item, new: true}\n }\n}\n\nconst sortById = (a, b) => {\n const seqA = Number(a.id)\n const seqB = Number(b.id)\n const isSeqA = !Number.isNaN(seqA)\n const isSeqB = !Number.isNaN(seqB)\n if (isSeqA && isSeqB) {\n return seqA > seqB ? -1 : 1\n } else if (isSeqA && !isSeqB) {\n return 1\n } else if (!isSeqA && isSeqB) {\n return -1\n } else {\n return a.id > b.id ? -1 : 1\n }\n}\n\nconst sortTimeline = (timeline) => {\n timeline.visibleStatuses = timeline.visibleStatuses.sort(sortById)\n timeline.statuses = timeline.statuses.sort(sortById)\n timeline.minVisibleId = (last(timeline.visibleStatuses) || {}).id\n return timeline\n}\n\n// Add status to the global storages (arrays and objects maintaining statuses) except timelines\nconst addStatusToGlobalStorage = (state, data) => {\n const result = mergeOrAdd(state.allStatuses, state.allStatusesObject, data)\n if (result.new) {\n // Add to conversation\n const status = result.item\n const conversationsObject = state.conversationsObject\n const conversationId = status.statusnet_conversation_id\n if (conversationsObject[conversationId]) {\n conversationsObject[conversationId].push(status)\n } else {\n set(conversationsObject, conversationId, [status])\n }\n }\n return result\n}\n\n// Remove status from the global storages (arrays and objects maintaining statuses) except timelines\nconst removeStatusFromGlobalStorage = (state, status) => {\n remove(state.allStatuses, { id: status.id })\n\n // TODO: Need to remove from allStatusesObject?\n\n // Remove possible notification\n remove(state.notifications.data, ({action: {id}}) => id === status.id)\n\n // Remove from conversation\n const conversationId = status.statusnet_conversation_id\n if (state.conversationsObject[conversationId]) {\n remove(state.conversationsObject[conversationId], { id: status.id })\n }\n}\n\nconst addNewStatuses = (state, { statuses, showImmediately = false, timeline, user = {},\n noIdUpdate = false, userId }) => {\n // Sanity check\n if (!isArray(statuses)) {\n return false\n }\n\n const allStatuses = state.allStatuses\n const timelineObject = state.timelines[timeline]\n\n const maxNew = statuses.length > 0 ? maxBy(statuses, 'id').id : 0\n const minNew = statuses.length > 0 ? minBy(statuses, 'id').id : 0\n const newer = timeline && (maxNew > timelineObject.maxId || timelineObject.maxId === 0) && statuses.length > 0\n const older = timeline && (minNew < timelineObject.minId || timelineObject.minId === 0) && statuses.length > 0\n\n if (!noIdUpdate && newer) {\n timelineObject.maxId = maxNew\n }\n if (!noIdUpdate && older) {\n timelineObject.minId = minNew\n }\n\n // This makes sure that user timeline won't get data meant for other\n // user. I.e. opening different user profiles makes request which could\n // return data late after user already viewing different user profile\n if ((timeline === 'user' || timeline === 'media') && timelineObject.userId !== userId) {\n return\n }\n\n const addStatus = (data, showImmediately, addToTimeline = true) => {\n const result = addStatusToGlobalStorage(state, data)\n const status = result.item\n\n if (result.new) {\n // We are mentioned in a post\n if (status.type === 'status' && find(status.attentions, { id: user.id })) {\n const mentions = state.timelines.mentions\n\n // Add the mention to the mentions timeline\n if (timelineObject !== mentions) {\n mergeOrAdd(mentions.statuses, mentions.statusesObject, status)\n mentions.newStatusCount += 1\n\n sortTimeline(mentions)\n }\n }\n if (status.visibility === 'direct') {\n const dms = state.timelines.dms\n\n mergeOrAdd(dms.statuses, dms.statusesObject, status)\n dms.newStatusCount += 1\n\n sortTimeline(dms)\n }\n }\n\n // Decide if we should treat the status as new for this timeline.\n let resultForCurrentTimeline\n // Some statuses should only be added to the global status repository.\n if (timeline && addToTimeline) {\n resultForCurrentTimeline = mergeOrAdd(timelineObject.statuses, timelineObject.statusesObject, status)\n }\n\n if (timeline && showImmediately) {\n // Add it directly to the visibleStatuses, don't change\n // newStatusCount\n mergeOrAdd(timelineObject.visibleStatuses, timelineObject.visibleStatusesObject, status)\n } else if (timeline && addToTimeline && resultForCurrentTimeline.new) {\n // Just change newStatuscount\n timelineObject.newStatusCount += 1\n }\n\n return status\n }\n\n const favoriteStatus = (favorite, counter) => {\n const status = find(allStatuses, { id: favorite.in_reply_to_status_id })\n if (status) {\n // This is our favorite, so the relevant bit.\n if (favorite.user.id === user.id) {\n status.favorited = true\n } else {\n status.fave_num += 1\n }\n }\n return status\n }\n\n const processors = {\n 'status': (status) => {\n addStatus(status, showImmediately)\n },\n 'retweet': (status) => {\n // RetweetedStatuses are never shown immediately\n const retweetedStatus = addStatus(status.retweeted_status, false, false)\n\n let retweet\n // If the retweeted status is already there, don't add the retweet\n // to the timeline.\n if (timeline && find(timelineObject.statuses, (s) => {\n if (s.retweeted_status) {\n return s.id === retweetedStatus.id || s.retweeted_status.id === retweetedStatus.id\n } else {\n return s.id === retweetedStatus.id\n }\n })) {\n // Already have it visible (either as the original or another RT), don't add to timeline, don't show.\n retweet = addStatus(status, false, false)\n } else {\n retweet = addStatus(status, showImmediately)\n }\n\n retweet.retweeted_status = retweetedStatus\n },\n 'favorite': (favorite) => {\n // Only update if this is a new favorite.\n // Ignore our own favorites because we get info about likes as response to like request\n if (!state.favorites.has(favorite.id)) {\n state.favorites.add(favorite.id)\n favoriteStatus(favorite)\n }\n },\n 'deletion': (deletion) => {\n const uri = deletion.uri\n const status = find(allStatuses, {uri})\n if (!status) {\n return\n }\n\n removeStatusFromGlobalStorage(state, status)\n\n if (timeline) {\n remove(timelineObject.statuses, { uri })\n remove(timelineObject.visibleStatuses, { uri })\n }\n },\n 'follow': (follow) => {\n // NOOP, it is known status but we don't do anything about it for now\n },\n 'default': (unknown) => {\n console.log('unknown status type')\n console.log(unknown)\n }\n }\n\n each(statuses, (status) => {\n const type = status.type\n const processor = processors[type] || processors['default']\n processor(status)\n })\n\n // Keep the visible statuses sorted\n if (timeline) {\n sortTimeline(timelineObject)\n }\n}\n\nconst addNewNotifications = (state, { dispatch, notifications, older, visibleNotificationTypes, rootGetters }) => {\n each(notifications, (notification) => {\n if (notification.type !== 'follow') {\n notification.action = addStatusToGlobalStorage(state, notification.action).item\n notification.status = notification.status && addStatusToGlobalStorage(state, notification.status).item\n }\n\n // Only add a new notification if we don't have one for the same action\n if (!state.notifications.idStore.hasOwnProperty(notification.id)) {\n state.notifications.maxId = notification.id > state.notifications.maxId\n ? notification.id\n : state.notifications.maxId\n state.notifications.minId = notification.id < state.notifications.minId\n ? notification.id\n : state.notifications.minId\n\n state.notifications.data.push(notification)\n state.notifications.idStore[notification.id] = notification\n\n if ('Notification' in window && window.Notification.permission === 'granted') {\n const notifObj = {}\n const status = notification.status\n const title = notification.from_profile.name\n notifObj.icon = notification.from_profile.profile_image_url\n let i18nString\n switch (notification.type) {\n case 'like':\n i18nString = 'favorited_you'\n break\n case 'repeat':\n i18nString = 'repeated_you'\n break\n case 'follow':\n i18nString = 'followed_you'\n break\n }\n\n if (i18nString) {\n notifObj.body = rootGetters.i18n.t('notifications.' + i18nString)\n } else {\n notifObj.body = notification.status.text\n }\n\n // Shows first attached non-nsfw image, if any. Should add configuration for this somehow...\n if (status && status.attachments && status.attachments.length > 0 && !status.nsfw &&\n status.attachments[0].mimetype.startsWith('image/')) {\n notifObj.image = status.attachments[0].url\n }\n\n if (!notification.seen && !state.notifications.desktopNotificationSilence && visibleNotificationTypes.includes(notification.type)) {\n let notification = new window.Notification(title, notifObj)\n // Chrome is known for not closing notifications automatically\n // according to MDN, anyway.\n setTimeout(notification.close.bind(notification), 5000)\n }\n }\n } else if (notification.seen) {\n state.notifications.idStore[notification.id].seen = true\n }\n })\n}\n\nconst removeStatus = (state, { timeline, userId }) => {\n const timelineObject = state.timelines[timeline]\n if (userId) {\n remove(timelineObject.statuses, { user: { id: userId } })\n remove(timelineObject.visibleStatuses, { user: { id: userId } })\n timelineObject.minVisibleId = timelineObject.visibleStatuses.length > 0 ? last(timelineObject.visibleStatuses).id : 0\n timelineObject.maxId = timelineObject.statuses.length > 0 ? first(timelineObject.statuses).id : 0\n }\n}\n\nexport const mutations = {\n addNewStatuses,\n addNewNotifications,\n removeStatus,\n showNewStatuses (state, { timeline }) {\n const oldTimeline = (state.timelines[timeline])\n\n oldTimeline.newStatusCount = 0\n oldTimeline.visibleStatuses = slice(oldTimeline.statuses, 0, 50)\n oldTimeline.minVisibleId = last(oldTimeline.visibleStatuses).id\n oldTimeline.minId = oldTimeline.minVisibleId\n oldTimeline.visibleStatusesObject = {}\n each(oldTimeline.visibleStatuses, (status) => { oldTimeline.visibleStatusesObject[status.id] = status })\n },\n resetStatuses (state) {\n const emptyState = defaultState()\n Object.entries(emptyState).forEach(([key, value]) => {\n state[key] = value\n })\n },\n clearTimeline (state, { timeline }) {\n state.timelines[timeline] = emptyTl(state.timelines[timeline].userId)\n },\n clearNotifications (state) {\n state.notifications = emptyNotifications()\n },\n setFavorited (state, { status, value }) {\n const newStatus = state.allStatusesObject[status.id]\n\n if (newStatus.favorited !== value) {\n if (value) {\n newStatus.fave_num++\n } else {\n newStatus.fave_num--\n }\n }\n\n newStatus.favorited = value\n },\n setFavoritedConfirm (state, { status, user }) {\n const newStatus = state.allStatusesObject[status.id]\n newStatus.favorited = status.favorited\n newStatus.fave_num = status.fave_num\n const index = findIndex(newStatus.favoritedBy, { id: user.id })\n if (index !== -1 && !newStatus.favorited) {\n newStatus.favoritedBy.splice(index, 1)\n } else if (index === -1 && newStatus.favorited) {\n newStatus.favoritedBy.push(user)\n }\n },\n setPinned (state, status) {\n const newStatus = state.allStatusesObject[status.id]\n newStatus.pinned = status.pinned\n },\n setRetweeted (state, { status, value }) {\n const newStatus = state.allStatusesObject[status.id]\n\n if (newStatus.repeated !== value) {\n if (value) {\n newStatus.repeat_num++\n } else {\n newStatus.repeat_num--\n }\n }\n\n newStatus.repeated = value\n },\n setRetweetedConfirm (state, { status, user }) {\n const newStatus = state.allStatusesObject[status.id]\n newStatus.repeated = status.repeated\n newStatus.repeat_num = status.repeat_num\n const index = findIndex(newStatus.rebloggedBy, { id: user.id })\n if (index !== -1 && !newStatus.repeated) {\n newStatus.rebloggedBy.splice(index, 1)\n } else if (index === -1 && newStatus.repeated) {\n newStatus.rebloggedBy.push(user)\n }\n },\n setDeleted (state, { status }) {\n const newStatus = state.allStatusesObject[status.id]\n newStatus.deleted = true\n },\n setManyDeleted (state, condition) {\n Object.values(state.allStatusesObject).forEach(status => {\n if (condition(status)) {\n status.deleted = true\n }\n })\n },\n setLoading (state, { timeline, value }) {\n state.timelines[timeline].loading = value\n },\n setNsfw (state, { id, nsfw }) {\n const newStatus = state.allStatusesObject[id]\n newStatus.nsfw = nsfw\n },\n setError (state, { value }) {\n state.error = value\n },\n setNotificationsLoading (state, { value }) {\n state.notifications.loading = value\n },\n setNotificationsError (state, { value }) {\n state.notifications.error = value\n },\n setNotificationsSilence (state, { value }) {\n state.notifications.desktopNotificationSilence = value\n },\n markNotificationsAsSeen (state) {\n each(state.notifications.data, (notification) => {\n notification.seen = true\n })\n },\n queueFlush (state, { timeline, id }) {\n state.timelines[timeline].flushMarker = id\n },\n addFavsAndRepeats (state, { id, favoritedByUsers, rebloggedByUsers }) {\n const newStatus = state.allStatusesObject[id]\n newStatus.favoritedBy = favoritedByUsers.filter(_ => _)\n newStatus.rebloggedBy = rebloggedByUsers.filter(_ => _)\n },\n updateStatusWithPoll (state, { id, poll }) {\n const status = state.allStatusesObject[id]\n status.poll = poll\n }\n}\n\nconst statuses = {\n state: defaultState(),\n actions: {\n addNewStatuses ({ rootState, commit }, { statuses, showImmediately = false, timeline = false, noIdUpdate = false, userId }) {\n commit('addNewStatuses', { statuses, showImmediately, timeline, noIdUpdate, user: rootState.users.currentUser, userId })\n },\n addNewNotifications ({ rootState, commit, dispatch, rootGetters }, { notifications, older }) {\n commit('addNewNotifications', { visibleNotificationTypes: visibleNotificationTypes(rootState), dispatch, notifications, older, rootGetters })\n },\n setError ({ rootState, commit }, { value }) {\n commit('setError', { value })\n },\n setNotificationsLoading ({ rootState, commit }, { value }) {\n commit('setNotificationsLoading', { value })\n },\n setNotificationsError ({ rootState, commit }, { value }) {\n commit('setNotificationsError', { value })\n },\n setNotificationsSilence ({ rootState, commit }, { value }) {\n commit('setNotificationsSilence', { value })\n },\n deleteStatus ({ rootState, commit }, status) {\n commit('setDeleted', { status })\n apiService.deleteStatus({ id: status.id, credentials: rootState.users.currentUser.credentials })\n },\n markStatusesAsDeleted ({ commit }, condition) {\n commit('setManyDeleted', condition)\n },\n favorite ({ rootState, commit }, status) {\n // Optimistic favoriting...\n commit('setFavorited', { status, value: true })\n rootState.api.backendInteractor.favorite(status.id)\n .then(status => commit('setFavoritedConfirm', { status, user: rootState.users.currentUser }))\n },\n unfavorite ({ rootState, commit }, status) {\n // Optimistic unfavoriting...\n commit('setFavorited', { status, value: false })\n rootState.api.backendInteractor.unfavorite(status.id)\n .then(status => commit('setFavoritedConfirm', { status, user: rootState.users.currentUser }))\n },\n fetchPinnedStatuses ({ rootState, dispatch }, userId) {\n rootState.api.backendInteractor.fetchPinnedStatuses(userId)\n .then(statuses => dispatch('addNewStatuses', { statuses, timeline: 'user', userId, showImmediately: true, noIdUpdate: true }))\n },\n pinStatus ({ rootState, commit }, statusId) {\n return rootState.api.backendInteractor.pinOwnStatus(statusId)\n .then((status) => commit('setPinned', status))\n },\n unpinStatus ({ rootState, commit }, statusId) {\n rootState.api.backendInteractor.unpinOwnStatus(statusId)\n .then((status) => commit('setPinned', status))\n },\n retweet ({ rootState, commit }, status) {\n // Optimistic retweeting...\n commit('setRetweeted', { status, value: true })\n rootState.api.backendInteractor.retweet(status.id)\n .then(status => commit('setRetweetedConfirm', { status: status.retweeted_status, user: rootState.users.currentUser }))\n },\n unretweet ({ rootState, commit }, status) {\n // Optimistic unretweeting...\n commit('setRetweeted', { status, value: false })\n rootState.api.backendInteractor.unretweet(status.id)\n .then(status => commit('setRetweetedConfirm', { status, user: rootState.users.currentUser }))\n },\n queueFlush ({ rootState, commit }, { timeline, id }) {\n commit('queueFlush', { timeline, id })\n },\n markNotificationsAsSeen ({ rootState, commit }) {\n commit('markNotificationsAsSeen')\n apiService.markNotificationsAsSeen({\n id: rootState.statuses.notifications.maxId,\n credentials: rootState.users.currentUser.credentials\n })\n },\n fetchFavsAndRepeats ({ rootState, commit }, id) {\n Promise.all([\n rootState.api.backendInteractor.fetchFavoritedByUsers(id),\n rootState.api.backendInteractor.fetchRebloggedByUsers(id)\n ]).then(([favoritedByUsers, rebloggedByUsers]) =>\n commit('addFavsAndRepeats', { id, favoritedByUsers, rebloggedByUsers })\n )\n }\n },\n mutations\n}\n\nexport default statuses\n","export function StatusCodeError (statusCode, body, options, response) {\n this.name = 'StatusCodeError'\n this.statusCode = statusCode\n this.message = statusCode + ' - ' + (JSON && JSON.stringify ? JSON.stringify(body) : body)\n this.error = body // legacy attribute\n this.options = options\n this.response = response\n\n if (Error.captureStackTrace) { // required for non-V8 environments\n Error.captureStackTrace(this)\n }\n}\nStatusCodeError.prototype = Object.create(Error.prototype)\nStatusCodeError.prototype.constructor = StatusCodeError\n","import backendInteractorService from '../services/backend_interactor_service/backend_interactor_service.js'\nimport userSearchApi from '../services/new_api/user_search.js'\nimport { compact, map, each, merge, last, concat, uniq } from 'lodash'\nimport { set } from 'vue'\nimport { registerPushNotifications, unregisterPushNotifications } from '../services/push/push.js'\nimport { humanizeErrors } from './errors'\n\n// TODO: Unify with mergeOrAdd in statuses.js\nexport const mergeOrAdd = (arr, obj, item) => {\n if (!item) { return false }\n const oldItem = obj[item.id]\n if (oldItem) {\n // We already have this, so only merge the new info.\n merge(oldItem, item)\n return { item: oldItem, new: false }\n } else {\n // This is a new item, prepare it\n arr.push(item)\n set(obj, item.id, item)\n if (item.screen_name && !item.screen_name.includes('@')) {\n set(obj, item.screen_name.toLowerCase(), item)\n }\n return { item, new: true }\n }\n}\n\nconst getNotificationPermission = () => {\n const Notification = window.Notification\n\n if (!Notification) return Promise.resolve(null)\n if (Notification.permission === 'default') return Notification.requestPermission()\n return Promise.resolve(Notification.permission)\n}\n\nconst blockUser = (store, id) => {\n return store.rootState.api.backendInteractor.blockUser(id)\n .then((relationship) => {\n store.commit('updateUserRelationship', [relationship])\n store.commit('addBlockId', id)\n store.commit('removeStatus', { timeline: 'friends', userId: id })\n store.commit('removeStatus', { timeline: 'public', userId: id })\n store.commit('removeStatus', { timeline: 'publicAndExternal', userId: id })\n })\n}\n\nconst unblockUser = (store, id) => {\n return store.rootState.api.backendInteractor.unblockUser(id)\n .then((relationship) => store.commit('updateUserRelationship', [relationship]))\n}\n\nconst muteUser = (store, id) => {\n return store.rootState.api.backendInteractor.muteUser(id)\n .then((relationship) => {\n store.commit('updateUserRelationship', [relationship])\n store.commit('addMuteId', id)\n })\n}\n\nconst unmuteUser = (store, id) => {\n return store.rootState.api.backendInteractor.unmuteUser(id)\n .then((relationship) => store.commit('updateUserRelationship', [relationship]))\n}\n\nexport const mutations = {\n setMuted (state, { user: { id }, muted }) {\n const user = state.usersObject[id]\n set(user, 'muted', muted)\n },\n tagUser (state, { user: { id }, tag }) {\n const user = state.usersObject[id]\n const tags = user.tags || []\n const newTags = tags.concat([tag])\n set(user, 'tags', newTags)\n },\n untagUser (state, { user: { id }, tag }) {\n const user = state.usersObject[id]\n const tags = user.tags || []\n const newTags = tags.filter(t => t !== tag)\n set(user, 'tags', newTags)\n },\n updateRight (state, { user: { id }, right, value }) {\n const user = state.usersObject[id]\n let newRights = user.rights\n newRights[right] = value\n set(user, 'rights', newRights)\n },\n updateActivationStatus (state, { user: { id }, status }) {\n const user = state.usersObject[id]\n set(user, 'deactivated', !status)\n },\n setCurrentUser (state, user) {\n state.lastLoginName = user.screen_name\n state.currentUser = merge(state.currentUser || {}, user)\n },\n clearCurrentUser (state) {\n state.currentUser = false\n state.lastLoginName = false\n },\n beginLogin (state) {\n state.loggingIn = true\n },\n endLogin (state) {\n state.loggingIn = false\n },\n saveFriendIds (state, { id, friendIds }) {\n const user = state.usersObject[id]\n user.friendIds = uniq(concat(user.friendIds, friendIds))\n },\n saveFollowerIds (state, { id, followerIds }) {\n const user = state.usersObject[id]\n user.followerIds = uniq(concat(user.followerIds, followerIds))\n },\n // Because frontend doesn't have a reason to keep these stuff in memory\n // outside of viewing someones user profile.\n clearFriends (state, userId) {\n const user = state.usersObject[userId]\n if (user) {\n set(user, 'friendIds', [])\n }\n },\n clearFollowers (state, userId) {\n const user = state.usersObject[userId]\n if (user) {\n set(user, 'followerIds', [])\n }\n },\n addNewUsers (state, users) {\n each(users, (user) => mergeOrAdd(state.users, state.usersObject, user))\n },\n updateUserRelationship (state, relationships) {\n relationships.forEach((relationship) => {\n const user = state.usersObject[relationship.id]\n if (user) {\n user.follows_you = relationship.followed_by\n user.following = relationship.following\n user.muted = relationship.muting\n user.statusnet_blocking = relationship.blocking\n }\n })\n },\n updateBlocks (state, blockedUsers) {\n // Reset statusnet_blocking of all fetched users\n each(state.users, (user) => { user.statusnet_blocking = false })\n each(blockedUsers, (user) => mergeOrAdd(state.users, state.usersObject, user))\n },\n saveBlockIds (state, blockIds) {\n state.currentUser.blockIds = blockIds\n },\n addBlockId (state, blockId) {\n if (state.currentUser.blockIds.indexOf(blockId) === -1) {\n state.currentUser.blockIds.push(blockId)\n }\n },\n updateMutes (state, mutedUsers) {\n // Reset muted of all fetched users\n each(state.users, (user) => { user.muted = false })\n each(mutedUsers, (user) => mergeOrAdd(state.users, state.usersObject, user))\n },\n saveMuteIds (state, muteIds) {\n state.currentUser.muteIds = muteIds\n },\n addMuteId (state, muteId) {\n if (state.currentUser.muteIds.indexOf(muteId) === -1) {\n state.currentUser.muteIds.push(muteId)\n }\n },\n setPinned (state, status) {\n const user = state.usersObject[status.user.id]\n const index = user.pinnedStatuseIds.indexOf(status.id)\n if (status.pinned && index === -1) {\n user.pinnedStatuseIds.push(status.id)\n } else if (!status.pinned && index !== -1) {\n user.pinnedStatuseIds.splice(index, 1)\n }\n },\n setUserForStatus (state, status) {\n status.user = state.usersObject[status.user.id]\n },\n setUserForNotification (state, notification) {\n if (notification.type !== 'follow') {\n notification.action.user = state.usersObject[notification.action.user.id]\n }\n notification.from_profile = state.usersObject[notification.from_profile.id]\n },\n setColor (state, { user: { id }, highlighted }) {\n const user = state.usersObject[id]\n set(user, 'highlight', highlighted)\n },\n signUpPending (state) {\n state.signUpPending = true\n state.signUpErrors = []\n },\n signUpSuccess (state) {\n state.signUpPending = false\n },\n signUpFailure (state, errors) {\n state.signUpPending = false\n state.signUpErrors = errors\n }\n}\n\nexport const getters = {\n findUser: state => query => {\n const result = state.usersObject[query]\n // In case it's a screen_name, we can try searching case-insensitive\n if (!result && typeof query === 'string') {\n return state.usersObject[query.toLowerCase()]\n }\n return result\n }\n}\n\nexport const defaultState = {\n loggingIn: false,\n lastLoginName: false,\n currentUser: false,\n users: [],\n usersObject: {},\n signUpPending: false,\n signUpErrors: []\n}\n\nconst users = {\n state: defaultState,\n mutations,\n getters,\n actions: {\n fetchUser (store, id) {\n return store.rootState.api.backendInteractor.fetchUser({ id })\n .then((user) => {\n store.commit('addNewUsers', [user])\n return user\n })\n },\n fetchUserRelationship (store, id) {\n if (store.state.currentUser) {\n store.rootState.api.backendInteractor.fetchUserRelationship({ id })\n .then((relationships) => store.commit('updateUserRelationship', relationships))\n }\n },\n fetchBlocks (store) {\n return store.rootState.api.backendInteractor.fetchBlocks()\n .then((blocks) => {\n store.commit('saveBlockIds', map(blocks, 'id'))\n store.commit('updateBlocks', blocks)\n return blocks\n })\n },\n blockUser (store, id) {\n return blockUser(store, id)\n },\n unblockUser (store, id) {\n return unblockUser(store, id)\n },\n blockUsers (store, ids = []) {\n return Promise.all(ids.map(id => blockUser(store, id)))\n },\n unblockUsers (store, ids = []) {\n return Promise.all(ids.map(id => unblockUser(store, id)))\n },\n fetchMutes (store) {\n return store.rootState.api.backendInteractor.fetchMutes()\n .then((mutes) => {\n store.commit('updateMutes', mutes)\n store.commit('saveMuteIds', map(mutes, 'id'))\n return mutes\n })\n },\n muteUser (store, id) {\n return muteUser(store, id)\n },\n unmuteUser (store, id) {\n return unmuteUser(store, id)\n },\n muteUsers (store, ids = []) {\n return Promise.all(ids.map(id => muteUser(store, id)))\n },\n unmuteUsers (store, ids = []) {\n return Promise.all(ids.map(id => unmuteUser(store, id)))\n },\n fetchFriends ({ rootState, commit }, id) {\n const user = rootState.users.usersObject[id]\n const maxId = last(user.friendIds)\n return rootState.api.backendInteractor.fetchFriends({ id, maxId })\n .then((friends) => {\n commit('addNewUsers', friends)\n commit('saveFriendIds', { id, friendIds: map(friends, 'id') })\n return friends\n })\n },\n fetchFollowers ({ rootState, commit }, id) {\n const user = rootState.users.usersObject[id]\n const maxId = last(user.followerIds)\n return rootState.api.backendInteractor.fetchFollowers({ id, maxId })\n .then((followers) => {\n commit('addNewUsers', followers)\n commit('saveFollowerIds', { id, followerIds: map(followers, 'id') })\n return followers\n })\n },\n clearFriends ({ commit }, userId) {\n commit('clearFriends', userId)\n },\n clearFollowers ({ commit }, userId) {\n commit('clearFollowers', userId)\n },\n registerPushNotifications (store) {\n const token = store.state.currentUser.credentials\n const vapidPublicKey = store.rootState.instance.vapidPublicKey\n const isEnabled = store.rootState.config.webPushNotifications\n const notificationVisibility = store.rootState.config.notificationVisibility\n\n registerPushNotifications(isEnabled, vapidPublicKey, token, notificationVisibility)\n },\n unregisterPushNotifications (store) {\n const token = store.state.currentUser.credentials\n\n unregisterPushNotifications(token)\n },\n addNewUsers ({ commit }, users) {\n commit('addNewUsers', users)\n },\n addNewStatuses (store, { statuses }) {\n const users = map(statuses, 'user')\n const retweetedUsers = compact(map(statuses, 'retweeted_status.user'))\n store.commit('addNewUsers', users)\n store.commit('addNewUsers', retweetedUsers)\n\n each(statuses, (status) => {\n // Reconnect users to statuses\n store.commit('setUserForStatus', status)\n // Set pinned statuses to user\n store.commit('setPinned', status)\n })\n each(compact(map(statuses, 'retweeted_status')), (status) => {\n // Reconnect users to retweets\n store.commit('setUserForStatus', status)\n // Set pinned retweets to user\n store.commit('setPinned', status)\n })\n },\n addNewNotifications (store, { notifications }) {\n const users = map(notifications, 'from_profile')\n const notificationIds = notifications.map(_ => _.id)\n store.commit('addNewUsers', users)\n\n const notificationsObject = store.rootState.statuses.notifications.idStore\n const relevantNotifications = Object.entries(notificationsObject)\n .filter(([k, val]) => notificationIds.includes(k))\n .map(([k, val]) => val)\n\n // Reconnect users to notifications\n each(relevantNotifications, (notification) => {\n store.commit('setUserForNotification', notification)\n })\n },\n searchUsers (store, query) {\n // TODO: Move userSearch api into api.service\n return userSearchApi.search({\n query,\n store: {\n state: store.rootState,\n getters: store.rootGetters\n }\n })\n .then((users) => {\n store.commit('addNewUsers', users)\n return users\n })\n },\n async signUp (store, userInfo) {\n store.commit('signUpPending')\n\n let rootState = store.rootState\n\n try {\n let data = await rootState.api.backendInteractor.register(userInfo)\n store.commit('signUpSuccess')\n store.commit('setToken', data.access_token)\n store.dispatch('loginUser', data.access_token)\n } catch (e) {\n let errors = e.message\n // replace ap_id with username\n if (typeof errors === 'object') {\n if (errors.ap_id) {\n errors.username = errors.ap_id\n delete errors.ap_id\n }\n errors = humanizeErrors(errors)\n }\n store.commit('signUpFailure', errors)\n throw Error(errors)\n }\n },\n async getCaptcha (store) {\n return await store.rootState.api.backendInteractor.getCaptcha()\n },\n\n logout (store) {\n store.commit('clearCurrentUser')\n store.dispatch('disconnectFromChat')\n store.commit('clearToken')\n store.dispatch('stopFetching', 'friends')\n store.commit('setBackendInteractor', backendInteractorService(store.getters.getToken()))\n store.dispatch('stopFetching', 'notifications')\n store.commit('clearNotifications')\n store.commit('resetStatuses')\n },\n loginUser (store, accessToken) {\n return new Promise((resolve, reject) => {\n const commit = store.commit\n commit('beginLogin')\n store.rootState.api.backendInteractor.verifyCredentials(accessToken)\n .then((data) => {\n if (!data.error) {\n const user = data\n // user.credentials = userCredentials\n user.credentials = accessToken\n user.blockIds = []\n user.muteIds = []\n commit('setCurrentUser', user)\n commit('addNewUsers', [user])\n\n getNotificationPermission()\n .then(permission => commit('setNotificationPermission', permission))\n\n // Set our new backend interactor\n commit('setBackendInteractor', backendInteractorService(accessToken))\n\n if (user.token) {\n store.dispatch('setWsToken', user.token)\n\n // Initialize the chat socket.\n store.dispatch('initializeSocket')\n }\n\n // Start getting fresh posts.\n store.dispatch('startFetchingTimeline', { timeline: 'friends' })\n\n // Start fetching notifications\n store.dispatch('startFetchingNotifications')\n\n // Get user mutes\n store.dispatch('fetchMutes')\n\n // Fetch our friends\n store.rootState.api.backendInteractor.fetchFriends({ id: user.id })\n .then((friends) => commit('addNewUsers', friends))\n } else {\n const response = data.error\n // Authentication failed\n commit('endLogin')\n if (response.status === 401) {\n reject('Wrong username or password')\n } else {\n reject('An error occurred, please try again')\n }\n }\n commit('endLogin')\n resolve()\n })\n .catch((error) => {\n console.log(error)\n commit('endLogin')\n reject('Failed to connect to server, try again')\n })\n })\n }\n }\n}\n\nexport default users\n","const queryParams = (params) => {\n return Object.keys(params)\n .map(k => encodeURIComponent(k) + '=' + encodeURIComponent(params[k]))\n .join('&')\n}\n\nconst headers = (store) => {\n const accessToken = store.getters.getToken()\n if (accessToken) {\n return { 'Authorization': `Bearer ${accessToken}` }\n } else {\n return {}\n }\n}\n\nconst request = ({method = 'GET', url, params, store}) => {\n const instance = store.state.instance.server\n let fullUrl = `${instance}${url}`\n\n if (method === 'GET' && params) {\n fullUrl = fullUrl + `?${queryParams(params)}`\n }\n\n return window.fetch(fullUrl, {\n method,\n headers: headers(store),\n credentials: 'same-origin'\n })\n}\n\nconst utils = {\n queryParams,\n request\n}\n\nexport default utils\n","import runtime from 'serviceworker-webpack-plugin/lib/runtime'\n\nfunction urlBase64ToUint8Array (base64String) {\n const padding = '='.repeat((4 - base64String.length % 4) % 4)\n const base64 = (base64String + padding)\n .replace(/-/g, '+')\n .replace(/_/g, '/')\n\n const rawData = window.atob(base64)\n return Uint8Array.from([...rawData].map((char) => char.charCodeAt(0)))\n}\n\nfunction isPushSupported () {\n return 'serviceWorker' in navigator && 'PushManager' in window\n}\n\nfunction getOrCreateServiceWorker () {\n return runtime.register()\n .catch((err) => console.error('Unable to get or create a service worker.', err))\n}\n\nfunction subscribePush (registration, isEnabled, vapidPublicKey) {\n if (!isEnabled) return Promise.reject(new Error('Web Push is disabled in config'))\n if (!vapidPublicKey) return Promise.reject(new Error('VAPID public key is not found'))\n\n const subscribeOptions = {\n userVisibleOnly: true,\n applicationServerKey: urlBase64ToUint8Array(vapidPublicKey)\n }\n return registration.pushManager.subscribe(subscribeOptions)\n}\n\nfunction unsubscribePush (registration) {\n return registration.pushManager.getSubscription()\n .then((subscribtion) => {\n if (subscribtion === null) { return }\n return subscribtion.unsubscribe()\n })\n}\n\nfunction deleteSubscriptionFromBackEnd (token) {\n return window.fetch('/api/v1/push/subscription/', {\n method: 'DELETE',\n headers: {\n 'Content-Type': 'application/json',\n 'Authorization': `Bearer ${token}`\n }\n }).then((response) => {\n if (!response.ok) throw new Error('Bad status code from server.')\n return response\n })\n}\n\nfunction sendSubscriptionToBackEnd (subscription, token, notificationVisibility) {\n return window.fetch('/api/v1/push/subscription/', {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n 'Authorization': `Bearer ${token}`\n },\n body: JSON.stringify({\n subscription,\n data: {\n alerts: {\n follow: notificationVisibility.follows,\n favourite: notificationVisibility.likes,\n mention: notificationVisibility.mentions,\n reblog: notificationVisibility.repeats\n }\n }\n })\n }).then((response) => {\n if (!response.ok) throw new Error('Bad status code from server.')\n return response.json()\n }).then((responseData) => {\n if (!responseData.id) throw new Error('Bad response from server.')\n return responseData\n })\n}\n\nexport function registerPushNotifications (isEnabled, vapidPublicKey, token, notificationVisibility) {\n if (isPushSupported()) {\n getOrCreateServiceWorker()\n .then((registration) => subscribePush(registration, isEnabled, vapidPublicKey))\n .then((subscription) => sendSubscriptionToBackEnd(subscription, token, notificationVisibility))\n .catch((e) => console.warn(`Failed to setup Web Push Notifications: ${e.message}`))\n }\n}\n\nexport function unregisterPushNotifications (token) {\n if (isPushSupported()) {\n Promise.all([\n deleteSubscriptionFromBackEnd(token),\n getOrCreateServiceWorker()\n .then((registration) => {\n return unsubscribePush(registration).then((result) => [registration, result])\n })\n .then(([registration, unsubResult]) => {\n if (!unsubResult) {\n console.warn('Push subscription cancellation wasn\\'t successful, killing SW anyway...')\n }\n return registration.unregister().then((result) => {\n if (!result) {\n console.warn('Failed to kill SW')\n }\n })\n })\n ]).catch((e) => console.warn(`Failed to disable Web Push Notifications: ${e.message}`))\n }\n}\n","import { capitalize } from 'lodash'\n\nexport function humanizeErrors (errors) {\n return Object.entries(errors).reduce((errs, [k, val]) => {\n let message = val.reduce((acc, message) => {\n let key = capitalize(k.replace(/_/g, ' '))\n return acc + [key, message].join(' ') + '. '\n }, '')\n return [...errs, message]\n }, [])\n}\n\n","import backendInteractorService from '../services/backend_interactor_service/backend_interactor_service.js'\nimport { Socket } from 'phoenix'\n\nconst api = {\n state: {\n backendInteractor: backendInteractorService(),\n fetchers: {},\n socket: null,\n chatDisabled: false,\n followRequests: []\n },\n mutations: {\n setBackendInteractor (state, backendInteractor) {\n state.backendInteractor = backendInteractor\n },\n addFetcher (state, { fetcherName, fetcher }) {\n state.fetchers[fetcherName] = fetcher\n },\n removeFetcher (state, { fetcherName }) {\n delete state.fetchers[fetcherName]\n },\n setWsToken (state, token) {\n state.wsToken = token\n },\n setSocket (state, socket) {\n state.socket = socket\n },\n setChatDisabled (state, value) {\n state.chatDisabled = value\n },\n setFollowRequests (state, value) {\n state.followRequests = value\n }\n },\n actions: {\n startFetchingTimeline (store, { timeline = 'friends', tag = false, userId = false }) {\n // Don't start fetching if we already are.\n if (store.state.fetchers[timeline]) return\n\n const fetcher = store.state.backendInteractor.startFetchingTimeline({ timeline, store, userId, tag })\n store.commit('addFetcher', { fetcherName: timeline, fetcher })\n },\n startFetchingNotifications (store) {\n // Don't start fetching if we already are.\n if (store.state.fetchers['notifications']) return\n\n const fetcher = store.state.backendInteractor.startFetchingNotifications({ store })\n store.commit('addFetcher', { fetcherName: 'notifications', fetcher })\n },\n stopFetching (store, fetcherName) {\n const fetcher = store.state.fetchers[fetcherName]\n window.clearInterval(fetcher)\n store.commit('removeFetcher', { fetcherName })\n },\n setWsToken (store, token) {\n store.commit('setWsToken', token)\n },\n initializeSocket (store) {\n // Set up websocket connection\n if (!store.state.chatDisabled) {\n const token = store.state.wsToken\n const socket = new Socket('/socket', { params: { token } })\n socket.connect()\n store.dispatch('initializeChat', socket)\n }\n },\n disableChat (store) {\n store.commit('setChatDisabled', true)\n },\n removeFollowRequest (store, request) {\n let requests = store.state.followRequests.filter((it) => it !== request)\n store.commit('setFollowRequests', requests)\n }\n }\n}\n\nexport default api\n","import { set, delete as del } from 'vue'\nimport { setPreset, applyTheme } from '../services/style_setter/style_setter.js'\n\nconst browserLocale = (window.navigator.language || 'en').split('-')[0]\n\nconst defaultState = {\n colors: {},\n hideMutedPosts: undefined, // instance default\n collapseMessageWithSubject: undefined, // instance default\n hideAttachments: false,\n hideAttachmentsInConv: false,\n maxThumbnails: 16,\n hideNsfw: true,\n preloadImage: true,\n loopVideo: true,\n loopVideoSilentOnly: true,\n autoLoad: true,\n streaming: false,\n hoverPreview: true,\n autohideFloatingPostButton: false,\n pauseOnUnfocused: true,\n stopGifs: false,\n replyVisibility: 'all',\n notificationVisibility: {\n follows: true,\n mentions: true,\n likes: true,\n repeats: true\n },\n webPushNotifications: false,\n muteWords: [],\n highlight: {},\n interfaceLanguage: browserLocale,\n hideScopeNotice: false,\n scopeCopy: undefined, // instance default\n subjectLineBehavior: undefined, // instance default\n alwaysShowSubjectInput: undefined, // instance default\n postContentType: undefined, // instance default\n minimalScopesMode: undefined // instance default\n}\n\nconst config = {\n state: defaultState,\n mutations: {\n setOption (state, { name, value }) {\n set(state, name, value)\n },\n setHighlight (state, { user, color, type }) {\n const data = this.state.config.highlight[user]\n if (color || type) {\n set(state.highlight, user, { color: color || data.color, type: type || data.type })\n } else {\n del(state.highlight, user)\n }\n }\n },\n actions: {\n setHighlight ({ commit, dispatch }, { user, color, type }) {\n commit('setHighlight', {user, color, type})\n },\n setOption ({ commit, dispatch }, { name, value }) {\n commit('setOption', {name, value})\n switch (name) {\n case 'theme':\n setPreset(value, commit)\n break\n case 'customTheme':\n applyTheme(value, commit)\n }\n }\n }\n}\n\nexport default config\n","const chat = {\n state: {\n messages: [],\n channel: {state: ''},\n socket: null\n },\n mutations: {\n setChannel (state, channel) {\n state.channel = channel\n },\n setSocket (state, socket) {\n state.socket = socket\n },\n addMessage (state, message) {\n state.messages.push(message)\n state.messages = state.messages.slice(-19, 20)\n },\n setMessages (state, messages) {\n state.messages = messages.slice(-19, 20)\n }\n },\n actions: {\n disconnectFromChat (store) {\n store.state.socket && store.state.socket.disconnect()\n },\n initializeChat (store, socket) {\n const channel = socket.channel('chat:public')\n store.commit('setSocket', socket)\n channel.on('new_msg', (msg) => {\n store.commit('addMessage', msg)\n })\n channel.on('messages', ({messages}) => {\n store.commit('setMessages', messages)\n })\n channel.join()\n store.commit('setChannel', channel)\n }\n }\n}\n\nexport default chat\n","import { delete as del } from 'vue'\n\nconst oauth = {\n state: {\n clientId: false,\n clientSecret: false,\n /* App token is authentication for app without any user, used mostly for\n * MastoAPI's registration of new users, stored so that we can fall back to\n * it on logout\n */\n appToken: false,\n /* User token is authentication for app with user, this is for every calls\n * that need authorized user to be successful (i.e. posting, liking etc)\n */\n userToken: false\n },\n mutations: {\n setClientData (state, { clientId, clientSecret }) {\n state.clientId = clientId\n state.clientSecret = clientSecret\n },\n setAppToken (state, token) {\n state.appToken = token\n },\n setToken (state, token) {\n state.userToken = token\n },\n clearToken (state) {\n state.userToken = false\n // state.token is userToken with older name, coming from persistent state\n // let's clear it as well, since it is being used as a fallback of state.userToken\n del(state, 'token')\n }\n },\n getters: {\n getToken: state => () => {\n // state.token is userToken with older name, coming from persistent state\n // added here for smoother transition, otherwise user will be logged out\n return state.userToken || state.token || state.appToken\n },\n getUserToken: state => () => {\n // state.token is userToken with older name, coming from persistent state\n // added here for smoother transition, otherwise user will be logged out\n return state.userToken || state.token\n }\n }\n}\n\nexport default oauth\n","const PASSWORD_STRATEGY = 'password'\nconst TOKEN_STRATEGY = 'token'\n\n// MFA strategies\nconst TOTP_STRATEGY = 'totp'\nconst RECOVERY_STRATEGY = 'recovery'\n\n// initial state\nconst state = {\n app: null,\n settings: {},\n strategy: PASSWORD_STRATEGY,\n initStrategy: PASSWORD_STRATEGY // default strategy from config\n}\n\nconst resetState = (state) => {\n state.strategy = state.initStrategy\n state.settings = {}\n state.app = null\n}\n\n// getters\nconst getters = {\n app: (state, getters) => {\n return state.app\n },\n settings: (state, getters) => {\n return state.settings\n },\n requiredPassword: (state, getters, rootState) => {\n return state.strategy === PASSWORD_STRATEGY\n },\n requiredToken: (state, getters, rootState) => {\n return state.strategy === TOKEN_STRATEGY\n },\n requiredTOTP: (state, getters, rootState) => {\n return state.strategy === TOTP_STRATEGY\n },\n requiredRecovery: (state, getters, rootState) => {\n return state.strategy === RECOVERY_STRATEGY\n }\n}\n\n// mutations\nconst mutations = {\n setInitialStrategy (state, strategy) {\n if (strategy) {\n state.initStrategy = strategy\n state.strategy = strategy\n }\n },\n requirePassword (state) {\n state.strategy = PASSWORD_STRATEGY\n },\n requireToken (state) {\n state.strategy = TOKEN_STRATEGY\n },\n requireMFA (state, {app, settings}) {\n state.settings = settings\n state.app = app\n state.strategy = TOTP_STRATEGY // default strategy of MFA\n },\n requireRecovery (state) {\n state.strategy = RECOVERY_STRATEGY\n },\n requireTOTP (state) {\n state.strategy = TOTP_STRATEGY\n },\n abortMFA (state) {\n resetState(state)\n }\n}\n\n// actions\nconst actions = {\n async login ({state, dispatch, commit}, {access_token}) {\n commit('setToken', access_token, { root: true })\n await dispatch('loginUser', access_token, { root: true })\n resetState(state)\n }\n}\n\nexport default {\n namespaced: true,\n state,\n getters,\n mutations,\n actions\n}\n","import fileTypeService from '../services/file_type/file_type.service.js'\n\nconst mediaViewer = {\n state: {\n media: [],\n currentIndex: 0,\n activated: false\n },\n mutations: {\n setMedia (state, media) {\n state.media = media\n },\n setCurrent (state, index) {\n state.activated = true\n state.currentIndex = index\n },\n close (state) {\n state.activated = false\n }\n },\n actions: {\n setMedia ({ commit }, attachments) {\n const media = attachments.filter(attachment => {\n const type = fileTypeService.fileType(attachment.mimetype)\n return type === 'image' || type === 'video'\n })\n commit('setMedia', media)\n },\n setCurrent ({ commit, state }, current) {\n const index = state.media.indexOf(current)\n commit('setCurrent', index || 0)\n },\n closeMediaViewer ({ commit }) {\n commit('close')\n }\n }\n}\n\nexport default mediaViewer\n","const oauthTokens = {\n state: {\n tokens: []\n },\n actions: {\n fetchTokens ({rootState, commit}) {\n rootState.api.backendInteractor.fetchOAuthTokens().then((tokens) => {\n commit('swapTokens', tokens)\n })\n },\n revokeToken ({rootState, commit, state}, id) {\n rootState.api.backendInteractor.revokeOAuthToken(id).then((response) => {\n if (response.status === 201) {\n commit('swapTokens', state.tokens.filter(token => token.id !== id))\n }\n })\n }\n },\n mutations: {\n swapTokens (state, tokens) {\n state.tokens = tokens\n }\n }\n}\n\nexport default oauthTokens\n","import filter from 'lodash/filter'\n\nconst reports = {\n state: {\n userId: null,\n statuses: [],\n modalActivated: false\n },\n mutations: {\n openUserReportingModal (state, { userId, statuses }) {\n state.userId = userId\n state.statuses = statuses\n state.modalActivated = true\n },\n closeUserReportingModal (state) {\n state.modalActivated = false\n }\n },\n actions: {\n openUserReportingModal ({ rootState, commit }, userId) {\n const statuses = filter(rootState.statuses.allStatuses, status => status.user.id === userId)\n commit('openUserReportingModal', { userId, statuses })\n },\n closeUserReportingModal ({ commit }) {\n commit('closeUserReportingModal')\n }\n }\n}\n\nexport default reports\n","import { merge } from 'lodash'\nimport { set } from 'vue'\n\nconst polls = {\n state: {\n // Contains key = id, value = number of trackers for this poll\n trackedPolls: {},\n pollsObject: {}\n },\n mutations: {\n mergeOrAddPoll (state, poll) {\n const existingPoll = state.pollsObject[poll.id]\n // Make expired-state change trigger re-renders properly\n poll.expired = Date.now() > Date.parse(poll.expires_at)\n if (existingPoll) {\n set(state.pollsObject, poll.id, merge(existingPoll, poll))\n } else {\n set(state.pollsObject, poll.id, poll)\n }\n },\n trackPoll (state, pollId) {\n const currentValue = state.trackedPolls[pollId]\n if (currentValue) {\n set(state.trackedPolls, pollId, currentValue + 1)\n } else {\n set(state.trackedPolls, pollId, 1)\n }\n },\n untrackPoll (state, pollId) {\n const currentValue = state.trackedPolls[pollId]\n if (currentValue) {\n set(state.trackedPolls, pollId, currentValue - 1)\n } else {\n set(state.trackedPolls, pollId, 0)\n }\n }\n },\n actions: {\n mergeOrAddPoll ({ commit }, poll) {\n commit('mergeOrAddPoll', poll)\n },\n updateTrackedPoll ({ rootState, dispatch, commit }, pollId) {\n rootState.api.backendInteractor.fetchPoll(pollId).then(poll => {\n setTimeout(() => {\n if (rootState.polls.trackedPolls[pollId]) {\n dispatch('updateTrackedPoll', pollId)\n }\n }, 30 * 1000)\n commit('mergeOrAddPoll', poll)\n })\n },\n trackPoll ({ rootState, commit, dispatch }, pollId) {\n if (!rootState.polls.trackedPolls[pollId]) {\n setTimeout(() => dispatch('updateTrackedPoll', pollId), 30 * 1000)\n }\n commit('trackPoll', pollId)\n },\n untrackPoll ({ commit }, pollId) {\n commit('untrackPoll', pollId)\n },\n votePoll ({ rootState, commit }, { id, pollId, choices }) {\n return rootState.api.backendInteractor.vote(pollId, choices).then(poll => {\n commit('mergeOrAddPoll', poll)\n return poll\n })\n }\n }\n}\n\nexport default polls\n","import merge from 'lodash.merge'\nimport objectPath from 'object-path'\nimport localforage from 'localforage'\nimport { each } from 'lodash'\n\nlet loaded = false\n\nconst defaultReducer = (state, paths) => (\n paths.length === 0 ? state : paths.reduce((substate, path) => {\n objectPath.set(substate, path, objectPath.get(state, path))\n return substate\n }, {})\n)\n\nconst saveImmedeatelyActions = [\n 'markNotificationsAsSeen',\n 'clearCurrentUser',\n 'setCurrentUser',\n 'setHighlight',\n 'setOption',\n 'setClientData',\n 'setToken',\n 'clearToken'\n]\n\nconst defaultStorage = (() => {\n return localforage\n})()\n\nexport default function createPersistedState ({\n key = 'vuex-lz',\n paths = [],\n getState = (key, storage) => {\n let value = storage.getItem(key)\n return value\n },\n setState = (key, state, storage) => {\n if (!loaded) {\n console.log('waiting for old state to be loaded...')\n return Promise.resolve()\n } else {\n return storage.setItem(key, state)\n }\n },\n reducer = defaultReducer,\n storage = defaultStorage,\n subscriber = store => handler => store.subscribe(handler)\n} = {}) {\n return getState(key, storage).then((savedState) => {\n return store => {\n try {\n if (savedState !== null && typeof savedState === 'object') {\n // build user cache\n const usersState = savedState.users || {}\n usersState.usersObject = {}\n const users = usersState.users || []\n each(users, (user) => { usersState.usersObject[user.id] = user })\n savedState.users = usersState\n\n store.replaceState(\n merge({}, store.state, savedState)\n )\n }\n loaded = true\n } catch (e) {\n console.log(\"Couldn't load state\")\n console.error(e)\n loaded = true\n }\n subscriber(store)((mutation, state) => {\n try {\n if (saveImmedeatelyActions.includes(mutation.type)) {\n setState(key, reducer(state, paths), storage)\n .then(success => {\n if (typeof success !== 'undefined') {\n if (mutation.type === 'setOption' || mutation.type === 'setCurrentUser') {\n store.dispatch('settingsSaved', { success })\n }\n }\n }, error => {\n if (mutation.type === 'setOption' || mutation.type === 'setCurrentUser') {\n store.dispatch('settingsSaved', { error })\n }\n })\n }\n } catch (e) {\n console.log(\"Couldn't persist state:\")\n console.log(e)\n }\n })\n }\n })\n}\n","export default (store) => {\n store.subscribe((mutation, state) => {\n const vapidPublicKey = state.instance.vapidPublicKey\n const webPushNotification = state.config.webPushNotifications\n const permission = state.interface.notificationPermission === 'granted'\n const user = state.users.currentUser\n\n const isUserMutation = mutation.type === 'setCurrentUser'\n const isVapidMutation = mutation.type === 'setInstanceOption' && mutation.payload.name === 'vapidPublicKey'\n const isPermMutation = mutation.type === 'setNotificationPermission' && mutation.payload === 'granted'\n const isUserConfigMutation = mutation.type === 'setOption' && mutation.payload.name === 'webPushNotifications'\n const isVisibilityMutation = mutation.type === 'setOption' && mutation.payload.name === 'notificationVisibility'\n\n if (isUserMutation || isVapidMutation || isPermMutation || isUserConfigMutation || isVisibilityMutation) {\n if (user && vapidPublicKey && permission && webPushNotification) {\n return store.dispatch('registerPushNotifications')\n } else if (isUserConfigMutation && !webPushNotification) {\n return store.dispatch('unregisterPushNotifications')\n }\n }\n })\n}\n","import Vue from 'vue'\nimport VueRouter from 'vue-router'\nimport routes from './routes'\nimport App from '../App.vue'\nimport { windowWidth } from '../services/window_utils/window_utils'\nimport { getOrCreateApp, getClientToken } from '../services/new_api/oauth.js'\nimport backendInteractorService from '../services/backend_interactor_service/backend_interactor_service.js'\n\nconst getStatusnetConfig = async ({ store }) => {\n try {\n const res = await window.fetch('/api/statusnet/config.json')\n if (res.ok) {\n const data = await res.json()\n const { name, closed: registrationClosed, textlimit, uploadlimit, server, vapidPublicKey, safeDMMentionsEnabled } = data.site\n\n store.dispatch('setInstanceOption', { name: 'name', value: name })\n store.dispatch('setInstanceOption', { name: 'registrationOpen', value: (registrationClosed === '0') })\n store.dispatch('setInstanceOption', { name: 'textlimit', value: parseInt(textlimit) })\n store.dispatch('setInstanceOption', { name: 'server', value: server })\n store.dispatch('setInstanceOption', { name: 'safeDM', value: safeDMMentionsEnabled !== '0' })\n\n // TODO: default values for this stuff, added if to not make it break on\n // my dev config out of the box.\n if (uploadlimit) {\n store.dispatch('setInstanceOption', { name: 'uploadlimit', value: parseInt(uploadlimit.uploadlimit) })\n store.dispatch('setInstanceOption', { name: 'avatarlimit', value: parseInt(uploadlimit.avatarlimit) })\n store.dispatch('setInstanceOption', { name: 'backgroundlimit', value: parseInt(uploadlimit.backgroundlimit) })\n store.dispatch('setInstanceOption', { name: 'bannerlimit', value: parseInt(uploadlimit.bannerlimit) })\n }\n\n if (vapidPublicKey) {\n store.dispatch('setInstanceOption', { name: 'vapidPublicKey', value: vapidPublicKey })\n }\n\n return data.site.pleromafe\n } else {\n throw (res)\n }\n } catch (error) {\n console.error('Could not load statusnet config, potentially fatal')\n console.error(error)\n }\n}\n\nconst getStaticConfig = async () => {\n try {\n const res = await window.fetch('/static/config.json')\n if (res.ok) {\n return res.json()\n } else {\n throw (res)\n }\n } catch (error) {\n console.warn('Failed to load static/config.json, continuing without it.')\n console.warn(error)\n return {}\n }\n}\n\nconst setSettings = async ({ apiConfig, staticConfig, store }) => {\n const overrides = window.___pleromafe_dev_overrides || {}\n const env = window.___pleromafe_mode.NODE_ENV\n\n // This takes static config and overrides properties that are present in apiConfig\n let config = {}\n if (overrides.staticConfigPreference && env === 'development') {\n console.warn('OVERRIDING API CONFIG WITH STATIC CONFIG')\n config = Object.assign({}, apiConfig, staticConfig)\n } else {\n config = Object.assign({}, staticConfig, apiConfig)\n }\n\n const copyInstanceOption = (name) => {\n store.dispatch('setInstanceOption', { name, value: config[name] })\n }\n\n copyInstanceOption('nsfwCensorImage')\n copyInstanceOption('background')\n copyInstanceOption('hidePostStats')\n copyInstanceOption('hideUserStats')\n copyInstanceOption('hideFilteredStatuses')\n copyInstanceOption('logo')\n\n store.dispatch('setInstanceOption', {\n name: 'logoMask',\n value: typeof config.logoMask === 'undefined'\n ? true\n : config.logoMask\n })\n\n store.dispatch('setInstanceOption', {\n name: 'logoMargin',\n value: typeof config.logoMargin === 'undefined'\n ? 0\n : config.logoMargin\n })\n store.commit('authFlow/setInitialStrategy', config.loginMethod)\n\n copyInstanceOption('redirectRootNoLogin')\n copyInstanceOption('redirectRootLogin')\n copyInstanceOption('showInstanceSpecificPanel')\n copyInstanceOption('minimalScopesMode')\n copyInstanceOption('hideMutedPosts')\n copyInstanceOption('collapseMessageWithSubject')\n copyInstanceOption('scopeCopy')\n copyInstanceOption('subjectLineBehavior')\n copyInstanceOption('postContentType')\n copyInstanceOption('alwaysShowSubjectInput')\n copyInstanceOption('noAttachmentLinks')\n copyInstanceOption('showFeaturesPanel')\n\n if ((config.chatDisabled)) {\n store.dispatch('disableChat')\n } else {\n store.dispatch('initializeSocket')\n }\n\n return store.dispatch('setTheme', config['theme'])\n}\n\nconst getTOS = async ({ store }) => {\n try {\n const res = await window.fetch('/static/terms-of-service.html')\n if (res.ok) {\n const html = await res.text()\n store.dispatch('setInstanceOption', { name: 'tos', value: html })\n } else {\n throw (res)\n }\n } catch (e) {\n console.warn(\"Can't load TOS\")\n console.warn(e)\n }\n}\n\nconst getInstancePanel = async ({ store }) => {\n try {\n const res = await window.fetch('/instance/panel.html')\n if (res.ok) {\n const html = await res.text()\n store.dispatch('setInstanceOption', { name: 'instanceSpecificPanelContent', value: html })\n } else {\n throw (res)\n }\n } catch (e) {\n console.warn(\"Can't load instance panel\")\n console.warn(e)\n }\n}\n\nconst getStaticEmoji = async ({ store }) => {\n try {\n const res = await window.fetch('/static/emoji.json')\n if (res.ok) {\n const values = await res.json()\n const emoji = Object.keys(values).map((key) => {\n return {\n displayText: key,\n imageUrl: false,\n replacement: values[key]\n }\n })\n store.dispatch('setInstanceOption', { name: 'emoji', value: emoji })\n } else {\n throw (res)\n }\n } catch (e) {\n console.warn(\"Can't load static emoji\")\n console.warn(e)\n }\n}\n\n// This is also used to indicate if we have a 'pleroma backend' or not.\n// Somewhat weird, should probably be somewhere else.\nconst getCustomEmoji = async ({ store }) => {\n try {\n const res = await window.fetch('/api/pleroma/emoji.json')\n if (res.ok) {\n const result = await res.json()\n const values = Array.isArray(result) ? Object.assign({}, ...result) : result\n const emoji = Object.keys(values).map((key) => {\n const imageUrl = values[key].image_url\n return {\n displayText: key,\n imageUrl: imageUrl ? store.state.instance.server + imageUrl : values[key],\n replacement: `:${key}: `\n }\n })\n store.dispatch('setInstanceOption', { name: 'customEmoji', value: emoji })\n store.dispatch('setInstanceOption', { name: 'pleromaBackend', value: true })\n } else {\n throw (res)\n }\n } catch (e) {\n store.dispatch('setInstanceOption', { name: 'pleromaBackend', value: false })\n console.warn(\"Can't load custom emojis, maybe not a Pleroma instance?\")\n console.warn(e)\n }\n}\n\nconst getAppSecret = async ({ store }) => {\n const { state, commit } = store\n const { oauth, instance } = state\n return getOrCreateApp({ ...oauth, instance: instance.server, commit })\n .then((app) => getClientToken({ ...app, instance: instance.server }))\n .then((token) => {\n commit('setAppToken', token.access_token)\n commit('setBackendInteractor', backendInteractorService(store.getters.getToken()))\n })\n}\n\nconst getNodeInfo = async ({ store }) => {\n try {\n const res = await window.fetch('/nodeinfo/2.0.json')\n if (res.ok) {\n const data = await res.json()\n const metadata = data.metadata\n const features = metadata.features\n store.dispatch('setInstanceOption', { name: 'mediaProxyAvailable', value: features.includes('media_proxy') })\n store.dispatch('setInstanceOption', { name: 'chatAvailable', value: features.includes('chat') })\n store.dispatch('setInstanceOption', { name: 'gopherAvailable', value: features.includes('gopher') })\n store.dispatch('setInstanceOption', { name: 'pollsAvailable', value: features.includes('polls') })\n store.dispatch('setInstanceOption', { name: 'pollLimits', value: metadata.pollLimits })\n\n store.dispatch('setInstanceOption', { name: 'restrictedNicknames', value: metadata.restrictedNicknames })\n store.dispatch('setInstanceOption', { name: 'postFormats', value: metadata.postFormats })\n\n const suggestions = metadata.suggestions\n store.dispatch('setInstanceOption', { name: 'suggestionsEnabled', value: suggestions.enabled })\n store.dispatch('setInstanceOption', { name: 'suggestionsWeb', value: suggestions.web })\n\n const software = data.software\n store.dispatch('setInstanceOption', { name: 'backendVersion', value: software.version })\n\n const frontendVersion = window.___pleromafe_commit_hash\n store.dispatch('setInstanceOption', { name: 'frontendVersion', value: frontendVersion })\n store.dispatch('setInstanceOption', { name: 'tagPolicyAvailable', value: metadata.federation.mrf_policies.includes('TagPolicy') })\n } else {\n throw (res)\n }\n } catch (e) {\n console.warn('Could not load nodeinfo')\n console.warn(e)\n }\n}\n\nconst setConfig = async ({ store }) => {\n // apiConfig, staticConfig\n const configInfos = await Promise.all([getStatusnetConfig({ store }), getStaticConfig()])\n const apiConfig = configInfos[0]\n const staticConfig = configInfos[1]\n\n await setSettings({ store, apiConfig, staticConfig }).then(getAppSecret({ store }))\n}\n\nconst checkOAuthToken = async ({ store }) => {\n return new Promise(async (resolve, reject) => {\n if (store.getters.getUserToken()) {\n try {\n await store.dispatch('loginUser', store.getters.getUserToken())\n } catch (e) {\n console.log(e)\n }\n }\n resolve()\n })\n}\n\nconst afterStoreSetup = async ({ store, i18n }) => {\n if (store.state.config.customTheme) {\n // This is a hack to deal with async loading of config.json and themes\n // See: style_setter.js, setPreset()\n window.themeLoaded = true\n store.dispatch('setOption', {\n name: 'customTheme',\n value: store.state.config.customTheme\n })\n }\n\n const width = windowWidth()\n store.dispatch('setMobileLayout', width <= 800)\n\n // Now we can try getting the server settings and logging in\n await Promise.all([\n checkOAuthToken({ store }),\n setConfig({ store }),\n getTOS({ store }),\n getInstancePanel({ store }),\n getStaticEmoji({ store }),\n getCustomEmoji({ store }),\n getNodeInfo({ store })\n ])\n\n const router = new VueRouter({\n mode: 'history',\n routes: routes(store),\n scrollBehavior: (to, _from, savedPosition) => {\n if (to.matched.some(m => m.meta.dontScroll)) {\n return false\n }\n return savedPosition || { x: 0, y: 0 }\n }\n })\n\n /* eslint-disable no-new */\n return new Vue({\n router,\n store,\n i18n,\n el: '#app',\n render: h => h(App)\n })\n}\n\nexport default afterStoreSetup\n","import PublicTimeline from 'components/public_timeline/public_timeline.vue'\nimport PublicAndExternalTimeline from 'components/public_and_external_timeline/public_and_external_timeline.vue'\nimport FriendsTimeline from 'components/friends_timeline/friends_timeline.vue'\nimport TagTimeline from 'components/tag_timeline/tag_timeline.vue'\nimport ConversationPage from 'components/conversation-page/conversation-page.vue'\nimport Interactions from 'components/interactions/interactions.vue'\nimport DMs from 'components/dm_timeline/dm_timeline.vue'\nimport UserProfile from 'components/user_profile/user_profile.vue'\nimport Settings from 'components/settings/settings.vue'\nimport Registration from 'components/registration/registration.vue'\nimport UserSettings from 'components/user_settings/user_settings.vue'\nimport FollowRequests from 'components/follow_requests/follow_requests.vue'\nimport OAuthCallback from 'components/oauth_callback/oauth_callback.vue'\nimport UserSearch from 'components/user_search/user_search.vue'\nimport Notifications from 'components/notifications/notifications.vue'\nimport AuthForm from 'components/auth_form/auth_form.js'\nimport ChatPanel from 'components/chat_panel/chat_panel.vue'\nimport WhoToFollow from 'components/who_to_follow/who_to_follow.vue'\nimport About from 'components/about/about.vue'\n\nexport default (store) => {\n return [\n { name: 'root',\n path: '/',\n redirect: _to => {\n return (store.state.users.currentUser\n ? store.state.instance.redirectRootLogin\n : store.state.instance.redirectRootNoLogin) || '/main/all'\n }\n },\n { name: 'public-external-timeline', path: '/main/all', component: PublicAndExternalTimeline },\n { name: 'public-timeline', path: '/main/public', component: PublicTimeline },\n { name: 'friends', path: '/main/friends', component: FriendsTimeline },\n { name: 'tag-timeline', path: '/tag/:tag', component: TagTimeline },\n { name: 'conversation', path: '/notice/:id', component: ConversationPage, meta: { dontScroll: true } },\n { name: 'external-user-profile', path: '/users/:id', component: UserProfile },\n { name: 'interactions', path: '/users/:username/interactions', component: Interactions },\n { name: 'dms', path: '/users/:username/dms', component: DMs },\n { name: 'settings', path: '/settings', component: Settings },\n { name: 'registration', path: '/registration', component: Registration },\n { name: 'registration-token', path: '/registration/:token', component: Registration },\n { name: 'friend-requests', path: '/friend-requests', component: FollowRequests },\n { name: 'user-settings', path: '/user-settings', component: UserSettings },\n { name: 'notifications', path: '/:username/notifications', component: Notifications },\n { name: 'login', path: '/login', component: AuthForm },\n { name: 'chat', path: '/chat', component: ChatPanel, props: () => ({ floating: false }) },\n { name: 'oauth-callback', path: '/oauth-callback', component: OAuthCallback, props: (route) => ({ code: route.query.code }) },\n { name: 'user-search', path: '/user-search', component: UserSearch, props: (route) => ({ query: route.query.query }) },\n { name: 'who-to-follow', path: '/who-to-follow', component: WhoToFollow },\n { name: 'about', path: '/about', component: About },\n { name: 'user-profile', path: '/(users/)?:name', component: UserProfile }\n ]\n}\n","/* script */\nexport * from \"!!babel-loader!./public_timeline.js\"\nimport __vue_script__ from \"!!babel-loader!./public_timeline.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-28719980\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./public_timeline.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./timeline.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"0084eb3d\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".timeline .loadmore-text{opacity:1}.new-status-notification{position:relative;margin-top:-1px;font-size:1.1em;border-width:1px 0 0;border-style:solid;border-color:var(--border,#222);padding:10px;z-index:1;background-color:#182230;background-color:var(--panel,#182230)}\", \"\"]);\n\n// exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./status.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"ce58e9e8\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".status-body{flex:1;min-width:0}.status-preview.status-el{border-color:#222;border:1px solid var(--border,#222)}.status-preview-container{position:relative;max-width:100%}.status-pin{padding:.75em .75em 0;display:flex;align-items:center;justify-content:flex-end}.status-preview{position:absolute;max-width:95%;display:flex;background-color:#121a24;background-color:var(--bg,#121a24);border-color:#222;border:1px solid var(--border,#222);border-radius:5px;border-radius:var(--tooltipRadius,5px);box-shadow:2px 2px 3px rgba(0,0,0,.5);box-shadow:var(--popupShadow);margin-top:.25em;margin-left:.5em;z-index:50}.status-preview .status{flex:1;border:0;min-width:15em}.status-preview-loading{display:block;min-width:15em;padding:1em;text-align:center;border-width:1px;border-style:solid}.status-preview-loading i{font-size:2em}.media-left{margin-right:.75em}.status-el{overflow-wrap:break-word;word-wrap:break-word;word-break:break-word;border-left-width:0;min-width:0;border-color:#222;border-color:var(--border,#222);border-left:4px red;border-left:4px var(--cRed,red)}.status-el_focused{background-color:#151e2a;background-color:var(--lightBg,#151e2a)}.timeline .status-el{border-bottom-width:1px;border-bottom-style:solid}.status-el .media-body{flex:1;padding:0}.status-el .status-usercard{margin-bottom:.75em}.status-el .user-name{white-space:nowrap;font-size:14px;overflow:hidden;flex-shrink:0;max-width:85%;font-weight:700}.status-el .user-name img{width:14px;height:14px;vertical-align:middle;object-fit:contain}.status-el .media-heading{padding:0;vertical-align:bottom;flex-basis:100%;margin-bottom:.5em}.status-el .media-heading a{display:inline-block;word-break:break-all}.status-el .media-heading small{font-weight:lighter}.status-el .media-heading .heading-name-row{padding:0;display:flex;justify-content:space-between;line-height:18px}.status-el .media-heading .heading-name-row .name-and-account-name{display:flex;min-width:0}.status-el .media-heading .heading-name-row .user-name{flex-shrink:1;margin-right:.4em;overflow:hidden;text-overflow:ellipsis}.status-el .media-heading .heading-name-row .account-name{min-width:1.6em;margin-right:.4em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1 1 0}.status-el .media-heading .heading-right{display:flex;flex-shrink:0}.status-el .media-heading .timeago{margin-right:.2em}.status-el .media-heading .heading-reply-row{align-content:baseline;font-size:12px;line-height:18px;max-width:100%;display:flex;flex-wrap:wrap;align-items:stretch}.status-el .media-heading .heading-reply-row a{max-width:100%;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.status-el .media-heading .reply-to-and-accountname{display:flex;height:18px;margin-right:.5em;overflow:hidden;max-width:100%}.status-el .media-heading .reply-to-and-accountname .icon-reply{transform:scaleX(-1)}.status-el .media-heading .reply-info,.status-el .media-heading .reply-to{display:flex}.status-el .media-heading .reply-to-text{overflow:hidden;text-overflow:ellipsis;margin:0 .4em 0 .2em}.status-el .media-heading .replies-separator{margin-left:.4em}.status-el .media-heading .replies{line-height:18px;font-size:12px;display:flex;flex-wrap:wrap}.status-el .media-heading .replies>*{margin-right:.4em}.status-el .media-heading .reply-link{height:17px}.status-el .tall-status{position:relative;height:220px;overflow-x:hidden;overflow-y:hidden}.status-el .tall-status-hider{display:inline-block;word-break:break-all;position:absolute;height:70px;margin-top:150px;width:100%;text-align:center;line-height:110px;background:linear-gradient(180deg,transparent,#121a24 80%);background:linear-gradient(180deg,transparent,var(--bg,#121a24) 80%)}.status-el .tall-status-hider_focused{background:linear-gradient(180deg,transparent,#151e2a 80%);background:linear-gradient(180deg,transparent,var(--lightBg,#151e2a) 80%)}.status-el .cw-status-hider,.status-el .status-unhider{width:100%;text-align:center;display:inline-block;word-break:break-all}.status-el .status-content{font-family:var(--postFont,sans-serif);line-height:1.4em}.status-el .status-content img,.status-el .status-content video{max-width:100%;max-height:400px;vertical-align:middle;object-fit:contain}.status-el .status-content img.emoji,.status-el .status-content video.emoji{width:32px;height:32px}.status-el .status-content blockquote{margin:.2em 0 .2em 2em;font-style:italic}.status-el .status-content pre{overflow:auto}.status-el .status-content code,.status-el .status-content kbd,.status-el .status-content pre,.status-el .status-content samp,.status-el .status-content var{font-family:var(--postCodeFont,monospace)}.status-el .status-content p{margin:0 0 1em}.status-el .status-content p:last-child{margin:0}.status-el .status-content h1{font-size:1.1em;line-height:1.2em;margin:1.4em 0}.status-el .status-content h2{font-size:1.1em;margin:1em 0}.status-el .status-content h3{font-size:1em;margin:1.2em 0}.status-el .status-content h4{margin:1.1em 0}.status-el .retweet-info{padding:.4em .75em;margin:0}.status-el .retweet-info .avatar.still-image{border-radius:10px;border-radius:var(--avatarAltRadius,10px);margin-left:28px;width:20px;height:20px}.status-el .retweet-info .media-body{font-size:1em;line-height:22px;display:flex;align-content:center;flex-wrap:wrap}.status-el .retweet-info .media-body .user-name{font-weight:700;overflow:hidden;text-overflow:ellipsis}.status-el .retweet-info .media-body .user-name img{width:14px;height:14px;vertical-align:middle;object-fit:contain}.status-el .retweet-info .media-body i{padding:0 .2em}.status-el .retweet-info .media-body a{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-fadein{animation-duration:.4s;animation-name:fadein}@keyframes fadein{0%{opacity:0}to{opacity:1}}.greentext{color:green}.status-conversation{border-left-style:solid}.status-actions{width:100%;display:flex;margin-top:.75em}.status-actions div,.status-actions favorite-button{max-width:4em;flex:1}.button-icon.icon-reply.button-icon-active,.button-icon.icon-reply:not(.button-icon-disabled):hover{color:#0095ff;color:var(--cBlue,#0095ff);cursor:pointer}.status:hover .animated.avatar canvas{display:none}.status:hover .animated.avatar img{visibility:visible}.status{display:flex;padding:.75em}.status.is-retweet{padding-top:0}.status-conversation:last-child{border-bottom:none}.muted{padding:.25em .5em}.muted button{margin-left:auto}.muted .muteWords{margin-left:10px}a.unmute{display:block;margin-left:auto}.reply-body{flex:1}.timeline :not(.panel-disabled)>.status-el:last-child{border-radius:0 0 10px 10px;border-radius:0 0 var(--panelRadius,10px) var(--panelRadius,10px);border-bottom:none}.favs-repeated-users{margin-top:.75em}.favs-repeated-users .stats{width:100%;display:flex;line-height:1em}.favs-repeated-users .stats .stat-count{margin-right:.75em}.favs-repeated-users .stats .stat-count .stat-title{color:var(--faint,hsla(240,1%,73%,.5));font-size:12px;text-transform:uppercase;position:relative}.favs-repeated-users .stats .stat-count .stat-number{font-weight:bolder;font-size:16px;line-height:1em}.favs-repeated-users .stats .avatar-row{flex:1;overflow:hidden;position:relative;display:flex;align-items:center}.favs-repeated-users .stats .avatar-row:before{content:\\\"\\\";position:absolute;height:100%;width:1px;left:0;background-color:var(--faint,hsla(240,1%,73%,.5))}@media (max-width:800px){.status-el .retweet-info .avatar.still-image{margin-left:20px}.status{max-width:100%}.status .avatar.still-image{width:40px;height:40px}.status .avatar.still-image.avatar-compact{width:32px;height:32px}}\", \"\"]);\n\n// exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./attachment.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"60b296ca\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".attachments{display:flex;flex-wrap:wrap}.attachments .attachment.media-upload-container{flex:0 0 auto;max-height:200px;max-width:100%;display:flex;align-items:center}.attachments .attachment.media-upload-container video{max-width:100%}.attachments .placeholder{margin-right:8px;margin-bottom:4px}.attachments .nsfw-placeholder{cursor:pointer}.attachments .nsfw-placeholder.loading{cursor:progress}.attachments .attachment{position:relative;margin-top:.5em;align-self:flex-start;line-height:0;border-radius:10px;border-radius:var(--attachmentRadius,10px);border-color:#222;border:1px solid var(--border,#222);overflow:hidden}.attachments .non-gallery.attachment.video{flex:1 0 40%}.attachments .non-gallery.attachment .nsfw{height:260px}.attachments .non-gallery.attachment .small{height:120px;flex-grow:0}.attachments .non-gallery.attachment .video{height:260px;display:flex}.attachments .non-gallery.attachment video{max-height:100%;object-fit:contain}.attachments .fullwidth{flex-basis:100%}.attachments.video{line-height:0}.attachments .video-container{display:flex;max-height:100%}.attachments .video{width:100%}.attachments .play-icon{position:absolute;font-size:64px;top:calc(50% - 32px);left:calc(50% - 32px);color:hsla(0,0%,100%,.75);text-shadow:0 0 2px rgba(0,0,0,.4)}.attachments .play-icon:before{margin:0}.attachments.html{flex-basis:90%;width:100%;display:flex}.attachments .hider{position:absolute;right:0;white-space:nowrap;margin:10px;padding:5px;background:hsla(0,0%,90%,.6);font-weight:700;z-index:4;line-height:1;border-radius:5px;border-radius:var(--tooltipRadius,5px)}.attachments video{z-index:0}.attachments audio{width:100%}.attachments img.media-upload{line-height:0;max-height:200px;max-width:100%}.attachments .oembed{line-height:1.2em;flex:1 0 100%;width:100%;margin-right:15px;display:flex}.attachments .oembed img{width:100%}.attachments .oembed .image{flex:1}.attachments .oembed .image img{border:0;border-radius:5px;height:100%;object-fit:cover}.attachments .oembed .text{flex:2;margin:8px;word-break:break-all}.attachments .oembed .text h1{font-size:14px;margin:0}.attachments .image-attachment{width:100%;height:100%}.attachments .image-attachment.hidden{display:none}.attachments .image-attachment .nsfw{object-fit:cover;width:100%;height:100%}.attachments .image-attachment img{image-orientation:from-image}\", \"\"]);\n\n// exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./still-image.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"24ab97e0\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".still-image{position:relative;line-height:0;overflow:hidden;width:100%;height:100%}.still-image:hover canvas{display:none}.still-image img{width:100%;height:100%;object-fit:contain}.still-image.animated:hover:before,.still-image.animated img{visibility:hidden}.still-image.animated:hover img{visibility:visible}.still-image.animated:before{content:\\\"gif\\\";position:absolute;line-height:10px;font-size:10px;top:5px;left:5px;background:hsla(0,0%,50%,.5);color:#fff;display:block;padding:2px 4px;border-radius:5px;border-radius:var(--tooltipRadius,5px);z-index:2}.still-image canvas{position:absolute;top:0;bottom:0;left:0;right:0;width:100%;height:100%;object-fit:contain}\", \"\"]);\n\n// exports\n","module.exports = __webpack_public_path__ + \"static/img/nsfw.74818f9.png\";","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./favorite_button.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./favorite_button.js\"\nimport __vue_script__ from \"!!babel-loader!./favorite_button.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-23d3a771\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./favorite_button.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./favorite_button.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"7d4fb47f\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".fav-active{cursor:pointer;animation-duration:.6s}.fav-active:hover,.favorite-button.icon-star{color:orange;color:var(--cOrange,orange)}\", \"\"]);\n\n// exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./retweet_button.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./retweet_button.js\"\nimport __vue_script__ from \"!!babel-loader!./retweet_button.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-167856a9\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./retweet_button.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./retweet_button.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"2c52cbcb\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".rt-active{cursor:pointer;animation-duration:.6s}.icon-retweet.retweeted,.rt-active:hover{color:#0fa00f;color:var(--cGreen,#0fa00f)}\", \"\"]);\n\n// exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./poll.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./poll.js\"\nimport __vue_script__ from \"!!babel-loader!./poll.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-f5da1ea4\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./poll.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./poll.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"1a8b173f\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".poll .votes{display:flex;flex-direction:column;margin:0 0 .5em}.poll .poll-option{margin:.75em .5em}.poll .option-result{height:100%;display:flex;flex-direction:row;position:relative;color:#b9b9ba;color:var(--lightText,#b9b9ba)}.poll .option-result-label{display:flex;align-items:center;padding:.1em .25em;z-index:1}.poll .result-percentage{width:3.5em;flex-shrink:0}.poll .result-fill{height:100%;position:absolute;background-color:#151e2a;background-color:var(--linkBg,#151e2a);border-radius:10px;border-radius:var(--panelRadius,10px);top:0;left:0;transition:width .5s}.poll .option-vote{display:flex;align-items:center}.poll input{width:3.5em}.poll .footer{display:flex;align-items:center}.poll.loading *{cursor:progress}.poll .poll-vote-button{padding:0 .5em;margin-right:.5em}\", \"\"]);\n\n// exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./extra_buttons.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./extra_buttons.js\"\nimport __vue_script__ from \"!!babel-loader!./extra_buttons.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-42a7dfa0\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./extra_buttons.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./extra_buttons.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"0d2c533c\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".popper-wrapper{z-index:8}.popper-wrapper .popper__arrow{width:0;height:0;border-style:solid;position:absolute;margin:5px}.popper-wrapper[x-placement^=top]{margin-bottom:5px}.popper-wrapper[x-placement^=top] .popper__arrow{border-width:5px 5px 0;border-color:#121a24 transparent transparent;border-color:var(--bg,#121a24) transparent transparent;bottom:-5px;left:calc(50% - 5px);margin-top:0;margin-bottom:0}.popper-wrapper[x-placement^=bottom]{margin-top:5px}.popper-wrapper[x-placement^=bottom] .popper__arrow{border-width:0 5px 5px;border-color:transparent transparent #121a24;border-color:transparent transparent var(--bg,#121a24);top:-5px;left:calc(50% - 5px);margin-top:0;margin-bottom:0}.popper-wrapper[x-placement^=right]{margin-left:5px}.popper-wrapper[x-placement^=right] .popper__arrow{border-width:5px 5px 5px 0;border-color:transparent #121a24 transparent transparent;border-color:transparent var(--bg,#121a24) transparent transparent;left:-5px;top:calc(50% - 5px);margin-left:0;margin-right:0}.popper-wrapper[x-placement^=left]{margin-right:5px}.popper-wrapper[x-placement^=left] .popper__arrow{border-width:5px 0 5px 5px;border-color:transparent transparent transparent #121a24;border-color:transparent transparent transparent var(--bg,#121a24);right:-5px;top:calc(50% - 5px);margin-left:0;margin-right:0}.dropdown-menu{display:block;padding:.5rem 0;font-size:1rem;text-align:left;list-style:none;max-width:100vw;z-index:10;box-shadow:1px 1px 4px rgba(0,0,0,.6);box-shadow:var(--panelShadow);border:none;border-radius:4px;border-radius:var(--btnRadius,4px);background-color:#121a24;background-color:var(--bg,#121a24)}.dropdown-menu .dropdown-divider{height:0;margin:.5rem 0;overflow:hidden;border-top:1px solid #222;border-top:1px solid var(--border,#222)}.dropdown-menu .dropdown-item{line-height:21px;margin-right:5px;overflow:auto;display:block;padding:.25rem 1rem .25rem 1.5rem;clear:both;font-weight:400;text-align:inherit;white-space:normal;border:none;border-radius:0;background-color:transparent;box-shadow:none;width:100%;height:100%}.dropdown-menu .dropdown-item-icon{padding-left:.5rem}.dropdown-menu .dropdown-item-icon i{margin-right:.25rem}.dropdown-menu .dropdown-item:hover{background-color:#182230;background-color:var(--btn,#182230);box-shadow:none}.icon-ellipsis{cursor:pointer}.icon-ellipsis.icon-clicked,.icon-ellipsis:hover{color:#b9b9ba;color:var(--text,#b9b9ba)}\", \"\"]);\n\n// exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./post_status_form.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"ce7966a8\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".tribute-container ul{padding:0}.tribute-container ul li{display:flex;align-items:center}.tribute-container img{padding:3px;width:16px;height:16px;border-radius:10px;border-radius:var(--avatarAltRadius,10px)}.post-status-form .visibility-tray{display:flex;justify-content:space-between;flex-direction:row-reverse;padding-top:5px}.post-status-form .form-bottom{display:flex;padding:.5em;height:32px}.post-status-form .form-bottom button{width:10em}.post-status-form .form-bottom p{margin:.35em;padding:.35em;display:flex}.post-status-form .form-bottom-left{display:flex;flex:1}.post-status-form .text-format .only-format{color:hsla(240,1%,73%,.5);color:var(--faint,hsla(240,1%,73%,.5))}.post-status-form .poll-icon{font-size:26px;flex:1}.post-status-form .poll-icon .selected{color:#b9b9ba;color:var(--lightText,#b9b9ba)}.post-status-form .icon-chart-bar{cursor:pointer}.post-status-form .error{text-align:center}.post-status-form .media-upload-wrapper{flex:0 0 auto;max-width:100%;min-width:50px;margin-right:.2em;margin-bottom:.5em}.post-status-form .media-upload-wrapper .icon-cancel{display:inline-block;position:static;margin:0;padding-bottom:0;margin-left:10px;margin-left:var(--attachmentRadius,10px);background-color:#182230;background-color:var(--btn,#182230);border-bottom-left-radius:0;border-bottom-right-radius:0}.post-status-form .attachments{padding:0 .5em}.post-status-form .attachments .attachment{margin:0;position:relative;flex:0 0 auto;border:1px solid #222;border:1px solid var(--border,#222);text-align:center}.post-status-form .attachments .attachment audio{min-width:300px;flex:1 0 auto}.post-status-form .attachments .attachment a{display:block;text-align:left;line-height:1.2;padding:.5em}.post-status-form .attachments i{position:absolute;margin:10px;padding:5px;background:hsla(0,0%,90%,.6);border-radius:10px;border-radius:var(--attachmentRadius,10px);font-weight:700}.post-status-form form{display:flex;flex-direction:column;padding:.6em}.post-status-form .form-group{display:flex;flex-direction:column;padding:.25em .5em .5em;line-height:24px}.post-status-form .form-post-body,.post-status-form form textarea.form-cw{line-height:16px;resize:none;overflow:hidden;transition:min-height .2s .1s;min-height:1px}.post-status-form .form-post-body{height:16px;padding-bottom:1.75em;box-sizing:content-box}.post-status-form .form-post-body:focus{min-height:48px}.post-status-form .main-input{position:relative}.post-status-form .character-counter{position:absolute;bottom:0;right:0;padding:0;margin:0 .5em}.post-status-form .character-counter.error{color:red;color:var(--cRed,red)}.post-status-form .btn{cursor:pointer}.post-status-form .btn[disabled]{cursor:not-allowed}.post-status-form .icon-cancel{cursor:pointer;z-index:4}\", \"\"]);\n\n// exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./media_upload.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./media_upload.js\"\nimport __vue_script__ from \"!!babel-loader!./media_upload.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-412e3412\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./media_upload.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./media_upload.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"1c7320f0\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".media-upload{font-size:26px;min-width:50px}.icon-upload{cursor:pointer}\", \"\"]);\n\n// exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./scope_selector.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"770eecd8\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".scope-selector i{font-size:1.2em;cursor:pointer}.scope-selector i.selected{color:#b9b9ba;color:var(--lightText,#b9b9ba)}\", \"\"]);\n\n// exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./emoji-input.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"54a8ac0d\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".emoji-input{display:flex;flex-direction:column}.emoji-input .autocomplete-panel{position:absolute;z-index:9;margin-top:2px}.emoji-input .autocomplete-panel.hide{display:none}.emoji-input .autocomplete-panel-body{margin:0 .5em;border-radius:5px;border-radius:var(--tooltipRadius,5px);box-shadow:1px 2px 4px rgba(0,0,0,.5);box-shadow:var(--popupShadow);min-width:75%;background:#121a24;background:var(--bg,#121a24);color:#b9b9ba;color:var(--lightText,#b9b9ba)}.emoji-input .autocomplete-item{display:flex;cursor:pointer;padding:.2em .4em;border-bottom:1px solid rgba(0,0,0,.4);height:32px}.emoji-input .autocomplete-item .image{width:32px;height:32px;line-height:32px;text-align:center;font-size:32px;margin-right:4px}.emoji-input .autocomplete-item .image img{width:32px;height:32px;object-fit:contain}.emoji-input .autocomplete-item .label{display:flex;flex-direction:column;justify-content:center;margin:0 .1em 0 .2em}.emoji-input .autocomplete-item .label .displayText{line-height:1.5}.emoji-input .autocomplete-item .label .detailText{font-size:9px;line-height:9px}.emoji-input .autocomplete-item.highlighted{background-color:#182230;background-color:var(--lightBg,#182230)}.emoji-input input,.emoji-input textarea{flex:1 0 auto}\", \"\"]);\n\n// exports\n","import { reduce, find } from 'lodash'\n\nexport const replaceWord = (str, toReplace, replacement) => {\n return str.slice(0, toReplace.start) + replacement + str.slice(toReplace.end)\n}\n\nexport const wordAtPosition = (str, pos) => {\n const words = splitIntoWords(str)\n const wordsWithPosition = addPositionToWords(words)\n\n return find(wordsWithPosition, ({start, end}) => start <= pos && end > pos)\n}\n\nexport const addPositionToWords = (words) => {\n return reduce(words, (result, word) => {\n const data = {\n word,\n start: 0,\n end: word.length\n }\n\n if (result.length > 0) {\n const previous = result.pop()\n\n data.start += previous.end\n data.end += previous.end\n\n result.push(previous)\n }\n\n result.push(data)\n\n return result\n }, [])\n}\n\nexport const splitIntoWords = (str) => {\n // Split at word boundaries\n const regex = /\\b/\n const triggers = /[@#:]+$/\n\n let split = str.split(regex)\n\n // Add trailing @ and # to the following word.\n const words = reduce(split, (result, word) => {\n if (result.length > 0) {\n let previous = result.pop()\n const matches = previous.match(triggers)\n if (matches) {\n previous = previous.replace(triggers, '')\n word = matches[0] + word\n }\n result.push(previous)\n }\n result.push(word)\n\n return result\n }, [])\n\n return words\n}\n\nconst completion = {\n wordAtPosition,\n addPositionToWords,\n splitIntoWords,\n replaceWord\n}\n\nexport default completion\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./poll_form.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./poll_form.js\"\nimport __vue_script__ from \"!!babel-loader!./poll_form.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-ad3a99cc\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./poll_form.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./poll_form.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"60db0262\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".poll-form{display:flex;flex-direction:column;padding:0 .5em .5em}.poll-form .add-option{align-self:flex-start;padding-top:.25em;cursor:pointer}.poll-form .poll-option{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:.25em}.poll-form .input-container{width:100%}.poll-form .input-container input{padding-right:2.5em;width:100%}.poll-form .icon-container{width:2em;margin-left:-2em;z-index:1}.poll-form .poll-type-expiry{margin-top:.5em;display:flex;width:100%}.poll-form .poll-type{margin-right:.75em;flex:1 1 60%}.poll-form .poll-type .select{border:none;box-shadow:none;background-color:transparent}.poll-form .poll-expiry{display:flex}.poll-form .poll-expiry .expiry-amount{width:3em;text-align:right}.poll-form .poll-expiry .expiry-unit{border:none;box-shadow:none;background-color:transparent}\", \"\"]);\n\n// exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./user_card.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"0060b6a4\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".user-card{background-size:cover;overflow:hidden}.user-card .panel-heading{padding:.5em 0;text-align:center;box-shadow:none;background:transparent;flex-direction:column;align-items:stretch}.user-card .panel-body{word-wrap:break-word;background:linear-gradient(180deg,transparent,#121a24 80%);background:linear-gradient(180deg,transparent,var(--bg,#121a24) 80%)}.user-card p{margin-bottom:0}.user-card-bio{text-align:center}.user-card-bio img{object-fit:contain;vertical-align:middle;max-width:100%;max-height:400px}.user-card-bio img.emoji{width:32px;height:32px}.user-card-rounded-t{border-top-left-radius:10px;border-top-left-radius:var(--panelRadius,10px);border-top-right-radius:10px;border-top-right-radius:var(--panelRadius,10px)}.user-card-rounded{border-radius:10px;border-radius:var(--panelRadius,10px)}.user-card-bordered{border-color:#222;border:1px solid var(--border,#222)}.user-info{color:#b9b9ba;color:var(--lightText,#b9b9ba);padding:0 26px}.user-info .container{padding:16px 0 6px;display:flex;max-height:56px}.user-info .container .avatar{flex:1 0 100%;width:56px;height:56px;box-shadow:0 1px 8px rgba(0,0,0,.75);box-shadow:var(--avatarShadow);object-fit:cover}.user-info:hover .animated.avatar canvas{display:none}.user-info:hover .animated.avatar img{visibility:visible}.user-info .usersettings{color:#b9b9ba;color:var(--lightText,#b9b9ba);opacity:.8}.user-info .user-summary{display:block;margin-left:.6em;text-align:left;text-overflow:ellipsis;white-space:nowrap;flex:1 1 0;z-index:1}.user-info .user-summary img{width:26px;height:26px;vertical-align:middle;object-fit:contain}.user-info .user-summary .top-line{display:flex}.user-info .user-name{text-overflow:ellipsis;overflow:hidden;flex:1 1 auto;margin-right:1em;font-size:15px}.user-info .user-name img{object-fit:contain;height:16px;width:16px;vertical-align:middle}.user-info .bottom-line{display:flex;font-weight:light;font-size:15px}.user-info .bottom-line .user-screen-name{min-width:1px;flex:0 1 auto;text-overflow:ellipsis;overflow:hidden;color:#b9b9ba;color:var(--lightText,#b9b9ba)}.user-info .bottom-line .dailyAvg{min-width:1px;flex:0 0 auto;margin-left:1em;font-size:.7em;color:#b9b9ba;color:var(--text,#b9b9ba)}.user-info .bottom-line .staff{flex:none;text-transform:capitalize;color:#b9b9ba;color:var(--btnText,#b9b9ba);background-color:#182230;background-color:var(--btn,#182230)}.user-info .user-meta{margin-bottom:.15em;display:flex;align-items:baseline;font-size:14px;line-height:22px;flex-wrap:wrap}.user-info .user-meta .following{flex:1 0 auto;margin:0;margin-bottom:.25em;text-align:left}.user-info .user-meta .highlighter{flex:0 1 auto;display:flex;flex-wrap:wrap;margin-right:-.5em;align-self:start}.user-info .user-meta .highlighter .userHighlightCl{padding:2px 10px;flex:1 0 auto}.user-info .user-meta .highlighter .userHighlightSel,.user-info .user-meta .highlighter .userHighlightSel.select{padding-top:0;padding-bottom:0;flex:1 0 auto}.user-info .user-meta .highlighter .userHighlightSel.select i{line-height:22px}.user-info .user-meta .highlighter .userHighlightText{width:70px;flex:1 0 auto}.user-info .user-meta .highlighter .userHighlightCl,.user-info .user-meta .highlighter .userHighlightSel,.user-info .user-meta .highlighter .userHighlightSel.select,.user-info .user-meta .highlighter .userHighlightText{height:22px;vertical-align:top;margin-right:.5em;margin-bottom:.25em}.user-info .user-interactions{display:flex;flex-flow:row wrap;justify-content:space-between;margin-right:-.75em}.user-info .user-interactions div{flex:1 0 0;margin-right:.75em;margin-bottom:.6em;white-space:nowrap}.user-info .user-interactions .follow,.user-info .user-interactions .mute{max-width:220px;min-height:28px}.user-info .user-interactions button{width:100%;height:100%;margin:0}.user-info .user-interactions .remote-button{height:28px!important;width:92%}.user-info .user-interactions .pressed{border-bottom-color:hsla(0,0%,100%,.2);border-top-color:rgba(0,0,0,.2)}.user-counts{display:flex;line-height:16px;padding:.5em 1.5em 0;text-align:center;justify-content:space-between;color:#b9b9ba;color:var(--lightText,#b9b9ba);flex-wrap:wrap}.user-count{flex:1 0 auto;padding:.5em 0;margin:0 .5em}.user-count h5{font-size:1em;font-weight:bolder;margin:0 0 .25em}.user-count a{text-decoration:none}\", \"\"]);\n\n// exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./user_avatar.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"6b6f3617\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".avatar.still-image{width:48px;height:48px;box-shadow:var(--avatarStatusShadow);border-radius:4px;border-radius:var(--avatarRadius,4px)}.avatar.still-image img{width:100%;height:100%}.avatar.still-image.better-shadow{box-shadow:var(--avatarStatusShadowInset);filter:var(--avatarStatusShadowFilter)}.avatar.still-image.animated:before{display:none}.avatar.still-image.avatar-compact{width:32px;height:32px;border-radius:10px;border-radius:var(--avatarAltRadius,10px)}\", \"\"]);\n\n// exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./remote_follow.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"4852bbb4\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".remote-follow{max-width:220px}.remote-follow .remote-button{width:100%;min-height:28px}\", \"\"]);\n\n// exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./moderation_tools.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"2c0672fc\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".popper-wrapper{z-index:8}.popper-wrapper .popper__arrow{width:0;height:0;border-style:solid;position:absolute;margin:5px}.popper-wrapper[x-placement^=top]{margin-bottom:5px}.popper-wrapper[x-placement^=top] .popper__arrow{border-width:5px 5px 0;border-color:#121a24 transparent transparent;border-color:var(--bg,#121a24) transparent transparent;bottom:-5px;left:calc(50% - 5px);margin-top:0;margin-bottom:0}.popper-wrapper[x-placement^=bottom]{margin-top:5px}.popper-wrapper[x-placement^=bottom] .popper__arrow{border-width:0 5px 5px;border-color:transparent transparent #121a24;border-color:transparent transparent var(--bg,#121a24);top:-5px;left:calc(50% - 5px);margin-top:0;margin-bottom:0}.popper-wrapper[x-placement^=right]{margin-left:5px}.popper-wrapper[x-placement^=right] .popper__arrow{border-width:5px 5px 5px 0;border-color:transparent #121a24 transparent transparent;border-color:transparent var(--bg,#121a24) transparent transparent;left:-5px;top:calc(50% - 5px);margin-left:0;margin-right:0}.popper-wrapper[x-placement^=left]{margin-right:5px}.popper-wrapper[x-placement^=left] .popper__arrow{border-width:5px 0 5px 5px;border-color:transparent transparent transparent #121a24;border-color:transparent transparent transparent var(--bg,#121a24);right:-5px;top:calc(50% - 5px);margin-left:0;margin-right:0}.dropdown-menu{display:block;padding:.5rem 0;font-size:1rem;text-align:left;list-style:none;max-width:100vw;z-index:10;box-shadow:1px 1px 4px rgba(0,0,0,.6);box-shadow:var(--panelShadow);border:none;border-radius:4px;border-radius:var(--btnRadius,4px);background-color:#121a24;background-color:var(--bg,#121a24)}.dropdown-menu .dropdown-divider{height:0;margin:.5rem 0;overflow:hidden;border-top:1px solid #222;border-top:1px solid var(--border,#222)}.dropdown-menu .dropdown-item{line-height:21px;margin-right:5px;overflow:auto;display:block;padding:.25rem 1rem .25rem 1.5rem;clear:both;font-weight:400;text-align:inherit;white-space:normal;border:none;border-radius:0;background-color:transparent;box-shadow:none;width:100%;height:100%}.dropdown-menu .dropdown-item-icon{padding-left:.5rem}.dropdown-menu .dropdown-item-icon i{margin-right:.25rem}.dropdown-menu .dropdown-item:hover{background-color:#182230;background-color:var(--btn,#182230);box-shadow:none}.menu-checkbox{float:right;min-width:22px;max-width:22px;min-height:22px;max-height:22px;line-height:22px;text-align:center;border-radius:0;background-color:#182230;background-color:var(--input,#182230);box-shadow:inset 0 0 2px #000;box-shadow:var(--inputShadow)}.menu-checkbox.menu-checkbox-checked:after{content:\\\"\\\\2714\\\"}\", \"\"]);\n\n// exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./dialog_modal.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./dialog_modal.js\"\nimport __vue_script__ from \"!!babel-loader!./dialog_modal.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-3bdb886d\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./dialog_modal.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./dialog_modal.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"56d82e88\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".dark-overlay:before{bottom:0;content:\\\" \\\";left:0;right:0;background:rgba(27,31,35,.5);z-index:99}.dark-overlay:before,.dialog-modal.panel{display:block;cursor:default;position:fixed;top:0}.dialog-modal.panel{left:50%;max-height:80vh;max-width:90vw;margin:15vh auto;transform:translateX(-50%);z-index:999;background-color:#121a24;background-color:var(--bg,#121a24)}.dialog-modal.panel .dialog-modal-heading{padding:.5em;margin-right:auto;margin-bottom:0;white-space:nowrap;color:var(--panelText);background-color:#182230;background-color:var(--panel,#182230)}.dialog-modal.panel .dialog-modal-heading .title{margin-bottom:0;text-align:center}.dialog-modal.panel .dialog-modal-content{margin:0;padding:1rem;background-color:#151e2a;background-color:var(--lightBg,#151e2a);white-space:normal}.dialog-modal.panel .dialog-modal-footer{margin:0;padding:.5em;background-color:#151e2a;background-color:var(--lightBg,#151e2a);border-top:1px solid #121a24;border-top:1px solid var(--bg,#121a24);display:flex;justify-content:flex-end}.dialog-modal.panel .dialog-modal-footer button{width:auto;margin-left:.5rem}\", \"\"]);\n\n// exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./gallery.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./gallery.js\"\nimport __vue_script__ from \"!!babel-loader!./gallery.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-90e08142\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./gallery.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./gallery.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"6c9d5cbc\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".gallery-row{height:200px;width:100%;display:flex;flex-direction:row;flex-wrap:nowrap;align-content:stretch;flex-grow:1;margin-top:.5em}.gallery-row .attachment.image{margin:0 .5em 0 0;flex-grow:1;height:100%;box-sizing:border-box;min-width:2em}.gallery-row .attachment.image:last-child{margin:0}.gallery-row .image-attachment{width:100%;height:100%}.gallery-row .video-container{height:100%}.gallery-row.contain-fit img,.gallery-row.contain-fit video{object-fit:contain}.gallery-row.cover-fit img,.gallery-row.cover-fit video{object-fit:cover}\", \"\"]);\n\n// exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./link-preview.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./link-preview.js\"\nimport __vue_script__ from \"!!babel-loader!./link-preview.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-13637f5a\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./link-preview.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./link-preview.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"c13d6bee\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".link-preview-card{display:flex;flex-direction:row;cursor:pointer;overflow:hidden;margin-top:.5em;color:#b9b9ba;color:var(--text,#b9b9ba);border-radius:10px;border-radius:var(--attachmentRadius,10px);border-color:#222;border:1px solid var(--border,#222)}.link-preview-card .card-image{flex-shrink:0;width:120px;max-width:25%}.link-preview-card .card-image img{width:100%;height:100%;object-fit:cover;border-radius:10px;border-radius:var(--attachmentRadius,10px)}.link-preview-card .small-image{width:80px}.link-preview-card .card-content{max-height:100%;margin:.5em;display:flex;flex-direction:column}.link-preview-card .card-host{font-size:12px}.link-preview-card .card-description{margin:.5em 0 0;overflow:hidden;text-overflow:ellipsis;word-break:break-word;line-height:1.2em;max-height:calc(1.2em * 3 - 1px)}\", \"\"]);\n\n// exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./avatar_list.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./avatar_list.js\"\nimport __vue_script__ from \"!!babel-loader!./avatar_list.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-14c2b53d\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./avatar_list.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./avatar_list.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"7096a06e\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".avatars{display:flex;margin:0;padding:0;flex-wrap:wrap;height:24px}.avatars .avatars-item{margin:0 0 5px 5px}.avatars .avatars-item:first-child{padding-left:5px}.avatars .avatars-item .avatar-small{border-radius:10px;border-radius:var(--avatarAltRadius,10px);height:24px;width:24px}\", \"\"]);\n\n// exports\n","export const mentionMatchesUrl = (attention, url) => {\n if (url === attention.statusnet_profile_url) {\n return true\n }\n const [namepart, instancepart] = attention.screen_name.split('@')\n const matchstring = new RegExp('://' + instancepart + '/.*' + namepart + '$', 'g')\n\n return !!url.match(matchstring)\n}\n\n/**\n * Extract tag name from pleroma or mastodon url.\n * i.e https://bikeshed.party/tag/photo or https://quey.org/tags/sky\n * @param {string} url\n */\nexport const extractTagFromUrl = (url) => {\n const regex = /tag[s]*\\/(\\w+)$/g\n const result = regex.exec(url)\n if (!result) {\n return false\n }\n return result[1]\n}\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./conversation.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"93498d0a\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".timeline .panel-disabled .status-el{border-left:none;border-bottom-width:1px;border-bottom-style:solid;border-color:var(--border,#222);border-radius:0}\", \"\"]);\n\n// exports\n","/* script */\nexport * from \"!!babel-loader!./public_and_external_timeline.js\"\nimport __vue_script__ from \"!!babel-loader!./public_and_external_timeline.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-177cb5ec\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./public_and_external_timeline.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","/* script */\nexport * from \"!!babel-loader!./friends_timeline.js\"\nimport __vue_script__ from \"!!babel-loader!./friends_timeline.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-6f367f8e\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./friends_timeline.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","/* script */\nexport * from \"!!babel-loader!./tag_timeline.js\"\nimport __vue_script__ from \"!!babel-loader!./tag_timeline.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-f05777fe\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./tag_timeline.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","/* script */\nexport * from \"!!babel-loader!./conversation-page.js\"\nimport __vue_script__ from \"!!babel-loader!./conversation-page.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-3df9f4c3\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./conversation-page.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","/* script */\nexport * from \"!!babel-loader!./interactions.js\"\nimport __vue_script__ from \"!!babel-loader!./interactions.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-e1d0b7b0\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./interactions.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!./notifications.scss\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"87e1cf2e\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".notifications:not(.minimal){padding-bottom:15em}.notifications .loadmore-error{color:#b9b9ba;color:var(--text,#b9b9ba)}.notifications .notification{position:relative}.notifications .notification .notification-overlay{position:absolute;top:0;right:0;left:0;bottom:0;pointer-events:none}.notifications .notification.unseen .notification-overlay{background-image:linear-gradient(135deg,var(--badgeNotification,red) 4px,transparent 10px)}.notification{box-sizing:border-box;display:flex;border-bottom:1px solid;border-color:#222;border-color:var(--border,#222)}.notification:hover .animated.avatar canvas{display:none}.notification:hover .animated.avatar img{visibility:visible}.notification .non-mention{display:flex;flex:1;flex-wrap:nowrap;padding:.6em;min-width:0}.notification .non-mention .avatar-container{width:32px;height:32px}.notification .non-mention .status-el{padding:0}.notification .non-mention .status-el .status{padding:.25em 0;color:hsla(240,1%,73%,.5);color:var(--faint,hsla(240,1%,73%,.5))}.notification .non-mention .status-el .status a{color:var(--faintLink)}.notification .non-mention .status-el .media-body{margin:0}.notification .follow-text{padding:.5em 0}.notification .status-el{flex:1}.notification time{white-space:nowrap}.notification .notification-right{flex:1;padding-left:.8em;min-width:0}.notification .notification-details{min-width:0;word-wrap:break-word;line-height:18px;position:relative;overflow:hidden;width:100%;flex:1 1 0;display:flex;flex-wrap:nowrap;justify-content:space-between}.notification .notification-details .name-and-action{flex:1;overflow:hidden;text-overflow:ellipsis}.notification .notification-details .username{font-weight:bolder;max-width:100%;text-overflow:ellipsis;white-space:nowrap}.notification .notification-details .username img{width:14px;height:14px;vertical-align:middle;object-fit:contain}.notification .notification-details .timeago{margin-right:.2em}.notification .notification-details .icon-retweet.lit{color:#0fa00f;color:var(--cGreen,#0fa00f)}.notification .notification-details .icon-reply.lit,.notification .notification-details .icon-user-plus.lit{color:#0095ff;color:var(--cBlue,#0095ff)}.notification .notification-details .icon-star.lit{color:orange;color:var(--cOrange,orange)}.notification .notification-details .status-content{margin:0;max-height:300px}.notification .notification-details h1{word-break:break-all;margin:0 0 .3em;padding:0;font-size:1em;line-height:20px}.notification .notification-details h1 small{font-weight:lighter}.notification .notification-details p{margin:0;margin-top:0;margin-bottom:.3em}\", \"\"]);\n\n// exports\n","/* script */\nexport * from \"!!babel-loader!./notification.js\"\nimport __vue_script__ from \"!!babel-loader!./notification.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-5c1aabae\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./notification.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","/* script */\nexport * from \"!!babel-loader!./dm_timeline.js\"\nimport __vue_script__ from \"!!babel-loader!./dm_timeline.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-8144de96\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./dm_timeline.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./user_profile.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./user_profile.js\"\nimport __vue_script__ from \"!!babel-loader!./user_profile.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-3ad3bbbf\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./user_profile.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./user_profile.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"7563b46e\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".user-profile{flex:2;flex-basis:500px}.user-profile .userlist-placeholder{display:flex;justify-content:center;align-items:middle;padding:2em}.user-profile .timeline-heading{display:flex;justify-content:center}.user-profile .timeline-heading .alert,.user-profile .timeline-heading .loadmore-button{flex:1}.user-profile .timeline-heading .loadmore-button{height:28px;margin:10px .6em}.user-profile .timeline-heading .loadmore-text,.user-profile .timeline-heading .title{display:none}.user-profile-placeholder .panel-body{display:flex;justify-content:center;align-items:middle;padding:7em}\", \"\"]);\n\n// exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./follow_card.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"ae955a70\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".follow-card-content-container{flex-shrink:0;display:flex;flex-direction:row;justify-content:space-between;flex-wrap:wrap;line-height:1.5em}.follow-card-follow-button{margin-top:.5em;margin-left:auto;width:10em}\", \"\"]);\n\n// exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./basic_user_card.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"119ab786\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".basic-user-card{display:flex;flex:1 0;margin:0;padding:.6em 1em}.basic-user-card-collapsed-content{margin-left:.7em;text-align:left;flex:1;min-width:0}.basic-user-card-user-name img{object-fit:contain;height:16px;width:16px;vertical-align:middle}.basic-user-card-screen-name,.basic-user-card-user-name-value{display:inline-block;max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.basic-user-card-expanded-content{flex:1;margin-left:.7em}\", \"\"]);\n\n// exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./list.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"33745640\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".list-item:not(:last-child){border-bottom:1px solid;border-bottom-color:#222;border-bottom-color:var(--border,#222)}.list-empty-content{text-align:center;padding:10px}\", \"\"]);\n\n// exports\n","import Vue from 'vue'\nimport isEmpty from 'lodash/isEmpty'\nimport { getComponentProps } from '../../services/component_utils/component_utils'\nimport './with_load_more.scss'\n\nconst withLoadMore = ({\n fetch, // function to fetch entries and return a promise\n select, // function to select data from store\n destroy, // function called at \"destroyed\" lifecycle\n childPropName = 'entries', // name of the prop to be passed into the wrapped component\n additionalPropNames = [] // additional prop name list of the wrapper component\n}) => (WrappedComponent) => {\n const originalProps = Object.keys(getComponentProps(WrappedComponent))\n const props = originalProps.filter(v => v !== childPropName).concat(additionalPropNames)\n\n return Vue.component('withLoadMore', {\n render (createElement) {\n const props = {\n props: {\n ...this.$props,\n [childPropName]: this.entries\n },\n on: this.$listeners,\n scopedSlots: this.$scopedSlots\n }\n const children = Object.entries(this.$slots).map(([key, value]) => createElement('template', { slot: key }, value))\n return (\n <div class=\"with-load-more\">\n <WrappedComponent {...props}>\n {children}\n </WrappedComponent>\n <div class=\"with-load-more-footer\">\n {this.error && <a onClick={this.fetchEntries} class=\"alert error\">{this.$t('general.generic_error')}</a>}\n {!this.error && this.loading && <i class=\"icon-spin3 animate-spin\"/>}\n {!this.error && !this.loading && !this.bottomedOut && <a onClick={this.fetchEntries}>{this.$t('general.more')}</a>}\n </div>\n </div>\n )\n },\n props,\n data () {\n return {\n loading: false,\n bottomedOut: false,\n error: false\n }\n },\n computed: {\n entries () {\n return select(this.$props, this.$store) || []\n }\n },\n created () {\n window.addEventListener('scroll', this.scrollLoad)\n if (this.entries.length === 0) {\n this.fetchEntries()\n }\n },\n destroyed () {\n window.removeEventListener('scroll', this.scrollLoad)\n destroy && destroy(this.$props, this.$store)\n },\n methods: {\n fetchEntries () {\n if (!this.loading) {\n this.loading = true\n this.error = false\n fetch(this.$props, this.$store)\n .then((newEntries) => {\n this.loading = false\n this.bottomedOut = isEmpty(newEntries)\n })\n .catch(() => {\n this.loading = false\n this.error = true\n })\n }\n },\n scrollLoad (e) {\n const bodyBRect = document.body.getBoundingClientRect()\n const height = Math.max(bodyBRect.height, -(bodyBRect.y))\n if (this.loading === false &&\n this.bottomedOut === false &&\n this.$el.offsetHeight > 0 &&\n (window.innerHeight + window.pageYOffset) >= (height - 750)\n ) {\n this.fetchEntries()\n }\n }\n }\n })\n}\n\nexport default withLoadMore\n","/* script */\nexport * from \"!!babel-loader!./settings.js\"\nimport __vue_script__ from \"!!babel-loader!./settings.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-2aa64dd8\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./settings.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!./style_switcher.scss\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"16da2560\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".style-switcher .preset-switcher{margin-right:1em}.style-switcher .style-control{display:flex;align-items:baseline;margin-bottom:5px}.style-switcher .style-control .label{flex:1}.style-switcher .style-control.disabled input:not(.exclude-disabled),.style-switcher .style-control.disabled select:not(.exclude-disabled){opacity:.5}.style-switcher .style-control input,.style-switcher .style-control select{min-width:3em;margin:0;flex:0}.style-switcher .style-control input[type=color],.style-switcher .style-control select[type=color]{padding:1px;cursor:pointer;height:29px;min-width:2em;border:none;align-self:stretch}.style-switcher .style-control input[type=number],.style-switcher .style-control select[type=number]{min-width:5em}.style-switcher .style-control input[type=range],.style-switcher .style-control select[type=range]{flex:1;min-width:3em}.style-switcher .style-control input[type=checkbox]+label,.style-switcher .style-control select[type=checkbox]+label{margin:6px 0}.style-switcher .style-control input:not([type=number]):not([type=text]),.style-switcher .style-control select:not([type=number]):not([type=text]){align-self:flex-start}.style-switcher .tab-switcher{margin:0 -1em}.style-switcher .reset-container{flex-wrap:wrap}.style-switcher .apply-container,.style-switcher .color-container,.style-switcher .fonts-container,.style-switcher .radius-container,.style-switcher .reset-container{display:flex}.style-switcher .fonts-container,.style-switcher .radius-container{flex-direction:column}.style-switcher .color-container{flex-wrap:wrap;justify-content:space-between}.style-switcher .color-container>h4{width:99%}.style-switcher .color-container,.style-switcher .fonts-container,.style-switcher .presets-container,.style-switcher .radius-container,.style-switcher .shadow-container{margin:1em 1em 0}.style-switcher .tab-header{display:flex;justify-content:space-between;align-items:baseline;width:100%;min-height:30px;margin-bottom:1em}.style-switcher .tab-header .btn{min-width:1px;flex:0 auto;padding:0 1em}.style-switcher .tab-header p{flex:1;margin:0;margin-right:.5em}.style-switcher .shadow-selector .override{flex:1;margin-left:.5em}.style-switcher .shadow-selector .select-container{margin-top:-4px;margin-bottom:-3px}.style-switcher .save-load,.style-switcher .save-load-options{display:flex;justify-content:center;align-items:baseline;flex-wrap:wrap}.style-switcher .save-load-options .import-export,.style-switcher .save-load-options .presets,.style-switcher .save-load .import-export,.style-switcher .save-load .presets{margin-bottom:.5em}.style-switcher .save-load-options .import-export,.style-switcher .save-load .import-export{display:flex}.style-switcher .save-load-options .override,.style-switcher .save-load .override{margin-left:.5em}.style-switcher .save-load-options{flex-wrap:wrap;margin-top:.5em;justify-content:center}.style-switcher .save-load-options .keep-option{margin:0 .5em .5em;min-width:25%}.style-switcher .preview-container{border-top:1px dashed;border-bottom:1px dashed;border-color:#222;border-color:var(--border,#222);margin:1em -1em 0;padding:1em;background:var(--body-background-image);background-size:cover;background-position:50% 50%}.style-switcher .preview-container .dummy .post{font-family:var(--postFont);display:flex}.style-switcher .preview-container .dummy .post .content{flex:1}.style-switcher .preview-container .dummy .post .content h4{margin-bottom:.25em}.style-switcher .preview-container .dummy .post .content .icons{margin-top:.5em;display:flex}.style-switcher .preview-container .dummy .post .content .icons i{margin-right:1em}.style-switcher .preview-container .dummy .after-post{margin-top:1em;display:flex;align-items:center}.style-switcher .preview-container .dummy .avatar,.style-switcher .preview-container .dummy .avatar-alt{background:linear-gradient(135deg,#b8e1fc,#a9d2f3 10%,#90bae4 25%,#90bcea 37%,#90bff0 50%,#6ba8e5 51%,#a2daf5 83%,#bdf3fd);color:#000;font-family:sans-serif;text-align:center;margin-right:1em}.style-switcher .preview-container .dummy .avatar-alt{flex:0 auto;margin-left:28px;font-size:12px;min-width:20px;min-height:20px;line-height:20px;border-radius:10px;border-radius:var(--avatarAltRadius,10px)}.style-switcher .preview-container .dummy .avatar{flex:0 auto;width:48px;height:48px;font-size:14px;line-height:48px}.style-switcher .preview-container .dummy .actions{display:flex;align-items:baseline}.style-switcher .preview-container .dummy .actions .checkbox{display:inline-flex;align-items:baseline;margin-right:1em;flex:1}.style-switcher .preview-container .dummy .separator{margin:1em;border-bottom:1px solid;border-color:#222;border-color:var(--border,#222)}.style-switcher .preview-container .dummy .panel-heading .alert,.style-switcher .preview-container .dummy .panel-heading .badge,.style-switcher .preview-container .dummy .panel-heading .btn,.style-switcher .preview-container .dummy .panel-heading .faint{margin-left:1em;white-space:nowrap}.style-switcher .preview-container .dummy .panel-heading .faint{text-overflow:ellipsis;min-width:2em;overflow-x:hidden}.style-switcher .preview-container .dummy .panel-heading .flex-spacer{flex:1}.style-switcher .preview-container .dummy .btn{margin-left:0;padding:0 1em;min-width:3em;min-height:30px}.style-switcher .apply-container{justify-content:center}.style-switcher .color-item,.style-switcher .radius-item{min-width:20em;margin:5px 6px 0 0;display:flex;flex-direction:column;flex:1 1 0}.style-switcher .color-item.wide,.style-switcher .radius-item.wide{min-width:60%}.style-switcher .color-item:not(.wide):nth-child(odd),.style-switcher .radius-item:not(.wide):nth-child(odd){margin-right:7px}.style-switcher .color-item .color,.style-switcher .color-item .opacity,.style-switcher .radius-item .color,.style-switcher .radius-item .opacity{display:flex;align-items:baseline}.style-switcher .radius-item{flex-basis:auto}.style-switcher .theme-color-cl,.style-switcher .theme-radius-rn{border:0;box-shadow:none;background:transparent;color:var(--faint,hsla(240,1%,73%,.5));align-self:stretch}.style-switcher .theme-color-cl,.style-switcher .theme-color-in,.style-switcher .theme-radius-in{margin-left:4px}.style-switcher .theme-radius-in{min-width:1em;max-width:7em;flex:1}.style-switcher .theme-radius-lb{max-width:50em}.style-switcher .theme-preview-content{padding:20px}.style-switcher .btn{margin-left:.25em;margin-right:.25em}\", \"\"]);\n\n// exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./color_input.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"6015ac50\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".color-control input.text-input{max-width:7em;flex:1}\", \"\"]);\n\n// exports\n","/* script */\nexport * from \"!!babel-loader!../../../node_modules/vue-loader/lib/selector?type=script&index=0!./range_input.vue\"\nimport __vue_script__ from \"!!babel-loader!../../../node_modules/vue-loader/lib/selector?type=script&index=0!./range_input.vue\"\n/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-75e9df52\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./range_input.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./shadow_control.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./shadow_control.js\"\nimport __vue_script__ from \"!!babel-loader!./shadow_control.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-2a11c3eb\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./shadow_control.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./shadow_control.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"d219da80\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".shadow-control{display:flex;flex-wrap:wrap;justify-content:center;margin-bottom:1em}.shadow-control .shadow-preview-container,.shadow-control .shadow-tweak{margin:5px 6px 0 0}.shadow-control .shadow-preview-container{flex:0;display:flex;flex-wrap:wrap}.shadow-control .shadow-preview-container input[type=number]{width:5em;min-width:2em}.shadow-control .shadow-preview-container .x-shift-control,.shadow-control .shadow-preview-container .y-shift-control{display:flex;flex:0}.shadow-control .shadow-preview-container .x-shift-control[disabled=disabled] *,.shadow-control .shadow-preview-container .y-shift-control[disabled=disabled] *{opacity:.5}.shadow-control .shadow-preview-container .x-shift-control{align-items:flex-start}.shadow-control .shadow-preview-container .x-shift-control .wrap,.shadow-control .shadow-preview-container input[type=range]{margin:0;width:15em;height:2em}.shadow-control .shadow-preview-container .y-shift-control{flex-direction:column;align-items:flex-end}.shadow-control .shadow-preview-container .y-shift-control .wrap{width:2em;height:15em}.shadow-control .shadow-preview-container .y-shift-control input[type=range]{transform-origin:1em 1em;transform:rotate(90deg)}.shadow-control .shadow-preview-container .preview-window{flex:1;background-color:#999;display:flex;align-items:center;justify-content:center;background-image:linear-gradient(45deg,#666 25%,transparent 0),linear-gradient(-45deg,#666 25%,transparent 0),linear-gradient(45deg,transparent 75%,#666 0),linear-gradient(-45deg,transparent 75%,#666 0);background-size:20px 20px;background-position:0 0,0 10px,10px -10px,-10px 0;border-radius:4px;border-radius:var(--inputRadius,4px)}.shadow-control .shadow-preview-container .preview-window .preview-block{width:33%;height:33%;background-color:#121a24;background-color:var(--bg,#121a24);border-radius:10px;border-radius:var(--panelRadius,10px)}.shadow-control .shadow-tweak{flex:1;min-width:280px}.shadow-control .shadow-tweak .id-control{align-items:stretch}.shadow-control .shadow-tweak .id-control .btn,.shadow-control .shadow-tweak .id-control .select{min-width:1px;margin-right:5px}.shadow-control .shadow-tweak .id-control .btn{padding:0 .4em;margin:0 .1em}.shadow-control .shadow-tweak .id-control .select{flex:1}.shadow-control .shadow-tweak .id-control .select select{align-self:auto}\", \"\"]);\n\n// exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./font_control.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./font_control.js\"\nimport __vue_script__ from \"!!babel-loader!./font_control.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-7c447fa9\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./font_control.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./font_control.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"d9c0acde\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".font-control input.custom-font{min-width:10em}.font-control.custom .select{border-top-right-radius:0;border-bottom-right-radius:0}.font-control.custom .custom-font{border-top-left-radius:0;border-bottom-left-radius:0}\", \"\"]);\n\n// exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./contrast_ratio.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!../../../node_modules/vue-loader/lib/selector?type=script&index=0!./contrast_ratio.vue\"\nimport __vue_script__ from \"!!babel-loader!../../../node_modules/vue-loader/lib/selector?type=script&index=0!./contrast_ratio.vue\"\n/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-004f07f0\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./contrast_ratio.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./contrast_ratio.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"b94bc120\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".contrast-ratio{display:flex;justify-content:flex-end;margin-top:-4px;margin-bottom:5px}.contrast-ratio .label{margin-right:1em}.contrast-ratio .rating{display:inline-block;text-align:center}\", \"\"]);\n\n// exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./export_import.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!../../../node_modules/vue-loader/lib/selector?type=script&index=0!./export_import.vue\"\nimport __vue_script__ from \"!!babel-loader!../../../node_modules/vue-loader/lib/selector?type=script&index=0!./export_import.vue\"\n/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-403e3ea7\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./export_import.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./export_import.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"66a4eaba\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".import-export-container{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:center}\", \"\"]);\n\n// exports\n","/* script */\nexport * from \"!!babel-loader!../../../node_modules/vue-loader/lib/selector?type=script&index=0!./interface_language_switcher.vue\"\nimport __vue_script__ from \"!!babel-loader!../../../node_modules/vue-loader/lib/selector?type=script&index=0!./interface_language_switcher.vue\"\n/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-7f711d2a\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./interface_language_switcher.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","\nexport const extractCommit = versionString => {\n const regex = /-g(\\w+)$/i\n const matches = versionString.match(regex)\n return matches ? matches[1] : ''\n}\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./registration.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./registration.js\"\nimport __vue_script__ from \"!!babel-loader!./registration.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-448d7218\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./registration.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./registration.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"16815f76\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".registration-form{display:flex;flex-direction:column;margin:.6em}.registration-form .container{display:flex;flex-direction:row}.registration-form .terms-of-service{flex:0 1 50%;margin:.8em}.registration-form .text-fields{margin-top:.6em;flex:1 0;display:flex;flex-direction:column}.registration-form textarea{min-height:100px}.registration-form .form-group{display:flex;flex-direction:column;padding:.3em 0;line-height:24px;margin-bottom:1em}.registration-form .form-group--error{animation-name:shakeError;animation-duration:.6s;animation-timing-function:ease-in-out}.registration-form .form-group--error .form--label{color:#f04124;color:var(--cRed,#f04124)}.registration-form .form-error{margin-top:-.7em;text-align:left}.registration-form .form-error span{font-size:12px}.registration-form .form-error ul{list-style:none;padding:0 0 0 5px;margin-top:0}.registration-form .form-error ul li:before{content:\\\"\\\\2022 \\\"}.registration-form form textarea{line-height:16px;resize:vertical}.registration-form .captcha{max-width:350px;margin-bottom:.4em}.registration-form .btn{margin-top:.6em;height:28px}.registration-form .error{text-align:center}@media (max-width:800px){.registration-form .container{flex-direction:column-reverse}}\", \"\"]);\n\n// exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./user_settings.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./user_settings.js\"\nimport __vue_script__ from \"!!babel-loader!./user_settings.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-134d680a\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./user_settings.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./user_settings.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"298db8e1\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".profile-edit .bio{margin:0}.profile-edit .visibility-tray{padding-top:5px}.profile-edit input[type=file]{padding:5px;height:auto}.profile-edit .banner{max-width:100%}.profile-edit .uploading{font-size:1.5em;margin:.25em}.profile-edit .name-changer{width:100%}.profile-edit .bg{max-width:100%}.profile-edit .current-avatar{display:block;width:150px;height:150px;border-radius:4px;border-radius:var(--avatarRadius,4px)}.profile-edit .oauth-tokens{width:100%}.profile-edit .oauth-tokens th{text-align:left}.profile-edit .oauth-tokens .actions{text-align:right}.profile-edit-usersearch-wrapper{padding:1em}.profile-edit-bulk-actions{text-align:right;padding:0 1em;min-height:28px}.profile-edit-bulk-actions button{width:10em}\", \"\"]);\n\n// exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./image_cropper.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./image_cropper.js\"\nimport __vue_script__ from \"!!babel-loader!./image_cropper.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-351f8dc1\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./image_cropper.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./image_cropper.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"0dfd0b33\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".image-cropper-img-input{display:none}.image-cropper-image-container{position:relative}.image-cropper-image-container img{display:block;max-width:100%}.image-cropper-buttons-wrapper{margin-top:10px}.image-cropper-buttons-wrapper button{margin-top:5px}\", \"\"]);\n\n// exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./block_card.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./block_card.js\"\nimport __vue_script__ from \"!!babel-loader!./block_card.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-14c8ee24\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./block_card.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./block_card.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"211aa67c\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".block-card-content-container{margin-top:.5em;text-align:right}.block-card-content-container button{width:10em}\", \"\"]);\n\n// exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./mute_card.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./mute_card.js\"\nimport __vue_script__ from \"!!babel-loader!./mute_card.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-b29ff556\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./mute_card.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./mute_card.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"7ea980e0\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".mute-card-content-container{margin-top:.5em;text-align:right}.mute-card-content-container button{width:10em}\", \"\"]);\n\n// exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./selectable_list.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./selectable_list.js\"\nimport __vue_script__ from \"!!babel-loader!./selectable_list.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-830849a2\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./selectable_list.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./selectable_list.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"3724291e\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".selectable-list-item-inner{display:flex;align-items:center}.selectable-list-item-inner>*{min-width:0}.selectable-list-item-selected-inner{background-color:#151e2a;background-color:var(--lightBg,#151e2a)}.selectable-list-header{display:flex;align-items:center;padding:.6em 0;border-bottom:2px solid;border-bottom-color:#222;border-bottom-color:var(--border,#222)}.selectable-list-header-actions{flex:1}.selectable-list-checkbox-wrapper{padding:0 10px;flex:none}\", \"\"]);\n\n// exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./checkbox.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"002629bb\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".checkbox{position:relative;display:inline-block;padding-left:1.2em;min-height:1.2em}.checkbox-indicator:before{position:absolute;left:0;top:0;display:block;content:\\\"\\\\2714\\\";transition:color .2s;width:1.1em;height:1.1em;border-radius:2px;border-radius:var(--checkboxRadius,2px);box-shadow:inset 0 0 2px #000;box-shadow:var(--inputShadow);background-color:#182230;background-color:var(--input,#182230);vertical-align:top;text-align:center;line-height:1.1em;font-size:1.1em;color:transparent;overflow:hidden;box-sizing:border-box}.checkbox input[type=checkbox]{display:none}.checkbox input[type=checkbox]:checked+.checkbox-indicator:before{color:#b9b9ba;color:var(--text,#b9b9ba)}.checkbox input[type=checkbox]:indeterminate+.checkbox-indicator:before{content:\\\"\\\\2013\\\";color:#b9b9ba;color:var(--text,#b9b9ba)}.checkbox input[type=checkbox]:disabled+.checkbox-indicator:before{opacity:.5}.checkbox>span{margin-left:.5em}\", \"\"]);\n\n// exports\n","/* script */\nexport * from \"!!babel-loader!../../../node_modules/vue-loader/lib/selector?type=script&index=0!./progress_button.vue\"\nimport __vue_script__ from \"!!babel-loader!../../../node_modules/vue-loader/lib/selector?type=script&index=0!./progress_button.vue\"\n/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-0eed4b16\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./progress_button.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./autosuggest.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./autosuggest.js\"\nimport __vue_script__ from \"!!babel-loader!./autosuggest.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-28abcb08\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./autosuggest.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./autosuggest.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"3a9ec1bf\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".autosuggest{position:relative}.autosuggest-input{display:block;width:100%}.autosuggest-results{position:absolute;left:0;top:100%;right:0;max-height:400px;background-color:#151e2a;background-color:var(--lightBg,#151e2a);border-color:#222;border:1px solid var(--border,#222);border-radius:4px;border-radius:var(--inputRadius,4px);border-top-left-radius:0;border-top-right-radius:0;box-shadow:1px 1px 4px rgba(0,0,0,.6);box-shadow:var(--panelShadow);overflow-y:auto;z-index:1}\", \"\"]);\n\n// exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./importer.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./importer.js\"\nimport __vue_script__ from \"!!babel-loader!./importer.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-18fdba14\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./importer.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./importer.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"5bed876c\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".importer-uploading{font-size:1.5em;margin:.25em}\", \"\"]);\n\n// exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./exporter.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./exporter.js\"\nimport __vue_script__ from \"!!babel-loader!./exporter.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-35653648\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./exporter.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./exporter.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"432fc7c6\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".exporter-processing{font-size:1.5em;margin:.25em}\", \"\"]);\n\n// exports\n","import Vue from 'vue'\nimport isEmpty from 'lodash/isEmpty'\nimport { getComponentProps } from '../../services/component_utils/component_utils'\nimport './with_subscription.scss'\n\nconst withSubscription = ({\n fetch, // function to fetch entries and return a promise\n select, // function to select data from store\n childPropName = 'content', // name of the prop to be passed into the wrapped component\n additionalPropNames = [] // additional prop name list of the wrapper component\n}) => (WrappedComponent) => {\n const originalProps = Object.keys(getComponentProps(WrappedComponent))\n const props = originalProps.filter(v => v !== childPropName).concat(additionalPropNames)\n\n return Vue.component('withSubscription', {\n props: [\n ...props,\n 'refresh' // boolean saying to force-fetch data whenever created\n ],\n render (createElement) {\n if (!this.error && !this.loading) {\n const props = {\n props: {\n ...this.$props,\n [childPropName]: this.fetchedData\n },\n on: this.$listeners,\n scopedSlots: this.$scopedSlots\n }\n const children = Object.entries(this.$slots).map(([key, value]) => createElement('template', { slot: key }, value))\n return (\n <div class=\"with-subscription\">\n <WrappedComponent {...props}>\n {children}\n </WrappedComponent>\n </div>\n )\n } else {\n return (\n <div class=\"with-subscription-loading\">\n {this.error\n ? <a onClick={this.fetchData} class=\"alert error\">{this.$t('general.generic_error')}</a>\n : <i class=\"icon-spin3 animate-spin\"/>\n }\n </div>\n )\n }\n },\n data () {\n return {\n loading: false,\n error: false\n }\n },\n computed: {\n fetchedData () {\n return select(this.$props, this.$store)\n }\n },\n created () {\n if (this.refresh || isEmpty(this.fetchedData)) {\n this.fetchData()\n }\n },\n methods: {\n fetchData () {\n if (!this.loading) {\n this.loading = true\n this.error = false\n fetch(this.$props, this.$store)\n .then(() => {\n this.loading = false\n })\n .catch(() => {\n this.error = true\n this.loading = false\n })\n }\n }\n }\n })\n}\n\nexport default withSubscription\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./mfa.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./mfa.js\"\nimport __vue_script__ from \"!!babel-loader!./mfa.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-395e4582\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./mfa.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./mfa.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"9a989dfe\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".warning{color:orange;color:var(--cOrange,orange)}.mfa-settings .method-item,.mfa-settings .mfa-heading{overflow:hidden;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline}.mfa-settings .setup-otp{display:flex;justify-content:center;flex-wrap:wrap}.mfa-settings .setup-otp .qr-code{flex:1;padding-right:10px}.mfa-settings .setup-otp .verify{flex:1}.mfa-settings .setup-otp .error{margin:4px 0 0}.mfa-settings .setup-otp .confirm-otp-actions button{width:15em;margin-top:5px}\", \"\"]);\n\n// exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./mfa_backup_codes.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./mfa_backup_codes.js\"\nimport __vue_script__ from \"!!babel-loader!./mfa_backup_codes.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-2bcb205a\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./mfa_backup_codes.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./mfa_backup_codes.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"12659079\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".warning{color:orange;color:var(--cOrange,orange)}.backup-codes{font-family:var(--postCodeFont,monospace)}\", \"\"]);\n\n// exports\n","/* script */\nexport * from \"!!babel-loader!./mfa_totp.js\"\nimport __vue_script__ from \"!!babel-loader!./mfa_totp.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-26074bbe\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./mfa_totp.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","/* script */\nexport * from \"!!babel-loader!./follow_requests.js\"\nimport __vue_script__ from \"!!babel-loader!./follow_requests.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-0175b636\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./follow_requests.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./follow_request_card.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./follow_request_card.js\"\nimport __vue_script__ from \"!!babel-loader!./follow_request_card.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-310b71c4\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./follow_request_card.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./follow_request_card.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"ad510f10\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".follow-request-card-content-container{display:flex;flex-direction:row;flex-wrap:wrap}.follow-request-card-content-container button{margin-top:.5em;margin-right:.5em;flex:1 1;max-width:12em;min-width:8em}.follow-request-card-content-container button:last-child{margin-right:0}\", \"\"]);\n\n// exports\n","/* script */\nexport * from \"!!babel-loader!./oauth_callback.js\"\nimport __vue_script__ from \"!!babel-loader!./oauth_callback.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-f514124c\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./oauth_callback.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./user_search.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./user_search.js\"\nimport __vue_script__ from \"!!babel-loader!./user_search.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-50212e66\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./user_search.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./user_search.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"48879f74\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".user-search-input-container{margin:.5em;display:flex;justify-content:center}.user-search-input-container .search-button{margin-left:.5em}.loading-icon{padding:1em}\", \"\"]);\n\n// exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./login_form.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./login_form.js\"\nimport __vue_script__ from \"!!babel-loader!./login_form.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-beb5f2f2\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./login_form.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./login_form.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"42704024\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".login-form{display:flex;flex-direction:column;padding:.6em}.login-form .btn{min-height:28px;width:10em}.login-form .register{flex:1 1}.login-form .login-bottom{margin-top:1em;display:flex;flex-direction:row;align-items:center;justify-content:space-between}.login-form .form-group{display:flex;flex-direction:column;padding:.3em .5em .6em;line-height:24px}.login-form .form-bottom{display:flex;padding:.5em;height:32px}.login-form .form-bottom button{width:10em}.login-form .form-bottom p{margin:.35em;padding:.35em;display:flex}.login-form .error{text-align:center;animation-name:shakeError;animation-duration:.4s;animation-timing-function:ease-in-out}\", \"\"]);\n\n// exports\n","/* script */\nexport * from \"!!babel-loader!./recovery_form.js\"\nimport __vue_script__ from \"!!babel-loader!./recovery_form.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-3e1d0fe4\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./recovery_form.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","/* script */\nexport * from \"!!babel-loader!./totp_form.js\"\nimport __vue_script__ from \"!!babel-loader!./totp_form.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-ac2e1398\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./totp_form.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./chat_panel.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"2c0040e1\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".floating-chat{position:fixed;right:0;bottom:0;z-index:1000;max-width:25em}.chat-heading{cursor:pointer}.chat-heading .icon-comment-empty{color:#b9b9ba;color:var(--text,#b9b9ba)}.chat-window{overflow-y:auto;overflow-x:hidden;max-height:20em}.chat-window-container{height:100%}.chat-message{display:flex;padding:.2em .5em}.chat-avatar img{height:24px;width:24px;border-radius:4px;border-radius:var(--avatarRadius,4px);margin-right:.5em;margin-top:.25em}.chat-input{display:flex}.chat-input textarea{flex:1;margin:.6em;min-height:3.5em;resize:none}.chat-panel .title{display:flex;justify-content:space-between}\", \"\"]);\n\n// exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./who_to_follow.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./who_to_follow.js\"\nimport __vue_script__ from \"!!babel-loader!./who_to_follow.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-74383918\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./who_to_follow.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./who_to_follow.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"c74f4f44\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \"\", \"\"]);\n\n// exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./about.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./about.js\"\nimport __vue_script__ from \"!!babel-loader!./about.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-adbbefc2\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./about.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./about.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"7dfaed97\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \"\", \"\"]);\n\n// exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./instance_specific_panel.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"44aff36b\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \"\", \"\"]);\n\n// exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./features_panel.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"55ca8508\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".features-panel li{line-height:24px}\", \"\"]);\n\n// exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./terms_of_service_panel.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./terms_of_service_panel.js\"\nimport __vue_script__ from \"!!babel-loader!./terms_of_service_panel.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-5f130d6f\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./terms_of_service_panel.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./terms_of_service_panel.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"42aabc98\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".tos-content{margin:1em}\", \"\"]);\n\n// exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!./App.scss\")\n}\n/* script */\nexport * from \"!!babel-loader!./App.js\"\nimport __vue_script__ from \"!!babel-loader!./App.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-2671f379\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../node_modules/vue-loader/lib/selector?type=template&index=0!./App.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../node_modules/css-loader/index.js?minimize!../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../node_modules/sass-loader/lib/loader.js!./App.scss\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"5c806d03\", content, true, {});","exports = module.exports = require(\"../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \"#app{min-height:100vh;max-width:100%;overflow:hidden}.app-bg-wrapper{position:fixed;z-index:-1;height:100%;width:100%;background-size:cover;background-repeat:no-repeat;background-position:0 50%}i{user-select:none}h4{margin:0}#content{box-sizing:border-box;padding-top:60px;margin:auto;min-height:100vh;max-width:980px;background-color:rgba(0,0,0,.15);align-content:flex-start}.text-center{text-align:center}body{font-family:sans-serif;font-family:var(--interfaceFont,sans-serif);font-size:14px;margin:0;color:#b9b9ba;color:var(--text,#b9b9ba);max-width:100vw;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{text-decoration:none;color:#d8a070;color:var(--link,#d8a070)}button{user-select:none;background-color:#182230;background-color:var(--btn,#182230);border:none;border-radius:4px;border-radius:var(--btnRadius,4px);cursor:pointer;box-shadow:0 0 2px 0 #000,inset 0 1px 0 0 hsla(0,0%,100%,.2),inset 0 -1px 0 0 rgba(0,0,0,.2);box-shadow:var(--buttonShadow);font-size:14px;font-family:sans-serif;font-family:var(--interfaceFont,sans-serif)}button,button i[class*=icon-]{color:#b9b9ba;color:var(--btnText,#b9b9ba)}button::-moz-focus-inner{border:none}button:hover{box-shadow:0 0 4px hsla(0,0%,100%,.3);box-shadow:var(--buttonHoverShadow)}button:active{box-shadow:0 0 4px 0 hsla(0,0%,100%,.3),inset 0 1px 0 0 rgba(0,0,0,.2),inset 0 -1px 0 0 hsla(0,0%,100%,.2);box-shadow:var(--buttonPressedShadow)}button:disabled{cursor:not-allowed;opacity:.5}button.pressed{color:hsla(240,1%,73%,.5);color:var(--faint,hsla(240,1%,73%,.5));background-color:#121a24;background-color:var(--bg,#121a24)}button.danger{color:#b9b9ba;color:var(--alertErrorPanelText,#b9b9ba);background-color:rgba(211,16,20,.5);background-color:var(--alertError,rgba(211,16,20,.5))}label.select{padding:0}.select,input,textarea{border:none;border-radius:4px;border-radius:var(--inputRadius,4px);box-shadow:inset 0 1px 0 0 rgba(0,0,0,.2),inset 0 -1px 0 0 hsla(0,0%,100%,.2),inset 0 0 2px 0 #000;box-shadow:var(--inputShadow);background-color:#182230;background-color:var(--input,#182230);color:#b9b9ba;color:var(--inputText,#b9b9ba);font-family:sans-serif;font-family:var(--inputFont,sans-serif);font-size:14px;margin:0;padding:8px .5em;box-sizing:border-box;display:inline-block;position:relative;height:28px;line-height:16px;hyphens:none}.select:disabled,.select[disabled=disabled],input:disabled,input[disabled=disabled],textarea:disabled,textarea[disabled=disabled]{cursor:not-allowed;opacity:.5}.select .icon-down-open,input .icon-down-open,textarea .icon-down-open{position:absolute;top:0;bottom:0;right:5px;height:100%;color:#b9b9ba;color:var(--text,#b9b9ba);line-height:28px;z-index:0;pointer-events:none}.select select,input select,textarea select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;color:#b9b9ba;color:var(--inputText,--text,#b9b9ba);margin:0;padding:0 2em 0 .2em;font-family:sans-serif;font-family:var(--inputFont,sans-serif);font-size:14px;width:100%;z-index:1;height:28px;line-height:16px}.select[type=range],input[type=range],textarea[type=range]{background:none;border:none;margin:0;box-shadow:none;flex:1}.select[type=radio],input[type=radio],textarea[type=radio]{display:none}.select[type=radio]:checked+label:before,input[type=radio]:checked+label:before,textarea[type=radio]:checked+label:before{box-shadow:inset 0 0 2px #000,inset 0 0 0 4px #182230;box-shadow:var(--inputShadow),0 0 0 4px var(--fg,#182230) inset;background-color:var(--link,#d8a070)}.select[type=radio]:disabled,.select[type=radio]:disabled+label,.select[type=radio]:disabled+label:before,input[type=radio]:disabled,input[type=radio]:disabled+label,input[type=radio]:disabled+label:before,textarea[type=radio]:disabled,textarea[type=radio]:disabled+label,textarea[type=radio]:disabled+label:before{opacity:.5}.select[type=radio]+label:before,input[type=radio]+label:before,textarea[type=radio]+label:before{flex-shrink:0;display:inline-block;content:\\\"\\\";transition:box-shadow .2s;width:1.1em;height:1.1em;border-radius:100%;box-shadow:inset 0 0 2px #000;box-shadow:var(--inputShadow);margin-right:.5em;background-color:#182230;background-color:var(--input,#182230);vertical-align:top;text-align:center;line-height:1.1em;font-size:1.1em;color:transparent;overflow:hidden;box-sizing:border-box}.select[type=checkbox],input[type=checkbox],textarea[type=checkbox]{display:none}.select[type=checkbox]:checked+label:before,input[type=checkbox]:checked+label:before,textarea[type=checkbox]:checked+label:before{color:#b9b9ba;color:var(--text,#b9b9ba)}.select[type=checkbox]:disabled,.select[type=checkbox]:disabled+label,.select[type=checkbox]:disabled+label:before,input[type=checkbox]:disabled,input[type=checkbox]:disabled+label,input[type=checkbox]:disabled+label:before,textarea[type=checkbox]:disabled,textarea[type=checkbox]:disabled+label,textarea[type=checkbox]:disabled+label:before{opacity:.5}.select[type=checkbox]+label:before,input[type=checkbox]+label:before,textarea[type=checkbox]+label:before{flex-shrink:0;display:inline-block;content:\\\"\\\\2714\\\";transition:color .2s;width:1.1em;height:1.1em;border-radius:2px;border-radius:var(--checkboxRadius,2px);box-shadow:inset 0 0 2px #000;box-shadow:var(--inputShadow);margin-right:.5em;background-color:#182230;background-color:var(--input,#182230);vertical-align:top;text-align:center;line-height:1.1em;font-size:1.1em;color:transparent;overflow:hidden;box-sizing:border-box}option{color:#b9b9ba;color:var(--text,#b9b9ba);background-color:#121a24;background-color:var(--bg,#121a24)}.hide-number-spinner{-moz-appearance:textfield}.hide-number-spinner[type=number]::-webkit-inner-spin-button,.hide-number-spinner[type=number]::-webkit-outer-spin-button{opacity:0;display:none}i[class*=icon-]{color:#666;color:var(--icon,#666)}.container{display:flex;flex-wrap:wrap;margin:0;padding:0 10px}.item{flex:1;line-height:50px;height:50px;overflow:hidden;display:flex;flex-wrap:wrap}.item .nav-icon{margin-left:.4em}.item.right{justify-content:flex-end}.auto-size{flex:1}.nav-bar{padding:0;width:100%;align-items:center;position:fixed;height:50px}.nav-bar .logo{display:flex;align-items:stretch;justify-content:center;flex:0 0 auto;z-index:-1;transition:opacity;transition-timing-function:ease-out;transition-duration:.1s}.nav-bar .logo,.nav-bar .logo .mask{position:absolute;top:0;bottom:0;left:0;right:0}.nav-bar .logo .mask{mask-repeat:no-repeat;mask-position:center;mask-size:contain;background-color:#182230;background-color:var(--topBarText,#182230)}.nav-bar .logo img{height:100%;object-fit:contain;display:block;flex:0}.nav-bar .inner-nav{margin:auto;box-sizing:border-box;padding-left:10px;padding-right:10px;display:flex;align-items:center;flex-basis:970px;height:50px}.nav-bar .inner-nav a,.nav-bar .inner-nav a i{color:#d8a070;color:var(--topBarLink,#d8a070)}main-router{flex:1}.status.compact{color:rgba(0,0,0,.42);font-weight:300}.status.compact p{margin:0;font-size:.8em}.panel{display:flex;position:relative;flex-direction:column;margin:.5em;background-color:#121a24;background-color:var(--bg,#121a24)}.panel,.panel:after{border-radius:10px;border-radius:var(--panelRadius,10px)}.panel:after{content:\\\"\\\";position:absolute;top:0;bottom:0;left:0;right:0;pointer-events:none;box-shadow:1px 1px 4px rgba(0,0,0,.6);box-shadow:var(--panelShadow)}.panel-body:empty:before{content:\\\"\\\\AF\\\\\\\\_(\\\\30C4)_/\\\\AF\\\";display:block;margin:1em;text-align:center}.panel-heading{display:flex;flex:none;border-radius:10px 10px 0 0;border-radius:var(--panelRadius,10px) var(--panelRadius,10px) 0 0;background-size:cover;padding:.6em;text-align:left;line-height:28px;color:var(--panelText);background-color:#182230;background-color:var(--panel,#182230);align-items:baseline;box-shadow:var(--panelHeaderShadow)}.panel-heading .title{flex:1 0 auto;font-size:1.3em}.panel-heading .faint{background-color:transparent;color:hsla(240,1%,73%,.5);color:var(--panelFaint,hsla(240,1%,73%,.5))}.panel-heading .alert{white-space:nowrap;text-overflow:ellipsis;overflow-x:hidden}.panel-heading button{flex-shrink:0}.panel-heading .alert,.panel-heading button{line-height:21px;min-height:0;box-sizing:border-box;margin:0;margin-left:.25em;min-width:1px;align-self:stretch}.panel-heading a{color:#d8a070;color:var(--panelLink,#d8a070)}.panel-heading.stub{border-radius:10px;border-radius:var(--panelRadius,10px)}.panel-footer{border-radius:0 0 10px 10px;border-radius:0 0 var(--panelRadius,10px) var(--panelRadius,10px)}.panel-footer .faint{color:hsla(240,1%,73%,.5);color:var(--panelFaint,hsla(240,1%,73%,.5))}.panel-footer a{color:#d8a070;color:var(--panelLink,#d8a070)}.panel-body>p{line-height:18px;padding:1em;margin:0}.container>*{min-width:0}.fa{color:grey}nav{z-index:1000;color:var(--topBarText);background-color:#182230;background-color:var(--topBar,#182230);color:hsla(240,1%,73%,.5);color:var(--faint,hsla(240,1%,73%,.5));box-shadow:0 0 4px rgba(0,0,0,.6);box-shadow:var(--topBarShadow)}nav .back-button{display:block;max-width:99px;transition-property:opacity,max-width;transition-duration:.3s;transition-timing-function:ease-out}nav .back-button i{margin:0 1em}nav .back-button.hidden{opacity:0;max-width:5px}.fade-enter-active,.fade-leave-active{transition:opacity .2s}.fade-enter,.fade-leave-active{opacity:0}.main{flex-basis:50%;flex-grow:1;flex-shrink:1}.sidebar-bounds{flex:0;flex-basis:35%}.sidebar-flexer{flex:1;flex-basis:345px;width:365px}.mobile-shown{display:none}@media (min-width:800px){body{overflow-y:scroll}nav .back-button{display:none}.sidebar-bounds{overflow:hidden;max-height:100vh;width:345px;position:fixed;margin-top:-10px}.sidebar-bounds .sidebar-scroller{height:96vh;width:365px;padding-top:10px;padding-right:50px;overflow-x:hidden;overflow-y:scroll}.sidebar-bounds .sidebar{width:345px}.sidebar-flexer{max-height:96vh;flex-shrink:0;flex-grow:0}}.badge{display:inline-block;border-radius:99px;min-width:22px;max-width:22px;min-height:22px;max-height:22px;font-size:15px;line-height:22px;text-align:center;vertical-align:middle;white-space:nowrap;padding:0}.badge.badge-notification{background-color:red;background-color:var(--badgeNotification,red);color:#fff;color:var(--badgeNotificationText,#fff)}.alert{margin:.35em;padding:.25em;border-radius:5px;border-radius:var(--tooltipRadius,5px);min-height:28px;line-height:28px}.alert.error{background-color:rgba(211,16,20,.5);background-color:var(--alertError,rgba(211,16,20,.5));color:#b9b9ba;color:var(--alertErrorText,#b9b9ba)}.panel-heading .alert.error{color:#b9b9ba;color:var(--alertErrorPanelText,#b9b9ba)}.faint,.faint-link{color:hsla(240,1%,73%,.5);color:var(--faint,hsla(240,1%,73%,.5))}.faint-link:hover{text-decoration:underline}@media (min-width:800px){.logo{opacity:1!important}}.item.right{text-align:right}.visibility-notice{padding:.5em;border:1px solid hsla(240,1%,73%,.5);border:1px solid var(--faint,hsla(240,1%,73%,.5));border-radius:4px;border-radius:var(--inputRadius,4px)}.notice-dismissible{padding-right:4rem;position:relative}.notice-dismissible .dismiss{position:absolute;top:0;right:0;padding:.5em;color:inherit}@keyframes modal-background-fadein{0%{background-color:transparent}to{background-color:rgba(0,0,0,.5)}}.modal-view{z-index:1000;position:fixed;top:0;left:0;right:0;bottom:0;display:flex;justify-content:center;align-items:center;overflow:auto;animation-duration:.2s;background-color:rgba(0,0,0,.5);animation-name:modal-background-fadein}.button-icon{font-size:1.2em}@keyframes shakeError{0%{transform:translateX(0)}15%{transform:translateX(.375rem)}30%{transform:translateX(-.375rem)}45%{transform:translateX(.375rem)}60%{transform:translateX(-.375rem)}75%{transform:translateX(.375rem)}90%{transform:translateX(-.375rem)}to{transform:translateX(0)}}@media (max-width:800px){.mobile-hidden{display:none}.panel-switcher{display:flex}.container{padding:0}.panel{margin:.5em 0}.menu-button{display:block;margin-right:.8em}}.setting-item{border-bottom:2px solid var(--fg,#182230);margin:1em 1em 1.4em;padding-bottom:1.4em}.setting-item>div{margin-bottom:.5em}.setting-item>div:last-child{margin-bottom:0}.setting-item:last-child{border-bottom:none;padding-bottom:0;margin-bottom:1em}.setting-item select{min-width:10em}.setting-item textarea{width:100%;max-width:100%;height:100px}.setting-item .unavailable,.setting-item .unavailable i{color:var(--cRed,red);color:red}.setting-item .btn{min-height:28px;min-width:10em;padding:0 2em}.setting-item .number-input{max-width:6em}.select-multiple{display:flex}.select-multiple .option-list{margin:0;padding-left:.5em}.option-list,.setting-list{list-style-type:none;padding-left:2em}.option-list li,.setting-list li{margin-bottom:.5em}.option-list .suboptions,.setting-list .suboptions{margin-top:.3em}.login-hint{text-align:center}@media (min-width:801px){.login-hint{display:none}}.login-hint a{display:inline-block;padding:1em 0;width:100%}.btn.btn-default{min-height:28px}\", \"\"]);\n\n// exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./user_panel.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./user_panel.js\"\nimport __vue_script__ from \"!!babel-loader!./user_panel.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-2ced945d\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./user_panel.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./user_panel.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"04d46dee\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".user-panel .signed-in{overflow:visible}\", \"\"]);\n\n// exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./nav_panel.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./nav_panel.js\"\nimport __vue_script__ from \"!!babel-loader!./nav_panel.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-121719ee\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./nav_panel.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./nav_panel.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"b030addc\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".nav-panel .panel{overflow:hidden;box-shadow:var(--panelShadow)}.nav-panel ul{list-style:none;margin:0;padding:0}.follow-request-count{margin:-6px 10px;background-color:#121a24;background-color:var(--input,hsla(240,1%,73%,.5))}.nav-panel li{border-bottom:1px solid;border-color:#222;border-color:var(--border,#222);padding:0}.nav-panel li:first-child a{border-top-right-radius:10px;border-top-right-radius:var(--panelRadius,10px);border-top-left-radius:10px;border-top-left-radius:var(--panelRadius,10px)}.nav-panel li:last-child a{border-bottom-right-radius:10px;border-bottom-right-radius:var(--panelRadius,10px);border-bottom-left-radius:10px;border-bottom-left-radius:var(--panelRadius,10px)}.nav-panel li:last-child{border:none}.nav-panel a{display:block;padding:.8em .85em}.nav-panel a.router-link-active,.nav-panel a:hover{background-color:#151e2a;background-color:var(--lightBg,#151e2a)}.nav-panel a.router-link-active{font-weight:bolder}.nav-panel a.router-link-active:hover{text-decoration:underline}\", \"\"]);\n\n// exports\n","import apiService from '../api/api.service.js'\n\nconst fetchAndUpdate = ({ store, credentials }) => {\n return apiService.fetchFollowRequests({ credentials })\n .then((requests) => {\n store.commit('setFollowRequests', requests)\n }, () => {})\n .catch(() => {})\n}\n\nconst startFetching = ({credentials, store}) => {\n fetchAndUpdate({ credentials, store })\n const boundFetchAndUpdate = () => fetchAndUpdate({ credentials, store })\n return setInterval(boundFetchAndUpdate, 10000)\n}\n\nconst followRequestFetcher = {\n startFetching\n}\n\nexport default followRequestFetcher\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./user_finder.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./user_finder.js\"\nimport __vue_script__ from \"!!babel-loader!./user_finder.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-b55526b8\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./user_finder.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./user_finder.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"45e8aa84\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".user-finder-container{max-width:100%;display:inline-flex;align-items:baseline;vertical-align:baseline}.user-finder-container .search-button,.user-finder-container .user-finder-input{height:29px}.user-finder-container .user-finder-input{max-width:calc(100% - 30px - 30px - 20px)}.user-finder-container .search-button{margin-left:.5em;margin-right:.5em}\", \"\"]);\n\n// exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./who_to_follow_panel.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./who_to_follow_panel.js\"\nimport __vue_script__ from \"!!babel-loader!./who_to_follow_panel.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-cf25eb72\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./who_to_follow_panel.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./who_to_follow_panel.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"2f18dd03\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".who-to-follow *{vertical-align:middle}.who-to-follow img{width:32px;height:32px}.who-to-follow{padding:0 1em;margin:0}.who-to-follow-items{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0;margin:1em 0}.who-to-follow-more{padding:0;margin:1em 0;text-align:center}\", \"\"]);\n\n// exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./media_modal.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./media_modal.js\"\nimport __vue_script__ from \"!!babel-loader!./media_modal.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-3448b8dc\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./media_modal.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./media_modal.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"23b00cfc\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".media-modal-view{z-index:1001}.media-modal-view:hover .modal-view-button-arrow{opacity:.75}.media-modal-view:hover .modal-view-button-arrow:focus,.media-modal-view:hover .modal-view-button-arrow:hover{outline:none;box-shadow:none}.media-modal-view:hover .modal-view-button-arrow:hover{opacity:1}.modal-image{max-width:90%;max-height:90%;box-shadow:0 5px 15px 0 rgba(0,0,0,.5)}.modal-view-button-arrow{position:absolute;display:block;top:50%;margin-top:-50px;width:70px;height:100px;border:0;padding:0;opacity:0;box-shadow:none;background:none;appearance:none;overflow:visible;cursor:pointer;transition:opacity 333ms cubic-bezier(.4,0,.22,1)}.modal-view-button-arrow .arrow-icon{position:absolute;top:35px;height:30px;width:32px;font-size:14px;line-height:30px;color:#fff;text-align:center;background-color:rgba(0,0,0,.3)}.modal-view-button-arrow--prev{left:0}.modal-view-button-arrow--prev .arrow-icon{left:6px}.modal-view-button-arrow--next{right:0}.modal-view-button-arrow--next .arrow-icon{right:6px}\", \"\"]);\n\n// exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./side_drawer.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"34992fba\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".side-drawer-container{position:fixed;z-index:1000;top:0;left:0;width:100%;height:100%;display:flex;align-items:stretch;transition-duration:0s;transition-property:transform}.side-drawer-container-open{transform:translate(0)}.side-drawer-container-closed{transition-delay:.35s;transform:translate(-100%)}.side-drawer-darken{top:0;left:0;width:100vw;height:100vh;position:fixed;z-index:-1;transition:.35s;transition-property:background-color;background-color:rgba(0,0,0,.5)}.side-drawer-darken-closed{background-color:transparent}.side-drawer-click-outside{flex:1 1 100%}.side-drawer{overflow-x:hidden;transition-timing-function:cubic-bezier(0,1,.5,1);transition:.35s;transition-property:transform;margin:0 0 0 -100px;padding:0 0 1em 100px;width:80%;max-width:20em;flex:0 0 80%;box-shadow:1px 1px 4px rgba(0,0,0,.6);box-shadow:var(--panelShadow);background-color:#121a24;background-color:var(--bg,#121a24)}.side-drawer-logo-wrapper{display:flex;align-items:center;padding:.85em}.side-drawer-logo-wrapper img{flex:none;height:50px;margin-right:.85em}.side-drawer-logo-wrapper span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.side-drawer-click-outside-closed{flex:0 0 0}.side-drawer-closed{transform:translate(-100%)}.side-drawer-heading{background:transparent;flex-direction:column;align-items:stretch;display:flex;padding:0;margin:0}.side-drawer ul{list-style:none;margin:0;padding:0;border-bottom:1px solid;border-color:#222;border-color:var(--border,#222);margin:.2em 0}.side-drawer ul:last-child{border:0}.side-drawer li{padding:0}.side-drawer li a{display:block;padding:.5em .85em}.side-drawer li a:hover{background-color:#151e2a;background-color:var(--lightBg,#151e2a)}\", \"\"]);\n\n// exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./mobile_post_status_modal.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"255c837c\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".post-form-modal-view{max-height:100%;display:block}.post-form-modal-panel{flex-shrink:0;margin:25% 0 4em;width:100%}.new-status-button{width:5em;height:5em;border-radius:100%;position:fixed;bottom:1.5em;right:1.5em;background-color:#182230;background-color:var(--btn,#182230);display:flex;justify-content:center;align-items:center;box-shadow:0 2px 2px rgba(0,0,0,.3),0 4px 6px rgba(0,0,0,.3);z-index:10;transition:transform .35s;transition-timing-function:cubic-bezier(0,1,.5,1)}.new-status-button.hidden{transform:translateY(150%)}.new-status-button i{font-size:1.5em;color:#b9b9ba;color:var(--text,#b9b9ba)}@media (min-width:801px){.new-status-button{display:none}}\", \"\"]);\n\n// exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./mobile_nav.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./mobile_nav.js\"\nimport __vue_script__ from \"!!babel-loader!./mobile_nav.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-a344c53a\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./mobile_nav.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./mobile_nav.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"1e0fbcf8\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".mobile-inner-nav{width:100%;display:flex;align-items:center}.mobile-nav-button{display:flex;justify-content:center;width:50px;position:relative;cursor:pointer}.alert-dot{border-radius:100%;height:8px;width:8px;position:absolute;left:calc(50% - 4px);top:calc(50% - 4px);margin-left:6px;margin-top:-6px;background-color:red;background-color:var(--badgeNotification,red)}.mobile-notifications-drawer{width:100%;height:100vh;overflow-x:hidden;position:fixed;top:0;left:0;box-shadow:1px 1px 4px rgba(0,0,0,.6);box-shadow:var(--panelShadow);transition-property:transform;transition-duration:.25s;transform:translateX(0);z-index:1001;-webkit-overflow-scrolling:touch}.mobile-notifications-drawer.closed{transform:translateX(100%)}.mobile-notifications-header{display:flex;align-items:center;justify-content:space-between;z-index:1;width:100%;height:50px;line-height:50px;position:absolute;color:var(--topBarText);background-color:#182230;background-color:var(--topBar,#182230);box-shadow:0 0 4px rgba(0,0,0,.6);box-shadow:var(--topBarShadow)}.mobile-notifications-header .title{font-size:1.3em;margin-left:.6em}.mobile-notifications{margin-top:50px;width:100vw;height:calc(100vh - 50px);overflow-x:hidden;overflow-y:scroll;color:#b9b9ba;color:var(--text,#b9b9ba);background-color:#121a24;background-color:var(--bg,#121a24)}.mobile-notifications .notifications{padding:0;border-radius:0;box-shadow:none}.mobile-notifications .notifications .panel{border-radius:0;margin:0;box-shadow:none}.mobile-notifications .notifications .panel:after{border-radius:0}.mobile-notifications .notifications .panel .panel-heading{border-radius:0;box-shadow:none}\", \"\"]);\n\n// exports\n","function injectStyle (context) {\n require(\"!!vue-style-loader!css-loader?minimize!../../../node_modules/vue-loader/lib/style-compiler/index?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!sass-loader!../../../node_modules/vue-loader/lib/selector?type=styles&index=0!./user_reporting_modal.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./user_reporting_modal.js\"\nimport __vue_script__ from \"!!babel-loader!./user_reporting_modal.js\"/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-6121709e\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./user_reporting_modal.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../../node_modules/css-loader/index.js?minimize!../../../node_modules/vue-loader/lib/style-compiler/index.js?{\\\"optionsId\\\":\\\"0\\\",\\\"vue\\\":true,\\\"scoped\\\":false,\\\"sourceMap\\\":false}!../../../node_modules/sass-loader/lib/loader.js!../../../node_modules/vue-loader/lib/selector.js?type=styles&index=0!./user_reporting_modal.vue\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"10c04f96\", content, true, {});","exports = module.exports = require(\"../../../node_modules/css-loader/lib/css-base.js\")(false);\n// imports\n\n\n// module\nexports.push([module.id, \".user-reporting-panel{width:90vw;max-width:700px;min-height:20vh;max-height:80vh}.user-reporting-panel .panel-heading .title{text-align:center;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-reporting-panel .panel-body{display:flex;flex-direction:column-reverse;border-top:1px solid;border-color:#222;border-color:var(--border,#222);overflow:hidden}.user-reporting-panel-left{padding:1.1em .7em .7em;line-height:1.4em;box-sizing:border-box}.user-reporting-panel-left>div{margin-bottom:1em}.user-reporting-panel-left>div:last-child{margin-bottom:0}.user-reporting-panel-left p{margin-top:0}.user-reporting-panel-left textarea.form-control{line-height:16px;resize:none;overflow:hidden;transition:min-height .2s .1s;min-height:44px;width:100%}.user-reporting-panel-left .btn{min-width:10em;padding:0 2em}.user-reporting-panel-left .alert{margin:1em 0 0;line-height:1.3em}.user-reporting-panel-right{display:flex;flex-direction:column;overflow-y:auto}.user-reporting-panel-sitem{display:flex;justify-content:space-between}.user-reporting-panel-sitem>.status-el{flex:1}.user-reporting-panel-sitem>.checkbox{margin:.75em}@media (min-width:801px){.user-reporting-panel .panel-body{flex-direction:row}.user-reporting-panel-left{width:50%;max-width:320px;border-right:1px solid;border-color:#222;border-color:var(--border,#222);padding:1.1em}.user-reporting-panel-left>div{margin-bottom:2em}.user-reporting-panel-right{width:50%;flex:1 1 auto;margin-bottom:12px}}\", \"\"]);\n\n// exports\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"panel dummy\"},[_c('div',{staticClass:\"panel-heading\"},[_c('div',{staticClass:\"title\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.style.preview.header'))+\"\\n \"),_c('span',{staticClass:\"badge badge-notification\"},[_vm._v(\"\\n 99\\n \")])]),_vm._v(\" \"),_c('span',{staticClass:\"faint\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.style.preview.header_faint'))+\"\\n \")]),_vm._v(\" \"),_c('span',{staticClass:\"alert error\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.style.preview.error'))+\"\\n \")]),_vm._v(\" \"),_c('button',{staticClass:\"btn\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.style.preview.button'))+\"\\n \")])]),_vm._v(\" \"),_c('div',{staticClass:\"panel-body theme-preview-content\"},[_c('div',{staticClass:\"post\"},[_c('div',{staticClass:\"avatar\"},[_vm._v(\"\\n ( ͡° ͜ʖ ͡°)\\n \")]),_vm._v(\" \"),_c('div',{staticClass:\"content\"},[_c('h4',[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.style.preview.content'))+\"\\n \")]),_vm._v(\" \"),_c('i18n',{attrs:{\"path\":\"settings.style.preview.text\"}},[_c('code',{staticStyle:{\"font-family\":\"var(--postCodeFont)\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.style.preview.mono'))+\"\\n \")]),_vm._v(\" \"),_c('a',{staticStyle:{\"color\":\"var(--link)\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.style.preview.link'))+\"\\n \")])]),_vm._v(\" \"),_vm._m(0)],1)]),_vm._v(\" \"),_c('div',{staticClass:\"after-post\"},[_c('div',{staticClass:\"avatar-alt\"},[_vm._v(\"\\n :^)\\n \")]),_vm._v(\" \"),_c('div',{staticClass:\"content\"},[_c('i18n',{staticClass:\"faint\",attrs:{\"path\":\"settings.style.preview.fine_print\",\"tag\":\"span\"}},[_c('a',{staticStyle:{\"color\":\"var(--faintLink)\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.style.preview.faint_link'))+\"\\n \")])])],1)]),_vm._v(\" \"),_c('div',{staticClass:\"separator\"}),_vm._v(\" \"),_c('span',{staticClass:\"alert error\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.style.preview.error'))+\"\\n \")]),_vm._v(\" \"),_c('input',{attrs:{\"type\":\"text\"},domProps:{\"value\":_vm.$t('settings.style.preview.input')}}),_vm._v(\" \"),_c('div',{staticClass:\"actions\"},[_c('span',{staticClass:\"checkbox\"},[_c('input',{attrs:{\"checked\":\"very yes\",\"type\":\"checkbox\",\"id\":\"preview_checkbox\"}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"preview_checkbox\"}},[_vm._v(_vm._s(_vm.$t('settings.style.preview.checkbox')))])]),_vm._v(\" \"),_c('button',{staticClass:\"btn\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.style.preview.button'))+\"\\n \")])])])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"icons\"},[_c('i',{staticClass:\"button-icon icon-reply\",staticStyle:{\"color\":\"var(--cBlue)\"}}),_vm._v(\" \"),_c('i',{staticClass:\"button-icon icon-retweet\",staticStyle:{\"color\":\"var(--cGreen)\"}}),_vm._v(\" \"),_c('i',{staticClass:\"button-icon icon-star\",staticStyle:{\"color\":\"var(--cOrange)\"}}),_vm._v(\" \"),_c('i',{staticClass:\"button-icon icon-cancel\",staticStyle:{\"color\":\"var(--cRed)\"}})])}]\nexport { render, staticRenderFns }","/* script */\nvar __vue_script__ = null\n/* template */\nimport {render as __vue_render__, staticRenderFns as __vue_static_render_fns__} from \"!!../../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-485e34b2\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./preview.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = null\n/* scopeId */\nvar __vue_scopeId__ = null\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nimport normalizeComponent from \"!../../../node_modules/vue-loader/lib/runtime/component-normalizer\"\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_render__,\n __vue_static_render_fns__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n"],"sourceRoot":""}