@acorex-platform/module-task-management-client 0.0.32 → 0.0.37

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.
Files changed (68) hide show
  1. package/fesm2022/{acorex-platform-module-task-management-client-acorex-platform-module-task-management-client-CIwafWli.mjs → acorex-platform-module-task-management-client-acorex-platform-module-task-management-client-DKeXScX9.mjs} +10 -10
  2. package/fesm2022/{acorex-platform-module-task-management-client-acorex-platform-module-task-management-client-CIwafWli.mjs.map → acorex-platform-module-task-management-client-acorex-platform-module-task-management-client-DKeXScX9.mjs.map} +1 -1
  3. package/fesm2022/acorex-platform-module-task-management-client-contracts-entities-task-assignment.mjs +412 -0
  4. package/fesm2022/acorex-platform-module-task-management-client-contracts-entities-task-assignment.mjs.map +1 -0
  5. package/fesm2022/acorex-platform-module-task-management-client-contracts-entities-task-checklist-item.mjs +579 -0
  6. package/fesm2022/acorex-platform-module-task-management-client-contracts-entities-task-checklist-item.mjs.map +1 -0
  7. package/fesm2022/acorex-platform-module-task-management-client-contracts-entities-task-context.mjs +338 -0
  8. package/fesm2022/acorex-platform-module-task-management-client-contracts-entities-task-context.mjs.map +1 -0
  9. package/fesm2022/acorex-platform-module-task-management-client-contracts-entities-task-dependency.mjs +359 -0
  10. package/fesm2022/acorex-platform-module-task-management-client-contracts-entities-task-dependency.mjs.map +1 -0
  11. package/fesm2022/acorex-platform-module-task-management-client-contracts-entities-task-status.mjs +643 -0
  12. package/fesm2022/acorex-platform-module-task-management-client-contracts-entities-task-status.mjs.map +1 -0
  13. package/fesm2022/acorex-platform-module-task-management-client-contracts-entities-task-template.mjs +472 -0
  14. package/fesm2022/acorex-platform-module-task-management-client-contracts-entities-task-template.mjs.map +1 -0
  15. package/fesm2022/acorex-platform-module-task-management-client-contracts-entities-task-type.mjs +441 -0
  16. package/fesm2022/acorex-platform-module-task-management-client-contracts-entities-task-type.mjs.map +1 -0
  17. package/fesm2022/acorex-platform-module-task-management-client-contracts-entities-task.mjs +1350 -0
  18. package/fesm2022/acorex-platform-module-task-management-client-contracts-entities-task.mjs.map +1 -0
  19. package/fesm2022/acorex-platform-module-task-management-client-contracts-entities-time-log.mjs +483 -0
  20. package/fesm2022/acorex-platform-module-task-management-client-contracts-entities-time-log.mjs.map +1 -0
  21. package/fesm2022/acorex-platform-module-task-management-client-contracts-entity-catalog-acorex-platform-module-task-management-client-contracts-entity-catalog-Cy2Pym4E.mjs +119 -0
  22. package/fesm2022/acorex-platform-module-task-management-client-contracts-entity-catalog-acorex-platform-module-task-management-client-contracts-entity-catalog-Cy2Pym4E.mjs.map +1 -0
  23. package/fesm2022/acorex-platform-module-task-management-client-contracts-entity-catalog-task-assignment.entity-Cf7Gd67F.mjs +320 -0
  24. package/fesm2022/acorex-platform-module-task-management-client-contracts-entity-catalog-task-assignment.entity-Cf7Gd67F.mjs.map +1 -0
  25. package/fesm2022/acorex-platform-module-task-management-client-contracts-entity-catalog-task-checklist-item.entity-DwUvNG7Y.mjs +487 -0
  26. package/fesm2022/acorex-platform-module-task-management-client-contracts-entity-catalog-task-checklist-item.entity-DwUvNG7Y.mjs.map +1 -0
  27. package/fesm2022/acorex-platform-module-task-management-client-contracts-entity-catalog-task-context.entity-DVMkanNa.mjs +246 -0
  28. package/fesm2022/acorex-platform-module-task-management-client-contracts-entity-catalog-task-context.entity-DVMkanNa.mjs.map +1 -0
  29. package/fesm2022/acorex-platform-module-task-management-client-contracts-entity-catalog-task-dependency.entity-DRj3H2CS.mjs +267 -0
  30. package/fesm2022/acorex-platform-module-task-management-client-contracts-entity-catalog-task-dependency.entity-DRj3H2CS.mjs.map +1 -0
  31. package/fesm2022/acorex-platform-module-task-management-client-contracts-entity-catalog-task-status.entity-DVMvNk5C.mjs +551 -0
  32. package/fesm2022/acorex-platform-module-task-management-client-contracts-entity-catalog-task-status.entity-DVMvNk5C.mjs.map +1 -0
  33. package/fesm2022/acorex-platform-module-task-management-client-contracts-entity-catalog-task-template.entity-C5OnMGjC.mjs +380 -0
  34. package/fesm2022/acorex-platform-module-task-management-client-contracts-entity-catalog-task-template.entity-C5OnMGjC.mjs.map +1 -0
  35. package/fesm2022/acorex-platform-module-task-management-client-contracts-entity-catalog-task-type.entity-W_HUuz4Q.mjs +349 -0
  36. package/fesm2022/acorex-platform-module-task-management-client-contracts-entity-catalog-task-type.entity-W_HUuz4Q.mjs.map +1 -0
  37. package/fesm2022/acorex-platform-module-task-management-client-contracts-entity-catalog-task.entity-DYJR8xdq.mjs +1258 -0
  38. package/fesm2022/acorex-platform-module-task-management-client-contracts-entity-catalog-task.entity-DYJR8xdq.mjs.map +1 -0
  39. package/fesm2022/acorex-platform-module-task-management-client-contracts-entity-catalog-time-log.entity-rNEYXIrf.mjs +391 -0
  40. package/fesm2022/acorex-platform-module-task-management-client-contracts-entity-catalog-time-log.entity-rNEYXIrf.mjs.map +1 -0
  41. package/fesm2022/acorex-platform-module-task-management-client-contracts-entity-catalog.mjs +2 -0
  42. package/fesm2022/acorex-platform-module-task-management-client-contracts-entity-catalog.mjs.map +1 -0
  43. package/fesm2022/acorex-platform-module-task-management-client-contracts.mjs.map +1 -1
  44. package/fesm2022/{acorex-platform-module-task-management-client-list-task-board-assignees.query-Ci8_D4Vs.mjs → acorex-platform-module-task-management-client-list-task-board-assignees.query-VCzu27lk.mjs} +2 -2
  45. package/fesm2022/{acorex-platform-module-task-management-client-list-task-board-assignees.query-Ci8_D4Vs.mjs.map → acorex-platform-module-task-management-client-list-task-board-assignees.query-VCzu27lk.mjs.map} +1 -1
  46. package/fesm2022/acorex-platform-module-task-management-client-list-task-board-reporters.query-C3NAYa9b.mjs.map +1 -1
  47. package/fesm2022/{acorex-platform-module-task-management-client-list-task-types.query-CKLUPrBU.mjs → acorex-platform-module-task-management-client-list-task-types.query-DWCTG6dK.mjs} +2 -2
  48. package/fesm2022/{acorex-platform-module-task-management-client-list-task-types.query-CKLUPrBU.mjs.map → acorex-platform-module-task-management-client-list-task-types.query-DWCTG6dK.mjs.map} +1 -1
  49. package/fesm2022/acorex-platform-module-task-management-client-local-entities.mjs +37 -0
  50. package/fesm2022/acorex-platform-module-task-management-client-local-entities.mjs.map +1 -0
  51. package/fesm2022/{acorex-platform-module-task-management-client-start-task-flow.command-ChCuTFV-.mjs → acorex-platform-module-task-management-client-start-task-flow.command-no0cwb1V.mjs} +2 -2
  52. package/fesm2022/{acorex-platform-module-task-management-client-start-task-flow.command-ChCuTFV-.mjs.map → acorex-platform-module-task-management-client-start-task-flow.command-no0cwb1V.mjs.map} +1 -1
  53. package/fesm2022/{acorex-platform-module-task-management-client-task-board.page-8I8H2pFq.mjs → acorex-platform-module-task-management-client-task-board.page-BkHHyd9s.mjs} +7 -7
  54. package/fesm2022/{acorex-platform-module-task-management-client-task-board.page-8I8H2pFq.mjs.map → acorex-platform-module-task-management-client-task-board.page-BkHHyd9s.mjs.map} +1 -1
  55. package/fesm2022/acorex-platform-module-task-management-client.mjs +1 -1
  56. package/package.json +47 -3
  57. package/types/acorex-platform-module-task-management-client-contracts-entities-task-assignment.d.ts +5 -0
  58. package/types/acorex-platform-module-task-management-client-contracts-entities-task-checklist-item.d.ts +5 -0
  59. package/types/acorex-platform-module-task-management-client-contracts-entities-task-context.d.ts +5 -0
  60. package/types/acorex-platform-module-task-management-client-contracts-entities-task-dependency.d.ts +5 -0
  61. package/types/acorex-platform-module-task-management-client-contracts-entities-task-status.d.ts +5 -0
  62. package/types/acorex-platform-module-task-management-client-contracts-entities-task-template.d.ts +5 -0
  63. package/types/acorex-platform-module-task-management-client-contracts-entities-task-type.d.ts +5 -0
  64. package/types/acorex-platform-module-task-management-client-contracts-entities-task.d.ts +5 -0
  65. package/types/acorex-platform-module-task-management-client-contracts-entities-time-log.d.ts +5 -0
  66. package/types/acorex-platform-module-task-management-client-contracts-entity-catalog.d.ts +10 -0
  67. package/types/acorex-platform-module-task-management-client-contracts.d.ts +6 -0
  68. package/types/acorex-platform-module-task-management-client-local-entities.d.ts +12 -0
@@ -0,0 +1,1350 @@
1
+ import { AXPWidgetsList, AXPWidgetsCatalog } from '@acorex-platform/framework-shared/core';
2
+ import { createAllQueryView, entityMasterCrudActions, AXPEntityCommandScope, entityDetailsCrudActions, entityDetailsSimpleCondition } from '@acorex-platform/framework-shared/entity';
3
+
4
+ const config = {
5
+ i18n: 'task-management',
6
+ module: 'TaskManagement',
7
+ };
8
+ /** Dashboard widget type ids for task-management-hosted widgets (`{module}:Widget:Dashboard:{Segment}`). */
9
+ const dashboardWidgetId = (segment) => `${config.module}:Widget:Dashboard:${segment}`;
10
+ const RootConfig = {
11
+ config,
12
+ module: {
13
+ name: config.module,
14
+ title: `@${config.i18n}:module.title`,
15
+ icon: 'fa-light fa-tasks',
16
+ },
17
+ entities: {
18
+ taskType: {
19
+ name: 'TaskType',
20
+ title: `@${config.i18n}:task-type.individual-title`,
21
+ titlePlural: `@${config.i18n}:task-type.plural-title`,
22
+ icon: 'fa-light fa-cog',
23
+ },
24
+ taskTypeCategory: {
25
+ name: 'TaskTypeCategory',
26
+ title: `@${config.i18n}:task-type-categories.title`,
27
+ titlePlural: `@${config.i18n}:task-type-categories.plural`,
28
+ icon: 'fa-light fa-layer-group',
29
+ },
30
+ taskStatus: {
31
+ name: 'TaskStatus',
32
+ title: `@${config.i18n}:task-status.individual-title`,
33
+ titlePlural: `@${config.i18n}:task-status.plural-title`,
34
+ icon: 'fa-light fa-flag',
35
+ },
36
+ task: {
37
+ name: 'Task',
38
+ title: `@${config.i18n}:task.individual-title`,
39
+ titlePlural: `@${config.i18n}:task.plural-title`,
40
+ icon: 'fa-light fa-clipboard-check',
41
+ },
42
+ taskChecklistItem: {
43
+ name: 'TaskChecklistItem',
44
+ title: `@${config.i18n}:checklist-item.individual-title`,
45
+ titlePlural: `@${config.i18n}:checklist-item.plural-title`,
46
+ icon: 'fa-light fa-list-check',
47
+ },
48
+ taskAssignment: {
49
+ name: 'TaskAssignment',
50
+ title: `@${config.i18n}:task-assignment.individual-title`,
51
+ titlePlural: `@${config.i18n}:task-assignment.plural-title`,
52
+ icon: 'fa-light fa-user-check',
53
+ },
54
+ timeLog: {
55
+ name: 'TimeLog',
56
+ title: `@${config.i18n}:time-log.individual-title`,
57
+ titlePlural: `@${config.i18n}:time-log.plural-title`,
58
+ icon: 'fa-light fa-clock',
59
+ },
60
+ taskDependency: {
61
+ name: 'TaskDependency',
62
+ title: `@${config.i18n}:task-dependency.individual-title`,
63
+ titlePlural: `@${config.i18n}:task-dependency.plural-title`,
64
+ icon: 'fa-light fa-link',
65
+ },
66
+ taskContext: {
67
+ name: 'TaskContext',
68
+ title: `@${config.i18n}:task-context.individual-title`,
69
+ titlePlural: `@${config.i18n}:task-context.plural-title`,
70
+ icon: 'fa-light fa-sitemap',
71
+ },
72
+ taskTemplate: {
73
+ name: 'TaskTemplate',
74
+ title: `@${config.i18n}:task-template.individual-title`,
75
+ titlePlural: `@${config.i18n}:task-template.plural-title`,
76
+ icon: 'fa-light fa-copy',
77
+ },
78
+ },
79
+ widgets: {
80
+ taskBoard: dashboardWidgetId('TaskBoard'),
81
+ taskBoardShortcut: dashboardWidgetId('TaskBoardShortcut'),
82
+ },
83
+ queries: {
84
+ dashboard: {
85
+ openTasksKpi: `${config.module}:Dashboard:OpenTasksKpi`,
86
+ overdueTasksKpi: `${config.module}:Dashboard:OverdueTasksKpi`,
87
+ myOpenTasksKpi: `${config.module}:Dashboard:MyOpenTasksKpi`,
88
+ taskStatusDonut: `${config.module}:Dashboard:TaskStatusDonut`,
89
+ },
90
+ },
91
+ };
92
+
93
+ async function taskFactory() {
94
+ const i18n = RootConfig.config.i18n;
95
+ const entityDef = {
96
+ module: RootConfig.module.name,
97
+ name: RootConfig.entities.task.name,
98
+ title: RootConfig.entities.task.title,
99
+ icon: RootConfig.entities.task.icon,
100
+ formats: {
101
+ individual: RootConfig.entities.task.title,
102
+ plural: RootConfig.entities.task.titlePlural,
103
+ searchResult: {
104
+ title: '{{ title }}',
105
+ description: '{{ description }}',
106
+ },
107
+ },
108
+ plugins: [
109
+ { name: 'history' },
110
+ { name: 'lock' },
111
+ { name: 'attachments', options: { accept: '.jpg,.jpeg,.png,.pdf', multiple: true, fileEditable: true } },
112
+ { name: 'archive' },
113
+ {
114
+ name: 'workflow-run',
115
+ options: {
116
+ list: {
117
+ mode: 'workflow-run',
118
+ },
119
+ },
120
+ },
121
+ {
122
+ name: 'meta-data-form',
123
+ options: {
124
+ path: 'taskTypeId',
125
+ display: 'section',
126
+ },
127
+ },
128
+ ],
129
+ relatedEntities: [
130
+ {
131
+ entity: `${RootConfig.module.name}.${RootConfig.entities.taskChecklistItem.name}`,
132
+ title: RootConfig.entities.taskChecklistItem.titlePlural,
133
+ columns: ['title', 'isCompleted', 'completedBy', 'dueDate', 'assignedTo'],
134
+ conditions: [entityDetailsSimpleCondition('taskId')],
135
+ actions: [...entityDetailsCrudActions('taskId')],
136
+ },
137
+ {
138
+ entity: `${RootConfig.module.name}.${RootConfig.entities.taskAssignment.name}`,
139
+ title: RootConfig.entities.taskAssignment.titlePlural,
140
+ columns: ['userId', 'role', 'assignedBy', 'assignedAt', 'isActive'],
141
+ conditions: [entityDetailsSimpleCondition('taskId')],
142
+ actions: [...entityDetailsCrudActions('taskId')],
143
+ },
144
+ {
145
+ entity: `${RootConfig.module.name}.${RootConfig.entities.timeLog.name}`,
146
+ layout: { type: 'page-list' },
147
+ title: RootConfig.entities.timeLog.titlePlural,
148
+ columns: ['userId', 'startTime', 'duration', 'description', 'isApproved'],
149
+ conditions: [entityDetailsSimpleCondition('taskId')],
150
+ actions: [...entityDetailsCrudActions('taskId')],
151
+ },
152
+ {
153
+ entity: `${RootConfig.module.name}.${RootConfig.entities.taskDependency.name}`,
154
+ layout: { type: 'page-list' },
155
+ title: RootConfig.entities.taskDependency.titlePlural,
156
+ columns: ['dependsOnTaskId', 'dependencyType', 'lagDays', 'isActive'],
157
+ conditions: [entityDetailsSimpleCondition('taskId')],
158
+ actions: [...entityDetailsCrudActions('taskId')],
159
+ },
160
+ // {
161
+ // entity: `${RootConfig.module.name}.${RootConfig.entities.taskContext.name}`,
162
+ // title: RootConfig.entities.taskContext.titlePlural,
163
+ // columns: ['contextType', 'contextTitle', 'isPrimary'],
164
+ // conditions: [entityDetailsSimpleCondition('taskId')],
165
+ // actions: [...entityDetailsCrudActions('taskId')],
166
+ // },
167
+ ],
168
+ groups: [
169
+ {
170
+ id: 'basic-info',
171
+ title: '@general:terms.interface.basic-info',
172
+ },
173
+ {
174
+ id: 'scheduling',
175
+ title: '@task-management:task.scheduling',
176
+ },
177
+ {
178
+ id: 'classification',
179
+ title: '@task-management:task.classification',
180
+ },
181
+ {
182
+ id: 'tracking',
183
+ title: '@task-management:task.tracking',
184
+ },
185
+ {
186
+ id: 'context',
187
+ title: '@task-management:task.context',
188
+ },
189
+ ],
190
+ properties: [
191
+ {
192
+ name: 'title',
193
+ title: '@general:terms.common.title',
194
+ groupId: 'basic-info',
195
+ options: {
196
+ sort: {
197
+ enabled: true,
198
+ },
199
+ filter: {
200
+ advance: {
201
+ enabled: true,
202
+ },
203
+ inline: {
204
+ enabled: true,
205
+ },
206
+ },
207
+ },
208
+ schema: {
209
+ dataType: 'string',
210
+ interface: {
211
+ type: AXPWidgetsCatalog.text,
212
+ },
213
+ },
214
+ validations: [
215
+ {
216
+ rule: 'required',
217
+ },
218
+ ],
219
+ },
220
+ {
221
+ name: 'description',
222
+ title: '@general:terms.common.description',
223
+ groupId: 'basic-info',
224
+ options: {
225
+ sort: {
226
+ enabled: false,
227
+ },
228
+ filter: {
229
+ advance: {
230
+ enabled: true,
231
+ },
232
+ inline: {
233
+ enabled: false,
234
+ },
235
+ },
236
+ },
237
+ schema: {
238
+ dataType: 'string',
239
+ interface: {
240
+ type: AXPWidgetsCatalog.largeText,
241
+ options: {
242
+ rows: 4,
243
+ },
244
+ },
245
+ },
246
+ },
247
+ {
248
+ name: 'taskTypeId',
249
+ title: '@task-management:task-type.individual-title',
250
+ groupId: 'classification',
251
+ options: {
252
+ sort: {
253
+ enabled: true,
254
+ },
255
+ filter: {
256
+ advance: {
257
+ enabled: true,
258
+ },
259
+ inline: {
260
+ enabled: true,
261
+ },
262
+ },
263
+ },
264
+ schema: {
265
+ dataType: 'object',
266
+ interface: {
267
+ type: AXPWidgetsCatalog.lookup,
268
+ options: {
269
+ entity: `${RootConfig.module.name}.${RootConfig.entities.taskType.name}`,
270
+ look: 'select',
271
+ expose: [
272
+ { source: 'id', target: 'taskType.id' },
273
+ { source: 'title', target: 'taskType.title' },
274
+ ],
275
+ },
276
+ },
277
+ },
278
+ validations: [
279
+ {
280
+ rule: 'required',
281
+ },
282
+ ],
283
+ },
284
+ {
285
+ name: 'statusId',
286
+ title: '@general:terms.status.title',
287
+ groupId: 'classification',
288
+ options: {
289
+ sort: {
290
+ enabled: true,
291
+ },
292
+ filter: {
293
+ advance: {
294
+ enabled: true,
295
+ },
296
+ inline: {
297
+ enabled: true,
298
+ },
299
+ },
300
+ },
301
+ schema: {
302
+ dataType: 'object',
303
+ interface: {
304
+ type: AXPWidgetsCatalog.lookup,
305
+ options: {
306
+ entity: `${RootConfig.module.name}.${RootConfig.entities.taskStatus.name}`,
307
+ look: 'select',
308
+ expose: [
309
+ { source: 'id', target: 'status.id' },
310
+ { source: 'name', target: 'status.name' },
311
+ { source: 'title', target: 'status.title' },
312
+ { source: 'color', target: 'status.color' },
313
+ { source: 'icon', target: 'status.icon' },
314
+ ],
315
+ },
316
+ },
317
+ },
318
+ validations: [
319
+ {
320
+ rule: 'required',
321
+ },
322
+ ],
323
+ },
324
+ {
325
+ name: 'assigneeId',
326
+ title: '@task-management:task-board.filter.assignee',
327
+ groupId: 'classification',
328
+ options: {
329
+ sort: {
330
+ enabled: true,
331
+ },
332
+ filter: {
333
+ advance: {
334
+ enabled: true,
335
+ },
336
+ inline: {
337
+ enabled: true,
338
+ },
339
+ },
340
+ },
341
+ schema: {
342
+ dataType: 'object',
343
+ interface: {
344
+ type: AXPWidgetsCatalog.lookup,
345
+ options: {
346
+ entity: 'SecurityManagement.User',
347
+ look: 'select',
348
+ textField: 'displayName',
349
+ expose: [
350
+ { source: 'id', target: 'assignee.id' },
351
+ { source: 'displayName', target: 'assignee.displayName' },
352
+ ],
353
+ },
354
+ },
355
+ },
356
+ },
357
+ {
358
+ name: 'priority',
359
+ title: '@general:terms.classification.priority',
360
+ groupId: 'classification',
361
+ options: {
362
+ sort: {
363
+ enabled: true,
364
+ },
365
+ filter: {
366
+ advance: {
367
+ enabled: true,
368
+ },
369
+ inline: {
370
+ enabled: true,
371
+ },
372
+ },
373
+ },
374
+ schema: {
375
+ dataType: 'string',
376
+ interface: {
377
+ type: AXPWidgetsCatalog.select,
378
+ options: {
379
+ valueField: 'id',
380
+ textField: 'title',
381
+ dataSource: [
382
+ { title: 'Low', id: 'low' },
383
+ { title: 'Medium', id: 'medium' },
384
+ { title: 'High', id: 'high' },
385
+ { title: 'Critical', id: 'critical' },
386
+ ],
387
+ direction: 'horizontal',
388
+ multiple: false,
389
+ },
390
+ },
391
+ },
392
+ validations: [
393
+ {
394
+ rule: 'required',
395
+ },
396
+ ],
397
+ },
398
+ {
399
+ name: 'dueDate',
400
+ title: '@task-management:task.due-date',
401
+ groupId: 'scheduling',
402
+ options: {
403
+ sort: {
404
+ enabled: true,
405
+ },
406
+ filter: {
407
+ advance: {
408
+ enabled: true,
409
+ },
410
+ inline: {
411
+ enabled: true,
412
+ },
413
+ },
414
+ },
415
+ schema: {
416
+ dataType: 'date',
417
+ interface: {
418
+ type: AXPWidgetsCatalog.dateTime,
419
+ options: {
420
+ showTime: false,
421
+ },
422
+ },
423
+ },
424
+ },
425
+ {
426
+ name: 'startDate',
427
+ title: '@task-management:task.start-date',
428
+ groupId: 'scheduling',
429
+ options: {
430
+ sort: {
431
+ enabled: true,
432
+ },
433
+ filter: {
434
+ advance: {
435
+ enabled: true,
436
+ },
437
+ inline: {
438
+ enabled: true,
439
+ },
440
+ },
441
+ },
442
+ schema: {
443
+ dataType: 'date',
444
+ interface: {
445
+ type: AXPWidgetsCatalog.dateTime,
446
+ options: {
447
+ showTime: false,
448
+ },
449
+ },
450
+ },
451
+ },
452
+ {
453
+ name: 'completedDate',
454
+ title: '@task-management:task.completed-date',
455
+ groupId: 'scheduling',
456
+ options: {
457
+ sort: {
458
+ enabled: true,
459
+ },
460
+ filter: {
461
+ advance: {
462
+ enabled: true,
463
+ },
464
+ inline: {
465
+ enabled: false,
466
+ },
467
+ },
468
+ },
469
+ schema: {
470
+ dataType: 'date',
471
+ interface: {
472
+ type: AXPWidgetsCatalog.dateTime,
473
+ options: {
474
+ showTime: true,
475
+ },
476
+ },
477
+ },
478
+ },
479
+ {
480
+ name: 'estimatedHours',
481
+ title: '@task-management:task.estimated-hours',
482
+ groupId: 'tracking',
483
+ options: {
484
+ sort: {
485
+ enabled: true,
486
+ },
487
+ filter: {
488
+ advance: {
489
+ enabled: true,
490
+ },
491
+ inline: {
492
+ enabled: false,
493
+ },
494
+ },
495
+ },
496
+ schema: {
497
+ dataType: 'number',
498
+ interface: {
499
+ type: AXPWidgetsCatalog.number,
500
+ options: {
501
+ minValue: 0,
502
+ step: 0.5,
503
+ format: '#.## hours',
504
+ },
505
+ },
506
+ },
507
+ },
508
+ {
509
+ name: 'actualHours',
510
+ title: '@task-management:task.actual-hours',
511
+ groupId: 'tracking',
512
+ options: {
513
+ sort: {
514
+ enabled: true,
515
+ },
516
+ filter: {
517
+ advance: {
518
+ enabled: true,
519
+ },
520
+ inline: {
521
+ enabled: false,
522
+ },
523
+ },
524
+ },
525
+ schema: {
526
+ dataType: 'number',
527
+ interface: {
528
+ type: AXPWidgetsCatalog.number,
529
+ options: {
530
+ minValue: 0,
531
+ step: 0.5,
532
+ format: '#.## hours',
533
+ },
534
+ },
535
+ },
536
+ },
537
+ {
538
+ name: 'progress',
539
+ title: '@general:terms.organizations.progress',
540
+ groupId: 'tracking',
541
+ options: {
542
+ sort: {
543
+ enabled: true,
544
+ },
545
+ filter: {
546
+ advance: {
547
+ enabled: true,
548
+ },
549
+ inline: {
550
+ enabled: true,
551
+ },
552
+ },
553
+ },
554
+ schema: {
555
+ dataType: 'number',
556
+ interface: {
557
+ type: AXPWidgetsCatalog.progressBar,
558
+ options: {
559
+ total: 100,
560
+ maxValue: 100,
561
+ showText: true,
562
+ textFormat: 'percentage',
563
+ },
564
+ },
565
+ },
566
+ },
567
+ {
568
+ name: 'parentTaskId',
569
+ title: '@task-management:task.parent-task',
570
+ groupId: 'context',
571
+ options: {
572
+ sort: {
573
+ enabled: false,
574
+ },
575
+ filter: {
576
+ advance: {
577
+ enabled: true,
578
+ },
579
+ inline: {
580
+ enabled: false,
581
+ },
582
+ },
583
+ },
584
+ schema: {
585
+ dataType: 'object',
586
+ interface: {
587
+ type: AXPWidgetsCatalog.lookup,
588
+ options: {
589
+ entity: `${RootConfig.module.name}.${RootConfig.entities.task.name}`,
590
+ expose: [
591
+ { source: 'id', target: 'parentTask.id' },
592
+ { source: 'title', target: 'parentTask.title' },
593
+ ],
594
+ },
595
+ },
596
+ },
597
+ },
598
+ {
599
+ name: 'order',
600
+ title: '@general:terms.classification.order',
601
+ groupId: 'tracking',
602
+ options: {
603
+ sort: {
604
+ enabled: true,
605
+ },
606
+ filter: {
607
+ advance: {
608
+ enabled: false,
609
+ },
610
+ inline: {
611
+ enabled: false,
612
+ },
613
+ },
614
+ },
615
+ schema: {
616
+ dataType: 'number',
617
+ interface: {
618
+ type: AXPWidgetsCatalog.number,
619
+ options: {
620
+ minValue: 0,
621
+ step: 1,
622
+ },
623
+ },
624
+ },
625
+ },
626
+ {
627
+ name: 'subjectRef.id',
628
+ title: '@task-management:task.subject',
629
+ groupId: 'context',
630
+ options: {
631
+ sort: { enabled: true },
632
+ filter: {
633
+ advance: { enabled: true },
634
+ inline: { enabled: true },
635
+ },
636
+ },
637
+ schema: {
638
+ dataType: 'string',
639
+ interface: {
640
+ type: AXPWidgetsCatalog.lookup,
641
+ options: {
642
+ entity: "{{ context.eval('subjectRef.type') }}",
643
+ valueField: 'id',
644
+ expose: [
645
+ { source: 'id', target: 'subjectRef.id' },
646
+ { source: 'title', target: 'subjectRef.title' },
647
+ ],
648
+ },
649
+ },
650
+ },
651
+ },
652
+ {
653
+ name: 'subjectRef.type',
654
+ title: '@task-management:task.subject-type',
655
+ groupId: 'context',
656
+ schema: {
657
+ dataType: 'string',
658
+ visible: false,
659
+ interface: { type: AXPWidgetsCatalog.text },
660
+ },
661
+ },
662
+ {
663
+ name: 'formTemplateId',
664
+ title: '@task-management:task.form-template',
665
+ groupId: 'context',
666
+ options: {
667
+ sort: {
668
+ enabled: false,
669
+ },
670
+ filter: {
671
+ advance: {
672
+ enabled: false,
673
+ },
674
+ inline: {
675
+ enabled: false,
676
+ },
677
+ },
678
+ },
679
+ schema: {
680
+ dataType: 'object',
681
+ interface: {
682
+ type: AXPWidgetsCatalog.lookup,
683
+ options: {
684
+ entity: 'FormTemplateManagement.Template',
685
+ textField: "title",
686
+ expose: [
687
+ { source: 'id', target: 'formTemplate.id' },
688
+ { source: 'title', target: 'formTemplate.title' },
689
+ ],
690
+ filter: {
691
+ logic: 'and',
692
+ filters: [
693
+ {
694
+ field: 'typeId',
695
+ operator: {
696
+ type: 'equal',
697
+ },
698
+ value: 10,
699
+ },
700
+ ],
701
+ },
702
+ },
703
+ },
704
+ },
705
+ },
706
+ ],
707
+ columns: [
708
+ { name: 'title' },
709
+ { name: 'taskTypeId', options: { dataPath: 'taskType.title' } },
710
+ {
711
+ name: 'statusId',
712
+ title: '@general:terms.status.title',
713
+ showAs: {
714
+ type: AXPWidgetsList.Advanced.Status,
715
+ options: { readonly: true },
716
+ },
717
+ options: { dataPath: 'status', width: '140px' },
718
+ },
719
+ { name: 'assigneeId', options: { dataPath: 'assignee.displayName', width: '160px' } },
720
+ { name: 'priority' },
721
+ { name: 'dueDate' },
722
+ {
723
+ name: 'progress',
724
+ showAs: { type: AXPWidgetsCatalog.progressBar },
725
+ options: { width: '140px' },
726
+ },
727
+ { name: 'estimatedHours' },
728
+ { name: 'actualHours' },
729
+ ],
730
+ interfaces: {
731
+ master: {
732
+ create: {
733
+ sections: [
734
+ {
735
+ id: 'basic-info',
736
+ },
737
+ {
738
+ id: 'classification',
739
+ },
740
+ {
741
+ id: 'scheduling',
742
+ },
743
+ {
744
+ id: 'tracking',
745
+ },
746
+ {
747
+ id: 'context',
748
+ },
749
+ ],
750
+ properties: [
751
+ {
752
+ name: 'title',
753
+ layout: {
754
+ positions: {
755
+ sm: {
756
+ colSpan: 12,
757
+ },
758
+ },
759
+ },
760
+ },
761
+ {
762
+ name: 'description',
763
+ layout: {
764
+ positions: {
765
+ sm: {
766
+ colSpan: 12,
767
+ },
768
+ },
769
+ },
770
+ },
771
+ {
772
+ name: 'taskTypeId',
773
+ layout: {
774
+ positions: {
775
+ sm: {
776
+ colSpan: 12,
777
+ },
778
+ md: {
779
+ colSpan: 6,
780
+ },
781
+ },
782
+ },
783
+ },
784
+ {
785
+ name: 'statusId',
786
+ layout: {
787
+ positions: {
788
+ sm: {
789
+ colSpan: 12,
790
+ },
791
+ md: {
792
+ colSpan: 6,
793
+ },
794
+ },
795
+ },
796
+ },
797
+ {
798
+ name: 'assigneeId',
799
+ layout: {
800
+ positions: {
801
+ sm: {
802
+ colSpan: 12,
803
+ },
804
+ md: {
805
+ colSpan: 6,
806
+ },
807
+ },
808
+ },
809
+ },
810
+ {
811
+ name: 'priority',
812
+ layout: {
813
+ positions: {
814
+ sm: {
815
+ colSpan: 12,
816
+ },
817
+ md: {
818
+ colSpan: 6,
819
+ },
820
+ },
821
+ },
822
+ },
823
+ {
824
+ name: 'startDate',
825
+ layout: {
826
+ positions: {
827
+ sm: {
828
+ colSpan: 12,
829
+ },
830
+ md: {
831
+ colSpan: 6,
832
+ },
833
+ },
834
+ },
835
+ },
836
+ {
837
+ name: 'dueDate',
838
+ layout: {
839
+ positions: {
840
+ sm: {
841
+ colSpan: 12,
842
+ },
843
+ md: {
844
+ colSpan: 6,
845
+ },
846
+ },
847
+ },
848
+ },
849
+ {
850
+ name: 'estimatedHours',
851
+ layout: {
852
+ positions: {
853
+ sm: {
854
+ colSpan: 12,
855
+ },
856
+ md: {
857
+ colSpan: 4,
858
+ },
859
+ },
860
+ },
861
+ },
862
+ {
863
+ name: 'progress',
864
+ layout: {
865
+ positions: {
866
+ sm: {
867
+ colSpan: 12,
868
+ },
869
+ md: {
870
+ colSpan: 4,
871
+ },
872
+ },
873
+ },
874
+ },
875
+ {
876
+ name: 'order',
877
+ layout: {
878
+ positions: {
879
+ sm: {
880
+ colSpan: 12,
881
+ },
882
+ md: {
883
+ colSpan: 4,
884
+ },
885
+ },
886
+ },
887
+ },
888
+ {
889
+ name: 'subjectRef.id',
890
+ layout: {
891
+ positions: {
892
+ sm: {
893
+ colSpan: 12,
894
+ },
895
+ md: {
896
+ colSpan: 6,
897
+ },
898
+ },
899
+ },
900
+ },
901
+ {
902
+ name: 'parentTaskId',
903
+ layout: {
904
+ positions: {
905
+ sm: {
906
+ colSpan: 12,
907
+ },
908
+ },
909
+ },
910
+ },
911
+ ],
912
+ },
913
+ update: {
914
+ sections: [
915
+ {
916
+ id: 'basic-info',
917
+ },
918
+ {
919
+ id: 'classification',
920
+ },
921
+ {
922
+ id: 'scheduling',
923
+ },
924
+ {
925
+ id: 'tracking',
926
+ },
927
+ {
928
+ id: 'context',
929
+ },
930
+ ],
931
+ properties: [
932
+ {
933
+ name: 'title',
934
+ layout: {
935
+ positions: {
936
+ sm: {
937
+ colSpan: 12,
938
+ },
939
+ },
940
+ },
941
+ },
942
+ {
943
+ name: 'description',
944
+ layout: {
945
+ positions: {
946
+ sm: {
947
+ colSpan: 12,
948
+ },
949
+ },
950
+ },
951
+ },
952
+ {
953
+ name: 'taskTypeId',
954
+ layout: {
955
+ positions: {
956
+ sm: {
957
+ colSpan: 12,
958
+ },
959
+ md: {
960
+ colSpan: 6,
961
+ },
962
+ },
963
+ },
964
+ },
965
+ {
966
+ name: 'statusId',
967
+ layout: {
968
+ positions: {
969
+ sm: {
970
+ colSpan: 12,
971
+ },
972
+ md: {
973
+ colSpan: 6,
974
+ },
975
+ },
976
+ },
977
+ },
978
+ {
979
+ name: 'assigneeId',
980
+ layout: {
981
+ positions: {
982
+ sm: {
983
+ colSpan: 12,
984
+ },
985
+ md: {
986
+ colSpan: 6,
987
+ },
988
+ },
989
+ },
990
+ },
991
+ {
992
+ name: 'priority',
993
+ layout: {
994
+ positions: {
995
+ sm: {
996
+ colSpan: 12,
997
+ },
998
+ md: {
999
+ colSpan: 6,
1000
+ },
1001
+ },
1002
+ },
1003
+ },
1004
+ {
1005
+ name: 'startDate',
1006
+ layout: {
1007
+ positions: {
1008
+ sm: {
1009
+ colSpan: 12,
1010
+ },
1011
+ md: {
1012
+ colSpan: 6,
1013
+ },
1014
+ },
1015
+ },
1016
+ },
1017
+ {
1018
+ name: 'dueDate',
1019
+ layout: {
1020
+ positions: {
1021
+ sm: {
1022
+ colSpan: 12,
1023
+ },
1024
+ md: {
1025
+ colSpan: 6,
1026
+ },
1027
+ },
1028
+ },
1029
+ },
1030
+ {
1031
+ name: 'estimatedHours',
1032
+ layout: {
1033
+ positions: {
1034
+ sm: {
1035
+ colSpan: 12,
1036
+ },
1037
+ md: {
1038
+ colSpan: 4,
1039
+ },
1040
+ },
1041
+ },
1042
+ },
1043
+ {
1044
+ name: 'actualHours',
1045
+ layout: {
1046
+ positions: {
1047
+ sm: {
1048
+ colSpan: 12,
1049
+ },
1050
+ md: {
1051
+ colSpan: 4,
1052
+ },
1053
+ },
1054
+ },
1055
+ },
1056
+ {
1057
+ name: 'progress',
1058
+ layout: {
1059
+ positions: {
1060
+ sm: {
1061
+ colSpan: 12,
1062
+ },
1063
+ md: {
1064
+ colSpan: 4,
1065
+ },
1066
+ },
1067
+ },
1068
+ },
1069
+ {
1070
+ name: 'subjectRef.id',
1071
+ layout: {
1072
+ positions: {
1073
+ sm: {
1074
+ colSpan: 12,
1075
+ },
1076
+ md: {
1077
+ colSpan: 6,
1078
+ },
1079
+ },
1080
+ },
1081
+ },
1082
+ {
1083
+ name: 'parentTaskId',
1084
+ layout: {
1085
+ positions: {
1086
+ sm: {
1087
+ colSpan: 12,
1088
+ },
1089
+ md: {
1090
+ colSpan: 6,
1091
+ },
1092
+ },
1093
+ },
1094
+ },
1095
+ ],
1096
+ },
1097
+ single: {
1098
+ title: '{{title}}',
1099
+ sections: [
1100
+ {
1101
+ id: 'basic-info',
1102
+ layout: {
1103
+ positions: {
1104
+ lg: {
1105
+ colSpan: 12,
1106
+ },
1107
+ },
1108
+ },
1109
+ },
1110
+ {
1111
+ id: 'classification',
1112
+ layout: {
1113
+ positions: {
1114
+ lg: {
1115
+ colSpan: 6,
1116
+ },
1117
+ },
1118
+ },
1119
+ },
1120
+ {
1121
+ id: 'scheduling',
1122
+ layout: {
1123
+ positions: {
1124
+ lg: {
1125
+ colSpan: 6,
1126
+ },
1127
+ },
1128
+ },
1129
+ },
1130
+ {
1131
+ id: 'tracking',
1132
+ layout: {
1133
+ positions: {
1134
+ lg: {
1135
+ colSpan: 6,
1136
+ },
1137
+ },
1138
+ },
1139
+ },
1140
+ {
1141
+ id: 'context',
1142
+ layout: {
1143
+ positions: {
1144
+ lg: {
1145
+ colSpan: 6,
1146
+ },
1147
+ },
1148
+ },
1149
+ },
1150
+ ],
1151
+ properties: [
1152
+ {
1153
+ name: 'title',
1154
+ layout: {
1155
+ positions: {
1156
+ lg: {
1157
+ colSpan: 12,
1158
+ order: 1,
1159
+ },
1160
+ },
1161
+ },
1162
+ },
1163
+ {
1164
+ name: 'description',
1165
+ layout: {
1166
+ positions: {
1167
+ lg: {
1168
+ colSpan: 12,
1169
+ order: 2,
1170
+ },
1171
+ },
1172
+ },
1173
+ },
1174
+ {
1175
+ name: 'taskTypeId',
1176
+ layout: {
1177
+ positions: {
1178
+ lg: {
1179
+ colSpan: 6,
1180
+ order: 3,
1181
+ },
1182
+ },
1183
+ },
1184
+ },
1185
+ {
1186
+ name: 'statusId',
1187
+ layout: {
1188
+ positions: {
1189
+ lg: {
1190
+ colSpan: 6,
1191
+ order: 4,
1192
+ },
1193
+ },
1194
+ },
1195
+ },
1196
+ {
1197
+ name: 'assigneeId',
1198
+ layout: {
1199
+ positions: {
1200
+ lg: {
1201
+ colSpan: 6,
1202
+ order: 5,
1203
+ },
1204
+ },
1205
+ },
1206
+ },
1207
+ {
1208
+ name: 'priority',
1209
+ layout: {
1210
+ positions: {
1211
+ lg: {
1212
+ colSpan: 6,
1213
+ order: 6,
1214
+ },
1215
+ },
1216
+ },
1217
+ },
1218
+ {
1219
+ name: 'startDate',
1220
+ layout: {
1221
+ positions: {
1222
+ lg: {
1223
+ colSpan: 6,
1224
+ order: 7,
1225
+ },
1226
+ },
1227
+ },
1228
+ },
1229
+ {
1230
+ name: 'dueDate',
1231
+ layout: {
1232
+ positions: {
1233
+ lg: {
1234
+ colSpan: 6,
1235
+ order: 8,
1236
+ },
1237
+ },
1238
+ },
1239
+ },
1240
+ {
1241
+ name: 'completedDate',
1242
+ layout: {
1243
+ positions: {
1244
+ lg: {
1245
+ colSpan: 6,
1246
+ order: 9,
1247
+ },
1248
+ },
1249
+ },
1250
+ },
1251
+ {
1252
+ name: 'estimatedHours',
1253
+ layout: {
1254
+ positions: {
1255
+ lg: {
1256
+ colSpan: 4,
1257
+ order: 10,
1258
+ },
1259
+ },
1260
+ },
1261
+ },
1262
+ {
1263
+ name: 'actualHours',
1264
+ layout: {
1265
+ positions: {
1266
+ lg: {
1267
+ colSpan: 4,
1268
+ order: 11,
1269
+ },
1270
+ },
1271
+ },
1272
+ },
1273
+ {
1274
+ name: 'progress',
1275
+ layout: {
1276
+ positions: {
1277
+ lg: {
1278
+ colSpan: 4,
1279
+ order: 12,
1280
+ },
1281
+ },
1282
+ },
1283
+ },
1284
+ {
1285
+ name: 'subjectRef.id',
1286
+ layout: {
1287
+ positions: {
1288
+ lg: {
1289
+ colSpan: 6,
1290
+ order: 13,
1291
+ },
1292
+ },
1293
+ },
1294
+ },
1295
+ {
1296
+ name: 'formTemplateId',
1297
+ layout: {
1298
+ positions: {
1299
+ lg: {
1300
+ colSpan: 6,
1301
+ order: 13,
1302
+ },
1303
+ },
1304
+ },
1305
+ },
1306
+ {
1307
+ name: 'parentTaskId',
1308
+ layout: {
1309
+ positions: {
1310
+ lg: {
1311
+ colSpan: 6,
1312
+ order: 15,
1313
+ },
1314
+ },
1315
+ },
1316
+ },
1317
+ ],
1318
+ actions: [
1319
+ {
1320
+ title: '@general:actions.delete.title',
1321
+ command: 'Entity:Remove',
1322
+ priority: 'secondary',
1323
+ type: 'delete',
1324
+ scope: AXPEntityCommandScope.Individual,
1325
+ },
1326
+ ],
1327
+ },
1328
+ list: {
1329
+ actions: [...entityMasterCrudActions()],
1330
+ views: [
1331
+ createAllQueryView({
1332
+ sorts: [
1333
+ { name: 'dueDate', dir: 'asc' },
1334
+ { name: 'priority', dir: 'desc' },
1335
+ ],
1336
+ }),
1337
+ ],
1338
+ },
1339
+ },
1340
+ },
1341
+ };
1342
+ return entityDef;
1343
+ }
1344
+
1345
+ /**
1346
+ * Generated bundle index. Do not edit.
1347
+ */
1348
+
1349
+ export { taskFactory };
1350
+ //# sourceMappingURL=acorex-platform-module-task-management-client-contracts-entities-task.mjs.map