@masterteam/task-schedule 0.0.2 → 0.0.4
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/README.md +102 -70
- package/assets/i18n/ar.json +58 -0
- package/assets/i18n/en.json +58 -0
- package/assets/task-schedule.css +2 -2
- package/fesm2022/masterteam-task-schedule.mjs +2025 -2046
- package/fesm2022/masterteam-task-schedule.mjs.map +1 -1
- package/package.json +8 -3
- package/types/masterteam-task-schedule.d.ts +301 -201
|
@@ -1,28 +1,45 @@
|
|
|
1
1
|
import * as _angular_core from '@angular/core';
|
|
2
|
-
import { OnInit, OnDestroy
|
|
2
|
+
import { OnInit, OnDestroy } from '@angular/core';
|
|
3
3
|
import { GanttComponent, ContextMenuOpenEventArgs, ContextMenuClickEventArgs } from '@syncfusion/ej2-angular-gantt';
|
|
4
|
-
import * as rxjs from 'rxjs';
|
|
5
4
|
import { Observable } from 'rxjs';
|
|
6
5
|
import { EntityData } from '@masterteam/components/entities';
|
|
6
|
+
import { ModalService } from '@masterteam/components/modal';
|
|
7
|
+
import { ColumnDef } from '@masterteam/components/table';
|
|
7
8
|
import * as _masterteam_task_schedule from '@masterteam/task-schedule';
|
|
8
9
|
|
|
9
10
|
type TaskScheduleModelKey = 'default' | 'edit' | 'baseline' | 'criticalPath' | 'resources' | 'unscheduled' | 'phaseGate' | 'custom';
|
|
10
11
|
type TaskScheduleModelAlias = 'critical-path' | 'criticalpath' | 'critical path' | 'phase-gate' | 'phasegate' | 'phase gate' | 'resource' | 'resource-view' | 'resourceview' | 'unscheduled-task' | 'unscheduled task' | 'scheduling' | 'view' | 'defauilt' | 'custom-view';
|
|
11
12
|
type TaskScheduleModelType = TaskScheduleModelKey | TaskScheduleModelAlias | string;
|
|
13
|
+
interface TaskScheduleModeOption {
|
|
14
|
+
value: TaskScheduleModelType;
|
|
15
|
+
label?: string;
|
|
16
|
+
icon?: string;
|
|
17
|
+
color?: string;
|
|
18
|
+
}
|
|
12
19
|
declare function normalizeTaskScheduleModelType(modelType: TaskScheduleModelType): TaskScheduleModelKey;
|
|
13
20
|
interface TaskScheduleContext {
|
|
14
21
|
levelId: number | string;
|
|
22
|
+
modelType?: TaskScheduleModelType;
|
|
15
23
|
schemaId?: number | string;
|
|
16
24
|
levelDataId?: number | string;
|
|
25
|
+
taskModuleId?: number | string;
|
|
26
|
+
milestoneModuleId?: number | string;
|
|
27
|
+
deliverableModuleId?: number | string;
|
|
17
28
|
customViewId?: number | string;
|
|
18
|
-
apiBaseUrl?: string;
|
|
19
29
|
scheduleViewKey?: string;
|
|
30
|
+
dateFormat?: string;
|
|
31
|
+
height?: string;
|
|
32
|
+
modeOptions?: TaskScheduleModeOption[];
|
|
33
|
+
allowEditMode?: boolean;
|
|
34
|
+
allowImport?: boolean;
|
|
35
|
+
allowSetBaseline?: boolean;
|
|
36
|
+
hasTasks?: boolean;
|
|
37
|
+
baselinePending?: boolean;
|
|
20
38
|
resources?: Array<Record<string, unknown>>;
|
|
21
39
|
endpoints?: TaskScheduleContextEndpoints;
|
|
22
40
|
pdfFonts?: TaskSchedulePdfFonts;
|
|
23
41
|
customProperties?: TaskScheduleCustomProperty[];
|
|
24
42
|
customColumns?: Array<Record<string, unknown>>;
|
|
25
|
-
requestHeaders?: Record<string, string>;
|
|
26
43
|
langCode?: 'en' | 'ar';
|
|
27
44
|
modelCacheKey?: string;
|
|
28
45
|
[key: string]: unknown;
|
|
@@ -32,36 +49,33 @@ interface TaskSchedulePdfFonts {
|
|
|
32
49
|
arabic?: string;
|
|
33
50
|
size?: number;
|
|
34
51
|
}
|
|
35
|
-
interface
|
|
52
|
+
interface TaskScheduleCoreContextEndpoints {
|
|
53
|
+
processSubmit?: string;
|
|
54
|
+
scheduleRead?: string;
|
|
55
|
+
scheduleQuery?: string;
|
|
36
56
|
scheduleTree?: string;
|
|
37
|
-
scheduleTreeDefault?: string;
|
|
38
|
-
scheduleTreeEdit?: string;
|
|
39
|
-
scheduleTreeBaseline?: string;
|
|
40
|
-
scheduleTreeCriticalPath?: string;
|
|
41
|
-
scheduleTreeResources?: string;
|
|
42
|
-
scheduleTreeUnscheduled?: string;
|
|
43
57
|
scheduleTreePhaseGate?: string;
|
|
44
|
-
|
|
58
|
+
}
|
|
59
|
+
interface TaskScheduleFeatureContextEndpoints {
|
|
60
|
+
scheduleDependencies?: string;
|
|
61
|
+
scheduleTimeline?: string;
|
|
62
|
+
scheduleBaselines?: string;
|
|
63
|
+
scheduleBaselineByVersion?: string;
|
|
45
64
|
scheduleManagerBase?: string;
|
|
46
65
|
scheduleViewById?: string;
|
|
47
66
|
scheduleViewsByLevel?: string;
|
|
48
67
|
scheduleSettingsByLevel?: string;
|
|
49
|
-
teamMembers?: string;
|
|
50
|
-
createTask?: string;
|
|
51
|
-
updateTask?: string;
|
|
52
|
-
deleteTask?: string;
|
|
53
|
-
updateBulkTasks?: string;
|
|
54
|
-
updateParent?: string;
|
|
55
|
-
updateOrder?: string;
|
|
56
|
-
updateProgress?: string;
|
|
57
68
|
importTasks?: string;
|
|
58
69
|
applyImportedTasks?: string;
|
|
59
70
|
setBaseline?: string;
|
|
60
71
|
exportTasks?: string;
|
|
61
|
-
[key: string]: string | undefined;
|
|
62
72
|
}
|
|
73
|
+
type TaskScheduleContextEndpoints = TaskScheduleCoreContextEndpoints & Partial<TaskScheduleFeatureContextEndpoints> & {
|
|
74
|
+
[key: string]: string | undefined;
|
|
75
|
+
};
|
|
63
76
|
interface TaskScheduleTask {
|
|
64
77
|
id: number | string;
|
|
78
|
+
schemaId?: number | string | null;
|
|
65
79
|
title: string;
|
|
66
80
|
name?: string;
|
|
67
81
|
startDate?: Date | string | null;
|
|
@@ -74,6 +88,7 @@ interface TaskScheduleTask {
|
|
|
74
88
|
actualFinishDate?: Date | string | null;
|
|
75
89
|
baselineStartDate?: Date | string | null;
|
|
76
90
|
baselineEndDate?: Date | string | null;
|
|
91
|
+
baselineDuration?: number | null;
|
|
77
92
|
duration?: number | null;
|
|
78
93
|
progress?: number | null;
|
|
79
94
|
predecessor?: string | null;
|
|
@@ -86,12 +101,15 @@ interface TaskScheduleTask {
|
|
|
86
101
|
guid?: string | null;
|
|
87
102
|
uniqueID?: string | null;
|
|
88
103
|
parentGuid?: string | null;
|
|
104
|
+
parentId?: number | string | null;
|
|
89
105
|
assignedTo?: string | number | Record<string, unknown> | null;
|
|
90
106
|
resources?: Array<number | string | {
|
|
91
107
|
resourceId: number | string;
|
|
92
|
-
unit?: number;
|
|
108
|
+
unit?: number | string;
|
|
109
|
+
resourceName?: string;
|
|
93
110
|
}>;
|
|
94
111
|
phaseGate?: string | null;
|
|
112
|
+
phaseGateId?: number | string | null;
|
|
95
113
|
criticalPath?: boolean;
|
|
96
114
|
order?: number;
|
|
97
115
|
customProperties?: Array<Record<string, unknown>>;
|
|
@@ -128,15 +146,31 @@ interface TaskScheduleCustomProperty {
|
|
|
128
146
|
}
|
|
129
147
|
interface TaskScheduleTaskMutation {
|
|
130
148
|
assignedTo?: number | string | null;
|
|
131
|
-
name
|
|
149
|
+
name?: string;
|
|
132
150
|
startDate?: string | Date | null;
|
|
133
151
|
finishDate?: string | Date | null;
|
|
152
|
+
actualStart?: string | Date | null;
|
|
153
|
+
actualFinish?: string | Date | null;
|
|
154
|
+
baselineStart?: string | Date | null;
|
|
155
|
+
baselineFinish?: string | Date | null;
|
|
156
|
+
baselineProgress?: number | null;
|
|
134
157
|
predecessor?: string | null;
|
|
158
|
+
predecessors?: TaskScheduleDependencyMutation[] | null;
|
|
135
159
|
details?: string | null;
|
|
136
160
|
type?: string | null;
|
|
137
161
|
duration?: number | null;
|
|
138
162
|
progress?: number | null;
|
|
163
|
+
status?: string | null;
|
|
139
164
|
parentGuid?: string | null;
|
|
165
|
+
parentId?: number | string | null;
|
|
166
|
+
phaseGateId?: number | string | null;
|
|
167
|
+
resources?: TaskScheduleTask['resources'];
|
|
168
|
+
attachments?: unknown;
|
|
169
|
+
isSummary?: boolean | null;
|
|
170
|
+
externalId?: string | null;
|
|
171
|
+
externalParentId?: string | null;
|
|
172
|
+
order?: number | null;
|
|
173
|
+
weight?: number | null;
|
|
140
174
|
props?: Array<Record<string, unknown>>;
|
|
141
175
|
[key: string]: unknown;
|
|
142
176
|
}
|
|
@@ -144,6 +178,67 @@ interface TaskScheduleTaskOrderUpdate {
|
|
|
144
178
|
taskId: number | string;
|
|
145
179
|
order: number;
|
|
146
180
|
}
|
|
181
|
+
type TaskScheduleDependencyType = 0 | 1 | 2 | 3 | 'FinishToStart' | 'StartToStart' | 'FinishToFinish' | 'StartToFinish';
|
|
182
|
+
interface TaskScheduleDependencyMutation {
|
|
183
|
+
predecessorId: number | string;
|
|
184
|
+
type?: TaskScheduleDependencyType | null;
|
|
185
|
+
lagDays?: number | null;
|
|
186
|
+
}
|
|
187
|
+
interface TaskScheduleDependency extends TaskScheduleDependencyMutation {
|
|
188
|
+
id: number | string;
|
|
189
|
+
successorId: number | string;
|
|
190
|
+
}
|
|
191
|
+
type TaskScheduleTimelineMode = 'weekly' | 'monthly' | 'quarterly' | 'biannually' | 'annually';
|
|
192
|
+
interface TaskScheduleTimelineBucket {
|
|
193
|
+
name: string;
|
|
194
|
+
number: number;
|
|
195
|
+
start: Date | string | null;
|
|
196
|
+
end: Date | string | null;
|
|
197
|
+
year?: number | null;
|
|
198
|
+
id: string;
|
|
199
|
+
seq?: number | null;
|
|
200
|
+
}
|
|
201
|
+
interface TaskScheduleBaselineVersion {
|
|
202
|
+
version: number;
|
|
203
|
+
createdAt: Date | string | null;
|
|
204
|
+
createdBy?: string | null;
|
|
205
|
+
itemCount?: number | null;
|
|
206
|
+
}
|
|
207
|
+
interface TaskScheduleBaselineSnapshotItem {
|
|
208
|
+
snapshotId?: number | string | null;
|
|
209
|
+
levelDataId?: number | string | null;
|
|
210
|
+
scheduleItemId?: number | string | null;
|
|
211
|
+
currentScheduleItemId?: number | string | null;
|
|
212
|
+
name?: string | null;
|
|
213
|
+
type?: string | null;
|
|
214
|
+
typeLable?: string | null;
|
|
215
|
+
status?: string | null;
|
|
216
|
+
externalId?: string | null;
|
|
217
|
+
externalParentId?: string | null;
|
|
218
|
+
guid?: string | null;
|
|
219
|
+
parentGuid?: string | null;
|
|
220
|
+
order?: number | null;
|
|
221
|
+
isSummary?: boolean;
|
|
222
|
+
assignedTo?: string | null;
|
|
223
|
+
resources?: Array<number | string | Record<string, unknown>>;
|
|
224
|
+
baselineStart?: Date | string | null;
|
|
225
|
+
baselineFinish?: Date | string | null;
|
|
226
|
+
baselineProgress?: number | null;
|
|
227
|
+
currentStart?: Date | string | null;
|
|
228
|
+
currentFinish?: Date | string | null;
|
|
229
|
+
currentProgress?: number | null;
|
|
230
|
+
currentStatus?: string | null;
|
|
231
|
+
currentAssignedTo?: string | null;
|
|
232
|
+
currentResources?: Array<number | string | Record<string, unknown>>;
|
|
233
|
+
existsInCurrentSchedule?: boolean;
|
|
234
|
+
}
|
|
235
|
+
interface TaskScheduleBaselineSnapshot {
|
|
236
|
+
levelDataId: number | string;
|
|
237
|
+
version: number;
|
|
238
|
+
createdAt: Date | string | null;
|
|
239
|
+
createdBy?: string | null;
|
|
240
|
+
items: TaskScheduleBaselineSnapshotItem[];
|
|
241
|
+
}
|
|
147
242
|
interface TaskScheduleImportResult {
|
|
148
243
|
fileName?: string | null;
|
|
149
244
|
tasks: TaskScheduleTask[];
|
|
@@ -165,8 +260,16 @@ interface TaskScheduleDataResult {
|
|
|
165
260
|
projectStartDate?: Date | string | null;
|
|
166
261
|
projectEndDate?: Date | string | null;
|
|
167
262
|
}
|
|
168
|
-
interface
|
|
263
|
+
interface TaskScheduleFetchDataAdapter {
|
|
169
264
|
load(modelType: TaskScheduleModelType, context: TaskScheduleContext): Observable<TaskScheduleDataResult>;
|
|
265
|
+
importTasks?(context: TaskScheduleContext, file: File): Observable<TaskScheduleImportResult>;
|
|
266
|
+
exportTasks?(context: TaskScheduleContext): Observable<Blob>;
|
|
267
|
+
loadDependencies?(context: TaskScheduleContext): Observable<TaskScheduleDependency[]>;
|
|
268
|
+
loadTimeline?(context: TaskScheduleContext, mode: TaskScheduleTimelineMode): Observable<TaskScheduleTimelineBucket[]>;
|
|
269
|
+
loadBaselineVersions?(context: TaskScheduleContext): Observable<TaskScheduleBaselineVersion[]>;
|
|
270
|
+
loadBaselineSnapshot?(context: TaskScheduleContext, version?: number | 'latest'): Observable<TaskScheduleBaselineSnapshot>;
|
|
271
|
+
}
|
|
272
|
+
interface TaskScheduleActionDataAdapter {
|
|
170
273
|
createTask?(context: TaskScheduleContext, payload: TaskScheduleTaskMutation): Observable<unknown>;
|
|
171
274
|
updateTask?(context: TaskScheduleContext, taskId: number | string, payload: TaskScheduleTaskMutation): Observable<unknown>;
|
|
172
275
|
deleteTask?(context: TaskScheduleContext, taskId: number | string): Observable<unknown>;
|
|
@@ -174,10 +277,8 @@ interface TaskScheduleDataAdapter {
|
|
|
174
277
|
updateParent?(context: TaskScheduleContext, taskId: number | string, parentId: number | string | null): Observable<unknown>;
|
|
175
278
|
updateOrder?(context: TaskScheduleContext, payload: TaskScheduleTaskOrderUpdate[]): Observable<unknown>;
|
|
176
279
|
updateProgress?(context: TaskScheduleContext, taskId: number | string, payload: TaskScheduleTaskMutation): Observable<unknown>;
|
|
177
|
-
importTasks?(context: TaskScheduleContext, file: File): Observable<TaskScheduleImportResult>;
|
|
178
280
|
applyImportedTasks?(context: TaskScheduleContext, payload: TaskScheduleApplyImportPayload): Observable<unknown>;
|
|
179
281
|
setBaseline?(context: TaskScheduleContext, payload?: Record<string, unknown>): Observable<unknown>;
|
|
180
|
-
exportTasks?(context: TaskScheduleContext): Observable<Blob>;
|
|
181
282
|
}
|
|
182
283
|
interface TaskScheduleGanttConfig {
|
|
183
284
|
taskFields: Record<string, unknown>;
|
|
@@ -197,6 +298,7 @@ interface TaskScheduleGanttConfig {
|
|
|
197
298
|
eventMarkers?: Array<Record<string, unknown>>;
|
|
198
299
|
timelineSettings?: Record<string, unknown>;
|
|
199
300
|
editSettings?: Record<string, unknown>;
|
|
301
|
+
allowRowDragAndDrop?: boolean;
|
|
200
302
|
addDialogFields?: Array<Record<string, unknown>>;
|
|
201
303
|
editDialogFields?: Array<Record<string, unknown>>;
|
|
202
304
|
contextMenuItems?: Array<string | Record<string, unknown>>;
|
|
@@ -208,10 +310,12 @@ interface TaskScheduleGanttConfig {
|
|
|
208
310
|
projectEndDate?: Date | string | null;
|
|
209
311
|
}
|
|
210
312
|
|
|
211
|
-
|
|
313
|
+
type EditTaskTypeId = 'Milestone' | 'Task' | 'Deliverable';
|
|
212
314
|
declare class TaskSchedule implements OnInit, OnDestroy {
|
|
213
315
|
ganttObj?: GanttComponent;
|
|
214
|
-
private readonly
|
|
316
|
+
private readonly fetchService;
|
|
317
|
+
private readonly actionService;
|
|
318
|
+
private readonly modal;
|
|
215
319
|
private readonly queueService;
|
|
216
320
|
private readonly injector;
|
|
217
321
|
private loadEffect?;
|
|
@@ -219,15 +323,9 @@ declare class TaskSchedule implements OnInit, OnDestroy {
|
|
|
219
323
|
private loadSubscription?;
|
|
220
324
|
private readonly operationSub;
|
|
221
325
|
private readonly contextAddTask;
|
|
326
|
+
private readonly contextAddAnchorTask;
|
|
222
327
|
private readonly customProperties;
|
|
223
|
-
readonly modelType: _angular_core.InputSignal<string>;
|
|
224
328
|
readonly context: _angular_core.InputSignal<TaskScheduleContext | null>;
|
|
225
|
-
readonly dateFormat: _angular_core.InputSignal<string>;
|
|
226
|
-
readonly height: _angular_core.InputSignal<string>;
|
|
227
|
-
readonly langCode: _angular_core.InputSignal<"en" | "ar" | null>;
|
|
228
|
-
readonly pdfFontData: _angular_core.InputSignal<string | null>;
|
|
229
|
-
readonly pdfRtlFontData: _angular_core.InputSignal<string | null>;
|
|
230
|
-
readonly pdfFontSize: _angular_core.InputSignal<number>;
|
|
231
329
|
readonly toolbarAction: _angular_core.OutputEmitterRef<string>;
|
|
232
330
|
readonly actionBegin: _angular_core.OutputEmitterRef<any>;
|
|
233
331
|
readonly actionCompleted: _angular_core.OutputEmitterRef<any>;
|
|
@@ -238,12 +336,16 @@ declare class TaskSchedule implements OnInit, OnDestroy {
|
|
|
238
336
|
readonly dataSource: _angular_core.WritableSignal<TaskScheduleTask[]>;
|
|
239
337
|
readonly ganttConfig: _angular_core.WritableSignal<TaskScheduleGanttConfig>;
|
|
240
338
|
readonly ganttId: string;
|
|
339
|
+
readonly resolvedModelTypeInput: _angular_core.Signal<string>;
|
|
340
|
+
readonly resolvedDateFormat: _angular_core.Signal<string>;
|
|
341
|
+
readonly resolvedHeight: _angular_core.Signal<string>;
|
|
241
342
|
readonly resolvedModelType: _angular_core.Signal<TaskScheduleModelKey>;
|
|
242
343
|
readonly resolvedLangCode: _angular_core.Signal<"en" | "ar">;
|
|
243
344
|
readonly isEditMode: _angular_core.Signal<boolean>;
|
|
244
345
|
readonly editTaskTypes: _angular_core.Signal<{
|
|
245
|
-
id:
|
|
346
|
+
id: EditTaskTypeId;
|
|
246
347
|
text: string;
|
|
348
|
+
moduleId: number | string;
|
|
247
349
|
}[]>;
|
|
248
350
|
readonly enableRtl: _angular_core.Signal<boolean>;
|
|
249
351
|
readonly tooltipTranslations: _angular_core.Signal<{
|
|
@@ -265,143 +367,159 @@ declare class TaskSchedule implements OnInit, OnDestroy {
|
|
|
265
367
|
onDataBound(): void;
|
|
266
368
|
private loadSchedule;
|
|
267
369
|
private applyEditCustomProps;
|
|
268
|
-
private
|
|
269
|
-
private applyDependentFieldBehavior;
|
|
370
|
+
private openScheduleDialog;
|
|
270
371
|
private handleRowDropped;
|
|
271
|
-
private createTask;
|
|
272
372
|
private updateTask;
|
|
273
373
|
private deleteTask;
|
|
274
374
|
private pushBulkUpdate;
|
|
275
|
-
private buildMutationFromTask;
|
|
276
375
|
private resolveParentGuidForContextAddTask;
|
|
277
|
-
private
|
|
376
|
+
private buildCreateDialogTask;
|
|
377
|
+
private clearContextAddState;
|
|
378
|
+
private isContextAddAction;
|
|
379
|
+
private readEditTaskFromArgs;
|
|
380
|
+
private readAnchorTaskFromArgs;
|
|
381
|
+
private isProgressOnlyTaskbarEdit;
|
|
278
382
|
private getGeneralDialogFields;
|
|
279
383
|
private reloadSchedule;
|
|
280
|
-
private normalizeTasks;
|
|
281
|
-
private extractCustomProps;
|
|
282
|
-
private readNamedValue;
|
|
283
|
-
private readType;
|
|
284
|
-
private readAssignedTo;
|
|
285
|
-
private readResources;
|
|
286
384
|
private extractDateValue;
|
|
287
385
|
private mapColumnEditType;
|
|
288
|
-
private getDialogFieldInstance;
|
|
289
|
-
private removeValidationRule;
|
|
290
|
-
private toggleAddAndEditButtons;
|
|
291
|
-
private toggleToolbarButton;
|
|
292
|
-
private normalizeDuration;
|
|
293
|
-
private safeProgress;
|
|
294
386
|
private coerceDate;
|
|
295
387
|
private toApiDate;
|
|
296
388
|
private exportPdfWithRetry;
|
|
297
|
-
private resolvePdfExportFont;
|
|
298
|
-
private createEmbeddedPdfFont;
|
|
299
|
-
private isFitToWidthError;
|
|
300
|
-
private resetPdfModule;
|
|
301
|
-
private wait;
|
|
302
|
-
private getErrorMessage;
|
|
303
389
|
private getExportFileName;
|
|
304
390
|
private hexToRgb;
|
|
305
|
-
private localizeTaskType;
|
|
306
|
-
private readLegacyHolidays;
|
|
307
391
|
formatDateValue(value: unknown): string;
|
|
308
392
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<TaskSchedule, never>;
|
|
309
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<TaskSchedule, "mt-task-schedule", never, { "
|
|
393
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<TaskSchedule, "mt-task-schedule", never, { "context": { "alias": "context"; "required": false; "isSignal": true; }; }, { "toolbarAction": "toolbarAction"; "actionBegin": "actionBegin"; "actionCompleted": "actionCompleted"; "loaded": "loaded"; "loadError": "loadError"; }, never, never, true, never>;
|
|
310
394
|
}
|
|
311
395
|
|
|
312
|
-
declare
|
|
313
|
-
declare class TaskScheduleBackendAdapter implements TaskScheduleDataAdapter {
|
|
396
|
+
declare class TaskScheduleFetchService implements TaskScheduleFetchDataAdapter {
|
|
314
397
|
private readonly http;
|
|
315
398
|
load(modelType: TaskScheduleModelType, context: TaskScheduleContext): Observable<TaskScheduleDataResult>;
|
|
316
|
-
createTask(context: TaskScheduleContext, payload: TaskScheduleTaskMutation): Observable<unknown>;
|
|
317
|
-
updateTask(context: TaskScheduleContext, taskId: number | string, payload: TaskScheduleTaskMutation): Observable<unknown>;
|
|
318
|
-
deleteTask(context: TaskScheduleContext, taskId: number | string): Observable<unknown>;
|
|
319
|
-
updateBulkTasks(context: TaskScheduleContext, payload: TaskScheduleTaskMutation[]): Observable<unknown>;
|
|
320
|
-
updateParent(context: TaskScheduleContext, taskId: number | string, parentId: number | string | null): Observable<unknown>;
|
|
321
|
-
updateOrder(context: TaskScheduleContext, payload: TaskScheduleTaskOrderUpdate[]): Observable<unknown>;
|
|
322
|
-
updateProgress(context: TaskScheduleContext, taskId: number | string, payload: TaskScheduleTaskMutation): Observable<unknown>;
|
|
323
399
|
importTasks(context: TaskScheduleContext, file: File): Observable<TaskScheduleImportResult>;
|
|
324
|
-
applyImportedTasks(context: TaskScheduleContext, payload: TaskScheduleApplyImportPayload): Observable<unknown>;
|
|
325
|
-
setBaseline(context: TaskScheduleContext, payload?: Record<string, unknown>): Observable<unknown>;
|
|
326
400
|
exportTasks(context: TaskScheduleContext): Observable<Blob>;
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
private
|
|
332
|
-
private
|
|
333
|
-
private
|
|
334
|
-
private
|
|
335
|
-
private
|
|
336
|
-
private
|
|
337
|
-
private
|
|
338
|
-
private
|
|
339
|
-
private
|
|
340
|
-
private
|
|
341
|
-
private
|
|
342
|
-
private
|
|
343
|
-
private flattenResourceGroups;
|
|
344
|
-
private attachGroupResource;
|
|
345
|
-
private mergeTaskResources;
|
|
346
|
-
private resolveResourceIdentity;
|
|
347
|
-
private mapRuntimeTask;
|
|
348
|
-
private applyModelTransformations;
|
|
401
|
+
loadDependencies(context: TaskScheduleContext): Observable<TaskScheduleDependency[]>;
|
|
402
|
+
loadTimeline(context: TaskScheduleContext, mode: TaskScheduleTimelineMode): Observable<TaskScheduleTimelineBucket[]>;
|
|
403
|
+
loadBaselineVersions(context: TaskScheduleContext): Observable<TaskScheduleBaselineVersion[]>;
|
|
404
|
+
loadBaselineSnapshot(context: TaskScheduleContext, version?: number | 'latest'): Observable<TaskScheduleBaselineSnapshot>;
|
|
405
|
+
private loadReadResult;
|
|
406
|
+
private loadBaselineResult;
|
|
407
|
+
private loadPhaseGateResult;
|
|
408
|
+
private readScheduleMode;
|
|
409
|
+
private mapQueryTasks;
|
|
410
|
+
private mapGroupedTasks;
|
|
411
|
+
private mapLooseTasks;
|
|
412
|
+
private mapTaskSource;
|
|
413
|
+
private mapCustomProperties;
|
|
414
|
+
private mapCustomValues;
|
|
415
|
+
private buildBaselineTasks;
|
|
416
|
+
private buildTree;
|
|
349
417
|
private resolveResources;
|
|
350
|
-
private mapTeamMemberResources;
|
|
351
|
-
private extractObjectValue;
|
|
352
|
-
private extractObjectArray;
|
|
353
|
-
private extractCustomProperties;
|
|
354
|
-
private mapCustomProperty;
|
|
355
|
-
private normalizeLookupOptions;
|
|
356
|
-
private readLegacyHolidaysFromLocalStorage;
|
|
357
|
-
private extractArrayCandidate;
|
|
358
418
|
private extractResources;
|
|
419
|
+
private mapTeamMemberResources;
|
|
420
|
+
private loadCustomColumns;
|
|
359
421
|
private mapScheduleColumns;
|
|
360
422
|
private normalizeCustomColumnKey;
|
|
361
423
|
private readLocalizedName;
|
|
362
|
-
private
|
|
363
|
-
private
|
|
364
|
-
private
|
|
365
|
-
private extractProgress;
|
|
366
|
-
private extractDate;
|
|
367
|
-
private backendError;
|
|
424
|
+
private readData;
|
|
425
|
+
private levelEndpoint;
|
|
426
|
+
private requireId;
|
|
368
427
|
private readEndpoint;
|
|
428
|
+
private interpolateEndpointTemplate;
|
|
429
|
+
private extractTaskRows;
|
|
430
|
+
private extractArray;
|
|
431
|
+
private readObjectValue;
|
|
432
|
+
private readSourceValue;
|
|
433
|
+
private readNestedValue;
|
|
434
|
+
private readSourceRawValue;
|
|
435
|
+
private readObjectValueByKey;
|
|
436
|
+
private unwrapValue;
|
|
437
|
+
private unwrapRawValue;
|
|
438
|
+
private normalizeTaskType;
|
|
439
|
+
private localizeTaskType;
|
|
440
|
+
private normalizeResources;
|
|
441
|
+
private mergeResources;
|
|
442
|
+
private resolveAssignedTo;
|
|
443
|
+
private resolveResourceId;
|
|
444
|
+
private readResourceName;
|
|
445
|
+
private mapDependency;
|
|
446
|
+
private mapTimelineBucket;
|
|
447
|
+
private mapBaselineVersion;
|
|
448
|
+
private mapBaselineSnapshot;
|
|
449
|
+
private normalizeDependencyType;
|
|
450
|
+
private normalizeDuration;
|
|
451
|
+
private normalizeProgress;
|
|
452
|
+
private readNamedString;
|
|
453
|
+
private toDate;
|
|
454
|
+
private readLegacyHolidays;
|
|
369
455
|
private readId;
|
|
370
|
-
private firstDefined;
|
|
371
456
|
private toNullableString;
|
|
372
457
|
private toNullableNumber;
|
|
373
458
|
private toTaskId;
|
|
374
|
-
|
|
375
|
-
|
|
459
|
+
private isObject;
|
|
460
|
+
private isEmptyIdentityValue;
|
|
461
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<TaskScheduleFetchService, never>;
|
|
462
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<TaskScheduleFetchService>;
|
|
376
463
|
}
|
|
377
464
|
|
|
378
|
-
declare class
|
|
379
|
-
private readonly
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
private
|
|
396
|
-
|
|
397
|
-
|
|
465
|
+
declare class TaskScheduleActionService implements TaskScheduleActionDataAdapter {
|
|
466
|
+
private readonly http;
|
|
467
|
+
buildTaskMutation(task: unknown, options?: {
|
|
468
|
+
taskType?: unknown;
|
|
469
|
+
parentGuid?: string | null;
|
|
470
|
+
customProperties?: TaskScheduleCustomProperty[];
|
|
471
|
+
generalFields?: string[];
|
|
472
|
+
}): TaskScheduleTaskMutation;
|
|
473
|
+
createTask(context: TaskScheduleContext, payload: TaskScheduleTaskMutation): Observable<unknown>;
|
|
474
|
+
updateTask(context: TaskScheduleContext, taskId: number | string, payload: TaskScheduleTaskMutation): Observable<unknown>;
|
|
475
|
+
deleteTask(context: TaskScheduleContext, taskId: number | string): Observable<unknown>;
|
|
476
|
+
updateBulkTasks(context: TaskScheduleContext, payload: TaskScheduleTaskMutation[]): Observable<unknown>;
|
|
477
|
+
updateParent(context: TaskScheduleContext, taskId: number | string, parentId: number | string | null): Observable<unknown>;
|
|
478
|
+
updateOrder(context: TaskScheduleContext, payload: TaskScheduleTaskOrderUpdate[]): Observable<unknown>;
|
|
479
|
+
updateProgress(context: TaskScheduleContext, taskId: number | string, payload: TaskScheduleTaskMutation): Observable<unknown>;
|
|
480
|
+
applyImportedTasks(context: TaskScheduleContext, payload: TaskScheduleApplyImportPayload): Observable<unknown>;
|
|
481
|
+
setBaseline(context: TaskScheduleContext, payload?: Record<string, unknown>): Observable<unknown>;
|
|
482
|
+
private submitTaskMutation;
|
|
483
|
+
private buildProcessSubmitRequest;
|
|
484
|
+
private buildProcessSubmitFields;
|
|
485
|
+
private mapBulkItem;
|
|
486
|
+
private pushField;
|
|
487
|
+
private pushOwnField;
|
|
488
|
+
private appendCustomProps;
|
|
489
|
+
private buildCustomPropFields;
|
|
490
|
+
private resolveResourcesField;
|
|
491
|
+
private assignIfDefined;
|
|
492
|
+
private buildCustomProps;
|
|
493
|
+
private resolveParentId;
|
|
494
|
+
private serializePredecessors;
|
|
495
|
+
private dependencyTypeToken;
|
|
496
|
+
private normalizeDependencyType;
|
|
497
|
+
private resolveModuleKey;
|
|
498
|
+
private resolveTypeScope;
|
|
499
|
+
private normalizeTaskType;
|
|
500
|
+
private normalizeResources;
|
|
501
|
+
private readData;
|
|
502
|
+
private levelEndpoint;
|
|
503
|
+
private readEndpoint;
|
|
504
|
+
private interpolateEndpointTemplate;
|
|
505
|
+
private requireId;
|
|
506
|
+
private requireProcessId;
|
|
507
|
+
private readId;
|
|
508
|
+
private toTaskId;
|
|
509
|
+
private toNullableString;
|
|
510
|
+
private toNullableNumber;
|
|
511
|
+
private toNullableBoolean;
|
|
512
|
+
private readNamedString;
|
|
513
|
+
private normalizeDuration;
|
|
514
|
+
private normalizeProgress;
|
|
515
|
+
private toApiDate;
|
|
516
|
+
private coerceDate;
|
|
517
|
+
private hasOwn;
|
|
518
|
+
private isObject;
|
|
519
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<TaskScheduleActionService, never>;
|
|
520
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<TaskScheduleActionService>;
|
|
398
521
|
}
|
|
399
522
|
|
|
400
|
-
declare function createGanttConfig(modelType: TaskScheduleModelKey, data: TaskScheduleDataResult, dateFormat: string, langCode?: 'en' | 'ar'): TaskScheduleGanttConfig;
|
|
401
|
-
|
|
402
|
-
type TaskScheduleLanguage = 'en' | 'ar';
|
|
403
|
-
declare function resolveTaskScheduleLanguage(preferred?: unknown, contextLangCode?: unknown): TaskScheduleLanguage;
|
|
404
|
-
|
|
405
523
|
interface ImportPreviewRow {
|
|
406
524
|
key: string;
|
|
407
525
|
task: TaskScheduleTask;
|
|
@@ -411,25 +529,29 @@ interface ResourceOption {
|
|
|
411
529
|
id: string | number;
|
|
412
530
|
label: string;
|
|
413
531
|
}
|
|
414
|
-
declare class
|
|
415
|
-
|
|
416
|
-
readonly
|
|
532
|
+
declare class TaskScheduleImportDialog {
|
|
533
|
+
readonly modal: ModalService;
|
|
534
|
+
private readonly ref;
|
|
535
|
+
private readonly fetchService;
|
|
536
|
+
private readonly actionService;
|
|
537
|
+
private readonly transloco;
|
|
538
|
+
private readonly selectionCellTpl;
|
|
539
|
+
private readonly taskCellTpl;
|
|
540
|
+
private readonly startDateCellTpl;
|
|
541
|
+
private readonly finishDateCellTpl;
|
|
542
|
+
private readonly actualStartDateCellTpl;
|
|
543
|
+
private readonly actualFinishDateCellTpl;
|
|
544
|
+
private readonly assignedToCellTpl;
|
|
545
|
+
private readonly progressCellTpl;
|
|
417
546
|
readonly context: _angular_core.InputSignal<TaskScheduleContext | null>;
|
|
418
|
-
readonly langCode: _angular_core.InputSignal<"en" | "ar" | null>;
|
|
419
|
-
readonly title: _angular_core.InputSignal<string | null>;
|
|
420
547
|
readonly maxRows: _angular_core.InputSignal<number>;
|
|
421
|
-
readonly closed: _angular_core.OutputEmitterRef<void>;
|
|
422
|
-
readonly imported: _angular_core.OutputEmitterRef<TaskScheduleImportResult>;
|
|
423
|
-
readonly applied: _angular_core.OutputEmitterRef<{
|
|
424
|
-
overrideCurrent: boolean;
|
|
425
|
-
response: unknown;
|
|
426
|
-
}>;
|
|
427
|
-
readonly failed: _angular_core.OutputEmitterRef<string>;
|
|
428
548
|
readonly selectedFile: _angular_core.WritableSignal<File | null>;
|
|
429
549
|
readonly loadingImport: _angular_core.WritableSignal<boolean>;
|
|
430
550
|
readonly loadingApply: _angular_core.WritableSignal<boolean>;
|
|
431
551
|
readonly importResult: _angular_core.WritableSignal<TaskScheduleImportResult | null>;
|
|
432
552
|
readonly selectedTaskKeys: _angular_core.WritableSignal<Set<string>>;
|
|
553
|
+
readonly errorMessage: _angular_core.WritableSignal<string | null>;
|
|
554
|
+
private readonly activeLang;
|
|
433
555
|
readonly resolvedLangCode: _angular_core.Signal<"en" | "ar">;
|
|
434
556
|
readonly isRtl: _angular_core.Signal<boolean>;
|
|
435
557
|
readonly labels: _angular_core.Signal<{
|
|
@@ -460,21 +582,21 @@ declare class TaskScheduleImportModal {
|
|
|
460
582
|
readonly hasSelection: _angular_core.Signal<boolean>;
|
|
461
583
|
readonly canImport: _angular_core.Signal<boolean>;
|
|
462
584
|
readonly canApply: _angular_core.Signal<boolean>;
|
|
585
|
+
readonly previewPageSize: _angular_core.Signal<number>;
|
|
586
|
+
readonly previewColumns: _angular_core.WritableSignal<ColumnDef[]>;
|
|
463
587
|
onFileChanged(event: Event): void;
|
|
464
588
|
importFile(): void;
|
|
465
589
|
toggleRowSelection(rowKey: string, checked: boolean): void;
|
|
466
590
|
selectAllRows(checked: boolean): void;
|
|
467
591
|
applyImport(overrideCurrent: boolean): void;
|
|
468
592
|
close(): void;
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
toDateInputValue(value: unknown): string;
|
|
472
|
-
resolveAssignedValue(task: TaskScheduleTask): string;
|
|
593
|
+
toDateFieldValue(value: unknown): Date | null;
|
|
594
|
+
resolveAssignedValue(task: TaskScheduleTask): string | number | null;
|
|
473
595
|
normalizeProgress(value: unknown): number;
|
|
474
596
|
onTaskTitleChanged(rowKey: string, value: string): void;
|
|
475
|
-
onTaskDateChanged(rowKey: string, key: 'startDate' | 'finishDate' | 'actualStartDate' | 'actualFinishDate', value:
|
|
476
|
-
onTaskAssignedToChanged(rowKey: string, value:
|
|
477
|
-
onTaskProgressChanged(rowKey: string, value:
|
|
597
|
+
onTaskDateChanged(rowKey: string, key: 'startDate' | 'finishDate' | 'actualStartDate' | 'actualFinishDate', value: unknown): void;
|
|
598
|
+
onTaskAssignedToChanged(rowKey: string, value: unknown): void;
|
|
599
|
+
onTaskProgressChanged(rowKey: string, value: unknown): void;
|
|
478
600
|
toAssignedEntity(task: TaskScheduleTask): EntityData;
|
|
479
601
|
toProgressEntity(task: TaskScheduleTask): EntityData;
|
|
480
602
|
private updateRowTask;
|
|
@@ -491,78 +613,56 @@ declare class TaskScheduleImportModal {
|
|
|
491
613
|
private toApiDate;
|
|
492
614
|
private formatDateForApi;
|
|
493
615
|
private countTasks;
|
|
494
|
-
private
|
|
495
|
-
|
|
496
|
-
static
|
|
497
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<TaskScheduleImportModal, "mt-task-schedule-import-modal", never, { "visible": { "alias": "visible"; "required": false; "isSignal": true; }; "context": { "alias": "context"; "required": false; "isSignal": true; }; "langCode": { "alias": "langCode"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "maxRows": { "alias": "maxRows"; "required": false; "isSignal": true; }; }, { "closed": "closed"; "imported": "imported"; "applied": "applied"; "failed": "failed"; }, never, never, true, never>;
|
|
616
|
+
private setError;
|
|
617
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<TaskScheduleImportDialog, never>;
|
|
618
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<TaskScheduleImportDialog, "mt-task-schedule-import-dialog", never, { "context": { "alias": "context"; "required": false; "isSignal": true; }; "maxRows": { "alias": "maxRows"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
498
619
|
}
|
|
499
620
|
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
label?: string;
|
|
503
|
-
}
|
|
504
|
-
declare class TaskScheduleShell {
|
|
505
|
-
private readonly adapter;
|
|
621
|
+
declare class TaskScheduleHeader {
|
|
622
|
+
private readonly actionService;
|
|
506
623
|
private readonly queueService;
|
|
624
|
+
private readonly transloco;
|
|
625
|
+
private readonly modal;
|
|
626
|
+
private readonly activeLang;
|
|
507
627
|
readonly context: _angular_core.InputSignal<TaskScheduleContext | null>;
|
|
508
|
-
readonly
|
|
509
|
-
readonly
|
|
510
|
-
readonly height: _angular_core.InputSignal<string>;
|
|
511
|
-
readonly modelType: _angular_core.InputSignal<string>;
|
|
512
|
-
readonly modeOptions: _angular_core.InputSignal<TaskScheduleModeOption[] | null>;
|
|
513
|
-
readonly allowEditMode: _angular_core.InputSignal<boolean>;
|
|
514
|
-
readonly allowImport: _angular_core.InputSignal<boolean>;
|
|
515
|
-
readonly allowSetBaseline: _angular_core.InputSignal<boolean>;
|
|
516
|
-
readonly hasTasks: _angular_core.InputSignal<boolean>;
|
|
517
|
-
readonly baselinePending: _angular_core.InputSignal<boolean>;
|
|
628
|
+
readonly title: _angular_core.InputSignal<string | null>;
|
|
629
|
+
readonly modeOptions: _angular_core.InputSignal<TaskScheduleModeOption[]>;
|
|
518
630
|
readonly modeChanged: _angular_core.OutputEmitterRef<string>;
|
|
519
631
|
readonly baselineSet: _angular_core.OutputEmitterRef<unknown>;
|
|
520
|
-
readonly tasksExported: _angular_core.OutputEmitterRef<void>;
|
|
521
632
|
readonly actionError: _angular_core.OutputEmitterRef<string>;
|
|
522
633
|
readonly currentModelType: _angular_core.WritableSignal<string>;
|
|
523
|
-
readonly showImportModal: _angular_core.WritableSignal<boolean>;
|
|
524
634
|
readonly settingBaseline: _angular_core.WritableSignal<boolean>;
|
|
525
|
-
readonly
|
|
526
|
-
readonly
|
|
635
|
+
readonly resolvedContext: _angular_core.Signal<TaskScheduleContext | null>;
|
|
636
|
+
readonly currentModelKey: _angular_core.Signal<_masterteam_task_schedule.TaskScheduleModelKey>;
|
|
527
637
|
readonly labels: _angular_core.Signal<{
|
|
528
|
-
|
|
529
|
-
setBaseline: string;
|
|
638
|
+
title: string;
|
|
530
639
|
pending: string;
|
|
640
|
+
setBaseline: string;
|
|
531
641
|
import: string;
|
|
532
|
-
export: string;
|
|
533
|
-
exportFileName: string;
|
|
534
|
-
baselineNotSupported: string;
|
|
535
|
-
exportNotSupported: string;
|
|
536
|
-
contextMissing: string;
|
|
537
|
-
baselineDisabled: string;
|
|
538
642
|
}>;
|
|
539
|
-
readonly currentModelKey: _angular_core.Signal<_masterteam_task_schedule.TaskScheduleModelKey>;
|
|
540
643
|
readonly resolvedModes: _angular_core.Signal<{
|
|
541
644
|
value: string;
|
|
542
645
|
label: string;
|
|
646
|
+
icon: string;
|
|
647
|
+
color: string;
|
|
543
648
|
}[]>;
|
|
544
649
|
readonly showSetBaselineAction: _angular_core.Signal<boolean>;
|
|
650
|
+
readonly baselinePending: _angular_core.Signal<boolean>;
|
|
545
651
|
readonly canSetBaselineAction: _angular_core.Signal<boolean>;
|
|
546
652
|
readonly showImportAction: _angular_core.Signal<boolean>;
|
|
547
653
|
readonly canOpenImport: _angular_core.Signal<boolean>;
|
|
548
|
-
readonly canExportTasks: _angular_core.Signal<boolean>;
|
|
549
654
|
constructor();
|
|
550
655
|
onModeChange(nextValue: string): void;
|
|
551
|
-
|
|
552
|
-
closeImportModal(): void;
|
|
656
|
+
openImportDialog(): void;
|
|
553
657
|
setBaseline(): void;
|
|
554
|
-
exportTasks(): void;
|
|
555
|
-
onImportedTasksApplied(): void;
|
|
556
|
-
onActionError(message: unknown): void;
|
|
557
|
-
private resolveModeLabel;
|
|
558
|
-
private downloadBlob;
|
|
559
658
|
private getErrorMessage;
|
|
659
|
+
private translate;
|
|
560
660
|
private emitError;
|
|
561
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<
|
|
562
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<
|
|
661
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<TaskScheduleHeader, never>;
|
|
662
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<TaskScheduleHeader, "mt-task-schedule-header", never, { "context": { "alias": "context"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "modeOptions": { "alias": "modeOptions"; "required": true; "isSignal": true; }; }, { "modeChanged": "modeChanged"; "baselineSet": "baselineSet"; "actionError": "actionError"; }, never, never, true, never>;
|
|
563
663
|
}
|
|
564
664
|
|
|
565
665
|
declare const TASK_SCHEDULE_DEFAULT_PDF_FONT: string;
|
|
566
666
|
|
|
567
|
-
export {
|
|
568
|
-
export type { TaskScheduleApplyImportPayload, TaskScheduleContext, TaskScheduleContextEndpoints,
|
|
667
|
+
export { TASK_SCHEDULE_DEFAULT_PDF_FONT, TaskSchedule, TaskScheduleActionService, TaskScheduleFetchService, TaskScheduleHeader, TaskScheduleImportDialog, normalizeTaskScheduleModelType };
|
|
668
|
+
export type { TaskScheduleActionDataAdapter, TaskScheduleApplyImportPayload, TaskScheduleBaselineSnapshot, TaskScheduleBaselineSnapshotItem, TaskScheduleBaselineVersion, TaskScheduleContext, TaskScheduleContextEndpoints, TaskScheduleCoreContextEndpoints, TaskScheduleCustomProperty, TaskScheduleDataResult, TaskScheduleDependency, TaskScheduleDependencyMutation, TaskScheduleDependencyType, TaskScheduleFeatureContextEndpoints, TaskScheduleFetchDataAdapter, TaskScheduleGanttConfig, TaskScheduleImportResult, TaskScheduleModeOption, TaskScheduleModelAlias, TaskScheduleModelKey, TaskScheduleModelType, TaskSchedulePdfFonts, TaskSchedulePropertyDependency, TaskSchedulePropertyViewType, TaskScheduleTask, TaskScheduleTaskMutation, TaskScheduleTaskOrderUpdate, TaskScheduleTimelineBucket, TaskScheduleTimelineMode };
|