Skip to content

Commit ca1476f

Browse files
Fires the updated event when content types are updated (#19768)
* Fires the updated event when content types are updated. * Housekeeping: separating/sorting import types --------- Co-authored-by: leekelleher <[email protected]>
1 parent d7a32a3 commit ca1476f

File tree

1 file changed

+32
-19
lines changed

1 file changed

+32
-19
lines changed

src/Umbraco.Web.UI.Client/src/packages/content/content-type/workspace/content-type-workspace-context-base.ts

Lines changed: 32 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,27 @@
1-
import type { UmbContentTypeCompositionModel, UmbContentTypeDetailModel, UmbContentTypeSortModel } from '../types.js';
21
import { UmbContentTypeStructureManager } from '../structure/index.js';
2+
import type { UmbContentTypeCompositionModel, UmbContentTypeDetailModel, UmbContentTypeSortModel } from '../types.js';
33
import type { UmbContentTypeWorkspaceContext } from './content-type-workspace-context.interface.js';
4+
import { UmbEntityDetailWorkspaceContextBase } from '@umbraco-cms/backoffice/workspace';
5+
import {
6+
UmbEntityUpdatedEvent,
7+
UmbRequestReloadChildrenOfEntityEvent,
8+
UmbRequestReloadStructureForEntityEvent,
9+
} from '@umbraco-cms/backoffice/entity-action';
10+
import { UMB_ACTION_EVENT_CONTEXT } from '@umbraco-cms/backoffice/action';
11+
import type { Observable } from '@umbraco-cms/backoffice/observable-api';
412
import type { UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';
13+
import type { UmbEntityModel } from '@umbraco-cms/backoffice/entity';
514
import type {
615
UmbDetailRepository,
716
UmbRepositoryResponse,
817
UmbRepositoryResponseWithAsObservable,
918
} from '@umbraco-cms/backoffice/repository';
10-
import {
11-
UmbEntityDetailWorkspaceContextBase,
12-
type UmbEntityDetailWorkspaceContextArgs,
13-
type UmbEntityDetailWorkspaceContextCreateArgs,
14-
type UmbRoutableWorkspaceContext,
19+
import type {
20+
UmbEntityDetailWorkspaceContextArgs,
21+
UmbEntityDetailWorkspaceContextCreateArgs,
22+
UmbRoutableWorkspaceContext,
1523
} from '@umbraco-cms/backoffice/workspace';
1624
import type { UmbReferenceByUnique } from '@umbraco-cms/backoffice/models';
17-
import type { Observable } from '@umbraco-cms/backoffice/observable-api';
18-
import { UMB_ACTION_EVENT_CONTEXT } from '@umbraco-cms/backoffice/action';
19-
import {
20-
UmbRequestReloadChildrenOfEntityEvent,
21-
UmbRequestReloadStructureForEntityEvent,
22-
} from '@umbraco-cms/backoffice/entity-action';
23-
import type { UmbEntityModel } from '@umbraco-cms/backoffice/entity';
2425

2526
// eslint-disable-next-line @typescript-eslint/no-empty-object-type
2627
export interface UmbContentTypeWorkspaceContextArgs extends UmbEntityDetailWorkspaceContextArgs {}
@@ -183,16 +184,28 @@ export abstract class UmbContentTypeWorkspaceContextBase<
183184

184185
this._data.setPersisted(this.structure.getOwnerContentType());
185186

186-
const actionEventContext = await this.getContext(UMB_ACTION_EVENT_CONTEXT);
187-
if (!actionEventContext) {
187+
const eventContext = await this.getContext(UMB_ACTION_EVENT_CONTEXT);
188+
if (!eventContext) {
188189
throw new Error('Could not get the action event context');
189190
}
190-
const event = new UmbRequestReloadStructureForEntityEvent({
191-
unique: this.getUnique()!,
192-
entityType: this.getEntityType(),
191+
192+
const unique = this.getUnique()!;
193+
const entityType = this.getEntityType();
194+
195+
const reloadStructureEvent = new UmbRequestReloadStructureForEntityEvent({
196+
unique,
197+
entityType,
198+
});
199+
200+
eventContext.dispatchEvent(reloadStructureEvent);
201+
202+
const updatedEvent = new UmbEntityUpdatedEvent({
203+
unique,
204+
entityType,
205+
eventUnique: this._workspaceEventUnique,
193206
});
194207

195-
actionEventContext.dispatchEvent(event);
208+
eventContext.dispatchEvent(updatedEvent);
196209
} catch (error) {
197210
console.error(error);
198211
}

0 commit comments

Comments
 (0)