Merge branch 'bugfix/elixir-1.15' into 'develop'

Elixir 1.15 compatibility

See merge request pleroma/pleroma!3917
This commit is contained in:
feld 2024-06-20 01:07:41 +00:00
commit 9a4cdde5c9
198 changed files with 409 additions and 757 deletions

3
.gitignore vendored
View File

@ -60,3 +60,6 @@ pleroma.iml
*~ *~
*# *#
*.swp *.swp
archive-*
.gitlab-ci-local

View File

@ -86,7 +86,6 @@ build-1.15.8-otp-26:
- .using-ci-base - .using-ci-base
stage: build stage: build
image: git.pleroma.social:5050/pleroma/pleroma/ci-base:elixir-1.15.8-otp-26 image: git.pleroma.social:5050/pleroma/pleroma/ci-base:elixir-1.15.8-otp-26
allow_failure: true
script: script:
- mix compile --force - mix compile --force
@ -136,7 +135,7 @@ unit-testing-1.13.4-otp-25:
script: &testing_script script: &testing_script
- mix ecto.create - mix ecto.create
- mix ecto.migrate - mix ecto.migrate
- mix test --cover --preload-modules - mix pleroma.test_runner --cover --preload-modules
coverage: '/^Line total: ([^ ]*%)$/' coverage: '/^Line total: ([^ ]*%)$/'
artifacts: artifacts:
reports: reports:
@ -150,7 +149,6 @@ unit-testing-1.15.8-otp-26:
- .using-ci-base - .using-ci-base
stage: test stage: test
image: git.pleroma.social:5050/pleroma/pleroma/ci-base:elixir-1.15.8-otp-26 image: git.pleroma.social:5050/pleroma/pleroma/ci-base:elixir-1.15.8-otp-26
allow_failure: true
cache: *testing_cache_policy cache: *testing_cache_policy
services: *testing_services services: *testing_services
script: *testing_script script: *testing_script
@ -167,11 +165,11 @@ unit-testing-1.13.4-otp-25-erratic:
script: script:
- mix ecto.create - mix ecto.create
- mix ecto.migrate - mix ecto.migrate
- mix test --only=erratic - mix pleroma.test_runner --only=erratic
formatting-1.13: formatting-1.15:
extends: .build_changes_policy extends: .build_changes_policy
image: &formatting_elixir elixir:1.13-alpine image: &formatting_elixir elixir:1.15-alpine
stage: lint stage: lint
cache: *testing_cache_policy cache: *testing_cache_policy
before_script: &current_bfr_script before_script: &current_bfr_script

View File

@ -0,0 +1 @@
Elixir Logger configuration is now longer permitted through AdminFE and ConfigDB

View File

@ -0,0 +1 @@
Elixir 1.15 compatibility

View File

@ -132,6 +132,8 @@ config :pleroma, Pleroma.Web.Endpoint,
] ]
# Configures Elixir's Logger # Configures Elixir's Logger
config :logger, backends: [:console]
config :logger, :console, config :logger, :console,
level: :debug, level: :debug,
format: "\n$time $metadata[$level] $message\n", format: "\n$time $metadata[$level] $message\n",

View File

@ -1228,79 +1228,6 @@ config :pleroma, :config_description, [
} }
] ]
}, },
%{
group: :logger,
type: :group,
description: "Logger-related settings",
children: [
%{
key: :backends,
type: [:atom, :tuple, :module],
description:
"Where logs will be sent, :console - send logs to stdout, { ExSyslogger, :ex_syslogger } - to syslog, Quack.Logger - to Slack.",
suggestions: [:console, {ExSyslogger, :ex_syslogger}]
}
]
},
%{
group: :logger,
type: :group,
key: :ex_syslogger,
label: "ExSyslogger",
description: "ExSyslogger-related settings",
children: [
%{
key: :level,
type: {:dropdown, :atom},
description: "Log level",
suggestions: [:debug, :info, :warning, :error]
},
%{
key: :ident,
type: :string,
description:
"A string that's prepended to every message, and is typically set to the app name",
suggestions: ["pleroma"]
},
%{
key: :format,
type: :string,
description: "Default: \"$date $time [$level] $levelpad$node $metadata $message\"",
suggestions: ["$metadata[$level] $message"]
},
%{
key: :metadata,
type: {:list, :atom},
suggestions: [:request_id]
}
]
},
%{
group: :logger,
type: :group,
key: :console,
label: "Console Logger",
description: "Console logger settings",
children: [
%{
key: :level,
type: {:dropdown, :atom},
description: "Log level",
suggestions: [:debug, :info, :warning, :error]
},
%{
key: :format,
type: :string,
description: "Default: \"$date $time [$level] $levelpad$node $metadata $message\"",
suggestions: ["$metadata[$level] $message"]
},
%{
key: :metadata,
type: {:list, :atom},
suggestions: [:request_id]
}
]
},
%{ %{
group: :pleroma, group: :pleroma,
key: :frontend_configurations, key: :frontend_configurations,

View File

@ -36,7 +36,7 @@ config :pleroma, Pleroma.Emails.Mailer, adapter: Swoosh.Adapters.Local
# different ports. # different ports.
# Do not include timestamps in development logs # Do not include timestamps in development logs
config :logger, :console, format: "$metadata[$level] $message\n" config :logger, Logger.Backends.Console, format: "$metadata[$level] $message\n"
# Set a higher stacktrace during development. Avoid configuring such # Set a higher stacktrace during development. Avoid configuring such
# in production as building large stacktraces may be expensive. # in production as building large stacktraces may be expensive.

View File

@ -20,7 +20,7 @@ config :pleroma, Pleroma.Web.Endpoint,
config :phoenix, serve_endpoints: true config :phoenix, serve_endpoints: true
# Do not print debug messages in production # Do not print debug messages in production
config :logger, :console, level: :info config :logger, Logger.Backends.Console, level: :info
config :logger, :ex_syslogger, level: :info config :logger, :ex_syslogger, level: :info
# ## SSL Support # ## SSL Support

View File

@ -49,7 +49,8 @@ config :pleroma, Pleroma.Repo,
hostname: System.get_env("DB_HOST") || "localhost", hostname: System.get_env("DB_HOST") || "localhost",
port: System.get_env("DB_PORT") || "5432", port: System.get_env("DB_PORT") || "5432",
pool: Ecto.Adapters.SQL.Sandbox, pool: Ecto.Adapters.SQL.Sandbox,
pool_size: System.schedulers_online() * 2 pool_size: System.schedulers_online() * 2,
log: false
config :pleroma, :dangerzone, override_repo_pool_size: true config :pleroma, :dangerzone, override_repo_pool_size: true
@ -177,6 +178,10 @@ config :pleroma, Pleroma.Application,
streamer_registry: false, streamer_registry: false,
test_http_pools: true test_http_pools: true
config :pleroma, Pleroma.Web.Streaming, sync_streaming: true
config :pleroma, Pleroma.Web.MastodonAPI.StatusView, sync_fetching: true
config :pleroma, Pleroma.Uploaders.Uploader, timeout: 1_000 config :pleroma, Pleroma.Uploaders.Uploader, timeout: 1_000
config :pleroma, Pleroma.Emoji.Loader, test_emoji: true config :pleroma, Pleroma.Emoji.Loader, test_emoji: true

View File

@ -853,7 +853,7 @@ config :logger,
backends: [{ExSyslogger, :ex_syslogger}] backends: [{ExSyslogger, :ex_syslogger}]
config :logger, :ex_syslogger, config :logger, :ex_syslogger,
level: :warn level: :warning
``` ```
Another example, keeping console output and adding the pid to syslog output: Another example, keeping console output and adding the pid to syslog output:
@ -862,7 +862,7 @@ config :logger,
backends: [:console, {ExSyslogger, :ex_syslogger}] backends: [:console, {ExSyslogger, :ex_syslogger}]
config :logger, :ex_syslogger, config :logger, :ex_syslogger,
level: :warn, level: :warning,
option: [:pid, :ndelay] option: [:pid, :ndelay]
``` ```

View File

@ -1,7 +1,7 @@
## Required dependencies ## Required dependencies
* PostgreSQL >=11.0 * PostgreSQL >=11.0
* Elixir >=1.13.0 <1.15 * Elixir >=1.13.0 <1.17
* Erlang OTP >=22.2.0 (supported: <27) * Erlang OTP >=22.2.0 (supported: <27)
* git * git
* file / libmagic * file / libmagic

View File

@ -14,7 +14,8 @@ defmodule Mix.Pleroma do
:swoosh, :swoosh,
:timex, :timex,
:fast_html, :fast_html,
:oban :oban,
:logger_backends
] ]
@cachex_children ["object", "user", "scrubber", "web_resp"] @cachex_children ["object", "user", "scrubber", "web_resp"]
@doc "Common functions to be reused in mix tasks" @doc "Common functions to be reused in mix tasks"

View File

@ -351,7 +351,7 @@ defmodule Mix.Tasks.Pleroma.Database do
) )
end end
shell_info('Done.') shell_info(~c"Done.")
end end
end end

View File

@ -0,0 +1,25 @@
defmodule Mix.Tasks.Pleroma.TestRunner do
@shortdoc "Retries tests once if they fail"
use Mix.Task
def run(args \\ []) do
case System.cmd("mix", ["test"] ++ args, into: IO.stream(:stdio, :line)) do
{_, 0} ->
:ok
_ ->
retry(args)
end
end
def retry(args) do
case System.cmd("mix", ["test", "--failed"] ++ args, into: IO.stream(:stdio, :line)) do
{_, 0} ->
:ok
_ ->
exit(1)
end
end
end

View File

@ -1,5 +1,5 @@
# Pleroma: A lightweight social networking server # Pleroma: A lightweight social networking server
# Copyright © 2017-2022 Pleroma Authors <https://pleroma.social/> # Copyright © 2017-2023 Pleroma Authors <https://pleroma.social/>
# SPDX-License-Identifier: AGPL-3.0-only # SPDX-License-Identifier: AGPL-3.0-only
defmodule Pleroma.Config.TransferTask do defmodule Pleroma.Config.TransferTask do
@ -44,14 +44,9 @@ defmodule Pleroma.Config.TransferTask do
with {_, true} <- {:configurable, Config.get(:configurable_from_database)} do with {_, true} <- {:configurable, Config.get(:configurable_from_database)} do
# We need to restart applications for loaded settings take effect # We need to restart applications for loaded settings take effect
{logger, other} = settings =
(Repo.all(ConfigDB) ++ deleted_settings) (Repo.all(ConfigDB) ++ deleted_settings)
|> Enum.map(&merge_with_default/1) |> Enum.map(&merge_with_default/1)
|> Enum.split_with(fn {group, _, _, _} -> group in [:logger] end)
logger
|> Enum.sort()
|> Enum.each(&configure/1)
started_applications = Application.started_applications() started_applications = Application.started_applications()
@ -64,7 +59,7 @@ defmodule Pleroma.Config.TransferTask do
[:pleroma | reject] [:pleroma | reject]
end end
other settings
|> Enum.map(&update/1) |> Enum.map(&update/1)
|> Enum.uniq() |> Enum.uniq()
|> Enum.reject(&(&1 in reject)) |> Enum.reject(&(&1 in reject))
@ -102,38 +97,6 @@ defmodule Pleroma.Config.TransferTask do
{group, key, value, merged} {group, key, value, merged}
end end
# change logger configuration in runtime, without restart
defp configure({_, :backends, _, merged}) do
# removing current backends
Enum.each(Application.get_env(:logger, :backends), &Logger.remove_backend/1)
Enum.each(merged, &Logger.add_backend/1)
:ok = update_env(:logger, :backends, merged)
end
defp configure({_, key, _, merged}) when key in [:console, :ex_syslogger] do
merged =
if key == :console do
put_in(merged[:format], merged[:format] <> "\n")
else
merged
end
backend =
if key == :ex_syslogger,
do: {ExSyslogger, :ex_syslogger},
else: key
Logger.configure_backend(backend, merged)
:ok = update_env(:logger, key, merged)
end
defp configure({_, key, _, merged}) do
Logger.configure([{key, merged}])
:ok = update_env(:logger, key, merged)
end
defp update({group, key, value, merged}) do defp update({group, key, value, merged}) do
try do try do
:ok = update_env(group, key, merged) :ok = update_env(group, key, merged)

View File

@ -165,8 +165,7 @@ defmodule Pleroma.ConfigDB do
{:pleroma, :ecto_repos}, {:pleroma, :ecto_repos},
{:mime, :types}, {:mime, :types},
{:cors_plug, [:max_age, :methods, :expose, :headers]}, {:cors_plug, [:max_age, :methods, :expose, :headers]},
{:swarm, :node_blacklist}, {:swarm, :node_blacklist}
{:logger, :backends}
] ]
Enum.any?(full_key_update, fn Enum.any?(full_key_update, fn
@ -385,7 +384,12 @@ defmodule Pleroma.ConfigDB do
@spec module_name?(String.t()) :: boolean() @spec module_name?(String.t()) :: boolean()
def module_name?(string) do def module_name?(string) do
Regex.match?(~r/^(Pleroma|Phoenix|Tesla|Ueberauth|Swoosh)\./, string) or if String.contains?(string, ".") do
string in ["Oban", "Ueberauth", "ExSyslogger", "ConcurrentLimiter"] [name | _] = String.split(string, ".", parts: 2)
name in ~w[Pleroma Phoenix Tesla Ueberauth Swoosh Logger LoggerBackends]
else
string in ~w[Oban Ueberauth ExSyslogger ConcurrentLimiter]
end
end end
end end

View File

@ -416,10 +416,10 @@ defmodule Pleroma.Emoji.Pack do
end end
defp create_archive_and_cache(pack, hash) do defp create_archive_and_cache(pack, hash) do
files = ['pack.json' | Enum.map(pack.files, fn {_, file} -> to_charlist(file) end)] files = [~c"pack.json" | Enum.map(pack.files, fn {_, file} -> to_charlist(file) end)]
{:ok, {_, result}} = {:ok, {_, result}} =
:zip.zip('#{pack.name}.zip', files, [:memory, cwd: to_charlist(pack.path)]) :zip.zip(~c"#{pack.name}.zip", files, [:memory, cwd: to_charlist(pack.path)])
ttl_per_file = Pleroma.Config.get!([:emoji, :shared_pack_cache_seconds_per_file]) ttl_per_file = Pleroma.Config.get!([:emoji, :shared_pack_cache_seconds_per_file])
overall_ttl = :timer.seconds(ttl_per_file * Enum.count(files)) overall_ttl = :timer.seconds(ttl_per_file * Enum.count(files))
@ -586,7 +586,7 @@ defmodule Pleroma.Emoji.Pack do
with :ok <- File.mkdir_p!(local_pack.path) do with :ok <- File.mkdir_p!(local_pack.path) do
files = Enum.map(remote_pack["files"], fn {_, path} -> to_charlist(path) end) files = Enum.map(remote_pack["files"], fn {_, path} -> to_charlist(path) end)
# Fallback cannot contain a pack.json file # Fallback cannot contain a pack.json file
files = if pack_info[:fallback], do: files, else: ['pack.json' | files] files = if pack_info[:fallback], do: files, else: [~c"pack.json" | files]
:zip.unzip(archive, cwd: to_charlist(local_pack.path), file_list: files) :zip.unzip(archive, cwd: to_charlist(local_pack.path), file_list: files)
end end

View File

@ -134,7 +134,10 @@ defmodule Pleroma.Object.Updater do
else else
%{updated_object: updated_data} = %{updated_object: updated_data} =
updated_data updated_data
|> maybe_update_history(original_data, updated: updated, use_history_in_new_object?: false) |> maybe_update_history(original_data,
updated: updated,
use_history_in_new_object?: false
)
updated_data updated_data
|> Map.put("updated", date) |> Map.put("updated", date)

View File

@ -249,14 +249,16 @@ defmodule Pleroma.Upload do
defp url_from_spec(_upload, _base_url, {:url, url}), do: url defp url_from_spec(_upload, _base_url, {:url, url}), do: url
@spec base_url() :: binary
def base_url do def base_url do
uploader = @config_impl.get([Pleroma.Upload, :uploader]) uploader = @config_impl.get([Pleroma.Upload, :uploader])
upload_base_url = @config_impl.get([Pleroma.Upload, :base_url]) upload_fallback_url = Pleroma.Web.Endpoint.url() <> "/media/"
upload_base_url = @config_impl.get([Pleroma.Upload, :base_url]) || upload_fallback_url
public_endpoint = @config_impl.get([uploader, :public_endpoint]) public_endpoint = @config_impl.get([uploader, :public_endpoint])
case uploader do case uploader do
Pleroma.Uploaders.Local -> Pleroma.Uploaders.Local ->
upload_base_url || Pleroma.Web.Endpoint.url() <> "/media/" upload_base_url
Pleroma.Uploaders.S3 -> Pleroma.Uploaders.S3 ->
bucket = @config_impl.get([Pleroma.Uploaders.S3, :bucket]) bucket = @config_impl.get([Pleroma.Uploaders.S3, :bucket])
@ -268,11 +270,14 @@ defmodule Pleroma.Upload do
!is_nil(truncated_namespace) -> !is_nil(truncated_namespace) ->
truncated_namespace truncated_namespace
!is_nil(namespace) -> !is_nil(namespace) and !is_nil(bucket) ->
namespace <> ":" <> bucket namespace <> ":" <> bucket
true -> !is_nil(bucket) ->
bucket bucket
true ->
""
end end
if public_endpoint do if public_endpoint do
@ -285,7 +290,7 @@ defmodule Pleroma.Upload do
@config_impl.get([Pleroma.Uploaders.IPFS, :get_gateway_url]) @config_impl.get([Pleroma.Uploaders.IPFS, :get_gateway_url])
_ -> _ ->
public_endpoint || upload_base_url || Pleroma.Web.Endpoint.url() <> "/media/" public_endpoint || upload_base_url
end end
end end
end end

View File

@ -197,12 +197,12 @@ defmodule Pleroma.User.Backup do
end end
@files [ @files [
'actor.json', ~c"actor.json",
'outbox.json', ~c"outbox.json",
'likes.json', ~c"likes.json",
'bookmarks.json', ~c"bookmarks.json",
'followers.json', ~c"followers.json",
'following.json' ~c"following.json"
] ]
@spec export(Pleroma.User.Backup.t(), pid()) :: {:ok, String.t()} | :error @spec export(Pleroma.User.Backup.t(), pid()) :: {:ok, String.t()} | :error
def export(%__MODULE__{} = backup, caller_pid) do def export(%__MODULE__{} = backup, caller_pid) do

View File

@ -79,7 +79,9 @@ defmodule Pleroma.Web.ApiSpec.SearchOperation do
%Schema{type: :string, enum: ["accounts", "hashtags", "statuses"]}, %Schema{type: :string, enum: ["accounts", "hashtags", "statuses"]},
"Search type" "Search type"
), ),
Operation.parameter(:q, :query, %Schema{type: :string}, "The search query", required: true), Operation.parameter(:q, :query, %Schema{type: :string}, "The search query",
required: true
),
Operation.parameter( Operation.parameter(
:resolve, :resolve,
:query, :query,

View File

@ -110,7 +110,7 @@ defmodule Pleroma.Web.Auth.LDAPAuthenticator do
} }
params = params =
case List.keyfind(attributes, 'mail', 0) do case List.keyfind(attributes, ~c"mail", 0) do
{_, [mail]} -> Map.put_new(params, :email, :erlang.list_to_binary(mail)) {_, [mail]} -> Map.put_new(params, :email, :erlang.list_to_binary(mail))
_ -> params _ -> params
end end

View File

@ -8,6 +8,7 @@ defmodule Pleroma.Web.MastodonAPI.StatusView do
require Pleroma.Constants require Pleroma.Constants
alias Pleroma.Activity alias Pleroma.Activity
alias Pleroma.Config
alias Pleroma.HTML alias Pleroma.HTML
alias Pleroma.Maps alias Pleroma.Maps
alias Pleroma.Object alias Pleroma.Object
@ -30,7 +31,13 @@ defmodule Pleroma.Web.MastodonAPI.StatusView do
# pagination is restricted to 40 activities at a time # pagination is restricted to 40 activities at a time
defp fetch_rich_media_for_activities(activities) do defp fetch_rich_media_for_activities(activities) do
Enum.each(activities, fn activity -> Enum.each(activities, fn activity ->
spawn(fn -> Card.get_by_activity(activity) end) fun = fn -> Card.get_by_activity(activity) end
if Config.get([__MODULE__, :sync_fetching], false) do
fun.()
else
spawn(fun)
end
end) end)
end end

View File

@ -104,7 +104,7 @@ defmodule Pleroma.Web.MastodonAPI.WebsocketHandler do
end end
def handle_info(:close, state) do def handle_info(:close, state) do
{:stop, {:closed, 'connection closed by server'}, state} {:stop, {:closed, ~c"connection closed by server"}, state}
end end
def handle_info(msg, state) do def handle_info(msg, state) do

View File

@ -75,8 +75,7 @@ defmodule Pleroma.Web.MediaProxy do
%{host: domain} = URI.parse(url) %{host: domain} = URI.parse(url)
mediaproxy_whitelist_domains = mediaproxy_whitelist_domains =
[:media_proxy, :whitelist] Config.get([:media_proxy, :whitelist], [])
|> Config.get()
|> Kernel.++(["#{Upload.base_url()}"]) |> Kernel.++(["#{Upload.base_url()}"])
|> Enum.map(&maybe_get_domain_from_url/1) |> Enum.map(&maybe_get_domain_from_url/1)

View File

@ -34,7 +34,9 @@ defmodule Pleroma.Web.Plugs.OAuthScopesPlug do
permissions = Enum.join(missing_scopes, " #{op} ") permissions = Enum.join(missing_scopes, " #{op} ")
error_message = error_message =
dgettext("errors", "Insufficient permissions: %{permissions}.", permissions: permissions) dgettext("errors", "Insufficient permissions: %{permissions}.",
permissions: permissions
)
conn conn
|> put_resp_content_type("application/json") |> put_resp_content_type("application/json")

View File

@ -172,7 +172,13 @@ defmodule Pleroma.Web.Streamer do
def stream(topics, items) do def stream(topics, items) do
if should_env_send?() do if should_env_send?() do
for topic <- List.wrap(topics), item <- List.wrap(items) do for topic <- List.wrap(topics), item <- List.wrap(items) do
spawn(fn -> do_stream(topic, item) end) fun = fn -> do_stream(topic, item) end
if Config.get([__MODULE__, :sync_streaming], false) do
fun.()
else
spawn(fun)
end
end end
end end
end end

View File

@ -9,7 +9,7 @@ defmodule Pleroma.Web.XML do
def string_from_xpath(xpath, doc) do def string_from_xpath(xpath, doc) do
try do try do
{:xmlObj, :string, res} = :xmerl_xpath.string('string(#{xpath})', doc) {:xmlObj, :string, res} = :xmerl_xpath.string(~c"string(#{xpath})", doc)
res = res =
res res

25
mix.exs
View File

@ -8,7 +8,7 @@ defmodule Pleroma.Mixfile do
elixir: "~> 1.13", elixir: "~> 1.13",
elixirc_paths: elixirc_paths(Mix.env()), elixirc_paths: elixirc_paths(Mix.env()),
compilers: Mix.compilers(), compilers: Mix.compilers(),
elixirc_options: [warnings_as_errors: warnings_as_errors()], elixirc_options: [warnings_as_errors: warnings_as_errors(), prune_code_paths: false],
xref: [exclude: [:eldap]], xref: [exclude: [:eldap]],
dialyzer: [plt_add_apps: [:mix, :eldap]], dialyzer: [plt_add_apps: [:mix, :eldap]],
start_permanent: Mix.env() == :prod, start_permanent: Mix.env() == :prod,
@ -73,14 +73,15 @@ defmodule Pleroma.Mixfile do
def application do def application do
[ [
mod: {Pleroma.Application, []}, mod: {Pleroma.Application, []},
extra_applications: [ extra_applications:
[
:logger, :logger,
:runtime_tools, :runtime_tools,
:comeonin, :comeonin,
:fast_sanitize, :fast_sanitize,
:os_mon, :os_mon,
:ssl :ssl
], ] ++ logger_application(),
included_applications: [:ex_syslogger] included_applications: [:ex_syslogger]
] ]
end end
@ -109,6 +110,22 @@ defmodule Pleroma.Mixfile do
for s <- oauth_strategy_packages, do: {String.to_atom(s), ">= 0.0.0"} for s <- oauth_strategy_packages, do: {String.to_atom(s), ">= 0.0.0"}
end end
defp logger_application do
if Version.match?(System.version(), "<1.15.0-rc.0") do
[]
else
[:logger_backends]
end
end
defp logger_deps do
if Version.match?(System.version(), "<1.15.0-rc.0") do
[]
else
[{:logger_backends, "~> 1.0"}]
end
end
# Specifies your project dependencies. # Specifies your project dependencies.
# #
# Type `mix help deps` for examples and options. # Type `mix help deps` for examples and options.
@ -197,7 +214,7 @@ defmodule Pleroma.Mixfile do
{:websockex, "~> 0.4.3", only: :test}, {:websockex, "~> 0.4.3", only: :test},
{:benchee, "~> 1.0", only: :benchmark}, {:benchee, "~> 1.0", only: :benchmark},
{:dialyxir, "~> 1.4", only: [:dev, :test], runtime: false} {:dialyxir, "~> 1.4", only: [:dev, :test], runtime: false}
] ++ oauth_deps() ] ++ oauth_deps() ++ logger_deps()
end end
# Aliases are shortcuts or tasks specific to the current project. # Aliases are shortcuts or tasks specific to the current project.

View File

@ -70,6 +70,7 @@
"jose": {:hex, :jose, "1.11.6", "613fda82552128aa6fb804682e3a616f4bc15565a048dabd05b1ebd5827ed965", [:mix, :rebar3], [], "hexpm", "6275cb75504f9c1e60eeacb771adfeee4905a9e182103aa59b53fed651ff9738"}, "jose": {:hex, :jose, "1.11.6", "613fda82552128aa6fb804682e3a616f4bc15565a048dabd05b1ebd5827ed965", [:mix, :rebar3], [], "hexpm", "6275cb75504f9c1e60eeacb771adfeee4905a9e182103aa59b53fed651ff9738"},
"jumper": {:hex, :jumper, "1.0.2", "68cdcd84472a00ac596b4e6459a41b3062d4427cbd4f1e8c8793c5b54f1406a7", [:mix], [], "hexpm", "9b7782409021e01ab3c08270e26f36eb62976a38c1aa64b2eaf6348422f165e1"}, "jumper": {:hex, :jumper, "1.0.2", "68cdcd84472a00ac596b4e6459a41b3062d4427cbd4f1e8c8793c5b54f1406a7", [:mix], [], "hexpm", "9b7782409021e01ab3c08270e26f36eb62976a38c1aa64b2eaf6348422f165e1"},
"linkify": {:hex, :linkify, "0.5.3", "5f8143d8f61f5ff08d3aeeff47ef6509492b4948d8f08007fbf66e4d2246a7f2", [:mix], [], "hexpm", "3ef35a1377d47c25506e07c1c005ea9d38d700699d92ee92825f024434258177"}, "linkify": {:hex, :linkify, "0.5.3", "5f8143d8f61f5ff08d3aeeff47ef6509492b4948d8f08007fbf66e4d2246a7f2", [:mix], [], "hexpm", "3ef35a1377d47c25506e07c1c005ea9d38d700699d92ee92825f024434258177"},
"logger_backends": {:hex, :logger_backends, "1.0.0", "09c4fad6202e08cb0fbd37f328282f16539aca380f512523ce9472b28edc6bdf", [:mix], [], "hexpm", "1faceb3e7ec3ef66a8f5746c5afd020e63996df6fd4eb8cdb789e5665ae6c9ce"},
"majic": {:hex, :majic, "1.0.0", "37e50648db5f5c2ff0c9fb46454d034d11596c03683807b9fb3850676ffdaab3", [:make, :mix], [{:elixir_make, "~> 0.6.1", [hex: :elixir_make, repo: "hexpm", optional: false]}, {:mime, "~> 1.0", [hex: :mime, repo: "hexpm", optional: false]}, {:nimble_pool, "~> 0.2", [hex: :nimble_pool, repo: "hexpm", optional: false]}, {:plug, "~> 1.0", [hex: :plug, repo: "hexpm", optional: true]}], "hexpm", "7905858f76650d49695f14ea55cd9aaaee0c6654fa391671d4cf305c275a0a9e"}, "majic": {:hex, :majic, "1.0.0", "37e50648db5f5c2ff0c9fb46454d034d11596c03683807b9fb3850676ffdaab3", [:make, :mix], [{:elixir_make, "~> 0.6.1", [hex: :elixir_make, repo: "hexpm", optional: false]}, {:mime, "~> 1.0", [hex: :mime, repo: "hexpm", optional: false]}, {:nimble_pool, "~> 0.2", [hex: :nimble_pool, repo: "hexpm", optional: false]}, {:plug, "~> 1.0", [hex: :plug, repo: "hexpm", optional: true]}], "hexpm", "7905858f76650d49695f14ea55cd9aaaee0c6654fa391671d4cf305c275a0a9e"},
"makeup": {:hex, :makeup, "1.0.5", "d5a830bc42c9800ce07dd97fa94669dfb93d3bf5fcf6ea7a0c67b2e0e4a7f26c", [:mix], [{:nimble_parsec, "~> 0.5 or ~> 1.0", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "cfa158c02d3f5c0c665d0af11512fed3fba0144cf1aadee0f2ce17747fba2ca9"}, "makeup": {:hex, :makeup, "1.0.5", "d5a830bc42c9800ce07dd97fa94669dfb93d3bf5fcf6ea7a0c67b2e0e4a7f26c", [:mix], [{:nimble_parsec, "~> 0.5 or ~> 1.0", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "cfa158c02d3f5c0c665d0af11512fed3fba0144cf1aadee0f2ce17747fba2ca9"},
"makeup_elixir": {:hex, :makeup_elixir, "0.14.1", "4f0e96847c63c17841d42c08107405a005a2680eb9c7ccadfd757bd31dabccfb", [:mix], [{:makeup, "~> 1.0", [hex: :makeup, repo: "hexpm", optional: false]}], "hexpm", "f2438b1a80eaec9ede832b5c41cd4f373b38fd7aa33e3b22d9db79e640cbde11"}, "makeup_elixir": {:hex, :makeup_elixir, "0.14.1", "4f0e96847c63c17841d42c08107405a005a2680eb9c7ccadfd757bd31dabccfb", [:mix], [{:makeup, "~> 1.0", [hex: :makeup, repo: "hexpm", optional: false]}], "hexpm", "f2438b1a80eaec9ede832b5c41cd4f373b38fd7aa33e3b22d9db79e640cbde11"},

View File

@ -7,7 +7,10 @@ defmodule Pleroma.Repo.Migrations.CreateUserTrigramIndex do
def change do def change do
create_if_not_exists( create_if_not_exists(
index(:users, ["(nickname || name) gist_trgm_ops"], name: :users_trigram_index, using: :gist) index(:users, ["(nickname || name) gist_trgm_ops"],
name: :users_trigram_index,
using: :gist
)
) )
end end
end end

View File

@ -20,7 +20,10 @@ defmodule Pleroma.Repo.Migrations.FixUserTrigramIndex do
drop_if_exists(index(:users, [], name: :users_trigram_index)) drop_if_exists(index(:users, [], name: :users_trigram_index))
create_if_not_exists( create_if_not_exists(
index(:users, ["(nickname || name) gist_trgm_ops"], name: :users_trigram_index, using: :gist) index(:users, ["(nickname || name) gist_trgm_ops"],
name: :users_trigram_index,
using: :gist
)
) )
end end
end end

View File

@ -7,7 +7,10 @@ defmodule Pleroma.Repo.Migrations.AddTagIndexToObjects do
def change do def change do
drop_if_exists( drop_if_exists(
index(:activities, ["(data #> '{\"object\",\"tag\"}')"], using: :gin, name: :activities_tags) index(:activities, ["(data #> '{\"object\",\"tag\"}')"],
using: :gin,
name: :activities_tags
)
) )
create_if_not_exists(index(:objects, ["(data->'tag')"], using: :gin, name: :objects_tags)) create_if_not_exists(index(:objects, ["(data->'tag')"], using: :gin, name: :objects_tags))

View File

@ -9,7 +9,9 @@ defmodule Pleroma.Repo.Migrations.RemoteipPlugRename do
def up do def up do
config = config =
from(c in Pleroma.ConfigDB, where: c.group == ^:pleroma and c.key == ^Pleroma.Plugs.RemoteIp) from(c in Pleroma.ConfigDB,
where: c.group == ^:pleroma and c.key == ^Pleroma.Plugs.RemoteIp
)
|> Pleroma.Repo.one() |> Pleroma.Repo.one()
if config do if config do

View File

@ -0,0 +1,7 @@
defmodule Pleroma.Repo.Migrations.DeprecateConfigDBLogger do
use Ecto.Migration
def change do
execute("DELETE FROM config WHERE config.group = ':logger'")
end
end

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
.select-field[data-v-993770c0]{width:350px}@media only screen and (max-width:480px){.select-field[data-v-993770c0]{width:100%;margin-bottom:5px}}.el-dialog__body{padding:20px}.create-account-form-item{margin-bottom:20px}.create-account-form-item-without-margin{margin-bottom:0}@media only screen and (max-width:480px){.create-user-dialog{width:85%}.create-account-form-item{margin-bottom:20px}.el-dialog__body{padding:20px}}.el-dropdown-menu--small .el-dropdown-menu__item.el-dropdown-menu__item--divided.actor-type-dropdown:before{margin:0;height:0}.el-dropdown-menu--small .actor-type-dropdown{padding:0}.actor-type-select{width:100%}.actor-type-select input{border-color:transparent;color:#606266}.actor-type-select .el-input__inner:hover{border-color:transparent;background-color:#ecf5ff}.actor-type-select .el-input.is-focus{border-color:transparent}.actor-type-select .el-input__suffix-inner{pointer-events:none}.actor-type-select .el-input.is-active .el-input__inner,.actor-type-select .el-input.is-focus .el-input__inner,.actor-type-select .el-input__inner:focus,.actor-type-select .el-select .el-input__inner:focus{border-color:transparent}.moderate-user-button{text-align:left;width:350px;padding:10px}.moderate-user-button-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.moderation-dropdown-menu{width:350px}@media only screen and (max-width:480px){.moderate-user-button{width:100%}.moderation-dropdown-menu{width:auto}}.actions-button{text-align:left;width:350px;padding:10px}.actions-container{display:-webkit-box;display:-ms-flexbox;display:flex;height:36px;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:0 15px 10px}.actions-container .el-dropdown{margin-left:10px}.active-tag{color:#409eff;font-weight:700}.active-tag .el-icon-check{color:#409eff;float:right;margin:7px 0 0 15px}.active-tag.is-disabled .el-icon-check{color:#bbb}.el-dropdown-link:hover{cursor:pointer;color:#409eff}.create-account>.el-icon-plus{margin-right:5px}.password-reset-token{margin:0 0 14px}.password-reset-token-dialog{width:50%}.reason-tooltip{max-width:450px}.reset-password-link{text-decoration:underline}.users-header-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.users-container h1{margin:10px 0 0 15px;height:40px}.users-container .cell{word-break:break-word}.users-container .el-table__row:hover{cursor:pointer}.users-container .pagination{margin:25px 0;text-align:center}.users-container .reboot-button{margin:0 15px 0 0;padding:10px;width:145px}.users-container .search{width:350px;float:right;margin-left:10px}.users-container .filter-container{display:-webkit-box;display:-ms-flexbox;display:flex;height:36px;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:15px}.users-container .user-count{color:grey;font-size:28px}@media only screen and (max-width:480px){.password-reset-token-dialog{width:85%}.users-container h1{margin:0}.users-container .actions-button{width:100%}.users-container .actions-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;margin:0 10px 7px}.users-container .el-icon-arrow-down{font-size:12px}.users-container .search{width:100%;margin-left:0}.users-container .filter-container{display:-webkit-box;display:-ms-flexbox;display:flex;height:82px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;margin:0 10px}.users-container .el-table__row .el-tag{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:30px;margin-bottom:4px;font-weight:700}.users-container .reboot-button{margin:0}.users-container .users-header-container{margin:7px 10px 12px}.users-container .user-count{color:grey;font-size:22px}}@media only screen and (max-width:801px) and (min-width:481px){.actions-button,.search{width:49%}} .select-field[data-v-5760059c]{width:350px}@media only screen and (max-width:480px){.select-field[data-v-5760059c]{width:100%;margin-bottom:5px}}.el-dialog__body{padding:20px}.create-account-form-item{margin-bottom:20px}.create-account-form-item-without-margin{margin-bottom:0}@media only screen and (max-width:480px){.create-user-dialog{width:85%}.create-account-form-item{margin-bottom:20px}.el-dialog__body{padding:20px}}.el-dropdown-menu--small .el-dropdown-menu__item.el-dropdown-menu__item--divided.actor-type-dropdown:before{margin:0;height:0}.el-dropdown-menu--small .actor-type-dropdown{padding:0}.actor-type-select{width:100%}.actor-type-select input{border-color:transparent;color:#606266}.actor-type-select .el-input__inner:hover{border-color:transparent;background-color:#ecf5ff}.actor-type-select .el-input.is-focus{border-color:transparent}.actor-type-select .el-input__suffix-inner{pointer-events:none}.actor-type-select .el-input.is-active .el-input__inner,.actor-type-select .el-input.is-focus .el-input__inner,.actor-type-select .el-input__inner:focus,.actor-type-select .el-select .el-input__inner:focus{border-color:transparent}.moderate-user-button{text-align:left;width:350px;padding:10px}.moderate-user-button-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.moderation-dropdown-menu{width:350px}@media only screen and (max-width:480px){.moderate-user-button{width:100%}.moderation-dropdown-menu{width:auto}}.actions-button{text-align:left;width:350px;padding:10px}.actions-container{display:-webkit-box;display:-ms-flexbox;display:flex;height:36px;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:0 15px 10px}.actions-container .el-dropdown{margin-left:10px}.active-tag{color:#409eff;font-weight:700}.active-tag .el-icon-check{color:#409eff;float:right;margin:7px 0 0 15px}.active-tag.is-disabled .el-icon-check{color:#bbb}.el-dropdown-link:hover{cursor:pointer;color:#409eff}.create-account>.el-icon-plus{margin-right:5px}.password-reset-token{margin:0 0 14px}.password-reset-token-dialog{width:50%}.reason-tooltip{max-width:450px}.reset-password-link{text-decoration:underline}.users-header-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.users-container h1{margin:10px 0 0 15px;height:40px}.users-container .cell{word-break:break-word}.users-container .el-table__row:hover{cursor:pointer}.users-container .pagination{margin:25px 0;text-align:center}.users-container .reboot-button{margin:0 15px 0 0;padding:10px;width:145px}.users-container .search{width:350px;float:right;margin-left:10px}.users-container .filter-container{display:-webkit-box;display:-ms-flexbox;display:flex;height:36px;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:15px}.users-container .user-count{color:grey;font-size:28px}@media only screen and (max-width:480px){.password-reset-token-dialog{width:85%}.users-container h1{margin:0}.users-container .actions-button{width:100%}.users-container .actions-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;margin:0 10px 7px}.users-container .el-icon-arrow-down{font-size:12px}.users-container .search{width:100%;margin-left:0}.users-container .filter-container{display:-webkit-box;display:-ms-flexbox;display:flex;height:82px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;margin:0 10px}.users-container .el-table__row .el-tag{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:30px;margin-bottom:4px;font-weight:700}.users-container .reboot-button{margin:0}.users-container .users-header-container{margin:7px 10px 12px}.users-container .user-count{color:grey;font-size:22px}}@media only screen and (max-width:801px)and (min-width:481px){.actions-button,.search{width:49%}}

View File

@ -0,0 +1 @@
@supports(-webkit-mask:none) and (not (cater-color:#fff)){.login-container .el-input input{color:#fff}.login-container .el-input input:first-line{color:#eee}}.login-container .el-input{display:inline-block;height:47px;width:85%}.login-container .el-input input{background:transparent;border:0;-webkit-appearance:none;border-radius:0;padding:12px 5px 12px 15px;color:#eee;height:47px;caret-color:#fff}.login-container .el-input input:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px #283443 inset!important;-webkit-text-fill-color:#fff!important}.login-container .el-form-item{border:1px solid hsla(0,0%,100%,.1);background:rgba(0,0,0,.1);border-radius:5px;color:#454545}.login-container .login-button{width:100%;margin:0 0 10px}.login-container .omit-host-note{color:#596f8c;font-size:.8em;font-style:italic;margin:-20px 0 15px;padding:3px 0 0 15px}.login-container[data-v-0503310e]{min-height:100%;width:100%;background-color:#2d3a4b;overflow:hidden}.login-container .login-form[data-v-0503310e]{position:relative;width:520px;max-width:100%;padding:160px 35px 0;margin:0 auto;overflow:hidden}.login-container .tips[data-v-0503310e]{font-size:14px;color:#fff;margin-bottom:10px}.login-container .tips span[data-v-0503310e]:first-of-type{margin-right:16px}.login-container .svg-container[data-v-0503310e]{padding:6px 5px 6px 15px;color:#889aa4;vertical-align:middle;width:30px;display:inline-block}.login-container .title-container[data-v-0503310e]{position:relative}.login-container .title-container .title[data-v-0503310e]{font-size:26px;color:#eee;margin:0 auto 40px;text-align:center;font-weight:700}.login-container .title-container .set-language[data-v-0503310e]{color:#fff;position:absolute;top:3px;font-size:18px;right:0;cursor:pointer}.login-container .show-pwd[data-v-0503310e]{position:absolute;right:10px;top:7px;font-size:16px;color:#889aa4;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.login-container .thirdparty-button[data-v-0503310e]{position:absolute;right:0;bottom:6px}

View File

@ -1 +0,0 @@
@supports (-webkit-mask:none) and (not (cater-color:#fff)){.login-container .el-input input{color:#fff}.login-container .el-input input:first-line{color:#eee}}.login-container .el-input{display:inline-block;height:47px;width:85%}.login-container .el-input input{background:transparent;border:0;-webkit-appearance:none;border-radius:0;padding:12px 5px 12px 15px;color:#eee;height:47px;caret-color:#fff}.login-container .el-input input:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px #283443 inset!important;-webkit-text-fill-color:#fff!important}.login-container .el-form-item{border:1px solid hsla(0,0%,100%,.1);background:rgba(0,0,0,.1);border-radius:5px;color:#454545}.login-container .login-button{width:100%;margin:0 0 10px}.login-container .omit-host-note{color:#596f8c;font-size:.8em;font-style:italic;margin:-20px 0 15px;padding:3px 0 0 15px}.login-container[data-v-5aafa9c0]{min-height:100%;width:100%;background-color:#2d3a4b;overflow:hidden}.login-container .login-form[data-v-5aafa9c0]{position:relative;width:520px;max-width:100%;padding:160px 35px 0;margin:0 auto;overflow:hidden}.login-container .tips[data-v-5aafa9c0]{font-size:14px;color:#fff;margin-bottom:10px}.login-container .tips span[data-v-5aafa9c0]:first-of-type{margin-right:16px}.login-container .svg-container[data-v-5aafa9c0]{padding:6px 5px 6px 15px;color:#889aa4;vertical-align:middle;width:30px;display:inline-block}.login-container .title-container[data-v-5aafa9c0]{position:relative}.login-container .title-container .title[data-v-5aafa9c0]{font-size:26px;color:#eee;margin:0 auto 40px;text-align:center;font-weight:700}.login-container .title-container .set-language[data-v-5aafa9c0]{color:#fff;position:absolute;top:3px;font-size:18px;right:0;cursor:pointer}.login-container .show-pwd[data-v-5aafa9c0]{position:absolute;right:10px;top:7px;font-size:16px;color:#889aa4;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.login-container .thirdparty-button[data-v-5aafa9c0]{position:absolute;right:0;bottom:6px}

View File

@ -1 +0,0 @@
.error-page-container[data-v-09709f1e]{min-height:100%;width:100%;background-color:#2d3a4b;overflow:hidden}.error-page-container .buttons-group[data-v-09709f1e]{margin-top:4em}.error-page-container .el-icon-warning[data-v-09709f1e]{font-size:4.2em;color:#eee;margin:0 auto}.error-page-container .error-page[data-v-09709f1e]{width:45rem;max-width:100%;margin:16rem auto;text-align:center}.error-page-container .error-title[data-v-09709f1e]{color:#eee}

View File

@ -1 +0,0 @@
h1[data-v-4ee576de]{margin:0}.enable-mediaproxy-container[data-v-4ee576de]{margin:10px 15px}.enable-mediaproxy-container button[data-v-4ee576de]{font-size:16px}.expl[data-v-4ee576de]{color:#666;font-size:13px;line-height:22px;margin:5px 0 0;overflow-wrap:break-word;overflow:hidden;text-overflow:ellipsis}.banned-urls-table[data-v-4ee576de]{margin-top:15px;margin-bottom:15px}.evict-button[data-v-4ee576de]{margin-left:15px}.media-proxy-cache-header[data-v-4ee576de]{margin-left:15px;margin-top:22px;font-weight:500}.media-proxy-cache-header-container[data-v-4ee576de]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin:10px 15px}.pagination[data-v-4ee576de]{margin:25px 0;text-align:center}.remove-url-button[data-v-4ee576de]{width:150px}.url-input[data-v-4ee576de]{margin-right:15px}.url-input-container[data-v-4ee576de]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline;margin:15px 15px 5px}.url-input-expl[data-v-4ee576de]{margin-left:15px}@media only screen and (max-width:480px){.url-input[data-v-4ee576de]{width:100%;margin-bottom:5px}}

View File

@ -1 +1 @@
.actions-button[data-v-614822e8]{text-align:left;width:350px;padding:10px}.actions-button-container[data-v-614822e8]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.el-dropdown[data-v-614822e8]{float:right}.el-icon-edit[data-v-614822e8]{margin-right:5px}.tag-container[data-v-614822e8]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.tag-text[data-v-614822e8]{padding-right:20px}.no-hover[data-v-614822e8]:hover{color:#606266;background-color:#fff;cursor:auto} .actions-button[data-v-e9bbc6e0]{text-align:left;width:350px;padding:10px}.actions-button-container[data-v-e9bbc6e0]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.el-dropdown[data-v-e9bbc6e0]{float:right}.el-icon-edit[data-v-e9bbc6e0]{margin-right:5px}.tag-container[data-v-e9bbc6e0]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.tag-text[data-v-e9bbc6e0]{padding-right:20px}.no-hover[data-v-e9bbc6e0]:hover{color:#606266;background-color:#fff;cursor:auto}

View File

@ -1 +0,0 @@
.router-link{text-decoration:none}.moderation-log-container[data-v-a9880f26]{margin:0 15px}h1[data-v-a9880f26]{margin:0}.el-timeline[data-v-a9880f26]{margin:25px 45px 0 0;padding:0}.moderation-log-date-panel[data-v-a9880f26]{width:350px}.moderation-log-header-container[data-v-a9880f26]{-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:10px 0 15px}.moderation-log-header-container[data-v-a9880f26],.moderation-log-nav-container[data-v-a9880f26]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.moderation-log-search[data-v-a9880f26]{width:350px}.moderation-log-user-select[data-v-a9880f26]{margin:0 0 20px;width:350px}.reboot-button[data-v-a9880f26]{padding:10px;margin:0;width:145px}.pagination[data-v-a9880f26]{text-align:center}@media only screen and (max-width:480px){h1[data-v-a9880f26]{font-size:24px}.moderation-log-date-panel[data-v-a9880f26]{width:100%}.moderation-log-user-select[data-v-a9880f26]{margin:0 0 10px;width:55%}.moderation-log-search[data-v-a9880f26]{width:40%}}@media only screen and (max-width:801px) and (min-width:481px){.moderation-log-date-panel[data-v-a9880f26]{width:55%}.moderation-log-user-select[data-v-a9880f26]{margin:0 0 10px;width:55%}.moderation-log-search[data-v-a9880f26]{width:40%}}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
.error-page-container[data-v-730c981b]{min-height:100%;width:100%;background-color:#2d3a4b;overflow:hidden}.error-page-container .buttons-group[data-v-730c981b]{margin-top:4em}.error-page-container .el-icon-warning[data-v-730c981b]{font-size:4.2em;color:#eee;margin:0 auto}.error-page-container .error-page[data-v-730c981b]{width:45rem;max-width:100%;margin:16rem auto;text-align:center}.error-page-container .error-title[data-v-730c981b]{color:#eee}

View File

@ -1 +0,0 @@
.error-page-container[data-v-6c40cae5]{min-height:100%;width:100%;background-color:#2d3a4b;overflow:hidden}.error-page-container .buttons-group[data-v-6c40cae5]{margin-top:4em}.error-page-container .el-icon-warning[data-v-6c40cae5]{font-size:4.2em;color:#eee;margin:0 auto}.error-page-container .error-page[data-v-6c40cae5]{width:45rem;max-width:100%;margin:16rem auto;text-align:center}.error-page-container .error-title[data-v-6c40cae5]{color:#eee}

View File

@ -0,0 +1 @@
.router-link{text-decoration:none}.moderation-log-container[data-v-c50f051c]{margin:0 15px}h1[data-v-c50f051c]{margin:0}.el-timeline[data-v-c50f051c]{margin:25px 45px 0 0;padding:0}.moderation-log-date-panel[data-v-c50f051c]{width:350px}.moderation-log-header-container[data-v-c50f051c]{-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:10px 0 15px}.moderation-log-header-container[data-v-c50f051c],.moderation-log-nav-container[data-v-c50f051c]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.moderation-log-search[data-v-c50f051c]{width:350px}.moderation-log-user-select[data-v-c50f051c]{margin:0 0 20px;width:350px}.reboot-button[data-v-c50f051c]{padding:10px;margin:0;width:145px}.pagination[data-v-c50f051c]{text-align:center}@media only screen and (max-width:480px){h1[data-v-c50f051c]{font-size:24px}.moderation-log-date-panel[data-v-c50f051c]{width:100%}.moderation-log-user-select[data-v-c50f051c]{margin:0 0 10px;width:55%}.moderation-log-search[data-v-c50f051c]{width:40%}}@media only screen and (max-width:801px)and (min-width:481px){.moderation-log-date-panel[data-v-c50f051c]{width:55%}.moderation-log-user-select[data-v-c50f051c]{margin:0 0 10px;width:55%}.moderation-log-search[data-v-c50f051c]{width:40%}}

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
h4{margin:0;height:17px}.divider{margin:15px 0}.el-card__body{padding:17px}.el-card__header{background-color:#fafafa;padding:10px 20px}.el-collapse{border-bottom:none}.el-collapse-item__header{height:46px;font-size:14px}.el-collapse-item__content{padding-bottom:7px}.el-icon-arrow-right{margin-right:6px}.id{color:grey;margin-top:6px}.line{width:100%;height:0;border:.5px solid #ebeef5;margin:15px 0}.new-note p{font-size:14px;font-weight:500;height:17px;margin:13px 0 7px}.note{-webkit-box-shadow:0 2px 5px 0 rgba(0,0,0,.1);box-shadow:0 2px 5px 0 rgba(0,0,0,.1);margin-bottom:10px}.no-notes{font-style:italic;color:grey}.report .report-header-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline;height:40px}.report-title{margin:0}.reports-pagination{margin:25px 0;text-align:center}.reports-timeline{margin:30px 45px 45px 19px;padding:0}.submit-button{display:block;margin:7px 0 17px auto}.timestamp{margin:0;font-style:italic;color:grey}@media only screen and (max-width:480px){.report .report-header-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;height:auto}.report .id{margin:6px 0 0}.report .report-actions-button,.report .report-tag{margin:3px 0 6px}.report .title-container{margin-bottom:7px}.reports-timeline{margin:20px 10px}.reports-timeline .el-timeline-item__wrapper{padding-left:20px}}.select-field[data-v-5ab7c15a]{width:350px}@media only screen and (max-width:480px){.select-field[data-v-5ab7c15a]{width:100%;margin-bottom:5px}}@media only screen and (max-width:801px) and (min-width:481px){.select-field[data-v-5ab7c15a]{width:50%}}.reports-container .reboot-button[data-v-6ac87f34]{padding:10px;margin:0;width:145px}.reports-container .reports-filter-container[data-v-6ac87f34]{margin:15px 45px 22px 15px;padding-bottom:0}.reports-container .reports-filter-container[data-v-6ac87f34],.reports-container .reports-header-container[data-v-6ac87f34]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.reports-container .reports-header-container[data-v-6ac87f34]{margin:10px 15px}.reports-container h1[data-v-6ac87f34]{margin:0}.reports-container .no-reports-message[data-v-6ac87f34]{color:grey;margin-left:19px}.reports-container .report-count[data-v-6ac87f34]{color:grey;font-size:28px}@media only screen and (max-width:480px){.reports-container h1[data-v-6ac87f34]{margin:7px 10px 15px}.reports-container .reboot-button[data-v-6ac87f34]{margin:0 0 5px 10px;width:145px}.reports-container .report-count[data-v-6ac87f34]{font-size:22px}.reports-container .reports-filter-container[data-v-6ac87f34]{margin:0 10px}} h4{margin:0;height:17px}.divider{margin:15px 0}.el-card__body{padding:17px}.el-card__header{background-color:#fafafa;padding:10px 20px}.el-collapse{border-bottom:none}.el-collapse-item__header{height:46px;font-size:14px}.el-collapse-item__content{padding-bottom:7px}.el-icon-arrow-right{margin-right:6px}.id{color:grey;margin-top:6px}.line{width:100%;height:0;border:.5px solid #ebeef5;margin:15px 0}.new-note p{font-size:14px;font-weight:500;height:17px;margin:13px 0 7px}.note{-webkit-box-shadow:0 2px 5px 0 rgba(0,0,0,.1);box-shadow:0 2px 5px 0 rgba(0,0,0,.1);margin-bottom:10px}.no-notes{font-style:italic;color:grey}.report .report-header-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline;height:40px}.report-title{margin:0}.reports-pagination{margin:25px 0;text-align:center}.reports-timeline{margin:30px 45px 45px 19px;padding:0}.submit-button{display:block;margin:7px 0 17px auto}.timestamp{margin:0;font-style:italic;color:grey}@media only screen and (max-width:480px){.report .report-header-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;height:auto}.report .id{margin:6px 0 0}.report .report-actions-button,.report .report-tag{margin:3px 0 6px}.report .title-container{margin-bottom:7px}.reports-timeline{margin:20px 10px}.reports-timeline .el-timeline-item__wrapper{padding-left:20px}}.select-field[data-v-6b3cdc52]{width:350px}@media only screen and (max-width:480px){.select-field[data-v-6b3cdc52]{width:100%;margin-bottom:5px}}@media only screen and (max-width:801px)and (min-width:481px){.select-field[data-v-6b3cdc52]{width:50%}}.reports-container .reboot-button[data-v-a11611a0]{padding:10px;margin:0;width:145px}.reports-container .reports-filter-container[data-v-a11611a0]{margin:15px 45px 22px 15px;padding-bottom:0}.reports-container .reports-filter-container[data-v-a11611a0],.reports-container .reports-header-container[data-v-a11611a0]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.reports-container .reports-header-container[data-v-a11611a0]{margin:10px 15px}.reports-container h1[data-v-a11611a0]{margin:0}.reports-container .no-reports-message[data-v-a11611a0]{color:grey;margin-left:19px}.reports-container .report-count[data-v-a11611a0]{color:grey;font-size:28px}@media only screen and (max-width:480px){.reports-container h1[data-v-a11611a0]{margin:7px 10px 15px}.reports-container .reboot-button[data-v-a11611a0]{margin:0 0 5px 10px;width:145px}.reports-container .report-count[data-v-a11611a0]{font-size:22px}.reports-container .reports-filter-container[data-v-a11611a0]{margin:0 10px}}

View File

@ -0,0 +1 @@
h1[data-v-67d8efe6]{margin:0}.enable-mediaproxy-container[data-v-67d8efe6]{margin:10px 15px}.enable-mediaproxy-container button[data-v-67d8efe6]{font-size:16px}.expl[data-v-67d8efe6]{color:#666;font-size:13px;line-height:22px;margin:5px 0 0;overflow-wrap:break-word;overflow:hidden;text-overflow:ellipsis}.banned-urls-table[data-v-67d8efe6]{margin-top:15px;margin-bottom:15px}.evict-button[data-v-67d8efe6]{margin-left:15px}.media-proxy-cache-header[data-v-67d8efe6]{margin-left:15px;margin-top:22px;font-weight:500}.media-proxy-cache-header-container[data-v-67d8efe6]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin:10px 15px}.pagination[data-v-67d8efe6]{margin:25px 0;text-align:center}.remove-url-button[data-v-67d8efe6]{width:150px}.url-input[data-v-67d8efe6]{margin-right:15px}.url-input-container[data-v-67d8efe6]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline;margin:15px 15px 5px}.url-input-expl[data-v-67d8efe6]{margin-left:15px}@media only screen and (max-width:480px){.url-input[data-v-67d8efe6]{width:100%;margin-bottom:5px}}

View File

@ -0,0 +1 @@
.error-page-container[data-v-41b01641]{min-height:100%;width:100%;background-color:#2d3a4b;overflow:hidden}.error-page-container .buttons-group[data-v-41b01641]{margin-top:4em}.error-page-container .el-icon-warning[data-v-41b01641]{font-size:4.2em;color:#eee;margin:0 auto}.error-page-container .error-page[data-v-41b01641]{width:45rem;max-width:100%;margin:16rem auto;text-align:center}.error-page-container .error-title[data-v-41b01641]{color:#eee}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
<!DOCTYPE html><html><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge,chrome=1"><meta name=renderer content=webkit><meta name=viewport content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no"><title>Admin FE</title><link rel="shortcut icon" href=favicon.ico><link href=chunk-elementUI.852ab1db.css rel=stylesheet><link href=chunk-libs.0b4a26df.css rel=stylesheet><link href=app.147d87e8.css rel=stylesheet></head><body><div id=app></div><script type=text/javascript src=static/js/runtime.f1a41c33.js></script><script type=text/javascript src=static/js/chunk-elementUI.bec6fa77.js></script><script type=text/javascript src=static/js/chunk-libs.eb232bda.js></script><script type=text/javascript src=static/js/app.c3e187df.js></script></body></html> <!DOCTYPE html><html><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge,chrome=1"><meta name=renderer content=webkit><meta name=viewport content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no"><title>Admin FE</title><link rel="shortcut icon" href=favicon.ico><link href=chunk-elementUI.9644454c.css rel=stylesheet><link href=chunk-libs.3c625040.css rel=stylesheet><link href=app.a10ad7b9.css rel=stylesheet></head><body><div id=app></div><script type=text/javascript src=static/js/runtime.26323110.js></script><script type=text/javascript src=static/js/chunk-elementUI.d02c484d.js></script><script type=text/javascript src=static/js/chunk-libs.c8fc8a3a.js></script><script type=text/javascript src=static/js/app.85d71fab.js></script></body></html>

View File

@ -1,2 +0,0 @@
(window.webpackJsonp=window.webpackJsonp||[]).push([["7zzA"],{"7zzA":function(e,r,n){"use strict";n.r(r);var t={beforeCreate:function(){var e=this.$route,r=e.params,n=e.query,t=r.path;this.$router.replace({path:"/"+t,query:n})},render:function(e){return e()}},o=n("KHd+"),u=Object(o.a)(t,void 0,void 0,!1,null,null,null);u.options.__file="index.vue";r.default=u.exports}}]);
//# sourceMappingURL=7zzA.e1ae1c94.js.map

View File

@ -1 +0,0 @@
{"version":3,"sources":["webpack:///src/views/redirect/index.vue","webpack:///./src/views/redirect/index.vue?29eb","webpack:///./src/views/redirect/index.vue"],"names":["views_redirectvue_type_script_lang_js_","beforeCreate","_this$$route","this","$route","params","query","path","$router","replace","render","h","component","Object","componentNormalizer","staticRenderFns","options","__file","__webpack_exports__"],"mappings":"yGACe,ICD2LA,GDE1MC,aADA,WAEA,IAAAC,EAAAC,KAAAC,OAAAC,EAAAH,EAAAG,OAAAC,EAAAJ,EAAAI,MACAC,EAAAF,EAAAE,KACAJ,KAAAK,QAAAC,SAAAF,WAAAD,WAEAI,mBACA,OAAAC,kBEDAC,EAAgBC,OAAAC,EAAA,EAAAD,CACdb,OARFU,OAAAK,GAWA,EACA,KACA,KACA,MAIAH,EAAAI,QAAAC,OAAA,YACeC,EAAA,QAAAN","file":"static/js/7zzA.e1ae1c94.js","sourcesContent":["<script>\nexport default {\n beforeCreate() {\n const { params, query } = this.$route\n const { path } = params\n this.$router.replace({ path: '/' + path, query })\n },\n render: function(h) {\n return h() // avoid warning message\n }\n}\n</script>\n","import mod from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","var render, staticRenderFns\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"index.vue\"\nexport default component.exports"],"sourceRoot":""}

View File

@ -0,0 +1,2 @@
(window.webpackJsonp=window.webpackJsonp||[]).push([["7zzA"],{"7zzA":function(e,r,t){"use strict";t.r(r);var n={beforeCreate:function(){var e=this.$route,r=e.params,t=e.query,n=r.path;this.$router.replace({path:"/"+n,query:t})},render:function(e){return e()}},u=t("KHd+"),o=Object(u.a)(n,void 0,void 0,!1,null,null,null);r.default=o.exports}}]);
//# sourceMappingURL=7zzA.ff5424db.js.map

View File

@ -0,0 +1 @@
{"version":3,"sources":["webpack:///src/views/redirect/index.vue","webpack:///./src/views/redirect/index.vue?29eb","webpack:///./src/views/redirect/index.vue"],"names":["views_redirectvue_type_script_lang_js_","beforeCreate","_this$$route","this","$route","params","query","path","$router","replace","render","h","component","Object","componentNormalizer","staticRenderFns","__webpack_exports__"],"mappings":"yGAMe,ICN2LA,GDO1MC,aADA,WAEA,IAAAC,EAAAC,KAAAC,OAAAC,EAAAH,EAAAG,OAAAC,EAAAJ,EAAAI,MACAC,EAAAF,EAAAE,KACAJ,KAAAK,QAAAC,SAAAF,WAAAD,WAEAI,mBACA,OAAAC,kBENAC,EAAgBC,OAAAC,EAAA,EAAAD,CACdb,OARFU,OAAAK,GAWA,EACA,KACA,KACA,MAIeC,EAAA,QAAAJ","file":"static/js/7zzA.ff5424db.js","sourcesContent":["<!--\nSPDX-FileCopyrightText: 2017-2019 PanJiaChen <https://github.com/PanJiaChen/vue-element-admin>\nSPDX-License-Identifier: MIT\n-->\n\n<script>\nexport default {\n beforeCreate() {\n const { params, query } = this.$route\n const { path } = params\n this.$router.replace({ path: '/' + path, query })\n },\n render: function(h) {\n return h() // avoid warning message\n }\n}\n</script>\n","import mod from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","var render, staticRenderFns\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports"],"sourceRoot":""}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,2 +1,2 @@
(window.webpackJsonp=window.webpackJsonp||[]).push([["JEtC"],{JEtC:function(o,n,i){"use strict";i.r(n);var e={name:"AuthRedirect",created:function(){var o=window.location.search.slice(1);window.opener.location.href=window.location.origin+"/login#"+o,window.close()}},t=i("KHd+"),c=Object(t.a)(e,void 0,void 0,!1,null,null,null);c.options.__file="authredirect.vue";n.default=c.exports}}]); (window.webpackJsonp=window.webpackJsonp||[]).push([["JEtC"],{JEtC:function(o,n,i){"use strict";i.r(n);var e={name:"AuthRedirect",created:function(){var o=window.location.search.slice(1);window.opener.location.href=window.location.origin+"/login#"+o,window.close()}},t=i("KHd+"),c=Object(t.a)(e,void 0,void 0,!1,null,null,null);n.default=c.exports}}]);
//# sourceMappingURL=JEtC.f9ba4594.js.map //# sourceMappingURL=JEtC.1f75b169.js.map

View File

@ -0,0 +1 @@
{"version":3,"sources":["webpack:///src/views/login/authredirect.vue","webpack:///./src/views/login/authredirect.vue?a9ea","webpack:///./src/views/login/authredirect.vue"],"names":["login_authredirectvue_type_script_lang_js_","name","created","hash","window","location","search","slice","component","Object","componentNormalizer","render","staticRenderFns","__webpack_exports__"],"mappings":"uGAMe,ICNkMA,GDOjNC,oBACAC,QAFA,WAGA,IAAAC,EAAAC,OAAAC,SAAAC,OAAAC,MAAA,GACAH,+DACAA,6BEJAI,EAAgBC,OAAAC,EAAA,EAAAD,CACdT,OARFW,OAAAC,GAWA,EACA,KACA,KACA,MAIeC,EAAA,QAAAL","file":"static/js/JEtC.1f75b169.js","sourcesContent":["<!--\nSPDX-FileCopyrightText: 2017-2019 PanJiaChen <https://github.com/PanJiaChen/vue-element-admin>\nSPDX-License-Identifier: MIT\n-->\n\n<script>\nexport default {\n name: 'AuthRedirect',\n created() {\n const hash = window.location.search.slice(1)\n window.opener.location.href = window.location.origin + '/login#' + hash\n window.close()\n }\n}\n</script>\n","import mod from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./authredirect.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./authredirect.vue?vue&type=script&lang=js&\"","var render, staticRenderFns\nimport script from \"./authredirect.vue?vue&type=script&lang=js&\"\nexport * from \"./authredirect.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports"],"sourceRoot":""}

View File

@ -1 +0,0 @@
{"version":3,"sources":["webpack:///src/views/login/authredirect.vue","webpack:///./src/views/login/authredirect.vue?a9ea","webpack:///./src/views/login/authredirect.vue"],"names":["login_authredirectvue_type_script_lang_js_","name","created","hash","window","location","search","slice","component","Object","componentNormalizer","render","staticRenderFns","options","__file","__webpack_exports__"],"mappings":"uGACe,ICDkMA,GDEjNC,oBACAC,QAFA,WAGA,IAAAC,EAAAC,OAAAC,SAAAC,OAAAC,MAAA,GACAH,+DACAA,6BECAI,EAAgBC,OAAAC,EAAA,EAAAD,CACdT,OARFW,OAAAC,GAWA,EACA,KACA,KACA,MAIAJ,EAAAK,QAAAC,OAAA,mBACeC,EAAA,QAAAP","file":"static/js/JEtC.f9ba4594.js","sourcesContent":["<script>\nexport default {\n name: 'AuthRedirect',\n created() {\n const hash = window.location.search.slice(1)\n window.opener.location.href = window.location.origin + '/login#' + hash\n window.close()\n }\n}\n</script>\n","import mod from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./authredirect.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./authredirect.vue?vue&type=script&lang=js&\"","var render, staticRenderFns\nimport script from \"./authredirect.vue?vue&type=script&lang=js&\"\nexport * from \"./authredirect.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"authredirect.vue\"\nexport default component.exports"],"sourceRoot":""}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,2 @@
(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-091e"],{"32w9":function(e,n,t){"use strict";t("emju")},"3k4U":function(e,n,t){"use strict";t("vioL")},aSQl:function(e,n,t){"use strict";t.d(n,"a",function(){return p});var o=t("yXPU"),a=t.n(o),r=t("o0o1"),s=t.n(r),i=t("oAJy"),l=t.n(i),c=t("LvDl"),u=t.n(c),p=function(){var e=a()(s.a.mark(function e(n){var t,o;return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,l.a.getItem("vuex-lz");case 2:if(t=e.sent,void 0!==(o=u.a.get(t,"oauth.userToken"))){e.next=6;break}throw new Error("PleromaFE token not found");case 6:return e.next=8,n.dispatch("LoginByPleromaFE",{token:o});case 8:case"end":return e.stop()}},e)}));return function(n){return e.apply(this,arguments)}}()},emju:function(e,n,t){},ntYl:function(e,n,t){"use strict";t.r(n);var o=t("J4zp"),a=t.n(o),r=t("yXPU"),s=t.n(r),i=t("o0o1"),l=t.n(i),c=t("zT9a"),u=t("oAJy"),p=t.n(u),d=t("LvDl"),m=t.n(d),g=t("mSNy"),v=t("aSQl"),h={name:"Login",components:{"svg-icon":c.a},data:function(){return{loginForm:{username:"",password:""},passwordType:"password",loading:!1,loadingPleromaFE:!1,showDialog:!1,redirect:void 0,pleromaFEToken:!1,pleromaFEStateKey:"vuex-lz",pleromaFEState:{}}},watch:{$route:{handler:function(e){this.redirect=e.query&&e.query.redirect},immediate:!0}},mounted:function(){var e=this;return s()(l.a.mark(function n(){var t;return l.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,p.a.getItem(e.pleromaFEStateKey);case 2:if(t=n.sent,e.pleromaFEState=t,void 0!==m.a.get(t,"oauth.userToken")){n.next=6;break}return n.abrupt("return");case 6:e.pleromaFEToken=!0;case 7:case"end":return n.stop()}},n)}))()},methods:{showPwd:function(){"password"===this.passwordType?this.passwordType="":this.passwordType="password"},handleLogin:function(){var e=this;this.loading=!0;var n=this.getLoginData();this.$store.dispatch("LoginByUsername",n).then(function(){e.loading=!1,e.$router.push({path:e.redirect||"/users/index"})}).catch(function(){e.loading=!1})},handlePleromaFELogin:function(){var e=this;return s()(l.a.mark(function n(){return l.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return e.loadingPleromaFE=!0,n.prev=1,n.next=4,Object(v.a)(e.$store);case 4:n.next=10;break;case 6:n.prev=6,n.t0=n.catch(1),e.loadingPleromaFE=!1,e.$message.error(g.a.t("login.pleromaFELoginFailed"));case 10:e.loadingPleromaFE=!1,e.$message.success(g.a.t("login.pleromaFELoginSucceed")),e.$router.push({path:e.redirect||"/users/index"});case 13:case"end":return n.stop()}},n,null,[[1,6]])}))()},getLoginData:function(){var e=this.loginForm.username.split("@"),n=a()(e,2),t=n[0],o=n[1];return{username:t.trim(),authHost:o?o.trim():window.location.host,password:this.loginForm.password}}}},f=(t("32w9"),t("3k4U"),t("KHd+")),w=Object(f.a)(h,function(){var e=this,n=e._self._c;return n("div",{staticClass:"login-container"},[n("el-form",{ref:"loginForm",staticClass:"login-form",attrs:{model:e.loginForm,"auto-complete":"on","label-position":"left"}},[n("div",{staticClass:"title-container"},[n("h3",{staticClass:"title"},[e._v("\n "+e._s(e.$t("login.title"))+"\n ")])]),e._v(" "),n("el-form-item",{attrs:{prop:"username"}},[n("span",{staticClass:"svg-container"},[n("i",{staticClass:"el-icon-user"})]),e._v(" "),n("el-input",{attrs:{placeholder:e.$t("login.username"),name:"username",type:"text","auto-complete":"on"},model:{value:e.loginForm.username,callback:function(n){e.$set(e.loginForm,"username",n)},expression:"loginForm.username"}})],1),e._v(" "),n("div",{staticClass:"omit-host-note"},[e._v(e._s(e.$t("login.omitHostname")))]),e._v(" "),n("el-form-item",{attrs:{prop:"password"}},[n("span",{staticClass:"svg-container"},[n("i",{staticClass:"el-icon-key"})]),e._v(" "),n("el-input",{attrs:{type:e.passwordType,placeholder:e.$t("login.password"),name:"password","auto-complete":"on"},nativeOn:{keyup:function(n){return!n.type.indexOf("key")&&e._k(n.keyCode,"enter",13,n.key,"Enter")?null:e.handleLogin.apply(null,arguments)}},model:{value:e.loginForm.password,callback:function(n){e.$set(e.loginForm,"password",n)},expression:"loginForm.password"}}),e._v(" "),n("span",{staticClass:"show-pwd",on:{click:e.showPwd}},[n("svg-icon",{attrs:{"icon-class":"password"===e.passwordType?"eye":"eye-open"}})],1)],1),e._v(" "),n("el-button",{staticClass:"login-button",attrs:{loading:e.loading,type:"primary"},nativeOn:{click:function(n){return n.preventDefault(),e.handleLogin.apply(null,arguments)}}},[e._v("\n "+e._s(e.$t("login.logIn"))+"\n ")]),e._v(" "),e.pleromaFEToken?n("el-button",{staticClass:"login-button",attrs:{loading:e.loadingPleromaFE,type:"primary"},nativeOn:{click:function(n){return n.preventDefault(),e.handlePleromaFELogin.apply(null,arguments)}}},[e._v("\n "+e._s(e.$t("login.logInViaPleromaFE"))+"\n ")]):e._e()],1)],1)},[],!1,null,"0503310e",null);n.default=w.exports},vioL:function(e,n,t){}}]);
//# sourceMappingURL=chunk-091e.555ed3c2.js.map

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,2 +0,0 @@
(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-0c3d"],{"0/vv":function(e,n,t){},K0Ul:function(e,n,t){"use strict";var o=t("0/vv");t.n(o).a},aSQl:function(e,n,t){"use strict";t.d(n,"a",function(){return p});var o=t("yXPU"),a=t.n(o),r=t("o0o1"),s=t.n(r),i=t("oAJy"),l=t.n(i),c=t("LvDl"),u=t.n(c),p=function(){var e=a()(s.a.mark(function e(n){var t,o;return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,l.a.getItem("vuex-lz");case 2:if(t=e.sent,void 0!==(o=u.a.get(t,"oauth.userToken"))){e.next=6;break}throw new Error("PleromaFE token not found");case 6:return e.next=8,n.dispatch("LoginByPleromaFE",{token:o});case 8:case"end":return e.stop()}},e)}));return function(n){return e.apply(this,arguments)}}()},c11S:function(e,n,t){"use strict";var o=t("gTgX");t.n(o).a},gTgX:function(e,n,t){},ntYl:function(e,n,t){"use strict";t.r(n);var o=t("J4zp"),a=t.n(o),r=t("yXPU"),s=t.n(r),i=t("o0o1"),l=t.n(i),c=t("zT9a"),u=t("oAJy"),p=t.n(u),d=t("LvDl"),m=t.n(d),g=t("mSNy"),v=t("aSQl"),f={name:"Login",components:{"svg-icon":c.a},data:function(){return{loginForm:{username:"",password:""},passwordType:"password",loading:!1,loadingPleromaFE:!1,showDialog:!1,redirect:void 0,pleromaFEToken:!1,pleromaFEStateKey:"vuex-lz",pleromaFEState:{}}},watch:{$route:{handler:function(e){this.redirect=e.query&&e.query.redirect},immediate:!0}},mounted:function(){var e=this;return s()(l.a.mark(function n(){var t;return l.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,p.a.getItem(e.pleromaFEStateKey);case 2:if(t=n.sent,e.pleromaFEState=t,void 0!==m.a.get(t,"oauth.userToken")){n.next=6;break}return n.abrupt("return");case 6:e.pleromaFEToken=!0;case 7:case"end":return n.stop()}},n)}))()},methods:{showPwd:function(){"password"===this.passwordType?this.passwordType="":this.passwordType="password"},handleLogin:function(){var e=this;this.loading=!0;var n=this.getLoginData();this.$store.dispatch("LoginByUsername",n).then(function(){e.loading=!1,e.$router.push({path:e.redirect||"/users/index"})}).catch(function(){e.loading=!1})},handlePleromaFELogin:function(){var e=this;return s()(l.a.mark(function n(){return l.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return e.loadingPleromaFE=!0,n.prev=1,n.next=4,Object(v.a)(e.$store);case 4:n.next=10;break;case 6:n.prev=6,n.t0=n.catch(1),e.loadingPleromaFE=!1,e.$message.error(g.a.t("login.pleromaFELoginFailed"));case 10:e.loadingPleromaFE=!1,e.$message.success(g.a.t("login.pleromaFELoginSucceed")),e.$router.push({path:e.redirect||"/users/index"});case 13:case"end":return n.stop()}},n,null,[[1,6]])}))()},getLoginData:function(){var e=this.loginForm.username.split("@"),n=a()(e,2),t=n[0],o=n[1];return{username:t.trim(),authHost:o?o.trim():window.location.host,password:this.loginForm.password}}}},h=(t("c11S"),t("K0Ul"),t("KHd+")),w=Object(h.a)(f,function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("div",{staticClass:"login-container"},[t("el-form",{ref:"loginForm",staticClass:"login-form",attrs:{model:e.loginForm,"auto-complete":"on","label-position":"left"}},[t("div",{staticClass:"title-container"},[t("h3",{staticClass:"title"},[e._v("\n "+e._s(e.$t("login.title"))+"\n ")])]),e._v(" "),t("el-form-item",{attrs:{prop:"username"}},[t("span",{staticClass:"svg-container"},[t("i",{staticClass:"el-icon-user"})]),e._v(" "),t("el-input",{attrs:{placeholder:e.$t("login.username"),name:"username",type:"text","auto-complete":"on"},model:{value:e.loginForm.username,callback:function(n){e.$set(e.loginForm,"username",n)},expression:"loginForm.username"}})],1),e._v(" "),t("div",{staticClass:"omit-host-note"},[e._v(e._s(e.$t("login.omitHostname")))]),e._v(" "),t("el-form-item",{attrs:{prop:"password"}},[t("span",{staticClass:"svg-container"},[t("i",{staticClass:"el-icon-key"})]),e._v(" "),t("el-input",{attrs:{type:e.passwordType,placeholder:e.$t("login.password"),name:"password","auto-complete":"on"},nativeOn:{keyup:function(n){return!n.type.indexOf("key")&&e._k(n.keyCode,"enter",13,n.key,"Enter")?null:e.handleLogin.apply(null,arguments)}},model:{value:e.loginForm.password,callback:function(n){e.$set(e.loginForm,"password",n)},expression:"loginForm.password"}}),e._v(" "),t("span",{staticClass:"show-pwd",on:{click:e.showPwd}},[t("svg-icon",{attrs:{"icon-class":"password"===e.passwordType?"eye":"eye-open"}})],1)],1),e._v(" "),t("el-button",{staticClass:"login-button",attrs:{loading:e.loading,type:"primary"},nativeOn:{click:function(n){return n.preventDefault(),e.handleLogin.apply(null,arguments)}}},[e._v("\n "+e._s(e.$t("login.logIn"))+"\n ")]),e._v(" "),e.pleromaFEToken?t("el-button",{staticClass:"login-button",attrs:{loading:e.loadingPleromaFE,type:"primary"},nativeOn:{click:function(n){return n.preventDefault(),e.handlePleromaFELogin.apply(null,arguments)}}},[e._v("\n "+e._s(e.$t("login.logInViaPleromaFE"))+"\n ")]):e._e()],1)],1)},[],!1,null,"5aafa9c0",null);w.options.__file="index.vue";n.default=w.exports}}]);
//# sourceMappingURL=chunk-0c3d.00a00ec3.js.map

File diff suppressed because one or more lines are too long

View File

@ -1,2 +0,0 @@
(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-0c60"],{"/yZL":function(t,r,o){"use strict";var e=o("3dKJ");o.n(e).a},"3dKJ":function(t,r,o){},"UUO+":function(t,r,o){"use strict";o.r(r);var e={name:"Page401",methods:{back:function(){this.$route.query.noGoBack?this.$router.push({path:"/login"}):this.$router.go(-1)},login:function(){this.$router.push({path:"/login"})}}},s=(o("/yZL"),o("KHd+")),n=Object(s.a)(e,function(){var t=this,r=t.$createElement,o=t._self._c||r;return o("div",{staticClass:"error-page-container"},[o("div",{staticClass:"error-page"},[o("i",{staticClass:"el-icon-warning"}),t._v(" "),o("h1",{staticClass:"error-title"},[t._v(t._s(t.$t("errLog.error401")))]),t._v(" "),o("h2",{staticClass:"error-title"},[t._v(t._s(t.$t("errLog.unauth")))]),t._v(" "),o("div",{staticClass:"buttons-group"},[o("el-button",{on:{click:t.back}},[t._v(t._s(t.$t("errLog.back")))]),t._v(" "),o("el-button",{attrs:{type:"primary"},on:{click:t.login}},[t._v(t._s(t.$t("errLog.login")))])],1)])])},[],!1,null,"09709f1e",null);n.options.__file="401.vue";r.default=n.exports}}]);
//# sourceMappingURL=chunk-0c60.e0f08810.js.map

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,2 +1,2 @@
(window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-16d0"],{aSQl:function(e,n,r){"use strict";r.d(n,"a",function(){return p});var t=r("yXPU"),a=r.n(t),o=r("o0o1"),s=r.n(o),u=r("oAJy"),c=r.n(u),i=r("LvDl"),l=r.n(i),p=function(){var e=a()(s.a.mark(function e(n){var r,t;return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,c.a.getItem("vuex-lz");case 2:if(r=e.sent,void 0!==(t=l.a.get(r,"oauth.userToken"))){e.next=6;break}throw new Error("PleromaFE token not found");case 6:return e.next=8,n.dispatch("LoginByPleromaFE",{token:t});case 8:case"end":return e.stop()}},e)}));return function(n){return e.apply(this,arguments)}}()},iRgq:function(e,n,r){"use strict";r.r(n);var t=r("yXPU"),a=r.n(t),o=r("o0o1"),s=r.n(o),u=r("XJYT"),c=r("aSQl"),i=r("mSNy"),l={name:"LoginPleroma",mounted:function(){var e=this;return a()(s.a.mark(function n(){var r;return s.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return r=u.Loading.service({fullscreen:!0}),n.prev=1,n.next=4,Object(c.a)(e.$store);case 4:n.next=9;break;case 6:n.prev=6,n.t0=n.catch(1),e.$message.error(i.a.t("login.pleromaFELoginFailed"));case 9:r.close(),e.$router.push({path:"/users/index"}),e.$message.success(i.a.t("login.pleromaFELoginSucceed"));case 12:case"end":return n.stop()}},n,null,[[1,6]])}))()}},p=r("KHd+"),f=Object(p.a)(l,function(){var e=this.$createElement;return(this._self._c||e)("div")},[],!1,null,null,null);f.options.__file="pleroma.vue";n.default=f.exports}}]); (window.webpackJsonp=window.webpackJsonp||[]).push([["chunk-16d0"],{aSQl:function(e,n,r){"use strict";r.d(n,"a",function(){return p});var t=r("yXPU"),a=r.n(t),o=r("o0o1"),s=r.n(o),u=r("oAJy"),c=r.n(u),i=r("LvDl"),l=r.n(i),p=function(){var e=a()(s.a.mark(function e(n){var r,t;return s.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,c.a.getItem("vuex-lz");case 2:if(r=e.sent,void 0!==(t=l.a.get(r,"oauth.userToken"))){e.next=6;break}throw new Error("PleromaFE token not found");case 6:return e.next=8,n.dispatch("LoginByPleromaFE",{token:t});case 8:case"end":return e.stop()}},e)}));return function(n){return e.apply(this,arguments)}}()},iRgq:function(e,n,r){"use strict";r.r(n);var t=r("yXPU"),a=r.n(t),o=r("o0o1"),s=r.n(o),u=r("XJYT"),c=r("aSQl"),i=r("mSNy"),l={name:"LoginPleroma",mounted:function(){var e=this;return a()(s.a.mark(function n(){var r;return s.a.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return r=u.Loading.service({fullscreen:!0}),n.prev=1,n.next=4,Object(c.a)(e.$store);case 4:n.next=9;break;case 6:n.prev=6,n.t0=n.catch(1),e.$message.error(i.a.t("login.pleromaFELoginFailed"));case 9:r.close(),e.$router.push({path:"/users/index"}),e.$message.success(i.a.t("login.pleromaFELoginSucceed"));case 12:case"end":return n.stop()}},n,null,[[1,6]])}))()}},p=r("KHd+"),f=Object(p.a)(l,function(){return(0,this._self._c)("div")},[],!1,null,null,null);n.default=f.exports}}]);
//# sourceMappingURL=chunk-16d0.7d343bb9.js.map //# sourceMappingURL=chunk-16d0.0db6c24f.js.map

View File

@ -0,0 +1 @@
{"version":3,"sources":["webpack:///./src/services/pleromaAuth.js","webpack:///./src/views/login/pleroma.vue?2dbc","webpack:///./src/views/login/pleroma.vue?5ee7","webpack:///src/views/login/pleroma.vue","webpack:///./src/views/login/pleroma.vue"],"names":["authenticateWithPleromaFE","_ref","_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0___default","_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1___default","a","mark","_callee","store","pleromaFEState","token","wrap","_context","prev","next","localforage","getItem","sent","undefined","_","get","Error","dispatch","stop","_x","apply","this","arguments","login_pleromavue_type_script_lang_js_","name","mounted","_this","asyncToGenerator_default","regenerator_default","loadingInstance","Loading","fullscreen","t0","$message","error","lang","t","$router","push","path","success","component","Object","componentNormalizer","_c","_self","__webpack_exports__"],"mappings":"8NAQaA,EAAyB,eAAAC,EAAAC,IAAAC,EAAAC,EAAAC,KAAG,SAAAC,EAAMC,GAAN,IAAAC,EAAAC,EAAA,OAAAN,EAAAC,EAAAM,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAAAF,EAAAE,KAAA,EACVC,IAAYC,QAHjB,WAEe,UACjCP,EADiCG,EAAAK,UAIzBC,KAFRR,EAAQS,IAAEC,IAAIX,EAAgB,oBAFG,CAAAG,EAAAE,KAAA,cAK/B,IAAIO,MAAM,6BALqB,cAAAT,EAAAE,KAAA,EAQjCN,EAAMc,SAAS,oBAAsBZ,UARJ,wBAAAE,EAAAW,SAAAhB,MAAH,gBAAAiB,GAAA,OAAAtB,EAAAuB,MAAAC,KAAAC,YAAA,6CCRtC,kFCA4MC,GCe5MC,oBACAC,QAFA,WAEA,IAAAC,EAAAL,KAAA,OAAAM,IAAAC,EAAA5B,EAAAC,KAAA,SAAAC,IAAA,IAAA2B,EAAA,OAAAD,EAAA5B,EAAAM,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cACAoB,EAAAC,mBAAAC,gBADAxB,EAAAC,KAAA,EAAAD,EAAAE,KAAA,EAIAb,sBAJA,OAAAW,EAAAE,KAAA,eAAAF,EAAAC,KAAA,EAAAD,EAAAyB,GAAAzB,EAAA,SAMAmB,EAAAO,SAAAC,MAAAC,EAAA,EAAAC,EAAA,+BANA,OASAP,UACAH,EAAAW,QAAAC,MAAAC,sBACAb,EAAAO,SAAAO,QAAAL,EAAA,EAAAC,EAAA,gCAXA,yBAAA7B,EAAAW,SAAAhB,EAAA,gBAAAyB,iBCTAc,EAAgBC,OAAAC,EAAA,EAAAD,CACdnB,EHRF,WAA4D,OAAAqB,EAA7BvB,KAAAwB,MAAAD,IAA6B,YGW5D,EACA,KACA,KACA,MAIeE,EAAA,QAAAL","file":"static/js/chunk-16d0.0db6c24f.js","sourcesContent":["// SPDX-FileCopyrightText: 2019-2022 Pleroma Authors <https://pleroma.social>\n// SPDX-License-Identifier: AGPL-3.0-only\n\nimport localforage from 'localforage'\nimport _ from 'lodash'\n\nconst pleromaFEStateKey = 'vuex-lz'\n\nexport const authenticateWithPleromaFE = async(store) => {\n const pleromaFEState = await localforage.getItem(pleromaFEStateKey)\n const token = _.get(pleromaFEState, 'oauth.userToken')\n\n if (token === undefined) {\n throw new Error('PleromaFE token not found')\n }\n\n await store.dispatch('LoginByPleromaFE', { token })\n}\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div')\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./pleroma.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./pleroma.vue?vue&type=script&lang=js&\"","<!--\nSPDX-FileCopyrightText: 2019-2022 Pleroma Authors <https://pleroma.social>\nSPDX-License-Identifier: AGPL-3.0-only\n-->\n\n<template>\n <div />\n</template>\n\n<script>\nimport { Loading } from 'element-ui'\nimport { authenticateWithPleromaFE } from '@/services/pleromaAuth'\nimport i18n from '@/lang'\n\nexport default {\n name: 'LoginPleroma',\n async mounted() {\n const loadingInstance = Loading.service({ fullscreen: true })\n\n try {\n await authenticateWithPleromaFE(this.$store)\n } catch (error) {\n this.$message.error(i18n.t('login.pleromaFELoginFailed'))\n }\n\n loadingInstance.close()\n this.$router.push({ path: '/users/index' })\n this.$message.success(i18n.t('login.pleromaFELoginSucceed'))\n }\n}\n</script>\n","import { render, staticRenderFns } from \"./pleroma.vue?vue&type=template&id=aacc463a&\"\nimport script from \"./pleroma.vue?vue&type=script&lang=js&\"\nexport * from \"./pleroma.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports"],"sourceRoot":""}

View File

@ -1 +0,0 @@
{"version":3,"sources":["webpack:///./src/services/pleromaAuth.js","webpack:///./src/views/login/pleroma.vue?ed01","webpack:///./src/views/login/pleroma.vue?5ee7","webpack:///src/views/login/pleroma.vue","webpack:///./src/views/login/pleroma.vue"],"names":["authenticateWithPleromaFE","_ref","_babel_runtime_helpers_asyncToGenerator__WEBPACK_IMPORTED_MODULE_0___default","_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_1___default","a","mark","_callee","store","pleromaFEState","token","wrap","_context","prev","next","localforage","getItem","sent","undefined","_","get","Error","dispatch","stop","_x","apply","this","arguments","login_pleromavue_type_script_lang_js_","name","mounted","_this","asyncToGenerator_default","regenerator_default","loadingInstance","Loading","fullscreen","t0","$message","error","lang","t","$router","push","path","success","component","Object","componentNormalizer","_h","$createElement","_self","_c","options","__file","__webpack_exports__"],"mappings":"8NAKaA,EAAyB,eAAAC,EAAAC,IAAAC,EAAAC,EAAAC,KAAG,SAAAC,EAAMC,GAAN,IAAAC,EAAAC,EAAA,OAAAN,EAAAC,EAAAM,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cAAAF,EAAAE,KAAA,EACVC,IAAYC,QAHjB,WAEe,UACjCP,EADiCG,EAAAK,UAIzBC,KAFRR,EAAQS,IAAEC,IAAIX,EAAgB,oBAFG,CAAAG,EAAAE,KAAA,cAK/B,IAAIO,MAAM,6BALqB,cAAAT,EAAAE,KAAA,EAQjCN,EAAMc,SAAS,oBAAsBZ,UARJ,wBAAAE,EAAAW,SAAAhB,MAAH,gBAAAiB,GAAA,OAAAtB,EAAAuB,MAAAC,KAAAC,YAAA,6CCLtC,kFCA4MC,GCU5MC,oBACAC,QAFA,WAEA,IAAAC,EAAAL,KAAA,OAAAM,IAAAC,EAAA5B,EAAAC,KAAA,SAAAC,IAAA,IAAA2B,EAAA,OAAAD,EAAA5B,EAAAM,KAAA,SAAAC,GAAA,cAAAA,EAAAC,KAAAD,EAAAE,MAAA,cACAoB,EAAAC,mBAAAC,gBADAxB,EAAAC,KAAA,EAAAD,EAAAE,KAAA,EAIAb,sBAJA,OAAAW,EAAAE,KAAA,eAAAF,EAAAC,KAAA,EAAAD,EAAAyB,GAAAzB,EAAA,SAMAmB,EAAAO,SAAAC,MAAAC,EAAA,EAAAC,EAAA,+BANA,OASAP,UACAH,EAAAW,QAAAC,MAAAC,sBACAb,EAAAO,SAAAO,QAAAL,EAAA,EAAAC,EAAA,gCAXA,yBAAA7B,EAAAW,SAAAhB,EAAA,gBAAAyB,iBCJAc,EAAgBC,OAAAC,EAAA,EAAAD,CACdnB,EHRF,WAA0B,IAAaqB,EAAbvB,KAAawB,eAAkD,OAA/DxB,KAAuCyB,MAAAC,IAAAH,GAAwB,YGWzF,EACA,KACA,KACA,MAIAH,EAAAO,QAAAC,OAAA,cACeC,EAAA,QAAAT","file":"static/js/chunk-16d0.7d343bb9.js","sourcesContent":["import localforage from 'localforage'\nimport _ from 'lodash'\n\nconst pleromaFEStateKey = 'vuex-lz'\n\nexport const authenticateWithPleromaFE = async(store) => {\n const pleromaFEState = await localforage.getItem(pleromaFEStateKey)\n const token = _.get(pleromaFEState, 'oauth.userToken')\n\n if (token === undefined) {\n throw new Error('PleromaFE token not found')\n }\n\n await store.dispatch('LoginByPleromaFE', { token })\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div')}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./pleroma.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js?cacheDirectory!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./pleroma.vue?vue&type=script&lang=js&\"","<template>\n <div />\n</template>\n\n<script>\nimport { Loading } from 'element-ui'\nimport { authenticateWithPleromaFE } from '@/services/pleromaAuth'\nimport i18n from '@/lang'\n\nexport default {\n name: 'LoginPleroma',\n async mounted() {\n const loadingInstance = Loading.service({ fullscreen: true })\n\n try {\n await authenticateWithPleromaFE(this.$store)\n } catch (error) {\n this.$message.error(i18n.t('login.pleromaFELoginFailed'))\n }\n\n loadingInstance.close()\n this.$router.push({ path: '/users/index' })\n this.$message.success(i18n.t('login.pleromaFELoginSucceed'))\n }\n}\n</script>\n","import { render, staticRenderFns } from \"./pleroma.vue?vue&type=template&id=e44cae32&\"\nimport script from \"./pleroma.vue?vue&type=script&lang=js&\"\nexport * from \"./pleroma.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\ncomponent.options.__file = \"pleroma.vue\"\nexport default component.exports"],"sourceRoot":""}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Some files were not shown because too many files have changed in this diff Show More