@acorex/modules 21.0.0-next.12 → 21.0.0-next.13
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/data-management/index.d.ts +35 -2
- package/document-management/index.d.ts +76 -261
- package/fesm2022/acorex-modules-data-management.mjs +231 -2
- package/fesm2022/acorex-modules-data-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-document-management.mjs +529 -2717
- package/fesm2022/acorex-modules-document-management.mjs.map +1 -1
- package/fesm2022/{acorex-modules-human-capital-management-leave-request.entity-BDSyXKSF.mjs → acorex-modules-human-capital-management-leave-request.entity-CviI9xJC.mjs} +2 -2
- package/fesm2022/acorex-modules-human-capital-management-leave-request.entity-CviI9xJC.mjs.map +1 -0
- package/fesm2022/acorex-modules-human-capital-management.mjs +350 -695
- package/fesm2022/acorex-modules-human-capital-management.mjs.map +1 -1
- package/fesm2022/{acorex-modules-task-management-task-board.page-Cgxdk78j.mjs → acorex-modules-task-management-task-board.page-B_S373L-.mjs} +47 -54
- package/fesm2022/acorex-modules-task-management-task-board.page-B_S373L-.mjs.map +1 -0
- package/fesm2022/acorex-modules-task-management.mjs +39 -11
- package/fesm2022/acorex-modules-task-management.mjs.map +1 -1
- package/fesm2022/acorex-modules-workflow-management-activity-definition.entity-BbBEPTBa.mjs +258 -0
- package/fesm2022/acorex-modules-workflow-management-activity-definition.entity-BbBEPTBa.mjs.map +1 -0
- package/fesm2022/acorex-modules-workflow-management-workflow-definition.entity-nJMBL0qt.mjs +371 -0
- package/fesm2022/acorex-modules-workflow-management-workflow-definition.entity-nJMBL0qt.mjs.map +1 -0
- package/fesm2022/acorex-modules-workflow-management-workflow-instance.entity-Pso0oRN5.mjs +313 -0
- package/fesm2022/acorex-modules-workflow-management-workflow-instance.entity-Pso0oRN5.mjs.map +1 -0
- package/fesm2022/acorex-modules-workflow-management.mjs +710 -2536
- package/fesm2022/acorex-modules-workflow-management.mjs.map +1 -1
- package/human-capital-management/index.d.ts +19 -79
- package/package.json +14 -14
- package/task-management/index.d.ts +12 -1
- package/workflow-management/index.d.ts +220 -265
- package/fesm2022/acorex-modules-human-capital-management-leave-request-task-popover.component-yGvT9kSL.mjs +0 -381
- package/fesm2022/acorex-modules-human-capital-management-leave-request-task-popover.component-yGvT9kSL.mjs.map +0 -1
- package/fesm2022/acorex-modules-human-capital-management-leave-request.entity-BDSyXKSF.mjs.map +0 -1
- package/fesm2022/acorex-modules-task-management-task-board.page-Cgxdk78j.mjs.map +0 -1
- package/fesm2022/acorex-modules-workflow-management-cartable-page.component-Bso0XRkJ.mjs +0 -296
- package/fesm2022/acorex-modules-workflow-management-cartable-page.component-Bso0XRkJ.mjs.map +0 -1
- package/fesm2022/acorex-modules-workflow-management-index-xB36g4F1.mjs +0 -469
- package/fesm2022/acorex-modules-workflow-management-index-xB36g4F1.mjs.map +0 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { AXPSessionService, AXPAuthGuard, AXP_PERMISSION_DEFINITION_PROVIDER } from '@acorex/platform/auth';
|
|
2
2
|
import { AXPEntityService, AXMEntityCrudServiceImpl, entityMasterCrudActions, entityMasterRecordActions, cloneLayoutArrays, ensureLayoutSection, ensureLayoutPropertyView, ensureListActions, actionExists, AXPEntityDefinitionRegistryService, AXP_ENTITY_CONFIG_TOKEN, AXP_ENTITY_ACTION_PLUGIN, AXP_ENTITY_STORAGE_MIDDLEWARE, AXP_ENTITY_DEFINITION_LOADER } from '@acorex/platform/layout/entity';
|
|
3
3
|
import { AXPHookService, AXPPlatformScope, AXPDataGenerator, AXP_MODULE_MANIFEST_PROVIDER, AXP_FEATURE_DEFINITION_PROVIDER, AXP_DISTRIBUTED_EVENT_LISTENER_PROVIDER, AXPDeviceService, resolvePlatformScopeKey, resolvePlatformScopeName } from '@acorex/platform/core';
|
|
4
|
-
import { AXPSearchCommandProvider, createAllQueryView,
|
|
4
|
+
import { AXPSearchCommandProvider, createAllQueryView, AXPFileTypeProviderService, AXP_FILE_TYPE_INFO_PROVIDER, AXPFileStorageService, AXPFilterOperatorMiddlewareService, AXPSettingsService, AXPLockService, UploadFromComputerActionProvider, AXP_FILE_ACTION_PROVIDER, AXPEntityCommandScope, AXP_MENU_PROVIDER, AXP_SEARCH_PROVIDER } from '@acorex/platform/common';
|
|
5
5
|
import * as i0 from '@angular/core';
|
|
6
6
|
import { Injectable, inject, Injector, NgModule, ChangeDetectionStrategy, Component, signal, computed, viewChild, input, effect, ViewEncapsulation, untracked, HostListener } from '@angular/core';
|
|
7
7
|
import * as i3$2 from '@acorex/core/translation';
|
|
@@ -10,7 +10,6 @@ import { firstValueFrom } from 'rxjs';
|
|
|
10
10
|
import * as i6 from '@acorex/platform/layout/widget-core';
|
|
11
11
|
import { AXPWidgetsCatalog, AXPValueWidgetComponent, AXPWidgetCoreModule, AXP_WIDGETS_ADVANCE_CATEGORY } from '@acorex/platform/layout/widget-core';
|
|
12
12
|
import { RouterModule, ROUTES, Router, ActivatedRoute } from '@angular/router';
|
|
13
|
-
import { set, castArray, get as get$1 } from 'lodash-es';
|
|
14
13
|
import { AXDataSource } from '@acorex/cdk/common';
|
|
15
14
|
import * as i7 from '@acorex/components/collapse';
|
|
16
15
|
import { AXCollapseModule } from '@acorex/components/collapse';
|
|
@@ -25,7 +24,7 @@ import { AXSelectBoxModule } from '@acorex/components/select-box';
|
|
|
25
24
|
import * as i2 from '@angular/forms';
|
|
26
25
|
import { FormsModule } from '@angular/forms';
|
|
27
26
|
import get from 'lodash-es/get';
|
|
28
|
-
import set
|
|
27
|
+
import set from 'lodash-es/set';
|
|
29
28
|
import { AXP_NAME_PROPERTY, AXP_DATA_PATH_PROPERTY } from '@acorex/platform/layout/widgets';
|
|
30
29
|
import * as i2$2 from '@acorex/components/media-viewer';
|
|
31
30
|
import { AXMediaViewerModule } from '@acorex/components/media-viewer';
|
|
@@ -42,6 +41,7 @@ import { AXPStateMessageComponent, AXPThemeLayoutBlockComponent } from '@acorex/
|
|
|
42
41
|
import { AXPLayoutThemeService } from '@acorex/platform/themes/shared';
|
|
43
42
|
import * as i1$2 from '@angular/common';
|
|
44
43
|
import { CommonModule } from '@angular/common';
|
|
44
|
+
import { castArray, get as get$1, set as set$1 } from 'lodash-es';
|
|
45
45
|
import { AXDialogService } from '@acorex/components/dialog';
|
|
46
46
|
import { AXPopupService } from '@acorex/components/popup';
|
|
47
47
|
import { AXPLayoutBuilderService } from '@acorex/platform/layout/builder';
|
|
@@ -72,18 +72,6 @@ const RootConfig = {
|
|
|
72
72
|
icon: 'fa-light fa-books',
|
|
73
73
|
},
|
|
74
74
|
entities: {
|
|
75
|
-
documentRelated: {
|
|
76
|
-
name: 'DocumentRelated',
|
|
77
|
-
title: `@${config.i18n}:entities.document.title`,
|
|
78
|
-
titlePlural: `@${config.i18n}:entities.document.title-plural`,
|
|
79
|
-
icon: 'fa-light fa-default',
|
|
80
|
-
},
|
|
81
|
-
review: {
|
|
82
|
-
name: 'Review',
|
|
83
|
-
title: `@${config.i18n}:entities.review.title`,
|
|
84
|
-
titlePlural: `@${config.i18n}:entities.review.title-plural`,
|
|
85
|
-
icon: 'fa-light fa-file-pen',
|
|
86
|
-
},
|
|
87
75
|
folder: {
|
|
88
76
|
name: 'Folder',
|
|
89
77
|
title: `@${config.i18n}:entities.folder.title`,
|
|
@@ -102,24 +90,6 @@ const RootConfig = {
|
|
|
102
90
|
titlePlural: `@${config.i18n}:entities.document-type.title-plural`,
|
|
103
91
|
icon: 'fa-light fa-books',
|
|
104
92
|
},
|
|
105
|
-
documentTypeMetaDefinition: {
|
|
106
|
-
name: 'documentTypeMeta',
|
|
107
|
-
title: `@${config.i18n}:entities.document-type-meta.title`,
|
|
108
|
-
titlePlural: `@${config.i18n}:entities.document-type-meta.title-plural`,
|
|
109
|
-
icon: 'fa-light fa-meta',
|
|
110
|
-
},
|
|
111
|
-
documentTypeMetaValue: {
|
|
112
|
-
name: 'documentTypeMetaValue',
|
|
113
|
-
title: `@${config.i18n}:entities.document-type-meta-value.title`,
|
|
114
|
-
titlePlural: `@${config.i18n}:entities.document-type-meta-value.title-plural`,
|
|
115
|
-
icon: 'fa-light fa-meta',
|
|
116
|
-
},
|
|
117
|
-
documentTypeStatus: {
|
|
118
|
-
name: 'documentTypeStatus',
|
|
119
|
-
title: `@${config.i18n}:entities.document-type-status.title`,
|
|
120
|
-
titlePlural: `@${config.i18n}:entities.document-type-status.title-plural`,
|
|
121
|
-
icon: 'fa-light fa-status',
|
|
122
|
-
},
|
|
123
93
|
},
|
|
124
94
|
};
|
|
125
95
|
|
|
@@ -194,13 +164,6 @@ const AXMPermissionsKeys = {
|
|
|
194
164
|
Delete: 'DocumentManagement:Permission:Driver.Delete',
|
|
195
165
|
Create: 'DocumentManagement:Permission:Driver.Create',
|
|
196
166
|
},
|
|
197
|
-
Review: {
|
|
198
|
-
Management: 'DocumentManagement:Permission:Review.Management',
|
|
199
|
-
View: 'DocumentManagement:Permission:Review.View',
|
|
200
|
-
Edit: 'DocumentManagement:Permission:Review.Edit',
|
|
201
|
-
Delete: 'DocumentManagement:Permission:Review.Delete',
|
|
202
|
-
Create: 'DocumentManagement:Permission:Review.Create',
|
|
203
|
-
},
|
|
204
167
|
},
|
|
205
168
|
};
|
|
206
169
|
|
|
@@ -226,13 +189,6 @@ class AXMPermissionDefinitionProvider {
|
|
|
226
189
|
.addChild(keys.Driver.Edit, await trans('driver.edit.title'), await trans('driver.edit.description'))
|
|
227
190
|
.addChild(keys.Driver.Delete, await trans('driver.delete.title'), await trans('driver.delete.description'))
|
|
228
191
|
.addChild(keys.Driver.Create, await trans('driver.create.title'), await trans('driver.create.description'))
|
|
229
|
-
.endPermission()
|
|
230
|
-
//
|
|
231
|
-
.addPermission(keys.Review.Management, await trans('review.manage.title'), await trans('review.manage.description'))
|
|
232
|
-
.addChild(keys.Review.View, await trans('review.view.title'), await trans('review.view.description'))
|
|
233
|
-
.addChild(keys.Review.Edit, await trans('review.edit.title'), await trans('review.edit.description'))
|
|
234
|
-
.addChild(keys.Review.Delete, await trans('review.delete.title'), await trans('review.delete.description'))
|
|
235
|
-
.addChild(keys.Review.Create, await trans('review.create.title'), await trans('review.create.description'))
|
|
236
192
|
.endPermission();
|
|
237
193
|
//
|
|
238
194
|
}
|
|
@@ -333,25 +289,21 @@ class AXMEntityProvider {
|
|
|
333
289
|
}));
|
|
334
290
|
}
|
|
335
291
|
async get(moduleName, entityName) {
|
|
336
|
-
if (moduleName
|
|
292
|
+
if (moduleName === RootConfig.module.name) {
|
|
337
293
|
switch (entityName) {
|
|
338
|
-
case RootConfig.entities.document.name:
|
|
339
|
-
return (await Promise.resolve().then(function () { return index; })).documentFactory(this.injector);
|
|
340
294
|
case RootConfig.entities.documentType.name:
|
|
341
295
|
return (await Promise.resolve().then(function () { return index; })).documentTypeFactory(this.injector);
|
|
342
296
|
case RootConfig.entities.folder.name:
|
|
343
|
-
return (await Promise.resolve().then(function () { return
|
|
344
|
-
case RootConfig.entities.
|
|
345
|
-
return (await Promise.resolve().then(function () { return
|
|
346
|
-
case RootConfig.entities.documentRelated.name:
|
|
347
|
-
return (await Promise.resolve().then(function () { return index; })).documentRelatedFactory(this.injector);
|
|
297
|
+
return (await Promise.resolve().then(function () { return folder_entity; })).folderEntityFactory(this.injector);
|
|
298
|
+
case RootConfig.entities.document.name:
|
|
299
|
+
return (await Promise.resolve().then(function () { return document_entity; })).documentEntityFactory(this.injector);
|
|
348
300
|
}
|
|
349
301
|
}
|
|
350
302
|
return null;
|
|
351
303
|
}
|
|
352
304
|
async list() {
|
|
353
305
|
const m = RootConfig.module.name;
|
|
354
|
-
const entities =
|
|
306
|
+
const entities = [RootConfig.entities.documentType];
|
|
355
307
|
return Promise.resolve(entities.map((e) => ({ name: e.name, module: m })));
|
|
356
308
|
}
|
|
357
309
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMEntityProvider, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
@@ -380,6 +332,37 @@ class AXMSearchCommandProvider extends AXPSearchCommandProvider {
|
|
|
380
332
|
}
|
|
381
333
|
}
|
|
382
334
|
|
|
335
|
+
/**
|
|
336
|
+
* Minimal entity definition for Document so the entity registry can resolve
|
|
337
|
+
* DocumentManagement.Document. Used by AXMDocumentService (AXMEntityCrudServiceImpl).
|
|
338
|
+
* No list/form UI; documents are handled by document-explorer.
|
|
339
|
+
*/
|
|
340
|
+
async function documentEntityFactory(_injector) {
|
|
341
|
+
const entityDef = {
|
|
342
|
+
module: RootConfig.module.name,
|
|
343
|
+
name: RootConfig.entities.document.name,
|
|
344
|
+
title: RootConfig.entities.document.title,
|
|
345
|
+
parentKey: 'parentId',
|
|
346
|
+
formats: {
|
|
347
|
+
individual: RootConfig.entities.document.title,
|
|
348
|
+
plural: RootConfig.entities.document.titlePlural,
|
|
349
|
+
searchResult: {
|
|
350
|
+
title: '{{ title }}',
|
|
351
|
+
description: RootConfig.module.title,
|
|
352
|
+
},
|
|
353
|
+
},
|
|
354
|
+
relatedEntities: [],
|
|
355
|
+
groups: [],
|
|
356
|
+
properties: [],
|
|
357
|
+
};
|
|
358
|
+
return entityDef;
|
|
359
|
+
}
|
|
360
|
+
|
|
361
|
+
var document_entity = /*#__PURE__*/Object.freeze({
|
|
362
|
+
__proto__: null,
|
|
363
|
+
documentEntityFactory: documentEntityFactory
|
|
364
|
+
});
|
|
365
|
+
|
|
383
366
|
class AXMDocumentService extends AXMEntityCrudServiceImpl {
|
|
384
367
|
}
|
|
385
368
|
class AXMDocumentServiceImpl extends AXMDocumentService {
|
|
@@ -393,23 +376,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImpo
|
|
|
393
376
|
type: Injectable
|
|
394
377
|
}], ctorParameters: () => [] });
|
|
395
378
|
|
|
396
|
-
|
|
397
|
-
__proto__: null,
|
|
398
|
-
AXMDocumentService: AXMDocumentService,
|
|
399
|
-
AXMDocumentServiceImpl: AXMDocumentServiceImpl
|
|
400
|
-
});
|
|
401
|
-
|
|
402
|
-
async function documentFactory(injector) {
|
|
403
|
-
const dataService = injector.get(AXMDocumentService);
|
|
379
|
+
async function documentTypeFactory(injector) {
|
|
404
380
|
const i18n = RootConfig.config.i18n;
|
|
405
381
|
const entityDef = {
|
|
406
382
|
module: RootConfig.module.name,
|
|
407
|
-
name: RootConfig.entities.
|
|
408
|
-
title: RootConfig.entities.
|
|
409
|
-
icon: RootConfig.entities.document.icon,
|
|
383
|
+
name: RootConfig.entities.documentType.name,
|
|
384
|
+
title: RootConfig.entities.documentType.title,
|
|
410
385
|
formats: {
|
|
411
|
-
individual: RootConfig.entities.
|
|
412
|
-
plural: RootConfig.entities.
|
|
386
|
+
individual: RootConfig.entities.documentType.title,
|
|
387
|
+
plural: RootConfig.entities.documentType.titlePlural,
|
|
413
388
|
searchResult: {
|
|
414
389
|
title: '{{ title }}',
|
|
415
390
|
description: RootConfig.module.title,
|
|
@@ -418,62 +393,34 @@ async function documentFactory(injector) {
|
|
|
418
393
|
plugins: [
|
|
419
394
|
{ name: 'history' },
|
|
420
395
|
{
|
|
421
|
-
name: '
|
|
422
|
-
options: {
|
|
423
|
-
multiple: false,
|
|
424
|
-
field: 'fileId',
|
|
425
|
-
},
|
|
396
|
+
name: 'meta-data-selector'
|
|
426
397
|
},
|
|
427
|
-
{ name: 'meta-data-form', options: { path: 'typeId' } }
|
|
428
398
|
],
|
|
429
|
-
relatedEntities: [
|
|
399
|
+
relatedEntities: [],
|
|
400
|
+
groups: [
|
|
430
401
|
{
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
{
|
|
434
|
-
name: 'documentId',
|
|
435
|
-
operator: {
|
|
436
|
-
type: 'equal',
|
|
437
|
-
},
|
|
438
|
-
value: '{{context.eval("id")}}',
|
|
439
|
-
},
|
|
440
|
-
],
|
|
441
|
-
// hidden: '{{context.eval("toggle")}}',
|
|
442
|
-
actions: [],
|
|
402
|
+
id: 'basic-info',
|
|
403
|
+
title: RootConfig.entities.documentType.title,
|
|
443
404
|
},
|
|
444
|
-
],
|
|
445
|
-
groups: [
|
|
446
405
|
{
|
|
447
|
-
id: '
|
|
448
|
-
title:
|
|
406
|
+
id: 'management',
|
|
407
|
+
title: `@${i18n}:terms.common.management`,
|
|
449
408
|
},
|
|
450
409
|
],
|
|
451
410
|
properties: [
|
|
452
411
|
{
|
|
453
412
|
name: 'name',
|
|
454
413
|
title: '@general:terms.common.name',
|
|
455
|
-
groupId: '
|
|
414
|
+
groupId: 'basic-info',
|
|
456
415
|
options: {
|
|
457
416
|
sort: {
|
|
458
417
|
enabled: true,
|
|
459
418
|
},
|
|
460
|
-
filter: {
|
|
461
|
-
inline: {
|
|
462
|
-
enabled: true,
|
|
463
|
-
},
|
|
464
|
-
advance: {
|
|
465
|
-
enabled: true,
|
|
466
|
-
},
|
|
467
|
-
},
|
|
468
419
|
},
|
|
469
420
|
schema: {
|
|
470
421
|
dataType: 'string',
|
|
471
|
-
readonly: true,
|
|
472
422
|
interface: {
|
|
473
423
|
type: AXPWidgetsCatalog.text,
|
|
474
|
-
options: {
|
|
475
|
-
placeholder: '@general:terms.common.name',
|
|
476
|
-
},
|
|
477
424
|
},
|
|
478
425
|
},
|
|
479
426
|
validations: [
|
|
@@ -483,17 +430,13 @@ async function documentFactory(injector) {
|
|
|
483
430
|
],
|
|
484
431
|
},
|
|
485
432
|
{
|
|
486
|
-
name: '
|
|
487
|
-
title: '@general:terms.common.
|
|
488
|
-
groupId: '
|
|
433
|
+
name: 'title',
|
|
434
|
+
title: '@general:terms.common.title',
|
|
435
|
+
groupId: 'basic-info',
|
|
489
436
|
schema: {
|
|
490
437
|
dataType: 'string',
|
|
491
|
-
readonly: true,
|
|
492
438
|
interface: {
|
|
493
|
-
type: AXPWidgetsCatalog.
|
|
494
|
-
options: {
|
|
495
|
-
entity: `${RootConfig.module.name}.${RootConfig.entities.documentType.name}`,
|
|
496
|
-
},
|
|
439
|
+
type: AXPWidgetsCatalog.text,
|
|
497
440
|
},
|
|
498
441
|
},
|
|
499
442
|
validations: [
|
|
@@ -503,196 +446,130 @@ async function documentFactory(injector) {
|
|
|
503
446
|
],
|
|
504
447
|
},
|
|
505
448
|
{
|
|
506
|
-
name: '
|
|
507
|
-
title: `@${i18n}:terms.
|
|
508
|
-
groupId: '
|
|
449
|
+
name: 'maxSize',
|
|
450
|
+
title: `@${i18n}:terms.document.max-size`,
|
|
451
|
+
groupId: 'basic-info',
|
|
509
452
|
schema: {
|
|
510
453
|
dataType: 'number',
|
|
511
|
-
readonly: true,
|
|
512
454
|
interface: {
|
|
513
|
-
type: AXPWidgetsCatalog.
|
|
514
|
-
options: {
|
|
455
|
+
type: AXPWidgetsCatalog.numberUnit,
|
|
456
|
+
options: {
|
|
457
|
+
textField: 'name',
|
|
458
|
+
valueField: 'value',
|
|
459
|
+
dataSource: [
|
|
460
|
+
{
|
|
461
|
+
name: 'kb',
|
|
462
|
+
value: 'KB',
|
|
463
|
+
calUnit: 1,
|
|
464
|
+
},
|
|
465
|
+
{
|
|
466
|
+
name: 'mb',
|
|
467
|
+
value: 'MB',
|
|
468
|
+
calUnit: 1024,
|
|
469
|
+
},
|
|
470
|
+
{
|
|
471
|
+
name: 'gb',
|
|
472
|
+
value: 'GB',
|
|
473
|
+
calUnit: 1024 * 1024,
|
|
474
|
+
},
|
|
475
|
+
],
|
|
476
|
+
mainUnit: 'kb',
|
|
477
|
+
},
|
|
515
478
|
},
|
|
516
479
|
},
|
|
480
|
+
validations: [
|
|
481
|
+
{
|
|
482
|
+
rule: 'required',
|
|
483
|
+
},
|
|
484
|
+
],
|
|
517
485
|
},
|
|
518
486
|
{
|
|
519
|
-
name: '
|
|
520
|
-
title: `@${i18n}:terms.
|
|
487
|
+
name: 'isEncrypted',
|
|
488
|
+
title: `@${i18n}:terms.document.is-encrypted`,
|
|
489
|
+
groupId: 'basic-info',
|
|
521
490
|
schema: {
|
|
522
|
-
dataType: '
|
|
523
|
-
readonly: true,
|
|
491
|
+
dataType: 'boolean',
|
|
524
492
|
interface: {
|
|
525
|
-
type: AXPWidgetsCatalog.
|
|
526
|
-
options: {},
|
|
493
|
+
type: AXPWidgetsCatalog.toggle,
|
|
527
494
|
},
|
|
528
495
|
},
|
|
529
496
|
},
|
|
530
497
|
{
|
|
531
|
-
name: '
|
|
532
|
-
title: `@${i18n}:terms.
|
|
533
|
-
groupId: '
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
498
|
+
name: 'enableExpiration',
|
|
499
|
+
title: `@${i18n}:terms.document.enable-expiration`,
|
|
500
|
+
groupId: 'management',
|
|
501
|
+
schema: {
|
|
502
|
+
dataType: 'boolean',
|
|
503
|
+
interface: {
|
|
504
|
+
type: AXPWidgetsCatalog.toggle,
|
|
537
505
|
},
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
506
|
+
},
|
|
507
|
+
},
|
|
508
|
+
{
|
|
509
|
+
name: 'requiresReview',
|
|
510
|
+
title: `@${i18n}:terms.document.requires-review`,
|
|
511
|
+
groupId: 'management',
|
|
512
|
+
schema: {
|
|
513
|
+
dataType: 'boolean',
|
|
514
|
+
interface: {
|
|
515
|
+
type: AXPWidgetsCatalog.toggle,
|
|
545
516
|
},
|
|
546
517
|
},
|
|
518
|
+
},
|
|
519
|
+
{
|
|
520
|
+
name: 'enableVersioning',
|
|
521
|
+
title: `@${i18n}:terms.document.enable-versioning`,
|
|
522
|
+
groupId: 'management',
|
|
547
523
|
schema: {
|
|
548
|
-
dataType: '
|
|
549
|
-
readonly: true,
|
|
524
|
+
dataType: 'boolean',
|
|
550
525
|
interface: {
|
|
551
|
-
type: AXPWidgetsCatalog.
|
|
526
|
+
type: AXPWidgetsCatalog.toggle,
|
|
552
527
|
options: {
|
|
553
|
-
|
|
528
|
+
disabled: '{{ !!context.eval("requiresReview") }}',
|
|
554
529
|
},
|
|
530
|
+
triggers: [
|
|
531
|
+
{
|
|
532
|
+
event: "{{ events.context('requiresReview') }}",
|
|
533
|
+
action: "{{ context.set('enableVersioning', true) }}",
|
|
534
|
+
},
|
|
535
|
+
],
|
|
555
536
|
},
|
|
556
537
|
},
|
|
557
538
|
},
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
{
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
}
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
{
|
|
580
|
-
field: 'documentType.requiresReview',
|
|
581
|
-
operator: { type: 'equal' },
|
|
582
|
-
value: true,
|
|
583
|
-
},
|
|
584
|
-
];
|
|
585
|
-
// Check if e.filter has filters array with items
|
|
586
|
-
const hasAdditionalFilters = filter?.filters && Array.isArray(filter.filters) && filter.filters.length > 0;
|
|
587
|
-
// Combine filters if additional filters exist
|
|
588
|
-
const allFilters = hasAdditionalFilters
|
|
589
|
-
? [...baseFilters, ...filter.filters]
|
|
590
|
-
: baseFilters;
|
|
591
|
-
const x = await dataService.query({
|
|
592
|
-
skip: e.skip,
|
|
593
|
-
take: e.take,
|
|
594
|
-
filter: {
|
|
595
|
-
logic: 'and',
|
|
596
|
-
filters: allFilters,
|
|
597
|
-
},
|
|
598
|
-
});
|
|
599
|
-
return x;
|
|
539
|
+
// {
|
|
540
|
+
// name: 'meta',
|
|
541
|
+
// title: `t("metaTitle", { scope: "${i18n}" })`,
|
|
542
|
+
// groupId: 'section',
|
|
543
|
+
// schema: {
|
|
544
|
+
// dataType: 'object',
|
|
545
|
+
// interface: {
|
|
546
|
+
// type: 'meta-selector-editor',
|
|
547
|
+
// },
|
|
548
|
+
// },
|
|
549
|
+
// },
|
|
550
|
+
{
|
|
551
|
+
name: 'type',
|
|
552
|
+
title: `@${i18n}:terms.common.type`,
|
|
553
|
+
groupId: 'basic-info',
|
|
554
|
+
schema: {
|
|
555
|
+
dataType: 'object',
|
|
556
|
+
interface: {
|
|
557
|
+
type: AXPWidgetsCatalog.fileTypeExtension,
|
|
558
|
+
options: {},
|
|
559
|
+
},
|
|
600
560
|
},
|
|
601
|
-
type: AXPEntityQueryType.List,
|
|
602
561
|
},
|
|
603
|
-
|
|
562
|
+
],
|
|
563
|
+
columns: [{ name: 'name' }, { name: 'title' }],
|
|
604
564
|
interfaces: {
|
|
605
565
|
master: {
|
|
606
566
|
create: {
|
|
607
567
|
sections: [
|
|
608
568
|
{
|
|
609
|
-
id: '
|
|
610
|
-
},
|
|
611
|
-
],
|
|
612
|
-
properties: [
|
|
613
|
-
{
|
|
614
|
-
name: 'name',
|
|
615
|
-
layout: {
|
|
616
|
-
positions: {
|
|
617
|
-
lg: {
|
|
618
|
-
colSpan: 6,
|
|
619
|
-
},
|
|
620
|
-
},
|
|
621
|
-
},
|
|
622
|
-
},
|
|
623
|
-
{
|
|
624
|
-
name: 'typeId',
|
|
625
|
-
layout: {
|
|
626
|
-
positions: {
|
|
627
|
-
lg: {
|
|
628
|
-
colSpan: 12,
|
|
629
|
-
},
|
|
630
|
-
},
|
|
631
|
-
},
|
|
569
|
+
id: 'basic-info',
|
|
632
570
|
},
|
|
633
|
-
],
|
|
634
|
-
},
|
|
635
|
-
// update: {
|
|
636
|
-
// sections: [
|
|
637
|
-
// {
|
|
638
|
-
// id: 'section',
|
|
639
|
-
// },
|
|
640
|
-
// ],
|
|
641
|
-
// properties: [
|
|
642
|
-
// {
|
|
643
|
-
// name: 'name',
|
|
644
|
-
// layout: {
|
|
645
|
-
// positions: {
|
|
646
|
-
// lg: {
|
|
647
|
-
// colSpan: 6,
|
|
648
|
-
// },
|
|
649
|
-
// },
|
|
650
|
-
// },
|
|
651
|
-
// },
|
|
652
|
-
// {
|
|
653
|
-
// name: 'type',
|
|
654
|
-
// layout: {
|
|
655
|
-
// positions: {
|
|
656
|
-
// lg: {
|
|
657
|
-
// colSpan: 12,
|
|
658
|
-
// },
|
|
659
|
-
// },
|
|
660
|
-
// },
|
|
661
|
-
// },
|
|
662
|
-
// {
|
|
663
|
-
// name: 'metaData',
|
|
664
|
-
// layout: {
|
|
665
|
-
// positions: {
|
|
666
|
-
// lg: {
|
|
667
|
-
// colSpan: 12,
|
|
668
|
-
// },
|
|
669
|
-
// },
|
|
670
|
-
// },
|
|
671
|
-
// },
|
|
672
|
-
// {
|
|
673
|
-
// name: 'file',
|
|
674
|
-
// layout: {
|
|
675
|
-
// positions: {
|
|
676
|
-
// lg: {
|
|
677
|
-
// colSpan: 12,
|
|
678
|
-
// },
|
|
679
|
-
// },
|
|
680
|
-
// },
|
|
681
|
-
// },
|
|
682
|
-
// ],
|
|
683
|
-
// },
|
|
684
|
-
single: {
|
|
685
|
-
title: '{{title}}',
|
|
686
|
-
sections: [
|
|
687
571
|
{
|
|
688
|
-
id: '
|
|
689
|
-
layout: {
|
|
690
|
-
positions: {
|
|
691
|
-
lg: {
|
|
692
|
-
colSpan: 12,
|
|
693
|
-
},
|
|
694
|
-
},
|
|
695
|
-
},
|
|
572
|
+
id: 'management',
|
|
696
573
|
},
|
|
697
574
|
],
|
|
698
575
|
properties: [
|
|
@@ -707,47 +584,7 @@ async function documentFactory(injector) {
|
|
|
707
584
|
},
|
|
708
585
|
},
|
|
709
586
|
{
|
|
710
|
-
name: '
|
|
711
|
-
layout: {
|
|
712
|
-
positions: {
|
|
713
|
-
lg: {
|
|
714
|
-
colSpan: 6,
|
|
715
|
-
},
|
|
716
|
-
},
|
|
717
|
-
},
|
|
718
|
-
},
|
|
719
|
-
// {
|
|
720
|
-
// name: 'fileId',
|
|
721
|
-
// layout: {
|
|
722
|
-
// positions: {
|
|
723
|
-
// lg: {
|
|
724
|
-
// colSpan: 12,
|
|
725
|
-
// },
|
|
726
|
-
// },
|
|
727
|
-
// },
|
|
728
|
-
// },
|
|
729
|
-
// {
|
|
730
|
-
// name: 'file',
|
|
731
|
-
// layout: {
|
|
732
|
-
// positions: {
|
|
733
|
-
// lg: {
|
|
734
|
-
// colSpan: 12,
|
|
735
|
-
// },
|
|
736
|
-
// },
|
|
737
|
-
// },
|
|
738
|
-
// },
|
|
739
|
-
{
|
|
740
|
-
name: 'status',
|
|
741
|
-
layout: {
|
|
742
|
-
positions: {
|
|
743
|
-
lg: {
|
|
744
|
-
colSpan: 6,
|
|
745
|
-
},
|
|
746
|
-
},
|
|
747
|
-
},
|
|
748
|
-
},
|
|
749
|
-
{
|
|
750
|
-
name: 'version',
|
|
587
|
+
name: 'title',
|
|
751
588
|
layout: {
|
|
752
589
|
positions: {
|
|
753
590
|
lg: {
|
|
@@ -756,2232 +593,72 @@ async function documentFactory(injector) {
|
|
|
756
593
|
},
|
|
757
594
|
},
|
|
758
595
|
},
|
|
759
|
-
],
|
|
760
|
-
actions: [],
|
|
761
|
-
},
|
|
762
|
-
list: {
|
|
763
|
-
actions: [
|
|
764
|
-
{
|
|
765
|
-
title: '@general:actions.detail.title',
|
|
766
|
-
command: 'open-entity',
|
|
767
|
-
priority: 'secondary',
|
|
768
|
-
type: 'view',
|
|
769
|
-
default: true,
|
|
770
|
-
scope: AXPEntityCommandScope.Individual,
|
|
771
|
-
},
|
|
772
|
-
],
|
|
773
|
-
views: [
|
|
774
|
-
createAllQueryView({ sorts: [{ name: 'name', dir: 'asc' }] }),
|
|
775
|
-
createQueryView('Draft', `@${i18n}:terms.workflow.draft`, true, {
|
|
776
|
-
conditions: [
|
|
777
|
-
{
|
|
778
|
-
name: 'status',
|
|
779
|
-
operator: {
|
|
780
|
-
type: 'equal',
|
|
781
|
-
},
|
|
782
|
-
value: 'Draft',
|
|
783
|
-
},
|
|
784
|
-
],
|
|
785
|
-
}),
|
|
786
|
-
createQueryView('PendingReview', `@${i18n}:terms.workflow.pending`, true, {
|
|
787
|
-
conditions: [
|
|
788
|
-
{
|
|
789
|
-
name: 'status',
|
|
790
|
-
operator: {
|
|
791
|
-
type: 'equal',
|
|
792
|
-
},
|
|
793
|
-
value: 'PendingReview',
|
|
794
|
-
},
|
|
795
|
-
],
|
|
796
|
-
}),
|
|
797
|
-
createQueryView('Reviewed', `@${i18n}:terms.workflow.reviewed`, true, {
|
|
798
|
-
conditions: [
|
|
799
|
-
{
|
|
800
|
-
name: 'status',
|
|
801
|
-
operator: {
|
|
802
|
-
type: 'equal',
|
|
803
|
-
},
|
|
804
|
-
value: 'Reviewed',
|
|
805
|
-
},
|
|
806
|
-
],
|
|
807
|
-
}),
|
|
808
|
-
],
|
|
809
|
-
},
|
|
810
|
-
},
|
|
811
|
-
},
|
|
812
|
-
};
|
|
813
|
-
return entityDef;
|
|
814
|
-
}
|
|
815
|
-
|
|
816
|
-
class AXMDocumentManagementDocumentEntityModule {
|
|
817
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMDocumentManagementDocumentEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
818
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.16", ngImport: i0, type: AXMDocumentManagementDocumentEntityModule }); }
|
|
819
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMDocumentManagementDocumentEntityModule, providers: [
|
|
820
|
-
{
|
|
821
|
-
provide: AXMDocumentService,
|
|
822
|
-
useClass: AXMDocumentServiceImpl,
|
|
823
|
-
},
|
|
824
|
-
] }); }
|
|
825
|
-
}
|
|
826
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMDocumentManagementDocumentEntityModule, decorators: [{
|
|
827
|
-
type: NgModule,
|
|
828
|
-
args: [{
|
|
829
|
-
imports: [],
|
|
830
|
-
exports: [],
|
|
831
|
-
declarations: [],
|
|
832
|
-
providers: [
|
|
833
|
-
{
|
|
834
|
-
provide: AXMDocumentService,
|
|
835
|
-
useClass: AXMDocumentServiceImpl,
|
|
836
|
-
},
|
|
837
|
-
],
|
|
838
|
-
}]
|
|
839
|
-
}] });
|
|
840
|
-
|
|
841
|
-
function getNextStatus(options) {
|
|
842
|
-
const { current, requiresReview, reviewFirst, reviewResult, } = options;
|
|
843
|
-
switch (current) {
|
|
844
|
-
case 'Draft':
|
|
845
|
-
if (requiresReview)
|
|
846
|
-
return 'PendingReview';
|
|
847
|
-
return 'Completed';
|
|
848
|
-
case 'PendingReview':
|
|
849
|
-
if (reviewResult === 'rejected')
|
|
850
|
-
return 'Rejected';
|
|
851
|
-
if (reviewResult === 'approved') {
|
|
852
|
-
return 'Completed';
|
|
853
|
-
}
|
|
854
|
-
return null;
|
|
855
|
-
case 'Reviewed':
|
|
856
|
-
return 'Completed';
|
|
857
|
-
default:
|
|
858
|
-
return null;
|
|
859
|
-
}
|
|
860
|
-
}
|
|
861
|
-
const AXMDocumentWorkflowTransitionMap = {
|
|
862
|
-
Draft: ['PendingReview', 'Completed'],
|
|
863
|
-
PendingReview: ['Reviewed', 'Rejected'],
|
|
864
|
-
Rejected: ['PendingReview'], // پس از اصلاح
|
|
865
|
-
Reviewed: ['Completed', 'Distributed'],
|
|
866
|
-
Distributed: ['Completed'],
|
|
867
|
-
Completed: [],
|
|
868
|
-
};
|
|
869
|
-
function canTransition(from, to) {
|
|
870
|
-
return AXMDocumentWorkflowTransitionMap[from]?.includes(to) ?? false;
|
|
871
|
-
}
|
|
872
|
-
|
|
873
|
-
async function documentTypeFactory(injector) {
|
|
874
|
-
const i18n = RootConfig.config.i18n;
|
|
875
|
-
const entityDef = {
|
|
876
|
-
module: RootConfig.module.name,
|
|
877
|
-
name: RootConfig.entities.documentType.name,
|
|
878
|
-
title: RootConfig.entities.documentType.title,
|
|
879
|
-
formats: {
|
|
880
|
-
individual: RootConfig.entities.documentType.title,
|
|
881
|
-
plural: RootConfig.entities.documentType.titlePlural,
|
|
882
|
-
searchResult: {
|
|
883
|
-
title: '{{ title }}',
|
|
884
|
-
description: RootConfig.module.title,
|
|
885
|
-
},
|
|
886
|
-
},
|
|
887
|
-
plugins: [
|
|
888
|
-
{ name: 'history' },
|
|
889
|
-
{
|
|
890
|
-
name: 'meta-data-selector'
|
|
891
|
-
},
|
|
892
|
-
],
|
|
893
|
-
relatedEntities: [],
|
|
894
|
-
groups: [
|
|
895
|
-
{
|
|
896
|
-
id: 'basic-info',
|
|
897
|
-
title: RootConfig.entities.documentType.title,
|
|
898
|
-
},
|
|
899
|
-
{
|
|
900
|
-
id: 'management',
|
|
901
|
-
title: `@${i18n}:terms.common.management`,
|
|
902
|
-
},
|
|
903
|
-
],
|
|
904
|
-
properties: [
|
|
905
|
-
{
|
|
906
|
-
name: 'name',
|
|
907
|
-
title: '@general:terms.common.name',
|
|
908
|
-
groupId: 'basic-info',
|
|
909
|
-
options: {
|
|
910
|
-
sort: {
|
|
911
|
-
enabled: true,
|
|
912
|
-
},
|
|
913
|
-
},
|
|
914
|
-
schema: {
|
|
915
|
-
dataType: 'string',
|
|
916
|
-
interface: {
|
|
917
|
-
type: AXPWidgetsCatalog.text,
|
|
918
|
-
},
|
|
919
|
-
},
|
|
920
|
-
validations: [
|
|
921
|
-
{
|
|
922
|
-
rule: 'required',
|
|
923
|
-
},
|
|
924
|
-
],
|
|
925
|
-
},
|
|
926
|
-
{
|
|
927
|
-
name: 'title',
|
|
928
|
-
title: '@general:terms.common.title',
|
|
929
|
-
groupId: 'basic-info',
|
|
930
|
-
schema: {
|
|
931
|
-
dataType: 'string',
|
|
932
|
-
interface: {
|
|
933
|
-
type: AXPWidgetsCatalog.text,
|
|
934
|
-
},
|
|
935
|
-
},
|
|
936
|
-
validations: [
|
|
937
|
-
{
|
|
938
|
-
rule: 'required',
|
|
939
|
-
},
|
|
940
|
-
],
|
|
941
|
-
},
|
|
942
|
-
{
|
|
943
|
-
name: 'maxSize',
|
|
944
|
-
title: `@${i18n}:terms.document.max-size`,
|
|
945
|
-
groupId: 'basic-info',
|
|
946
|
-
schema: {
|
|
947
|
-
dataType: 'number',
|
|
948
|
-
interface: {
|
|
949
|
-
type: AXPWidgetsCatalog.numberUnit,
|
|
950
|
-
options: {
|
|
951
|
-
textField: 'name',
|
|
952
|
-
valueField: 'value',
|
|
953
|
-
dataSource: [
|
|
954
|
-
{
|
|
955
|
-
name: 'kb',
|
|
956
|
-
value: 'KB',
|
|
957
|
-
calUnit: 1,
|
|
958
|
-
},
|
|
959
|
-
{
|
|
960
|
-
name: 'mb',
|
|
961
|
-
value: 'MB',
|
|
962
|
-
calUnit: 1024,
|
|
963
|
-
},
|
|
964
|
-
{
|
|
965
|
-
name: 'gb',
|
|
966
|
-
value: 'GB',
|
|
967
|
-
calUnit: 1024 * 1024,
|
|
968
|
-
},
|
|
969
|
-
],
|
|
970
|
-
mainUnit: 'kb',
|
|
971
|
-
},
|
|
972
|
-
},
|
|
973
|
-
},
|
|
974
|
-
validations: [
|
|
975
|
-
{
|
|
976
|
-
rule: 'required',
|
|
977
|
-
},
|
|
978
|
-
],
|
|
979
|
-
},
|
|
980
|
-
{
|
|
981
|
-
name: 'isEncrypted',
|
|
982
|
-
title: `@${i18n}:terms.document.is-encrypted`,
|
|
983
|
-
groupId: 'basic-info',
|
|
984
|
-
schema: {
|
|
985
|
-
dataType: 'boolean',
|
|
986
|
-
interface: {
|
|
987
|
-
type: AXPWidgetsCatalog.toggle,
|
|
988
|
-
},
|
|
989
|
-
},
|
|
990
|
-
},
|
|
991
|
-
{
|
|
992
|
-
name: 'enableExpiration',
|
|
993
|
-
title: `@${i18n}:terms.document.enable-expiration`,
|
|
994
|
-
groupId: 'management',
|
|
995
|
-
schema: {
|
|
996
|
-
dataType: 'boolean',
|
|
997
|
-
interface: {
|
|
998
|
-
type: AXPWidgetsCatalog.toggle,
|
|
999
|
-
},
|
|
1000
|
-
},
|
|
1001
|
-
},
|
|
1002
|
-
{
|
|
1003
|
-
name: 'requiresReview',
|
|
1004
|
-
title: `@${i18n}:terms.document.requires-review`,
|
|
1005
|
-
groupId: 'management',
|
|
1006
|
-
schema: {
|
|
1007
|
-
dataType: 'boolean',
|
|
1008
|
-
interface: {
|
|
1009
|
-
type: AXPWidgetsCatalog.toggle,
|
|
1010
|
-
},
|
|
1011
|
-
},
|
|
1012
|
-
},
|
|
1013
|
-
{
|
|
1014
|
-
name: 'enableVersioning',
|
|
1015
|
-
title: `@${i18n}:terms.document.enable-versioning`,
|
|
1016
|
-
groupId: 'management',
|
|
1017
|
-
schema: {
|
|
1018
|
-
dataType: 'boolean',
|
|
1019
|
-
interface: {
|
|
1020
|
-
type: AXPWidgetsCatalog.toggle,
|
|
1021
|
-
options: {
|
|
1022
|
-
disabled: '{{ !!context.eval("requiresReview") }}',
|
|
1023
|
-
},
|
|
1024
|
-
triggers: [
|
|
1025
|
-
{
|
|
1026
|
-
event: "{{ events.context('requiresReview') }}",
|
|
1027
|
-
action: "{{ context.set('enableVersioning', true) }}",
|
|
1028
|
-
},
|
|
1029
|
-
],
|
|
1030
|
-
},
|
|
1031
|
-
},
|
|
1032
|
-
},
|
|
1033
|
-
// {
|
|
1034
|
-
// name: 'meta',
|
|
1035
|
-
// title: `t("metaTitle", { scope: "${i18n}" })`,
|
|
1036
|
-
// groupId: 'section',
|
|
1037
|
-
// schema: {
|
|
1038
|
-
// dataType: 'object',
|
|
1039
|
-
// interface: {
|
|
1040
|
-
// type: 'meta-selector-editor',
|
|
1041
|
-
// },
|
|
1042
|
-
// },
|
|
1043
|
-
// },
|
|
1044
|
-
{
|
|
1045
|
-
name: 'type',
|
|
1046
|
-
title: `@${i18n}:terms.common.type`,
|
|
1047
|
-
groupId: 'basic-info',
|
|
1048
|
-
schema: {
|
|
1049
|
-
dataType: 'object',
|
|
1050
|
-
interface: {
|
|
1051
|
-
type: AXPWidgetsCatalog.fileTypeExtension,
|
|
1052
|
-
options: {},
|
|
1053
|
-
},
|
|
1054
|
-
},
|
|
1055
|
-
},
|
|
1056
|
-
],
|
|
1057
|
-
columns: [{ name: 'name' }, { name: 'title' }],
|
|
1058
|
-
interfaces: {
|
|
1059
|
-
master: {
|
|
1060
|
-
create: {
|
|
1061
|
-
sections: [
|
|
1062
|
-
{
|
|
1063
|
-
id: 'basic-info',
|
|
1064
|
-
},
|
|
1065
|
-
{
|
|
1066
|
-
id: 'management',
|
|
1067
|
-
},
|
|
1068
|
-
],
|
|
1069
|
-
properties: [
|
|
1070
|
-
{
|
|
1071
|
-
name: 'name',
|
|
1072
|
-
layout: {
|
|
1073
|
-
positions: {
|
|
1074
|
-
lg: {
|
|
1075
|
-
colSpan: 6,
|
|
1076
|
-
},
|
|
1077
|
-
},
|
|
1078
|
-
},
|
|
1079
|
-
},
|
|
1080
|
-
{
|
|
1081
|
-
name: 'title',
|
|
1082
|
-
layout: {
|
|
1083
|
-
positions: {
|
|
1084
|
-
lg: {
|
|
1085
|
-
colSpan: 6,
|
|
1086
|
-
},
|
|
1087
|
-
},
|
|
1088
|
-
},
|
|
1089
|
-
},
|
|
1090
|
-
{
|
|
1091
|
-
name: 'maxSize',
|
|
1092
|
-
layout: {
|
|
1093
|
-
positions: {
|
|
1094
|
-
lg: {
|
|
1095
|
-
colSpan: 6,
|
|
1096
|
-
},
|
|
1097
|
-
},
|
|
1098
|
-
},
|
|
1099
|
-
},
|
|
1100
|
-
{
|
|
1101
|
-
name: 'isEncrypted',
|
|
1102
|
-
layout: {
|
|
1103
|
-
positions: {
|
|
1104
|
-
lg: {
|
|
1105
|
-
colSpan: 6,
|
|
1106
|
-
},
|
|
1107
|
-
},
|
|
1108
|
-
},
|
|
1109
|
-
},
|
|
1110
|
-
{
|
|
1111
|
-
name: 'enableExpiration',
|
|
1112
|
-
layout: {
|
|
1113
|
-
positions: {
|
|
1114
|
-
lg: {
|
|
1115
|
-
colSpan: 6,
|
|
1116
|
-
},
|
|
1117
|
-
},
|
|
1118
|
-
},
|
|
1119
|
-
},
|
|
1120
|
-
{
|
|
1121
|
-
name: 'requiresReview',
|
|
1122
|
-
layout: {
|
|
1123
|
-
positions: {
|
|
1124
|
-
lg: {
|
|
1125
|
-
colSpan: 6,
|
|
1126
|
-
},
|
|
1127
|
-
},
|
|
1128
|
-
},
|
|
1129
|
-
},
|
|
1130
|
-
{
|
|
1131
|
-
name: 'enableVersioning',
|
|
1132
|
-
layout: {
|
|
1133
|
-
positions: {
|
|
1134
|
-
lg: {
|
|
1135
|
-
colSpan: 6,
|
|
1136
|
-
},
|
|
1137
|
-
},
|
|
1138
|
-
},
|
|
1139
|
-
},
|
|
1140
|
-
// {
|
|
1141
|
-
// name: 'meta',
|
|
1142
|
-
// layout: {
|
|
1143
|
-
// positions: {
|
|
1144
|
-
// lg: {
|
|
1145
|
-
// colSpan: 12,
|
|
1146
|
-
// },
|
|
1147
|
-
// },
|
|
1148
|
-
// },
|
|
1149
|
-
// },
|
|
1150
|
-
{
|
|
1151
|
-
name: 'type',
|
|
1152
|
-
layout: {
|
|
1153
|
-
positions: {
|
|
1154
|
-
lg: {
|
|
1155
|
-
colSpan: 12,
|
|
1156
|
-
},
|
|
1157
|
-
},
|
|
1158
|
-
},
|
|
1159
|
-
},
|
|
1160
|
-
],
|
|
1161
|
-
},
|
|
1162
|
-
update: {
|
|
1163
|
-
sections: [
|
|
1164
|
-
{
|
|
1165
|
-
id: 'basic-info',
|
|
1166
|
-
},
|
|
1167
|
-
{
|
|
1168
|
-
id: 'management',
|
|
1169
|
-
},
|
|
1170
|
-
],
|
|
1171
|
-
properties: [
|
|
1172
|
-
{
|
|
1173
|
-
name: 'name',
|
|
1174
|
-
layout: {
|
|
1175
|
-
positions: {
|
|
1176
|
-
lg: {
|
|
1177
|
-
colSpan: 6,
|
|
1178
|
-
},
|
|
1179
|
-
},
|
|
1180
|
-
},
|
|
1181
|
-
},
|
|
1182
|
-
{
|
|
1183
|
-
name: 'title',
|
|
1184
|
-
layout: {
|
|
1185
|
-
positions: {
|
|
1186
|
-
lg: {
|
|
1187
|
-
colSpan: 6,
|
|
1188
|
-
},
|
|
1189
|
-
},
|
|
1190
|
-
},
|
|
1191
|
-
},
|
|
1192
|
-
{
|
|
1193
|
-
name: 'maxSize',
|
|
1194
|
-
layout: {
|
|
1195
|
-
positions: {
|
|
1196
|
-
lg: {
|
|
1197
|
-
colSpan: 6,
|
|
1198
|
-
},
|
|
1199
|
-
},
|
|
1200
|
-
},
|
|
1201
|
-
},
|
|
1202
|
-
{
|
|
1203
|
-
name: 'isEncrypted',
|
|
1204
|
-
layout: {
|
|
1205
|
-
positions: {
|
|
1206
|
-
lg: {
|
|
1207
|
-
colSpan: 6,
|
|
1208
|
-
},
|
|
1209
|
-
},
|
|
1210
|
-
},
|
|
1211
|
-
},
|
|
1212
|
-
{
|
|
1213
|
-
name: 'enableExpiration',
|
|
1214
|
-
layout: {
|
|
1215
|
-
positions: {
|
|
1216
|
-
lg: {
|
|
1217
|
-
colSpan: 6,
|
|
1218
|
-
},
|
|
1219
|
-
},
|
|
1220
|
-
},
|
|
1221
|
-
},
|
|
1222
|
-
{
|
|
1223
|
-
name: 'requiresReview',
|
|
1224
|
-
layout: {
|
|
1225
|
-
positions: {
|
|
1226
|
-
lg: {
|
|
1227
|
-
colSpan: 6,
|
|
1228
|
-
},
|
|
1229
|
-
},
|
|
1230
|
-
},
|
|
1231
|
-
},
|
|
1232
|
-
{
|
|
1233
|
-
name: 'enableVersioning',
|
|
1234
|
-
layout: {
|
|
1235
|
-
positions: {
|
|
1236
|
-
lg: {
|
|
1237
|
-
colSpan: 6,
|
|
1238
|
-
},
|
|
1239
|
-
},
|
|
1240
|
-
},
|
|
1241
|
-
},
|
|
1242
|
-
{
|
|
1243
|
-
name: 'type',
|
|
1244
|
-
layout: {
|
|
1245
|
-
positions: {
|
|
1246
|
-
lg: {
|
|
1247
|
-
colSpan: 12,
|
|
1248
|
-
},
|
|
1249
|
-
},
|
|
1250
|
-
},
|
|
1251
|
-
},
|
|
1252
|
-
],
|
|
1253
|
-
},
|
|
1254
|
-
single: {
|
|
1255
|
-
title: '{{title}}',
|
|
1256
|
-
sections: [
|
|
1257
|
-
{
|
|
1258
|
-
id: 'basic-info',
|
|
1259
|
-
layout: {
|
|
1260
|
-
positions: {
|
|
1261
|
-
lg: {
|
|
1262
|
-
colSpan: 12,
|
|
1263
|
-
},
|
|
1264
|
-
},
|
|
1265
|
-
},
|
|
1266
|
-
},
|
|
1267
|
-
{
|
|
1268
|
-
id: 'management',
|
|
1269
|
-
layout: {
|
|
1270
|
-
positions: {
|
|
1271
|
-
lg: {
|
|
1272
|
-
colSpan: 12,
|
|
1273
|
-
},
|
|
1274
|
-
},
|
|
1275
|
-
},
|
|
1276
|
-
},
|
|
1277
|
-
],
|
|
1278
|
-
properties: [
|
|
1279
|
-
{
|
|
1280
|
-
name: 'name',
|
|
1281
|
-
layout: {
|
|
1282
|
-
positions: {
|
|
1283
|
-
lg: {
|
|
1284
|
-
colSpan: 6,
|
|
1285
|
-
},
|
|
1286
|
-
},
|
|
1287
|
-
},
|
|
1288
|
-
},
|
|
1289
|
-
{
|
|
1290
|
-
name: 'title',
|
|
1291
|
-
layout: {
|
|
1292
|
-
positions: {
|
|
1293
|
-
lg: {
|
|
1294
|
-
colSpan: 6,
|
|
1295
|
-
},
|
|
1296
|
-
},
|
|
1297
|
-
},
|
|
1298
|
-
},
|
|
1299
|
-
{
|
|
1300
|
-
name: 'maxSize',
|
|
1301
|
-
layout: {
|
|
1302
|
-
positions: {
|
|
1303
|
-
lg: {
|
|
1304
|
-
colSpan: 6,
|
|
1305
|
-
},
|
|
1306
|
-
},
|
|
1307
|
-
},
|
|
1308
|
-
},
|
|
1309
|
-
{
|
|
1310
|
-
name: 'isEncrypted',
|
|
1311
|
-
layout: {
|
|
1312
|
-
positions: {
|
|
1313
|
-
lg: {
|
|
1314
|
-
colSpan: 6,
|
|
1315
|
-
},
|
|
1316
|
-
},
|
|
1317
|
-
},
|
|
1318
|
-
},
|
|
1319
|
-
{
|
|
1320
|
-
name: 'enableExpiration',
|
|
1321
|
-
layout: {
|
|
1322
|
-
positions: {
|
|
1323
|
-
lg: {
|
|
1324
|
-
colSpan: 6,
|
|
1325
|
-
},
|
|
1326
|
-
},
|
|
1327
|
-
},
|
|
1328
|
-
},
|
|
1329
|
-
{
|
|
1330
|
-
name: 'requiresReview',
|
|
1331
|
-
layout: {
|
|
1332
|
-
positions: {
|
|
1333
|
-
lg: {
|
|
1334
|
-
colSpan: 6,
|
|
1335
|
-
},
|
|
1336
|
-
},
|
|
1337
|
-
},
|
|
1338
|
-
},
|
|
1339
|
-
{
|
|
1340
|
-
name: 'enableVersioning',
|
|
1341
|
-
layout: {
|
|
1342
|
-
positions: {
|
|
1343
|
-
lg: {
|
|
1344
|
-
colSpan: 6,
|
|
1345
|
-
},
|
|
1346
|
-
},
|
|
1347
|
-
},
|
|
1348
|
-
},
|
|
1349
|
-
// {
|
|
1350
|
-
// name: 'meta',
|
|
1351
|
-
// layout: {
|
|
1352
|
-
// positions: {
|
|
1353
|
-
// lg: {
|
|
1354
|
-
// colSpan: 12,
|
|
1355
|
-
// },
|
|
1356
|
-
// },
|
|
1357
|
-
// },
|
|
1358
|
-
// },
|
|
1359
|
-
{
|
|
1360
|
-
name: 'type',
|
|
1361
|
-
layout: {
|
|
1362
|
-
positions: {
|
|
1363
|
-
lg: {
|
|
1364
|
-
colSpan: 12,
|
|
1365
|
-
},
|
|
1366
|
-
},
|
|
1367
|
-
},
|
|
1368
|
-
},
|
|
1369
|
-
],
|
|
1370
|
-
actions: [...entityMasterRecordActions()],
|
|
1371
|
-
},
|
|
1372
|
-
list: {
|
|
1373
|
-
actions: [...entityMasterCrudActions({ edit: true })],
|
|
1374
|
-
views: [createAllQueryView()],
|
|
1375
|
-
},
|
|
1376
|
-
},
|
|
1377
|
-
},
|
|
1378
|
-
};
|
|
1379
|
-
return entityDef;
|
|
1380
|
-
}
|
|
1381
|
-
|
|
1382
|
-
class AXMDocumentTypeService extends AXMEntityCrudServiceImpl {
|
|
1383
|
-
}
|
|
1384
|
-
class AXMDocumentTypeServiceImpl extends AXMDocumentTypeService {
|
|
1385
|
-
constructor() {
|
|
1386
|
-
super(`${RootConfig.module.name}.${RootConfig.entities.documentType.name}`);
|
|
1387
|
-
}
|
|
1388
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMDocumentTypeServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
1389
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMDocumentTypeServiceImpl }); }
|
|
1390
|
-
}
|
|
1391
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMDocumentTypeServiceImpl, decorators: [{
|
|
1392
|
-
type: Injectable
|
|
1393
|
-
}], ctorParameters: () => [] });
|
|
1394
|
-
|
|
1395
|
-
class AXMDocumentManagementDocumentTypeEntityModule {
|
|
1396
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMDocumentManagementDocumentTypeEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
1397
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.16", ngImport: i0, type: AXMDocumentManagementDocumentTypeEntityModule }); }
|
|
1398
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMDocumentManagementDocumentTypeEntityModule, providers: [
|
|
1399
|
-
{
|
|
1400
|
-
provide: AXMDocumentTypeService,
|
|
1401
|
-
useClass: AXMDocumentTypeServiceImpl,
|
|
1402
|
-
},
|
|
1403
|
-
] }); }
|
|
1404
|
-
}
|
|
1405
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMDocumentManagementDocumentTypeEntityModule, decorators: [{
|
|
1406
|
-
type: NgModule,
|
|
1407
|
-
args: [{
|
|
1408
|
-
imports: [],
|
|
1409
|
-
exports: [],
|
|
1410
|
-
declarations: [],
|
|
1411
|
-
providers: [
|
|
1412
|
-
{
|
|
1413
|
-
provide: AXMDocumentTypeService,
|
|
1414
|
-
useClass: AXMDocumentTypeServiceImpl,
|
|
1415
|
-
},
|
|
1416
|
-
],
|
|
1417
|
-
}]
|
|
1418
|
-
}] });
|
|
1419
|
-
|
|
1420
|
-
async function documentTypeMetaDefinitionfactory(injector) {
|
|
1421
|
-
const entityDef = {
|
|
1422
|
-
module: RootConfig.module.name,
|
|
1423
|
-
name: RootConfig.entities.document.name,
|
|
1424
|
-
title: RootConfig.entities.document.title,
|
|
1425
|
-
formats: {
|
|
1426
|
-
individual: RootConfig.entities.document.title,
|
|
1427
|
-
plural: RootConfig.entities.document.titlePlural,
|
|
1428
|
-
searchResult: {
|
|
1429
|
-
title: '{{ title }}',
|
|
1430
|
-
description: RootConfig.module.title,
|
|
1431
|
-
},
|
|
1432
|
-
},
|
|
1433
|
-
relatedEntities: [],
|
|
1434
|
-
groups: [
|
|
1435
|
-
{
|
|
1436
|
-
id: 'section',
|
|
1437
|
-
title: RootConfig.entities.document.title,
|
|
1438
|
-
},
|
|
1439
|
-
],
|
|
1440
|
-
properties: [
|
|
1441
|
-
{
|
|
1442
|
-
name: 'name',
|
|
1443
|
-
title: '@general:terms.common.name',
|
|
1444
|
-
groupId: 'section',
|
|
1445
|
-
options: {
|
|
1446
|
-
sort: {
|
|
1447
|
-
enabled: true,
|
|
1448
|
-
},
|
|
1449
|
-
},
|
|
1450
|
-
schema: {
|
|
1451
|
-
dataType: 'string',
|
|
1452
|
-
interface: {
|
|
1453
|
-
type: AXPWidgetsCatalog.text,
|
|
1454
|
-
},
|
|
1455
|
-
},
|
|
1456
|
-
validations: [
|
|
1457
|
-
{
|
|
1458
|
-
rule: 'required',
|
|
1459
|
-
},
|
|
1460
|
-
],
|
|
1461
|
-
},
|
|
1462
|
-
{
|
|
1463
|
-
name: 'title',
|
|
1464
|
-
title: '@general:terms.common.title',
|
|
1465
|
-
groupId: 'section',
|
|
1466
|
-
schema: {
|
|
1467
|
-
dataType: 'string',
|
|
1468
|
-
interface: {
|
|
1469
|
-
type: AXPWidgetsCatalog.text,
|
|
1470
|
-
},
|
|
1471
|
-
},
|
|
1472
|
-
validations: [
|
|
1473
|
-
{
|
|
1474
|
-
rule: 'required',
|
|
1475
|
-
},
|
|
1476
|
-
],
|
|
1477
|
-
},
|
|
1478
|
-
],
|
|
1479
|
-
columns: [{ name: 'name' }, { name: 'title' }],
|
|
1480
|
-
interfaces: {
|
|
1481
|
-
master: {
|
|
1482
|
-
create: {
|
|
1483
|
-
sections: [
|
|
1484
|
-
{
|
|
1485
|
-
id: 'section',
|
|
1486
|
-
},
|
|
1487
|
-
],
|
|
1488
|
-
properties: [
|
|
1489
|
-
{
|
|
1490
|
-
name: 'name',
|
|
1491
|
-
layout: {
|
|
1492
|
-
positions: {
|
|
1493
|
-
lg: {
|
|
1494
|
-
colSpan: 6,
|
|
1495
|
-
},
|
|
1496
|
-
},
|
|
1497
|
-
},
|
|
1498
|
-
},
|
|
1499
|
-
{
|
|
1500
|
-
name: 'title',
|
|
1501
|
-
layout: {
|
|
1502
|
-
positions: {
|
|
1503
|
-
lg: {
|
|
1504
|
-
colSpan: 6,
|
|
1505
|
-
},
|
|
1506
|
-
},
|
|
1507
|
-
},
|
|
1508
|
-
},
|
|
1509
|
-
],
|
|
1510
|
-
},
|
|
1511
|
-
update: {
|
|
1512
|
-
sections: [
|
|
1513
|
-
{
|
|
1514
|
-
id: 'section',
|
|
1515
|
-
},
|
|
1516
|
-
],
|
|
1517
|
-
properties: [
|
|
1518
|
-
{
|
|
1519
|
-
name: 'name',
|
|
1520
|
-
layout: {
|
|
1521
|
-
positions: {
|
|
1522
|
-
lg: {
|
|
1523
|
-
colSpan: 6,
|
|
1524
|
-
},
|
|
1525
|
-
},
|
|
1526
|
-
},
|
|
1527
|
-
},
|
|
1528
|
-
{
|
|
1529
|
-
name: 'title',
|
|
1530
|
-
layout: {
|
|
1531
|
-
positions: {
|
|
1532
|
-
lg: {
|
|
1533
|
-
colSpan: 6,
|
|
1534
|
-
},
|
|
1535
|
-
},
|
|
1536
|
-
},
|
|
1537
|
-
},
|
|
1538
|
-
],
|
|
1539
|
-
},
|
|
1540
|
-
single: {
|
|
1541
|
-
title: '{{title}}',
|
|
1542
|
-
sections: [
|
|
1543
|
-
{
|
|
1544
|
-
id: 'section',
|
|
1545
|
-
layout: {
|
|
1546
|
-
positions: {
|
|
1547
|
-
lg: {
|
|
1548
|
-
colSpan: 12,
|
|
1549
|
-
},
|
|
1550
|
-
},
|
|
1551
|
-
},
|
|
1552
|
-
},
|
|
1553
|
-
],
|
|
1554
|
-
properties: [
|
|
1555
|
-
{
|
|
1556
|
-
name: 'name',
|
|
1557
|
-
layout: {
|
|
1558
|
-
positions: {
|
|
1559
|
-
lg: {
|
|
1560
|
-
colSpan: 6,
|
|
1561
|
-
},
|
|
1562
|
-
},
|
|
1563
|
-
},
|
|
1564
|
-
},
|
|
1565
|
-
{
|
|
1566
|
-
name: 'title',
|
|
1567
|
-
layout: {
|
|
1568
|
-
positions: {
|
|
1569
|
-
lg: {
|
|
1570
|
-
colSpan: 6,
|
|
1571
|
-
},
|
|
1572
|
-
},
|
|
1573
|
-
},
|
|
1574
|
-
},
|
|
1575
|
-
],
|
|
1576
|
-
actions: [...entityMasterRecordActions()],
|
|
1577
|
-
},
|
|
1578
|
-
list: {
|
|
1579
|
-
actions: [...entityMasterCrudActions()],
|
|
1580
|
-
views: [createAllQueryView({ sorts: [{ name: 'title', dir: 'asc' }] })],
|
|
1581
|
-
},
|
|
1582
|
-
},
|
|
1583
|
-
},
|
|
1584
|
-
};
|
|
1585
|
-
return entityDef;
|
|
1586
|
-
}
|
|
1587
|
-
|
|
1588
|
-
class AXMDocumentManagementDocumentTypeMetaDefinitionEntityService extends AXMEntityCrudServiceImpl {
|
|
1589
|
-
}
|
|
1590
|
-
class AXMDocumentManagementDocumentTypeMetaDefinitionEntityServiceImpl extends AXMDocumentManagementDocumentTypeMetaDefinitionEntityService {
|
|
1591
|
-
constructor() {
|
|
1592
|
-
super(`${RootConfig.module.name}.${RootConfig.entities.documentTypeMetaDefinition}`);
|
|
1593
|
-
}
|
|
1594
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaDefinitionEntityServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
1595
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaDefinitionEntityServiceImpl }); }
|
|
1596
|
-
}
|
|
1597
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaDefinitionEntityServiceImpl, decorators: [{
|
|
1598
|
-
type: Injectable
|
|
1599
|
-
}], ctorParameters: () => [] });
|
|
1600
|
-
|
|
1601
|
-
class AXMDocumentManagementDocumentTypeMetaDefinitionEntityModule {
|
|
1602
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaDefinitionEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
1603
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.16", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaDefinitionEntityModule }); }
|
|
1604
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaDefinitionEntityModule, providers: [
|
|
1605
|
-
{
|
|
1606
|
-
provide: AXMDocumentManagementDocumentTypeMetaDefinitionEntityService,
|
|
1607
|
-
useClass: AXMDocumentManagementDocumentTypeMetaDefinitionEntityServiceImpl,
|
|
1608
|
-
},
|
|
1609
|
-
] }); }
|
|
1610
|
-
}
|
|
1611
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaDefinitionEntityModule, decorators: [{
|
|
1612
|
-
type: NgModule,
|
|
1613
|
-
args: [{
|
|
1614
|
-
imports: [],
|
|
1615
|
-
exports: [],
|
|
1616
|
-
declarations: [],
|
|
1617
|
-
providers: [
|
|
1618
|
-
{
|
|
1619
|
-
provide: AXMDocumentManagementDocumentTypeMetaDefinitionEntityService,
|
|
1620
|
-
useClass: AXMDocumentManagementDocumentTypeMetaDefinitionEntityServiceImpl,
|
|
1621
|
-
},
|
|
1622
|
-
],
|
|
1623
|
-
}]
|
|
1624
|
-
}] });
|
|
1625
|
-
|
|
1626
|
-
async function documentTypeMetaValueFactory(injector) {
|
|
1627
|
-
const entityDef = {
|
|
1628
|
-
module: RootConfig.module.name,
|
|
1629
|
-
name: RootConfig.entities.document.name,
|
|
1630
|
-
title: RootConfig.entities.document.title,
|
|
1631
|
-
formats: {
|
|
1632
|
-
individual: RootConfig.entities.document.title,
|
|
1633
|
-
plural: RootConfig.entities.document.titlePlural,
|
|
1634
|
-
searchResult: {
|
|
1635
|
-
title: '{{ title }}',
|
|
1636
|
-
description: RootConfig.module.title,
|
|
1637
|
-
},
|
|
1638
|
-
},
|
|
1639
|
-
relatedEntities: [],
|
|
1640
|
-
groups: [
|
|
1641
|
-
{
|
|
1642
|
-
id: 'section',
|
|
1643
|
-
title: RootConfig.entities.document.title,
|
|
1644
|
-
},
|
|
1645
|
-
],
|
|
1646
|
-
properties: [
|
|
1647
|
-
{
|
|
1648
|
-
name: 'name',
|
|
1649
|
-
title: '@general:terms.common.name',
|
|
1650
|
-
groupId: 'section',
|
|
1651
|
-
options: {
|
|
1652
|
-
sort: {
|
|
1653
|
-
enabled: true,
|
|
1654
|
-
},
|
|
1655
|
-
},
|
|
1656
|
-
schema: {
|
|
1657
|
-
dataType: 'string',
|
|
1658
|
-
interface: {
|
|
1659
|
-
type: AXPWidgetsCatalog.text,
|
|
1660
|
-
},
|
|
1661
|
-
},
|
|
1662
|
-
validations: [
|
|
1663
|
-
{
|
|
1664
|
-
rule: 'required',
|
|
1665
|
-
},
|
|
1666
|
-
],
|
|
1667
|
-
},
|
|
1668
|
-
{
|
|
1669
|
-
name: 'title',
|
|
1670
|
-
title: '@general:terms.common.title',
|
|
1671
|
-
groupId: 'section',
|
|
1672
|
-
schema: {
|
|
1673
|
-
dataType: 'string',
|
|
1674
|
-
interface: {
|
|
1675
|
-
type: AXPWidgetsCatalog.text,
|
|
1676
|
-
},
|
|
1677
|
-
},
|
|
1678
|
-
validations: [
|
|
1679
|
-
{
|
|
1680
|
-
rule: 'required',
|
|
1681
|
-
},
|
|
1682
|
-
],
|
|
1683
|
-
},
|
|
1684
|
-
],
|
|
1685
|
-
columns: [{ name: 'name' }, { name: 'title' }],
|
|
1686
|
-
interfaces: {
|
|
1687
|
-
master: {
|
|
1688
|
-
create: {
|
|
1689
|
-
sections: [
|
|
1690
|
-
{
|
|
1691
|
-
id: 'section',
|
|
1692
|
-
},
|
|
1693
|
-
],
|
|
1694
|
-
properties: [
|
|
1695
|
-
{
|
|
1696
|
-
name: 'name',
|
|
1697
|
-
layout: {
|
|
1698
|
-
positions: {
|
|
1699
|
-
lg: {
|
|
1700
|
-
colSpan: 6,
|
|
1701
|
-
},
|
|
1702
|
-
},
|
|
1703
|
-
},
|
|
1704
|
-
},
|
|
1705
|
-
{
|
|
1706
|
-
name: 'title',
|
|
1707
|
-
layout: {
|
|
1708
|
-
positions: {
|
|
1709
|
-
lg: {
|
|
1710
|
-
colSpan: 6,
|
|
1711
|
-
},
|
|
1712
|
-
},
|
|
1713
|
-
},
|
|
1714
|
-
},
|
|
1715
|
-
],
|
|
1716
|
-
},
|
|
1717
|
-
update: {
|
|
1718
|
-
sections: [
|
|
1719
|
-
{
|
|
1720
|
-
id: 'section',
|
|
1721
|
-
},
|
|
1722
|
-
],
|
|
1723
|
-
properties: [
|
|
1724
|
-
{
|
|
1725
|
-
name: 'name',
|
|
1726
|
-
layout: {
|
|
1727
|
-
positions: {
|
|
1728
|
-
lg: {
|
|
1729
|
-
colSpan: 6,
|
|
1730
|
-
},
|
|
1731
|
-
},
|
|
1732
|
-
},
|
|
1733
|
-
},
|
|
1734
|
-
{
|
|
1735
|
-
name: 'title',
|
|
1736
|
-
layout: {
|
|
1737
|
-
positions: {
|
|
1738
|
-
lg: {
|
|
1739
|
-
colSpan: 6,
|
|
1740
|
-
},
|
|
1741
|
-
},
|
|
1742
|
-
},
|
|
1743
|
-
},
|
|
1744
|
-
],
|
|
1745
|
-
},
|
|
1746
|
-
single: {
|
|
1747
|
-
title: '{{title}}',
|
|
1748
|
-
sections: [
|
|
1749
|
-
{
|
|
1750
|
-
id: 'section',
|
|
1751
|
-
layout: {
|
|
1752
|
-
positions: {
|
|
1753
|
-
lg: {
|
|
1754
|
-
colSpan: 12,
|
|
1755
|
-
},
|
|
1756
|
-
},
|
|
1757
|
-
},
|
|
1758
|
-
},
|
|
1759
|
-
],
|
|
1760
|
-
properties: [
|
|
1761
|
-
{
|
|
1762
|
-
name: 'name',
|
|
1763
|
-
layout: {
|
|
1764
|
-
positions: {
|
|
1765
|
-
lg: {
|
|
1766
|
-
colSpan: 6,
|
|
1767
|
-
},
|
|
1768
|
-
},
|
|
1769
|
-
},
|
|
1770
|
-
},
|
|
1771
|
-
{
|
|
1772
|
-
name: 'title',
|
|
1773
|
-
layout: {
|
|
1774
|
-
positions: {
|
|
1775
|
-
lg: {
|
|
1776
|
-
colSpan: 6,
|
|
1777
|
-
},
|
|
1778
|
-
},
|
|
1779
|
-
},
|
|
1780
|
-
},
|
|
1781
|
-
],
|
|
1782
|
-
actions: [...entityMasterRecordActions()],
|
|
1783
|
-
},
|
|
1784
|
-
list: {
|
|
1785
|
-
actions: [...entityMasterCrudActions()],
|
|
1786
|
-
views: [createAllQueryView({ sorts: [{ name: 'title', dir: 'asc' }] })],
|
|
1787
|
-
},
|
|
1788
|
-
},
|
|
1789
|
-
},
|
|
1790
|
-
};
|
|
1791
|
-
return entityDef;
|
|
1792
|
-
}
|
|
1793
|
-
|
|
1794
|
-
class AXMDocumentManagementDocumentTypeMetaValueEntityService extends AXMEntityCrudServiceImpl {
|
|
1795
|
-
}
|
|
1796
|
-
class AXMDocumentManagementDocumentTypeMetaValueEntityServiceImpl extends AXMDocumentManagementDocumentTypeMetaValueEntityService {
|
|
1797
|
-
constructor() {
|
|
1798
|
-
super(`${RootConfig.module.name}.${RootConfig.entities.documentTypeMetaValue}`);
|
|
1799
|
-
}
|
|
1800
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaValueEntityServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
1801
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaValueEntityServiceImpl }); }
|
|
1802
|
-
}
|
|
1803
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaValueEntityServiceImpl, decorators: [{
|
|
1804
|
-
type: Injectable
|
|
1805
|
-
}], ctorParameters: () => [] });
|
|
1806
|
-
|
|
1807
|
-
class AXMDocumentManagementDocumentTypeMetaValueEntityModule {
|
|
1808
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaValueEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
1809
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.16", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaValueEntityModule }); }
|
|
1810
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaValueEntityModule, providers: [
|
|
1811
|
-
{
|
|
1812
|
-
provide: AXMDocumentManagementDocumentTypeMetaValueEntityService,
|
|
1813
|
-
useClass: AXMDocumentManagementDocumentTypeMetaValueEntityServiceImpl,
|
|
1814
|
-
},
|
|
1815
|
-
] }); }
|
|
1816
|
-
}
|
|
1817
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMDocumentManagementDocumentTypeMetaValueEntityModule, decorators: [{
|
|
1818
|
-
type: NgModule,
|
|
1819
|
-
args: [{
|
|
1820
|
-
imports: [],
|
|
1821
|
-
exports: [],
|
|
1822
|
-
declarations: [],
|
|
1823
|
-
providers: [
|
|
1824
|
-
{
|
|
1825
|
-
provide: AXMDocumentManagementDocumentTypeMetaValueEntityService,
|
|
1826
|
-
useClass: AXMDocumentManagementDocumentTypeMetaValueEntityServiceImpl,
|
|
1827
|
-
},
|
|
1828
|
-
],
|
|
1829
|
-
}]
|
|
1830
|
-
}] });
|
|
1831
|
-
|
|
1832
|
-
async function documentTypeStatusDefinitionFactory(injector) {
|
|
1833
|
-
const entityDef = {
|
|
1834
|
-
module: RootConfig.module.name,
|
|
1835
|
-
name: RootConfig.entities.document.name,
|
|
1836
|
-
title: RootConfig.entities.document.title,
|
|
1837
|
-
formats: {
|
|
1838
|
-
individual: RootConfig.entities.document.title,
|
|
1839
|
-
plural: RootConfig.entities.document.titlePlural,
|
|
1840
|
-
searchResult: {
|
|
1841
|
-
title: '{{ title }}',
|
|
1842
|
-
description: RootConfig.module.title,
|
|
1843
|
-
},
|
|
1844
|
-
},
|
|
1845
|
-
relatedEntities: [],
|
|
1846
|
-
groups: [
|
|
1847
|
-
{
|
|
1848
|
-
id: 'section',
|
|
1849
|
-
title: RootConfig.entities.document.title,
|
|
1850
|
-
},
|
|
1851
|
-
],
|
|
1852
|
-
properties: [
|
|
1853
|
-
{
|
|
1854
|
-
name: 'name',
|
|
1855
|
-
title: '@general:terms.common.name',
|
|
1856
|
-
groupId: 'section',
|
|
1857
|
-
options: {
|
|
1858
|
-
sort: {
|
|
1859
|
-
enabled: true,
|
|
1860
|
-
},
|
|
1861
|
-
},
|
|
1862
|
-
schema: {
|
|
1863
|
-
dataType: 'string',
|
|
1864
|
-
interface: {
|
|
1865
|
-
type: AXPWidgetsCatalog.text,
|
|
1866
|
-
},
|
|
1867
|
-
},
|
|
1868
|
-
validations: [
|
|
1869
|
-
{
|
|
1870
|
-
rule: 'required',
|
|
1871
|
-
},
|
|
1872
|
-
],
|
|
1873
|
-
},
|
|
1874
|
-
{
|
|
1875
|
-
name: 'title',
|
|
1876
|
-
title: '@general:terms.common.title',
|
|
1877
|
-
groupId: 'section',
|
|
1878
|
-
schema: {
|
|
1879
|
-
dataType: 'string',
|
|
1880
|
-
interface: {
|
|
1881
|
-
type: AXPWidgetsCatalog.text,
|
|
1882
|
-
},
|
|
1883
|
-
},
|
|
1884
|
-
validations: [
|
|
1885
|
-
{
|
|
1886
|
-
rule: 'required',
|
|
1887
|
-
},
|
|
1888
|
-
],
|
|
1889
|
-
},
|
|
1890
|
-
],
|
|
1891
|
-
columns: [{ name: 'name' }, { name: 'title' }],
|
|
1892
|
-
interfaces: {
|
|
1893
|
-
master: {
|
|
1894
|
-
create: {
|
|
1895
|
-
sections: [
|
|
1896
|
-
{
|
|
1897
|
-
id: 'section',
|
|
1898
|
-
},
|
|
1899
|
-
],
|
|
1900
|
-
properties: [
|
|
1901
|
-
{
|
|
1902
|
-
name: 'name',
|
|
1903
|
-
layout: {
|
|
1904
|
-
positions: {
|
|
1905
|
-
lg: {
|
|
1906
|
-
colSpan: 6,
|
|
1907
|
-
},
|
|
1908
|
-
},
|
|
1909
|
-
},
|
|
1910
|
-
},
|
|
1911
|
-
{
|
|
1912
|
-
name: 'title',
|
|
1913
|
-
layout: {
|
|
1914
|
-
positions: {
|
|
1915
|
-
lg: {
|
|
1916
|
-
colSpan: 6,
|
|
1917
|
-
},
|
|
1918
|
-
},
|
|
1919
|
-
},
|
|
1920
|
-
},
|
|
1921
|
-
],
|
|
1922
|
-
},
|
|
1923
|
-
update: {
|
|
1924
|
-
sections: [
|
|
1925
|
-
{
|
|
1926
|
-
id: 'section',
|
|
1927
|
-
},
|
|
1928
|
-
],
|
|
1929
|
-
properties: [
|
|
1930
|
-
{
|
|
1931
|
-
name: 'name',
|
|
1932
|
-
layout: {
|
|
1933
|
-
positions: {
|
|
1934
|
-
lg: {
|
|
1935
|
-
colSpan: 6,
|
|
1936
|
-
},
|
|
1937
|
-
},
|
|
1938
|
-
},
|
|
1939
|
-
},
|
|
1940
|
-
{
|
|
1941
|
-
name: 'title',
|
|
1942
|
-
layout: {
|
|
1943
|
-
positions: {
|
|
1944
|
-
lg: {
|
|
1945
|
-
colSpan: 6,
|
|
1946
|
-
},
|
|
1947
|
-
},
|
|
1948
|
-
},
|
|
1949
|
-
},
|
|
1950
|
-
],
|
|
1951
|
-
},
|
|
1952
|
-
single: {
|
|
1953
|
-
title: '{{title}}',
|
|
1954
|
-
sections: [
|
|
1955
|
-
{
|
|
1956
|
-
id: 'section',
|
|
1957
|
-
layout: {
|
|
1958
|
-
positions: {
|
|
1959
|
-
lg: {
|
|
1960
|
-
colSpan: 12,
|
|
1961
|
-
},
|
|
1962
|
-
},
|
|
1963
|
-
},
|
|
1964
|
-
},
|
|
1965
|
-
],
|
|
1966
|
-
properties: [
|
|
1967
|
-
{
|
|
1968
|
-
name: 'name',
|
|
1969
|
-
layout: {
|
|
1970
|
-
positions: {
|
|
1971
|
-
lg: {
|
|
1972
|
-
colSpan: 6,
|
|
1973
|
-
},
|
|
1974
|
-
},
|
|
1975
|
-
},
|
|
1976
|
-
},
|
|
1977
|
-
{
|
|
1978
|
-
name: 'title',
|
|
1979
|
-
layout: {
|
|
1980
|
-
positions: {
|
|
1981
|
-
lg: {
|
|
1982
|
-
colSpan: 6,
|
|
1983
|
-
},
|
|
1984
|
-
},
|
|
1985
|
-
},
|
|
1986
|
-
},
|
|
1987
|
-
],
|
|
1988
|
-
actions: [...entityMasterRecordActions()],
|
|
1989
|
-
},
|
|
1990
|
-
list: {
|
|
1991
|
-
actions: [...entityMasterCrudActions()],
|
|
1992
|
-
views: [createAllQueryView({ sorts: [{ name: 'title', dir: 'asc' }] })],
|
|
1993
|
-
},
|
|
1994
|
-
},
|
|
1995
|
-
},
|
|
1996
|
-
};
|
|
1997
|
-
return entityDef;
|
|
1998
|
-
}
|
|
1999
|
-
|
|
2000
|
-
class AXMDocumentManagementDocumentTypeStatusDefinitionEntityService extends AXMEntityCrudServiceImpl {
|
|
2001
|
-
}
|
|
2002
|
-
class AXMDocumentManagementDocumentTypeStatusDefinitionEntityServiceImpl extends AXMDocumentManagementDocumentTypeStatusDefinitionEntityService {
|
|
2003
|
-
constructor() {
|
|
2004
|
-
super(`${RootConfig.module.name}.${RootConfig.entities.documentTypeStatus}`);
|
|
2005
|
-
}
|
|
2006
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMDocumentManagementDocumentTypeStatusDefinitionEntityServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
2007
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMDocumentManagementDocumentTypeStatusDefinitionEntityServiceImpl }); }
|
|
2008
|
-
}
|
|
2009
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMDocumentManagementDocumentTypeStatusDefinitionEntityServiceImpl, decorators: [{
|
|
2010
|
-
type: Injectable
|
|
2011
|
-
}], ctorParameters: () => [] });
|
|
2012
|
-
|
|
2013
|
-
class AXMDocumentManagementDocumentTypeStatusDefinitionEntityModule {
|
|
2014
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMDocumentManagementDocumentTypeStatusDefinitionEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
2015
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.16", ngImport: i0, type: AXMDocumentManagementDocumentTypeStatusDefinitionEntityModule }); }
|
|
2016
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMDocumentManagementDocumentTypeStatusDefinitionEntityModule, providers: [
|
|
2017
|
-
{
|
|
2018
|
-
provide: AXMDocumentManagementDocumentTypeStatusDefinitionEntityService,
|
|
2019
|
-
useClass: AXMDocumentManagementDocumentTypeStatusDefinitionEntityServiceImpl,
|
|
2020
|
-
},
|
|
2021
|
-
] }); }
|
|
2022
|
-
}
|
|
2023
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMDocumentManagementDocumentTypeStatusDefinitionEntityModule, decorators: [{
|
|
2024
|
-
type: NgModule,
|
|
2025
|
-
args: [{
|
|
2026
|
-
imports: [],
|
|
2027
|
-
exports: [],
|
|
2028
|
-
declarations: [],
|
|
2029
|
-
providers: [
|
|
2030
|
-
{
|
|
2031
|
-
provide: AXMDocumentManagementDocumentTypeStatusDefinitionEntityService,
|
|
2032
|
-
useClass: AXMDocumentManagementDocumentTypeStatusDefinitionEntityServiceImpl,
|
|
2033
|
-
},
|
|
2034
|
-
],
|
|
2035
|
-
}]
|
|
2036
|
-
}] });
|
|
2037
|
-
|
|
2038
|
-
async function documentRelatedFactory(injector) {
|
|
2039
|
-
const i18n = RootConfig.config.i18n;
|
|
2040
|
-
const entityDef = {
|
|
2041
|
-
module: RootConfig.module.name,
|
|
2042
|
-
name: RootConfig.entities.documentRelated.name,
|
|
2043
|
-
title: RootConfig.entities.documentRelated.title,
|
|
2044
|
-
icon: RootConfig.entities.documentRelated.icon,
|
|
2045
|
-
formats: {
|
|
2046
|
-
individual: RootConfig.entities.documentRelated.title,
|
|
2047
|
-
plural: RootConfig.entities.documentRelated.titlePlural,
|
|
2048
|
-
searchResult: {
|
|
2049
|
-
title: '{{ title }}',
|
|
2050
|
-
description: RootConfig.module.title,
|
|
2051
|
-
},
|
|
2052
|
-
},
|
|
2053
|
-
relatedEntities: [],
|
|
2054
|
-
groups: [
|
|
2055
|
-
{
|
|
2056
|
-
id: 'section',
|
|
2057
|
-
title: RootConfig.entities.documentRelated.title,
|
|
2058
|
-
},
|
|
2059
|
-
],
|
|
2060
|
-
properties: [
|
|
2061
|
-
{
|
|
2062
|
-
name: 'name',
|
|
2063
|
-
title: '@general:terms.common.name',
|
|
2064
|
-
groupId: 'section',
|
|
2065
|
-
schema: {
|
|
2066
|
-
dataType: 'string',
|
|
2067
|
-
readonly: true,
|
|
2068
|
-
interface: {
|
|
2069
|
-
type: AXPWidgetsCatalog.text,
|
|
2070
|
-
options: {
|
|
2071
|
-
placeholder: '@general:terms.common.name',
|
|
2072
|
-
},
|
|
2073
|
-
},
|
|
2074
|
-
},
|
|
2075
|
-
},
|
|
2076
|
-
{
|
|
2077
|
-
name: 'size',
|
|
2078
|
-
title: '@general:terms.common.size',
|
|
2079
|
-
groupId: 'section',
|
|
2080
|
-
schema: {
|
|
2081
|
-
dataType: 'string',
|
|
2082
|
-
readonly: true,
|
|
2083
|
-
interface: {
|
|
2084
|
-
type: AXPWidgetsCatalog.number,
|
|
2085
|
-
options: {},
|
|
2086
|
-
},
|
|
2087
|
-
},
|
|
2088
|
-
validations: [
|
|
2089
|
-
{
|
|
2090
|
-
rule: 'required',
|
|
2091
|
-
},
|
|
2092
|
-
],
|
|
2093
|
-
},
|
|
2094
|
-
{
|
|
2095
|
-
name: 'type',
|
|
2096
|
-
title: '@general:terms.common.type',
|
|
2097
|
-
groupId: 'section',
|
|
2098
|
-
schema: {
|
|
2099
|
-
dataType: 'string',
|
|
2100
|
-
readonly: true,
|
|
2101
|
-
interface: {
|
|
2102
|
-
type: AXPWidgetsCatalog.lookup,
|
|
2103
|
-
options: {
|
|
2104
|
-
entity: `${RootConfig.module.name}.${RootConfig.entities.documentType.name}`,
|
|
2105
|
-
expose: 'type',
|
|
2106
|
-
},
|
|
2107
|
-
},
|
|
2108
|
-
},
|
|
2109
|
-
validations: [
|
|
2110
|
-
{
|
|
2111
|
-
rule: 'required',
|
|
2112
|
-
},
|
|
2113
|
-
],
|
|
2114
|
-
},
|
|
2115
|
-
{
|
|
2116
|
-
name: 'metaData',
|
|
2117
|
-
title: `@${i18n}:terms.common.meta-data`,
|
|
2118
|
-
groupId: 'section',
|
|
2119
|
-
schema: {
|
|
2120
|
-
dataType: 'object',
|
|
2121
|
-
readonly: true,
|
|
2122
|
-
interface: {
|
|
2123
|
-
type: AXPWidgetsCatalog.blockLayout,
|
|
2124
|
-
options: {},
|
|
2125
|
-
// children: 'context.eval("type.meta")'
|
|
2126
|
-
children: []
|
|
2127
|
-
},
|
|
2128
|
-
},
|
|
2129
|
-
validations: [
|
|
2130
|
-
{
|
|
2131
|
-
rule: 'required',
|
|
2132
|
-
},
|
|
2133
|
-
],
|
|
2134
|
-
},
|
|
2135
|
-
{
|
|
2136
|
-
name: 'fileId',
|
|
2137
|
-
title: `@${i18n}:terms.common.file`,
|
|
2138
|
-
groupId: 'section',
|
|
2139
|
-
schema: {
|
|
2140
|
-
dataType: 'string',
|
|
2141
|
-
readonly: true,
|
|
2142
|
-
interface: {
|
|
2143
|
-
type: AXPWidgetsCatalog.fileUploader,
|
|
2144
|
-
options: {
|
|
2145
|
-
maxFileSize: ` {{context.eval("type.maxSize")}} `,
|
|
2146
|
-
multiple: ` {{context.eval("type.multiple")}} `,
|
|
2147
|
-
// accept: ` {{context.eval("type.multiple")}} `,
|
|
2148
|
-
},
|
|
2149
|
-
},
|
|
2150
|
-
},
|
|
2151
|
-
validations: [
|
|
2152
|
-
{
|
|
2153
|
-
rule: 'required',
|
|
2154
|
-
},
|
|
2155
|
-
],
|
|
2156
|
-
},
|
|
2157
|
-
],
|
|
2158
|
-
columns: [
|
|
2159
|
-
{ name: 'name' },
|
|
2160
|
-
{ name: 'fileId' },
|
|
2161
|
-
{ name: 'type' },
|
|
2162
|
-
{ name: 'size' }
|
|
2163
|
-
],
|
|
2164
|
-
interfaces: {
|
|
2165
|
-
master: {
|
|
2166
|
-
create: {
|
|
2167
|
-
sections: [
|
|
2168
|
-
{
|
|
2169
|
-
id: 'section',
|
|
2170
|
-
},
|
|
2171
|
-
],
|
|
2172
|
-
properties: [
|
|
2173
|
-
{
|
|
2174
|
-
name: 'metaData',
|
|
2175
|
-
layout: {
|
|
2176
|
-
positions: {
|
|
2177
|
-
lg: {
|
|
2178
|
-
colSpan: 12,
|
|
2179
|
-
},
|
|
2180
|
-
},
|
|
2181
|
-
},
|
|
2182
|
-
},
|
|
2183
|
-
{
|
|
2184
|
-
name: 'fileId',
|
|
2185
|
-
layout: {
|
|
2186
|
-
positions: {
|
|
2187
|
-
lg: {
|
|
2188
|
-
colSpan: 12,
|
|
2189
|
-
},
|
|
2190
|
-
},
|
|
2191
|
-
},
|
|
2192
|
-
},
|
|
2193
|
-
],
|
|
2194
|
-
},
|
|
2195
|
-
update: {
|
|
2196
|
-
sections: [
|
|
2197
|
-
{
|
|
2198
|
-
id: 'section',
|
|
2199
|
-
},
|
|
2200
|
-
],
|
|
2201
|
-
properties: [
|
|
2202
|
-
{
|
|
2203
|
-
name: 'name',
|
|
2204
|
-
layout: {
|
|
2205
|
-
positions: {
|
|
2206
|
-
lg: {
|
|
2207
|
-
colSpan: 6,
|
|
2208
|
-
},
|
|
2209
|
-
},
|
|
2210
|
-
},
|
|
2211
|
-
},
|
|
2212
|
-
{
|
|
2213
|
-
name: 'type',
|
|
2214
|
-
layout: {
|
|
2215
|
-
positions: {
|
|
2216
|
-
lg: {
|
|
2217
|
-
colSpan: 12,
|
|
2218
|
-
},
|
|
2219
|
-
},
|
|
2220
|
-
},
|
|
2221
|
-
},
|
|
2222
|
-
{
|
|
2223
|
-
name: 'metaData',
|
|
2224
|
-
layout: {
|
|
2225
|
-
positions: {
|
|
2226
|
-
lg: {
|
|
2227
|
-
colSpan: 12,
|
|
2228
|
-
},
|
|
2229
|
-
},
|
|
2230
|
-
},
|
|
2231
|
-
},
|
|
2232
|
-
{
|
|
2233
|
-
name: 'file',
|
|
2234
|
-
layout: {
|
|
2235
|
-
positions: {
|
|
2236
|
-
lg: {
|
|
2237
|
-
colSpan: 12,
|
|
2238
|
-
},
|
|
2239
|
-
},
|
|
2240
|
-
},
|
|
2241
|
-
},
|
|
2242
|
-
],
|
|
2243
|
-
},
|
|
2244
|
-
single: {
|
|
2245
|
-
title: '{{title}}',
|
|
2246
|
-
sections: [
|
|
2247
|
-
{
|
|
2248
|
-
id: 'section',
|
|
2249
|
-
layout: {
|
|
2250
|
-
positions: {
|
|
2251
|
-
lg: {
|
|
2252
|
-
colSpan: 12,
|
|
2253
|
-
},
|
|
2254
|
-
},
|
|
2255
|
-
},
|
|
2256
|
-
},
|
|
2257
|
-
],
|
|
2258
|
-
properties: [
|
|
2259
|
-
{
|
|
2260
|
-
name: 'metaData',
|
|
2261
|
-
layout: {
|
|
2262
|
-
positions: {
|
|
2263
|
-
lg: {
|
|
2264
|
-
colSpan: 6,
|
|
2265
|
-
},
|
|
2266
|
-
}
|
|
2267
|
-
},
|
|
2268
|
-
},
|
|
2269
|
-
{
|
|
2270
|
-
name: 'fileId',
|
|
2271
|
-
layout: {
|
|
2272
|
-
positions: {
|
|
2273
|
-
lg: {
|
|
2274
|
-
colSpan: 12,
|
|
2275
|
-
},
|
|
2276
|
-
},
|
|
2277
|
-
},
|
|
2278
|
-
},
|
|
2279
|
-
],
|
|
2280
|
-
actions: [],
|
|
2281
|
-
},
|
|
2282
|
-
list: {
|
|
2283
|
-
actions: [
|
|
2284
|
-
{
|
|
2285
|
-
title: '@general:actions.detail.title',
|
|
2286
|
-
command: 'open-entity',
|
|
2287
|
-
priority: 'secondary',
|
|
2288
|
-
type: 'view',
|
|
2289
|
-
default: true,
|
|
2290
|
-
scope: AXPEntityCommandScope.Individual,
|
|
2291
|
-
},
|
|
2292
|
-
],
|
|
2293
|
-
views: [
|
|
2294
|
-
createAllQueryView({ sorts: [{ name: 'name', dir: 'asc' }] }),
|
|
2295
|
-
createQueryView('Draft', `@${i18n}:terms.workflow.draft`, true, {
|
|
2296
|
-
conditions: [
|
|
2297
|
-
{
|
|
2298
|
-
name: 'status',
|
|
2299
|
-
operator: {
|
|
2300
|
-
type: 'equal',
|
|
2301
|
-
},
|
|
2302
|
-
value: 'Draft',
|
|
2303
|
-
},
|
|
2304
|
-
],
|
|
2305
|
-
}),
|
|
2306
|
-
createQueryView('PendingReview', `@${i18n}:terms.workflow.pending`, true, {
|
|
2307
|
-
conditions: [
|
|
2308
|
-
{
|
|
2309
|
-
name: 'status',
|
|
2310
|
-
operator: {
|
|
2311
|
-
type: 'equal',
|
|
2312
|
-
},
|
|
2313
|
-
value: 'PendingReview',
|
|
2314
|
-
},
|
|
2315
|
-
],
|
|
2316
|
-
}),
|
|
2317
|
-
createQueryView('Reviewed', `@${i18n}:terms.workflow.reviewed`, true, {
|
|
2318
|
-
conditions: [
|
|
2319
|
-
{
|
|
2320
|
-
name: 'status',
|
|
2321
|
-
operator: {
|
|
2322
|
-
type: 'equal',
|
|
2323
|
-
},
|
|
2324
|
-
value: 'Reviewed',
|
|
2325
|
-
},
|
|
2326
|
-
],
|
|
2327
|
-
}),
|
|
2328
|
-
],
|
|
2329
|
-
},
|
|
2330
|
-
},
|
|
2331
|
-
},
|
|
2332
|
-
};
|
|
2333
|
-
return entityDef;
|
|
2334
|
-
}
|
|
2335
|
-
|
|
2336
|
-
class AXMFolderService extends AXMEntityCrudServiceImpl {
|
|
2337
|
-
}
|
|
2338
|
-
class AXMFolderServiceImpl extends AXMFolderService {
|
|
2339
|
-
constructor() {
|
|
2340
|
-
super(`${RootConfig.module.name}.${RootConfig.entities.folder.name}`);
|
|
2341
|
-
}
|
|
2342
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMFolderServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
2343
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMFolderServiceImpl }); }
|
|
2344
|
-
}
|
|
2345
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMFolderServiceImpl, decorators: [{
|
|
2346
|
-
type: Injectable
|
|
2347
|
-
}], ctorParameters: () => [] });
|
|
2348
|
-
|
|
2349
|
-
async function folderFactory(injector) {
|
|
2350
|
-
const dataService = injector.get(AXMFolderService);
|
|
2351
|
-
const entityDef = {
|
|
2352
|
-
module: RootConfig.module.name,
|
|
2353
|
-
name: RootConfig.entities.folder.name,
|
|
2354
|
-
title: RootConfig.entities.folder.title,
|
|
2355
|
-
formats: {
|
|
2356
|
-
individual: RootConfig.entities.folder.title,
|
|
2357
|
-
plural: RootConfig.entities.folder.titlePlural,
|
|
2358
|
-
searchResult: {
|
|
2359
|
-
title: '{{ title }}',
|
|
2360
|
-
description: RootConfig.module.title,
|
|
2361
|
-
},
|
|
2362
|
-
},
|
|
2363
|
-
relatedEntities: [],
|
|
2364
|
-
groups: [
|
|
2365
|
-
{
|
|
2366
|
-
id: 'section',
|
|
2367
|
-
title: RootConfig.entities.folder.title,
|
|
2368
|
-
},
|
|
2369
|
-
],
|
|
2370
|
-
properties: [
|
|
2371
|
-
{
|
|
2372
|
-
name: 'name',
|
|
2373
|
-
title: '@general:terms.common.name',
|
|
2374
|
-
groupId: 'section',
|
|
2375
|
-
options: {
|
|
2376
|
-
sort: {
|
|
2377
|
-
enabled: true,
|
|
2378
|
-
},
|
|
2379
|
-
},
|
|
2380
|
-
schema: {
|
|
2381
|
-
dataType: 'string',
|
|
2382
|
-
interface: {
|
|
2383
|
-
type: AXPWidgetsCatalog.text,
|
|
2384
|
-
},
|
|
2385
|
-
},
|
|
2386
|
-
validations: [
|
|
2387
|
-
{
|
|
2388
|
-
rule: 'required',
|
|
2389
|
-
},
|
|
2390
|
-
],
|
|
2391
|
-
},
|
|
2392
|
-
{
|
|
2393
|
-
name: 'title',
|
|
2394
|
-
title: '@general:terms.common.title',
|
|
2395
|
-
groupId: 'section',
|
|
2396
|
-
schema: {
|
|
2397
|
-
dataType: 'string',
|
|
2398
|
-
interface: {
|
|
2399
|
-
type: AXPWidgetsCatalog.text,
|
|
2400
|
-
},
|
|
2401
|
-
},
|
|
2402
|
-
validations: [
|
|
2403
|
-
{
|
|
2404
|
-
rule: 'required',
|
|
2405
|
-
},
|
|
2406
|
-
],
|
|
2407
|
-
},
|
|
2408
|
-
],
|
|
2409
|
-
columns: [{ name: 'name' }, { name: 'title' }],
|
|
2410
|
-
commands: {
|
|
2411
|
-
create: {
|
|
2412
|
-
execute: async (data) => {
|
|
2413
|
-
const res = await dataService.insertOne(data);
|
|
2414
|
-
return { id: res };
|
|
2415
|
-
},
|
|
2416
|
-
},
|
|
2417
|
-
delete: {
|
|
2418
|
-
execute: async (id) => {
|
|
2419
|
-
return await dataService.deleteOne(id);
|
|
2420
|
-
},
|
|
2421
|
-
},
|
|
2422
|
-
update: {
|
|
2423
|
-
execute: async (data) => {
|
|
2424
|
-
return await dataService.updateOne(data.id, data);
|
|
2425
|
-
},
|
|
2426
|
-
},
|
|
2427
|
-
},
|
|
2428
|
-
queries: {
|
|
2429
|
-
byKey: {
|
|
2430
|
-
execute: async (id) => {
|
|
2431
|
-
return await dataService.getOne(id);
|
|
2432
|
-
},
|
|
2433
|
-
type: AXPEntityQueryType.Single,
|
|
2434
|
-
},
|
|
2435
|
-
list: {
|
|
2436
|
-
execute: async (e) => {
|
|
2437
|
-
return await dataService.query(e);
|
|
2438
|
-
},
|
|
2439
|
-
type: AXPEntityQueryType.List,
|
|
2440
|
-
},
|
|
2441
|
-
},
|
|
2442
|
-
interfaces: {
|
|
2443
|
-
master: {
|
|
2444
|
-
create: {
|
|
2445
|
-
sections: [
|
|
2446
|
-
{
|
|
2447
|
-
id: 'section',
|
|
2448
|
-
},
|
|
2449
|
-
],
|
|
2450
|
-
properties: [
|
|
2451
|
-
{
|
|
2452
|
-
name: 'name',
|
|
2453
|
-
layout: {
|
|
2454
|
-
positions: {
|
|
2455
|
-
lg: {
|
|
2456
|
-
colSpan: 6,
|
|
2457
|
-
},
|
|
2458
|
-
},
|
|
2459
|
-
},
|
|
2460
|
-
},
|
|
2461
|
-
{
|
|
2462
|
-
name: 'title',
|
|
2463
|
-
layout: {
|
|
2464
|
-
positions: {
|
|
2465
|
-
lg: {
|
|
2466
|
-
colSpan: 6,
|
|
2467
|
-
},
|
|
2468
|
-
},
|
|
2469
|
-
},
|
|
2470
|
-
},
|
|
2471
|
-
],
|
|
2472
|
-
},
|
|
2473
|
-
update: {
|
|
2474
|
-
sections: [
|
|
2475
|
-
{
|
|
2476
|
-
id: 'section',
|
|
2477
|
-
},
|
|
2478
|
-
],
|
|
2479
|
-
properties: [
|
|
2480
|
-
{
|
|
2481
|
-
name: 'name',
|
|
2482
|
-
layout: {
|
|
2483
|
-
positions: {
|
|
2484
|
-
lg: {
|
|
2485
|
-
colSpan: 6,
|
|
2486
|
-
},
|
|
2487
|
-
},
|
|
2488
|
-
},
|
|
2489
|
-
},
|
|
2490
|
-
{
|
|
2491
|
-
name: 'title',
|
|
2492
|
-
layout: {
|
|
2493
|
-
positions: {
|
|
2494
|
-
lg: {
|
|
2495
|
-
colSpan: 6,
|
|
2496
|
-
},
|
|
2497
|
-
},
|
|
2498
|
-
},
|
|
2499
|
-
},
|
|
2500
|
-
],
|
|
2501
|
-
},
|
|
2502
|
-
single: {
|
|
2503
|
-
title: '{{title}}',
|
|
2504
|
-
sections: [
|
|
2505
|
-
{
|
|
2506
|
-
id: 'section',
|
|
2507
|
-
layout: {
|
|
2508
|
-
positions: {
|
|
2509
|
-
lg: {
|
|
2510
|
-
colSpan: 12,
|
|
2511
|
-
},
|
|
2512
|
-
},
|
|
2513
|
-
},
|
|
2514
|
-
},
|
|
2515
|
-
],
|
|
2516
|
-
properties: [
|
|
2517
|
-
{
|
|
2518
|
-
name: 'name',
|
|
2519
|
-
layout: {
|
|
2520
|
-
positions: {
|
|
2521
|
-
lg: {
|
|
2522
|
-
colSpan: 6,
|
|
2523
|
-
},
|
|
2524
|
-
},
|
|
2525
|
-
},
|
|
2526
|
-
},
|
|
2527
|
-
{
|
|
2528
|
-
name: 'title',
|
|
2529
|
-
layout: {
|
|
2530
|
-
positions: {
|
|
2531
|
-
lg: {
|
|
2532
|
-
colSpan: 6,
|
|
2533
|
-
},
|
|
2534
|
-
},
|
|
2535
|
-
},
|
|
2536
|
-
},
|
|
2537
|
-
],
|
|
2538
|
-
actions: [...entityMasterRecordActions()],
|
|
2539
|
-
},
|
|
2540
|
-
list: {
|
|
2541
|
-
actions: [...entityMasterCrudActions()],
|
|
2542
|
-
views: [createAllQueryView({ sorts: [{ name: 'title', dir: 'asc' }] })],
|
|
2543
|
-
},
|
|
2544
|
-
},
|
|
2545
|
-
},
|
|
2546
|
-
};
|
|
2547
|
-
return entityDef;
|
|
2548
|
-
}
|
|
2549
|
-
|
|
2550
|
-
class AXMFolderEntityModule {
|
|
2551
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMFolderEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
2552
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.16", ngImport: i0, type: AXMFolderEntityModule }); }
|
|
2553
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMFolderEntityModule, providers: [
|
|
2554
|
-
{
|
|
2555
|
-
provide: AXMFolderService,
|
|
2556
|
-
useClass: AXMFolderServiceImpl,
|
|
2557
|
-
},
|
|
2558
|
-
] }); }
|
|
2559
|
-
}
|
|
2560
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMFolderEntityModule, decorators: [{
|
|
2561
|
-
type: NgModule,
|
|
2562
|
-
args: [{
|
|
2563
|
-
imports: [],
|
|
2564
|
-
exports: [],
|
|
2565
|
-
declarations: [],
|
|
2566
|
-
providers: [
|
|
2567
|
-
{
|
|
2568
|
-
provide: AXMFolderService,
|
|
2569
|
-
useClass: AXMFolderServiceImpl,
|
|
2570
|
-
},
|
|
2571
|
-
],
|
|
2572
|
-
}]
|
|
2573
|
-
}] });
|
|
2574
|
-
|
|
2575
|
-
class AXMReviewService extends AXMEntityCrudServiceImpl {
|
|
2576
|
-
}
|
|
2577
|
-
class AXMReviewServiceImpl extends AXMReviewService {
|
|
2578
|
-
constructor() {
|
|
2579
|
-
super(`${RootConfig.module.name}.${RootConfig.entities.review.name}`);
|
|
2580
|
-
}
|
|
2581
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMReviewServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
2582
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMReviewServiceImpl }); }
|
|
2583
|
-
}
|
|
2584
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMReviewServiceImpl, decorators: [{
|
|
2585
|
-
type: Injectable
|
|
2586
|
-
}], ctorParameters: () => [] });
|
|
2587
|
-
|
|
2588
|
-
// Helper function to update document status based on review status
|
|
2589
|
-
async function updateDocumentStatus(documentId, reviewStatus, injector) {
|
|
2590
|
-
try {
|
|
2591
|
-
// Import document service dynamically to avoid circular dependencies
|
|
2592
|
-
const { AXMDocumentService } = await Promise.resolve().then(function () { return document_service; });
|
|
2593
|
-
const documentService = injector.get(AXMDocumentService);
|
|
2594
|
-
// Map review status to document workflow phase
|
|
2595
|
-
let documentStatus;
|
|
2596
|
-
switch (reviewStatus) {
|
|
2597
|
-
case 'Approved':
|
|
2598
|
-
documentStatus = 'Reviewed';
|
|
2599
|
-
break;
|
|
2600
|
-
case 'Rejected':
|
|
2601
|
-
documentStatus = 'Rejected';
|
|
2602
|
-
break;
|
|
2603
|
-
case 'Pending':
|
|
2604
|
-
documentStatus = 'PendingReview';
|
|
2605
|
-
break;
|
|
2606
|
-
default:
|
|
2607
|
-
documentStatus = 'PendingReview';
|
|
2608
|
-
}
|
|
2609
|
-
// Update the document status
|
|
2610
|
-
await documentService.updateOne(documentId, { status: documentStatus });
|
|
2611
|
-
}
|
|
2612
|
-
catch (error) {
|
|
2613
|
-
console.error('Failed to update document status:', error);
|
|
2614
|
-
// Don't throw error to avoid breaking the review process
|
|
2615
|
-
}
|
|
2616
|
-
}
|
|
2617
|
-
async function reviewFactory(injector) {
|
|
2618
|
-
const dataService = injector.get(AXMReviewService);
|
|
2619
|
-
const i18n = RootConfig.config.i18n;
|
|
2620
|
-
const entityDef = {
|
|
2621
|
-
module: RootConfig.module.name,
|
|
2622
|
-
name: RootConfig.entities.review.name,
|
|
2623
|
-
title: RootConfig.entities.review.title,
|
|
2624
|
-
icon: RootConfig.entities.review.icon,
|
|
2625
|
-
formats: {
|
|
2626
|
-
individual: RootConfig.entities.review.title,
|
|
2627
|
-
plural: RootConfig.entities.review.titlePlural,
|
|
2628
|
-
searchResult: {
|
|
2629
|
-
title: '{{ title }}',
|
|
2630
|
-
description: RootConfig.module.title,
|
|
2631
|
-
},
|
|
2632
|
-
},
|
|
2633
|
-
relatedEntities: [],
|
|
2634
|
-
groups: [
|
|
2635
|
-
{
|
|
2636
|
-
id: 'section',
|
|
2637
|
-
title: RootConfig.entities.review.title,
|
|
2638
|
-
},
|
|
2639
|
-
],
|
|
2640
|
-
properties: [
|
|
2641
|
-
{
|
|
2642
|
-
name: 'version',
|
|
2643
|
-
title: `@${i18n}:terms.common.version`,
|
|
2644
|
-
groupId: 'section',
|
|
2645
|
-
schema: {
|
|
2646
|
-
dataType: 'number',
|
|
2647
|
-
interface: {
|
|
2648
|
-
type: AXPWidgetsCatalog.textBlockLayout,
|
|
2649
|
-
options: {
|
|
2650
|
-
content: `{{ context.eval('version') }}`,
|
|
2651
|
-
},
|
|
2652
|
-
},
|
|
2653
|
-
},
|
|
2654
|
-
},
|
|
2655
|
-
{
|
|
2656
|
-
name: 'documentId',
|
|
2657
|
-
groupId: 'section',
|
|
2658
|
-
title: `@${i18n}:entities.document.title`,
|
|
2659
|
-
options: {
|
|
2660
|
-
sort: {
|
|
2661
|
-
enabled: true,
|
|
2662
|
-
},
|
|
2663
|
-
filter: {
|
|
2664
|
-
advance: {
|
|
2665
|
-
enabled: true,
|
|
2666
|
-
},
|
|
2667
|
-
inline: {
|
|
2668
|
-
enabled: true,
|
|
2669
|
-
},
|
|
2670
|
-
},
|
|
2671
|
-
},
|
|
2672
|
-
schema: {
|
|
2673
|
-
dataType: 'string',
|
|
2674
|
-
interface: {
|
|
2675
|
-
type: AXPWidgetsCatalog.lookup,
|
|
2676
|
-
options: {
|
|
2677
|
-
entity: `${RootConfig.module.name}.${RootConfig.entities.document.name}`,
|
|
2678
|
-
multiple: false,
|
|
2679
|
-
filter: "{{ { logic:'and' , filters: [ { field:'documentType.requiresReview' , value: true , operator: { type:'equal' } },] } }}",
|
|
2680
|
-
textField: 'name',
|
|
2681
|
-
valueField: 'id',
|
|
2682
|
-
expose: [
|
|
2683
|
-
{ source: 'id', target: 'document.id' },
|
|
2684
|
-
{ source: 'name', target: 'document.name' },
|
|
2685
|
-
{ source: 'title', target: 'document.title' },
|
|
2686
|
-
{ source: 'version', target: 'document.version' },
|
|
2687
|
-
],
|
|
2688
|
-
},
|
|
2689
|
-
triggers: [
|
|
2690
|
-
{
|
|
2691
|
-
event: "{{ events.context('documentId') }}",
|
|
2692
|
-
action: "{{ context.set('version' , context.eval('document').version ) }}",
|
|
2693
|
-
},
|
|
2694
|
-
],
|
|
2695
|
-
},
|
|
2696
|
-
},
|
|
2697
|
-
validations: [
|
|
2698
|
-
{
|
|
2699
|
-
rule: 'required',
|
|
2700
|
-
},
|
|
2701
|
-
],
|
|
2702
|
-
},
|
|
2703
|
-
{
|
|
2704
|
-
name: 'reviewerId',
|
|
2705
|
-
title: `@${i18n}:terms.common.reviewer`,
|
|
2706
|
-
groupId: 'section',
|
|
2707
|
-
schema: {
|
|
2708
|
-
dataType: 'string',
|
|
2709
|
-
defaultValue: '{{ session.currentUser().id }}',
|
|
2710
|
-
interface: {
|
|
2711
|
-
type: AXPWidgetsCatalog.lookup,
|
|
2712
|
-
options: {
|
|
2713
|
-
entity: 'SecurityManagement.User',
|
|
2714
|
-
multiple: false,
|
|
2715
|
-
textField: 'username',
|
|
2716
|
-
valueField: 'id',
|
|
2717
|
-
expose: [
|
|
2718
|
-
{ source: 'id', target: 'reviewer.id' },
|
|
2719
|
-
{ source: 'username', target: 'reviewer.username' },
|
|
2720
|
-
],
|
|
2721
|
-
},
|
|
2722
|
-
},
|
|
2723
|
-
},
|
|
2724
|
-
validations: [
|
|
2725
|
-
{
|
|
2726
|
-
rule: 'required',
|
|
2727
|
-
},
|
|
2728
|
-
],
|
|
2729
|
-
},
|
|
2730
|
-
{
|
|
2731
|
-
name: 'status',
|
|
2732
|
-
title: `@${i18n}:terms.workflow.approve`,
|
|
2733
|
-
groupId: 'section',
|
|
2734
|
-
schema: {
|
|
2735
|
-
dataType: 'string',
|
|
2736
|
-
interface: {
|
|
2737
|
-
type: AXPWidgetsCatalog.toggle,
|
|
2738
|
-
options: {},
|
|
2739
|
-
},
|
|
2740
|
-
},
|
|
2741
|
-
validations: [
|
|
2742
|
-
{
|
|
2743
|
-
rule: 'required',
|
|
2744
|
-
},
|
|
2745
|
-
],
|
|
2746
|
-
},
|
|
2747
|
-
{
|
|
2748
|
-
name: 'comment',
|
|
2749
|
-
title: `@${i18n}:terms.common.comment`,
|
|
2750
|
-
groupId: 'section',
|
|
2751
|
-
schema: {
|
|
2752
|
-
dataType: 'string',
|
|
2753
|
-
interface: {
|
|
2754
|
-
type: AXPWidgetsCatalog.richText,
|
|
2755
|
-
},
|
|
2756
|
-
},
|
|
2757
|
-
},
|
|
2758
|
-
{
|
|
2759
|
-
name: 'reviewedAt',
|
|
2760
|
-
title: `@${i18n}:terms.timestamps.reviewed-at`,
|
|
2761
|
-
groupId: 'section',
|
|
2762
|
-
options: {
|
|
2763
|
-
sort: {
|
|
2764
|
-
enabled: true,
|
|
2765
|
-
},
|
|
2766
|
-
filter: {
|
|
2767
|
-
advance: {
|
|
2768
|
-
enabled: true,
|
|
2769
|
-
},
|
|
2770
|
-
inline: {
|
|
2771
|
-
enabled: false,
|
|
2772
|
-
},
|
|
2773
|
-
},
|
|
2774
|
-
},
|
|
2775
|
-
schema: {
|
|
2776
|
-
defaultValue: '{{ variables.execute("now") }}',
|
|
2777
|
-
dataType: 'date',
|
|
2778
|
-
interface: {
|
|
2779
|
-
type: AXPWidgetsCatalog.dateTime,
|
|
2780
|
-
options: {
|
|
2781
|
-
showTime: true,
|
|
2782
|
-
},
|
|
2783
|
-
},
|
|
2784
|
-
},
|
|
2785
|
-
validations: [
|
|
2786
|
-
{
|
|
2787
|
-
rule: 'required',
|
|
2788
|
-
},
|
|
2789
|
-
],
|
|
2790
|
-
},
|
|
2791
|
-
{
|
|
2792
|
-
name: 'auditInfo.updated.at',
|
|
2793
|
-
title: `@${i18n}:terms.timestamps.modified-at`,
|
|
2794
|
-
groupId: 'section',
|
|
2795
|
-
options: {
|
|
2796
|
-
sort: {
|
|
2797
|
-
enabled: true,
|
|
2798
|
-
},
|
|
2799
|
-
filter: {
|
|
2800
|
-
advance: {
|
|
2801
|
-
enabled: true,
|
|
2802
|
-
},
|
|
2803
|
-
inline: {
|
|
2804
|
-
enabled: false,
|
|
2805
|
-
},
|
|
2806
|
-
},
|
|
2807
|
-
},
|
|
2808
|
-
schema: {
|
|
2809
|
-
dataType: 'date',
|
|
2810
|
-
interface: {
|
|
2811
|
-
type: AXPWidgetsCatalog.dateTime,
|
|
2812
|
-
options: {
|
|
2813
|
-
showTime: true,
|
|
2814
|
-
},
|
|
2815
|
-
},
|
|
2816
|
-
},
|
|
2817
|
-
},
|
|
2818
|
-
{
|
|
2819
|
-
name: 'auditInfo.updated.by',
|
|
2820
|
-
title: `@${i18n}:terms.timestamps.modified-by`,
|
|
2821
|
-
groupId: 'section',
|
|
2822
|
-
options: {
|
|
2823
|
-
sort: {
|
|
2824
|
-
enabled: true,
|
|
2825
|
-
},
|
|
2826
|
-
filter: {
|
|
2827
|
-
advance: {
|
|
2828
|
-
enabled: true,
|
|
2829
|
-
},
|
|
2830
|
-
inline: {
|
|
2831
|
-
enabled: true,
|
|
2832
|
-
},
|
|
2833
|
-
},
|
|
2834
|
-
},
|
|
2835
|
-
schema: {
|
|
2836
|
-
dataType: 'string',
|
|
2837
|
-
interface: {
|
|
2838
|
-
type: AXPWidgetsCatalog.lookup,
|
|
2839
|
-
options: {
|
|
2840
|
-
entity: 'SecurityManagement.User',
|
|
2841
|
-
multiple: false,
|
|
2842
|
-
textField: 'username',
|
|
2843
|
-
valueField: 'id',
|
|
2844
|
-
expose: [
|
|
2845
|
-
{ source: 'id', target: 'auditInfo.updated.by.id' },
|
|
2846
|
-
{ source: 'username', target: 'auditInfo.updated.by.username' },
|
|
2847
|
-
],
|
|
2848
|
-
},
|
|
2849
|
-
},
|
|
2850
|
-
},
|
|
2851
|
-
},
|
|
2852
|
-
],
|
|
2853
|
-
columns: [
|
|
2854
|
-
{ name: 'reviewerId', options: { dataPath: 'reviewer.title' } },
|
|
2855
|
-
{ name: 'status' },
|
|
2856
|
-
{ name: 'comment' },
|
|
2857
|
-
{ name: 'reviewedAt' },
|
|
2858
|
-
{ name: 'auditInfo.updated.at' },
|
|
2859
|
-
{ name: 'auditInfo.updated.by', options: { dataPath: 'auditInfo.updated.by.fullName' } },
|
|
2860
|
-
],
|
|
2861
|
-
commands: {
|
|
2862
|
-
create: {
|
|
2863
|
-
execute: async (data) => {
|
|
2864
|
-
// Set reviewedAt to current date if not provided
|
|
2865
|
-
if (!data.reviewedAt) {
|
|
2866
|
-
data.reviewedAt = new Date();
|
|
2867
|
-
}
|
|
2868
|
-
//TODO for test
|
|
2869
|
-
data.reviewStatus = 'Approved';
|
|
2870
|
-
// Create the review record
|
|
2871
|
-
const res = await dataService.insertOne(data);
|
|
2872
|
-
// Update document status based on review status
|
|
2873
|
-
await updateDocumentStatus(data.documentId, data.reviewStatus, injector);
|
|
2874
|
-
return { id: res };
|
|
2875
|
-
},
|
|
2876
|
-
},
|
|
2877
|
-
delete: {
|
|
2878
|
-
execute: async (id) => {
|
|
2879
|
-
return await dataService.deleteOne(id);
|
|
2880
|
-
},
|
|
2881
|
-
},
|
|
2882
|
-
update: {
|
|
2883
|
-
execute: async (data) => {
|
|
2884
|
-
// Update reviewedAt to current date
|
|
2885
|
-
data.reviewedAt = new Date();
|
|
2886
|
-
//TODO for test
|
|
2887
|
-
data.reviewStatus = 'Approved';
|
|
2888
|
-
// Update the review record
|
|
2889
|
-
const result = await dataService.updateOne(data.id, data);
|
|
2890
|
-
// Update document status based on review status
|
|
2891
|
-
await updateDocumentStatus(data.documentId, data.reviewStatus, injector);
|
|
2892
|
-
return result;
|
|
2893
|
-
},
|
|
2894
|
-
},
|
|
2895
|
-
},
|
|
2896
|
-
queries: {
|
|
2897
|
-
byKey: {
|
|
2898
|
-
execute: async (id) => {
|
|
2899
|
-
const review = await dataService.getOne(id);
|
|
2900
|
-
return {
|
|
2901
|
-
...review,
|
|
2902
|
-
reviewedAt: review.reviewedAt ?? new Date(),
|
|
2903
|
-
};
|
|
2904
|
-
},
|
|
2905
|
-
type: AXPEntityQueryType.Single,
|
|
2906
|
-
},
|
|
2907
|
-
list: {
|
|
2908
|
-
execute: async (e) => {
|
|
2909
|
-
return await dataService.query(e);
|
|
2910
|
-
},
|
|
2911
|
-
type: AXPEntityQueryType.List,
|
|
2912
|
-
},
|
|
2913
|
-
},
|
|
2914
|
-
interfaces: {
|
|
2915
|
-
master: {
|
|
2916
|
-
create: {
|
|
2917
|
-
sections: [
|
|
2918
|
-
{
|
|
2919
|
-
id: 'section',
|
|
2920
|
-
},
|
|
2921
|
-
],
|
|
2922
|
-
properties: [
|
|
2923
596
|
{
|
|
2924
|
-
name: '
|
|
597
|
+
name: 'maxSize',
|
|
2925
598
|
layout: {
|
|
2926
599
|
positions: {
|
|
2927
600
|
lg: {
|
|
2928
|
-
colSpan:
|
|
2929
|
-
order: 1,
|
|
601
|
+
colSpan: 6,
|
|
2930
602
|
},
|
|
2931
603
|
},
|
|
2932
604
|
},
|
|
2933
605
|
},
|
|
2934
606
|
{
|
|
2935
|
-
name: '
|
|
607
|
+
name: 'isEncrypted',
|
|
2936
608
|
layout: {
|
|
2937
609
|
positions: {
|
|
2938
610
|
lg: {
|
|
2939
611
|
colSpan: 6,
|
|
2940
|
-
order: 5,
|
|
2941
612
|
},
|
|
2942
613
|
},
|
|
2943
614
|
},
|
|
2944
615
|
},
|
|
2945
616
|
{
|
|
2946
|
-
name: '
|
|
617
|
+
name: 'enableExpiration',
|
|
2947
618
|
layout: {
|
|
2948
619
|
positions: {
|
|
2949
620
|
lg: {
|
|
2950
621
|
colSpan: 6,
|
|
2951
|
-
order: 2,
|
|
2952
622
|
},
|
|
2953
623
|
},
|
|
2954
624
|
},
|
|
2955
625
|
},
|
|
2956
626
|
{
|
|
2957
|
-
name: '
|
|
627
|
+
name: 'requiresReview',
|
|
2958
628
|
layout: {
|
|
2959
629
|
positions: {
|
|
2960
630
|
lg: {
|
|
2961
631
|
colSpan: 6,
|
|
2962
|
-
order: 3,
|
|
2963
632
|
},
|
|
2964
633
|
},
|
|
2965
634
|
},
|
|
2966
635
|
},
|
|
2967
636
|
{
|
|
2968
|
-
name: '
|
|
637
|
+
name: 'enableVersioning',
|
|
2969
638
|
layout: {
|
|
2970
639
|
positions: {
|
|
2971
640
|
lg: {
|
|
2972
|
-
colSpan:
|
|
2973
|
-
order: 4,
|
|
641
|
+
colSpan: 6,
|
|
2974
642
|
},
|
|
2975
643
|
},
|
|
2976
644
|
},
|
|
2977
645
|
},
|
|
646
|
+
// {
|
|
647
|
+
// name: 'meta',
|
|
648
|
+
// layout: {
|
|
649
|
+
// positions: {
|
|
650
|
+
// lg: {
|
|
651
|
+
// colSpan: 12,
|
|
652
|
+
// },
|
|
653
|
+
// },
|
|
654
|
+
// },
|
|
655
|
+
// },
|
|
2978
656
|
{
|
|
2979
|
-
name: '
|
|
657
|
+
name: 'type',
|
|
2980
658
|
layout: {
|
|
2981
659
|
positions: {
|
|
2982
660
|
lg: {
|
|
2983
|
-
colSpan:
|
|
2984
|
-
order: 6,
|
|
661
|
+
colSpan: 12,
|
|
2985
662
|
},
|
|
2986
663
|
},
|
|
2987
664
|
},
|
|
@@ -2991,39 +668,89 @@ async function reviewFactory(injector) {
|
|
|
2991
668
|
update: {
|
|
2992
669
|
sections: [
|
|
2993
670
|
{
|
|
2994
|
-
id: '
|
|
671
|
+
id: 'basic-info',
|
|
672
|
+
},
|
|
673
|
+
{
|
|
674
|
+
id: 'management',
|
|
2995
675
|
},
|
|
2996
676
|
],
|
|
2997
677
|
properties: [
|
|
2998
678
|
{
|
|
2999
|
-
name: '
|
|
679
|
+
name: 'name',
|
|
3000
680
|
layout: {
|
|
3001
681
|
positions: {
|
|
3002
682
|
lg: {
|
|
3003
683
|
colSpan: 6,
|
|
3004
|
-
order: 5,
|
|
3005
684
|
},
|
|
3006
685
|
},
|
|
3007
686
|
},
|
|
3008
687
|
},
|
|
3009
688
|
{
|
|
3010
|
-
name: '
|
|
689
|
+
name: 'title',
|
|
3011
690
|
layout: {
|
|
3012
691
|
positions: {
|
|
3013
692
|
lg: {
|
|
3014
|
-
colSpan:
|
|
3015
|
-
|
|
693
|
+
colSpan: 6,
|
|
694
|
+
},
|
|
695
|
+
},
|
|
696
|
+
},
|
|
697
|
+
},
|
|
698
|
+
{
|
|
699
|
+
name: 'maxSize',
|
|
700
|
+
layout: {
|
|
701
|
+
positions: {
|
|
702
|
+
lg: {
|
|
703
|
+
colSpan: 6,
|
|
704
|
+
},
|
|
705
|
+
},
|
|
706
|
+
},
|
|
707
|
+
},
|
|
708
|
+
{
|
|
709
|
+
name: 'isEncrypted',
|
|
710
|
+
layout: {
|
|
711
|
+
positions: {
|
|
712
|
+
lg: {
|
|
713
|
+
colSpan: 6,
|
|
714
|
+
},
|
|
715
|
+
},
|
|
716
|
+
},
|
|
717
|
+
},
|
|
718
|
+
{
|
|
719
|
+
name: 'enableExpiration',
|
|
720
|
+
layout: {
|
|
721
|
+
positions: {
|
|
722
|
+
lg: {
|
|
723
|
+
colSpan: 6,
|
|
724
|
+
},
|
|
725
|
+
},
|
|
726
|
+
},
|
|
727
|
+
},
|
|
728
|
+
{
|
|
729
|
+
name: 'requiresReview',
|
|
730
|
+
layout: {
|
|
731
|
+
positions: {
|
|
732
|
+
lg: {
|
|
733
|
+
colSpan: 6,
|
|
3016
734
|
},
|
|
3017
735
|
},
|
|
3018
736
|
},
|
|
3019
737
|
},
|
|
3020
738
|
{
|
|
3021
|
-
name: '
|
|
739
|
+
name: 'enableVersioning',
|
|
3022
740
|
layout: {
|
|
3023
741
|
positions: {
|
|
3024
742
|
lg: {
|
|
3025
743
|
colSpan: 6,
|
|
3026
|
-
|
|
744
|
+
},
|
|
745
|
+
},
|
|
746
|
+
},
|
|
747
|
+
},
|
|
748
|
+
{
|
|
749
|
+
name: 'type',
|
|
750
|
+
layout: {
|
|
751
|
+
positions: {
|
|
752
|
+
lg: {
|
|
753
|
+
colSpan: 12,
|
|
3027
754
|
},
|
|
3028
755
|
},
|
|
3029
756
|
},
|
|
@@ -3031,10 +758,10 @@ async function reviewFactory(injector) {
|
|
|
3031
758
|
],
|
|
3032
759
|
},
|
|
3033
760
|
single: {
|
|
3034
|
-
title: '{{
|
|
761
|
+
title: '{{title}}',
|
|
3035
762
|
sections: [
|
|
3036
763
|
{
|
|
3037
|
-
id: '
|
|
764
|
+
id: 'basic-info',
|
|
3038
765
|
layout: {
|
|
3039
766
|
positions: {
|
|
3040
767
|
lg: {
|
|
@@ -3043,107 +770,114 @@ async function reviewFactory(injector) {
|
|
|
3043
770
|
},
|
|
3044
771
|
},
|
|
3045
772
|
},
|
|
3046
|
-
],
|
|
3047
|
-
properties: [
|
|
3048
773
|
{
|
|
3049
|
-
|
|
3050
|
-
dataPath: 'document',
|
|
774
|
+
id: 'management',
|
|
3051
775
|
layout: {
|
|
3052
776
|
positions: {
|
|
3053
777
|
lg: {
|
|
3054
778
|
colSpan: 12,
|
|
3055
|
-
order: 1,
|
|
3056
779
|
},
|
|
3057
780
|
},
|
|
3058
781
|
},
|
|
3059
782
|
},
|
|
783
|
+
],
|
|
784
|
+
properties: [
|
|
3060
785
|
{
|
|
3061
|
-
name: '
|
|
786
|
+
name: 'name',
|
|
3062
787
|
layout: {
|
|
3063
788
|
positions: {
|
|
3064
789
|
lg: {
|
|
3065
790
|
colSpan: 6,
|
|
3066
|
-
order: 5,
|
|
3067
791
|
},
|
|
3068
792
|
},
|
|
3069
793
|
},
|
|
3070
794
|
},
|
|
3071
795
|
{
|
|
3072
|
-
name: '
|
|
796
|
+
name: 'title',
|
|
3073
797
|
layout: {
|
|
3074
798
|
positions: {
|
|
3075
799
|
lg: {
|
|
3076
800
|
colSpan: 6,
|
|
3077
|
-
order: 2,
|
|
3078
801
|
},
|
|
3079
802
|
},
|
|
3080
803
|
},
|
|
3081
804
|
},
|
|
3082
805
|
{
|
|
3083
|
-
name: '
|
|
806
|
+
name: 'maxSize',
|
|
3084
807
|
layout: {
|
|
3085
808
|
positions: {
|
|
3086
809
|
lg: {
|
|
3087
810
|
colSpan: 6,
|
|
3088
|
-
order: 3,
|
|
3089
811
|
},
|
|
3090
812
|
},
|
|
3091
813
|
},
|
|
3092
814
|
},
|
|
3093
815
|
{
|
|
3094
|
-
name: '
|
|
816
|
+
name: 'isEncrypted',
|
|
3095
817
|
layout: {
|
|
3096
818
|
positions: {
|
|
3097
819
|
lg: {
|
|
3098
|
-
colSpan:
|
|
3099
|
-
order: 4,
|
|
820
|
+
colSpan: 6,
|
|
3100
821
|
},
|
|
3101
822
|
},
|
|
3102
823
|
},
|
|
3103
824
|
},
|
|
3104
825
|
{
|
|
3105
|
-
name: '
|
|
826
|
+
name: 'enableExpiration',
|
|
3106
827
|
layout: {
|
|
3107
828
|
positions: {
|
|
3108
829
|
lg: {
|
|
3109
830
|
colSpan: 6,
|
|
3110
|
-
order: 6,
|
|
3111
831
|
},
|
|
3112
832
|
},
|
|
3113
833
|
},
|
|
3114
834
|
},
|
|
3115
835
|
{
|
|
3116
|
-
name: '
|
|
836
|
+
name: 'requiresReview',
|
|
3117
837
|
layout: {
|
|
3118
838
|
positions: {
|
|
3119
839
|
lg: {
|
|
3120
840
|
colSpan: 6,
|
|
3121
|
-
order: 7,
|
|
3122
841
|
},
|
|
3123
842
|
},
|
|
3124
843
|
},
|
|
3125
844
|
},
|
|
3126
845
|
{
|
|
3127
|
-
name: '
|
|
846
|
+
name: 'enableVersioning',
|
|
3128
847
|
layout: {
|
|
3129
848
|
positions: {
|
|
3130
849
|
lg: {
|
|
3131
850
|
colSpan: 6,
|
|
3132
|
-
|
|
851
|
+
},
|
|
852
|
+
},
|
|
853
|
+
},
|
|
854
|
+
},
|
|
855
|
+
// {
|
|
856
|
+
// name: 'meta',
|
|
857
|
+
// layout: {
|
|
858
|
+
// positions: {
|
|
859
|
+
// lg: {
|
|
860
|
+
// colSpan: 12,
|
|
861
|
+
// },
|
|
862
|
+
// },
|
|
863
|
+
// },
|
|
864
|
+
// },
|
|
865
|
+
{
|
|
866
|
+
name: 'type',
|
|
867
|
+
layout: {
|
|
868
|
+
positions: {
|
|
869
|
+
lg: {
|
|
870
|
+
colSpan: 12,
|
|
3133
871
|
},
|
|
3134
872
|
},
|
|
3135
873
|
},
|
|
3136
874
|
},
|
|
3137
875
|
],
|
|
3138
|
-
actions: [],
|
|
876
|
+
actions: [...entityMasterRecordActions()],
|
|
3139
877
|
},
|
|
3140
878
|
list: {
|
|
3141
|
-
actions: [],
|
|
3142
|
-
views: [
|
|
3143
|
-
createAllQueryView({
|
|
3144
|
-
sorts: [{ name: 'reviewedAt', dir: 'desc' }],
|
|
3145
|
-
}),
|
|
3146
|
-
],
|
|
879
|
+
actions: [...entityMasterCrudActions({ edit: true })],
|
|
880
|
+
views: [createAllQueryView()],
|
|
3147
881
|
},
|
|
3148
882
|
},
|
|
3149
883
|
},
|
|
@@ -3151,17 +885,30 @@ async function reviewFactory(injector) {
|
|
|
3151
885
|
return entityDef;
|
|
3152
886
|
}
|
|
3153
887
|
|
|
3154
|
-
class
|
|
3155
|
-
|
|
3156
|
-
|
|
3157
|
-
|
|
888
|
+
class AXMDocumentTypeService extends AXMEntityCrudServiceImpl {
|
|
889
|
+
}
|
|
890
|
+
class AXMDocumentTypeServiceImpl extends AXMDocumentTypeService {
|
|
891
|
+
constructor() {
|
|
892
|
+
super(`${RootConfig.module.name}.${RootConfig.entities.documentType.name}`);
|
|
893
|
+
}
|
|
894
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMDocumentTypeServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
895
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMDocumentTypeServiceImpl }); }
|
|
896
|
+
}
|
|
897
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMDocumentTypeServiceImpl, decorators: [{
|
|
898
|
+
type: Injectable
|
|
899
|
+
}], ctorParameters: () => [] });
|
|
900
|
+
|
|
901
|
+
class AXMDocumentManagementDocumentTypeEntityModule {
|
|
902
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMDocumentManagementDocumentTypeEntityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
903
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.16", ngImport: i0, type: AXMDocumentManagementDocumentTypeEntityModule }); }
|
|
904
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMDocumentManagementDocumentTypeEntityModule, providers: [
|
|
3158
905
|
{
|
|
3159
|
-
provide:
|
|
3160
|
-
useClass:
|
|
906
|
+
provide: AXMDocumentTypeService,
|
|
907
|
+
useClass: AXMDocumentTypeServiceImpl,
|
|
3161
908
|
},
|
|
3162
909
|
] }); }
|
|
3163
910
|
}
|
|
3164
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type:
|
|
911
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMDocumentManagementDocumentTypeEntityModule, decorators: [{
|
|
3165
912
|
type: NgModule,
|
|
3166
913
|
args: [{
|
|
3167
914
|
imports: [],
|
|
@@ -3169,64 +916,71 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImpo
|
|
|
3169
916
|
declarations: [],
|
|
3170
917
|
providers: [
|
|
3171
918
|
{
|
|
3172
|
-
provide:
|
|
3173
|
-
useClass:
|
|
919
|
+
provide: AXMDocumentTypeService,
|
|
920
|
+
useClass: AXMDocumentTypeServiceImpl,
|
|
3174
921
|
},
|
|
3175
922
|
],
|
|
3176
923
|
}]
|
|
3177
924
|
}] });
|
|
3178
925
|
|
|
3179
|
-
|
|
3180
|
-
|
|
3181
|
-
|
|
3182
|
-
|
|
926
|
+
/**
|
|
927
|
+
* Minimal entity definition for Folder so the entity registry can resolve
|
|
928
|
+
* DocumentManagement.Folder. Used by AXMFolderService (AXMEntityCrudServiceImpl).
|
|
929
|
+
* No list/form UI; folder tree is handled by document-explorer.
|
|
930
|
+
*/
|
|
931
|
+
async function folderEntityFactory(_injector) {
|
|
932
|
+
const entityDef = {
|
|
933
|
+
module: RootConfig.module.name,
|
|
934
|
+
name: RootConfig.entities.folder.name,
|
|
935
|
+
title: RootConfig.entities.folder.title,
|
|
936
|
+
parentKey: 'parentId',
|
|
937
|
+
formats: {
|
|
938
|
+
individual: RootConfig.entities.folder.title,
|
|
939
|
+
plural: RootConfig.entities.folder.titlePlural,
|
|
940
|
+
searchResult: {
|
|
941
|
+
title: '{{ title }}',
|
|
942
|
+
description: RootConfig.module.title,
|
|
943
|
+
},
|
|
944
|
+
},
|
|
945
|
+
relatedEntities: [],
|
|
946
|
+
groups: [],
|
|
947
|
+
properties: [],
|
|
948
|
+
};
|
|
949
|
+
return entityDef;
|
|
950
|
+
}
|
|
951
|
+
|
|
952
|
+
var folder_entity = /*#__PURE__*/Object.freeze({
|
|
953
|
+
__proto__: null,
|
|
954
|
+
folderEntityFactory: folderEntityFactory
|
|
955
|
+
});
|
|
956
|
+
|
|
957
|
+
class AXMFolderService extends AXMEntityCrudServiceImpl {
|
|
3183
958
|
}
|
|
3184
|
-
|
|
3185
|
-
|
|
3186
|
-
|
|
3187
|
-
|
|
3188
|
-
|
|
3189
|
-
|
|
3190
|
-
|
|
3191
|
-
|
|
3192
|
-
|
|
959
|
+
class AXMFolderServiceImpl extends AXMFolderService {
|
|
960
|
+
constructor() {
|
|
961
|
+
super(`${RootConfig.module.name}.${RootConfig.entities.folder.name}`);
|
|
962
|
+
}
|
|
963
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMFolderServiceImpl, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
964
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMFolderServiceImpl }); }
|
|
965
|
+
}
|
|
966
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMFolderServiceImpl, decorators: [{
|
|
967
|
+
type: Injectable
|
|
968
|
+
}], ctorParameters: () => [] });
|
|
3193
969
|
|
|
3194
970
|
// Entity Services
|
|
3195
971
|
|
|
3196
972
|
var index = /*#__PURE__*/Object.freeze({
|
|
3197
973
|
__proto__: null,
|
|
3198
|
-
AXMDocumentManagementDocumentEntityModule: AXMDocumentManagementDocumentEntityModule,
|
|
3199
974
|
AXMDocumentManagementDocumentTypeEntityModule: AXMDocumentManagementDocumentTypeEntityModule,
|
|
3200
|
-
AXMDocumentManagementDocumentTypeMetaDefinitionEntityModule: AXMDocumentManagementDocumentTypeMetaDefinitionEntityModule,
|
|
3201
|
-
AXMDocumentManagementDocumentTypeMetaDefinitionEntityService: AXMDocumentManagementDocumentTypeMetaDefinitionEntityService,
|
|
3202
|
-
AXMDocumentManagementDocumentTypeMetaDefinitionEntityServiceImpl: AXMDocumentManagementDocumentTypeMetaDefinitionEntityServiceImpl,
|
|
3203
|
-
AXMDocumentManagementDocumentTypeMetaValueEntityModule: AXMDocumentManagementDocumentTypeMetaValueEntityModule,
|
|
3204
|
-
AXMDocumentManagementDocumentTypeMetaValueEntityService: AXMDocumentManagementDocumentTypeMetaValueEntityService,
|
|
3205
|
-
AXMDocumentManagementDocumentTypeMetaValueEntityServiceImpl: AXMDocumentManagementDocumentTypeMetaValueEntityServiceImpl,
|
|
3206
|
-
AXMDocumentManagementDocumentTypeStatusDefinitionEntityModule: AXMDocumentManagementDocumentTypeStatusDefinitionEntityModule,
|
|
3207
|
-
AXMDocumentManagementDocumentTypeStatusDefinitionEntityService: AXMDocumentManagementDocumentTypeStatusDefinitionEntityService,
|
|
3208
|
-
AXMDocumentManagementDocumentTypeStatusDefinitionEntityServiceImpl: AXMDocumentManagementDocumentTypeStatusDefinitionEntityServiceImpl,
|
|
3209
|
-
AXMDocumentReletedEntityModule: AXMDocumentReletedEntityModule,
|
|
3210
975
|
AXMDocumentService: AXMDocumentService,
|
|
3211
976
|
AXMDocumentServiceImpl: AXMDocumentServiceImpl,
|
|
3212
977
|
AXMDocumentTypeService: AXMDocumentTypeService,
|
|
3213
978
|
AXMDocumentTypeServiceImpl: AXMDocumentTypeServiceImpl,
|
|
3214
|
-
AXMFolderEntityModule: AXMFolderEntityModule,
|
|
3215
979
|
AXMFolderService: AXMFolderService,
|
|
3216
980
|
AXMFolderServiceImpl: AXMFolderServiceImpl,
|
|
3217
|
-
|
|
3218
|
-
AXMReviewService: AXMReviewService,
|
|
3219
|
-
AXMReviewServiceImpl: AXMReviewServiceImpl,
|
|
3220
|
-
canTransition: canTransition,
|
|
3221
|
-
documentFactory: documentFactory,
|
|
3222
|
-
documentRelatedFactory: documentRelatedFactory,
|
|
981
|
+
documentEntityFactory: documentEntityFactory,
|
|
3223
982
|
documentTypeFactory: documentTypeFactory,
|
|
3224
|
-
|
|
3225
|
-
documentTypeMetaValueFactory: documentTypeMetaValueFactory,
|
|
3226
|
-
documentTypeStatusDefinitionFactory: documentTypeStatusDefinitionFactory,
|
|
3227
|
-
folderFactory: folderFactory,
|
|
3228
|
-
getNextStatus: getNextStatus,
|
|
3229
|
-
reviewFactory: reviewFactory
|
|
983
|
+
folderEntityFactory: folderEntityFactory
|
|
3230
984
|
});
|
|
3231
985
|
|
|
3232
986
|
class AXMImageFileTypeProvider {
|
|
@@ -3671,14 +1425,14 @@ class AXMFileTypeExtensionWidgetEditComponent extends AXPValueWidgetComponent {
|
|
|
3671
1425
|
if (extension.meta) {
|
|
3672
1426
|
for (const meta of extension.meta) {
|
|
3673
1427
|
if (!get(meta, '__node__')) {
|
|
3674
|
-
set
|
|
1428
|
+
set(meta, '__node__', typeof meta.interface == 'function' ? await meta.interface() : meta.interface);
|
|
3675
1429
|
}
|
|
3676
1430
|
}
|
|
3677
1431
|
}
|
|
3678
1432
|
if (fileType.meta) {
|
|
3679
1433
|
for (const meta of fileType.meta) {
|
|
3680
1434
|
if (!get(meta, '__node__')) {
|
|
3681
|
-
set
|
|
1435
|
+
set(meta, '__node__', typeof meta.interface == 'function' ? await meta.interface() : meta.interface);
|
|
3682
1436
|
}
|
|
3683
1437
|
}
|
|
3684
1438
|
}
|
|
@@ -4169,12 +1923,12 @@ class AXMDocumentDialogService {
|
|
|
4169
1923
|
const promises = (ctx?.['files']).map(async (item, index) => {
|
|
4170
1924
|
const f = fileList[index];
|
|
4171
1925
|
const newId = await this.documentService.insertOne({
|
|
4172
|
-
|
|
1926
|
+
fileInfo: f,
|
|
4173
1927
|
name: f?.name,
|
|
4174
|
-
title: f?.name,
|
|
1928
|
+
title: f?.title ?? f?.name,
|
|
1929
|
+
description: f?.description,
|
|
4175
1930
|
documentType,
|
|
4176
1931
|
parentId,
|
|
4177
|
-
size: f?.size || 0,
|
|
4178
1932
|
status: 'Draft',
|
|
4179
1933
|
version: (version ?? 0) + 1,
|
|
4180
1934
|
metaDataForm: ctx?.[`file-${index}`]?.['metaDataForm'],
|
|
@@ -4336,7 +2090,9 @@ class DocumentAttachmentsService {
|
|
|
4336
2090
|
parentId: options?.folderId ?? '',
|
|
4337
2091
|
version: 0,
|
|
4338
2092
|
};
|
|
4339
|
-
const title = await this.translateService.translateAsync('@document-management:dialogs.attach-file.title', {
|
|
2093
|
+
const title = await this.translateService.translateAsync('@document-management:dialogs.attach-file.title', {
|
|
2094
|
+
params: { title: fileTypeEntity.title },
|
|
2095
|
+
});
|
|
4340
2096
|
const result = await this.documentDialog.openAttachmentDialog(title, popupData);
|
|
4341
2097
|
return this.handlePopupResult(result);
|
|
4342
2098
|
}
|
|
@@ -4345,10 +2101,10 @@ class DocumentAttachmentsService {
|
|
|
4345
2101
|
if (!file) {
|
|
4346
2102
|
throw new Error('File not found');
|
|
4347
2103
|
}
|
|
4348
|
-
|
|
2104
|
+
const documentTypeEntity = await this.resolveFileType(file.documentType);
|
|
4349
2105
|
const popupData = {
|
|
4350
|
-
documentType:
|
|
4351
|
-
files: [file.
|
|
2106
|
+
documentType: documentTypeEntity,
|
|
2107
|
+
files: [file.fileInfo],
|
|
4352
2108
|
parentId: options?.folderId ?? '',
|
|
4353
2109
|
metaData: file.metaDataForm,
|
|
4354
2110
|
documentId: fileId,
|
|
@@ -4366,15 +2122,16 @@ class DocumentAttachmentsService {
|
|
|
4366
2122
|
if (!document) {
|
|
4367
2123
|
throw new Error('File not found');
|
|
4368
2124
|
}
|
|
2125
|
+
const documentTypeEntity = await this.resolveFileType(document.documentType);
|
|
4369
2126
|
// Choose a single new file based on document type constraints
|
|
4370
|
-
const files = await this.chooseFiles(
|
|
2127
|
+
const files = await this.chooseFiles(documentTypeEntity, false);
|
|
4371
2128
|
if (!files || files.length === 0) {
|
|
4372
2129
|
return false;
|
|
4373
2130
|
}
|
|
4374
2131
|
const mapped = this.mapFilesToFileListItems(files);
|
|
4375
2132
|
// Open a lightweight dialog to edit metadata (no auto-save); then apply update with new file
|
|
4376
2133
|
const result = await this.documentDialog.openAttachmentDialogWithoutSave('@document-management:dialogs.manage-version.upload-new-version', {
|
|
4377
|
-
documentType:
|
|
2134
|
+
documentType: documentTypeEntity,
|
|
4378
2135
|
files: mapped,
|
|
4379
2136
|
parentId: document.parentId,
|
|
4380
2137
|
metaData: document.metaDataForm,
|
|
@@ -4387,8 +2144,7 @@ class DocumentAttachmentsService {
|
|
|
4387
2144
|
const metaDataForm = document.metaDataForm;
|
|
4388
2145
|
const newName = files[0]?.name ?? document.name;
|
|
4389
2146
|
await this.documentService.updateOne(fileId, {
|
|
4390
|
-
|
|
4391
|
-
size: files[0]?.size ?? document.size,
|
|
2147
|
+
fileInfo: mapped[0],
|
|
4392
2148
|
version: (document.version ?? 0) + 1,
|
|
4393
2149
|
metaDataForm,
|
|
4394
2150
|
name: newName,
|
|
@@ -4402,19 +2158,16 @@ class DocumentAttachmentsService {
|
|
|
4402
2158
|
}
|
|
4403
2159
|
}
|
|
4404
2160
|
async resolveFileType(fileType) {
|
|
4405
|
-
|
|
4406
|
-
|
|
4407
|
-
|
|
4408
|
-
|
|
4409
|
-
throw new Error('File type not found');
|
|
4410
|
-
}
|
|
4411
|
-
return fileTypeEntity;
|
|
2161
|
+
const id = typeof fileType === 'string' ? fileType : fileType.id;
|
|
2162
|
+
const entity = await this.documentTypeService.getOne(id);
|
|
2163
|
+
if (!entity) {
|
|
2164
|
+
throw new Error(`Document type not found: ${id}`);
|
|
4412
2165
|
}
|
|
4413
|
-
return
|
|
2166
|
+
return entity;
|
|
4414
2167
|
}
|
|
4415
2168
|
async chooseFiles(fileTypeEntity, multiple) {
|
|
4416
|
-
|
|
4417
|
-
const acceptTypes =
|
|
2169
|
+
const selectedItems = fileTypeEntity.type?.selectedItems ?? [];
|
|
2170
|
+
const acceptTypes = selectedItems.map((item) => `.${item.name.split('.')[1]}`).join(',');
|
|
4418
2171
|
return await this.fileService.choose({
|
|
4419
2172
|
multiple: multiple ?? false,
|
|
4420
2173
|
accept: acceptTypes,
|
|
@@ -4470,7 +2223,6 @@ class AXMDocumentManagerService {
|
|
|
4470
2223
|
this.workflow = inject(AXPWorkflowService);
|
|
4471
2224
|
this.translate = inject(AXTranslationService);
|
|
4472
2225
|
this.layoutBuilder = inject(AXPLayoutBuilderService);
|
|
4473
|
-
this.reviewService = inject(AXMReviewService);
|
|
4474
2226
|
this.attachmentsService = inject(DocumentAttachmentsService);
|
|
4475
2227
|
this.filterMiddlewareService = inject(AXPFilterOperatorMiddlewareService);
|
|
4476
2228
|
this.hooks = inject(AXPHookService, { optional: true });
|
|
@@ -4486,13 +2238,13 @@ class AXMDocumentManagerService {
|
|
|
4486
2238
|
this.mapFolderDtoToFolderNode = (folder) => {
|
|
4487
2239
|
return {
|
|
4488
2240
|
id: folder.id,
|
|
4489
|
-
name: folder.
|
|
2241
|
+
name: folder.title,
|
|
4490
2242
|
type: 'folder',
|
|
4491
2243
|
parentId: folder.parentId || null,
|
|
4492
2244
|
modifiedAt: folder?.updated?.at,
|
|
4493
2245
|
createdAt: folder?.created?.at,
|
|
4494
2246
|
description: folder.description,
|
|
4495
|
-
childrenCount: folder.
|
|
2247
|
+
childrenCount: folder.childrenCount,
|
|
4496
2248
|
size: folder.size,
|
|
4497
2249
|
documentTypes: folder.documentTypes || [],
|
|
4498
2250
|
storageType: 'physical',
|
|
@@ -4536,8 +2288,8 @@ class AXMDocumentManagerService {
|
|
|
4536
2288
|
logic: 'and',
|
|
4537
2289
|
filters: [
|
|
4538
2290
|
{ field: 'parentId', operator: { type: 'isNull' } },
|
|
4539
|
-
{ field: 'tenantId', operator: { type: 'isNull' } },
|
|
4540
|
-
{ field: 'userId', operator: { type: 'isNull' } },
|
|
2291
|
+
{ field: 'ownershipInfo.tenantId', operator: { type: 'isNull' } },
|
|
2292
|
+
{ field: 'ownershipInfo.userId', operator: { type: 'isNull' } },
|
|
4541
2293
|
],
|
|
4542
2294
|
},
|
|
4543
2295
|
});
|
|
@@ -4563,10 +2315,10 @@ class AXMDocumentManagerService {
|
|
|
4563
2315
|
{
|
|
4564
2316
|
field: 'parentId',
|
|
4565
2317
|
operator: { type: 'equal' },
|
|
4566
|
-
value: rootFolder.folders?.find((f) => f.
|
|
2318
|
+
value: rootFolder.folders?.find((f) => f.title === 'Tenants')?.id,
|
|
4567
2319
|
},
|
|
4568
|
-
{ field: 'tenantId', operator: { type: 'equal' }, value: tenantId },
|
|
4569
|
-
{ field: 'userId', operator: { type: 'isNull' } },
|
|
2320
|
+
{ field: 'ownershipInfo.tenantId', operator: { type: 'equal' }, value: tenantId },
|
|
2321
|
+
{ field: 'ownershipInfo.userId', operator: { type: 'isNull' } },
|
|
4570
2322
|
]),
|
|
4571
2323
|
},
|
|
4572
2324
|
});
|
|
@@ -4590,8 +2342,8 @@ class AXMDocumentManagerService {
|
|
|
4590
2342
|
logic: 'and',
|
|
4591
2343
|
filters: this.filterMiddlewareService.transformFilters([
|
|
4592
2344
|
{ field: 'parentId', operator: { type: 'equal' }, value: tenantFolderId },
|
|
4593
|
-
{ field: 'tenantId', operator: { type: 'equal' }, value: tenantId },
|
|
4594
|
-
{ field: 'userId', operator: { type: 'equal' }, value: userId },
|
|
2345
|
+
{ field: 'ownershipInfo.tenantId', operator: { type: 'equal' }, value: tenantId },
|
|
2346
|
+
{ field: 'ownershipInfo.userId', operator: { type: 'equal' }, value: userId },
|
|
4595
2347
|
]),
|
|
4596
2348
|
},
|
|
4597
2349
|
});
|
|
@@ -4611,8 +2363,8 @@ class AXMDocumentManagerService {
|
|
|
4611
2363
|
parentId: file.parentId,
|
|
4612
2364
|
modifiedAt: file?.updated?.at,
|
|
4613
2365
|
createdAt: file?.created?.at,
|
|
4614
|
-
size: file.size,
|
|
4615
|
-
fileId: file.
|
|
2366
|
+
size: file.fileInfo?.size ?? 0,
|
|
2367
|
+
fileId: file.fileInfo,
|
|
4616
2368
|
storageType: 'physical',
|
|
4617
2369
|
meta: file.metaDataForm ? Object.values(file.metaDataForm) : undefined,
|
|
4618
2370
|
documentTypes: file.documentType ? [file.documentType] : [],
|
|
@@ -4622,33 +2374,46 @@ class AXMDocumentManagerService {
|
|
|
4622
2374
|
* Maps document to media viewer data
|
|
4623
2375
|
*/
|
|
4624
2376
|
async mapDocumentToMediaViewerData(doc, fileInfosMap) {
|
|
4625
|
-
|
|
4626
|
-
|
|
2377
|
+
const f = doc.fileInfo ?? doc.fileId;
|
|
2378
|
+
const fileIdStr = f == null
|
|
2379
|
+
? undefined
|
|
2380
|
+
: typeof f === 'string'
|
|
2381
|
+
? f
|
|
2382
|
+
: f.source?.kind === 'fileId' &&
|
|
2383
|
+
typeof f.source?.value === 'string'
|
|
2384
|
+
? f.source.value
|
|
2385
|
+
: typeof f.id === 'string'
|
|
2386
|
+
? f.id
|
|
2387
|
+
: undefined;
|
|
2388
|
+
if (fileIdStr) {
|
|
4627
2389
|
let fileInfo;
|
|
4628
2390
|
if (fileInfosMap) {
|
|
4629
|
-
|
|
4630
|
-
fileInfo = fileInfosMap.get(fileId);
|
|
2391
|
+
fileInfo = fileInfosMap.get(fileIdStr);
|
|
4631
2392
|
}
|
|
4632
2393
|
else {
|
|
4633
|
-
|
|
4634
|
-
fileInfo = await this.fileService.getInfo(fileId);
|
|
2394
|
+
fileInfo = await this.fileService.getInfo(fileIdStr);
|
|
4635
2395
|
}
|
|
2396
|
+
const resolvedSize = fileInfo?.size ?? doc?.fileId?.size ?? 0;
|
|
4636
2397
|
return {
|
|
4637
2398
|
id: doc.id ?? '',
|
|
4638
2399
|
name: doc.name,
|
|
4639
2400
|
type: doc.name.endsWith('.pdf') ? 'pdf' : 'image',
|
|
4640
2401
|
url: fileInfo?.url ?? '',
|
|
4641
|
-
size:
|
|
2402
|
+
size: resolvedSize.toString(),
|
|
4642
2403
|
thumbnailUrl: fileInfo?.url ?? '',
|
|
4643
2404
|
};
|
|
4644
2405
|
}
|
|
2406
|
+
const fallbackUrl = doc?.fileId?.source?.kind === 'url' && typeof doc.fileId.source.value === 'string'
|
|
2407
|
+
? doc.fileId.source.value
|
|
2408
|
+
: '';
|
|
2409
|
+
const fallbackSize = doc?.fileId?.size ?? 0;
|
|
4645
2410
|
return {
|
|
4646
2411
|
id: doc.id ?? '',
|
|
4647
2412
|
name: doc.name,
|
|
4648
2413
|
type: doc.meta?.['type'] ?? 'image',
|
|
4649
|
-
url:
|
|
4650
|
-
size:
|
|
4651
|
-
thumbnailUrl:
|
|
2414
|
+
url: fallbackUrl,
|
|
2415
|
+
size: fallbackSize.toString(),
|
|
2416
|
+
thumbnailUrl: fallbackUrl,
|
|
4652
2417
|
};
|
|
4653
2418
|
}
|
|
4654
2419
|
//#endregion
|
|
@@ -4686,9 +2451,8 @@ class AXMDocumentManagerService {
|
|
|
4686
2451
|
return `${nameWithoutExt} copy${extension}`;
|
|
4687
2452
|
}
|
|
4688
2453
|
/**
|
|
4689
|
-
* Prepares file for copy operation by downloading from storage and converting to blob source
|
|
4690
|
-
*
|
|
4691
|
-
* by downloading the file from storage and changing source to blob with uploading status
|
|
2454
|
+
* Prepares file for copy operation by downloading from storage and converting to blob source.
|
|
2455
|
+
* Accepts document fileId (AXPFileListItem or legacy string) and returns AXPFileListItem with blob source.
|
|
4692
2456
|
*/
|
|
4693
2457
|
async prepareFileForCopy(fileId, fileName) {
|
|
4694
2458
|
try {
|
|
@@ -4708,9 +2472,6 @@ class AXMDocumentManagerService {
|
|
|
4708
2472
|
fileIdString = fileId.id;
|
|
4709
2473
|
existingFileItem = fileId;
|
|
4710
2474
|
}
|
|
4711
|
-
else if (fileId.fileId && typeof fileId.fileId === 'string') {
|
|
4712
|
-
fileIdString = fileId.fileId;
|
|
4713
|
-
}
|
|
4714
2475
|
}
|
|
4715
2476
|
if (!fileIdString) {
|
|
4716
2477
|
console.warn('Could not extract fileId from:', fileId);
|
|
@@ -4784,7 +2545,7 @@ class AXMDocumentManagerService {
|
|
|
4784
2545
|
throw new Error('Both Tenant ID and User ID are required for user scope');
|
|
4785
2546
|
}
|
|
4786
2547
|
const tenantFolder = await this.getTenantRootFolder(rootFolder, options.tenantId);
|
|
4787
|
-
const userRoot = await this.getUserRootFolder(tenantFolder.folders?.find((f) => f.
|
|
2548
|
+
const userRoot = await this.getUserRootFolder(tenantFolder.folders?.find((f) => f.title === 'Users')?.id, options.tenantId, options.userId);
|
|
4788
2549
|
result = this.mapFolderDtoToFolderNode(userRoot);
|
|
4789
2550
|
path = await this.buildPath(result, userRoot.id);
|
|
4790
2551
|
break;
|
|
@@ -4819,12 +2580,14 @@ class AXMDocumentManagerService {
|
|
|
4819
2580
|
const userRef = { id: userId, type: 'user' };
|
|
4820
2581
|
const folderToCreate = {
|
|
4821
2582
|
...data,
|
|
2583
|
+
title: data.title,
|
|
2584
|
+
childrenCount: 0,
|
|
4822
2585
|
created: { at: now, user: userRef },
|
|
4823
2586
|
updated: { at: now, user: userRef },
|
|
4824
2587
|
isSystem: false,
|
|
4825
2588
|
isHidden: false,
|
|
4826
2589
|
isDeleted: false,
|
|
4827
|
-
size: 0,
|
|
2590
|
+
size: data.size ?? 0,
|
|
4828
2591
|
};
|
|
4829
2592
|
const createdFolder = (await this.folderService.insertOne(folderToCreate));
|
|
4830
2593
|
let folder;
|
|
@@ -5048,12 +2811,15 @@ class AXMDocumentManagerService {
|
|
|
5048
2811
|
// Extract needed properties without id
|
|
5049
2812
|
const { id, ...fileDataWithoutId } = originalFile;
|
|
5050
2813
|
// Prepare file for copy by downloading from storage and converting to blob source
|
|
5051
|
-
const fileListItem = await this.prepareFileForCopy(originalFile.
|
|
2814
|
+
const fileListItem = await this.prepareFileForCopy(originalFile.fileInfo, newName);
|
|
2815
|
+
if (!fileListItem) {
|
|
2816
|
+
throw new Error('Could not prepare file for copy');
|
|
2817
|
+
}
|
|
5052
2818
|
const fileData = {
|
|
5053
2819
|
...fileDataWithoutId,
|
|
5054
2820
|
name: newName,
|
|
5055
2821
|
title: newName,
|
|
5056
|
-
|
|
2822
|
+
fileInfo: fileListItem,
|
|
5057
2823
|
};
|
|
5058
2824
|
// Create the new file
|
|
5059
2825
|
return await this.createFile(fileData);
|
|
@@ -5069,7 +2835,7 @@ class AXMDocumentManagerService {
|
|
|
5069
2835
|
const { id, ...folderDataWithoutId } = originalFolder;
|
|
5070
2836
|
const folderData = {
|
|
5071
2837
|
...folderDataWithoutId,
|
|
5072
|
-
|
|
2838
|
+
title: newName,
|
|
5073
2839
|
};
|
|
5074
2840
|
// Create the new folder
|
|
5075
2841
|
return await this.createFolder(folderData);
|
|
@@ -5130,7 +2896,7 @@ class AXMDocumentManagerService {
|
|
|
5130
2896
|
if (selectedFolder) {
|
|
5131
2897
|
if (options.node.type === 'folder') {
|
|
5132
2898
|
await this.createFolder({
|
|
5133
|
-
|
|
2899
|
+
title: options.node.name,
|
|
5134
2900
|
parentId: selectedFolder.id,
|
|
5135
2901
|
color: '#ffffff',
|
|
5136
2902
|
size: options.node.size,
|
|
@@ -5144,13 +2910,15 @@ class AXMDocumentManagerService {
|
|
|
5144
2910
|
throw new Error(`File with ID ${options.node.id} not found`);
|
|
5145
2911
|
}
|
|
5146
2912
|
// Prepare file for copy by downloading from storage and converting to blob source
|
|
5147
|
-
const fileListItem = await this.prepareFileForCopy(originalFile.
|
|
2913
|
+
const fileListItem = await this.prepareFileForCopy(originalFile.fileInfo, options.node.name);
|
|
2914
|
+
if (!fileListItem) {
|
|
2915
|
+
throw new Error('Could not prepare file for copy');
|
|
2916
|
+
}
|
|
5148
2917
|
await this.createFile({
|
|
5149
2918
|
title: options.node.name,
|
|
5150
2919
|
name: options.node.name,
|
|
5151
2920
|
parentId: selectedFolder.id,
|
|
5152
|
-
|
|
5153
|
-
size: originalFile.size ?? options.node.size ?? 0,
|
|
2921
|
+
fileInfo: fileListItem,
|
|
5154
2922
|
documentType: options.node.documentTypes[0],
|
|
5155
2923
|
status: 'Draft',
|
|
5156
2924
|
});
|
|
@@ -5396,7 +3164,7 @@ class AXMDocumentManagerService {
|
|
|
5396
3164
|
const selected = Array.isArray(form.documentTypes) ? form.documentTypes : [];
|
|
5397
3165
|
const selectedTypes = selected.map((v) => typeof v === 'object' ? v : items.find((it) => it.name === v) || { name: v, title: v, id: v });
|
|
5398
3166
|
await this.updateFolder(node.id, {
|
|
5399
|
-
|
|
3167
|
+
title: form.title ?? form.name,
|
|
5400
3168
|
description: form.description,
|
|
5401
3169
|
inherit: form.inherit,
|
|
5402
3170
|
documentTypes: selectedTypes,
|
|
@@ -5420,12 +3188,12 @@ class AXMDocumentManagerService {
|
|
|
5420
3188
|
.dialog((dialog) => {
|
|
5421
3189
|
dialog
|
|
5422
3190
|
.setTitle('@document-management:actions.create-folder')
|
|
5423
|
-
.setContext({
|
|
3191
|
+
.setContext({ title: '', description: '', inherit: 'None', documentTypes: [], color: '#FFFFFF' })
|
|
5424
3192
|
.content((flex) => {
|
|
5425
3193
|
flex
|
|
5426
3194
|
.setDirection('column')
|
|
5427
|
-
.formField('@general:terms.common.
|
|
5428
|
-
field.path('
|
|
3195
|
+
.formField('@general:terms.common.title', (field) => {
|
|
3196
|
+
field.path('title');
|
|
5429
3197
|
field.textBox({ validations: [{ rule: 'required' }] });
|
|
5430
3198
|
})
|
|
5431
3199
|
.formField('@general:terms.common.description', (field) => {
|
|
@@ -5469,16 +3237,22 @@ class AXMDocumentManagerService {
|
|
|
5469
3237
|
return null;
|
|
5470
3238
|
}
|
|
5471
3239
|
const form = context;
|
|
5472
|
-
|
|
5473
|
-
|
|
5474
|
-
|
|
5475
|
-
|
|
5476
|
-
|
|
5477
|
-
|
|
5478
|
-
|
|
5479
|
-
|
|
5480
|
-
|
|
5481
|
-
|
|
3240
|
+
try {
|
|
3241
|
+
const folder = await this.createFolder({
|
|
3242
|
+
title: form.title,
|
|
3243
|
+
color: form.color,
|
|
3244
|
+
parentId,
|
|
3245
|
+
description: form.description,
|
|
3246
|
+
documentTypes: form.documentTypes,
|
|
3247
|
+
size: 0,
|
|
3248
|
+
inherit: form.inherit,
|
|
3249
|
+
});
|
|
3250
|
+
return folder;
|
|
3251
|
+
}
|
|
3252
|
+
catch (err) {
|
|
3253
|
+
console.error('[showCreateFolderDialog] createFolder failed', err);
|
|
3254
|
+
throw err;
|
|
3255
|
+
}
|
|
5482
3256
|
});
|
|
5483
3257
|
})
|
|
5484
3258
|
.show();
|
|
@@ -5519,7 +3293,7 @@ class AXMDocumentManagerService {
|
|
|
5519
3293
|
dialogRef.setLoading(true);
|
|
5520
3294
|
try {
|
|
5521
3295
|
if (node.type === 'folder') {
|
|
5522
|
-
return await this.updateFolder(node.id, {
|
|
3296
|
+
return await this.updateFolder(node.id, { title: formData.name });
|
|
5523
3297
|
}
|
|
5524
3298
|
await this.updateFileName(node, formData.name);
|
|
5525
3299
|
return await this.updateFile(node.id, { name: formData.name });
|
|
@@ -5578,7 +3352,7 @@ class AXMDocumentManagerService {
|
|
|
5578
3352
|
*/
|
|
5579
3353
|
async showFileViewerPopup(node, options) {
|
|
5580
3354
|
const isVirtualFolder = node.parentId === 'virtual';
|
|
5581
|
-
const parentFolderName = isVirtualFolder ? 'Virtual' : (await this.folderService.getOne(node.parentId)).
|
|
3355
|
+
const parentFolderName = isVirtualFolder ? 'Virtual' : (await this.folderService.getOne(node.parentId)).title;
|
|
5582
3356
|
const documents = isVirtualFolder
|
|
5583
3357
|
? (options?.folderVirtualFiles ?? [])
|
|
5584
3358
|
: ((await this.folderService.getOne(node.parentId)).documents ?? []);
|
|
@@ -5590,13 +3364,16 @@ class AXMDocumentManagerService {
|
|
|
5590
3364
|
return ext && AXMDocumentManagerService.GALLERY_EXTENSIONS.includes(ext);
|
|
5591
3365
|
});
|
|
5592
3366
|
// Convert documents to AXPFileListItem[] format for the gallery widget
|
|
5593
|
-
const fileListItems = filteredDocuments.map((doc) =>
|
|
5594
|
-
|
|
5595
|
-
|
|
5596
|
-
|
|
5597
|
-
|
|
5598
|
-
|
|
5599
|
-
|
|
3367
|
+
const fileListItems = filteredDocuments.map((doc) => {
|
|
3368
|
+
const fileInfo = doc.fileInfo ?? doc.fileId;
|
|
3369
|
+
return {
|
|
3370
|
+
id: doc.id ?? '',
|
|
3371
|
+
name: doc.name,
|
|
3372
|
+
size: fileInfo?.size ?? 0,
|
|
3373
|
+
status: 'attached',
|
|
3374
|
+
source: fileInfo?.source,
|
|
3375
|
+
};
|
|
3376
|
+
});
|
|
5600
3377
|
// Calculate start index
|
|
5601
3378
|
const startIndex = isVirtualFolder
|
|
5602
3379
|
? (options?.folderVirtualFiles?.findIndex((f) => f.id === node.id) ?? 0)
|
|
@@ -6290,29 +4067,30 @@ const AXPDocumentExplorerViewModel = signalStore({ providedIn: 'root' }, withSta
|
|
|
6290
4067
|
},
|
|
6291
4068
|
];
|
|
6292
4069
|
// Manage versions (only if document type has versioning enabled)
|
|
6293
|
-
const docType = node.documentTypes?.[0];
|
|
6294
|
-
|
|
6295
|
-
|
|
6296
|
-
|
|
6297
|
-
|
|
6298
|
-
|
|
6299
|
-
|
|
6300
|
-
|
|
6301
|
-
|
|
6302
|
-
|
|
6303
|
-
|
|
6304
|
-
|
|
6305
|
-
|
|
6306
|
-
|
|
6307
|
-
|
|
6308
|
-
|
|
6309
|
-
|
|
6310
|
-
|
|
6311
|
-
|
|
6312
|
-
|
|
6313
|
-
|
|
6314
|
-
|
|
6315
|
-
}
|
|
4070
|
+
// const docType = node.documentTypes?.[0];
|
|
4071
|
+
//TODO handle versioning
|
|
4072
|
+
// if (docType?.enableVersioning) {
|
|
4073
|
+
// menuItems.push({
|
|
4074
|
+
// name: 'manage-versions',
|
|
4075
|
+
// text: await trans('menus.context.manage-versions'),
|
|
4076
|
+
// icon: 'fa-light fa-clock-rotate-left',
|
|
4077
|
+
// items: [
|
|
4078
|
+
// {
|
|
4079
|
+
// name: 'upload-new-version',
|
|
4080
|
+
// text: await trans('menus.context.upload-new-version'),
|
|
4081
|
+
// icon: 'fa-light fa-file-circle-plus',
|
|
4082
|
+
// data: node,
|
|
4083
|
+
// },
|
|
4084
|
+
// {
|
|
4085
|
+
// name: 'show-version-history',
|
|
4086
|
+
// text: await trans('menus.context.show-version-history'),
|
|
4087
|
+
// icon: 'fa-light fa-timeline',
|
|
4088
|
+
// data: node,
|
|
4089
|
+
// },
|
|
4090
|
+
// ],
|
|
4091
|
+
// break: true,
|
|
4092
|
+
// });
|
|
4093
|
+
// }
|
|
6316
4094
|
// Information submenu items
|
|
6317
4095
|
const infoSubItems = [
|
|
6318
4096
|
{
|
|
@@ -7152,14 +4930,15 @@ const attachmentsPlugin = {
|
|
|
7152
4930
|
},
|
|
7153
4931
|
};
|
|
7154
4932
|
|
|
7155
|
-
|
|
7156
|
-
function getMetaDataFormForServer(item) {
|
|
4933
|
+
function getDocumentMetaDataForm(item) {
|
|
7157
4934
|
if (item?.meta?.metaDataForm != null)
|
|
7158
4935
|
return item.meta.metaDataForm;
|
|
7159
4936
|
if (item?.metaDataForm != null)
|
|
7160
4937
|
return item.metaDataForm;
|
|
7161
|
-
if (item?.meta != null && typeof item.meta === 'object' && !Array.isArray(item.meta))
|
|
7162
|
-
|
|
4938
|
+
if (item?.meta != null && typeof item.meta === 'object' && !Array.isArray(item.meta)) {
|
|
4939
|
+
const m = item.meta;
|
|
4940
|
+
return m['metaDataForm'] ?? m;
|
|
4941
|
+
}
|
|
7163
4942
|
return undefined;
|
|
7164
4943
|
}
|
|
7165
4944
|
/** Resolve list of attachment field names from entity extensions.attachments. */
|
|
@@ -7208,7 +4987,7 @@ const attachmentsUploadMiddleware = {
|
|
|
7208
4987
|
pendingByField[field] = [];
|
|
7209
4988
|
const normalized = [];
|
|
7210
4989
|
for (const item of list) {
|
|
7211
|
-
const metaDataForm =
|
|
4990
|
+
const metaDataForm = getDocumentMetaDataForm(item);
|
|
7212
4991
|
if (item?.source?.kind === 'blob' && item.source.value instanceof Blob) {
|
|
7213
4992
|
const blob = item.source.value;
|
|
7214
4993
|
const name = item.name || `file-${Date.now()}`;
|
|
@@ -7263,7 +5042,7 @@ const attachmentsUploadMiddleware = {
|
|
|
7263
5042
|
continue;
|
|
7264
5043
|
const finalRefs = (ctx.data[field] ?? []).filter((x) => x.status !== 'pending_upload');
|
|
7265
5044
|
for (const { fileItem, blob } of pending) {
|
|
7266
|
-
const metaDataForm = fileItem.metaDataForm ??
|
|
5045
|
+
const metaDataForm = fileItem.metaDataForm ?? getDocumentMetaDataForm(fileItem);
|
|
7267
5046
|
try {
|
|
7268
5047
|
const info = await storage.save({
|
|
7269
5048
|
file: blob,
|
|
@@ -7324,6 +5103,17 @@ const attachmentsUploadMiddleware = {
|
|
|
7324
5103
|
},
|
|
7325
5104
|
};
|
|
7326
5105
|
|
|
5106
|
+
function getFileIdFromFileInfo(fileInfo) {
|
|
5107
|
+
if (fileInfo == null)
|
|
5108
|
+
return undefined;
|
|
5109
|
+
if (typeof fileInfo === 'string')
|
|
5110
|
+
return fileInfo;
|
|
5111
|
+
if (fileInfo.source?.kind === 'fileId' && typeof fileInfo.source.value === 'string')
|
|
5112
|
+
return fileInfo.source.value;
|
|
5113
|
+
if (typeof fileInfo.id === 'string')
|
|
5114
|
+
return fileInfo.id;
|
|
5115
|
+
return undefined;
|
|
5116
|
+
}
|
|
7327
5117
|
//#region ---- Plugin Guard Utilities ----
|
|
7328
5118
|
/**
|
|
7329
5119
|
* Check if the 'document' plugin is active (enabled and not excluded) in the payload.
|
|
@@ -7421,6 +5211,11 @@ const DocumentFileUploaderActionsByTypeProvider = {
|
|
|
7421
5211
|
});
|
|
7422
5212
|
if (files.length === 0)
|
|
7423
5213
|
return;
|
|
5214
|
+
const documentType = {
|
|
5215
|
+
id: docType?.id ?? '',
|
|
5216
|
+
name: typeName,
|
|
5217
|
+
title: docType?.title ?? typeName,
|
|
5218
|
+
};
|
|
7424
5219
|
const fileItems = files.map((file) => ({
|
|
7425
5220
|
id: AXPDataGenerator.uuid(),
|
|
7426
5221
|
name: file.name,
|
|
@@ -7428,7 +5223,7 @@ const DocumentFileUploaderActionsByTypeProvider = {
|
|
|
7428
5223
|
type: file.type,
|
|
7429
5224
|
status: 'attached',
|
|
7430
5225
|
source: { kind: 'blob', value: file },
|
|
7431
|
-
|
|
5226
|
+
meta: { documentType },
|
|
7432
5227
|
}));
|
|
7433
5228
|
if (hasMeta) {
|
|
7434
5229
|
const result = await documentDialogService.openAttachmentDialogWithoutSave('Document Type Choose File', {
|
|
@@ -7437,8 +5232,15 @@ const DocumentFileUploaderActionsByTypeProvider = {
|
|
|
7437
5232
|
});
|
|
7438
5233
|
if (result.data?.cancel != null && !result.data.cancel && result.data?.files) {
|
|
7439
5234
|
result.data.files.forEach((f, i) => {
|
|
7440
|
-
if (fileItems[i])
|
|
7441
|
-
|
|
5235
|
+
if (fileItems[i]) {
|
|
5236
|
+
const meta = {
|
|
5237
|
+
...fileItems[i].meta,
|
|
5238
|
+
documentType,
|
|
5239
|
+
metaDataForm: f?.metaDataForm,
|
|
5240
|
+
};
|
|
5241
|
+
set$1(fileItems[i], 'meta', meta);
|
|
5242
|
+
set$1(fileItems[i], 'metaDataForm', f?.metaDataForm);
|
|
5243
|
+
}
|
|
7442
5244
|
});
|
|
7443
5245
|
}
|
|
7444
5246
|
else if (result.data?.cancel) {
|
|
@@ -7460,13 +5262,18 @@ const DocumentFileUploaderBeforeFilesAddedProvider = {
|
|
|
7460
5262
|
priority: 0,
|
|
7461
5263
|
async execute(payload) {
|
|
7462
5264
|
const opts = getDocumentPluginOptions(payload);
|
|
7463
|
-
const
|
|
7464
|
-
|
|
5265
|
+
const firstMeta = payload.newFiles[0]?.meta;
|
|
5266
|
+
const docTypeName = firstMeta?.documentType?.name ?? opts?.docTypeName;
|
|
7465
5267
|
if (!docTypeName)
|
|
7466
5268
|
return payload;
|
|
7467
5269
|
const injector = inject(Injector);
|
|
7468
5270
|
const documentManagementService = injector.get(AXPDocumentManagementService);
|
|
7469
5271
|
const docType = await documentManagementService.getDocumentTypeByName(docTypeName);
|
|
5272
|
+
const documentType = {
|
|
5273
|
+
id: docType?.id ?? '',
|
|
5274
|
+
name: docType?.name ?? docTypeName,
|
|
5275
|
+
title: docType?.title ?? docTypeName,
|
|
5276
|
+
};
|
|
7470
5277
|
const documentDialogService = injector.get(AXMDocumentDialogService);
|
|
7471
5278
|
const result = await documentDialogService.openAttachmentDialogWithoutSave('Document Type Choose File', {
|
|
7472
5279
|
documentType: docType,
|
|
@@ -7474,7 +5281,14 @@ const DocumentFileUploaderBeforeFilesAddedProvider = {
|
|
|
7474
5281
|
});
|
|
7475
5282
|
if (result.data?.cancel != null && !result.data.cancel && result.data?.files) {
|
|
7476
5283
|
payload.newFiles.forEach((file, i) => {
|
|
7477
|
-
|
|
5284
|
+
const metaDataForm = result.data?.files?.[i]?.metaDataForm;
|
|
5285
|
+
const meta = {
|
|
5286
|
+
...file.meta,
|
|
5287
|
+
documentType,
|
|
5288
|
+
metaDataForm,
|
|
5289
|
+
};
|
|
5290
|
+
set$1(file, 'meta', meta);
|
|
5291
|
+
set$1(file, 'metaDataForm', metaDataForm);
|
|
7478
5292
|
});
|
|
7479
5293
|
}
|
|
7480
5294
|
return payload;
|
|
@@ -7485,9 +5299,10 @@ const DocumentFileUploaderEditDialogAfterFormProvider = {
|
|
|
7485
5299
|
key: 'file-uploader.edit-dialog.groups.after-form',
|
|
7486
5300
|
priority: 0,
|
|
7487
5301
|
async execute(payload) {
|
|
7488
|
-
const
|
|
5302
|
+
const fileMeta = payload.file.meta;
|
|
5303
|
+
const metaObj = (fileMeta?.metaDataForm ?? payload.file.metaDataForm);
|
|
7489
5304
|
const opts = getDocumentPluginOptions(payload);
|
|
7490
|
-
const docTypeName =
|
|
5305
|
+
const docTypeName = fileMeta?.documentType?.name ?? opts?.docTypeName;
|
|
7491
5306
|
const injector = inject(Injector);
|
|
7492
5307
|
const documentManagementService = injector.get(AXPDocumentManagementService);
|
|
7493
5308
|
const docType = docTypeName
|
|
@@ -7539,9 +5354,8 @@ const DocumentFileUploaderDownloadReferenceProvider = {
|
|
|
7539
5354
|
console.error('Document not found for reference:', payload.reference);
|
|
7540
5355
|
return payload;
|
|
7541
5356
|
}
|
|
7542
|
-
|
|
7543
|
-
|
|
7544
|
-
if (!fileId || typeof fileId !== 'string') {
|
|
5357
|
+
const fileId = getFileIdFromFileInfo(document.fileInfo);
|
|
5358
|
+
if (!fileId) {
|
|
7545
5359
|
console.error('Document does not have a valid fileId:', document);
|
|
7546
5360
|
return payload;
|
|
7547
5361
|
}
|
|
@@ -7600,13 +5414,7 @@ class AXMDocumentManagementModule {
|
|
|
7600
5414
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMDocumentManagementModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
7601
5415
|
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.16", ngImport: i0, type: AXMDocumentManagementModule, imports: [AXMDriveChooseModule,
|
|
7602
5416
|
// Entity Modules
|
|
7603
|
-
|
|
7604
|
-
AXMDocumentManagementDocumentTypeMetaValueEntityModule,
|
|
7605
|
-
AXMDocumentManagementDocumentTypeMetaDefinitionEntityModule,
|
|
7606
|
-
AXMDocumentManagementDocumentTypeEntityModule,
|
|
7607
|
-
AXMDocumentManagementDocumentEntityModule,
|
|
7608
|
-
AXMFolderEntityModule,
|
|
7609
|
-
AXMReviewEntityModule, i6.AXPWidgetCoreModule, i2$2.AXMediaViewerModule, i3$1.AXPWorkflowModule] }); }
|
|
5417
|
+
AXMDocumentManagementDocumentTypeEntityModule, i6.AXPWidgetCoreModule, i2$2.AXMediaViewerModule, i3$1.AXPWorkflowModule] }); }
|
|
7610
5418
|
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMDocumentManagementModule, providers: [
|
|
7611
5419
|
// Module-specific providers (not part of manifest system)
|
|
7612
5420
|
{ provide: AXP_ENTITY_ACTION_PLUGIN, multi: true, useValue: attachmentsPlugin },
|
|
@@ -7658,15 +5466,17 @@ class AXMDocumentManagementModule {
|
|
|
7658
5466
|
useClass: AXMSearchCommandProvider,
|
|
7659
5467
|
multi: true,
|
|
7660
5468
|
},
|
|
5469
|
+
{
|
|
5470
|
+
provide: AXMDocumentService,
|
|
5471
|
+
useClass: AXMDocumentServiceImpl,
|
|
5472
|
+
},
|
|
5473
|
+
{
|
|
5474
|
+
provide: AXMFolderService,
|
|
5475
|
+
useClass: AXMFolderServiceImpl,
|
|
5476
|
+
},
|
|
7661
5477
|
], imports: [AXMDriveChooseModule,
|
|
7662
5478
|
// Entity Modules
|
|
7663
|
-
AXMDocumentManagementDocumentTypeStatusDefinitionEntityModule,
|
|
7664
|
-
AXMDocumentManagementDocumentTypeMetaValueEntityModule,
|
|
7665
|
-
AXMDocumentManagementDocumentTypeMetaDefinitionEntityModule,
|
|
7666
5479
|
AXMDocumentManagementDocumentTypeEntityModule,
|
|
7667
|
-
AXMDocumentManagementDocumentEntityModule,
|
|
7668
|
-
AXMFolderEntityModule,
|
|
7669
|
-
AXMReviewEntityModule,
|
|
7670
5480
|
AXPWidgetCoreModule.forChild({
|
|
7671
5481
|
widgets: [AXmFileTypeExtensionWidget],
|
|
7672
5482
|
}),
|
|
@@ -7688,13 +5498,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImpo
|
|
|
7688
5498
|
imports: [
|
|
7689
5499
|
AXMDriveChooseModule,
|
|
7690
5500
|
// Entity Modules
|
|
7691
|
-
AXMDocumentManagementDocumentTypeStatusDefinitionEntityModule,
|
|
7692
|
-
AXMDocumentManagementDocumentTypeMetaValueEntityModule,
|
|
7693
|
-
AXMDocumentManagementDocumentTypeMetaDefinitionEntityModule,
|
|
7694
5501
|
AXMDocumentManagementDocumentTypeEntityModule,
|
|
7695
|
-
AXMDocumentManagementDocumentEntityModule,
|
|
7696
|
-
AXMFolderEntityModule,
|
|
7697
|
-
AXMReviewEntityModule,
|
|
7698
5502
|
AXPWidgetCoreModule.forChild({
|
|
7699
5503
|
widgets: [AXmFileTypeExtensionWidget],
|
|
7700
5504
|
}),
|
|
@@ -7762,6 +5566,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImpo
|
|
|
7762
5566
|
useClass: AXMSearchCommandProvider,
|
|
7763
5567
|
multi: true,
|
|
7764
5568
|
},
|
|
5569
|
+
{
|
|
5570
|
+
provide: AXMDocumentService,
|
|
5571
|
+
useClass: AXMDocumentServiceImpl,
|
|
5572
|
+
},
|
|
5573
|
+
{
|
|
5574
|
+
provide: AXMFolderService,
|
|
5575
|
+
useClass: AXMFolderServiceImpl,
|
|
5576
|
+
},
|
|
7765
5577
|
],
|
|
7766
5578
|
}]
|
|
7767
5579
|
}] });
|
|
@@ -8237,5 +6049,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImpo
|
|
|
8237
6049
|
* Generated bundle index. Do not edit.
|
|
8238
6050
|
*/
|
|
8239
6051
|
|
|
8240
|
-
export { AXMArchiveFileTypeProvider, AXMAudioFileTypeProvider, AXMCodeFileTypeProvider, AXMDocumentDriveComponent, AXMDocumentExplorerComponent, AXMDocumentFileTypeProvider,
|
|
6052
|
+
export { AXMArchiveFileTypeProvider, AXMAudioFileTypeProvider, AXMCodeFileTypeProvider, AXMDocumentDriveComponent, AXMDocumentExplorerComponent, AXMDocumentFileTypeProvider, AXMDocumentManagementDocumentTypeEntityModule, AXMDocumentManagementModule, AXMDocumentManagerService, AXMDocumentService, AXMDocumentServiceImpl, AXMDocumentTypeService, AXMDocumentTypeServiceImpl, AXMEntityProvider, AXMFileGalleryPopupComponent, AXMFileTypeExtensionWidgetColumnComponent, AXMFileTypeExtensionWidgetDesignerComponent, AXMFileTypeExtensionWidgetEditComponent, AXMFileTypeExtensionWidgetViewComponent, AXMFileTypeModule, AXMFolderPathBreadcrumbsComponent, AXMFolderService, AXMFolderServiceImpl, AXMImageFileTypeProvider, AXMMenuProvider, AXMPermissionsKeys, AXMSearchCommandProvider, AXMSettingProvider, AXMVideoFileTypeProvider, AXPDocumentExplorerSettings, AXPDocumentExplorerViewModel, AXPDocumentManagementFeatureKeys, AXPDocumentManagementMenuKeys, AXPDocumentManagementService, AXmFileTypeExtensionWidget, RootConfig, ScopedDriveService, documentEntityFactory, documentTypeFactory, folderEntityFactory };
|
|
8241
6053
|
//# sourceMappingURL=acorex-modules-document-management.mjs.map
|