diff --git a/assets/js/hooks/Mapper/components/mapInterface/widgets/SystemSignatures/SystemSignaturesContent/SystemSignaturesContent.tsx b/assets/js/hooks/Mapper/components/mapInterface/widgets/SystemSignatures/SystemSignaturesContent/SystemSignaturesContent.tsx index aec206c0..747271be 100644 --- a/assets/js/hooks/Mapper/components/mapInterface/widgets/SystemSignatures/SystemSignaturesContent/SystemSignaturesContent.tsx +++ b/assets/js/hooks/Mapper/components/mapInterface/widgets/SystemSignatures/SystemSignaturesContent/SystemSignaturesContent.tsx @@ -2,7 +2,10 @@ import { useMapRootState } from '@/hooks/Mapper/mapRootProvider'; import { parseSignatures } from '@/hooks/Mapper/helpers'; import { Commands, OutCommand } from '@/hooks/Mapper/types/mapHandlers.ts'; import { WdTooltip, WdTooltipHandlers } from '@/hooks/Mapper/components/ui-kit'; -import { GROUPS_LIST } from '@/hooks/Mapper/components/mapInterface/widgets/SystemSignatures/constants.ts'; +import { + getGroupIdByRawGroup, + GROUPS_LIST, +} from '@/hooks/Mapper/components/mapInterface/widgets/SystemSignatures/constants.ts'; import { DataTable, DataTableRowClickEvent, DataTableRowMouseEvent, SortOrder } from 'primereact/datatable'; import { Column } from 'primereact/column'; @@ -122,13 +125,14 @@ export const SystemSignaturesContent = ({ } const isCosmicSignature = x.kind === COSMIC_SIGNATURE; + const preparedGroup = getGroupIdByRawGroup(x.group); if (isCosmicSignature) { const showCosmicSignatures = settings.find(y => y.key === COSMIC_SIGNATURE)?.value; if (showCosmicSignatures) { - return !x.group || groupSettings.find(y => y.key === x.group)?.value; + return !x.group || groupSettings.find(y => y.key === preparedGroup)?.value; } else { - return !!x.group && groupSettings.find(y => y.key === x.group)?.value; + return !!x.group && groupSettings.find(y => y.key === preparedGroup)?.value; } } @@ -157,6 +161,9 @@ export const SystemSignaturesContent = ({ skipUpdateUntouched, ); + // eslint-disable-next-line no-console + console.log('JOipP', `added, updated, removed`, { added, updated, removed }); + const { signatures: updatedSignatures } = await outCommand({ type: OutCommand.updateSignatures, data: { diff --git a/assets/js/hooks/Mapper/components/mapInterface/widgets/SystemSignatures/constants.ts b/assets/js/hooks/Mapper/components/mapInterface/widgets/SystemSignatures/constants.ts index a4c03731..de7eda14 100644 --- a/assets/js/hooks/Mapper/components/mapInterface/widgets/SystemSignatures/constants.ts +++ b/assets/js/hooks/Mapper/components/mapInterface/widgets/SystemSignatures/constants.ts @@ -1,4 +1,12 @@ -import { GroupType, SignatureGroup } from '@/hooks/Mapper/types'; +import { + GroupType, + SignatureGroup, + SignatureGroupENG, + SignatureGroupRU, + SignatureKind, + SignatureKindENG, + SignatureKindRU, +} from '@/hooks/Mapper/types'; export const TIME_ONE_MINUTE = 1000 * 60; export const TIME_TEN_MINUTES = 1000 * 60 * 10; @@ -24,3 +32,43 @@ export const GROUPS: Record = { [SignatureGroup.Wormhole]: { id: SignatureGroup.Wormhole, icon: '/icons/brackets/wormhole.png', ...wh }, [SignatureGroup.CosmicSignature]: { id: SignatureGroup.CosmicSignature, icon: '/icons/x_close14.png', w: 9, h: 9 }, }; + +export const MAPPING_GROUP_TO_ENG = { + // ENGLISH + [SignatureGroupENG.GasSite]: SignatureGroup.GasSite, + [SignatureGroupENG.RelicSite]: SignatureGroup.RelicSite, + [SignatureGroupENG.DataSite]: SignatureGroup.DataSite, + [SignatureGroupENG.OreSite]: SignatureGroup.OreSite, + [SignatureGroupENG.CombatSite]: SignatureGroup.CombatSite, + [SignatureGroupENG.Wormhole]: SignatureGroup.Wormhole, + [SignatureGroupENG.CosmicSignature]: SignatureGroup.CosmicSignature, + + // RUSSIAN + [SignatureGroupRU.GasSite]: SignatureGroup.GasSite, + [SignatureGroupRU.RelicSite]: SignatureGroup.RelicSite, + [SignatureGroupRU.DataSite]: SignatureGroup.DataSite, + [SignatureGroupRU.OreSite]: SignatureGroup.OreSite, + [SignatureGroupRU.CombatSite]: SignatureGroup.CombatSite, + [SignatureGroupRU.Wormhole]: SignatureGroup.Wormhole, + [SignatureGroupRU.CosmicSignature]: SignatureGroup.CosmicSignature, +}; + +export const MAPPING_TYPE_TO_ENG = { + // ENGLISH + [SignatureKindENG.CosmicSignature]: SignatureKind.CosmicSignature, + [SignatureKindENG.CosmicAnomaly]: SignatureKind.CosmicAnomaly, + [SignatureKindENG.Structure]: SignatureKind.Structure, + [SignatureKindENG.Ship]: SignatureKind.Ship, + [SignatureKindENG.Deployable]: SignatureKind.Deployable, + [SignatureKindENG.Drone]: SignatureKind.Drone, + + // RUSSIAN + [SignatureKindRU.CosmicSignature]: SignatureKind.CosmicSignature, + [SignatureKindRU.CosmicAnomaly]: SignatureKind.CosmicAnomaly, + [SignatureKindRU.Structure]: SignatureKind.Structure, + [SignatureKindRU.Ship]: SignatureKind.Ship, + [SignatureKindRU.Deployable]: SignatureKind.Deployable, + [SignatureKindRU.Drone]: SignatureKind.Drone, +}; + +export const getGroupIdByRawGroup = (val: string) => MAPPING_GROUP_TO_ENG[val as SignatureGroup]; diff --git a/assets/js/hooks/Mapper/helpers/parseSignatures.ts b/assets/js/hooks/Mapper/helpers/parseSignatures.ts index 5626ae54..71c083a0 100644 --- a/assets/js/hooks/Mapper/helpers/parseSignatures.ts +++ b/assets/js/hooks/Mapper/helpers/parseSignatures.ts @@ -1,5 +1,5 @@ -import { COSMIC_SIGNATURE } from '@/hooks/Mapper/components/mapInterface/widgets/SystemSignatures/SystemSignatureSettingsDialog'; -import { SystemSignature } from '@/hooks/Mapper/types'; +import { SignatureGroup, SignatureKind, SystemSignature } from '@/hooks/Mapper/types'; +import { MAPPING_TYPE_TO_ENG } from '@/hooks/Mapper/components/mapInterface/widgets/SystemSignatures/constants.ts'; export const parseSignatures = (value: string, availableKeys: string[]): SystemSignature[] => { const outArr: SystemSignature[] = []; @@ -14,10 +14,12 @@ export const parseSignatures = (value: string, availableKeys: string[]): SystemS continue; } + const kind = MAPPING_TYPE_TO_ENG[sigArrInfo[1] as SignatureKind]; + outArr.push({ eve_id: sigArrInfo[0], - kind: availableKeys.includes(sigArrInfo[1]) ? sigArrInfo[1] : COSMIC_SIGNATURE, - group: sigArrInfo[2], + kind: availableKeys.includes(kind) ? kind : SignatureKind.CosmicSignature, + group: sigArrInfo[2] as SignatureGroup, name: sigArrInfo[3], type: '', }); diff --git a/assets/js/hooks/Mapper/types/signatures.ts b/assets/js/hooks/Mapper/types/signatures.ts index 248fe96d..78505365 100644 --- a/assets/js/hooks/Mapper/types/signatures.ts +++ b/assets/js/hooks/Mapper/types/signatures.ts @@ -10,6 +10,15 @@ export enum SignatureGroup { CombatSite = 'Combat Site', } +export enum SignatureKind { + CosmicSignature = 'Cosmic Signature', + CosmicAnomaly = 'Cosmic Anomaly', + Structure = 'Structure', + Ship = 'Ship', + Deployable = 'Deployable', + Drone = 'Drone', +} + export type GroupType = { id: string; icon: string; @@ -19,7 +28,7 @@ export type GroupType = { export type SystemSignature = { eve_id: string; - kind: string; + kind: SignatureKind; name: string; custom_info?: string; description?: string; @@ -30,3 +39,41 @@ export type SystemSignature = { inserted_at?: string; updated_at?: string; }; + +export enum SignatureKindENG { + CosmicSignature = 'Cosmic Signature', + CosmicAnomaly = 'Cosmic Anomaly', + Structure = 'Structure', + Ship = 'Ship', + Deployable = 'Deployable', + Drone = 'Drone', +} + +export enum SignatureKindRU { + CosmicSignature = 'Скрытый сигнал', + CosmicAnomaly = 'Космическая аномалия', + Structure = 'Сооружение', + Ship = 'Корабль', + Deployable = 'Полевые блоки', + Drone = 'Дрон', +} + +export enum SignatureGroupENG { + CosmicSignature = 'Cosmic Signature', + Wormhole = 'Wormhole', + GasSite = 'Gas Site', + RelicSite = 'Relic Site', + DataSite = 'Data Site', + OreSite = 'Ore Site', + CombatSite = 'Combat Site', +} + +export enum SignatureGroupRU { + CosmicSignature = 'Скрытый сигнал', + Wormhole = 'Червоточина', + GasSite = 'Газовый район', + RelicSite = 'Археологический район', + DataSite = 'Информационный район', + OreSite = 'Астероидный район', + CombatSite = 'Боевой район', +}