feat: complete change to gettext from homebrew i18n solution
This commit is contained in:
@@ -2,7 +2,8 @@ defmodule BDS.Desktop.ShellLive.ImportEditor.AnalysisState do
|
||||
@moduledoc false
|
||||
|
||||
alias BDS.{ImportAnalysis, ImportDefinitions, Metadata}
|
||||
alias BDS.Desktop.{FilePicker, FolderPicker, ShellData}
|
||||
alias BDS.Desktop.{FilePicker, FolderPicker}
|
||||
use Gettext, backend: BDS.Gettext
|
||||
|
||||
@spec change_definition(term(), term(), term()) :: term()
|
||||
def change_definition(socket, params, reload) do
|
||||
@@ -18,7 +19,7 @@ defmodule BDS.Desktop.ShellLive.ImportEditor.AnalysisState do
|
||||
@spec select_uploads_folder(term(), term(), term()) :: term()
|
||||
def select_uploads_folder(socket, reload, append_output) do
|
||||
with %{id: definition_id} <- socket.assigns.current_tab do
|
||||
case FolderPicker.choose_directory(translated("importAnalysis.uploadsFolder")) do
|
||||
case FolderPicker.choose_directory(dgettext("ui", "Uploads Folder")) do
|
||||
{:ok, uploads_folder_path} ->
|
||||
{:ok, _definition} =
|
||||
ImportDefinitions.update_definition(definition_id, %{
|
||||
@@ -32,7 +33,7 @@ defmodule BDS.Desktop.ShellLive.ImportEditor.AnalysisState do
|
||||
|
||||
{:error, %{message: message}} ->
|
||||
socket
|
||||
|> append_output.(translated("activity.import"), message, nil, "error")
|
||||
|> append_output.(dgettext("ui", "Import"), message, nil, "error")
|
||||
|> reload.(socket.assigns.workbench)
|
||||
end
|
||||
else
|
||||
@@ -44,7 +45,7 @@ defmodule BDS.Desktop.ShellLive.ImportEditor.AnalysisState do
|
||||
def select_and_analyze(socket, reload, append_output) do
|
||||
with %{id: definition_id} <- socket.assigns.current_tab,
|
||||
%{} = definition <- ImportDefinitions.get_definition(definition_id) do
|
||||
case FilePicker.choose_file(translated("importAnalysis.wxrFile")) do
|
||||
case FilePicker.choose_file(dgettext("ui", "WXR File")) do
|
||||
{:ok, wxr_file_path} ->
|
||||
project_id = socket.assigns.projects.active_project_id
|
||||
|
||||
@@ -78,7 +79,7 @@ defmodule BDS.Desktop.ShellLive.ImportEditor.AnalysisState do
|
||||
:import_editor_analysis_states,
|
||||
Map.put(socket.assigns.import_editor_analysis_states, definition_id, %{
|
||||
loading: true,
|
||||
step: translated("importAnalysis.analyzingWxr"),
|
||||
step: dgettext("ui", "Analyzing WXR file..."),
|
||||
detail: Path.basename(wxr_file_path),
|
||||
file_path: wxr_file_path,
|
||||
ref: task.ref
|
||||
@@ -99,7 +100,7 @@ defmodule BDS.Desktop.ShellLive.ImportEditor.AnalysisState do
|
||||
|
||||
{:error, %{message: message}} ->
|
||||
socket
|
||||
|> append_output.(translated("activity.import"), message, nil, "error")
|
||||
|> append_output.(dgettext("ui", "Import"), message, nil, "error")
|
||||
|> reload.(socket.assigns.workbench)
|
||||
end
|
||||
else
|
||||
@@ -167,18 +168,18 @@ defmodule BDS.Desktop.ShellLive.ImportEditor.AnalysisState do
|
||||
|
||||
{:error, reason} ->
|
||||
socket
|
||||
|> append_output.(translated("activity.import"), inspect(reason), nil, "error")
|
||||
|> append_output.(dgettext("ui", "Import"), inspect(reason), nil, "error")
|
||||
|> reload.(socket.assigns.workbench)
|
||||
end
|
||||
|
||||
{:error, %{message: message}} ->
|
||||
socket
|
||||
|> append_output.(translated("activity.import"), message, nil, "error")
|
||||
|> append_output.(dgettext("ui", "Import"), message, nil, "error")
|
||||
|> reload.(socket.assigns.workbench)
|
||||
|
||||
{:error, reason} ->
|
||||
socket
|
||||
|> append_output.(translated("activity.import"), inspect(reason), nil, "error")
|
||||
|> append_output.(dgettext("ui", "Import"), inspect(reason), nil, "error")
|
||||
|> reload.(socket.assigns.workbench)
|
||||
end
|
||||
end
|
||||
@@ -200,7 +201,7 @@ defmodule BDS.Desktop.ShellLive.ImportEditor.AnalysisState do
|
||||
:import_editor_analysis_states,
|
||||
Map.delete(socket.assigns.import_editor_analysis_states, definition_id)
|
||||
)
|
||||
|> append_output.(translated("activity.import"), message, nil, "error")
|
||||
|> append_output.(dgettext("ui", "Import"), message, nil, "error")
|
||||
|> reload.(socket.assigns.workbench)
|
||||
end
|
||||
end
|
||||
@@ -294,12 +295,12 @@ defmodule BDS.Desktop.ShellLive.ImportEditor.AnalysisState do
|
||||
|
||||
def translate_phase(step) when is_binary(step) do
|
||||
case step do
|
||||
"parsing" -> translated("importAnalysis.analysisPhase.parsing")
|
||||
"scanning" -> translated("importAnalysis.analysisPhase.scanning")
|
||||
"taxonomies" -> translated("importAnalysis.analysisPhase.taxonomies")
|
||||
"posts" -> translated("importAnalysis.analysisPhase.posts")
|
||||
"media" -> translated("importAnalysis.analysisPhase.media")
|
||||
"complete" -> translated("importAnalysis.analysisPhase.complete")
|
||||
"parsing" -> dgettext("ui", "Parsing WXR file...")
|
||||
"scanning" -> dgettext("ui", "Scanning entries...")
|
||||
"taxonomies" -> dgettext("ui", "Analyzing taxonomies...")
|
||||
"posts" -> dgettext("ui", "Analyzing posts...")
|
||||
"media" -> dgettext("ui", "Analyzing media...")
|
||||
"complete" -> dgettext("ui", "Analysis complete")
|
||||
other -> other
|
||||
end
|
||||
end
|
||||
@@ -307,8 +308,5 @@ defmodule BDS.Desktop.ShellLive.ImportEditor.AnalysisState do
|
||||
@spec translate_phase(term()) :: term()
|
||||
def translate_phase(other), do: other
|
||||
|
||||
defp translated(text, bindings \\ %{}),
|
||||
do: ShellData.translate(text, bindings, BDS.Desktop.UILocale.current())
|
||||
|
||||
defp present?(value), do: value not in [nil, ""]
|
||||
end
|
||||
|
||||
@@ -2,8 +2,8 @@ defmodule BDS.Desktop.ShellLive.ImportEditor.ProgressTracking do
|
||||
@moduledoc false
|
||||
|
||||
alias BDS.{ImportDefinitions, ImportExecution}
|
||||
alias BDS.Desktop.ShellData
|
||||
alias BDS.Desktop.ShellLive.ImportEditor.AnalysisState
|
||||
use Gettext, backend: BDS.Gettext
|
||||
|
||||
@spec execute_import(term(), term(), term()) :: term()
|
||||
def execute_import(socket, reload, _append_output) do
|
||||
@@ -129,8 +129,8 @@ defmodule BDS.Desktop.ShellLive.ImportEditor.ProgressTracking do
|
||||
})
|
||||
)
|
||||
|> append_output.(
|
||||
translated("activity.import"),
|
||||
translated("importAnalysis.importComplete", %{count: previous_state.count}),
|
||||
dgettext("ui", "Import"),
|
||||
dgettext("ui", "Import completed successfully!", count: previous_state.count),
|
||||
nil,
|
||||
"info"
|
||||
)
|
||||
@@ -148,7 +148,7 @@ defmodule BDS.Desktop.ShellLive.ImportEditor.ProgressTracking do
|
||||
ref: nil
|
||||
})
|
||||
)
|
||||
|> append_output.(translated("activity.import"), message, nil, "error")
|
||||
|> append_output.(dgettext("ui", "Import"), message, nil, "error")
|
||||
|> reload.(socket.assigns.workbench)
|
||||
|
||||
{:error, reason} ->
|
||||
@@ -165,7 +165,7 @@ defmodule BDS.Desktop.ShellLive.ImportEditor.ProgressTracking do
|
||||
ref: nil
|
||||
})
|
||||
)
|
||||
|> append_output.(translated("activity.import"), message, nil, "error")
|
||||
|> append_output.(dgettext("ui", "Import"), message, nil, "error")
|
||||
|> reload.(socket.assigns.workbench)
|
||||
end
|
||||
end
|
||||
@@ -208,7 +208,7 @@ defmodule BDS.Desktop.ShellLive.ImportEditor.ProgressTracking do
|
||||
ref: nil
|
||||
})
|
||||
)
|
||||
|> append_output.(translated("activity.import"), message, nil, "error")
|
||||
|> append_output.(dgettext("ui", "Import"), message, nil, "error")
|
||||
|> reload.(socket.assigns.workbench)
|
||||
end
|
||||
end
|
||||
@@ -265,16 +265,16 @@ defmodule BDS.Desktop.ShellLive.ImportEditor.ProgressTracking do
|
||||
seconds = div(ms, 1000)
|
||||
|
||||
if seconds < 60 do
|
||||
translated("importAnalysis.eta", %{
|
||||
value: translated("importAnalysis.etaSeconds", %{count: seconds})
|
||||
})
|
||||
dgettext("ui", "ETA: %{value}",
|
||||
value: dgettext("ui", "%{count}s", count: seconds)
|
||||
)
|
||||
else
|
||||
m = div(seconds, 60)
|
||||
s = rem(seconds, 60)
|
||||
|
||||
translated("importAnalysis.eta", %{
|
||||
value: translated("importAnalysis.etaMinutes", %{minutes: m, seconds: s})
|
||||
})
|
||||
dgettext("ui", "ETA: %{value}",
|
||||
value: dgettext("ui", "%{minutes}m %{seconds}s", minutes: m, seconds: s)
|
||||
)
|
||||
end
|
||||
end
|
||||
|
||||
@@ -282,18 +282,15 @@ defmodule BDS.Desktop.ShellLive.ImportEditor.ProgressTracking do
|
||||
|
||||
def translate_execution_phase(phase) when is_binary(phase) do
|
||||
case phase do
|
||||
"tags" -> translated("importAnalysis.phase.tags")
|
||||
"posts" -> translated("importAnalysis.phase.posts")
|
||||
"media" -> translated("importAnalysis.phase.media")
|
||||
"pages" -> translated("importAnalysis.phase.pages")
|
||||
"complete" -> translated("importAnalysis.phase.complete")
|
||||
"tags" -> dgettext("ui", "Importing tags & categories...")
|
||||
"posts" -> dgettext("ui", "Importing posts...")
|
||||
"media" -> dgettext("ui", "Importing media...")
|
||||
"pages" -> dgettext("ui", "Importing pages...")
|
||||
"complete" -> dgettext("ui", "Import complete")
|
||||
other -> other
|
||||
end
|
||||
end
|
||||
|
||||
@spec translate_execution_phase(term()) :: term()
|
||||
def translate_execution_phase(other), do: other
|
||||
|
||||
defp translated(text, bindings \\ %{}),
|
||||
do: ShellData.translate(text, bindings, BDS.Desktop.UILocale.current())
|
||||
end
|
||||
|
||||
@@ -2,7 +2,7 @@ defmodule BDS.Desktop.ShellLive.ImportEditor.TaxonomyEditing do
|
||||
@moduledoc false
|
||||
|
||||
alias BDS.{AI, ImportDefinitions, Metadata, Tags}
|
||||
alias BDS.Desktop.ShellData
|
||||
use Gettext, backend: BDS.Gettext
|
||||
|
||||
@spec start_taxonomy_edit(term(), term(), term()) :: term()
|
||||
def start_taxonomy_edit(
|
||||
@@ -85,12 +85,8 @@ defmodule BDS.Desktop.ShellLive.ImportEditor.TaxonomyEditing do
|
||||
socket.assigns.offline_mode ->
|
||||
socket
|
||||
|> append_output.(
|
||||
translated("activity.import"),
|
||||
ShellData.translate(
|
||||
"Automatic AI actions stay gated by airplane mode.",
|
||||
%{},
|
||||
socket.assigns.page_language
|
||||
),
|
||||
dgettext("ui", "Import"),
|
||||
BDS.Gettext.lgettext(socket.assigns.page_language, "ui", "Automatic AI actions stay gated by airplane mode."),
|
||||
nil,
|
||||
"info"
|
||||
)
|
||||
@@ -124,8 +120,8 @@ defmodule BDS.Desktop.ShellLive.ImportEditor.TaxonomyEditing do
|
||||
|
||||
socket
|
||||
|> append_output.(
|
||||
translated("activity.import"),
|
||||
translated("importAnalysis.mappedCount", %{count: mapped_count}),
|
||||
dgettext("ui", "Import"),
|
||||
dgettext("ui", "%{count} mapped", count: mapped_count),
|
||||
Map.get(socket.assigns.import_editor_selected_models, definition_id),
|
||||
"info"
|
||||
)
|
||||
@@ -134,7 +130,7 @@ defmodule BDS.Desktop.ShellLive.ImportEditor.TaxonomyEditing do
|
||||
{:error, reason} ->
|
||||
socket
|
||||
|> append_output.(
|
||||
translated("activity.import"),
|
||||
dgettext("ui", "Import"),
|
||||
inspect(reason),
|
||||
Map.get(socket.assigns.import_editor_selected_models, definition_id),
|
||||
"error"
|
||||
@@ -274,19 +270,16 @@ defmodule BDS.Desktop.ShellLive.ImportEditor.TaxonomyEditing do
|
||||
def taxonomy_mapping_tooltip(item) do
|
||||
action =
|
||||
if present?(item.mapped_to),
|
||||
do: translated("importAnalysis.mappingActionEdit"),
|
||||
else: translated("importAnalysis.mappingActionAdd")
|
||||
do: dgettext("ui", "edit"),
|
||||
else: dgettext("ui", "add")
|
||||
|
||||
translated("importAnalysis.mappingTooltip", %{action: action})
|
||||
dgettext("ui", "Click to %{action} mapping", action: action)
|
||||
end
|
||||
|
||||
@spec maybe_put_option(term(), term(), term()) :: term()
|
||||
def maybe_put_option(opts, _key, nil), do: opts
|
||||
def maybe_put_option(opts, key, value), do: Keyword.put(opts, key, value)
|
||||
|
||||
defp translated(text, bindings \\ %{}),
|
||||
do: ShellData.translate(text, bindings, BDS.Desktop.UILocale.current())
|
||||
|
||||
defp present?(value), do: value not in [nil, ""]
|
||||
defp blank_to_nil(""), do: nil
|
||||
defp blank_to_nil(value), do: value
|
||||
|
||||
Reference in New Issue
Block a user