/
dimamir
/
undb
Обзор
Документация
Войти
/
dimamir
/
undb
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
develop
packages/table/src/methods/delete-view.method.ts
29 строк
800 B
nichenqin
fix: fix event spaceis
18 окт 2024, 11:51
18 окт 2024, 11:51
4b42997
Код
Авторство
О чём код?
import { type Option } from "@undb/domain" import type { IDeleteViewDTO } from "../dto/delete-view.dto" import { ViewDeletedEvent } from "../events/view-deleted.event" import { type TableComositeSpecification } from "../specifications" import type { TableDo } from "../table.do" export function deleteViewMethod(this: TableDo, dto: IDeleteViewDTO): Option<TableComositeSpecification> { const view = this.views.getViewById(dto.viewId) if (view.isDefault) { throw new Error("Cannot delete default view") } const spec = view.$delete() if (spec.isSome()) { spec.unwrap().mutate(this) const event = new ViewDeletedEvent( { tableId: this.id.value, viewId: view.id.value, }, this.spaceId, ) this.addDomainEvent(event) } return spec }