From 93725fa17ca185bc01781079619c455b215b279f Mon Sep 17 00:00:00 2001 From: Gregoire Parant Date: Fri, 16 Feb 2024 08:44:01 +0100 Subject: [PATCH] Revert "New Release 06/02/2024 (#3718)" This reverts commit 8e21dadecb6072a63bdddd96a368c0380fac7a94. --- docker-compose.yaml | 1 - docs/schema/1.0/wam.json | 160 +------ libs/map-editor/src/Commands/Command.ts | 3 +- .../Commands/Entity/UpdateEntityCommand.ts | 6 +- .../Commands/WAM/UpdateWAMMetadataCommand.ts | 34 -- .../map-editor/src/GameMap/GameMapEntities.ts | 4 - libs/map-editor/src/index.ts | 1 - libs/map-editor/src/types.ts | 32 +- libs/map-editor/tests/WAMMetadata.test.ts | 44 -- map-storage/src/MapStorageServer.ts | 39 +- map-storage/src/MapsManager.ts | 14 +- map-storage/src/Services/MapListService.ts | 30 +- messages/protos/messages.proto | 14 - play/public/resources/objects/cloud.mp3 | Bin 19680 -> 0 bytes .../front/Administration/AnalyticsClient.ts | 24 -- .../Components/ActionBar/ActionBar.svelte | 81 ++-- .../EmbedScreens/Layouts/MozaicLayout.svelte | 2 +- .../Components/Exploration/Explorer.svelte | 397 ------------------ .../Components/Exploration/MapList.svelte | 135 ------ .../front/Components/Input/InputTags.svelte | 7 +- .../front/Components/Input/InputText.svelte | 6 +- .../Components/Input/InputTextArea.svelte | 29 -- play/src/front/Components/MainLayout.svelte | 24 +- .../MapEditor/AreaPropertiesEditor.svelte | 297 +++++-------- .../ConfigureMyRoom/RoomSettings.svelte | 127 ------ .../MapEditor/EntityPropertiesEditor.svelte | 259 ++++-------- .../Components/MapEditor/ItemPicker.svelte | 1 - .../Components/MapEditor/MapEditor.svelte | 27 +- .../MapEditor/MapEditorSideBar.svelte | 70 ++- .../ListAddPropertyButton.svelte | 222 ---------- .../OpenWebsitePropertyEditor.svelte | 2 +- .../MapEditor/WAMSettingsEditor.svelte | 25 +- .../Components/Modal/ObjectDetails.svelte | 199 --------- play/src/front/Components/Modal/Popup.svelte | 68 --- .../Components/Video/VideoMediaBox.svelte | 2 +- .../front/Components/images/default-map.png | Bin 123955 -> 0 bytes play/src/front/Components/images/explorer.svg | 17 - play/src/front/Components/images/loupe.svg | 1 - .../front/Components/images/maps-builder.png | Bin 0 -> 2160 bytes .../front/Components/images/maps-builder.svg | 18 - play/src/front/Components/images/objects.svg | 20 - play/src/front/Components/images/world.svg | 38 -- play/src/front/Connection/LocalUserStore.ts | 1 + play/src/front/Connection/RoomConnection.ts | 24 +- .../Components/MapEditor/AreaPreview.ts | 40 +- play/src/front/Phaser/ECS/Entity.ts | 15 - play/src/front/Phaser/Game/CameraManager.ts | 57 +-- .../Phaser/Game/GameMap/EntitiesManager.ts | 22 +- play/src/front/Phaser/Game/GameScene.ts | 55 +-- .../Entity/UpdateEntityFrontCommand.ts | 4 +- .../WAM/UpdateWAMMetadataFrontCommand.ts | 38 -- .../Game/MapEditor/MapEditorModeManager.ts | 41 +- .../Game/MapEditor/Tools/AreaEditorTool.ts | 7 +- .../Phaser/Game/MapEditor/Tools/CloseTool.ts | 34 -- .../Tools/EntityRelatedEditorTool.ts | 2 - .../Game/MapEditor/Tools/ExplorerTool.ts | 329 --------------- .../Game/MapEditor/Tools/TrashEditorTool.ts | 11 +- .../MapEditor/Tools/WAMSettingsEditorTool.ts | 3 +- play/src/front/Phaser/Login/ResizableScene.ts | 15 + play/src/front/Phaser/Services/HdpiManager.ts | 30 +- .../front/Phaser/Services/WaScaleManager.ts | 13 +- .../UserInput/GameSceneUserInputHandler.ts | 11 +- .../Phaser/UserInput/UserInputManager.ts | 7 +- play/src/front/Space/Space.ts | 1 + play/src/front/Stores/MapEditorStore.ts | 17 +- play/src/front/Stores/MediaStore.ts | 5 + play/src/front/Stores/ModalStore.ts | 3 - .../front/Stores/StreamableCollectionStore.ts | 2 + .../Streaming/Jitsi/JitsiConferenceWrapper.ts | 3 +- .../Streaming/Jitsi/JitsiTrackWrapper.ts | 3 +- play/src/front/Utils/PathfindingManager.ts | 8 + play/src/front/Utils/ScreenWakeLock.ts | 1 + .../front/WebRtc/CoWebsite/JitsiCoWebsite.ts | 8 +- play/src/front/WebRtc/VideoPeer.ts | 1 + play/src/i18n/de-DE/mapEditor.ts | 10 - play/src/i18n/dsb-DE/mapEditor.ts | 10 - play/src/i18n/en-US/actionbar.ts | 2 +- play/src/i18n/en-US/mapEditor.ts | 71 ---- play/src/i18n/fr-FR/mapEditor.ts | 44 +- play/src/i18n/hsb-DE/mapEditor.ts | 10 - play/src/pusher/services/AdminApi.ts | 15 +- play/src/pusher/services/AdminInterface.ts | 2 +- .../pusher/services/ShortMapDescription.ts | 13 +- play/src/pusher/services/SocketManager.ts | 69 ++- .../front/Phaser/Services/HdpiManager.test.ts | 7 +- tests/tests/map_editor.spec.ts | 65 --- tests/tests/meeting.spec.ts | 9 +- tests/tests/utils/map-editor/areaEditor.ts | 17 +- tests/tests/utils/map-editor/entityEditor.ts | 17 - tests/tests/utils/map-editor/exploration.ts | 8 - tests/tests/utils/mapeditor.ts | 4 - 91 files changed, 442 insertions(+), 3222 deletions(-) delete mode 100644 libs/map-editor/src/Commands/WAM/UpdateWAMMetadataCommand.ts delete mode 100644 libs/map-editor/tests/WAMMetadata.test.ts delete mode 100644 play/public/resources/objects/cloud.mp3 delete mode 100644 play/src/front/Components/Exploration/Explorer.svelte delete mode 100644 play/src/front/Components/Exploration/MapList.svelte delete mode 100644 play/src/front/Components/Input/InputTextArea.svelte delete mode 100644 play/src/front/Components/MapEditor/ConfigureMyRoom/RoomSettings.svelte delete mode 100644 play/src/front/Components/MapEditor/PropertyEditor/ListAddPropertyButton.svelte delete mode 100644 play/src/front/Components/Modal/ObjectDetails.svelte delete mode 100644 play/src/front/Components/Modal/Popup.svelte delete mode 100644 play/src/front/Components/images/default-map.png delete mode 100644 play/src/front/Components/images/explorer.svg delete mode 100644 play/src/front/Components/images/loupe.svg create mode 100644 play/src/front/Components/images/maps-builder.png delete mode 100644 play/src/front/Components/images/maps-builder.svg delete mode 100644 play/src/front/Components/images/objects.svg delete mode 100644 play/src/front/Components/images/world.svg delete mode 100644 play/src/front/Phaser/Game/MapEditor/Commands/WAM/UpdateWAMMetadataFrontCommand.ts delete mode 100644 play/src/front/Phaser/Game/MapEditor/Tools/CloseTool.ts delete mode 100644 play/src/front/Phaser/Game/MapEditor/Tools/ExplorerTool.ts delete mode 100644 tests/tests/utils/map-editor/exploration.ts diff --git a/docker-compose.yaml b/docker-compose.yaml index 3806c6a8f5..85a2414c01 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -89,7 +89,6 @@ services: ADMIN_API_TOKEN: "$ADMIN_API_TOKEN" API_URL: back:50051 DISABLE_ANONYMOUS: $DISABLE_ANONYMOUS - #Map editor PUBLIC_MAP_STORAGE_URL: "http://map-storage.workadventure.localhost" INTERNAL_MAP_STORAGE_URL: "http://map-storage:3000" ENABLE_OPENAPI_ENDPOINT: "true" diff --git a/docs/schema/1.0/wam.json b/docs/schema/1.0/wam.json index 5360ea8fec..3c6d142a39 100644 --- a/docs/schema/1.0/wam.json +++ b/docs/schema/1.0/wam.json @@ -207,36 +207,6 @@ "type" ], "additionalProperties": false - }, - { - "type": "object", - "properties": { - "id": { - "$ref": "#/definitions/WAMFileFormat/properties/entities/additionalProperties/properties/properties/items/anyOf/0/properties/id" - }, - "buttonLabel": { - "$ref": "#/definitions/WAMFileFormat/properties/entities/additionalProperties/properties/properties/items/anyOf/0/properties/buttonLabel" - }, - "hideButtonLabel": { - "$ref": "#/definitions/WAMFileFormat/properties/entities/additionalProperties/properties/properties/items/anyOf/0/properties/hideButtonLabel" - }, - "type": { - "type": "string", - "const": "entityDescriptionProperties" - }, - "description": { - "type": "string" - }, - "searchable": { - "type": "boolean", - "default": false - } - }, - "required": [ - "id", - "type" - ], - "additionalProperties": false } ] } @@ -472,36 +442,6 @@ "speakerZoneName" ], "additionalProperties": false - }, - { - "type": "object", - "properties": { - "id": { - "$ref": "#/definitions/WAMFileFormat/properties/entities/additionalProperties/properties/properties/items/anyOf/0/properties/id" - }, - "buttonLabel": { - "$ref": "#/definitions/WAMFileFormat/properties/entities/additionalProperties/properties/properties/items/anyOf/0/properties/buttonLabel" - }, - "hideButtonLabel": { - "$ref": "#/definitions/WAMFileFormat/properties/entities/additionalProperties/properties/properties/items/anyOf/0/properties/hideButtonLabel" - }, - "type": { - "type": "string", - "const": "areaDescriptionProperties" - }, - "description": { - "type": "string" - }, - "searchable": { - "type": "boolean", - "default": false - } - }, - "required": [ - "id", - "type" - ], - "additionalProperties": false } ] } @@ -580,112 +520,20 @@ "type": "object", "properties": { "name": { - "anyOf": [ - { - "anyOf": [ - { - "not": {} - }, - { - "type": "string" - } - ] - }, - { - "type": "null" - } - ], + "type": "string", "description": "The name of the map." }, "description": { - "anyOf": [ - { - "anyOf": [ - { - "not": {} - }, - { - "type": "string" - } - ] - }, - { - "type": "null" - } - ], + "type": "string", "description": "A description of the map. Can be used in social networks when sharing a link to the map." }, "copyright": { - "anyOf": [ - { - "anyOf": [ - { - "not": {} - }, - { - "type": "string" - } - ] - }, - { - "type": "null" - } - ], + "type": "string", "description": "Copyright notice for this map. Can be a link to a license. Parts of this map like tilesets or images can have their own copyright." }, "thumbnail": { - "anyOf": [ - { - "anyOf": [ - { - "not": {} - }, - { - "type": "string" - } - ] - }, - { - "type": "null" - } - ], + "type": "string", "description": "URL to a thumbnail image. This image will be used in social networks when sharing a link to the map." - }, - "areasSearchable": { - "anyOf": [ - { - "anyOf": [ - { - "not": {} - }, - { - "type": "number" - } - ] - }, - { - "type": "null" - } - ], - "description": "Number of areas define as searchable by the map editor for the exploration mode." - }, - "entitiesSearchable": { - "anyOf": [ - { - "anyOf": [ - { - "not": {} - }, - { - "type": "number" - } - ] - }, - { - "type": "null" - } - ], - "description": "Number of entities define as searchable by the map editor for the exploration mode." } }, "additionalProperties": false, diff --git a/libs/map-editor/src/Commands/Command.ts b/libs/map-editor/src/Commands/Command.ts index 2a580b16dc..1d04154c87 100644 --- a/libs/map-editor/src/Commands/Command.ts +++ b/libs/map-editor/src/Commands/Command.ts @@ -1,5 +1,4 @@ import { v4 as uuidv4 } from "uuid"; -import { WAMFileFormat } from "../types"; export abstract class Command { public readonly commandId: string; @@ -8,6 +7,6 @@ export abstract class Command { this.commandId = commandId ?? uuidv4(); } - public abstract execute(): Promise; + public abstract execute(): Promise; //public abstract undo(): Promise; } diff --git a/libs/map-editor/src/Commands/Entity/UpdateEntityCommand.ts b/libs/map-editor/src/Commands/Entity/UpdateEntityCommand.ts index 0e0adb2cbd..8718458b71 100644 --- a/libs/map-editor/src/Commands/Entity/UpdateEntityCommand.ts +++ b/libs/map-editor/src/Commands/Entity/UpdateEntityCommand.ts @@ -1,4 +1,4 @@ -import type { WAMEntityData, WAMFileFormat } from "../../types"; +import type { WAMEntityData } from "../../types"; import type { GameMap } from "../../GameMap/GameMap"; import { Command } from "../Command"; @@ -29,10 +29,10 @@ export class UpdateEntityCommand extends Command { this.newConfig = structuredClone(dataToModify); } - public execute(): Promise { + public execute(): Promise { if (!this.gameMap.getGameMapEntities()?.updateEntity(this.entityId, this.newConfig)) { throw new Error(`MapEditorError: Could not execute UpdateEntity Command. Entity ID: ${this.entityId}`); } - return Promise.resolve(this.gameMap.getGameMapEntities()?.wamFile); + return Promise.resolve(); } } diff --git a/libs/map-editor/src/Commands/WAM/UpdateWAMMetadataCommand.ts b/libs/map-editor/src/Commands/WAM/UpdateWAMMetadataCommand.ts deleted file mode 100644 index 12c2c215f9..0000000000 --- a/libs/map-editor/src/Commands/WAM/UpdateWAMMetadataCommand.ts +++ /dev/null @@ -1,34 +0,0 @@ -import type { ModifiyWAMMetadataMessage } from "@workadventure/messages"; -import { WAMFileFormat } from "../../types"; -import { Command } from "../Command"; - -export class UpdateWAMMetadataCommand extends Command { - constructor( - protected wam: WAMFileFormat, - protected modifiyWAMMetadataMessage: ModifiyWAMMetadataMessage, - id?: string - ) { - super(id); - } - - execute(): Promise { - if (!this.wam.metadata) { - this.wam.metadata = {}; - } - this.wam.metadata.name = this.modifiyWAMMetadataMessage.name; - this.wam.metadata.description = this.modifiyWAMMetadataMessage.description; - this.wam.metadata.thumbnail = this.modifiyWAMMetadataMessage.thumbnail; - this.wam.metadata.copyright = this.modifiyWAMMetadataMessage.copyright; - - if (!this.wam.vendor) { - this.wam.vendor = { - tags: Array(), - }; - } - (this.wam.vendor as { tags: Array }).tags = - this.modifiyWAMMetadataMessage.tags && this.modifiyWAMMetadataMessage.tags.length > 0 - ? this.modifiyWAMMetadataMessage.tags.split(",") - : []; - return Promise.resolve(this.wam); - } -} diff --git a/libs/map-editor/src/GameMap/GameMapEntities.ts b/libs/map-editor/src/GameMap/GameMapEntities.ts index 06bfb312ff..d3b8a9e265 100644 --- a/libs/map-editor/src/GameMap/GameMapEntities.ts +++ b/libs/map-editor/src/GameMap/GameMapEntities.ts @@ -45,8 +45,4 @@ export class GameMapEntities { public getEntities(): Record { return this.wam.entities; } - - get wamFile(): WAMFileFormat { - return this.wam; - } } diff --git a/libs/map-editor/src/index.ts b/libs/map-editor/src/index.ts index d4e81ccd9f..c897001022 100644 --- a/libs/map-editor/src/index.ts +++ b/libs/map-editor/src/index.ts @@ -9,7 +9,6 @@ export * from "./Commands/Entity/UpdateEntityCommand"; export * from "./Commands/Entity/CreateEntityCommand"; export * from "./Commands/Entity/DeleteEntityCommand"; export * from "./Commands/WAM/UpdateWAMSettingCommand"; -export * from "./Commands/WAM/UpdateWAMMetadataCommand"; export * from "./Commands/Command"; // MapFetcher is not exported because it is using Node imports that are not available in the browser //export * from "./MapFetcher"; diff --git a/libs/map-editor/src/types.ts b/libs/map-editor/src/types.ts index b451f832aa..847160fd55 100644 --- a/libs/map-editor/src/types.ts +++ b/libs/map-editor/src/types.ts @@ -106,18 +106,6 @@ export const ListenerMegaphonePropertyData = PropertyBase.extend({ chatEnabled: z.boolean().default(false), }); -export const EntityDescriptionPropertyData = PropertyBase.extend({ - type: z.literal("entityDescriptionProperties"), - description: z.string().optional(), - searchable: z.boolean().default(false), -}); - -export const AreaDescriptionPropertyData = PropertyBase.extend({ - type: z.literal("areaDescriptionProperties"), - description: z.string().optional(), - searchable: z.boolean().default(false), -}); - export const AreaDataProperty = z.discriminatedUnion("type", [ StartPropertyData, ExitPropertyData, @@ -128,7 +116,6 @@ export const AreaDataProperty = z.discriminatedUnion("type", [ OpenWebsitePropertyData, SpeakerMegaphonePropertyData, ListenerMegaphonePropertyData, - AreaDescriptionPropertyData, ]); export const AreaDataProperties = z.array(AreaDataProperty); @@ -155,7 +142,6 @@ export const EntityDataProperty = z.discriminatedUnion("type", [ JitsiRoomPropertyData, PlayAudioPropertyData, OpenWebsitePropertyData, - EntityDescriptionPropertyData, ]); export const EntityDataProperties = z.array(EntityDataProperty); @@ -201,38 +187,24 @@ export const WAMEntityData = EntityData.omit({ prefab: true, id: true }); export type WAMEntityData = z.infer; export const WAMMetadata = z.object({ - name: z.string().optional().nullable().describe("The name of the map."), + name: z.string().optional().describe("The name of the map."), description: z .string() .optional() - .nullable() .describe("A description of the map. Can be used in social networks when sharing a link to the map."), copyright: z .string() .optional() - .nullable() .describe( "Copyright notice for this map. Can be a link to a license. Parts of this map like tilesets or images can have their own copyright." ), thumbnail: z .string() .optional() - .nullable() .describe( "URL to a thumbnail image. This image will be used in social networks when sharing a link to the map." ), - areasSearchable: z - .number() - .optional() - .nullable() - .describe("Number of areas define as searchable by the map editor for the exploration mode."), - entitiesSearchable: z - .number() - .optional() - .nullable() - .describe("Number of entities define as searchable by the map editor for the exploration mode."), }); -export type WAMMetadata = z.infer; export const WAMVendor = z .unknown() @@ -316,8 +288,6 @@ export type MapsCacheSingleMapFormat = z.infer; export type MapsCacheFileFormat = z.infer; export type SpeakerMegaphonePropertyData = z.infer; export type ListenerMegaphonePropertyData = z.infer; -export type EntityDescriptionPropertyData = z.infer; -export type AreaDescriptionPropertyData = z.infer; export enum GameMapProperties { ALLOW_API = "allowApi", diff --git a/libs/map-editor/tests/WAMMetadata.test.ts b/libs/map-editor/tests/WAMMetadata.test.ts deleted file mode 100644 index dac4568ecc..0000000000 --- a/libs/map-editor/tests/WAMMetadata.test.ts +++ /dev/null @@ -1,44 +0,0 @@ -import { describe, expect, it, assert } from "vitest"; -import { UpdateWAMMetadataCommand, WAMFileFormat } from "../src"; - -describe("WAM Metadata", () => { - const defaultWamFile: WAMFileFormat = { - version: "1.0.0", - mapUrl: "testMapUrl", - entities: {}, - areas: [], - entityCollections: [], - }; - const dataToModify = { - name: "Test of room", - thumbnail: "Test of room thumbnail", - description: "Test of room description", - copyright: "Test of copyright", - tags: "admin,member", - }; - it("should change WAM file loaded when WAMMetadata receive", async () => { - const wamFile: WAMFileFormat = { ...defaultWamFile }; - const command = new UpdateWAMMetadataCommand(wamFile, dataToModify, "test-uuid"); - await command.execute(); - expect(wamFile.metadata).toBeDefined(); - if (wamFile.metadata) { - expect(wamFile.metadata.name).toEqual(dataToModify.name); - expect(wamFile.metadata.description).toEqual(dataToModify.description); - expect(wamFile.metadata.copyright).toEqual(dataToModify.copyright); - expect(wamFile.metadata.thumbnail).toEqual(dataToModify.thumbnail); - } else { - assert.fail("wamFile.metadata is not defined"); - } - - if (wamFile.vendor) { - expect((wamFile.vendor as { tags: string[] }).tags).toBeDefined(); - if ((wamFile.vendor as { tags: string[] }).tags) { - expect((wamFile.vendor as { tags: string[] }).tags).toEqual(dataToModify.tags.split(",")); - } else { - assert.fail("wamFile.vendor.tags error"); - } - } else { - assert.fail("wamFile.vendor is not defined"); - } - }); -}); diff --git a/map-storage/src/MapStorageServer.ts b/map-storage/src/MapStorageServer.ts index d90612af2c..c556d9435a 100644 --- a/map-storage/src/MapStorageServer.ts +++ b/map-storage/src/MapStorageServer.ts @@ -6,12 +6,12 @@ import { CreateEntityCommand, DeleteAreaCommand, DeleteEntityCommand, + EntityData, EntityDataProperties, UpdateAreaCommand, UpdateEntityCommand, UpdateWAMSettingCommand, WAMEntityData, - UpdateWAMMetadataCommand, } from "@workadventure/map-editor"; import { EditMapCommandMessage, @@ -118,7 +118,7 @@ const mapStorageServer: MapStorageServer = { // NOTE: protobuf does not distinguish between null and empty array, we cannot create optional repeated value. // Because of that, we send additional "modifyProperties" flag set properties value as "undefined" so they won't get erased // by [] value which was supposed to be null. - const dataToModify: AtLeast = structuredClone(message); + const dataToModify: AtLeast = structuredClone(message); if (!message.modifyProperties) { dataToModify.properties = undefined; } @@ -126,7 +126,6 @@ const mapStorageServer: MapStorageServer = { if (area) { await mapsManager.executeCommand( mapKey, - mapUrl.host, new UpdateAreaCommand(gameMap, dataToModify, commandId) ); } else { @@ -142,18 +141,13 @@ const mapStorageServer: MapStorageServer = { }; await mapsManager.executeCommand( mapKey, - mapUrl.host, new CreateAreaCommand(gameMap, areaObjectConfig, commandId) ); break; } case "deleteAreaMessage": { const message = editMapMessage.deleteAreaMessage; - await mapsManager.executeCommand( - mapKey, - mapUrl.host, - new DeleteAreaCommand(gameMap, message.id, commandId) - ); + await mapsManager.executeCommand(mapKey, new DeleteAreaCommand(gameMap, message.id, commandId)); break; } case "modifyEntityMessage": { @@ -170,7 +164,6 @@ const mapStorageServer: MapStorageServer = { if (entity) { await mapsManager.executeCommand( mapKey, - mapUrl.host, new UpdateEntityCommand(gameMap, message.id, dataToModify, commandId) ); } else { @@ -182,7 +175,6 @@ const mapStorageServer: MapStorageServer = { const message = editMapMessage.createEntityMessage; await mapsManager.executeCommand( mapKey, - mapUrl.host, new CreateEntityCommand( gameMap, message.id, @@ -202,11 +194,7 @@ const mapStorageServer: MapStorageServer = { } case "deleteEntityMessage": { const message = editMapMessage.deleteEntityMessage; - await mapsManager.executeCommand( - mapKey, - mapUrl.host, - new DeleteEntityCommand(gameMap, message.id, commandId) - ); + await mapsManager.executeCommand(mapKey, new DeleteEntityCommand(gameMap, message.id, commandId)); break; } case "updateWAMSettingsMessage": { @@ -217,30 +205,13 @@ const mapStorageServer: MapStorageServer = { throw new Error("WAM is not defined"); } // eslint-disable-next-line @typescript-eslint/no-unsafe-argument - await mapsManager.executeCommand( - mapKey, - mapUrl.host, - new UpdateWAMSettingCommand(wam, message, commandId) - ); + await mapsManager.executeCommand(mapKey, new UpdateWAMSettingCommand(wam, message, commandId)); break; } case "errorCommandMessage": { // Nothing to do, this message will never come from client break; } - case "modifiyWAMMetadataMessage": { - const message = editMapMessage.modifiyWAMMetadataMessage; - const wam = gameMap.getWam(); - if (!wam) { - throw new Error("WAM is not defined"); - } - await mapsManager.executeCommand( - mapKey, - mapUrl.host, - new UpdateWAMMetadataCommand(wam, message, commandId) - ); - break; - } default: { const _exhaustiveCheck: never = editMapMessage; } diff --git a/map-storage/src/MapsManager.ts b/map-storage/src/MapsManager.ts index 2e87fe6bae..fb5df0d6b8 100644 --- a/map-storage/src/MapsManager.ts +++ b/map-storage/src/MapsManager.ts @@ -3,9 +3,6 @@ import { EditMapCommandMessage } from "@workadventure/messages"; import { ITiledMap } from "@workadventure/tiled-map-type-guard"; import * as Sentry from "@sentry/node"; import { fileSystem } from "./fileSystem"; -import { MapListService } from "./Services/MapListService"; -import { WebHookService } from "./Services/WebHookService"; -import { WEB_HOOK_URL } from "./Enum/EnvironmentVariable"; class MapsManager { private loadedMaps: Map; @@ -14,8 +11,6 @@ class MapsManager { private saveMapIntervals: Map; private mapLastChangeTimestamp: Map; - private mapListService: MapListService; - /** * Attempt to save the map from memory to file every time interval */ @@ -34,10 +29,9 @@ class MapsManager { this.loadedMapsCommandsQueue = new Map(); this.saveMapIntervals = new Map(); this.mapLastChangeTimestamp = new Map(); - this.mapListService = new MapListService(fileSystem, new WebHookService(WEB_HOOK_URL)); } - public async executeCommand(mapKey: string, domain: string, command: Command): Promise { + public async executeCommand(mapKey: string, command: Command): Promise { const gameMap = this.getGameMap(mapKey); if (!gameMap) { throw new Error('Could not find GameMap with key "' + mapKey + '"'); @@ -46,11 +40,7 @@ class MapsManager { if (!this.saveMapIntervals.has(mapKey)) { this.startSavingMapInterval(mapKey, this.AUTO_SAVE_INTERVAL_MS); } - const wamFile = await command.execute(); - if (wamFile != undefined) - this.mapListService - .updateWAMFileInCache(domain, mapKey.replace(domain, ""), wamFile) - .catch((e) => console.error(e)); + await command.execute(); } public getCommandsNewerThan(mapKey: string, commandId: string | undefined): EditMapCommandMessage[] { diff --git a/map-storage/src/Services/MapListService.ts b/map-storage/src/Services/MapListService.ts index ecfea5984a..65157f19b0 100644 --- a/map-storage/src/Services/MapListService.ts +++ b/map-storage/src/Services/MapListService.ts @@ -1,9 +1,4 @@ -import { - AreaDescriptionPropertyData, - EntityDescriptionPropertyData, - MapsCacheFileFormat, - WAMFileFormat, -} from "@workadventure/map-editor"; +import { MapsCacheFileFormat, WAMFileFormat } from "@workadventure/map-editor"; import { WAMVersionHash } from "@workadventure/map-editor/src/WAMVersionHash"; import pLimit from "p-limit"; import * as Sentry from "@sentry/node"; @@ -116,30 +111,9 @@ export class MapListService { if (wamFilePath.startsWith("/")) { wamFilePath = wamFilePath.substring(1); } - cacheFile.maps[wamFilePath] = { mapUrl: wamFile.mapUrl, - metadata: { - ...wamFile.metadata, - areasSearchable: wamFile.areas.reduce((nb, area) => { - if ( - area.properties && - area.properties.find((property) => (property as AreaDescriptionPropertyData).searchable) - ) { - return nb + 1; - } - return nb; - }, 0), - entitiesSearchable: Object.values(wamFile.entities).reduce((nb, entity) => { - if ( - entity.properties && - entity.properties.find((property) => (property as EntityDescriptionPropertyData).searchable) - ) { - return nb + 1; - } - return nb; - }, 0), - }, + metadata: wamFile.metadata, vendor: wamFile.vendor, }; await this.writeCacheFileNoLimit(domain, cacheFile); diff --git a/messages/protos/messages.proto b/messages/protos/messages.proto index 609cdf8fe3..eae7524a34 100644 --- a/messages/protos/messages.proto +++ b/messages/protos/messages.proto @@ -144,7 +144,6 @@ message EditMapMessage { DeleteEntityMessage deleteEntityMessage = 6; UpdateWAMSettingsMessage updateWAMSettingsMessage = 7; ErrorCommandMessage errorCommandMessage = 8; - ModifiyWAMMetadataMessage modifiyWAMMetadataMessage = 9; } } @@ -274,14 +273,6 @@ message ReceivedEventMessage { optional int32 senderId = 3; } -message ModifiyWAMMetadataMessage{ - string name = 1; - optional string description = 2; - optional string copyright = 3; - optional string thumbnail = 4; - optional string tags = 5; -} - /************ BI-DIRECTIONAL MESSAGES **************/ message ItemEventMessage { @@ -412,11 +403,6 @@ message RoomShortDescription { string name = 1; string roomUrl = 2; optional string wamUrl = 3; - optional string description = 4; - optional string copyright = 5; - optional string thumbnail = 6; - optional int32 areasSearchable = 7; - optional int32 entitiesSearchable = 8; } message RoomsFromSameWorldAnswer { diff --git a/play/public/resources/objects/cloud.mp3 b/play/public/resources/objects/cloud.mp3 deleted file mode 100644 index 1990a4901724bb880fc36a63230e1db44ec17827..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 19680 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 diff --git a/play/src/front/Administration/AnalyticsClient.ts b/play/src/front/Administration/AnalyticsClient.ts index 389f0dfb97..bc9fd6a1e6 100644 --- a/play/src/front/Administration/AnalyticsClient.ts +++ b/play/src/front/Administration/AnalyticsClient.ts @@ -673,29 +673,5 @@ class AnalyticsClient { }) .catch((e) => console.error(e)); } - - openExplorationMode(): void { - this.posthogPromise - ?.then((posthog) => { - posthog.capture(`wa_map-exploration-open`); - }) - .catch((e) => console.error(e)); - } - - closeExplorationMode(): void { - this.posthogPromise - ?.then((posthog) => { - posthog.capture(`wa_map-exploration-close`); - }) - .catch((e) => console.error(e)); - } - - openedRoomList(): void { - this.posthogPromise - ?.then((posthog) => { - posthog.capture("wa-opened-room-list"); - }) - .catch((e) => console.error(e)); - } } export const analyticsClient = new AnalyticsClient(); diff --git a/play/src/front/Components/ActionBar/ActionBar.svelte b/play/src/front/Components/ActionBar/ActionBar.svelte index 153231eb57..7f4424689c 100644 --- a/play/src/front/Components/ActionBar/ActionBar.svelte +++ b/play/src/front/Components/ActionBar/ActionBar.svelte @@ -31,7 +31,7 @@ import followImg from "../images/follow.png"; import lockOpenImg from "../images/lock-opened.png"; import lockCloseImg from "../images/lock-closed.png"; - import mapBuilder from "../images/maps-builder.svg"; + import mapBuilder from "../images/maps-builder.png"; import screenshareOn from "../images/screenshare-on.png"; import screenshareOff from "../images/screenshare-off.png"; import emojiPickOn from "../images/emoji-on.png"; @@ -40,7 +40,6 @@ import hammerImg from "../images/hammer.png"; import megaphoneImg from "../images/megaphone.svg"; import WorkAdventureImg from "../images/icon-workadventure-white.png"; - import worldImg from "../images/world.svg"; import { LayoutMode } from "../../WebRtc/LayoutManager"; import { embedScreenLayoutStore } from "../../Stores/EmbedScreensStore"; import { followRoleStore, followStateStore, followUsersStore } from "../../Stores/FollowStore"; @@ -63,6 +62,7 @@ additionnalButtonsMenu, addClassicButtonActionBarEvent, addActionButtonActionBarEvent, + mapEditorActivated, } from "../../Stores/MenuStore"; import { emoteDataStore, @@ -80,7 +80,7 @@ import { peerStore } from "../../Stores/PeerStore"; import { StringUtils } from "../../Utils/StringUtils"; import Tooltip from "../Util/Tooltip.svelte"; - import { modalIframeStore, modalVisibilityStore, roomListVisibilityStore } from "../../Stores/ModalStore"; + import { modalIframeStore, modalVisibilityStore } from "../../Stores/ModalStore"; import { userHasAccessToBackOfficeStore } from "../../Stores/GameStore"; import { AddButtonActionBarEvent } from "../../Api/Events/Ui/ButtonActionBarEvent"; import { Emoji } from "../../Stores/Utils/emojiSchema"; @@ -189,7 +189,6 @@ function toggleMapEditorMode() { if (isMobile) return; - if ($mapEditorModeStore) gameManager.getCurrentGameScene().getMapEditorModeManager().equipTool(undefined); analyticsClient.toggleMapEditor(!$mapEditorModeStore); mapEditorModeStore.switchMode(!$mapEditorModeStore); } @@ -386,13 +385,6 @@ mapEditorModeStore.set(false); } }); - - function showRoomList() { - resetChatVisibility(); - resetModalVisibility(); - - roomListVisibilityStore.set(true); - } @@ -819,28 +811,34 @@ {$LL.menu.icon.open.menu()} - -
- {#if isMobile} - - {:else} - - {/if} - -
+ {#if isMobile} + + {:else} + + {/if} + + + {/if} {#if $userHasAccessToBackOfficeStore}
-
- - - -
analyticsClient.openedRoomList()} - on:click={showRoomList} - class="bottom-action-button" - > - - - -
-
- {#if $addActionButtonActionBarEvent.length > 0}
{#each $addActionButtonActionBarEvent as button (button.id)} diff --git a/play/src/front/Components/EmbedScreens/Layouts/MozaicLayout.svelte b/play/src/front/Components/EmbedScreens/Layouts/MozaicLayout.svelte index 5acadee96d..b029d58fc6 100644 --- a/play/src/front/Components/EmbedScreens/Layouts/MozaicLayout.svelte +++ b/play/src/front/Components/EmbedScreens/Layouts/MozaicLayout.svelte @@ -41,7 +41,7 @@ {/if}
-
+
{#if $myCameraStore && !displayFullMedias} {/if} diff --git a/play/src/front/Components/Exploration/Explorer.svelte b/play/src/front/Components/Exploration/Explorer.svelte deleted file mode 100644 index 91eafa835b..0000000000 --- a/play/src/front/Components/Exploration/Explorer.svelte +++ /dev/null @@ -1,397 +0,0 @@ - - -
-
-

{$LL.mapEditor.explorer.title()}

- {#if !showSearchMode} -

- {$LL.mapEditor.explorer.description()} -

- {/if} -
-
-
- {#if !showSearchMode} -
- -
- {/if} -
- -
-
- - {#if showSearchMode} -
- -
- -
- { - addFilter("jitsiRoomProperty"); - }} - /> - { - addFilter("playAudio"); - }} - /> - { - addFilter("openWebsite"); - }} - /> - { - addFilter("speakerMegaphone"); - }} - /> - { - addFilter("listenerMegaphone"); - }} - /> - { - addFilter("exit"); - }} - /> - { - addFilter("silent"); - }} - /> - { - addFilter("focusable"); - }} - /> -
- - -
- link icon - {#if $entitessListFiltered.size > 0} - {$entitessListFiltered.size} - {$LL.mapEditor.explorer.entitiesFound($entitessListFiltered.size > 1)} - {:else} -

{$LL.mapEditor.explorer.noEntitiesFound()}

- {/if} - -
- - {#if entityListActive && $entitessListFiltered.size > 0} -
- {#each [...$entitessListFiltered] as [key, entity] (key)} - -
highlightEntity(entity)} - on:mouseleave={() => unhighlightEntity(entity)} - on:click={() => mapExplorationObjectSelectedStore.set(entity)} - class="item tw-p-4 tw-rounded-2xl tw-flex tw-flex-row tw-justify-around tw-items-center tw-cursor-pointer" - > - link icon - {entity.getEntityData().name ?? entity.getPrefab().name} -
- {/each} -
- {/if} - - -
- link icon - {#if $areasListFiltered.size > 0} - {$areasListFiltered.size} - {$LL.mapEditor.explorer.areasFound($areasListFiltered.size > 1)} - {:else} -

{$LL.mapEditor.explorer.noAreasFound()}

- {/if} - -
- {#if areaListActive && $areasListFiltered.size > 0} -
- {#if $areasListFiltered.size > 0} - {#each [...$areasListFiltered] as [key, area] (key)} - -
highlightArea(area)} - on:mouseleave={() => unhighlightArea(area)} - on:click={() => mapExplorationObjectSelectedStore.set(area)} - class="item tw-p-4 tw-rounded-2xl tw-flex tw-flex-row tw-justify-around tw-items-center tw-cursor-pointer" - > - link icon - - {area.getAreaData().name || "No name"} - -
- {/each} - {/if} -
- {/if} - {/if} -
-
- - diff --git a/play/src/front/Components/Exploration/MapList.svelte b/play/src/front/Components/Exploration/MapList.svelte deleted file mode 100644 index 11d973df30..0000000000 --- a/play/src/front/Components/Exploration/MapList.svelte +++ /dev/null @@ -1,135 +0,0 @@ - - - - - diff --git a/play/src/front/Components/Input/InputTags.svelte b/play/src/front/Components/Input/InputTags.svelte index e5514b21f8..03d23ee2e4 100644 --- a/play/src/front/Components/Input/InputTags.svelte +++ b/play/src/front/Components/Input/InputTags.svelte @@ -25,13 +25,13 @@ function handleChange() { options = options.map((i) => { delete i.created; - return { ...i, label: i.label.toLowerCase() }; + return { ...i, label: i.label.toLocaleUpperCase() }; }); } -
-