Compare commits

..

2 Commits

Author SHA1 Message Date
CI
c5af43dca1 chore: release version v1.95.0 2026-02-11 17:12:09 +00:00
Dmitry Popov
549fa1d2cf Merge pull request #592 from wanderer-industries/develop
Develop
2026-02-11 21:11:07 +04:00
5 changed files with 73 additions and 45 deletions

View File

@@ -2,6 +2,53 @@
<!-- changelog -->
## [v1.95.0](https://github.com/wanderer-industries/wanderer/compare/v1.94.0...v1.95.0) (2026-02-11)
### Features:
* subscriptions: Added top map donators support
* Added lost files
* Added paywall for RoutesBy widget
* removed unnecessary env variable for routes
* Add systems with Security Status cleaning. Add trade hubs. Add ability to store data for this widget
* Add Routes By widget. Allow to find nearest blue loot and red loot stations. Added ability to set waypoint to station.
* auto add system on sig addition
* map: Reviewed changes
* map: Logic for multiple owner updates
* map: wip New Dialog for Structure Owners
### Bug Fixes:
* signatures: Fixed back linked sigs data sync and leading to system override issues
* signatures: Moved C1/C2/C3 and C4/C5 to the bottom of the available list
* use cache for sse
* adding system when linked signature is provided
* saving updates to unknown sigs
* wh position and sig type change
* api updates and linked sig addition
* api fixes and format
* Wrong file added to commits
## [v1.94.0](https://github.com/wanderer-industries/wanderer/compare/v1.93.0...v1.94.0) (2026-02-08)

View File

@@ -39,10 +39,6 @@ export const UnsplashedSignature = ({ signature }: UnsplashedSignatureProps) =>
return customInfo?.time_status === TimeStatus._1h;
}, [customInfo]);
const is4H = useMemo(() => {
return customInfo?.time_status === TimeStatus._4h;
}, [customInfo]);
const whClassStyle = useMemo(() => {
if (signature.type === 'K162' && k162TypeOption) {
const k162Data = wormholesData[k162TypeOption.whClassName];
@@ -69,7 +65,6 @@ export const UnsplashedSignature = ({ signature }: UnsplashedSignatureProps) =>
<svg width="13" height="8" viewBox="0 0 13 8" xmlns="http://www.w3.org/2000/svg">
<rect y="1" width="13" height="4" rx="2" className={whClassStyle} fill="currentColor" />
{isEOL && <rect x="4" width="5" height="6" rx="1" className={clsx(classes.Eol)} fill="#a153ac" />}
{is4H && <rect x="4" width="5" height="6" rx="1" className={clsx(classes.Eol)} fill="#d8b4fe" />}
</svg>
</div>
</WdTooltipWrapper>

View File

@@ -35,7 +35,7 @@ export const useSignatureFetching = ({ systemId, settings, signaturesRef, setSig
const extended = serverSigs.map(s => ({
...s,
character_name: s.character_name ?? characters.find(c => c.eve_id === s.character_eve_id)?.name,
character_name: characters.find(c => c.eve_id === s.character_eve_id)?.name,
})) as ExtendedSystemSignature[];
setSignatures(() => extended);

View File

@@ -434,46 +434,32 @@ defmodule WandererAppWeb.MapSignaturesEventHandler do
def handle_ui_event(event, body, socket),
do: MapCoreEventHandler.handle_ui_event(event, body, socket)
def get_system_signatures(system_id) do
signatures = system_id |> WandererApp.Api.MapSystemSignature.by_system_id!()
character_eve_ids =
signatures |> Enum.map(& &1.character_eve_id) |> Enum.reject(&is_nil/1) |> Enum.uniq()
character_names_map =
character_eve_ids
|> Enum.reduce(%{}, fn eve_id, acc ->
case WandererApp.Character.get_by_eve_id(eve_id) do
{:ok, character} -> Map.put(acc, eve_id, character.name)
_ -> acc
end
def get_system_signatures(system_id),
do:
system_id
|> WandererApp.Api.MapSystemSignature.by_system_id!()
|> Enum.map(fn %{
inserted_at: inserted_at,
updated_at: updated_at,
linked_system_id: linked_system_id
} = s ->
s
|> Map.take([
:eve_id,
:character_eve_id,
:name,
:temporary_name,
:description,
:kind,
:group,
:type,
:custom_info
])
|> Map.put(:linked_system, MapEventHandler.get_system_static_info(linked_system_id))
|> Map.put(:inserted_at, inserted_at |> Calendar.strftime("%Y/%m/%d %H:%M:%S"))
|> Map.put(:updated_at, updated_at |> Calendar.strftime("%Y/%m/%d %H:%M:%S"))
end)
signatures
|> Enum.map(fn %{
inserted_at: inserted_at,
updated_at: updated_at,
linked_system_id: linked_system_id
} = s ->
s
|> Map.take([
:eve_id,
:character_eve_id,
:name,
:temporary_name,
:description,
:kind,
:group,
:type,
:custom_info
])
|> Map.put(:character_name, Map.get(character_names_map, s.character_eve_id))
|> Map.put(:linked_system, MapEventHandler.get_system_static_info(linked_system_id))
|> Map.put(:inserted_at, inserted_at |> Calendar.strftime("%Y/%m/%d %H:%M:%S"))
|> Map.put(:updated_at, updated_at |> Calendar.strftime("%Y/%m/%d %H:%M:%S"))
end)
end
defp get_integer(nil), do: nil
defp get_integer(value) when is_binary(value), do: String.to_integer(value)
defp get_integer(value), do: value

View File

@@ -3,7 +3,7 @@ defmodule WandererApp.MixProject do
@source_url "https://github.com/wanderer-industries/wanderer"
@version "1.94.0"
@version "1.95.0"
def project do
[