#363 : (Re)saving teleports works again

This commit is contained in:
Dennis Postma 2025-02-17 14:50:02 +01:00
parent a77b35d55a
commit 4c7751db55
5 changed files with 8 additions and 8 deletions

6
package-lock.json generated
View File

@ -4783,9 +4783,9 @@
} }
}, },
"node_modules/type-fest": { "node_modules/type-fest": {
"version": "4.34.1", "version": "4.35.0",
"resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.34.1.tgz", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.35.0.tgz",
"integrity": "sha512-6kSc32kT0rbwxD6QL1CYe8IqdzN/J/ILMrNK+HMQCKH3insCDRY/3ITb0vcBss0a3t72fzh2YSzj8ko1HgwT3g==", "integrity": "sha512-2/AwEFQDFEy30iOLjrvHDIH7e4HEWH+f1Yl1bI5XMqzuoCUqwYCdxachgsgv0og/JdVZUhbfjcJAoHj5L1753A==",
"license": "(MIT OR CC0-1.0)", "license": "(MIT OR CC0-1.0)",
"engines": { "engines": {
"node": ">=16" "node": ">=16"

View File

@ -22,7 +22,7 @@ export class BaseMapEventTile extends BaseEntity {
@Property() @Property()
positionY: number = 0 positionY: number = 0
@OneToOne({ eager: true }) @OneToOne({ eager: true, deleteRule: 'cascade', orphanRemoval: true })
teleport?: MapEventTileTeleport teleport?: MapEventTileTeleport
setId(id: UUID) { setId(id: UUID) {

View File

@ -9,7 +9,7 @@ export class BaseMapEventTileTeleport extends BaseEntity {
@PrimaryKey() @PrimaryKey()
id = randomUUID() id = randomUUID()
@OneToOne({ deleteRule: 'cascade' }) @OneToOne({ deleteRule: 'cascade', orphanRemoval: true })
mapEventTile!: MapEventTile mapEventTile!: MapEventTile
@ManyToOne({ deleteRule: 'cascade', eager: true }) @ManyToOne({ deleteRule: 'cascade', eager: true })

View File

@ -317,7 +317,7 @@
"id" "id"
], ],
"referencedTableName": "map_event_tile_teleport", "referencedTableName": "map_event_tile_teleport",
"deleteRule": "set null", "deleteRule": "cascade",
"updateRule": "cascade" "updateRule": "cascade"
} }
}, },

View File

@ -1,6 +1,6 @@
import { Migration } from '@mikro-orm/migrations'; import { Migration } from '@mikro-orm/migrations';
export class Migration20250216202007 extends Migration { export class Migration20250217134639 extends Migration {
override async up(): Promise<void> { override async up(): Promise<void> {
this.addSql(`create table \`map\` (\`id\` varchar(255) not null, \`name\` varchar(255) not null default '', \`width\` int not null default 10, \`height\` int not null default 10, \`tiles\` json not null, \`pvp\` tinyint(1) not null default false, \`created_at\` datetime not null, \`updated_at\` datetime not null, primary key (\`id\`)) default character set utf8mb4 engine = InnoDB;`); this.addSql(`create table \`map\` (\`id\` varchar(255) not null, \`name\` varchar(255) not null default '', \`width\` int not null default 10, \`height\` int not null default 10, \`tiles\` json not null, \`pvp\` tinyint(1) not null default false, \`created_at\` datetime not null, \`updated_at\` datetime not null, primary key (\`id\`)) default character set utf8mb4 engine = InnoDB;`);
@ -70,7 +70,7 @@ export class Migration20250216202007 extends Migration {
this.addSql(`alter table \`map_effect\` add constraint \`map_effect_map_id_foreign\` foreign key (\`map_id\`) references \`map\` (\`id\`) on update cascade on delete cascade;`); this.addSql(`alter table \`map_effect\` add constraint \`map_effect_map_id_foreign\` foreign key (\`map_id\`) references \`map\` (\`id\`) on update cascade on delete cascade;`);
this.addSql(`alter table \`map_event_tile\` add constraint \`map_event_tile_map_id_foreign\` foreign key (\`map_id\`) references \`map\` (\`id\`) on update cascade on delete cascade;`); this.addSql(`alter table \`map_event_tile\` add constraint \`map_event_tile_map_id_foreign\` foreign key (\`map_id\`) references \`map\` (\`id\`) on update cascade on delete cascade;`);
this.addSql(`alter table \`map_event_tile\` add constraint \`map_event_tile_teleport_id_foreign\` foreign key (\`teleport_id\`) references \`map_event_tile_teleport\` (\`id\`) on update cascade on delete set null;`); this.addSql(`alter table \`map_event_tile\` add constraint \`map_event_tile_teleport_id_foreign\` foreign key (\`teleport_id\`) references \`map_event_tile_teleport\` (\`id\`) on update cascade on delete cascade;`);
this.addSql(`alter table \`map_event_tile_teleport\` add constraint \`map_event_tile_teleport_map_event_tile_id_foreign\` foreign key (\`map_event_tile_id\`) references \`map_event_tile\` (\`id\`) on update cascade on delete cascade;`); this.addSql(`alter table \`map_event_tile_teleport\` add constraint \`map_event_tile_teleport_map_event_tile_id_foreign\` foreign key (\`map_event_tile_id\`) references \`map_event_tile\` (\`id\`) on update cascade on delete cascade;`);
this.addSql(`alter table \`map_event_tile_teleport\` add constraint \`map_event_tile_teleport_to_map_id_foreign\` foreign key (\`to_map_id\`) references \`map\` (\`id\`) on update cascade on delete cascade;`); this.addSql(`alter table \`map_event_tile_teleport\` add constraint \`map_event_tile_teleport_to_map_id_foreign\` foreign key (\`to_map_id\`) references \`map\` (\`id\`) on update cascade on delete cascade;`);