1 {"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/status/status.vue","webpack:///./src/components/user_avatar/user_avatar.vue","webpack:///./src/services/style_setter/style_setter.js","webpack:///./src/services/new_api/oauth.js","webpack:///./src/components/conversation/conversation.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/emoji_picker/emoji_picker.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/progress_button/progress_button.vue","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/search/search.js","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/password_reset/password_reset.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/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/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/search_bar/search_bar.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_button/mobile_post_status_button.js","webpack:///./src/components/mobile_nav/mobile_nav.js","webpack:///./src/components/user_reporting_modal/user_reporting_modal.js","webpack:///./src/components/post_status_modal/post_status_modal.js","webpack:///./src/components/tab_switcher/tab_switcher.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/services/notification_utils/notification_utils.js","webpack:///./src/components/follow_card/follow_card.vue","webpack:///./src/components/list/list.vue","webpack:///./src/components/still-image/still-image.vue?cd25","webpack:///./src/components/video_attachment/video_attachment.vue?695e","webpack:///./src/components/attachment/attachment.vue?d048","webpack:///./src/components/favorite_button/favorite_button.vue?adef","webpack:///./src/components/retweet_button/retweet_button.vue?8825","webpack:///./src/components/timeago/timeago.vue?d70d","webpack:///./src/components/poll/poll.vue?f7e7","webpack:///./src/components/extra_buttons/extra_buttons.vue?6d55","webpack:///./src/components/media_upload/media_upload.vue?dc2c","webpack:///./src/components/scope_selector/scope_selector.vue?4ef5","webpack:///./src/components/emoji_picker/emoji_picker.vue?250f","webpack:///./src/components/emoji_input/emoji_input.vue?adfd","webpack:///./src/components/poll/poll_form.vue?41d8","webpack:///./src/components/post_status_form/post_status_form.vue?1e8a","webpack:///./src/components/user_avatar/user_avatar.vue?7f9b","webpack:///./src/components/remote_follow/remote_follow.vue?deba","webpack:///./src/components/progress_button/progress_button.vue?6be4","webpack:///./src/components/dialog_modal/dialog_modal.vue?f85c","webpack:///./src/components/moderation_tools/moderation_tools.vue?6c35","webpack:///./src/components/user_card/user_card.vue?0852","webpack:///./src/components/gallery/gallery.vue?57f6","webpack:///./src/components/link-preview/link-preview.vue?7d0d","webpack:///./src/components/avatar_list/avatar_list.vue?e3d4","webpack:///./src/components/status/status.vue?e1b6","webpack:///./src/components/conversation/conversation.vue?7eb5","webpack:///./src/components/timeline/timeline.vue?5802","webpack:///./src/components/public_timeline/public_timeline.vue?bba0","webpack:///./src/components/public_and_external_timeline/public_and_external_timeline.vue?0d56","webpack:///./src/components/friends_timeline/friends_timeline.vue?0810","webpack:///./src/components/tag_timeline/tag_timeline.vue?ee38","webpack:///./src/components/conversation-page/conversation-page.vue?d63c","webpack:///./src/components/notification/notification.vue?aa4d","webpack:///./src/components/notifications/notifications.vue?c039","webpack:///./src/components/interactions/interactions.vue?96e9","webpack:///./src/components/dm_timeline/dm_timeline.vue?4177","webpack:///./src/components/basic_user_card/basic_user_card.vue?8a94","webpack:///./src/components/follow_card/follow_card.vue?0255","webpack:///./src/components/list/list.vue?c7b8","webpack:///./src/components/user_profile/user_profile.vue?326a","webpack:///./src/components/search/search.vue?ec9a","webpack:///./src/components/color_input/color_input.vue?97d1","webpack:///./src/components/range_input/range_input.vue?47de","webpack:///./src/components/opacity_input/opacity_input.vue?c066","webpack:///./src/components/shadow_control/shadow_control.vue?d7e2","webpack:///./src/components/font_control/font_control.vue?184b","webpack:///./src/components/contrast_ratio/contrast_ratio.vue?11d2","webpack:///./src/components/export_import/export_import.vue?42a3","webpack:///./src/components/style_switcher/style_switcher.vue?0a20","webpack:///./src/components/interface_language_switcher/interface_language_switcher.vue?9d98","webpack:///./src/components/settings/settings.vue?d4de","webpack:///./src/components/registration/registration.vue?b0f7","webpack:///./src/components/password_reset/password_reset.vue?59c7","webpack:///./src/components/image_cropper/image_cropper.vue?017e","webpack:///./src/components/block_card/block_card.vue?7b44","webpack:///./src/components/mute_card/mute_card.vue?6bc9","webpack:///./src/components/checkbox/checkbox.vue?c1c0","webpack:///./src/components/selectable_list/selectable_list.vue?7396","webpack:///./src/components/autosuggest/autosuggest.vue?9554","webpack:///./src/components/importer/importer.vue?320c","webpack:///./src/components/exporter/exporter.vue?7e42","webpack:///./src/components/user_settings/mfa_backup_codes.vue?c289","webpack:///./src/components/user_settings/confirm.vue?7c4c","webpack:///./src/components/user_settings/mfa_totp.vue?d10c","webpack:///./src/components/user_settings/mfa.vue?5102","webpack:///./src/components/user_settings/user_settings.vue?5db7","webpack:///./src/components/follow_request_card/follow_request_card.vue?e2ae","webpack:///./src/components/follow_requests/follow_requests.vue?6944","webpack:///./src/components/oauth_callback/oauth_callback.vue?99e7","webpack:///./src/components/login_form/login_form.vue?ec94","webpack:///./src/components/mfa_form/recovery_form.vue?9df7","webpack:///./src/components/mfa_form/totp_form.vue?2e19","webpack:///./src/components/chat_panel/chat_panel.vue?3953","webpack:///./src/components/who_to_follow/who_to_follow.vue?4a17","webpack:///./src/components/instance_specific_panel/instance_specific_panel.vue?3490","webpack:///./src/components/features_panel/features_panel.vue?33c8","webpack:///./src/components/terms_of_service_panel/terms_of_service_panel.vue?25e4","webpack:///./src/components/about/about.vue?0ba5","webpack:///./src/components/user_panel/user_panel.vue?f6da","webpack:///./src/components/nav_panel/nav_panel.vue?8d51","webpack:///./src/components/search_bar/search_bar.vue?fd14","webpack:///./src/components/who_to_follow_panel/who_to_follow_panel.vue?3d0c","webpack:///./src/components/media_modal/media_modal.vue?9ae8","webpack:///./src/components/side_drawer/side_drawer.vue?a5f0","webpack:///./src/components/mobile_post_status_button/mobile_post_status_button.vue?c48d","webpack:///./src/components/mobile_nav/mobile_nav.vue?94ba","webpack:///./src/components/user_reporting_modal/user_reporting_modal.vue?bc4c","webpack:///./src/components/post_status_modal/post_status_modal.vue?f696","webpack:///./src/App.vue?89fe","webpack:///./src/services/status_poster/status_poster.service.js","webpack:///./src/services/timeline_fetcher/timeline_fetcher.service.js","webpack:///./src/services/notifications_fetcher/notifications_fetcher.service.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/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/services/offset_finder/offset_finder.service.js","webpack:///./src/components/emoji_input/suggestor.js","webpack:///./src/components/remote_follow/remote_follow.vue","webpack:///./src/components/progress_button/progress_button.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/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/entity_normalizer/entity_normalizer.service.js","webpack:///./src/services/errors/errors.js","webpack:///./src/modules/errors.js","webpack:///./src/modules/users.js","webpack:///./src/services/push/push.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/modules/postStatus.js","webpack:///./src/lib/persisted_state.js","webpack:///./src/lib/push_notifications_plugin.js","webpack:///./src/directives/body_scroll_lock.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?88c6","webpack:///./src/components/emoji_input/emoji_input.vue?c0d0","webpack:///./src/services/completion/completion.js","webpack:///./src/components/emoji_picker/emoji_picker.vue","webpack:///./src/components/emoji_picker/emoji_picker.scss?a54d","webpack:///./src/components/emoji_picker/emoji_picker.scss","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","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/search/search.vue","webpack:///./src/components/search/search.vue?9825","webpack:///./src/components/search/search.vue?e198","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/password_reset/password_reset.vue","webpack:///./src/components/password_reset/password_reset.vue?d048","webpack:///./src/components/password_reset/password_reset.vue?5ec5","webpack:///./src/services/new_api/password_reset.js","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/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/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/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/search_bar/search_bar.vue","webpack:///./src/components/search_bar/search_bar.vue?269b","webpack:///./src/components/search_bar/search_bar.vue?0fb3","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_button/mobile_post_status_button.vue","webpack:///./src/components/mobile_post_status_button/mobile_post_status_button.vue?1868","webpack:///./src/components/mobile_post_status_button/mobile_post_status_button.vue?7cf2","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/post_status_modal/post_status_modal.vue","webpack:///./src/components/post_status_modal/post_status_modal.vue?892e","webpack:///./src/components/post_status_modal/post_status_modal.vue?b34c","webpack:///./src/components/style_switcher/preview.vue?006a","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","e","promises","installedChunkData","promise","Promise","resolve","reject","onScriptComplete","script","document","createElement","charset","timeout","nc","setAttribute","src","p","2","jsonpScriptSrc","error","Error","event","onerror","onload","clearTimeout","chunk","errorType","type","realSrc","target","message","request","undefined","setTimeout","head","appendChild","all","m","c","d","name","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","err","console","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_SUBSCRIBE_USER","MASTODON_UNSUBSCRIBE_USER","MASTODON_STATUS_FAVORITEDBY_URL","MASTODON_STATUS_REBLOGGEDBY_URL","MASTODON_PIN_OWN_STATUS","MASTODON_UNPIN_OWN_STATUS","MASTODON_MUTE_CONVERSATION","MASTODON_UNMUTE_CONVERSATION","oldfetch","fetch","url","options","fullUrl","credentials","promisedRequest","_ref","method","params","payload","_ref$headers","headers","Accept","Content-Type","_entries2","default","map","_ref2","_ref3","_slicedToArray3","encodeURIComponent","join","body","_stringify2","_extends3","authHeaders","then","response","_promise2","json","ok","StatusCodeError","status","accessToken","Authorization","fetchFriends","_ref22","maxId","sinceId","_ref22$limit","limit","MASTODON_FOLLOWING_URL","args","filter","_","parseUser","apiService","verifyCredentials","user","fetchTimeline","_ref36","timeline","_ref36$since","since","_ref36$until","until","_ref36$userId","userId","_ref36$tag","_ref36$withMuted","withMuted","isNotifications","public","friends","dms","notifications","publicAndExternal","media","favorites","queryString","_map3","param","parseNotification","parseStatus","fetchPinnedStatuses","_ref37","fetchConversation","_ref27","urlContext","MASTODON_STATUS_CONTEXT_URL","_ref28","ancestors","descendants","fetchStatus","_ref29","MASTODON_STATUS_URL","exportFriends","_ref23","_ref24","_asyncToGenerator3","_regenerator2","mark","_callee","more","users","wrap","_context","prev","next","_last3","sent","_concat3","t0","stop","_x","_x2","this","arguments","fetchFollowers","_ref25","_ref25$limit","MASTODON_FOLLOWERS_URL","followUser","_ref10","MASTODON_FOLLOW_URL","unfollowUser","_ref11","MASTODON_UNFOLLOW_URL","pinOwnStatus","_ref12","unpinOwnStatus","_ref13","muteConversation","_ref14","unmuteConversation","_ref15","blockUser","_ref16","MASTODON_BLOCK_USER_URL","unblockUser","_ref17","MASTODON_UNBLOCK_USER_URL","fetchUser","_ref20","MASTODON_USER_URL","fetchUserRelationship","_ref21","MASTODON_USER_RELATIONSHIPS_URL","favorite","_ref38","unfavorite","_ref39","retweet","_ref40","unretweet","_ref41","postStatus","_ref42","spoilerText","visibility","sensitive","poll","_ref42$mediaIds","mediaIds","inReplyToStatusId","contentType","form","FormData","pollOptions","append","forEach","val","some","option","normalizedPoll","expires_in","expiresIn","multiple","_keys2","deleteStatus","_ref43","MASTODON_DELETE_URL","uploadMedia","_ref44","formData","parseAttachment","fetchMutes","_ref54","muteUser","_ref55","unmuteUser","_ref56","subscribeUser","_ref57","unsubscribeUser","_ref58","fetchBlocks","_ref59","fetchOAuthTokens","_ref60","revokeOAuthToken","_ref61","tagUser","_ref30","nicknames","_objectWithoutProperties3","screen_name","tags","untagUser","_ref31","deleteUser","_ref35","ADMIN_USERS_URL","addRight","_ref32","deleteRight","_ref33","setActivationStatus","_ref34","ACTIVATION_STATUS_URL","register","_ref9","nickname","rest","locale","agreement","RegistrationError","getCaptcha","resp","updateAvatar","_ref5","avatar","updateBg","_ref6","background","updateProfile","_ref8","updateBanner","_ref7","banner","importBlocks","_ref45","file","importFollows","_ref46","deleteAccount","_ref47","password","changePassword","_ref48","newPassword","newPasswordConfirmation","settingsMFA","_ref49","mfaDisableOTP","_ref50","generateMfaBackupCodes","_ref53","mfaSetupOTP","_ref52","mfaConfirmOTP","_ref51","token","fetchFollowRequests","_ref26","approveUser","_ref18","MASTODON_APPROVE_USER_URL","denyUser","_ref19","MASTODON_DENY_USER_URL","suggestions","_ref62","markNotificationsAsSeen","_ref63","vote","_ref64","pollId","choices","fetchPoll","_ref65","fetchFavoritedByUsers","_ref66","fetchRebloggedByUsers","_ref67","reportUser","_ref68","statusIds","comment","forward","account_id","status_ids","updateNotificationSettings","_ref4","settings","_each3","search2","_ref70","q","offset","following","MASTODON_SEARCH_2","accounts","u","statuses","searchUsers","_ref69","query","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_1ae34aee_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_5e65c9ec_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","_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_c1cf1a80_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_status_vue__WEBPACK_IMPORTED_MODULE_1__","_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_056a5e34_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","classList","add","styleEl","styleSheet","sheet","insertRule","radii","colors","shadows","fonts","remove","getCssShadow","usesDropShadow","inset","shad","x","y","blur","spread","concat","getCssColor","color","alpha","getCssShadowFilter","Number","startsWith","generateColors","opacity","alert","faint","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","htmlColors","solid","complete","generateRadii","inputRadii","btnRadius","endsWith","checkbox","avatarAlt","tooltip","attachment","generateFonts","interface","family","post","postCode","generateShadows","top","shadow","buttonInsetFakeBorders","inputInsetFakeBorders","hoverGlow","popup","avatarStatus","panelHeader","button","buttonHover","buttonPressed","composePreset","getThemes","themes","catch","setStyle","href","cssEl","addEventListener","baseEl","_times3","toUpperCase","getComputedStyle","getPropertyValue","removeChild","setPreset","isV1","Array","isArray","bgRgb","fgRgb","textRgb","linkRgb","cRedRgb","cGreenRgb","cBlueRgb","cOrangeRgb","themeLoaded","REDIRECT_URI","location","origin","getOrCreateApp","clientId","clientSecret","instance","___pleromafe_commit_hash","Date","toISOString","app","client_id","client_secret","oauth","getClientToken","login","response_type","redirect_uri","scope","_reduce3","encoded","getToken","code","getTokenWithCredentials","username","verifyOTPCode","mfaToken","verifyRecoveryCode","revokeToken","_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_06d49b5c_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_conversation_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_329c7806_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_effb8e08_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","timelines","created","dispatch","destroyed","getExcludedStatusIdsByPinning","pinnedStatusIds","ids","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_step","_iterator","_getIterator3","done","return","props","paused","unfocused","bottomedOut","timelineError","newStatusCount","newStatusCountStr","flushMarker","classes","root","embedded","header","footer","excludedStatusIdsObject","visibleStatuses","_keyBy3","pinnedStatusIdsObject","Status","Conversation","store","currentUser","showImmediately","scrollLoad","api","fetchers","timelineName","timelineFetcher","fetchAndUpdate","mounted","hidden","handleVisibilityChange","handleShortKey","removeEventListener","methods","tagName","toLowerCase","showNewStatuses","excludeUserId","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","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","statusSummary","summary","_filter3","muteWord","muted","inProfile","thread_muted","hideFilteredStatuses","hideStatus","hideReply","isFocused","tallStatus","statusnet_html","longSubject","in_reply_to_status_id","in_reply_to_screen_name","getters","findUser","replyVisibility","checkFollowing","attentions","taggedUser","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","hidePostStats","Attachment","FavoriteButton","RetweetButton","ExtraButtons","PostStatusForm","Poll","UserCard","UserAvatar","Gallery","LinkPreview","AvatarList","Timeago","visibilityIcon","showError","clearError","linkClicked","closest","className","attn","find","mentionMatchesUrl","stopPropagation","preventDefault","$router","rel","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","status.repeat_num","num","status.fave_num","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","stopGifs","animated","onLoad","canvas","$refs","width","naturalWidth","naturalHeight","getContext","drawImage","onError","imageLoadError","loopVideo","onVideoDataLoad","srcElement","webkitAudioDecodedByteCount","loopVideoSilentOnly","mozHasAudio","audioTracks","hidePostStatsLocal","favorited","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","interval","localeDateString","time","parse","toLocaleString","refreshRelativeTimeObject","nowThreshold","longFormat","relativeTimeShort","autoUpdate","confirm","pinStatus","unpinStatus","canDelete","rights","moderator","admin","canPin","canMute","_offset_finderService","MediaUpload","EmojiInput","PollForm","ScopeSelector","resize","textarea","textLength","setSelectionRange","replyTo","focus","$route","scopeCopy","_ref$attentions","allAttentions","unshift","_reject3","mentions","attention","buildMentionsString","repliedUser","copyMessageScope","default_scope","postContentType","dropFiles","submitDisabled","posting","highlighted","newStatus","subject","files","caret","pollFormVisible","userDefaultScope","showAllScopes","minimalScopesMode","emojiUserSuggestor","_suggestor2","emoji","_toConsumableArray3","customEmoji","updateUsersList","emojiSuggestor","statusLength","spoilerTextLength","statusLengthLimit","textlimit","hasStatusLengthLimit","charactersLeft","isOverLengthLimit","alwaysShowSubject","alwaysShowSubjectInput","postFormats","safeDMEnabled","safeDM","pollsAvailable","pollLimits","max_options","hideScopeNotice","pollContentError","statusPoster","mediaUpload","clearFile","clearPollForm","el","style","addMediaFile","fileInfo","enableSubmit","removeMediaFile","indexOf","uploadFailed","errString","templateArgs","disableSubmit","paste","clipboardData","fileDrop","dataTransfer","fileDrag","dropEffect","onEmojiInputInput","$nextTick","Element","rootRef","scrollerRef","topPaddingStr","bottomPaddingStr","vertPadding","substring","oldHeightStr","oldHeight","currentScroll","scrollY","scrollerBottomBorder","newHeight","scrollHeight","rootBottomBorder","findOffset","targetScroll","scroll","showEmojiPicker","triggerShowPicker","changeVis","togglePollForm","setPoll","pollForm","clear","dismissScopeNotice","uploading","uploadReady","uploadFile","self","uploadlimit","filesize","fileSizeFormatService","fileSizeFormat","allowedsize","filesizeunit","unit","allowedsizeunit","statusPosterService","fileData","contains","change","fileInfos","currentScope","initialScope","showNothing","showPublic","showUnlisted","showPrivate","showDirect","originalScope","shouldShow","css","selected","unlisted","private","direct","showAll","userDefault","onScopeChange","suggest","required","Function","String","enableEmojiPicker","Boolean","hideEmojiButton","enableStickerPicker","blurTimeout","showPicker","temporarilyHideSuggestions","keepOpen","disableClickOutside","EmojiPicker","padEmoji","firstchar","textAtCaret","matchedSuggestions","_take3","imageUrl","showSuggestions","wordAtCaret","word","Completion","wordAtPosition","slots","$slots","slot","elm","onBlur","onFocus","onPaste","onKeyUp","onKeyDown","onClickInput","onTransition","onCompositionUpdate","unmounted","scrollIntoView","togglePicker","replace","replacement","newValue","replaceWord","insert","insertion","before","after","isSpaceRegex","spaceBefore","spaceAfter","position","replaceText","suggestion","len","start","cycleBackward","cycleForward","setCaret","onClick","ctrlKey","shiftKey","onInput","onClickOutside","onStickerUploaded","onStickerUploadFailed","selectionStart","_input$elm","offsetTop","picker","filterByKeyword","list","keyword","displayText","labelKey","random","activeGroup","showingStickers","groupsScrolledClass","StickerPicker","onEmoji","setShowStickers","scrolledGroup","scrollTopMax","emojisView","group","toggleStickers","activeGroupView","stickersAvailable","stickers","emojis","standardEmojis","customEmojis","stickerPickerEnabled","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","hideUserStatsLocal","hideUserStats","user-card-rounded-t","rounded","user-card-rounded","user-card-bordered","bordered","customTheme","tintColor","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","ProgressButton","requestFollow","requestUnfollow","setProfileView","switcher","parentNode","zoomAvatar","profile_image_url_original","mentionUser","_stillImage","showPlaceholder","imgSrc","disabled","click","progress","showDropDown","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","onCancel","rows","_chunk3","lastAttachment","allButLastRow","_dropRight3","rowHeight","itemsPerRow","useContainFit","imageLoaded","useImage","card","image","useDescription","description","test","newImg","Image","slicedUsers","sortById","idA","idB","seqA","seqB","isSeqA","_isNan2","isSeqB","conversation","expanded","isPage","originalStatusId","conversationId","getConversationId","isExpanded","_clone3","conversationsObject","statusIndex","_findIndex3","sort","sortAndFilterConversation","replies","irid","newVal","oldVal","newConversationId","oldConversationId","setHighlight","getReplies","getHighlight","_get3","PublicAndExternalTimeline","FriendsTimeline","TagTimeline","_conversation","conversationPage","_notifications","tabModeDict","likes+repeats","follows","Interactions","filterMode","onModeSwitch","Notifications","_notification_utils","minimalMode","mainClass","notificationsFromStore","unseenNotifications","unseenNotificationsFromStore","visibleNotifications","visibleNotificationsFromStore","unseenCount","Notification","markAsSeen","fetchOlderNotifications","notificationsFetcher","notifs","getUser","notification","usersObject","from_profile","userInStore","needMute","DMs","FollowerList","_with_load_more2","select","_get2","destroy","childPropName","additionalPropNames","List","FriendList","UserProfile","tab","routeParams","load","stopFetching","isUs","followsTabVisible","hide_follows","followersTabVisible","hide_followers","userNameOrId","startFetchingTimeline","loadById","reason","errorMessage","switchUser","onTabSwitch","$route.params.id","$route.params.name","$route.query","FollowCard","inProgress","requestSent","BasicUserCard","isMe","items","getKey","item","Search","loaded","searchTerm","userIds","hashtags","currenResultTab","search","newQuery","searchInput","getActiveTab","resultCount","tabName","onResultTabSwitch","lastHistoryRecord","hashtag","_version","hideAttachmentsLocal","padEmojiLocal","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","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","display","importData","filePicker","reader","FileReader","JSON","validator","readAsText","languageCodes","_messages2","languageNames","getLanguageName","language","interfaceLanguage","$i18n","ja","ja_pedantic","zh","_iso2","getName","_vuelidate","_validators","_vuex","registration","mixins","validationMixin","email","fullname","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","passwordReset","success","throttled","mailerEnabled","dismissError","server","_password_reset2","BlockList","_with_subscription2","SelectableList","MuteList","UserSettings","newName","newBio","_unescape2","newLocked","locked","newNoRichText","no_rich_text","newDefaultScope","hideFollows","hideFollowers","hideFollowsCount","hide_follows_count","hideFollowersCount","hide_followers_count","showRole","show_role","role","discoverable","pickAvatarBtnVisible","bannerUploading","backgroundUploading","bannerPreview","backgroundPreview","bannerUploadError","backgroundUploadError","deletingAccount","deleteAccountConfirmPasswordInput","deleteAccountError","changePasswordInputs","changedPassword","changePasswordError","activeTab","notificationSettings","notification_settings","ImageCropper","Autosuggest","BlockCard","MuteCard","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","_this5","generateExportableUsersContent","is_local","hostname","getFollowsContent","getBlocksContent","confirmDelete","_this6","res","_this7","logout","activateTab","filterUnblockedUsers","_this8","_reject2","statusnet_blocking","filterUnMutedUsers","_this9","queryUserIds","blockUsers","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","blocked","Checkbox","allKeys","filteredSelected","allSelected","noneSelected","someSelected","isSelected","toggle","toggleAll","model","prop","placeholder","term","results","resultsVisible","filtered","fetchResults","onInputClick","submitButtonLabel","successMessage","dismiss","getContent","exportButtonLabel","processingMessage","processing","process","content","fileToDownload","available","enabled","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","access_token","LoginForm","isPasswordAuth","requiredPassword","isTokenAuth","requiredToken","loggingIn","mapGetters","mapMutations","submitToken","submitPassword","oauthApi","requireMFA","focusOnPasswordInput","passwordInput","authApp","authSettings","mfa_token","mfaApi","_user_profile_link_generator","chatPanel","currentMessage","channel","collapsed","messages","chat","togglePanel","WhoToFollow","getWhoToFollow","showWhoToFollow","reply","acct","externalUser","About","InstanceSpecificPanel","FeaturesPanel","TermsOfServicePanel","showFeaturesPanel","instanceSpecificPanelContent","chatAvailable","gopher","gopherAvailable","whoToFollow","suggestionsEnabled","mediaProxy","_window_utils","UserPanel","NavPanel","SearchBar","WhoToFollowPanel","ChatPanel","MediaModal","SideDrawer","MobilePostStatusButton","MobileNav","UserReportingModal","PostStatusModal","mobileActivePanel","searchBarHidden","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","onSearchBarToggled","windowWidth","AuthForm","_follow_request_fetcher","followRequestFetcher","startFetching","followRequestCount","route","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","scrollingDown","inputActive","oldScrollPos","amountScrolled","activateFloatingPostButtonAutohide","handleOSK","deactivateFloatingPostButtonAutohide","isLoggedIn","isHidden","isEnabled","handleScrollStart","handleScrollEnd","openPostForm","smallPhone","innerWidth","smallPhoneKbOpen","biggerPhoneKbOpen","_debounce3","leading","trailing","notificationsCloseGesture","notificationsOpen","DIRECTION_RIGHT","closeMobileNotifications","toggleMobileSidebar","sideDrawer","openMobileNotifications","notificationsTouchStart","notificationsTouchMove","onScroll","_ref$target","clientHeight","statusIdsToReport","isOpen","reports","modalActivated","remoteInstance","substr","resetState","closeModal","isChecked","toggleStatus","resettingForm","isFormVisible","Vue","component","renderOnlyFocused","onSwitch","scrollableTabs","active","findIndex","activeIndex","render","h","tabs","classesTab","classesWrapper","attrs","class","on","title","label","contents","_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_1bc509fc_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_ac499830_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_618ed05f_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_post_status_form_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_5637bff8_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_c1790f52_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_list_vue__WEBPACK_IMPORTED_MODULE_1__","staticRenderFns","_vm","_h","$createElement","_c","_self","staticClass","ref","_e","_v","loop","controls","playsinline","loadeddata","_obj","_s","directives","rawName","expression","$event","small","large_thumb_url","allowPlay","thumb_url","domProps","innerHTML","oembedHTML","fave_num","repeat_num","datetime","_l","path","auto-update","now-threshold","placement","container","pinned","drop","dragover","staticStyle","composing","refInFor","_i","$$a","$$el","$$c","$$i","for","uploaded","upload-failed","_t","enable-sticker-picker","sticker-uploaded","sticker-upload-failed","detailText","maxlength","keydown","_k","$set","$$selectedVal","_value","autocomplete","to","enable-emoji-picker","callback","$$v","hide-emoji-button","metaKey","keyup","compositionupdate","show-all","user-default","original-scope","initial-scope","on-scope-change","postFormat","visible","update-poll","drop-files","avatar-compact","better-shadow","alt","image-load-error","action","dark-overlay","currentTarget","menu-checkbox-checked","pressed","on-cancel","hide-bio","hideBio","_m","follows_you","subscribed","requested","friends_count","followers_count","description_html","row","contain-fit","cover-fit","set-media","allow-play","small-image","provider_name","status-el_focused","status-conversation","inlineExpanded","isPreview","is-retweet","data-tags","nativeOn","!click","_f","external_url","expandable","aria-label","mouseenter","mouseleave","mouseout","is-preview","tall-status","tall-status-hider_focused","base-poll","button-icon-active","replies_count","logged-in","onSuccess","reply-to","replied-user","copy-message-scope","posted","inline-expanded","collapsable","show-pinned","in-conversation","in-profile","goto","statusesObject","status-id","pinned-status-ids-object","timeline-name","is-page","no-heading","minimal","unseen","on-switch","minimal-mode","filter-mode","noFollowsYou","empty","viewing","allow-zooming-avatar","active-tab","render-only-focused","user-id","pinned-status-ids","scopedSlots","_u","fn","no-follows-you","uses","hardMax","hardMin","step","__r","custom","large","exportLabel","importLabel","importFailedText","export-object","export-label","import-label","import-failed-text","on-import","hard-min","no-inherit","langCode","modifiers","number","_n","$forceUpdate","form-group--error","$error","trim","textContent","accept","indeterminate","get-key","selectable-list-item-selected-inner","activate","backup-codes","classname","submit-handler","close","followers","non_follows","non_followers","success-message","error-message","get-content","export-button-label","refresh","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","_b","toggled","_ref$media","_ref$inReplyToStatusI","_ref$contentType","noIdUpdate","_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","ar","require","ca","cs","de","en","eo","es","et","eu","fi","fr","ga","he","hu","it","ko","nb","nl","oc","pl","pt","ro","ru","te","_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_2a0da20a_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_6fce6a82_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","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_28e8cbf1_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_55e3ae24_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_emoji_input_vue__WEBPACK_IMPORTED_MODULE_1__","child","parent","_ref$top","_ref$left","left","ignorePadding","offsetLeft","_findPadding","findPadding","topPadding","leftPadding","offsetParent","_findPadding2","leftPaddingStr","debounceUserSearch","firstChar","suggestEmoji","suggestUsers","noPrefix","aScore","bScore","newUsers","_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_e95e446e_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_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_9f751ae6_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_progress_button_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_ea88f12a_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_a377bb38_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_87056ae2_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_02484cf4_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_20b6e7b3_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_7ea51572_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_5b01187b_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_3443e05c_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_97c834ba_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","clientWidth","currentLocale","navigator","use","Vuex","VueRouter","VueI18n","VueChatScroll","VueClickOutside","PortalVue","VBodyScrollLock","VTooltip","i18n","fallbackLocale","persistedStateOptions","paths","persistedState","_persisted_state2","Store","interfaceModule","instanceModule","statusesModule","usersModule","apiModule","configModule","chatModule","oauthModule","authFlow","authFlowModule","mediaViewerModule","oauthTokensModule","reportsModule","pollsModule","postStatusModule","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","statusnet_conversation_id","addNewStatuses","_ref2$user","_ref2$noIdUpdate","_isArray3","timelineObject","maxNew","_maxBy3","minNew","_minBy3","newer","addStatus","addToTimeline","resultForCurrentTimeline","processors","retweetedStatus","counter","favoriteStatus","deletion","uri","_remove3","removeStatusFromGlobalStorage","follow","unknown","addNewNotifications","rootGetters","notifObj","profile_image_url","i18nString","removeStatus","_first3","oldTimeline","_slice3","resetStatuses","emptyState","clearTimeline","_ref8$excludeUserId","clearNotifications","setFavorited","setFavoritedConfirm","setMutedStatus","setRetweeted","setRetweetedConfirm","setDeleted","setManyDeleted","condition","setLoading","setNsfw","setError","setNotificationsLoading","setNotificationsError","setNotificationsSilence","queueFlush","addRepeats","rebloggedByUsers","addFavs","favoritedByUsers","updateStatusWithPoll","_ref27$showImmediatel","_ref27$timeline","_ref27$noIdUpdate","markStatusesAsDeleted","fetchFavsAndRepeats","fetchFavs","fetchRepeats","output","masto","mastoShort","addEmojis","following_count","bot","pleroma","relationship","chat_token","followed_by","blocking","muting","subscribing","is_moderator","is_admin","source","privacy","delete_others_notice","friendIds","followerIds","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","qvitter_delete_notice","activity_type","isNsfw","account","media_attachments","favourite","is_seen","parsedNotice","notice","ntype","favorited_status","statusCode","captureStackTrace","_create2","constructor","_classCallCheck3","_possibleConstructorReturn3","__proto__","_getPrototypeOf2","ap_id","humanizeErrors","errors","errs","_capitalize3","_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","setPinnedToUser","setUserForStatus","setUserForNotification","setColor","signUpSuccess","signUpFailure","blocks","mutes","registerPushNotifications","unregisterPushNotifications","retweetedUsers","_compact3","notificationIds","notificationsObject","relevantNotifications","userInfo","_x5","_x6","_callee2","_context2","_x7","_store$rootState","userToken","_backend_interactor_service2","loginUser","requestPermission","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","_backend_interactor_service","_phoenix","socket","setBackendInteractor","addFetcher","fetcherName","fetcher","removeFetcher","setWsToken","wsToken","setSocket","setFollowRequests","clearInterval","initializeSocket","Socket","connect","disconnectFromSocket","disconnect","removeFollowRequest","setOption","setChannel","addMessage","setMessages","initializeChat","msg","appToken","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","openPostStatusModal","closePostStatusModal","_ref$key","_ref$paths","_ref$getState","getState","storage","getItem","_ref$setState","setState","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","bodyScrollLock","previousNavPaddingRight","previousAppBgWrapperRight","disableBodyScroll","scrollBarGap","reserveScrollBarGap","navEl","getElementById","paddingRight","appBgWrapperEl","enableBodyScroll","directive","inserted","binding","componentUpdated","oldValue","unbind","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","getStickers","_callee7","values","_context7","_callee6","resPack","_context6","pack","localeCompare","t1","getStaticEmoji","_callee8","_context8","getCustomEmoji","_callee9","_context9","image_url","_x8","getAppSecret","_callee10","_context10","_x9","getNodeInfo","_callee11","metadata","features","software","_context11","web","federation","mrf_policies","_x10","setConfig","_callee12","configInfos","_context12","_x11","checkOAuthToken","_callee14","_context14","_callee13","_context13","_x13","_x14","_x12","afterStoreSetup","_callee15","router","_context15","routes","_routes2","scrollBehavior","_from","savedPosition","matched","dontScroll","App","_x15","validateAuthenticatedRoute","redirect","_to","beforeEnter","ConversationPage","Settings","Registration","PasswordReset","OAuthCallback","_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_5f2a502e_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_e06359e2_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_0df86888_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_6feb4525_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_58a06a46_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_4326bedd_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_emoji_picker_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_emoji_picker_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_4e9b5d61_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_emoji_picker_vue__WEBPACK_IMPORTED_MODULE_1__","_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_1f896331_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_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_4226f146_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_moderation_tools_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_eafd78a6_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_4127a56c_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_7c8d99ac_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_4cea5bcf_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_f6923484_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_22490669_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_047310d3_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_46654d24_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_956f2436_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_b3ea6222_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_294f8b6d_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_17386938_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","entries","$props","fetchEntries","newEntries","_isEmpty2","_defineProperty3","$listeners","$scopedSlots","children","_babel_loader_search_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_search_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_3962ec42_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_search_vue__WEBPACK_IMPORTED_MODULE_1__","_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_73d046ee_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_81777656_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_4f14fbae_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_0edf8dfc_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_3203db10_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_35d05e9f_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_35b6f354_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_177f3bfe_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_registration_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_password_reset_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_password_reset_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_3e4c9998_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_password_reset_vue__WEBPACK_IMPORTED_MODULE_1__","MASTODON_PASSWORD_RESET_URL","_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_d6fa1c54_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_3babea86_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_633eab92_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_4de27707_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_1c291d00_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_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_5fe32d1d_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_4927596c_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_7229517a_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_exporter_vue__WEBPACK_IMPORTED_MODULE_1__","fetchedData","fetchData","_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_e9d3ba70_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_613f1377_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_df66df96_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_9c427644_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_1edf2e22_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_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_38aaa196_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_129661d4_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_b4428228_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_4f8c3288_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_1839d1a6_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_687e38f6_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_447b276a_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_0c6dc368_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_170e1150_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_search_bar_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_search_bar_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_723d6cec_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_search_bar_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_b4d31272_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_8821b536_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_post_status_button_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_mobile_post_status_button_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_336b066e_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_mobile_post_status_button_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_26b7478b_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_c5b7cf3a_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_user_reporting_modal_vue__WEBPACK_IMPORTED_MODULE_1__","_babel_loader_post_status_modal_js__WEBPACK_IMPORTED_MODULE_0__","_babel_loader_post_status_modal_js__WEBPACK_IMPORTED_MODULE_0___default","_node_modules_vue_loader_lib_template_compiler_index_id_data_v_159b2d4a_hasScoped_false_optionsId_0_buble_transforms_node_modules_vue_loader_lib_selector_type_template_index_0_post_status_modal_vue__WEBPACK_IMPORTED_MODULE_1__","component_normalizer","font-family"],"mappings":"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","file":"static/js/app.c104f87a2caef36ab4e0.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// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"static/js/\" + ({}[chunkId]||chunkId) + \".\" + {\"2\":\"48f39bc510b7c0a7fca6\"}[chunkId] + \".js\"\n \t}\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 \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n \t\t\t// a Promise means \"currently loading\".\n \t\t\tif(installedChunkData) {\n \t\t\t\tpromises.push(installedChunkData[2]);\n \t\t\t} else {\n \t\t\t\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\t// create error before stack unwound to get useful stacktrace later\n \t\t\t\tvar error = new Error();\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\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 \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\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([442,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 { RegistrationError, StatusCodeError } from '../errors/errors'\n\n/* eslint-env browser */\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 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_FOLLOW_REQUESTS_URL = '/api/v1/follow_requests'\nconst MASTODON_APPROVE_USER_URL = id => `/api/v1/follow_requests/${id}/authorize`\nconst MASTODON_DENY_USER_URL = id => `/api/v1/follow_requests/${id}/reject`\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_SUBSCRIBE_USER = id => `/api/v1/pleroma/accounts/${id}/subscribe`\nconst MASTODON_UNSUBSCRIBE_USER = id => `/api/v1/pleroma/accounts/${id}/unsubscribe`\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`\nconst MASTODON_MUTE_CONVERSATION = id => `/api/v1/statuses/${id}/mute`\nconst MASTODON_UNMUTE_CONVERSATION = id => `/api/v1/statuses/${id}/unmute`\nconst MASTODON_SEARCH_2 = `/api/v2/search`\nconst MASTODON_USER_SEARCH_URL = '/api/v1/accounts/search'\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, params, 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 (params) {\n url += '?' + Object.entries(params)\n .map(([key, value]) => encodeURIComponent(key) + '=' + encodeURIComponent(value))\n .join('&')\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) => {\n if (response.ok) {\n return response.json()\n } else {\n return response.json().then((error) => { throw new RegistrationError(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 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 muteConversation = ({ id, credentials }) => {\n return promisedRequest({ url: MASTODON_MUTE_CONVERSATION(id), credentials, method: 'POST' })\n .then((data) => parseStatus(data))\n}\n\nconst unmuteConversation = ({ id, credentials }) => {\n return promisedRequest({ url: MASTODON_UNMUTE_CONVERSATION(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 = MASTODON_APPROVE_USER_URL(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 = MASTODON_DENY_USER_URL(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 = MASTODON_FOLLOW_REQUESTS_URL\n return fetch(url, { headers: authHeaders(credentials) })\n .then((data) => data.json())\n .then((data) => data.map(parseUser))\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 subscribeUser = ({ id, credentials }) => {\n return promisedRequest({ url: MASTODON_SUBSCRIBE_USER(id), credentials, method: 'POST' })\n}\n\nconst unsubscribeUser = ({ id, credentials }) => {\n return promisedRequest({ url: MASTODON_UNSUBSCRIBE_USER(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 searchUsers = ({ credentials, query }) => {\n return promisedRequest({\n url: MASTODON_USER_SEARCH_URL,\n params: {\n q: query,\n resolve: true\n },\n credentials\n })\n .then((data) => data.map(parseUser))\n}\n\nconst search2 = ({ credentials, q, resolve, limit, offset, following }) => {\n let url = MASTODON_SEARCH_2\n let params = []\n\n if (q) {\n params.push(['q', encodeURIComponent(q)])\n }\n\n if (resolve) {\n params.push(['resolve', resolve])\n }\n\n if (limit) {\n params.push(['limit', limit])\n }\n\n if (offset) {\n params.push(['offset', offset])\n }\n\n if (following) {\n params.push(['following', true])\n }\n\n let 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 search result', data)\n })\n .then((data) => { return data.json() })\n .then((data) => {\n data.accounts = data.accounts.slice(0, limit).map(u => parseUser(u))\n data.statuses = data.statuses.slice(0, limit).map(s => parseStatus(s))\n return data\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 muteConversation,\n unmuteConversation,\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 subscribeUser,\n unsubscribeUser,\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 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 search2,\n searchUsers\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-1ae34aee\\\",\\\"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-5e65c9ec\\\",\\\"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!./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-c1cf1a80\\\",\\\"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!../../../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-056a5e34\\\",\\\"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.classList.add('hidden')\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.classList.remove('hidden')\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.classList.add('hidden')\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.classList.remove('hidden')\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","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 revokeToken = ({ app, instance, token }) => {\n const url = `${instance}/oauth/revoke`\n const form = new window.FormData()\n\n form.append('client_id', app.clientId)\n form.append('client_secret', app.clientSecret)\n form.append('token', token)\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 revokeToken\n}\n\nexport default oauth\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-06d49b5c\\\",\\\"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","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-329c7806\\\",\\\"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-effb8e08\\\",\\\"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, keyBy } from 'lodash'\n\nexport const getExcludedStatusIdsByPinning = (statuses, pinnedStatusIds) => {\n const ids = []\n if (pinnedStatusIds && pinnedStatusIds.length > 0) {\n for (let status of statuses) {\n if (!pinnedStatusIds.includes(status.id)) {\n break\n }\n ids.push(status.id)\n }\n }\n return ids\n}\n\nconst Timeline = {\n props: [\n 'timeline',\n 'timelineName',\n 'title',\n 'userId',\n 'tag',\n 'embedded',\n 'count',\n 'pinnedStatusIds',\n 'inProfile'\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 // id map of statuses which need to be hidden in the main list due to pinning logic\n excludedStatusIdsObject () {\n const ids = getExcludedStatusIdsByPinning(this.timeline.visibleStatuses, this.pinnedStatusIds)\n // Convert id array to object\n return keyBy(ids)\n },\n pinnedStatusIdsObject () {\n return keyBy(this.pinnedStatusIds)\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, excludeUserId: true })\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 'inProfile'\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 statusSummary = this.status.summary.toLowerCase()\n const hits = filter(this.muteWords, (muteWord) => {\n return statusText.includes(muteWord.toLowerCase()) || statusSummary.includes(muteWord.toLowerCase())\n })\n\n return hits\n },\n muted () { return !this.unmuted && ((!this.inProfile && this.status.user.muted) || (!this.inConversation && this.status.thread_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 const 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 const taggedUser = this.$store.getters.findUser(this.status.attentions[i].id)\n if (checkFollowing && taggedUser && taggedUser.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 hidePostStats () {\n return typeof this.$store.state.config.hidePostStats === 'undefined'\n ? this.$store.state.instance.hidePostStats\n : this.$store.state.config.hidePostStats\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 const target = event.target.closest('.status-content a')\n if (target) {\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.rel.match(/(?:^|\\s)tag(?:$|\\s)/) || 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 'status.repeat_num': function (num) {\n // refetch repeats when repeat_num is changed in any way\n if (this.isFocused && this.statusFromGlobalRepository.rebloggedBy && this.statusFromGlobalRepository.rebloggedBy.length !== num) {\n this.$store.dispatch('fetchRepeats', this.status.id)\n }\n },\n 'status.fave_num': function (num) {\n // refetch favs when fave_num is changed in any way\n if (this.isFocused && this.statusFromGlobalRepository.favoritedBy && this.statusFromGlobalRepository.favoritedBy.length !== num) {\n this.$store.dispatch('fetchFavs', this.status.id)\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\n :datetime=\"time\"\n :title=\"localeDateString\"\n >\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 computed: {\n localeDateString () {\n return typeof this.time === 'string'\n ? new Date(Date.parse(this.time)).toLocaleString()\n : this.time.toLocaleString()\n }\n },\n created () {\n this.refreshRelativeTimeObject()\n },\n destroyed () {\n clearTimeout(this.interval)\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>\n","const ExtraButtons = {\n props: [ 'status' ],\n methods: {\n deleteStatus () {\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 pinStatus () {\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.$store.dispatch('unpinStatus', this.status.id)\n .then(() => this.$emit('onSuccess'))\n .catch(err => this.$emit('onError', err.error.error))\n },\n muteConversation () {\n this.$store.dispatch('muteConversation', this.status.id)\n .then(() => this.$emit('onSuccess'))\n .catch(err => this.$emit('onError', err.error.error))\n },\n unmuteConversation () {\n this.$store.dispatch('unmuteConversation', this.status.id)\n .then(() => this.$emit('onSuccess'))\n .catch(err => this.$emit('onError', err.error.error))\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 canMute () {\n return !!this.currentUser\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 { findOffset } from '../../services/offset_finder/offset_finder.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 updateUsersList: (input) => this.$store.dispatch('searchUsers', input)\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 this.resize(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 onEmojiInputInput (e) {\n this.$nextTick(() => {\n this.resize(this.$refs['textarea'])\n })\n },\n resize (e) {\n const target = e.target || e\n if (!(target instanceof window.Element)) { return }\n\n // Reset to default height for empty form, nothing else to do here.\n if (target.value === '') {\n target.style.height = null\n this.$refs['emoji-input'].resize()\n return\n }\n\n const rootRef = this.$refs['root']\n /* Scroller is either `window` (replies in TL), sidebar (main post form,\n * replies in notifs) or mobile post form. Note that getting and setting\n * scroll is different for `Window` and `Element`s\n */\n const scrollerRef = this.$el.closest('.sidebar-scroller') ||\n this.$el.closest('.post-form-modal-view') ||\n window\n\n // Getting info about padding we have to account for, removing 'px' part\n const topPaddingStr = window.getComputedStyle(target)['padding-top']\n const bottomPaddingStr = window.getComputedStyle(target)['padding-bottom']\n const topPadding = Number(topPaddingStr.substring(0, topPaddingStr.length - 2))\n const bottomPadding = Number(bottomPaddingStr.substring(0, bottomPaddingStr.length - 2))\n const vertPadding = topPadding + bottomPadding\n\n const oldHeightStr = target.style.height || ''\n const oldHeight = Number(oldHeightStr.substring(0, oldHeightStr.length - 2))\n\n /* Explanation:\n *\n * https://developer.mozilla.org/en-US/docs/Web/API/Element/scrollHeight\n * scrollHeight returns element's scrollable content height, i.e. visible\n * element + overscrolled parts of it. We use it to determine when text\n * inside the textarea exceeded its height, so we can set height to prevent\n * overscroll, i.e. make textarea grow with the text. HOWEVER, since we\n * explicitly set new height, scrollHeight won't go below that, so we can't\n * SHRINK the textarea when there's extra space. To workaround that we set\n * height to 'auto' which makes textarea tiny again, so that scrollHeight\n * will match text height again. HOWEVER, shrinking textarea can screw with\n * the scroll since there might be not enough padding around root to even\n * warrant a scroll, so it will jump to 0 and refuse to move anywhere,\n * so we check current scroll position before shrinking and then restore it\n * with needed delta.\n */\n\n // this part has to be BEFORE the content size update\n const currentScroll = scrollerRef === window\n ? scrollerRef.scrollY\n : scrollerRef.scrollTop\n const scrollerHeight = scrollerRef === window\n ? scrollerRef.innerHeight\n : scrollerRef.offsetHeight\n const scrollerBottomBorder = currentScroll + scrollerHeight\n\n // BEGIN content size update\n target.style.height = 'auto'\n const newHeight = target.scrollHeight - vertPadding\n target.style.height = `${newHeight}px`\n // END content size update\n\n // We check where the bottom border of root element is, this uses findOffset\n // to find offset relative to scrollable container (scroller)\n const rootBottomBorder = rootRef.offsetHeight + findOffset(rootRef, scrollerRef).top\n\n const textareaSizeChangeDelta = newHeight - oldHeight || 0\n const isBottomObstructed = scrollerBottomBorder < rootBottomBorder\n const rootChangeDelta = rootBottomBorder - scrollerBottomBorder\n const totalDelta = textareaSizeChangeDelta +\n (isBottomObstructed ? rootChangeDelta : 0)\n\n const targetScroll = currentScroll + totalDelta\n\n if (scrollerRef === window) {\n scrollerRef.scroll(0, targetScroll)\n } else {\n scrollerRef.scrollTop = targetScroll\n }\n\n this.$refs['emoji-input'].resize()\n },\n showEmojiPicker () {\n this.$refs['textarea'].focus()\n this.$refs['emoji-input'].triggerShowPicker()\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 EmojiPicker from '../emoji_picker/emoji_picker.vue'\nimport { take } from 'lodash'\nimport { findOffset } from '../../services/offset_finder/offset_finder.service.js'\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 enableEmojiPicker: {\n /**\n * Enables emoji picker support, this implies that custom emoji are supported\n */\n required: false,\n type: Boolean,\n default: false\n },\n hideEmojiButton: {\n /**\n * intended to use with external picker trigger, i.e. you have a button outside\n * input that will open up the picker, see triggerShowPicker()\n */\n required: false,\n type: Boolean,\n default: false\n },\n enableStickerPicker: {\n /**\n * Enables sticker picker support, only makes sense when enableEmojiPicker=true\n */\n required: false,\n type: Boolean,\n default: false\n }\n },\n data () {\n return {\n input: undefined,\n highlighted: 0,\n caret: 0,\n focused: false,\n blurTimeout: null,\n showPicker: false,\n temporarilyHideSuggestions: false,\n keepOpen: false,\n disableClickOutside: false\n }\n },\n components: {\n EmojiPicker\n },\n computed: {\n padEmoji () {\n return this.$store.state.config.padEmoji\n },\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 showSuggestions () {\n return this.focused &&\n this.suggestions &&\n this.suggestions.length > 0 &&\n !this.showPicker &&\n !this.temporarilyHideSuggestions\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('click', this.onClickInput)\n input.elm.addEventListener('transitionend', this.onTransition)\n input.elm.addEventListener('compositionupdate', this.onCompositionUpdate)\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('click', this.onClickInput)\n input.elm.removeEventListener('transitionend', this.onTransition)\n input.elm.removeEventListener('compositionupdate', this.onCompositionUpdate)\n }\n },\n methods: {\n triggerShowPicker () {\n this.showPicker = true\n this.$nextTick(() => {\n this.scrollIntoView()\n })\n // This temporarily disables \"click outside\" handler\n // since external trigger also means click originates\n // from outside, thus preventing picker from opening\n this.disableClickOutside = true\n setTimeout(() => {\n this.disableClickOutside = false\n }, 0)\n },\n togglePicker () {\n this.input.elm.focus()\n this.showPicker = !this.showPicker\n if (this.showPicker) {\n this.scrollIntoView()\n }\n },\n replace (replacement) {\n const newValue = Completion.replaceWord(this.value, this.wordAtCaret, replacement)\n this.$emit('input', newValue)\n this.caret = 0\n },\n insert ({ insertion, keepOpen }) {\n const before = this.value.substring(0, this.caret) || ''\n const after = this.value.substring(this.caret) || ''\n\n /* Using a bit more smart approach to padding emojis with spaces:\n * - put a space before cursor if there isn't one already, unless we\n * are at the beginning of post or in spam mode\n * - put a space after emoji if there isn't one already unless we are\n * in spam mode\n *\n * The idea is that when you put a cursor somewhere in between sentence\n * inserting just ' :emoji: ' will add more spaces to post which might\n * break the flow/spacing, as well as the case where user ends sentence\n * with a space before adding emoji.\n *\n * Spam mode is intended for creating multi-part emojis and overall spamming\n * them, masto seem to be rendering :emoji::emoji: correctly now so why not\n */\n const isSpaceRegex = /\\s/\n const spaceBefore = !isSpaceRegex.exec(before.slice(-1)) && before.length && this.padEmoji > 0 ? ' ' : ''\n const spaceAfter = !isSpaceRegex.exec(after[0]) && this.padEmoji ? ' ' : ''\n\n const newValue = [\n before,\n spaceBefore,\n insertion,\n spaceAfter,\n after\n ].join('')\n this.keepOpen = keepOpen\n this.$emit('input', newValue)\n const position = this.caret + (insertion + spaceAfter + spaceBefore).length\n if (!keepOpen) {\n this.input.elm.focus()\n }\n\n this.$nextTick(function () {\n // Re-focus inputbox after clicking suggestion\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 },\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 > 1) {\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 > 1) {\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 scrollIntoView () {\n const rootRef = this.$refs['picker'].$el\n /* Scroller is either `window` (replies in TL), sidebar (main post form,\n * replies in notifs) or mobile post form. Note that getting and setting\n * scroll is different for `Window` and `Element`s\n */\n const scrollerRef = this.$el.closest('.sidebar-scroller') ||\n this.$el.closest('.post-form-modal-view') ||\n window\n const currentScroll = scrollerRef === window\n ? scrollerRef.scrollY\n : scrollerRef.scrollTop\n const scrollerHeight = scrollerRef === window\n ? scrollerRef.innerHeight\n : scrollerRef.offsetHeight\n\n const scrollerBottomBorder = currentScroll + scrollerHeight\n // We check where the bottom border of root element is, this uses findOffset\n // to find offset relative to scrollable container (scroller)\n const rootBottomBorder = rootRef.offsetHeight + findOffset(rootRef, scrollerRef).top\n\n const bottomDelta = Math.max(0, rootBottomBorder - scrollerBottomBorder)\n // could also check top delta but there's no case for it\n const targetScroll = currentScroll + bottomDelta\n\n if (scrollerRef === window) {\n scrollerRef.scroll(0, targetScroll)\n } else {\n scrollerRef.scrollTop = targetScroll\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 if (!this.keepOpen) {\n this.showPicker = false\n }\n this.focused = true\n this.setCaret(e)\n this.resize()\n this.temporarilyHideSuggestions = false\n },\n onKeyUp (e) {\n const { key } = e\n this.setCaret(e)\n this.resize()\n\n // Setting hider in keyUp to prevent suggestions from blinking\n // when moving away from suggested spot\n if (key === 'Escape') {\n this.temporarilyHideSuggestions = true\n } else {\n this.temporarilyHideSuggestions = false\n }\n },\n onPaste (e) {\n this.setCaret(e)\n this.resize()\n },\n onKeyDown (e) {\n const { ctrlKey, shiftKey, key } = e\n // Disable suggestions hotkeys if suggestions are hidden\n if (!this.temporarilyHideSuggestions) {\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 // Probably add optional keyboard controls for emoji picker?\n\n // Escape hides suggestions, if suggestions are hidden it\n // de-focuses the element (i.e. default browser behavior)\n if (key === 'Escape') {\n if (!this.temporarilyHideSuggestions) {\n this.input.elm.focus()\n }\n }\n\n this.showPicker = false\n this.resize()\n },\n onInput (e) {\n this.showPicker = false\n this.setCaret(e)\n this.resize()\n this.$emit('input', e.target.value)\n },\n onCompositionUpdate (e) {\n this.showPicker = false\n this.setCaret(e)\n this.resize()\n this.$emit('input', e.target.value)\n },\n onClickInput (e) {\n this.showPicker = false\n },\n onClickOutside (e) {\n if (this.disableClickOutside) return\n this.showPicker = false\n },\n onStickerUploaded (e) {\n this.showPicker = false\n this.$emit('sticker-uploaded', e)\n },\n onStickerUploadFailed (e) {\n this.showPicker = false\n this.$emit('sticker-upload-Failed', e)\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 this.$refs.picker.$el.style.top = (offsetTop + offsetHeight) + 'px'\n }\n }\n}\n\nexport default EmojiInput\n","\nconst filterByKeyword = (list, keyword = '') => {\n return list.filter(x => x.displayText.includes(keyword))\n}\n\nconst EmojiPicker = {\n props: {\n enableStickerPicker: {\n required: false,\n type: Boolean,\n default: false\n }\n },\n data () {\n return {\n labelKey: String(Math.random() * 100000),\n keyword: '',\n activeGroup: 'custom',\n showingStickers: false,\n groupsScrolledClass: 'scrolled-top',\n keepOpen: false\n }\n },\n components: {\n StickerPicker: () => import('../sticker_picker/sticker_picker.vue')\n },\n methods: {\n onEmoji (emoji) {\n const value = emoji.imageUrl ? `:${emoji.displayText}:` : emoji.replacement\n this.$emit('emoji', { insertion: value, keepOpen: this.keepOpen })\n },\n highlight (key) {\n const ref = this.$refs['group-' + key]\n const top = ref[0].offsetTop\n this.setShowStickers(false)\n this.activeGroup = key\n this.$nextTick(() => {\n this.$refs['emoji-groups'].scrollTop = top + 1\n })\n },\n scrolledGroup (e) {\n const target = (e && e.target) || this.$refs['emoji-groups']\n const top = target.scrollTop + 5\n if (target.scrollTop <= 5) {\n this.groupsScrolledClass = 'scrolled-top'\n } else if (target.scrollTop >= target.scrollTopMax - 5) {\n this.groupsScrolledClass = 'scrolled-bottom'\n } else {\n this.groupsScrolledClass = 'scrolled-middle'\n }\n this.$nextTick(() => {\n this.emojisView.forEach(group => {\n const ref = this.$refs['group-' + group.id]\n if (ref[0].offsetTop <= top) {\n this.activeGroup = group.id\n }\n })\n })\n },\n toggleStickers () {\n this.showingStickers = !this.showingStickers\n },\n setShowStickers (value) {\n this.showingStickers = value\n },\n onStickerUploaded (e) {\n this.$emit('sticker-uploaded', e)\n },\n onStickerUploadFailed (e) {\n this.$emit('sticker-upload-failed', e)\n }\n },\n watch: {\n keyword () {\n this.scrolledGroup()\n }\n },\n computed: {\n activeGroupView () {\n return this.showingStickers ? '' : this.activeGroup\n },\n stickersAvailable () {\n if (this.$store.state.instance.stickers) {\n return this.$store.state.instance.stickers.length > 0\n }\n return 0\n },\n emojis () {\n const standardEmojis = this.$store.state.instance.emoji || []\n const customEmojis = this.$store.state.instance.customEmoji || []\n return [\n {\n id: 'custom',\n text: this.$t('emoji.custom'),\n icon: 'icon-smile',\n emojis: filterByKeyword(customEmojis, this.keyword)\n },\n {\n id: 'standard',\n text: this.$t('emoji.unicode'),\n icon: 'icon-picture',\n emojis: filterByKeyword(standardEmojis, this.keyword)\n }\n ]\n },\n emojisView () {\n return this.emojis.filter(value => value.emojis.length > 0)\n },\n stickerPickerEnabled () {\n return (this.$store.state.instance.stickers || []).length !== 0\n }\n }\n}\n\nexport default EmojiPicker\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 ProgressButton from '../progress_button/progress_button.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', 'allowZoomingAvatar' ],\n data () {\n return {\n followRequestInProgress: 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 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, ${tintColor}, ${tintColor})`,\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 ProgressButton\n },\n methods: {\n followUser () {\n const store = this.$store\n this.followRequestInProgress = true\n requestFollow(this.user, store).then(() => {\n this.followRequestInProgress = false\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 subscribeUser () {\n return this.$store.dispatch('subscribeUser', this.user.id)\n },\n unsubscribeUser () {\n return this.$store.dispatch('unsubscribeUser', 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 zoomAvatar () {\n const attachment = {\n url: this.user.profile_image_url_original,\n mimetype: 'image'\n }\n this.$store.dispatch('setMedia', [attachment])\n this.$store.dispatch('setCurrent', attachment)\n },\n mentionUser () {\n this.$store.dispatch('openPostStatusModal', { replyTo: true, repliedUser: this.user })\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.user.profile_image_url_original\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","<template>\n <button\n :disabled=\"progress || disabled\"\n @click=\"onClick\"\n >\n <template v-if=\"progress && $slots.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","import DialogModal from '../dialog_modal/dialog_modal.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 },\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 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 data () {\n return {\n imageLoaded: false\n }\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 created () {\n if (this.useImage) {\n const newImg = new Image()\n newImg.onload = () => {\n this.imageLoaded = true\n }\n newImg.src = this.card.image\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, get } 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 'statusId',\n 'collapsable',\n 'isPage',\n 'pinnedStatusIdsObject',\n 'inProfile'\n ],\n created () {\n if (this.isPage) {\n this.fetchConversation()\n }\n },\n computed: {\n status () {\n return this.$store.state.statuses.allStatusesObject[this.statusId]\n },\n originalStatusId () {\n if (this.status.retweeted_status) {\n return this.status.retweeted_status.id\n } else {\n return this.statusId\n }\n },\n conversationId () {\n return this.getConversationId(this.statusId)\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.originalStatusId })\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 // eslint-disable-next-line camelcase\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 statusId (newVal, oldVal) {\n const newConversationId = this.getConversationId(newVal)\n const oldConversationId = this.getConversationId(oldVal)\n if (newConversationId && oldConversationId && newConversationId === oldConversationId) {\n this.setHighlight(this.originalStatusId)\n } else {\n this.fetchConversation()\n }\n },\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.statusId })\n .then(({ ancestors, descendants }) => {\n this.$store.dispatch('addNewStatuses', { statuses: ancestors })\n this.$store.dispatch('addNewStatuses', { statuses: descendants })\n this.setHighlight(this.originalStatusId)\n })\n } else {\n this.$store.state.api.backendInteractor.fetchStatus({ id: this.statusId })\n .then((status) => {\n this.$store.dispatch('addNewStatuses', { statuses: [status] })\n this.fetchConversation()\n })\n }\n },\n getReplies (id) {\n return this.replies[id] || []\n },\n focused (id) {\n return (this.isExpanded) && id === this.statusId\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 },\n getConversationId (statusId) {\n const status = this.$store.state.statuses.allStatusesObject[statusId]\n return get(status, 'retweeted_status.statusnet_conversation_id', get(status, 'statusnet_conversation_id'))\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 statusId () {\n return this.$route.params.id\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 (key) {\n this.filterMode = tabModeDict[key]\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 unmuted: false\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 generateUserProfileLink (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 toggleMute () {\n this.unmuted = !this.unmuted\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 userProfileLink () {\n return this.generateUserProfileLink(this.user)\n },\n needMute () {\n return this.user.muted\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 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 defaultTabKey = 'statuses'\n\nconst UserProfile = {\n data () {\n return {\n error: false,\n userId: null,\n tab: defaultTabKey\n }\n },\n created () {\n const routeParams = this.$route.params\n this.load(routeParams.name || routeParams.id)\n this.tab = get(this.$route, 'query.tab', defaultTabKey)\n },\n destroyed () {\n this.stopFetching()\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 const startFetchingTimeline = (timeline, userId) => {\n // Clear timeline only if load another user's profile\n if (userId !== this.$store.state.statuses.timelines[timeline].userId) {\n this.$store.commit('clearTimeline', { timeline })\n }\n this.$store.dispatch('startFetchingTimeline', { timeline, userId })\n }\n\n const loadById = (userId) => {\n this.userId = userId\n startFetchingTimeline('user', userId)\n startFetchingTimeline('media', userId)\n if (this.isUs) {\n startFetchingTimeline('favorites', userId)\n }\n // Fetch all pinned statuses immediately\n this.$store.dispatch('fetchPinnedStatuses', userId)\n }\n\n // Reset view\n this.userId = null\n this.error = false\n\n // Check if user data is already loaded in store\n const user = this.$store.getters.findUser(userNameOrId)\n if (user) {\n loadById(user.id)\n } else {\n this.$store.dispatch('fetchUser', userNameOrId)\n .then(({ id }) => loadById(id))\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 stopFetching () {\n this.$store.dispatch('stopFetching', 'user')\n this.$store.dispatch('stopFetching', 'favorites')\n this.$store.dispatch('stopFetching', 'media')\n },\n switchUser (userNameOrId) {\n this.stopFetching()\n this.load(userNameOrId)\n },\n onTabSwitch (tab) {\n this.tab = tab\n this.$router.replace({ query: { tab } })\n }\n },\n watch: {\n '$route.params.id': function (newVal) {\n if (newVal) {\n this.switchUser(newVal)\n }\n },\n '$route.params.name': function (newVal) {\n if (newVal) {\n this.switchUser(newVal)\n }\n },\n '$route.query': function (newVal) {\n this.tab = newVal.tab || defaultTabKey\n }\n },\n components: {\n UserCard,\n Timeline,\n FollowerList,\n FriendList,\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\n v-for=\"item in items\"\n :key=\"getKey(item)\"\n class=\"list-item\"\n >\n <slot\n name=\"item\"\n :item=\"item\"\n />\n </div>\n <div\n v-if=\"items.length === 0 && !!$slots.empty\"\n class=\"list-empty-content faint\"\n >\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","import FollowCard from '../follow_card/follow_card.vue'\nimport Conversation from '../conversation/conversation.vue'\nimport Status from '../status/status.vue'\nimport map from 'lodash/map'\n\nconst Search = {\n components: {\n FollowCard,\n Conversation,\n Status\n },\n props: [\n 'query'\n ],\n data () {\n return {\n loaded: false,\n loading: false,\n searchTerm: this.query || '',\n userIds: [],\n statuses: [],\n hashtags: [],\n currenResultTab: 'statuses'\n }\n },\n computed: {\n users () {\n return this.userIds.map(userId => this.$store.getters.findUser(userId))\n },\n visibleStatuses () {\n const allStatusesObject = this.$store.state.statuses.allStatusesObject\n\n return this.statuses.filter(status =>\n allStatusesObject[status.id] && !allStatusesObject[status.id].deleted\n )\n }\n },\n mounted () {\n this.search(this.query)\n },\n watch: {\n query (newValue) {\n this.searchTerm = newValue\n this.search(newValue)\n }\n },\n methods: {\n newQuery (query) {\n this.$router.push({ name: 'search', query: { query } })\n this.$refs.searchInput.focus()\n },\n search (query) {\n if (!query) {\n this.loading = false\n return\n }\n\n this.loading = true\n this.userIds = []\n this.statuses = []\n this.hashtags = []\n this.$refs.searchInput.blur()\n\n this.$store.dispatch('search', { q: query, resolve: true })\n .then(data => {\n this.loading = false\n this.userIds = map(data.accounts, 'id')\n this.statuses = data.statuses\n this.hashtags = data.hashtags\n this.currenResultTab = this.getActiveTab()\n this.loaded = true\n })\n },\n resultCount (tabName) {\n const length = this[tabName].length\n return length === 0 ? '' : ` (${length})`\n },\n onResultTabSwitch (key) {\n this.currenResultTab = key\n },\n getActiveTab () {\n if (this.visibleStatuses.length > 0) {\n return 'statuses'\n } else if (this.users.length > 0) {\n return 'people'\n } else if (this.hashtags.length > 0) {\n return 'hashtags'\n }\n\n return 'statuses'\n },\n lastHistoryRecord (hashtag) {\n return hashtag.history && hashtag.history[0]\n }\n }\n}\n\nexport default Search\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 padEmojiLocal: user.padEmoji,\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 padEmojiLocal (value) {\n this.$store.dispatch('setOption', { name: 'padEmoji', 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\n class=\"color-control style-control\"\n :class=\"{ disabled: !present || disabled }\"\n >\n <label\n :for=\"name\"\n class=\"label\"\n >\n {{ label }}\n </label>\n <input\n v-if=\"typeof fallback !== 'undefined'\"\n :id=\"name + '-o'\"\n class=\"opt exlcude-disabled\"\n type=\"checkbox\"\n :checked=\"present\"\n @input=\"$emit('input', typeof value === 'undefined' ? fallback : undefined)\"\n >\n <label\n v-if=\"typeof fallback !== 'undefined'\"\n class=\"opt-l\"\n :for=\"name + '-o'\"\n />\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\n class=\"range-control style-control\"\n :class=\"{ disabled: !present || disabled }\"\n >\n <label\n :for=\"name\"\n class=\"label\"\n >\n {{ label }}\n </label>\n <input\n v-if=\"typeof fallback !== 'undefined'\"\n :id=\"name + '-o'\"\n class=\"opt exclude-disabled\"\n type=\"checkbox\"\n :checked=\"present\"\n @input=\"$emit('input', !present ? fallback : undefined)\"\n >\n <label\n v-if=\"typeof fallback !== 'undefined'\"\n class=\"opt-l\"\n :for=\"name + '-o'\"\n />\n <input\n :id=\"name\"\n class=\"input-number\"\n type=\"range\"\n :value=\"value || fallback\"\n :disabled=\"!present || disabled\"\n :max=\"max || hardMax || 100\"\n :min=\"min || hardMin || 0\"\n :step=\"step || 1\"\n @input=\"$emit('input', $event.target.value)\"\n >\n <input\n :id=\"name\"\n class=\"input-number\"\n type=\"number\"\n :value=\"value || fallback\"\n :disabled=\"!present || disabled\"\n :max=\"hardMax\"\n :min=\"hardMin\"\n :step=\"step || 1\"\n @input=\"$emit('input', $event.target.value)\"\n >\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\n class=\"opacity-control style-control\"\n :class=\"{ disabled: !present || disabled }\"\n >\n <label\n :for=\"name\"\n class=\"label\"\n >\n {{ $t('settings.style.common.opacity') }}\n </label>\n <input\n v-if=\"typeof fallback !== 'undefined'\"\n :id=\"name + '-o'\"\n class=\"opt exclude-disabled\"\n type=\"checkbox\"\n :checked=\"present\"\n @input=\"$emit('input', !present ? fallback : undefined)\"\n >\n <label\n v-if=\"typeof fallback !== 'undefined'\"\n class=\"opt-l\"\n :for=\"name + '-o'\"\n />\n <input\n :id=\"name\"\n class=\"input-number\"\n type=\"number\"\n :value=\"value || fallback\"\n :disabled=\"!present || disabled\"\n max=\"1\"\n min=\"0\"\n step=\".05\"\n @input=\"$emit('input', $event.target.value)\"\n >\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\n v-if=\"contrast\"\n class=\"contrast-ratio\"\n >\n <span\n :title=\"hint\"\n class=\"rating\"\n >\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\n v-if=\"contrast && large\"\n class=\"rating\"\n :title=\"hint_18pt\"\n >\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\n class=\"btn\"\n @click=\"exportData\"\n >\n {{ exportLabel }}\n </button>\n <button\n class=\"btn\"\n @click=\"importData\"\n >\n {{ importLabel }}\n </button>\n <slot name=\"afterButtons\" />\n <p\n v-if=\"importFailed\"\n class=\"alert error\"\n >\n {{ importFailedText }}\n </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\n for=\"interface-language-switcher\"\n class=\"select\"\n >\n <select\n id=\"interface-language-switcher\"\n v-model=\"language\"\n >\n <option\n v-for=\"(langCode, i) in languageCodes\"\n :key=\"langCode\"\n :value=\"langCode\"\n >\n {{ languageNames[i] }}\n </option>\n </select>\n <i class=\"icon-down-open\" />\n </label>\n </div>\n</template>\n\n<script>\nimport languagesObject from '../../i18n/messages'\nimport ISO6391 from 'iso-639-1'\nimport _ from 'lodash'\n\nexport 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 { mapState } from 'vuex'\nimport passwordResetApi from '../../services/new_api/password_reset.js'\n\nconst passwordReset = {\n data: () => ({\n user: {\n email: ''\n },\n isPending: false,\n success: false,\n throttled: false,\n error: null\n }),\n computed: {\n ...mapState({\n signedIn: (state) => !!state.users.currentUser,\n instance: state => state.instance\n }),\n mailerEnabled () {\n return this.instance.mailerEnabled\n }\n },\n created () {\n if (this.signedIn) {\n this.$router.push({ name: 'root' })\n }\n },\n methods: {\n dismissError () {\n this.error = null\n },\n submit () {\n this.isPending = true\n const email = this.user.email\n const instance = this.instance.server\n\n passwordResetApi({ instance, email }).then(({ status }) => {\n this.isPending = false\n this.user.email = ''\n\n if (status === 204) {\n this.success = true\n this.error = null\n } else if (status === 404 || status === 400) {\n this.error = this.$t('password_reset.not_found')\n this.$nextTick(() => {\n this.$refs.email.focus()\n })\n } else if (status === 429) {\n this.throttled = true\n this.error = this.$t('password_reset.too_many_requests')\n }\n }).catch(() => {\n this.isPending = false\n this.user.email = ''\n this.error = this.$t('general.generic_error')\n })\n }\n }\n}\n\nexport default passwordReset\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 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 hideFollowsCount: this.$store.state.users.currentUser.hide_follows_count,\n hideFollowersCount: this.$store.state.users.currentUser.hide_followers_count,\n showRole: this.$store.state.users.currentUser.show_role,\n role: this.$store.state.users.currentUser.role,\n discoverable: this.$store.state.users.currentUser.discoverable,\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 updateUsersList: (input) => this.$store.dispatch('searchUsers', input)\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 discoverable: this.discoverable,\n hide_follows_count: this.hideFollowsCount,\n hide_followers_count: this.hideFollowersCount,\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 this.$store.dispatch('searchUsers', query)\n .then((users) => map(users, 'id'))\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\n type=\"checkbox\"\n :checked=\"checked\"\n :indeterminate.prop=\"indeterminate\"\n @change=\"$emit('change', $event.target.checked)\"\n >\n <i class=\"checkbox-indicator\" />\n <span v-if=\"!!$slots.default\"><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","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 { 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 this.$store.state.api.backendInteractor.fetchUser({ id: i.acct })\n .then((externalUser) => {\n if (!externalUser.error) {\n this.$store.commit('addNewUsers', [externalUser])\n this.users.push(externalUser)\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 }\n}\n\nexport default InstanceSpecificPanel\n","const FeaturesPanel = {\n computed: {\n chat: function () { return this.$store.state.instance.chatAvailable },\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 SearchBar from './components/search_bar/search_bar.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 MobilePostStatusButton from './components/mobile_post_status_button/mobile_post_status_button.vue'\nimport MobileNav from './components/mobile_nav/mobile_nav.vue'\nimport UserReportingModal from './components/user_reporting_modal/user_reporting_modal.vue'\nimport PostStatusModal from './components/post_status_modal/post_status_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 SearchBar,\n InstanceSpecificPanel,\n FeaturesPanel,\n WhoToFollowPanel,\n ChatPanel,\n MediaModal,\n SideDrawer,\n MobilePostStatusButton,\n MobileNav,\n UserReportingModal,\n PostStatusModal\n },\n data: () => ({\n mobileActivePanel: 'timeline',\n searchBarHidden: 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.searchBarHidden ? 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 () {\n return this.$store.state.instance.showInstanceSpecificPanel &&\n !this.$store.state.config.hideISP &&\n this.$store.state.instance.instanceSpecificPanelContent\n },\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 onSearchBarToggled (hidden) {\n this.searchBarHidden = 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 SearchBar = {\n data: () => ({\n searchTerm: undefined,\n hidden: true,\n error: false,\n loading: false\n }),\n watch: {\n '$route': function (route) {\n if (route.name === 'search') {\n this.searchTerm = route.query.query\n }\n }\n },\n methods: {\n find (searchTerm) {\n this.$router.push({ name: 'search', query: { query: searchTerm } })\n this.$refs.searchInput.focus()\n },\n toggleHidden () {\n this.hidden = !this.hidden\n this.$emit('toggled', this.hidden)\n this.$nextTick(() => {\n if (!this.hidden) {\n this.$refs.searchInput.focus()\n }\n })\n }\n }\n}\n\nexport default SearchBar\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.fetchUser({ id: 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 { debounce } from 'lodash'\n\nconst MobilePostStatusButton = {\n data () {\n return {\n hidden: 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 isLoggedIn () {\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.$store.dispatch('openPostStatusModal')\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 MobilePostStatusButton\n","import SideDrawer from '../side_drawer/side_drawer.vue'\nimport Notifications from '../notifications/notifications.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 },\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 PostStatusForm from '../post_status_form/post_status_form.vue'\nimport get from 'lodash/get'\n\nconst PostStatusModal = {\n components: {\n PostStatusForm\n },\n data () {\n return {\n resettingForm: false\n }\n },\n computed: {\n isLoggedIn () {\n return !!this.$store.state.users.currentUser\n },\n modalActivated () {\n return this.$store.state.postStatus.modalActivated\n },\n isFormVisible () {\n return this.isLoggedIn && !this.resettingForm && this.modalActivated\n },\n params () {\n return this.$store.state.postStatus.params || {}\n }\n },\n watch: {\n params (newVal, oldVal) {\n if (get(newVal, 'repliedUser.id') !== get(oldVal, 'repliedUser.id')) {\n this.resettingForm = true\n this.$nextTick(() => {\n this.resettingForm = false\n })\n }\n },\n isFormVisible (val) {\n if (val) {\n this.$nextTick(() => this.$el && this.$el.querySelector('textarea').focus())\n }\n }\n },\n methods: {\n closeModal () {\n this.$store.dispatch('closePostStatusModal')\n }\n }\n}\n\nexport default PostStatusModal\n","import Vue from 'vue'\n\nimport './tab_switcher.scss'\n\nexport default Vue.component('tab-switcher', {\n name: 'TabSwitcher',\n props: {\n renderOnlyFocused: {\n required: false,\n type: Boolean,\n default: false\n },\n onSwitch: {\n required: false,\n type: Function\n },\n activeTab: {\n required: false,\n type: String\n },\n scrollableTabs: {\n required: false,\n type: Boolean,\n default: false\n }\n },\n data () {\n return {\n active: this.$slots.default.findIndex(_ => _.tag)\n }\n },\n computed: {\n activeIndex () {\n // In case of controlled component\n if (this.activeTab) {\n return this.$slots.default.findIndex(slot => this.activeTab === slot.key)\n } else {\n return this.active\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 methods: {\n activateTab (index) {\n return (e) => {\n e.preventDefault()\n if (typeof this.onSwitch === 'function') {\n this.onSwitch.call(null, this.$slots.default[index].key)\n }\n this.active = index\n }\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 (this.activeIndex === index) {\n classesTab.push('active')\n classesWrapper.push('active')\n }\n if (slot.data.attrs.image) {\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 <img src={slot.data.attrs.image} title={slot.data.attrs['image-tooltip']}/>\n {slot.data.attrs.label ? '' : slot.data.attrs.label}\n </button>\n </div>\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 = this.activeIndex === index\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' + (this.scrollableTabs ? ' scrollable-tabs' : '')}>\n {contents}\n </div>\n </div>\n )\n }\n})\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 // eslint-disable-next-line camelcase\n const tagUser = ({ screen_name }, tag) => {\n return apiService.tagUser({ screen_name, tag, credentials })\n }\n\n // eslint-disable-next-line camelcase\n const untagUser = ({ screen_name }, tag) => {\n return apiService.untagUser({ screen_name, tag, credentials })\n }\n\n // eslint-disable-next-line camelcase\n const addRight = ({ screen_name }, right) => {\n return apiService.addRight({ screen_name, right, credentials })\n }\n\n // eslint-disable-next-line camelcase\n const deleteRight = ({ screen_name }, right) => {\n return apiService.deleteRight({ screen_name, right, credentials })\n }\n\n // eslint-disable-next-line camelcase\n const setActivationStatus = ({ screen_name }, status) => {\n return apiService.setActivationStatus({ screen_name, status, credentials })\n }\n\n // eslint-disable-next-line camelcase\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 subscribeUser = (id) => apiService.subscribeUser({ credentials, id })\n const unsubscribeUser = (id) => apiService.unsubscribeUser({ 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 const muteConversation = (id) => apiService.muteConversation({ credentials, id })\n const unmuteConversation = (id) => apiService.unmuteConversation({ 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 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 const search2 = ({ q, resolve, limit, offset, following }) =>\n apiService.search2({ credentials, q, resolve, limit, offset, following })\n const searchUsers = (query) => apiService.searchUsers({ query, 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 subscribeUser,\n unsubscribeUser,\n fetchBlocks,\n fetchOAuthTokens,\n revokeOAuthToken,\n fetchPinnedStatuses,\n pinOwnStatus,\n unpinOwnStatus,\n muteConversation,\n unmuteConversation,\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 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 search2,\n searchUsers\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-1bc509fc\\\",\\\"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-ac499830\\\",\\\"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-618ed05f\\\",\\\"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","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-5637bff8\\\",\\\"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-c1790f52\\\",\\\"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","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',{key:_vm.src,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\":_vm.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.canDelete || _vm.canMute || _vm.canPin)?_c('v-popover',{staticClass:\"extra-button-popover\",attrs:{\"trigger\":\"click\",\"placement\":\"top\",\"offset\":5,\"container\":false}},[_c('div',{attrs:{\"slot\":\"popover\"},slot:\"popover\"},[_c('div',{staticClass:\"dropdown-menu\"},[(_vm.canMute && !_vm.status.thread_muted)?_c('button',{staticClass:\"dropdown-item dropdown-item-icon\",on:{\"click\":function($event){$event.preventDefault();return _vm.muteConversation($event)}}},[_c('i',{staticClass:\"icon-eye-off\"}),_c('span',[_vm._v(_vm._s(_vm.$t(\"status.mute_conversation\")))])]):_vm._e(),_vm._v(\" \"),(_vm.canMute && _vm.status.thread_muted)?_c('button',{staticClass:\"dropdown-item dropdown-item-icon\",on:{\"click\":function($event){$event.preventDefault();return _vm.unmuteConversation($event)}}},[_c('i',{staticClass:\"icon-eye-off\"}),_c('span',[_vm._v(_vm._s(_vm.$t(\"status.unmute_conversation\")))])]):_vm._e(),_vm._v(\" \"),(!_vm.status.pinned && _vm.canPin)?_c('button',{directives:[{name:\"close-popover\",rawName:\"v-close-popover\"}],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',{directives:[{name:\"close-popover\",rawName:\"v-close-popover\"}],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',{directives:[{name:\"close-popover\",rawName:\"v-close-popover\"}],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\"},[_c('i',{staticClass:\"icon-ellipsis\"})])]):_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-picker panel panel-default panel-body\"},[_c('div',{staticClass:\"heading\"},[_c('span',{staticClass:\"emoji-tabs\"},_vm._l((_vm.emojis),function(group){return _c('span',{key:group.id,staticClass:\"emoji-tabs-item\",class:{\n active: _vm.activeGroupView === group.id,\n disabled: group.emojis.length === 0\n },attrs:{\"title\":group.text},on:{\"click\":function($event){$event.preventDefault();_vm.highlight(group.id)}}},[_c('i',{class:group.icon})])}),0),_vm._v(\" \"),(_vm.stickerPickerEnabled)?_c('span',{staticClass:\"additional-tabs\"},[_c('span',{staticClass:\"stickers-tab-icon additional-tabs-item\",class:{active: _vm.showingStickers},attrs:{\"title\":_vm.$t('emoji.stickers')},on:{\"click\":function($event){$event.preventDefault();return _vm.toggleStickers($event)}}},[_c('i',{staticClass:\"icon-star\"})])]):_vm._e()]),_vm._v(\" \"),_c('div',{staticClass:\"content\"},[_c('div',{staticClass:\"emoji-content\",class:{hidden: _vm.showingStickers}},[_c('div',{staticClass:\"emoji-search\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.keyword),expression:\"keyword\"}],staticClass:\"form-control\",attrs:{\"type\":\"text\",\"placeholder\":_vm.$t('emoji.search_emoji')},domProps:{\"value\":(_vm.keyword)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.keyword=$event.target.value}}})]),_vm._v(\" \"),_c('div',{ref:\"emoji-groups\",staticClass:\"emoji-groups\",class:_vm.groupsScrolledClass,on:{\"scroll\":_vm.scrolledGroup}},_vm._l((_vm.emojisView),function(group){return _c('div',{key:group.id,staticClass:\"emoji-group\"},[_c('h6',{ref:'group-' + group.id,refInFor:true,staticClass:\"emoji-group-title\"},[_vm._v(\"\\n \"+_vm._s(group.text)+\"\\n \")]),_vm._v(\" \"),_vm._l((group.emojis),function(emoji){return _c('span',{key:group.id + emoji.displayText,staticClass:\"emoji-item\",attrs:{\"title\":emoji.displayText},on:{\"click\":function($event){$event.stopPropagation();$event.preventDefault();_vm.onEmoji(emoji)}}},[(!emoji.imageUrl)?_c('span',[_vm._v(_vm._s(emoji.replacement))]):_c('img',{attrs:{\"src\":emoji.imageUrl}})])})],2)}),0),_vm._v(\" \"),_c('div',{staticClass:\"keep-open\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.keepOpen),expression:\"keepOpen\"}],attrs:{\"id\":_vm.labelKey + 'keep-open',\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.keepOpen)?_vm._i(_vm.keepOpen,null)>-1:(_vm.keepOpen)},on:{\"change\":function($event){var $$a=_vm.keepOpen,$$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.keepOpen=$$a.concat([$$v]))}else{$$i>-1&&(_vm.keepOpen=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.keepOpen=$$c}}}}),_vm._v(\" \"),_c('label',{staticClass:\"keep-open-label\",attrs:{\"for\":_vm.labelKey + 'keep-open'}},[_c('div',{staticClass:\"keep-open-label-text\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('emoji.keep_open'))+\"\\n \")])])])]),_vm._v(\" \"),(_vm.showingStickers)?_c('div',{staticClass:\"stickers-content\"},[_c('sticker-picker',{on:{\"uploaded\":_vm.onStickerUploaded,\"upload-failed\":_vm.onStickerUploadFailed}})],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',{directives:[{name:\"click-outside\",rawName:\"v-click-outside\",value:(_vm.onClickOutside),expression:\"onClickOutside\"}],staticClass:\"emoji-input\"},[_vm._t(\"default\"),_vm._v(\" \"),(_vm.enableEmojiPicker)?[(!_vm.hideEmojiButton)?_c('div',{staticClass:\"emoji-picker-icon\",on:{\"click\":function($event){$event.preventDefault();return _vm.togglePicker($event)}}},[_c('i',{staticClass:\"icon-smile\"})]):_vm._e(),_vm._v(\" \"),(_vm.enableEmojiPicker)?_c('EmojiPicker',{ref:\"picker\",staticClass:\"emoji-picker-panel\",class:{ hide: !_vm.showPicker },attrs:{\"enable-sticker-picker\":_vm.enableStickerPicker},on:{\"emoji\":_vm.insert,\"sticker-uploaded\":_vm.onStickerUploaded,\"sticker-upload-failed\":_vm.onStickerUploadFailed}}):_vm._e()]:_vm._e(),_vm._v(\" \"),_c('div',{ref:\"panel\",staticClass:\"autocomplete-panel\",class:{ hide: !_vm.showSuggestions }},[_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:{\"id\":(\"poll-\" + index),\"type\":\"text\",\"placeholder\":_vm.$t('polls.option'),\"maxlength\":_vm.maxLength},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',{key:unit,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',{ref:\"root\",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(\"\\n \"+_vm._s(_vm.$t('post_status.account_not_locked_warning_link'))+\"\\n \")])],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:{\"enable-emoji-picker\":\"\",\"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',{ref:\"emoji-input\",staticClass:\"form-control main-input\",attrs:{\"suggest\":_vm.emojiUserSuggestor,\"enable-emoji-picker\":\"\",\"hide-emoji-button\":\"\",\"enable-sticker-picker\":\"\"},on:{\"input\":_vm.onEmojiInputInput,\"sticker-uploaded\":_vm.addMediaFile,\"sticker-upload-failed\":_vm.uploadFailed},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],\"compositionupdate\":_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\"},[_c('scope-selector',{attrs:{\"show-all\":_vm.showAllScopes,\"user-default\":_vm.userDefaultScope,\"original-scope\":_vm.copyMessageScope,\"initial-scope\":_vm.newStatus.visibility,\"on-scope-change\":_vm.changeVis}}),_vm._v(\" \"),(_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 && _vm.postFormats[0] !== 'text/plain')?_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()],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\",staticClass:\"media-upload-icon\",attrs:{\"drop-files\":_vm.dropFiles},on:{\"uploading\":_vm.disableSubmit,\"uploaded\":_vm.addMediaFile,\"upload-failed\":_vm.uploadFailed}}),_vm._v(\" \"),_c('div',{staticClass:\"emoji-icon\"},[_c('i',{staticClass:\"icon-smile btn btn-default\",attrs:{\"title\":_vm.$t('emoji.add_emoji')},on:{\"click\":_vm.showEmojiPicker}})]),_vm._v(\" \"),(_vm.pollsAvailable)?_c('div',{staticClass:\"poll-icon\",class:{ selected: _vm.pollFormVisible }},[_c('i',{staticClass:\"icon-chart-bar btn btn-default\",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(\"\\n \"+_vm._s(_vm.$t('post_status.posting'))+\"\\n \")]):(_vm.isOverLengthLimit)?_c('button',{staticClass:\"btn btn-default\",attrs:{\"disabled\":\"\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('general.submit'))+\"\\n \")]):_c('button',{staticClass:\"btn btn-default\",attrs:{\"disabled\":_vm.submitDisabled,\"type\":\"submit\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('general.submit'))+\"\\n \")])]),_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',{key:file.url,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:{\"id\":\"filesSensitive\",\"type\":\"checkbox\"},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.imgSrc,\"image-load-error\":_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('button',{attrs:{\"disabled\":_vm.progress || _vm.disabled},on:{\"click\":_vm.onClick}},[(_vm.progress && _vm.$slots.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('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',[_c('v-popover',{staticClass:\"moderation-tools-popover\",attrs:{\"trigger\":\"click\",\"container\":false,\"placement\":\"bottom-end\",\"offset\":5},on:{\"show\":function($event){_vm.showDropDown = true},\"hide\":function($event){_vm.showDropDown = false}}},[_c('div',{attrs:{\"slot\":\"popover\"},slot:\"popover\"},[_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',{staticClass:\"btn btn-default btn-block\",class:{ pressed: _vm.showDropDown }},[_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:{\"on-cancel\":_vm.deleteUserDialog.bind(this, false)}},[_c('template',{slot:\"header\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.admin_menu.delete_user'))+\"\\n \")]),_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},[_c('div',{staticClass:\"background-image\",class:{ 'hide-bio': _vm.hideBio },style:(_vm.style)}),_vm._v(\" \"),_c('div',{staticClass:\"panel-heading\"},[_c('div',{staticClass:\"user-info\"},[_c('div',{staticClass:\"container\"},[(_vm.allowZoomingAvatar)?_c('a',{staticClass:\"user-info-avatar-link\",on:{\"click\":_vm.zoomAvatar}},[_c('UserAvatar',{attrs:{\"better-shadow\":_vm.betterShadow,\"user\":_vm.user}}),_vm._v(\" \"),_vm._m(0)],1):_c('router-link',{attrs:{\"to\":_vm.userProfileLink(_vm.user)}},[_c('UserAvatar',{attrs:{\"better-shadow\":_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(\"\\n \"+_vm._s(_vm.user.name)+\"\\n \")]),_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(\"\\n @\"+_vm._s(_vm.user.screen_name)+\"\\n \")]),_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:{\"id\":'userHighlightColorTx'+_vm.user.id,\"type\":\"text\"},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:{\"id\":'userHighlightColor'+_vm.user.id,\"type\":\"color\"},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.loggedIn && _vm.isOtherUser)?_c('div',{staticClass:\"user-interactions\"},[(!_vm.user.following)?_c('div',[_c('button',{staticClass:\"btn btn-default btn-block\",attrs:{\"disabled\":_vm.followRequestInProgress,\"title\":_vm.user.requested ? _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.user.requested)?[_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.followRequestInProgress)?_c('div',[_c('button',{staticClass:\"btn btn-default btn-block pressed\",attrs:{\"disabled\":\"\",\"title\":_vm.$t('user_card.follow_unfollow')},on:{\"click\":_vm.unfollowUser}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.follow_progress'))+\"\\n \")])]):_c('div',{staticClass:\"btn-group\"},[_c('button',{staticClass:\"btn btn-default pressed\",attrs:{\"title\":_vm.$t('user_card.follow_unfollow')},on:{\"click\":_vm.unfollowUser}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.following'))+\"\\n \")]),_vm._v(\" \"),(!_vm.user.subscribed)?_c('ProgressButton',{staticClass:\"btn btn-default\",attrs:{\"click\":_vm.subscribeUser,\"title\":_vm.$t('user_card.subscribe')}},[_c('i',{staticClass:\"icon-bell-alt\"})]):_c('ProgressButton',{staticClass:\"btn btn-default pressed\",attrs:{\"click\":_vm.unsubscribeUser,\"title\":_vm.$t('user_card.unsubscribe')}},[_c('i',{staticClass:\"icon-bell-ringing-o\"})])],1),_vm._v(\" \"),_c('div',[_c('button',{staticClass:\"btn btn-default btn-block\",on:{\"click\":_vm.mentionUser}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.mention'))+\"\\n \")])]),_vm._v(\" \"),_c('div',[(_vm.user.muted)?_c('button',{staticClass:\"btn btn-default btn-block pressed\",on:{\"click\":_vm.unmuteUser}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.muted'))+\"\\n \")]):_c('button',{staticClass:\"btn btn-default btn-block\",on:{\"click\":_vm.muteUser}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.mute'))+\"\\n \")])]),_vm._v(\" \"),_c('div',[(_vm.user.statusnet_blocking)?_c('button',{staticClass:\"btn btn-default btn-block pressed\",on:{\"click\":_vm.unblockUser}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.blocked'))+\"\\n \")]):_c('button',{staticClass:\"btn btn-default btn-block\",on:{\"click\":_vm.blockUser}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.block'))+\"\\n \")])]),_vm._v(\" \"),_c('div',[_c('button',{staticClass:\"btn btn-default btn-block\",on:{\"click\":_vm.reportUser}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.report'))+\"\\n \")])]),_vm._v(\" \"),(_vm.loggedIn.role === \"admin\")?_c('ModerationTools',{attrs:{\"user\":_vm.user}}):_vm._e()],1):_vm._e(),_vm._v(\" \"),(!_vm.loggedIn && _vm.user.is_local)?_c('div',{staticClass:\"user-interactions\"},[_c('RemoteFollow',{attrs:{\"user\":_vm.user}})],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(\"\\n \"+_vm._s(_vm.user.description)+\"\\n \")]):_vm._e()]):_vm._e()])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"user-info-avatar-link-overlay\"},[_c('i',{staticClass:\"button-icon icon-zoom-in\"})])}]\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,index){return _c('div',{key:index,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:{\"set-media\":_vm.setMedia,\"nsfw\":_vm.nsfw,\"attachment\":attachment,\"allow-play\":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 && _vm.imageLoaded)?_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)?_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:{\"better-shadow\":_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,\"better-shadow\":_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(\"\\n \"+_vm._s(_vm.status.user.name)+\"\\n \")]),_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.replies)?_vm._l((_vm.replies),function(reply){return _c('span',{key:reply.id,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:{\"is-preview\":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,\"allow-play\":true,\"set-media\":_vm.setMedia()}})}),_vm._v(\" \"),(_vm.galleryAttachments.length > 0)?_c('gallery',{attrs:{\"nsfw\":_vm.nsfwClickthrough,\"attachments\":_vm.galleryAttachments,\"set-media\":_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.hidePostStats && _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(\"\\n \"+_vm._s(_vm.statusFromGlobalRepository.rebloggedBy.length)+\"\\n \")])]):_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(\"\\n \"+_vm._s(_vm.statusFromGlobalRepository.favoritedBy.length)+\"\\n \")])]):_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,\"logged-in\":_vm.loggedIn,\"status\":_vm.status}}),_vm._v(\" \"),_c('favorite-button',{attrs:{\"logged-in\":_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('PostStatusForm',{staticClass:\"reply-body\",attrs:{\"reply-to\":_vm.status.id,\"attentions\":_vm.status.attentions,\"replied-user\":_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:{\"inline-expanded\":_vm.collapsable && _vm.isExpanded,\"statusoid\":status,\"expandable\":!_vm.isExpanded,\"show-pinned\":_vm.pinnedStatusIdsObject && _vm.pinnedStatusIdsObject[status.id],\"focused\":_vm.focused(status.id),\"in-conversation\":_vm.isExpanded,\"highlight\":_vm.getHighlight(),\"replies\":_vm.getReplies(status.id),\"in-profile\":_vm.inProfile},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.pinnedStatusIds),function(statusId){return [(_vm.timeline.statusesObject[statusId])?_c('conversation',{key:statusId + '-pinned',staticClass:\"status-fadein\",attrs:{\"status-id\":statusId,\"collapsable\":true,\"pinned-status-ids-object\":_vm.pinnedStatusIdsObject,\"in-profile\":_vm.inProfile}}):_vm._e()]}),_vm._v(\" \"),_vm._l((_vm.timeline.visibleStatuses),function(status){return [(!_vm.excludedStatusIdsObject[status.id])?_c('conversation',{key:status.id,staticClass:\"status-fadein\",attrs:{\"status-id\":status.id,\"collapsable\":true,\"in-profile\":_vm.inProfile}}):_vm._e()]})],2)]),_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,\"is-page\":\"true\",\"status-id\":_vm.statusId}})}\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',[(_vm.needMute && !_vm.unmuted)?_c('div',{staticClass:\"container muted\"},[_c('small',[_c('router-link',{attrs:{\"to\":_vm.userProfileLink}},[_vm._v(\"\\n \"+_vm._s(_vm.notification.from_profile.screen_name)+\"\\n \")])],1),_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\"})])]):_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,\"better-shadow\":_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.needMute)?_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.toggleMute($event)}}},[_c('i',{staticClass:\"button-icon icon-eye-off\"})]):_vm._e()]),_vm._v(\" \"),(_vm.notification.type === 'follow')?_c('div',{staticClass:\"follow-text\"},[_c('router-link',{attrs:{\"to\":_vm.userProfileLink}},[_vm._v(\"\\n @\"+_vm._s(_vm.notification.from_profile.screen_name)+\"\\n \")])],1):[_c('status',{staticClass:\"faint\",attrs:{\"compact\":true,\"statusoid\":_vm.notification.action,\"no-heading\":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(\"\\n \"+_vm._s(_vm.$t('notifications.read'))+\"\\n \")]):_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:{\"on-switch\":_vm.onModeSwitch}},[_c('span',{key:\"mentions\",attrs:{\"label\":_vm.$t('nav.mentions')}}),_vm._v(\" \"),_c('span',{key:\"likes+repeats\",attrs:{\"label\":_vm.$t('interactions.favs_repeats')}}),_vm._v(\" \"),_c('span',{key:\"follows\",attrs:{\"label\":_vm.$t('interactions.follows')}})]),_vm._v(\" \"),_c('Notifications',{ref:\"notifications\",attrs:{\"no-heading\":true,\"minimal-mode\":true,\"filter-mode\":_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,\"allow-zooming-avatar\":true,\"rounded\":\"top\"}}),_vm._v(\" \"),_c('tab-switcher',{attrs:{\"active-tab\":_vm.tab,\"render-only-focused\":true,\"on-switch\":_vm.onTabSwitch}},[_c('Timeline',{key:\"statuses\",attrs:{\"label\":_vm.$t('user_card.statuses'),\"count\":_vm.user.statuses_count,\"embedded\":true,\"title\":_vm.$t('user_profile.timeline_title'),\"timeline\":_vm.timeline,\"timeline-name\":\"user\",\"user-id\":_vm.userId,\"pinned-status-ids\":_vm.user.pinnedStatusIds,\"in-profile\":true}}),_vm._v(\" \"),(_vm.followsTabVisible)?_c('div',{key:\"followees\",attrs:{\"label\":_vm.$t('user_card.followees'),\"disabled\":!_vm.user.friends_count}},[_c('FriendList',{attrs:{\"user-id\":_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',{key:\"followers\",attrs:{\"label\":_vm.$t('user_card.followers'),\"disabled\":!_vm.user.followers_count}},[_c('FollowerList',{attrs:{\"user-id\":_vm.userId},scopedSlots:_vm._u([{key:\"item\",fn:function(ref){\nvar item = ref.item;\nreturn [_c('FollowCard',{attrs:{\"user\":item,\"no-follows-you\":_vm.isUs}})]}}])})],1):_vm._e(),_vm._v(\" \"),_c('Timeline',{key:\"media\",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,\"in-profile\":true}}),_vm._v(\" \"),(_vm.isUs)?_c('Timeline',{key:\"favorites\",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,\"in-profile\":true}}):_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:\"panel panel-default\"},[_c('div',{staticClass:\"panel-heading\"},[_c('div',{staticClass:\"title\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('nav.search'))+\"\\n \")])]),_vm._v(\" \"),_c('div',{staticClass:\"search-input-container\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.searchTerm),expression:\"searchTerm\"}],ref:\"searchInput\",staticClass:\"search-input\",attrs:{\"placeholder\":_vm.$t('nav.search')},domProps:{\"value\":(_vm.searchTerm)},on:{\"keyup\":function($event){if(!('button' in $event)&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\")){ return null; }_vm.newQuery(_vm.searchTerm)},\"input\":function($event){if($event.target.composing){ return; }_vm.searchTerm=$event.target.value}}}),_vm._v(\" \"),_c('button',{staticClass:\"btn search-button\",on:{\"click\":function($event){_vm.newQuery(_vm.searchTerm)}}},[_c('i',{staticClass:\"icon-search\"})])]),_vm._v(\" \"),(_vm.loading)?_c('div',{staticClass:\"text-center loading-icon\"},[_c('i',{staticClass:\"icon-spin3 animate-spin\"})]):(_vm.loaded)?_c('div',[_c('div',{staticClass:\"search-nav-heading\"},[_c('tab-switcher',{ref:\"tabSwitcher\",attrs:{\"on-switch\":_vm.onResultTabSwitch,\"active-tab\":_vm.currenResultTab}},[_c('span',{key:\"statuses\",attrs:{\"label\":_vm.$t('user_card.statuses') + _vm.resultCount('visibleStatuses')}}),_vm._v(\" \"),_c('span',{key:\"people\",attrs:{\"label\":_vm.$t('search.people') + _vm.resultCount('users')}}),_vm._v(\" \"),_c('span',{key:\"hashtags\",attrs:{\"label\":_vm.$t('search.hashtags') + _vm.resultCount('hashtags')}})])],1)]):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"panel-body\"},[(_vm.currenResultTab === 'statuses')?_c('div',[(_vm.visibleStatuses.length === 0 && !_vm.loading && _vm.loaded)?_c('div',{staticClass:\"search-result-heading\"},[_c('h4',[_vm._v(_vm._s(_vm.$t('search.no_results')))])]):_vm._e(),_vm._v(\" \"),_vm._l((_vm.visibleStatuses),function(status){return _c('Status',{key:status.id,staticClass:\"search-result\",attrs:{\"collapsable\":false,\"expandable\":false,\"compact\":false,\"statusoid\":status,\"no-heading\":false}})})],2):(_vm.currenResultTab === 'people')?_c('div',[(_vm.users.length === 0 && !_vm.loading && _vm.loaded)?_c('div',{staticClass:\"search-result-heading\"},[_c('h4',[_vm._v(_vm._s(_vm.$t('search.no_results')))])]):_vm._e(),_vm._v(\" \"),_vm._l((_vm.users),function(user){return _c('FollowCard',{key:user.id,staticClass:\"list-item search-result\",attrs:{\"user\":user}})})],2):(_vm.currenResultTab === 'hashtags')?_c('div',[(_vm.hashtags.length === 0 && !_vm.loading && _vm.loaded)?_c('div',{staticClass:\"search-result-heading\"},[_c('h4',[_vm._v(_vm._s(_vm.$t('search.no_results')))])]):_vm._e(),_vm._v(\" \"),_vm._l((_vm.hashtags),function(hashtag){return _c('div',{key:hashtag.url,staticClass:\"status trend search-result\"},[_c('div',{staticClass:\"hashtag\"},[_c('router-link',{attrs:{\"to\":{ name: 'tag-timeline', params: { tag: hashtag.name } }}},[_vm._v(\"\\n #\"+_vm._s(hashtag.name)+\"\\n \")]),_vm._v(\" \"),(_vm.lastHistoryRecord(hashtag))?_c('div',[(_vm.lastHistoryRecord(hashtag).accounts == 1)?_c('span',[_vm._v(\"\\n \"+_vm._s(_vm.$t('search.person_talking', { count: _vm.lastHistoryRecord(hashtag).accounts }))+\"\\n \")]):_c('span',[_vm._v(\"\\n \"+_vm._s(_vm.$t('search.people_talking', { count: _vm.lastHistoryRecord(hashtag).accounts }))+\"\\n \")])]):_vm._e()],1),_vm._v(\" \"),(_vm.lastHistoryRecord(hashtag))?_c('div',{staticClass:\"count\"},[_vm._v(\"\\n \"+_vm._s(_vm.lastHistoryRecord(hashtag).uses)+\"\\n \")]):_vm._e()])})],2):_vm._e()]),_vm._v(\" \"),_c('div',{staticClass:\"search-result-footer text-center panel-footer faint\"})])}\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:{\"id\":\"shadow-switcher\",\"disabled\":!_vm.ready || _vm.usingFallback},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',{key:index,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:{\"id\":\"inset\",\"disabled\":!_vm.present,\"name\":\"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:{\"id\":\"blur\",\"disabled\":!_vm.present,\"name\":\"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:{\"id\":\"spread\",\"disabled\":!_vm.present,\"name\":\"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:{\"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('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:{\"id\":_vm.name + '-font-switcher',\"disabled\":!_vm.present},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',{key: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:{\"id\":_vm.name,\"type\":\"text\"},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(\"\\n \"+_vm._s(_vm.exportLabel)+\"\\n \")]),_vm._v(\" \"),_c('button',{staticClass:\"btn\",on:{\"click\":_vm.importData}},[_vm._v(\"\\n \"+_vm._s(_vm.importLabel)+\"\\n \")]),_vm._v(\" \"),_vm._t(\"afterButtons\"),_vm._v(\" \"),(_vm.importFailed)?_c('p',{staticClass:\"alert error\"},[_vm._v(\"\\n \"+_vm._s(_vm.importFailedText)+\"\\n \")]):_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:{\"export-object\":_vm.exportedTheme,\"export-label\":_vm.$t(\"settings.export_theme\"),\"import-label\":_vm.$t(\"settings.import_theme\"),\"import-failed-text\":_vm.$t(\"settings.invalid_theme_imported\"),\"on-import\":_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',{key:style.name,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(\"\\n \"+_vm._s(_vm.$t('settings.style.switcher.clear_opacity'))+\"\\n \")]),_vm._v(\" \"),_c('button',{staticClass:\"btn\",on:{\"click\":_vm.clearV1}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.style.switcher.clear_all'))+\"\\n \")])]),_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(\"\\n \"+_vm._s(_vm.$t('settings.style.switcher.clear_opacity'))+\"\\n \")]),_vm._v(\" \"),_c('button',{staticClass:\"btn\",on:{\"click\":_vm.clearV1}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.style.switcher.clear_all'))+\"\\n \")])]),_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(\"\\n \"+_vm._s(_vm.$t('settings.style.switcher.clear_all'))+\"\\n \")])]),_vm._v(\" \"),_c('RangeInput',{attrs:{\"name\":\"btnRadius\",\"label\":_vm.$t('settings.btnRadius'),\"fallback\":_vm.previewTheme.radii.btn,\"max\":\"16\",\"hard-min\":\"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\",\"hard-min\":\"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\",\"hard-min\":\"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\",\"hard-min\":\"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\",\"hard-min\":\"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\",\"hard-min\":\"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\",\"hard-min\":\"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\",\"hard-min\":\"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',{key:shadow,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:{\"id\":\"override\",\"name\":\"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(\"\\n \"+_vm._s(_vm.$t('settings.style.switcher.clear_all'))+\"\\n \")])]),_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(\"\\n \"+_vm._s(_vm.$t('settings.style.switcher.clear_all'))+\"\\n \")])]),_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(\"\\n \"+_vm._s(_vm.$t('general.apply'))+\"\\n \")]),_vm._v(\" \"),_c('button',{staticClass:\"btn\",on:{\"click\":_vm.clearAll}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.style.switcher.reset'))+\"\\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('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',{key:langCode,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:{\"id\":\"hideISP\",\"type\":\"checkbox\"},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:{\"id\":\"hideMutedPosts\",\"type\":\"checkbox\"},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:{\"id\":\"collapseMessageWithSubject\",\"type\":\"checkbox\"},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:{\"id\":\"streaming\",\"type\":\"checkbox\"},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:{\"id\":\"pauseOnUnfocused\",\"disabled\":!_vm.streamingLocal,\"type\":\"checkbox\"},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:{\"id\":\"autoload\",\"type\":\"checkbox\"},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:{\"id\":\"hoverPreview\",\"type\":\"checkbox\"},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:{\"id\":\"scopeCopy\",\"type\":\"checkbox\"},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:{\"id\":\"subjectHide\",\"type\":\"checkbox\"},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:{\"id\":\"minimalScopesMode\",\"type\":\"checkbox\"},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:{\"id\":\"autohideFloatingPostButton\",\"type\":\"checkbox\"},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('li',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.padEmojiLocal),expression:\"padEmojiLocal\"}],attrs:{\"id\":\"padEmoji\",\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.padEmojiLocal)?_vm._i(_vm.padEmojiLocal,null)>-1:(_vm.padEmojiLocal)},on:{\"change\":function($event){var $$a=_vm.padEmojiLocal,$$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.padEmojiLocal=$$a.concat([$$v]))}else{$$i>-1&&(_vm.padEmojiLocal=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.padEmojiLocal=$$c}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"padEmoji\"}},[_vm._v(_vm._s(_vm.$t('settings.pad_emoji')))])])])]),_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:{\"id\":\"hideAttachments\",\"type\":\"checkbox\"},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:{\"id\":\"hideAttachmentsInConv\",\"type\":\"checkbox\"},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:{\"id\":\"maxThumbnails\",\"type\":\"number\",\"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:{\"id\":\"hideNsfw\",\"type\":\"checkbox\"},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:{\"id\":\"preloadImage\",\"disabled\":!_vm.hideNsfwLocal,\"type\":\"checkbox\"},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:{\"id\":\"useOneClickNsfw\",\"disabled\":!_vm.hideNsfwLocal,\"type\":\"checkbox\"},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:{\"id\":\"stopGifs\",\"type\":\"checkbox\"},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:{\"id\":\"loopVideo\",\"type\":\"checkbox\"},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:{\"id\":\"loopVideoSilentOnly\",\"disabled\":!_vm.loopVideoLocal || !_vm.loopSilentAvailable,\"type\":\"checkbox\"},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:{\"id\":\"playVideosInModal\",\"type\":\"checkbox\"},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:{\"id\":\"useContainFit\",\"type\":\"checkbox\"},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:{\"id\":\"webPushNotifications\",\"type\":\"checkbox\"},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:{\"id\":\"notification-visibility-likes\",\"type\":\"checkbox\"},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:{\"id\":\"notification-visibility-repeats\",\"type\":\"checkbox\"},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:{\"id\":\"notification-visibility-follows\",\"type\":\"checkbox\"},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:{\"id\":\"notification-visibility-mentions\",\"type\":\"checkbox\"},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:{\"id\":\"hidePostStats\",\"type\":\"checkbox\"},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:{\"id\":\"hideUserStats\",\"type\":\"checkbox\"},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:{\"id\":\"hideFilteredStatuses\",\"type\":\"checkbox\"},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:{\"id\":\"sign-up-username\",\"disabled\":_vm.isPending,\"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:{\"id\":\"sign-up-fullname\",\"disabled\":_vm.isPending,\"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:{\"id\":\"email\",\"disabled\":_vm.isPending,\"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:{\"id\":\"bio\",\"disabled\":_vm.isPending,\"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:{\"id\":\"sign-up-password\",\"disabled\":_vm.isPending,\"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:{\"id\":\"sign-up-password-confirmation\",\"disabled\":_vm.isPending,\"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:{\"id\":\"captcha-answer\",\"disabled\":_vm.isPending,\"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:{\"id\":\"token\",\"disabled\":\"true\",\"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(\"\\n \"+_vm._s(_vm.$t('general.submit'))+\"\\n \")])])]),_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',{key:error},[_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:\"settings panel panel-default\"},[_c('div',{staticClass:\"panel-heading\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('password_reset.password_reset'))+\"\\n \")]),_vm._v(\" \"),_c('div',{staticClass:\"panel-body\"},[_c('form',{staticClass:\"password-reset-form\",on:{\"submit\":function($event){$event.preventDefault();return _vm.submit($event)}}},[_c('div',{staticClass:\"container\"},[(!_vm.mailerEnabled)?_c('div',[_c('p',[_vm._v(\"\\n \"+_vm._s(_vm.$t('password_reset.password_reset_disabled'))+\"\\n \")])]):(_vm.success || _vm.throttled)?_c('div',[(_vm.success)?_c('p',[_vm._v(\"\\n \"+_vm._s(_vm.$t('password_reset.check_email'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"form-group text-center\"},[_c('router-link',{attrs:{\"to\":{name: 'root'}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('password_reset.return_home'))+\"\\n \")])],1)]):_c('div',[_c('p',[_vm._v(\"\\n \"+_vm._s(_vm.$t('password_reset.instruction'))+\"\\n \")]),_vm._v(\" \"),_c('div',{staticClass:\"form-group\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.user.email),expression:\"user.email\"}],ref:\"email\",staticClass:\"form-control\",attrs:{\"disabled\":_vm.isPending,\"placeholder\":_vm.$t('password_reset.placeholder'),\"type\":\"input\"},domProps:{\"value\":(_vm.user.email)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.user, \"email\", $event.target.value)}}})]),_vm._v(\" \"),_c('div',{staticClass:\"form-group\"},[_c('button',{staticClass:\"btn btn-default btn-block\",attrs:{\"disabled\":_vm.isPending,\"type\":\"submit\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('general.submit'))+\"\\n \")])])]),_vm._v(\" \"),(_vm.error)?_c('p',{staticClass:\"alert error notice-dismissible\"},[_c('span',[_vm._v(_vm._s(_vm.error))]),_vm._v(\" \"),_c('a',{staticClass:\"button-icon dismiss\",on:{\"click\":function($event){$event.preventDefault();_vm.dismissError()}}},[_c('i',{staticClass:\"icon-cancel\"})])]):_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(\"\\n \"+_vm._s(_vm.$t('selectable_list.select_all'))+\"\\n \")])],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,\"get-key\":_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('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(\"\\n \"+_vm._s(_vm.submitButtonLabel)+\"\\n \")]),_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(\"\\n \"+_vm._s(_vm.exportButtonLabel)+\"\\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',[(_vm.displayTitle)?_c('h4',[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.mfa.recovery_codes'))+\"\\n \")]):_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(\"\\n \"+_vm._s(_vm.$t('settings.mfa.recovery_codes_warning'))+\"\\n \")]),_vm._v(\" \"),_c('ul',{staticClass:\"backup-codes\"},_vm._l((_vm.backupCodes.codes),function(code){return _c('li',{key:code},[_vm._v(\"\\n \"+_vm._s(code)+\"\\n \")])}),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(\"\\n \"+_vm._s(_vm.error)+\"\\n \")]):_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(\"\\n \"+_vm._s(_vm.$t('settings.mfa.warning_of_generate_new_codes'))+\"\\n \")])])],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(\"\\n \"+_vm._s(_vm.error)+\"\\n \")]):_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:{\"enable-emoji-picker\":\"\",\"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:{\"enable-emoji-picker\":\"\",\"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:{\"id\":\"account-locked\",\"type\":\"checkbox\"},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:{\"show-all\":true,\"user-default\":_vm.newDefaultScope,\"initial-scope\":_vm.newDefaultScope,\"on-scope-change\":_vm.changeVis}})],1)]),_vm._v(\" \"),_c('p',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.newNoRichText),expression:\"newNoRichText\"}],attrs:{\"id\":\"account-no-rich-text\",\"type\":\"checkbox\"},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:{\"id\":\"account-hide-follows\",\"type\":\"checkbox\"},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',{staticClass:\"setting-subitem\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.hideFollowsCount),expression:\"hideFollowsCount\"}],attrs:{\"id\":\"account-hide-follows-count\",\"type\":\"checkbox\",\"disabled\":!_vm.hideFollows},domProps:{\"checked\":Array.isArray(_vm.hideFollowsCount)?_vm._i(_vm.hideFollowsCount,null)>-1:(_vm.hideFollowsCount)},on:{\"change\":function($event){var $$a=_vm.hideFollowsCount,$$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.hideFollowsCount=$$a.concat([$$v]))}else{$$i>-1&&(_vm.hideFollowsCount=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.hideFollowsCount=$$c}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"account-hide-follows-count\"}},[_vm._v(_vm._s(_vm.$t('settings.hide_follows_count_description')))])]),_vm._v(\" \"),_c('p',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.hideFollowers),expression:\"hideFollowers\"}],attrs:{\"id\":\"account-hide-followers\",\"type\":\"checkbox\"},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',{staticClass:\"setting-subitem\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.hideFollowersCount),expression:\"hideFollowersCount\"}],attrs:{\"id\":\"account-hide-followers-count\",\"type\":\"checkbox\",\"disabled\":!_vm.hideFollowers},domProps:{\"checked\":Array.isArray(_vm.hideFollowersCount)?_vm._i(_vm.hideFollowersCount,null)>-1:(_vm.hideFollowersCount)},on:{\"change\":function($event){var $$a=_vm.hideFollowersCount,$$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.hideFollowersCount=$$a.concat([$$v]))}else{$$i>-1&&(_vm.hideFollowersCount=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.hideFollowersCount=$$c}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"account-hide-followers-count\"}},[_vm._v(_vm._s(_vm.$t('settings.hide_followers_count_description')))])]),_vm._v(\" \"),_c('p',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.showRole),expression:\"showRole\"}],attrs:{\"id\":\"account-show-role\",\"type\":\"checkbox\"},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('p',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.discoverable),expression:\"discoverable\"}],attrs:{\"id\":\"discoverable\",\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.discoverable)?_vm._i(_vm.discoverable,null)>-1:(_vm.discoverable)},on:{\"change\":function($event){var $$a=_vm.discoverable,$$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.discoverable=$$a.concat([$$v]))}else{$$i>-1&&(_vm.discoverable=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.discoverable=$$c}}}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"discoverable\"}},[_vm._v(_vm._s(_vm.$t('settings.discoverable')))])]),_vm._v(\" \"),_c('button',{staticClass:\"btn btn-default\",attrs:{\"disabled\":_vm.newName && _vm.newName.length === 0},on:{\"click\":_vm.updateProfile}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('general.submit'))+\"\\n \")])],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(\"\\n \"+_vm._s(_vm.$t('settings.avatar_size_instruction'))+\"\\n \")]),_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:{\"id\":\"pick-avatar\",\"type\":\"button\"}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.upload_a_photo'))+\"\\n \")]),_vm._v(\" \"),_c('image-cropper',{attrs:{\"trigger\":\"#pick-avatar\",\"submit-handler\":_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(\"\\n \"+_vm._s(_vm.$t('general.submit'))+\"\\n \")]):_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(\"\\n \"+_vm._s(_vm.$t('general.submit'))+\"\\n \")]):_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(\"\\n \"+_vm._s(_vm.$t('general.submit'))+\"\\n \")]),_vm._v(\" \"),(_vm.changedPassword)?_c('p',[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.changed_password'))+\"\\n \")]):(_vm.changePasswordError !== false)?_c('p',[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.change_password_error'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.changePasswordError)?_c('p',[_vm._v(\"\\n \"+_vm._s(_vm.changePasswordError)+\"\\n \")]):_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(\"\\n \"+_vm._s(_vm.$t('settings.delete_account_description'))+\"\\n \")]):_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(\"\\n \"+_vm._s(_vm.$t('settings.delete_account'))+\"\\n \")])]):_vm._e(),_vm._v(\" \"),(_vm.deleteAccountError !== false)?_c('p',[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.delete_account_error'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.deleteAccountError)?_c('p',[_vm._v(\"\\n \"+_vm._s(_vm.deleteAccountError)+\"\\n \")]):_vm._e(),_vm._v(\" \"),(!_vm.deletingAccount)?_c('button',{staticClass:\"btn btn-default\",on:{\"click\":_vm.confirmDelete}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('general.submit'))+\"\\n \")]):_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:{\"id\":\"notification-setting-follows\",\"type\":\"checkbox\"},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:{\"id\":\"notification-setting-followers\",\"type\":\"checkbox\"},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:{\"id\":\"notification-setting-non-follows\",\"type\":\"checkbox\"},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:{\"id\":\"notification-setting-non-followers\",\"type\":\"checkbox\"},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(\"\\n \"+_vm._s(_vm.$t('general.submit'))+\"\\n \")])])]):_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:{\"submit-handler\":_vm.importFollows,\"success-message\":_vm.$t('settings.follows_imported'),\"error-message\":_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:{\"get-content\":_vm.getFollowsContent,\"filename\":\"friends.csv\",\"export-button-label\":_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:{\"submit-handler\":_vm.importBlocks,\"success-message\":_vm.$t('settings.blocks_imported'),\"error-message\":_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:{\"get-content\":_vm.getBlocksContent,\"filename\":\"blocks.csv\",\"export-button-label\":_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:{\"user-id\":row.item}})}}])})],1),_vm._v(\" \"),_c('BlockList',{attrs:{\"refresh\":true,\"get-key\":_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(\"\\n \"+_vm._s(_vm.$t('user_card.block_progress'))+\"\\n \")])],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(\"\\n \"+_vm._s(_vm.$t('user_card.unblock_progress'))+\"\\n \")])],2):_vm._e()],1)]}},{key:\"item\",fn:function(ref){\nvar item = ref.item;\nreturn [_c('BlockCard',{attrs:{\"user-id\":item}})]}}])},[_c('template',{slot:\"empty\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.no_blocks'))+\"\\n \")])],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:{\"user-id\":row.item}})}}])})],1),_vm._v(\" \"),_c('MuteList',{attrs:{\"refresh\":true,\"get-key\":_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(\"\\n \"+_vm._s(_vm.$t('user_card.mute_progress'))+\"\\n \")])],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(\"\\n \"+_vm._s(_vm.$t('user_card.unmute_progress'))+\"\\n \")])],2):_vm._e()],1)]}},{key:\"item\",fn:function(ref){\nvar item = ref.item;\nreturn [_c('MuteCard',{attrs:{\"user-id\":item}})]}}])},[_c('template',{slot:\"empty\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('settings.no_mutes'))+\"\\n \")])],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(\"\\n \"+_vm._s(_vm.$t('user_card.approve'))+\"\\n \")]),_vm._v(\" \"),_c('button',{staticClass:\"btn btn-default\",on:{\"click\":_vm.denyUser}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_card.deny'))+\"\\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:\"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:\"login panel panel-default\"},[_c('div',{staticClass:\"panel-heading\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('login.login'))+\"\\n \")]),_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:{\"id\":\"username\",\"disabled\":_vm.loggingIn,\"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:{\"id\":\"password\",\"disabled\":_vm.loggingIn,\"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(\" \"),_c('div',{staticClass:\"form-group\"},[_c('router-link',{attrs:{\"to\":{name: 'password-reset'}}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('password_reset.forgot_password'))+\"\\n \")])],1)]:_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(\"\\n \"+_vm._s(_vm.$t('login.heading.recovery'))+\"\\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(_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 (!_vm.collapsed || !_vm.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 _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)}})])])])}\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(\"\\n \"+_vm._s(_vm.$t('features_panel.chat'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.gopher)?_c('li',[_vm._v(\"\\n \"+_vm._s(_vm.$t('features_panel.gopher'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.whoToFollow)?_c('li',[_vm._v(\"\\n \"+_vm._s(_vm.$t('features_panel.who_to_follow'))+\"\\n \")]):_vm._e(),_vm._v(\" \"),(_vm.mediaProxy)?_c('li',[_vm._v(\"\\n \"+_vm._s(_vm.$t('features_panel.media_proxy'))+\"\\n \")]):_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,\"hide-bio\":true,\"rounded\":\"top\"}}),_vm._v(\" \"),_c('div',{staticClass:\"panel-footer\"},[_c('PostStatusForm')],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:\"search-bar-container\"},[(_vm.loading)?_c('i',{staticClass:\"icon-spin4 finder-icon animate-spin-slow\"}):_vm._e(),_vm._v(\" \"),(_vm.hidden)?_c('a',{attrs:{\"href\":\"#\",\"title\":_vm.$t('nav.search')}},[_c('i',{staticClass:\"button-icon icon-search\",on:{\"click\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.toggleHidden($event)}}})]):[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.searchTerm),expression:\"searchTerm\"}],ref:\"searchInput\",staticClass:\"search-bar-input\",attrs:{\"id\":\"search-bar-input\",\"placeholder\":_vm.$t('nav.search'),\"type\":\"text\"},domProps:{\"value\":(_vm.searchTerm)},on:{\"keyup\":function($event){if(!('button' in $event)&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\")){ return null; }_vm.find(_vm.searchTerm)},\"input\":function($event){if($event.target.composing){ return; }_vm.searchTerm=$event.target.value}}}),_vm._v(\" \"),_c('button',{staticClass:\"btn search-button\",on:{\"click\":function($event){_vm.find(_vm.searchTerm)}}},[_c('i',{staticClass:\"icon-search\"})]),_vm._v(\" \"),_c('i',{staticClass:\"button-icon icon-cancel\",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',{key:user.id,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',{directives:[{name:\"body-scroll-lock\",rawName:\"v-body-scroll-lock\",value:(_vm.showing),expression:\"showing\"}],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,\"hide-bio\":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: 'search' }}},[_vm._v(\"\\n \"+_vm._s(_vm.$t(\"nav.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.isLoggedIn)?_c('div',[_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(\"\\n \"+_vm._s(_vm.sitename)+\"\\n \")])],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:{\"no-heading\":true}})],1)]):_vm._e(),_vm._v(\" \"),_c('SideDrawer',{ref:\"sideDrawer\",attrs:{\"logout\":_vm.logout}})],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(\"\\n \"+_vm._s(_vm.$t('user_reporting.title', [_vm.user.screen_name]))+\"\\n \")])]),_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(\"\\n \"+_vm._s(_vm.$t('user_reporting.forward_to', [_vm.remoteInstance]))+\"\\n \")])],1):_vm._e(),_vm._v(\" \"),_c('div',[_c('button',{staticClass:\"btn btn-default\",attrs:{\"disabled\":_vm.processing},on:{\"click\":_vm.reportUser}},[_vm._v(\"\\n \"+_vm._s(_vm.$t('user_reporting.submit'))+\"\\n \")]),_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:{\"in-conversation\":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 (_vm.isLoggedIn && !_vm.resettingForm)?_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.modalActivated),expression:\"modalActivated\"}],staticClass:\"post-form-modal-view modal-view\",on:{\"click\":_vm.closeModal}},[_c('div',{staticClass:\"post-form-modal-panel panel\",on:{\"click\":function($event){$event.stopPropagation();}}},[_c('div',{staticClass:\"panel-heading\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t('post_status.new_status'))+\"\\n \")]),_vm._v(\" \"),_c('PostStatusForm',_vm._b({staticClass:\"panel-body\",on:{\"posted\":_vm.closeModal}},'PostStatusForm',_vm.params,false))],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),attrs:{\"id\":\"app_bg_wrapper\"}}),_vm._v(\" \"),(_vm.isMobileLayout)?_c('MobileNav'):_c('nav',{staticClass:\"nav-bar container\",attrs:{\"id\":\"nav\"},on:{\"click\":function($event){_vm.scrollToTop()}}},[_c('div',{staticClass:\"inner-nav\"},[_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:\"item\"},[_c('router-link',{staticClass:\"site-name\",attrs:{\"to\":{ name: 'root' },\"active-class\":\"home\"}},[_vm._v(\"\\n \"+_vm._s(_vm.sitename)+\"\\n \")])],1),_vm._v(\" \"),_c('div',{staticClass:\"item right\"},[_c('search-bar',{staticClass:\"nav-icon mobile-hidden\",on:{\"toggled\":_vm.onSearchBarToggled},nativeOn:{\"click\":function($event){$event.stopPropagation();}}}),_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('MobilePostStatusButton'),_vm._v(\" \"),_c('UserReportingModal'),_vm._v(\" \"),_c('PostStatusModal'),_vm._v(\" \"),_c('portal-target',{attrs:{\"name\":\"modal\"}})],1)}\nvar staticRenderFns = []\nexport { render, staticRenderFns }","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","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 const hideMutedPosts = typeof rootState.config.hideMutedPosts === 'undefined'\n ? rootState.instance.hideMutedPosts\n : rootState.config.hideMutedPosts\n\n args['withMuted'] = !hideMutedPosts\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","// 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 eu: require('./eu.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 te: require('./te.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-2a0da20a\\\",\\\"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-6fce6a82\\\",\\\"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","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-28e8cbf1\\\",\\\"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-55e3ae24\\\",\\\"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","export const findOffset = (child, parent, { top = 0, left = 0 } = {}, ignorePadding = true) => {\n const result = {\n top: top + child.offsetTop,\n left: left + child.offsetLeft\n }\n if (!ignorePadding && child !== window) {\n const { topPadding, leftPadding } = findPadding(child)\n result.top += ignorePadding ? 0 : topPadding\n result.left += ignorePadding ? 0 : leftPadding\n }\n\n if (child.offsetParent && (parent === window || parent.contains(child.offsetParent) || parent === child.offsetParent)) {\n return findOffset(child.offsetParent, parent, result, false)\n } else {\n if (parent !== window) {\n const { topPadding, leftPadding } = findPadding(parent)\n result.top += topPadding\n result.left += leftPadding\n }\n return result\n }\n}\n\nconst findPadding = (el) => {\n const topPaddingStr = window.getComputedStyle(el)['padding-top']\n const topPadding = Number(topPaddingStr.substring(0, topPaddingStr.length - 2))\n const leftPaddingStr = window.getComputedStyle(el)['padding-left']\n const leftPadding = Number(leftPaddingStr.substring(0, leftPaddingStr.length - 2))\n\n return { topPadding, leftPadding }\n}\n","import { debounce } from 'lodash'\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 * updateUsersList - optional, a function to search and append to 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 */\n\nconst debounceUserSearch = debounce((data, input) => {\n data.updateUsersList(input)\n}, 500, { leading: true, trailing: false })\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)(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 = data => input => {\n const noPrefix = input.toLowerCase().substr(1)\n const users = data.users\n\n const newUsers = 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\n // BE search users if there are no matches\n if (newUsers.length === 0 && data.updateUsersList) {\n debounceUserSearch(data, noPrefix)\n }\n return newUsers\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-e95e446e\\\",\\\"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","/* 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-9f751ae6\\\",\\\"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","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, user.requested, user.locked, attempt]))\n .catch((e) => reject(e))\n }, 500)\n}).then(([following, sent, locked, attempt]) => {\n if (!following && !(locked && sent) && attempt <= 3) {\n // If we BE reports that we still not following that user - retry,\n // increment attempts by one\n fetchUser(++attempt, user, store)\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 if (updated.following || (user.locked && user.requested)) {\n // If we get result immediately or the account is locked, just stop.\n resolve()\n return\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(() => {\n resolve()\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-ea88f12a\\\",\\\"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-a377bb38\\\",\\\"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-87056ae2\\\",\\\"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-02484cf4\\\",\\\"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-20b6e7b3\\\",\\\"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-7ea51572\\\",\\\"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","/* 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-5b01187b\\\",\\\"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__ = 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!./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-3443e05c\\\",\\\"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-97c834ba\\\",\\\"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","\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'\nimport postStatusModule from './modules/postStatus.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'\nimport VBodyScrollLock from './directives/body_scroll_lock'\nimport VTooltip from 'v-tooltip'\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)\nVue.use(VBodyScrollLock)\nVue.use(VTooltip)\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 postStatus: postStatusModule\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 case 'chatAvailable':\n if (value) {\n dispatch('initializeSocket')\n }\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, excludeUserId = false }) {\n const userId = excludeUserId ? state.timelines[timeline].userId : undefined\n state.timelines[timeline] = emptyTl(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 setMutedStatus (state, status) {\n const newStatus = state.allStatusesObject[status.id]\n newStatus.thread_muted = status.thread_muted\n\n if (newStatus.thread_muted !== undefined) {\n state.conversationsObject[newStatus.statusnet_conversation_id].forEach(status => { status.thread_muted = newStatus.thread_muted })\n }\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 addRepeats (state, { id, rebloggedByUsers, currentUser }) {\n const newStatus = state.allStatusesObject[id]\n newStatus.rebloggedBy = rebloggedByUsers.filter(_ => _)\n // repeats stats can be incorrect based on polling condition, let's update them using the most recent data\n newStatus.repeat_num = newStatus.rebloggedBy.length\n newStatus.repeated = !!newStatus.rebloggedBy.find(({ id }) => currentUser.id === id)\n },\n addFavs (state, { id, favoritedByUsers, currentUser }) {\n const newStatus = state.allStatusesObject[id]\n newStatus.favoritedBy = favoritedByUsers.filter(_ => _)\n // favorites stats can be incorrect based on polling condition, let's update them using the most recent data\n newStatus.fave_num = newStatus.favoritedBy.length\n newStatus.favorited = !!newStatus.favoritedBy.find(({ id }) => currentUser.id === id)\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, dispatch }, statusId) {\n return rootState.api.backendInteractor.pinOwnStatus(statusId)\n .then((status) => dispatch('addNewStatuses', { statuses: [status] }))\n },\n unpinStatus ({ rootState, dispatch }, statusId) {\n rootState.api.backendInteractor.unpinOwnStatus(statusId)\n .then((status) => dispatch('addNewStatuses', { statuses: [status] }))\n },\n muteConversation ({ rootState, commit }, statusId) {\n return rootState.api.backendInteractor.muteConversation(statusId)\n .then((status) => commit('setMutedStatus', status))\n },\n unmuteConversation ({ rootState, commit }, statusId) {\n return rootState.api.backendInteractor.unmuteConversation(statusId)\n .then((status) => commit('setMutedStatus', 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('addFavs', { id, favoritedByUsers, currentUser: rootState.users.currentUser })\n commit('addRepeats', { id, rebloggedByUsers, currentUser: rootState.users.currentUser })\n })\n },\n fetchFavs ({ rootState, commit }, id) {\n rootState.api.backendInteractor.fetchFavoritedByUsers(id)\n .then(favoritedByUsers => commit('addFavs', { id, favoritedByUsers, currentUser: rootState.users.currentUser }))\n },\n fetchRepeats ({ rootState, commit }, id) {\n rootState.api.backendInteractor.fetchRebloggedByUsers(id)\n .then(rebloggedByUsers => commit('addRepeats', { id, rebloggedByUsers, currentUser: rootState.users.currentUser }))\n },\n search (store, { q, resolve, limit, offset, following }) {\n return store.rootState.api.backendInteractor.search2({ q, resolve, limit, offset, following })\n .then((data) => {\n store.commit('addNewUsers', data.accounts)\n store.commit('addNewStatuses', { statuses: data.statuses })\n return data\n })\n }\n },\n mutations\n}\n\nexport default statuses\n","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.requested = relationship.requested\n output.following = relationship.following\n output.statusnet_blocking = relationship.blocking\n output.muted = relationship.muting\n output.subscribed = relationship.subscribing\n }\n\n output.hide_follows = data.pleroma.hide_follows\n output.hide_followers = data.pleroma.hide_followers\n output.hide_follows_count = data.pleroma.hide_follows_count\n output.hide_followers_count = data.pleroma.hide_followers_count\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 output.discoverable = data.source.pleroma.discoverable\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.hide_follows_count = data.hide_follows_count\n output.hide_followers_count = data.hide_followers_count\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.pinnedStatusIds = []\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 output.thread_muted = pleroma.thread_muted\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 output.muted = data.muted\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 { humanizeErrors } from '../../modules/errors'\n\nexport 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\nexport class RegistrationError extends Error {\n constructor (error) {\n super()\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this)\n }\n\n try {\n // the error is probably a JSON object with a single key, \"errors\", whose value is another JSON object containing the real errors\n if (typeof error === 'string') {\n error = JSON.parse(error)\n if (error.hasOwnProperty('error')) {\n error = JSON.parse(error.error)\n }\n }\n\n if (typeof error === 'object') {\n // replace ap_id with username\n if (error.ap_id) {\n error.username = error.ap_id\n delete error.ap_id\n }\n this.message = humanizeErrors(error)\n } else {\n this.message = error\n }\n } catch (e) {\n // can't parse it, so just treat it like a string\n this.message = error\n }\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","import backendInteractorService from '../services/backend_interactor_service/backend_interactor_service.js'\nimport oauthApi from '../services/new_api/oauth.js'\nimport { compact, map, each, merge, last, concat, uniq } from 'lodash'\nimport { set } from 'vue'\nimport { registerPushNotifications, unregisterPushNotifications } from '../services/push/push.js'\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 user.subscribed = relationship.subscribing\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 setPinnedToUser (state, status) {\n const user = state.usersObject[status.user.id]\n const index = user.pinnedStatusIds.indexOf(status.id)\n if (status.pinned && index === -1) {\n user.pinnedStatusIds.push(status.id)\n } else if (!status.pinned && index !== -1) {\n user.pinnedStatusIds.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 subscribeUser ({ rootState, commit }, id) {\n return rootState.api.backendInteractor.subscribeUser(id)\n .then((relationship) => commit('updateUserRelationship', [relationship]))\n },\n unsubscribeUser ({ rootState, commit }, id) {\n return rootState.api.backendInteractor.unsubscribeUser(id)\n .then((relationship) => commit('updateUserRelationship', [relationship]))\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('setPinnedToUser', 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('setPinnedToUser', 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 return store.rootState.api.backendInteractor.searchUsers(query)\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 store.commit('signUpFailure', errors)\n throw e\n }\n },\n async getCaptcha (store) {\n return store.rootState.api.backendInteractor.getCaptcha()\n },\n\n logout (store) {\n const { oauth, instance } = store.rootState\n\n const data = {\n ...oauth,\n commit: store.commit,\n instance: instance.server\n }\n\n return oauthApi.getOrCreateApp(data)\n .then((app) => {\n const params = {\n app,\n instance: data.instance,\n token: oauth.userToken\n }\n\n return oauthApi.revokeToken(params)\n })\n .then(() => {\n store.commit('clearCurrentUser')\n store.dispatch('disconnectFromSocket')\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 },\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(new Error('Wrong username or password'))\n } else {\n reject(new Error('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(new Error('Failed to connect to server, try again'))\n })\n })\n }\n }\n}\n\nexport default users\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 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 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 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 ({ dispatch, commit, state, rootState }) {\n // Set up websocket connection\n const token = state.wsToken\n if (rootState.instance.chatAvailable && typeof token !== 'undefined' && state.socket === null) {\n const socket = new Socket('/socket', { params: { token } })\n socket.connect()\n\n commit('setSocket', socket)\n dispatch('initializeChat', socket)\n }\n },\n disconnectFromSocket ({ commit, state }) {\n state.socket && state.socket.disconnect()\n commit('setSocket', null)\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 padEmoji: true,\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 },\n mutations: {\n setChannel (state, channel) {\n state.channel = channel\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 initializeChat (store, socket) {\n const channel = socket.channel('chat:public')\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 // eslint-disable-next-line camelcase\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","const postStatus = {\n state: {\n params: null,\n modalActivated: false\n },\n mutations: {\n openPostStatusModal (state, params) {\n state.params = params\n state.modalActivated = true\n },\n closePostStatusModal (state) {\n state.modalActivated = false\n }\n },\n actions: {\n openPostStatusModal ({ commit }, params) {\n commit('openPostStatusModal', params)\n },\n closePostStatusModal ({ commit }) {\n commit('closePostStatusModal')\n }\n }\n}\n\nexport default postStatus\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 * as bodyScrollLock from 'body-scroll-lock'\n\nlet previousNavPaddingRight\nlet previousAppBgWrapperRight\n\nconst disableBodyScroll = (el) => {\n const scrollBarGap = window.innerWidth - document.documentElement.clientWidth\n bodyScrollLock.disableBodyScroll(el, {\n reserveScrollBarGap: true\n })\n setTimeout(() => {\n // If previousNavPaddingRight is already set, don't set it again.\n if (previousNavPaddingRight === undefined) {\n const navEl = document.getElementById('nav')\n previousNavPaddingRight = window.getComputedStyle(navEl).getPropertyValue('padding-right')\n navEl.style.paddingRight = previousNavPaddingRight ? `calc(${previousNavPaddingRight} + ${scrollBarGap}px)` : `${scrollBarGap}px`\n }\n // If previousAppBgWrapeprRight is already set, don't set it again.\n if (previousAppBgWrapperRight === undefined) {\n const appBgWrapperEl = document.getElementById('app_bg_wrapper')\n previousAppBgWrapperRight = window.getComputedStyle(appBgWrapperEl).getPropertyValue('right')\n appBgWrapperEl.style.right = previousAppBgWrapperRight ? `calc(${previousAppBgWrapperRight} + ${scrollBarGap}px)` : `${scrollBarGap}px`\n }\n document.body.classList.add('scroll-locked')\n })\n}\n\nconst enableBodyScroll = (el) => {\n setTimeout(() => {\n if (previousNavPaddingRight !== undefined) {\n document.getElementById('nav').style.paddingRight = previousNavPaddingRight\n // Restore previousNavPaddingRight to undefined so disableBodyScroll knows it can be set again.\n previousNavPaddingRight = undefined\n }\n if (previousAppBgWrapperRight !== undefined) {\n document.getElementById('app_bg_wrapper').style.right = previousAppBgWrapperRight\n // Restore previousAppBgWrapperRight to undefined so disableBodyScroll knows it can be set again.\n previousAppBgWrapperRight = undefined\n }\n document.body.classList.remove('scroll-locked')\n })\n bodyScrollLock.enableBodyScroll(el)\n}\n\nconst directive = {\n inserted: (el, binding) => {\n if (binding.value) {\n disableBodyScroll(el)\n }\n },\n componentUpdated: (el, binding) => {\n if (binding.oldValue === binding.value) {\n return\n }\n\n if (binding.value) {\n disableBodyScroll(el)\n } else {\n enableBodyScroll(el)\n }\n },\n unbind: (el) => {\n enableBodyScroll(el)\n }\n}\n\nexport default (Vue) => {\n Vue.directive('body-scroll-lock', directive)\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 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 getStickers = async ({ store }) => {\n try {\n const res = await window.fetch('/static/stickers.json')\n if (res.ok) {\n const values = await res.json()\n const stickers = (await Promise.all(\n Object.entries(values).map(async ([name, path]) => {\n const resPack = await window.fetch(path + 'pack.json')\n var meta = {}\n if (resPack.ok) {\n meta = await resPack.json()\n }\n return {\n pack: name,\n path,\n meta\n }\n })\n )).sort((a, b) => {\n return a.meta.title.localeCompare(b.meta.title)\n })\n store.dispatch('setInstanceOption', { name: 'stickers', value: stickers })\n } else {\n throw (res)\n }\n } catch (e) {\n console.warn(\"Can't load stickers\")\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 }).sort((a, b) => a.displayText - b.displayText)\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.entries(values).map(([key, value]) => {\n const imageUrl = value.image_url\n return {\n displayText: key,\n imageUrl: imageUrl ? store.state.instance.server + imageUrl : value,\n tags: imageUrl ? value.tags.sort((a, b) => a > b ? 1 : 0) : ['utf'],\n replacement: `:${key}: `\n }\n // Technically could use tags but those are kinda useless right now, should have been \"pack\" field, that would be more useful\n }).sort((a, b) => a.displayText.toLowerCase() > b.displayText.toLowerCase() ? 1 : 0)\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 store.dispatch('setInstanceOption', { name: 'mailerEnabled', value: metadata.mailerEnabled })\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 getStickers({ 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 Search from 'components/search/search.vue'\nimport Settings from 'components/settings/settings.vue'\nimport Registration from 'components/registration/registration.vue'\nimport PasswordReset from 'components/password_reset/password_reset.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 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 const validateAuthenticatedRoute = (to, from, next) => {\n if (store.state.users.currentUser) {\n next()\n } else {\n next(store.state.instance.redirectRootNoLogin || '/main/all')\n }\n }\n\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, beforeEnter: validateAuthenticatedRoute },\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, beforeEnter: validateAuthenticatedRoute },\n { name: 'dms', path: '/users/:username/dms', component: DMs, beforeEnter: validateAuthenticatedRoute },\n { name: 'settings', path: '/settings', component: Settings },\n { name: 'registration', path: '/registration', component: Registration },\n { name: 'password-reset', path: '/password-reset', component: PasswordReset },\n { name: 'registration-token', path: '/registration/:token', component: Registration },\n { name: 'friend-requests', path: '/friend-requests', component: FollowRequests, beforeEnter: validateAuthenticatedRoute },\n { name: 'user-settings', path: '/user-settings', component: UserSettings, beforeEnter: validateAuthenticatedRoute },\n { name: 'notifications', path: '/:username/notifications', component: Notifications, beforeEnter: validateAuthenticatedRoute },\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: 'search', path: '/search', component: Search, props: (route) => ({ query: route.query.query }) },\n { name: 'who-to-follow', path: '/who-to-follow', component: WhoToFollow, beforeEnter: validateAuthenticatedRoute },\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-5f2a502e\\\",\\\"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{-ms-flex:1;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;-ms-flex-align:center;align-items:center;-ms-flex-pack:end;justify-content:flex-end}.status-pin,.status-preview{display:-ms-flexbox;display:flex}.status-preview{position:absolute;max-width:95%;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{-ms-flex:1;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{-ms-flex:1;flex:1;padding:0}.status-el .status-usercard{margin-bottom:.75em}.status-el .user-name{white-space:nowrap;font-size:14px;overflow:hidden;-ms-flex-negative:0;flex-shrink:0;max-width:85%;font-weight:700}.status-el .user-name img{width:14px;height:14px;vertical-align:middle;-o-object-fit:contain;object-fit:contain}.status-el .media-heading{padding:0;vertical-align:bottom;-ms-flex-preferred-size:100%;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:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;line-height:18px}.status-el .media-heading .heading-name-row .name-and-account-name{display:-ms-flexbox;display:flex;min-width:0}.status-el .media-heading .heading-name-row .user-name{-ms-flex-negative:1;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;-ms-flex:1 1 0px;flex:1 1 0}.status-el .media-heading .heading-right{display:-ms-flexbox;display:flex;-ms-flex-negative:0;flex-shrink:0}.status-el .media-heading .timeago{margin-right:.2em}.status-el .media-heading .heading-reply-row{-ms-flex-line-pack:baseline;align-content:baseline;font-size:12px;line-height:18px;max-width:100%;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:stretch;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:-ms-flexbox;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:-ms-flexbox;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:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;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;z-index:1}.status-el .tall-status .status-content{height:100%;-webkit-mask:linear-gradient(0deg,#fff,transparent) bottom/100% 70px no-repeat,linear-gradient(0deg,#fff,#fff);mask:linear-gradient(0deg,#fff,transparent) bottom/100% 70px no-repeat,linear-gradient(0deg,#fff,#fff);-webkit-mask-composite:xor;mask-composite:exclude}.status-el .tall-status-hider{position:absolute;height:70px;margin-top:150px;line-height:110px;z-index:2}.status-el .cw-status-hider,.status-el .status-unhider,.status-el .tall-status-hider{display:inline-block;word-break:break-all;width:100%;text-align:center}.status-el .status-content{font-family:var(--postFont,sans-serif);line-height:1.4em;white-space:pre-wrap}.status-el .status-content img,.status-el .status-content video{max-width:100%;max-height:400px;vertical-align:middle;-o-object-fit:contain;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:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;-ms-flex-wrap:wrap;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;-o-object-fit:contain;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{position:relative;width:100%;display:-ms-flexbox;display:flex;margin-top:.75em}.status-actions>*{max-width:4em;-ms-flex:1;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:-ms-flexbox;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{-ms-flex:1;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:-ms-flexbox;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{-ms-flex:1;flex:1;overflow:hidden;position:relative;display:-ms-flexbox;display:flex;-ms-flex-align:center;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:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.attachments .attachment.media-upload-container{-ms-flex:0 0 auto;flex:0 0 auto;max-height:200px;max-width:100%;display:-ms-flexbox;display:flex;-ms-flex-align:center;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;-ms-flex-item-align:start;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{-ms-flex:1 0 40%;flex:1 0 40%}.attachments .non-gallery.attachment .nsfw{height:260px}.attachments .non-gallery.attachment .small{height:120px;-ms-flex-positive:0;flex-grow:0}.attachments .non-gallery.attachment .video{height:260px;display:-ms-flexbox;display:flex}.attachments .non-gallery.attachment video{max-height:100%;-o-object-fit:contain;object-fit:contain}.attachments .fullwidth{-ms-flex-preferred-size:100%;flex-basis:100%}.attachments.video{line-height:0}.attachments .video-container{display:-ms-flexbox;display:flex;max-height:100%}.attachments .video{width:100%;height: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{-ms-flex-preferred-size:90%;flex-basis:90%;width:100%;display:-ms-flexbox;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;-ms-flex:1 0 100%;flex:1 0 100%;width:100%;margin-right:15px;display:-ms-flexbox;display:flex}.attachments .oembed img{width:100%}.attachments .oembed .image{-ms-flex:1;flex:1}.attachments .oembed .image img{border:0;border-radius:5px;height:100%;-o-object-fit:cover;object-fit:cover}.attachments .oembed .text{-ms-flex:2;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{-o-object-fit:cover;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%;-o-object-fit:contain;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%;-o-object-fit:contain;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-e06359e2\\\",\\\"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-0df86888\\\",\\\"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-6feb4525\\\",\\\"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:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;margin:0 0 .5em}.poll .poll-option{margin:.75em .5em}.poll .option-result{height:100%;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;position:relative;color:#b9b9ba;color:var(--lightText,#b9b9ba)}.poll .option-result-label{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding:.1em .25em;z-index:1}.poll .result-percentage{width:3.5em;-ms-flex-negative:0;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:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.poll input{width:3.5em}.poll .footer{display:-ms-flexbox;display:flex;-ms-flex-align:center;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-58a06a46\\\",\\\"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, \".tooltip.popover{z-index:8}.tooltip.popover .popover-inner{box-shadow:1px 1px 4px rgba(0,0,0,.6);box-shadow:var(--panelShadow);border-radius:4px;border-radius:var(--btnRadius,4px);background-color:#121a24;background-color:var(--bg,#121a24)}.tooltip.popover .popover-arrow{width:0;height:0;border-style:solid;position:absolute;margin:5px;border-color:#121a24;border-color:var(--bg,#121a24);z-index:1}.tooltip.popover[x-placement^=top]{margin-bottom:5px}.tooltip.popover[x-placement^=top] .popover-arrow{border-width:5px 5px 0;border-left-color:transparent!important;border-right-color:transparent!important;border-bottom-color:transparent!important;bottom:-5px;left:calc(50% - 5px);margin-top:0;margin-bottom:0}.tooltip.popover[x-placement^=bottom]{margin-top:5px}.tooltip.popover[x-placement^=bottom] .popover-arrow{border-width:0 5px 5px;border-left-color:transparent!important;border-right-color:transparent!important;border-top-color:transparent!important;top:-5px;left:calc(50% - 5px);margin-top:0;margin-bottom:0}.tooltip.popover[x-placement^=right]{margin-left:5px}.tooltip.popover[x-placement^=right] .popover-arrow{border-width:5px 5px 5px 0;border-left-color:transparent!important;border-top-color:transparent!important;border-bottom-color:transparent!important;left:-5px;top:calc(50% - 5px);margin-left:0;margin-right:0}.tooltip.popover[x-placement^=left]{margin-right:5px}.tooltip.popover[x-placement^=left] .popover-arrow{border-width:5px 0 5px 5px;border-top-color:transparent!important;border-right-color:transparent!important;border-bottom-color:transparent!important;right:-5px;top:calc(50% - 5px);margin-left:0;margin-right:0}.tooltip.popover[aria-hidden=true]{visibility:hidden;opacity:0;transition:opacity .15s,visibility .15s}.tooltip.popover[aria-hidden=false]{visibility:visible;opacity:1;transition:opacity .15s}.dropdown-menu{display:block;padding:.5rem 0;font-size:1rem;text-align:left;list-style:none;max-width:100vw;z-index:10}.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}.extra-button-popover.open .icon-ellipsis,.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:-ms-flexbox;display:flex;-ms-flex-align:center;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{padding-top:5px}.post-status-form .form-bottom,.post-status-form .visibility-tray{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}.post-status-form .form-bottom{padding:.5em;height:32px}.post-status-form .form-bottom button{width:10em}.post-status-form .form-bottom p{margin:.35em;padding:.35em;display:-ms-flexbox;display:flex}.post-status-form .form-bottom-left{display:-ms-flexbox;display:flex;-ms-flex:1;flex:1;padding-right:7px;margin-right:7px;max-width:10em}.post-status-form .text-format .only-format{color:hsla(240,1%,73%,.5);color:var(--faint,hsla(240,1%,73%,.5))}.post-status-form .emoji-icon,.post-status-form .media-upload-icon,.post-status-form .poll-icon{font-size:26px;-ms-flex:1;flex:1}.post-status-form .emoji-icon i,.post-status-form .media-upload-icon i,.post-status-form .poll-icon i{display:block;width:100%}.post-status-form .emoji-icon.selected i,.post-status-form .emoji-icon.selected label,.post-status-form .emoji-icon:hover i,.post-status-form .emoji-icon:hover label,.post-status-form .media-upload-icon.selected i,.post-status-form .media-upload-icon.selected label,.post-status-form .media-upload-icon:hover i,.post-status-form .media-upload-icon:hover label,.post-status-form .poll-icon.selected i,.post-status-form .poll-icon.selected label,.post-status-form .poll-icon:hover i,.post-status-form .poll-icon:hover label{color:#b9b9ba;color:var(--lightText,#b9b9ba)}.post-status-form .media-upload-icon{-ms-flex-order:1;order:1;text-align:left}.post-status-form .emoji-icon{-ms-flex-order:2;order:2;text-align:center}.post-status-form .poll-icon{-ms-flex-order:3;order:3;text-align:right}.post-status-form .icon-chart-bar{cursor:pointer}.post-status-form .error{text-align:center}.post-status-form .media-upload-wrapper{-ms-flex:0 0 auto;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 .status-input-wrapper{display:-ms-flexbox;display:flex;position:relative;width:100%;-ms-flex-direction:column;flex-direction:column}.post-status-form .attachments{padding:0 .5em}.post-status-form .attachments .attachment{margin:0;position:relative;-ms-flex:0 0 auto;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;-ms-flex:1 0 auto;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{padding:.6em}.post-status-form .form-group,.post-status-form form{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.post-status-form .form-group{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 .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-4326bedd\\\",\\\"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{.icon-upload{cursor:pointer}label{display:block;width:100%}}\", \"\"]);\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(\"d6bd964a\", 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:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;position:relative}.emoji-input .emoji-picker-icon{position:absolute;top:0;right:0;margin:.2em .25em;font-size:16px;cursor:pointer;line-height:24px}.emoji-input .emoji-picker-icon:hover i{color:#b9b9ba;color:var(--text,#b9b9ba)}.emoji-input .emoji-picker-panel{position:absolute;z-index:20;margin-top:2px}.emoji-input .emoji-picker-panel.hide{display:none}.emoji-input .autocomplete-panel{position:absolute;z-index:20;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:-ms-flexbox;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;-o-object-fit:contain;object-fit:contain}.emoji-input .autocomplete-item .label{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;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{-ms-flex:1 0 auto;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!./emoji_picker.scss\")\n}\n/* script */\nexport * from \"!!babel-loader!./emoji_picker.js\"\nimport __vue_script__ from \"!!babel-loader!./emoji_picker.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-4e9b5d61\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./emoji_picker.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!./emoji_picker.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(\"7bb72e68\", 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-picker{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;position:absolute;right:0;left:0;height:320px;margin:0!important;z-index:1}.emoji-picker .keep-open{padding:7px;line-height:normal}.emoji-picker .keep-open-label{padding:0 7px;display:-ms-flexbox;display:flex}.emoji-picker .heading{display:-ms-flexbox;display:flex;height:32px;padding:10px 7px 5px}.emoji-picker .content{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex:1 1 0px;flex:1 1 0;min-height:0}.emoji-picker .emoji-tabs{-ms-flex-positive:1;flex-grow:1}.emoji-picker .additional-tabs{border-left:1px solid;border-left-color:#666;border-left-color:var(--icon,#666);padding-left:7px;-ms-flex:0 0 0px;flex:0 0 0}.emoji-picker .additional-tabs,.emoji-picker .emoji-tabs{display:block;min-width:0;-ms-flex-preferred-size:auto;flex-basis:auto;-ms-flex-negative:1;flex-shrink:1}.emoji-picker .additional-tabs-item,.emoji-picker .emoji-tabs-item{padding:0 7px;cursor:pointer;font-size:24px}.emoji-picker .additional-tabs-item.disabled,.emoji-picker .emoji-tabs-item.disabled{opacity:.5;pointer-events:none}.emoji-picker .additional-tabs-item.active,.emoji-picker .emoji-tabs-item.active{border-bottom:4px solid}.emoji-picker .additional-tabs-item.active i,.emoji-picker .emoji-tabs-item.active i{color:#b9b9ba;color:var(--lightText,#b9b9ba)}.emoji-picker .sticker-picker{-ms-flex:1 1 0px;flex:1 1 0}.emoji-picker .emoji-content,.emoji-picker .stickers-content{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex:1 1 0px;flex:1 1 0;min-height:0}.emoji-picker .emoji-content.hidden,.emoji-picker .stickers-content.hidden{opacity:0;pointer-events:none;position:absolute}.emoji-picker .emoji-search{padding:5px;-ms-flex:0 0 0px;flex:0 0 0}.emoji-picker .emoji-search input{width:100%}.emoji-picker .emoji-groups{-ms-flex:1 1 1px;flex:1 1 1px;position:relative;overflow:auto;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-mask:linear-gradient(0deg,#fff 0,transparent) bottom no-repeat,linear-gradient(180deg,#fff 0,transparent) top no-repeat,linear-gradient(0deg,#fff,#fff);mask:linear-gradient(0deg,#fff 0,transparent) bottom no-repeat,linear-gradient(180deg,#fff 0,transparent) top no-repeat,linear-gradient(0deg,#fff,#fff);transition:-webkit-mask-size .15s;transition:mask-size .15s;transition:mask-size .15s,-webkit-mask-size .15s;-webkit-mask-size:100% 20px,100% 20px,auto;mask-size:100% 20px,100% 20px,auto;-webkit-mask-composite:xor;mask-composite:exclude}.emoji-picker .emoji-groups.scrolled-top{-webkit-mask-size:100% 20px,100% 0,auto;mask-size:100% 20px,100% 0,auto}.emoji-picker .emoji-groups.scrolled-bottom{-webkit-mask-size:100% 0,100% 20px,auto;mask-size:100% 0,100% 20px,auto}.emoji-picker .emoji-group{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-wrap:wrap;flex-wrap:wrap;padding-left:5px;-ms-flex-pack:left;justify-content:left}.emoji-picker .emoji-group-title{font-size:12px;width:100%;margin:0}.emoji-picker .emoji-group-title.disabled{display:none}.emoji-picker .emoji-item{width:32px;height:32px;box-sizing:border-box;display:-ms-flexbox;display:flex;font-size:32px;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;margin:4px;cursor:pointer}.emoji-picker .emoji-item img{-o-object-fit:contain;object-fit:contain;max-width:100%;max-height:100%}\", \"\"]);\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_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-1f896331\\\",\\\"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:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;padding:0 .5em .5em}.poll-form .add-option{-ms-flex-item-align:start;align-self:flex-start;padding-top:.25em;cursor:pointer}.poll-form .poll-option{display:-ms-flexbox;display:flex;-ms-flex-align:baseline;align-items:baseline;-ms-flex-pack:justify;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:-ms-flexbox;display:flex;width:100%}.poll-form .poll-type{margin-right:.75em;-ms-flex:1 1 60%;flex:1 1 60%}.poll-form .poll-type .select{border:none;box-shadow:none;background-color:transparent}.poll-form .poll-expiry{display:-ms-flexbox;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{position:relative}.user-card .panel-heading{padding:.5em 0;text-align:center;box-shadow:none;background:transparent;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:stretch;align-items:stretch;position:relative}.user-card .panel-body{word-wrap:break-word;border-bottom-right-radius:inherit;border-bottom-left-radius:inherit;position:relative}.user-card .background-image{position:absolute;top:0;left:0;right:0;bottom:0;-webkit-mask:linear-gradient(0deg,#fff,transparent) bottom no-repeat,linear-gradient(0deg,#fff,#fff);mask:linear-gradient(0deg,#fff,transparent) bottom no-repeat,linear-gradient(0deg,#fff,#fff);-webkit-mask-composite:xor;mask-composite:exclude;background-size:cover;-webkit-mask-size:100% 60%;mask-size:100% 60%}.user-card .background-image.hide-bio{-webkit-mask-size:100% 40px;mask-size:100% 40px}.user-card p{margin-bottom:0}.user-card-bio{text-align:center}.user-card-bio img{-o-object-fit:contain;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:-ms-flexbox;display:flex;-ms-flex-align:start;align-items:flex-start;max-height:56px}.user-info .container .avatar{-ms-flex:1 0 100%;flex:1 0 100%;width:56px;height:56px;box-shadow:0 1px 8px rgba(0,0,0,.75);box-shadow:var(--avatarShadow);-o-object-fit:cover;object-fit:cover}.user-info:hover .animated.avatar canvas{display:none}.user-info:hover .animated.avatar img{visibility:visible}.user-info-avatar-link{position:relative;cursor:pointer}.user-info-avatar-link-overlay{position:absolute;left:0;top:0;right:0;bottom:0;background-color:rgba(0,0,0,.3);display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;border-radius:4px;border-radius:var(--avatarRadius,4px);opacity:0;transition:opacity .2s ease}.user-info-avatar-link-overlay i{color:#fff}.user-info-avatar-link:hover .user-info-avatar-link-overlay{opacity:1}.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;-ms-flex:1 1 0px;flex:1 1 0;z-index:1}.user-info .user-summary img{width:26px;height:26px;vertical-align:middle;-o-object-fit:contain;object-fit:contain}.user-info .user-summary .top-line{display:-ms-flexbox;display:flex}.user-info .user-name{text-overflow:ellipsis;overflow:hidden;-ms-flex:1 1 auto;flex:1 1 auto;margin-right:1em;font-size:15px}.user-info .user-name img{-o-object-fit:contain;object-fit:contain;height:16px;width:16px;vertical-align:middle}.user-info .bottom-line{display:-ms-flexbox;display:flex;font-weight:light;font-size:15px}.user-info .bottom-line .user-screen-name{min-width:1px;-ms-flex:0 1 auto;flex:0 1 auto;text-overflow:ellipsis;overflow:hidden;color:#b9b9ba;color:var(--lightText,#b9b9ba)}.user-info .bottom-line .dailyAvg{min-width:1px;-ms-flex:0 0 auto;flex:0 0 auto;margin-left:1em;font-size:.7em;color:#b9b9ba;color:var(--text,#b9b9ba)}.user-info .bottom-line .staff{-ms-flex:none;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:-ms-flexbox;display:flex;-ms-flex-align:baseline;align-items:baseline;font-size:14px;line-height:22px;-ms-flex-wrap:wrap;flex-wrap:wrap}.user-info .user-meta .following{-ms-flex:1 0 auto;flex:1 0 auto;margin:0;margin-bottom:.25em;text-align:left}.user-info .user-meta .highlighter{-ms-flex:0 1 auto;flex:0 1 auto;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-right:-.5em;-ms-flex-item-align:start;align-self:start}.user-info .user-meta .highlighter .userHighlightCl{padding:2px 10px;-ms-flex:1 0 auto;flex:1 0 auto}.user-info .user-meta .highlighter .userHighlightSel,.user-info .user-meta .highlighter .userHighlightSel.select{padding-top:0;padding-bottom:0;-ms-flex:1 0 auto;flex:1 0 auto}.user-info .user-meta .highlighter .userHighlightSel.select i{line-height:22px}.user-info .user-meta .highlighter .userHighlightText{width:70px;-ms-flex:1 0 auto;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{position:relative;display:-ms-flexbox;display:flex;-ms-flex-flow:row wrap;flex-flow:row wrap;-ms-flex-pack:justify;justify-content:space-between;margin-right:-.75em}.user-info .user-interactions>*{-ms-flex:1 0 0px;flex:1 0 0;margin:0 .75em .6em 0;white-space:nowrap}.user-info .user-interactions button{margin:0}.user-info .user-interactions button.pressed{border-bottom-color:hsla(0,0%,100%,.2);border-top-color:rgba(0,0,0,.2)}.user-counts{display:-ms-flexbox;display:flex;line-height:16px;padding:.5em 1.5em 0;text-align:center;-ms-flex-pack:justify;justify-content:space-between;color:#b9b9ba;color:var(--lightText,#b9b9ba);-ms-flex-wrap:wrap;flex-wrap:wrap}.user-count{-ms-flex:1 0 auto;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","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-4226f146\\\",\\\"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","// 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, \".tooltip.popover{z-index:8}.tooltip.popover .popover-inner{box-shadow:1px 1px 4px rgba(0,0,0,.6);box-shadow:var(--panelShadow);border-radius:4px;border-radius:var(--btnRadius,4px);background-color:#121a24;background-color:var(--bg,#121a24)}.tooltip.popover .popover-arrow{width:0;height:0;border-style:solid;position:absolute;margin:5px;border-color:#121a24;border-color:var(--bg,#121a24);z-index:1}.tooltip.popover[x-placement^=top]{margin-bottom:5px}.tooltip.popover[x-placement^=top] .popover-arrow{border-width:5px 5px 0;border-left-color:transparent!important;border-right-color:transparent!important;border-bottom-color:transparent!important;bottom:-5px;left:calc(50% - 5px);margin-top:0;margin-bottom:0}.tooltip.popover[x-placement^=bottom]{margin-top:5px}.tooltip.popover[x-placement^=bottom] .popover-arrow{border-width:0 5px 5px;border-left-color:transparent!important;border-right-color:transparent!important;border-top-color:transparent!important;top:-5px;left:calc(50% - 5px);margin-top:0;margin-bottom:0}.tooltip.popover[x-placement^=right]{margin-left:5px}.tooltip.popover[x-placement^=right] .popover-arrow{border-width:5px 5px 5px 0;border-left-color:transparent!important;border-top-color:transparent!important;border-bottom-color:transparent!important;left:-5px;top:calc(50% - 5px);margin-left:0;margin-right:0}.tooltip.popover[x-placement^=left]{margin-right:5px}.tooltip.popover[x-placement^=left] .popover-arrow{border-width:5px 0 5px 5px;border-top-color:transparent!important;border-right-color:transparent!important;border-bottom-color:transparent!important;right:-5px;top:calc(50% - 5px);margin-left:0;margin-right:0}.tooltip.popover[aria-hidden=true]{visibility:hidden;opacity:0;transition:opacity .15s,visibility .15s}.tooltip.popover[aria-hidden=false]{visibility:visible;opacity:1;transition:opacity .15s}.dropdown-menu{display:block;padding:.5rem 0;font-size:1rem;text-align:left;list-style:none;max-width:100vw;z-index:10}.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\\\"}.moderation-tools-popover{height:100%}.moderation-tools-popover .trigger{display:-ms-flexbox!important;display:flex!important;height:100%}\", \"\"]);\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-eafd78a6\\\",\\\"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:-ms-flexbox;display:flex;-ms-flex-pack:end;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-4127a56c\\\",\\\"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:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-ms-flex-line-pack:stretch;align-content:stretch;-ms-flex-positive:1;flex-grow:1;margin-top:.5em}.gallery-row .attachment.image{margin:0 .5em 0 0;-ms-flex-positive:1;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 canvas,.gallery-row.contain-fit img,.gallery-row.contain-fit video{-o-object-fit:contain;object-fit:contain}.gallery-row.cover-fit canvas,.gallery-row.cover-fit img,.gallery-row.cover-fit video{-o-object-fit:cover;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-7c8d99ac\\\",\\\"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:-ms-flexbox;display:flex;-ms-flex-direction:row;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{-ms-flex-negative:0;flex-shrink:0;width:120px;max-width:25%}.link-preview-card .card-image img{width:100%;height:100%;-o-object-fit:cover;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:-ms-flexbox;display:flex;-ms-flex-direction:column;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-4cea5bcf\\\",\\\"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:-ms-flexbox;display:flex;margin:0;padding:0;-ms-flex-wrap:wrap;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-f6923484\\\",\\\"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-22490669\\\",\\\"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-047310d3\\\",\\\"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-46654d24\\\",\\\"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-956f2436\\\",\\\"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;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 .muted{padding:.25em .6em}.notification .non-mention{display:-ms-flexbox;display:flex;-ms-flex:1;flex:1;-ms-flex-wrap:nowrap;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{-ms-flex:1;flex:1}.notification time{white-space:nowrap}.notification .notification-right{-ms-flex:1;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%;-ms-flex:1 1 0px;flex:1 1 0;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-ms-flex-pack:justify;justify-content:space-between}.notification .notification-details .name-and-action{-ms-flex:1;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;-o-object-fit:contain;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-b3ea6222\\\",\\\"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-294f8b6d\\\",\\\"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-17386938\\\",\\\"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{-ms-flex:2;flex:2;-ms-flex-preferred-size:500px;flex-basis:500px}.user-profile .userlist-placeholder{-ms-flex-align:middle;align-items:middle;padding:2em}.user-profile .timeline-heading,.user-profile .userlist-placeholder{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center}.user-profile .timeline-heading .alert,.user-profile .timeline-heading .loadmore-button{-ms-flex:1;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:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-align:middle;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{-ms-flex-negative:0;flex-shrink:0;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-wrap:wrap;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:-ms-flexbox;display:flex;-ms-flex:1 0;flex:1 0;margin:0;padding:.6em 1em}.basic-user-card-collapsed-content{margin-left:.7em;text-align:left;-ms-flex:1;flex:1;min-width:0}.basic-user-card-user-name img{-o-object-fit:contain;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{-ms-flex:1;flex:1;margin-left:.7em;min-width:0}\", \"\"]);\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 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 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 })\n}\n\nexport default withLoadMore\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!./search.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./search.js\"\nimport __vue_script__ from \"!!babel-loader!./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-3962ec42\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./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!./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(\"354d66d6\", 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, \".search-result-heading{color:hsla(240,1%,73%,.5);color:var(--faint,hsla(240,1%,73%,.5));padding:.75rem;text-align:center}@media (max-width:800px){.search-nav-heading .tab-switcher .tabs .tab-wrapper{display:block;-ms-flex-pack:center;justify-content:center;-ms-flex:1 1 auto;flex:1 1 auto;text-align:center}}.search-result{box-sizing:border-box;border-bottom:1px solid;border-color:#222;border-color:var(--border,#222)}.search-result-footer{border-width:1px 0 0;border-style:solid;border-color:var(--border,#222);padding:10px;background-color:#182230;background-color:var(--panel,#182230)}.search-input-container{padding:.8rem;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center}.search-input-container .search-input{width:100%;line-height:1.125rem;font-size:1rem;padding:.5rem;box-sizing:border-box}.search-input-container .search-button{margin-left:.5em}.loading-icon{padding:1em}.trend{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.trend .hashtag{-ms-flex:1 1 auto;flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trend .count,.trend .hashtag{color:#b9b9ba;color:var(--text,#b9b9ba)}.trend .count{-ms-flex:0 0 auto;flex:0 0 auto;width:2rem;font-size:1.5rem;line-height:2.25rem;font-weight:500;text-align:center}\", \"\"]);\n\n// exports\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-73d046ee\\\",\\\"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:-ms-flexbox;display:flex;-ms-flex-align:baseline;align-items:baseline;margin-bottom:5px}.style-switcher .style-control .label{-ms-flex:1;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;-ms-flex: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;-ms-flex-item-align:stretch;-ms-grid-row-align:stretch;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]{-ms-flex:1;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]){-ms-flex-item-align:start;align-self:flex-start}.style-switcher .tab-switcher{margin:0 -1em}.style-switcher .reset-container{-ms-flex-wrap:wrap;flex-wrap:wrap}.style-switcher .apply-container,.style-switcher .color-container,.style-switcher .fonts-container,.style-switcher .radius-container,.style-switcher .reset-container{display:-ms-flexbox;display:flex}.style-switcher .fonts-container,.style-switcher .radius-container{-ms-flex-direction:column;flex-direction:column}.style-switcher .color-container{-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:justify;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:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:baseline;align-items:baseline;width:100%;min-height:30px;margin-bottom:1em}.style-switcher .tab-header .btn{min-width:1px;-ms-flex:0 auto;flex:0 auto;padding:0 1em}.style-switcher .tab-header p{-ms-flex:1;flex:1;margin:0;margin-right:.5em}.style-switcher .shadow-selector .override{-ms-flex:1;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:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-align:baseline;align-items:baseline;-ms-flex-wrap:wrap;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:-ms-flexbox;display:flex}.style-switcher .save-load-options .override,.style-switcher .save-load .override{margin-left:.5em}.style-switcher .save-load-options{-ms-flex-wrap:wrap;flex-wrap:wrap;margin-top:.5em;-ms-flex-pack:center;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:-ms-flexbox;display:flex}.style-switcher .preview-container .dummy .post .content{-ms-flex:1;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:-ms-flexbox;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:-ms-flexbox;display:flex;-ms-flex-align:center;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{-ms-flex:0 auto;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{-ms-flex:0 auto;flex:0 auto;width:48px;height:48px;font-size:14px;line-height:48px}.style-switcher .preview-container .dummy .actions{display:-ms-flexbox;display:flex;-ms-flex-align:baseline;align-items:baseline}.style-switcher .preview-container .dummy .actions .checkbox{display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:baseline;align-items:baseline;margin-right:1em;-ms-flex:1;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{-ms-flex:1;flex:1}.style-switcher .preview-container .dummy .btn{margin-left:0;padding:0 1em;min-width:3em;min-height:30px}.style-switcher .apply-container{-ms-flex-pack:center;justify-content:center}.style-switcher .color-item,.style-switcher .radius-item{min-width:20em;margin:5px 6px 0 0;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex:1 1 0px;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:-ms-flexbox;display:flex;-ms-flex-align:baseline;align-items:baseline}.style-switcher .radius-item{-ms-flex-preferred-size:auto;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));-ms-flex-item-align:stretch;-ms-grid-row-align:stretch;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;-ms-flex:1;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;-ms-flex:1;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-81777656\\\",\\\"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-4f14fbae\\\",\\\"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:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:center;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{-ms-flex:0;flex:0;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;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:-ms-flexbox;display:flex;-ms-flex:0;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{-ms-flex-align:start;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{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:end;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{-ms-flex:1;flex:1;background-color:#999;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack: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{-ms-flex:1;flex:1;min-width:280px}.shadow-control .shadow-tweak .id-control{-ms-flex-align:stretch;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{-ms-flex:1;flex:1}.shadow-control .shadow-tweak .id-control .select select{-ms-flex-item-align:initial;-ms-grid-row-align:initial;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-0edf8dfc\\\",\\\"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-3203db10\\\",\\\"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:-ms-flexbox;display:flex;-ms-flex-pack:end;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-35d05e9f\\\",\\\"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:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:baseline;align-items:baseline;-ms-flex-pack:center;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-35b6f354\\\",\\\"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-177f3bfe\\\",\\\"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:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;margin:.6em}.registration-form .container{display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row}.registration-form .terms-of-service{-ms-flex:0 1 50%;flex:0 1 50%;margin:.8em}.registration-form .text-fields{margin-top:.6em;-ms-flex:1 0;flex:1 0;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.registration-form textarea{min-height:100px;resize:vertical}.registration-form .form-group{display:-ms-flexbox;display:flex;-ms-flex-direction:column;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{-ms-flex-direction:column-reverse;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!./password_reset.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./password_reset.js\"\nimport __vue_script__ from \"!!babel-loader!./password_reset.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-3e4c9998\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./password_reset.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!./password_reset.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(\"1ef4fd93\", 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, \".password-reset-form{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center;margin:.6em}.password-reset-form .container{display:-ms-flexbox;display:flex;-ms-flex:1 0;flex:1 0;-ms-flex-direction:column;flex-direction:column;margin-top:.6em;max-width:18rem}.password-reset-form .form-group{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;margin-bottom:1em;padding:.3em 0;line-height:24px}.password-reset-form .error{text-align:center;animation-name:shakeError;animation-duration:.4s;animation-timing-function:ease-in-out}.password-reset-form .alert{padding:.5em;margin:.3em 0 1em}.password-reset-form .notice-dismissible{padding-right:2rem}.password-reset-form .icon-cancel{cursor:pointer}\", \"\"]);\n\n// exports\n","import { reduce } from 'lodash'\n\nconst MASTODON_PASSWORD_RESET_URL = `/auth/password`\n\nconst resetPassword = ({ instance, email }) => {\n const params = { email }\n const query = reduce(params, (acc, v, k) => {\n const encoded = `${k}=${encodeURIComponent(v)}`\n return `${acc}&${encoded}`\n }, '')\n const url = `${instance}${MASTODON_PASSWORD_RESET_URL}?${query}`\n\n return window.fetch(url, {\n method: 'POST'\n })\n}\n\nexport default resetPassword\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-d6fa1c54\\\",\\\"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}.profile-edit .setting-subitem{margin-left:1.75em}\", \"\"]);\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-3babea86\\\",\\\"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-633eab92\\\",\\\"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-4de27707\\\",\\\"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-1c291d00\\\",\\\"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:-ms-flexbox;display:flex;-ms-flex-align:center;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:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding:.6em 0;border-bottom:2px solid;border-bottom-color:#222;border-bottom-color:var(--border,#222)}.selectable-list-header-actions{-ms-flex:1;flex:1}.selectable-list-checkbox-wrapper{padding:0 10px;-ms-flex:none;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","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-5fe32d1d\\\",\\\"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-4927596c\\\",\\\"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-7229517a\\\",\\\"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 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 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 })\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-e9d3ba70\\\",\\\"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:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:baseline;align-items:baseline}.mfa-settings .setup-otp{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-wrap:wrap;flex-wrap:wrap}.mfa-settings .setup-otp .qr-code{-ms-flex:1;flex:1;padding-right:10px}.mfa-settings .setup-otp .verify{-ms-flex:1;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-613f1377\\\",\\\"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-df66df96\\\",\\\"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-9c427644\\\",\\\"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-1edf2e22\\\",\\\"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:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap}.follow-request-card-content-container button{margin-top:.5em;margin-right:.5em;-ms-flex:1 1;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!./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-38aaa196\\\",\\\"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:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;padding:.6em}.login-form .btn{min-height:28px;width:10em}.login-form .register{-ms-flex:1 1;flex:1 1}.login-form .login-bottom{margin-top:1em;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between}.login-form .form-group{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;padding:.3em .5em .6em;line-height:24px}.login-form .form-bottom{display:-ms-flexbox;display:flex;padding:.5em;height:32px}.login-form .form-bottom button{width:10em}.login-form .form-bottom p{margin:.35em;padding:.35em;display:-ms-flexbox;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-129661d4\\\",\\\"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-b4428228\\\",\\\"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:-ms-flexbox;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:-ms-flexbox;display:flex}.chat-input textarea{-ms-flex:1;flex:1;margin:.6em;min-height:3.5em;resize:none}.chat-panel .title{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;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-4f8c3288\\\",\\\"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-1839d1a6\\\",\\\"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!./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-687e38f6\\\",\\\"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-447b276a\\\",\\\"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%;left:0;right:-20px;background-size:cover;background-repeat:no-repeat;background-position:0 50%}i[class^=icon-]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;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);-ms-flex-line-pack:start;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}body.hidden{display:none}a{text-decoration:none;color:#d8a070;color:var(--link,#d8a070)}button{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;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;-webkit-hyphens:none;-ms-hyphens:none;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;-ms-flex:1;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{-ms-flex-negative:0;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{-ms-flex-negative:0;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)}.btn-block{display:block;width:100%}.btn-group{position:relative;display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}.btn-group button{position:relative;-ms-flex:1 1 auto;flex:1 1 auto}.btn-group button:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group button:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.container{-ms-flex-wrap:wrap;flex-wrap:wrap;margin:0;padding:0 10px}.container,.item{display:-ms-flexbox;display:flex}.item{-ms-flex:1;flex:1;line-height:50px;height:50px;overflow:hidden;-ms-flex-wrap:wrap;flex-wrap:wrap}.item .nav-icon{margin-left:.4em}.item.right{-ms-flex-pack:end;justify-content:flex-end}.auto-size{-ms-flex:1;flex:1}.nav-bar{padding:0;width:100%;-ms-flex-align:center;align-items:center;position:fixed;height:50px;box-sizing:border-box}.nav-bar .logo{display:-ms-flexbox;display:flex;-ms-flex-align:stretch;align-items:stretch;-ms-flex-pack:center;justify-content:center;-ms-flex:0 0 auto;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{-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain;background-color:#182230;background-color:var(--topBarText,#182230)}.nav-bar .logo img{height:100%;-o-object-fit:contain;object-fit:contain;display:block;-ms-flex:0;flex:0}.nav-bar .inner-nav{position:relative;margin:auto;box-sizing:border-box;padding-left:10px;padding-right:10px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-preferred-size:970px;flex-basis:970px;height:50px}.nav-bar .inner-nav a,.nav-bar .inner-nav a i{color:#d8a070;color:var(--topBarLink,#d8a070)}main-router{-ms-flex:1;flex:1}.status.compact{color:rgba(0,0,0,.42);font-weight:300}.status.compact p{margin:0;font-size:.8em}.panel{display:-ms-flexbox;display:flex;position:relative;-ms-flex-direction:column;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:-ms-flexbox;display:flex;-ms-flex:none;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);-ms-flex-align:baseline;align-items:baseline;box-shadow:var(--panelHeaderShadow)}.panel-heading .title{-ms-flex:1 0 auto;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{-ms-flex-negative:0;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;-ms-flex-item-align:stretch;-ms-grid-row-align:stretch;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)}.fade-enter-active,.fade-leave-active{transition:opacity .2s}.fade-enter,.fade-leave-active{opacity:0}.main{-ms-flex-preferred-size:50%;flex-basis:50%;-ms-flex-positive:1;flex-grow:1;-ms-flex-negative:1;flex-shrink:1}.sidebar-bounds{-ms-flex:0;flex:0;-ms-flex-preferred-size:35%;flex-basis:35%}.sidebar-flexer{-ms-flex:1;flex:1;-ms-flex-preferred-size:345px;flex-basis:345px;width:365px}.mobile-shown{display:none}@media (min-width:800px){body{overflow-y:scroll}.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;-ms-flex-negative:0;flex-shrink:0;-ms-flex-positive: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:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-align: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:-ms-flexbox;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:-ms-flexbox;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-0c6dc368\\\",\\\"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-170e1150\\\",\\\"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!./search_bar.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./search_bar.js\"\nimport __vue_script__ from \"!!babel-loader!./search_bar.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-723d6cec\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./search_bar.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!./search_bar.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(\"0ea9aafc\", 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, \".search-bar-container{max-width:100%;display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:baseline;align-items:baseline;vertical-align:baseline;-ms-flex-pack:end;justify-content:flex-end}.search-bar-container .search-bar-input,.search-bar-container .search-button{height:29px}.search-bar-container .search-bar-input{max-width:calc(100% - 30px - 30px - 20px)}.search-bar-container .search-button{margin-left:.5em;margin-right:.5em}.search-bar-container .icon-cancel{cursor:pointer}\", \"\"]);\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-b4d31272\\\",\\\"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-8821b536\\\",\\\"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}body:not(.scroll-locked) .media-modal-view{display:none}.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);image-orientation:from-image}.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;-webkit-appearance:none;-moz-appearance: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:-ms-flexbox;display:flex;-ms-flex-align:stretch;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{-ms-flex:1 1 100%;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;-ms-flex:0 0 80%;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:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding:.85em}.side-drawer-logo-wrapper img{-ms-flex:none;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{-ms-flex:0 0 0px;flex:0 0 0}.side-drawer-closed{transform:translate(-100%)}.side-drawer-heading{background:transparent;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:stretch;align-items:stretch;display:-ms-flexbox;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","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_button.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./mobile_post_status_button.js\"\nimport __vue_script__ from \"!!babel-loader!./mobile_post_status_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-336b066e\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./mobile_post_status_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!./mobile_post_status_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(\"7f8eca07\", 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, \".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:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-align: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-26b7478b\\\",\\\"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:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.mobile-nav-button{display:-ms-flexbox;display:flex;-ms-flex-pack:center;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:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;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-c5b7cf3a\\\",\\\"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;-ms-flex:1;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-reporting-panel .panel-body{display:-ms-flexbox;display:flex;-ms-flex-direction:column-reverse;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:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;overflow-y:auto}.user-reporting-panel-sitem{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}.user-reporting-panel-sitem>.status-el{-ms-flex:1;flex:1}.user-reporting-panel-sitem>.checkbox{margin:.75em}@media (min-width:801px){.user-reporting-panel .panel-body{-ms-flex-direction:row;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%;-ms-flex:1 1 auto;flex:1 1 auto;margin-bottom:12px}}\", \"\"]);\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!./post_status_modal.vue\")\n}\n/* script */\nexport * from \"!!babel-loader!./post_status_modal.js\"\nimport __vue_script__ from \"!!babel-loader!./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-159b2d4a\\\",\\\"hasScoped\\\":false,\\\"optionsId\\\":\\\"0\\\",\\\"buble\\\":{\\\"transforms\\\":{}}}!../../../node_modules/vue-loader/lib/selector?type=template&index=0!./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","// 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_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(\"7628c2ae\", 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{-ms-flex-align:start;align-items:flex-start}.post-form-modal-panel{-ms-flex-negative:0;flex-shrink:0;margin-top:25%;margin-bottom:2em;width:100%;max-width:700px}@media (orientation:landscape){.post-form-modal-panel{margin-top:8%}}\", \"\"]);\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:{\"id\":\"preview_checkbox\",\"checked\":\"very yes\",\"type\":\"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-e47f8928\\\",\\\"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":""}