@masterteam/workspace-builder 0.0.11 → 0.0.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@masterteam/workspace-builder",
3
- "version": "0.0.11",
3
+ "version": "0.0.12",
4
4
  "publishConfig": {
5
5
  "directory": "../../../dist/masterteam/workspace-builder",
6
6
  "linkDirectory": false,
@@ -20,7 +20,7 @@
20
20
  "tailwindcss": "^4.2.2",
21
21
  "tailwindcss-primeui": "^0.6.1",
22
22
  "@ngxs/store": "^20.1.0",
23
- "@masterteam/components": "^0.0.143"
23
+ "@masterteam/components": "^0.0.155"
24
24
  },
25
25
  "sideEffects": false,
26
26
  "exports": {
@@ -1,8 +1,6 @@
1
1
  import * as _angular_core from '@angular/core';
2
2
  import { OnDestroy } from '@angular/core';
3
3
  import { ToastService } from '@masterteam/components/toast';
4
- import { MenuItem } from 'primeng/api';
5
- import { ContextMenu } from 'primeng/contextmenu';
6
4
  import * as rxjs from 'rxjs';
7
5
  import * as _masterteam_workspace_builder from '@masterteam/workspace-builder';
8
6
  import { StateContext } from '@ngxs/store';
@@ -13,7 +11,7 @@ interface LoadingStateShape<L extends string = string> {
13
11
  errors: Partial<Record<L, string>>;
14
12
  }
15
13
 
16
- type WorkspaceArea = 'main' | 'more';
14
+ type WorkspaceArea = 'tabs';
17
15
  type WorkspaceItemType = 'module' | 'group';
18
16
  interface LocalizedTitle {
19
17
  en: string;
@@ -41,8 +39,7 @@ interface WorkspaceGroupItem {
41
39
  type WorkspaceItem = WorkspaceModuleItem | WorkspaceGroupItem;
42
40
  interface WorkspaceBuilderLayoutDto {
43
41
  levelId: number;
44
- main: WorkspaceItem[];
45
- more: WorkspaceItem[];
42
+ tabs: WorkspaceItem[];
46
43
  }
47
44
  interface SaveWorkspaceModuleItemDto {
48
45
  id: string;
@@ -55,12 +52,10 @@ interface SaveWorkspaceItemDto {
55
52
  modules?: SaveWorkspaceModuleItemDto[];
56
53
  }
57
54
  interface SaveWorkspaceLayoutDto {
58
- main: SaveWorkspaceItemDto[];
59
- more: SaveWorkspaceItemDto[];
55
+ tabs: SaveWorkspaceItemDto[];
60
56
  }
61
57
  interface CreateWorkspaceGroupDto {
62
58
  title: LocalizedTitle;
63
- area: WorkspaceArea;
64
59
  order: number;
65
60
  }
66
61
  interface CreateWorkspaceGroupResponseDto {
@@ -68,7 +63,6 @@ interface CreateWorkspaceGroupResponseDto {
68
63
  }
69
64
  interface UpdateWorkspaceGroupDto {
70
65
  title?: LocalizedTitle;
71
- area?: WorkspaceArea;
72
66
  order?: number;
73
67
  }
74
68
  declare enum WorkspaceBuilderActionKey {
@@ -102,12 +96,14 @@ declare class WorkspaceBuilder implements OnDestroy {
102
96
  readonly areas: WorkspaceArea[];
103
97
  readonly dropScope = "workspace-builder-item";
104
98
  readonly loadingSkeletonRows: number[];
105
- readonly createGroupArea: _angular_core.WritableSignal<WorkspaceArea>;
106
99
  readonly isDragging: _angular_core.WritableSignal<boolean>;
107
100
  readonly activeDropSlotKey: _angular_core.WritableSignal<string | null>;
108
101
  private readonly expandedGroups;
109
102
  private readonly dragPayload;
110
103
  private dragCleanupTimer;
104
+ private scrollAnimFrame;
105
+ private scrollContainer;
106
+ private scrollDirection;
111
107
  private autoSaveInFlight;
112
108
  private autoSaveQueued;
113
109
  private autoSaveQueuedNotifySuccess;
@@ -116,16 +112,14 @@ declare class WorkspaceBuilder implements OnDestroy {
116
112
  private readonly modal;
117
113
  private readonly transloco;
118
114
  ts: ToastService;
119
- private readonly addGroupLabel;
120
115
  readonly layout: _angular_core.Signal<WorkspaceBuilderLayoutDto>;
121
116
  readonly validationErrors: _angular_core.Signal<string[]>;
122
117
  readonly isLoadingLayout: _angular_core.Signal<boolean>;
123
118
  readonly layoutError: _angular_core.Signal<string | null>;
124
119
  readonly isSavingLayout: _angular_core.Signal<boolean>;
125
- readonly areaContextItems: _angular_core.Signal<MenuItem[]>;
126
120
  constructor();
127
121
  ngOnDestroy(): void;
128
- areaItems(area: WorkspaceArea): WorkspaceItem[];
122
+ areaItems(_area: WorkspaceArea): WorkspaceItem[];
129
123
  trackItem(item: WorkspaceItem): string;
130
124
  isGroupExpanded(groupId: string): boolean;
131
125
  toggleGroup(groupId: string): void;
@@ -144,8 +138,7 @@ declare class WorkspaceBuilder implements OnDestroy {
144
138
  onNativeAreaDrop(event: DragEvent, area: WorkspaceArea): void;
145
139
  onNativeGroupDrop(event: DragEvent, area: WorkspaceArea, groupId: string): void;
146
140
  onNativeGroupModuleDrop(event: DragEvent, area: WorkspaceArea, groupId: string, moduleIndex: number): void;
147
- onAreaContextMenu(event: MouseEvent, area: WorkspaceArea, contextMenu: ContextMenu): void;
148
- openCreateGroupDialog(area: WorkspaceArea): void;
141
+ openCreateGroupDialog(_area?: WorkspaceArea): void;
149
142
  startRenameGroup(group: WorkspaceGroupItem): void;
150
143
  onSaveClick(): void;
151
144
  reloadLayout(): void;
@@ -159,6 +152,11 @@ declare class WorkspaceBuilder implements OnDestroy {
159
152
  private getDropPayloadFromTransfer;
160
153
  private setDragTransferData;
161
154
  private beginDragSession;
155
+ onAreaBodyDragOver(event: DragEvent): void;
156
+ onAreaBodyDragLeave(event: DragEvent): void;
157
+ private updateEdgeScroll;
158
+ private runEdgeScroll;
159
+ private stopEdgeScroll;
162
160
  private endDragSession;
163
161
  private scheduleDragSessionCleanup;
164
162
  private clearDragCleanupTimer;
@@ -201,10 +199,9 @@ declare class SaveWorkspaceBuilderLayout {
201
199
  }
202
200
  declare class CreateWorkspaceBuilderGroup {
203
201
  title: LocalizedTitle;
204
- area: WorkspaceArea;
205
202
  order?: number | undefined;
206
203
  static readonly type = "[WorkspaceBuilder] Create Group";
207
- constructor(title: LocalizedTitle, area?: WorkspaceArea, order?: number | undefined);
204
+ constructor(title: LocalizedTitle, order?: number | undefined);
208
205
  }
209
206
  declare class RenameWorkspaceBuilderGroup {
210
207
  groupId: string;
@@ -225,8 +222,7 @@ declare class WorkspaceBuilderFacade {
225
222
  private readonly store;
226
223
  readonly levelId: _angular_core.Signal<number | null>;
227
224
  readonly layout: _angular_core.Signal<WorkspaceBuilderLayoutDto>;
228
- readonly mainItems: _angular_core.Signal<_masterteam_workspace_builder.WorkspaceItem[]>;
229
- readonly moreItems: _angular_core.Signal<_masterteam_workspace_builder.WorkspaceItem[]>;
225
+ readonly tabItems: _angular_core.Signal<_masterteam_workspace_builder.WorkspaceItem[]>;
230
226
  readonly validationErrors: _angular_core.Signal<string[]>;
231
227
  readonly isDirty: _angular_core.Signal<boolean>;
232
228
  readonly successMessages: _angular_core.Signal<Partial<Record<WorkspaceBuilderActionKey, string>>>;
@@ -245,7 +241,7 @@ declare class WorkspaceBuilderFacade {
245
241
  getLayout(): rxjs.Observable<void>;
246
242
  patchLayout(layout: WorkspaceBuilderLayoutDto): rxjs.Observable<void>;
247
243
  saveLayout(): rxjs.Observable<void>;
248
- createGroup(title: LocalizedTitle, area?: WorkspaceArea, order?: number): rxjs.Observable<void>;
244
+ createGroup(title: LocalizedTitle, order?: number): rxjs.Observable<void>;
249
245
  renameGroup(groupId: string, title: LocalizedTitle): rxjs.Observable<void>;
250
246
  deleteGroup(groupId: string): rxjs.Observable<void>;
251
247
  resetState(): rxjs.Observable<void>;
@@ -268,20 +264,19 @@ declare class WorkspaceBuilderState extends CrudStateBase<WorkspaceItem, Workspa
268
264
  private http;
269
265
  static getLevelId(state: WorkspaceBuilderStateModel): number | null;
270
266
  static getLayout(state: WorkspaceBuilderStateModel): WorkspaceBuilderLayoutDto;
271
- static getMainItems(state: WorkspaceBuilderStateModel): WorkspaceItem[];
272
- static getMoreItems(state: WorkspaceBuilderStateModel): WorkspaceItem[];
267
+ static getTabItems(state: WorkspaceBuilderStateModel): WorkspaceItem[];
273
268
  static getValidationErrors(state: WorkspaceBuilderStateModel): string[];
274
269
  static getIsDirty(state: WorkspaceBuilderStateModel): boolean;
275
270
  static getLoadingActive(state: WorkspaceBuilderStateModel): string[];
276
271
  static getErrors(state: WorkspaceBuilderStateModel): Record<string, string | null>;
277
272
  static getSuccessMessages(state: WorkspaceBuilderStateModel): Partial<Record<WorkspaceBuilderActionKey, string>>;
278
273
  setLevelId(ctx: StateContext<WorkspaceBuilderStateModel>, { levelId }: SetWorkspaceBuilderLevelId): void;
279
- getLayout(ctx: StateContext<WorkspaceBuilderStateModel>): rxjs.Observable<Response<WorkspaceBuilderLayoutDto>> | undefined;
274
+ getLayout(ctx: StateContext<WorkspaceBuilderStateModel>): rxjs.Observable<Response<any>> | undefined;
280
275
  patchLayoutLocally(ctx: StateContext<WorkspaceBuilderStateModel>, { layout }: PatchWorkspaceBuilderLayoutLocally): void;
281
276
  saveLayout(ctx: StateContext<WorkspaceBuilderStateModel>): rxjs.Observable<Response<{
282
277
  ok: boolean;
283
278
  }>> | undefined;
284
- createGroup(ctx: StateContext<WorkspaceBuilderStateModel>, { title, area, order }: CreateWorkspaceBuilderGroup): rxjs.Observable<Response<CreateWorkspaceGroupResponseDto>> | undefined;
279
+ createGroup(ctx: StateContext<WorkspaceBuilderStateModel>, { title, order }: CreateWorkspaceBuilderGroup): rxjs.Observable<Response<CreateWorkspaceGroupResponseDto>> | undefined;
285
280
  renameGroup(ctx: StateContext<WorkspaceBuilderStateModel>, { groupId, title }: RenameWorkspaceBuilderGroup): rxjs.Observable<Response<any>> | undefined;
286
281
  deleteGroup(ctx: StateContext<WorkspaceBuilderStateModel>, { groupId }: DeleteWorkspaceBuilderGroup): rxjs.Observable<Response<void>> | undefined;
287
282
  resetState(ctx: StateContext<WorkspaceBuilderStateModel>): void;